![]() |
|
#1
|
|||
|
|||
|
السلام عليكم ورحمة الله وبركاته انا عندي مشكله ياليت تساعدوني فيها ابغا كود يستخرج لوحة السياره بالمات لاب حصلت كود هنا في الموقع بس مو شغال صح وهذا الكود clc; close all clear all; im=imread('car2.jpg'); im1=rgb2gray(im); im1=medfilt2(im1,[3 3]); BW = edge(im1,'sobel'); [imx,imy]=size(BW); msk=[0 0 0 0 0; 0 1 1 1 0; 0 1 1 1 0; 0 1 1 1 0; 0 0 0 0 0;]; B=conv2(double(BW),double(msk)); Gray=B; imshow(Gray) [n m]=size(B); for i=1:280 for j=1:m B(i,j)=0; end; end; L = bwlabel(B,8); figure,imshow(B) se=ones(5,35); X1=imdilate(L,se); figure,imshow(X1) sr=ones(25,90); X2=imerode(X1,sr); figure,imshow(X2) X3=imdilate(X2,sr); X3=imdilate(X3,ones(20,20)); X3=imerode(X3,ones(20,20)); figure,imshow(X3) X4=imerode(X3,se); figure,imshow(X4) sre=ones(45,105); X4=imopen(X4,sre); figure,imshow(X4) X5=Gray .* X4; figure,imshow(X5) X4=im2bw(X4); X4=im2uint8(X4); [x y]=start_point(X4); [x1 y1]=end_point(X4); width=y1-y; height=x1-x; for i=1:height for j=1:width X6(i,j)=X5(i+x,j+y); end; end; figure,imshow(X6) for i=1:height for j=1:width X7(i,j)=im(i+x,j+y); end; end; figure,imshow(X7) for i=1:height for j=1:width X8(i,j)=Gray(i+x,j+y); end; end; image=X8; figure,imshow(X8) [n1 m1]=size(image); n=round(n1/2)+1; m=round(m1/2)+1; for i=1:n1 for j=m:m1 X9(i,j)=image(i,j); end; end; image1=X9; figure,imshow(X9) figure,imshow(im) figure X9=im2bw(X9); X9=imfill(X9); for i=1:size(X9,1) for j=1:size(X9,2) if X9(i,j)==1 X9 (i,j)=1; else X9(i,j)=0; end end end L = bwlabel(X9); s = regionprops(L, 'centroid'); centroids = cat(1, s.Centroid); imshow(X9); hold on plot(centroids(:,1), centroids(:,2), 'b*'); hold off n=centroids (:, 1); m=centroids (:, 2); figure pl=zeros(1,size(X9,2)); for i=1:size(X9,2) for j=1:size(X9,1) pl(1,i)=pl(1,i)+X9(j,i); end end plot(pl) ويطلع لي هذا الكلام ??? Undefined command/function 'start_point'. ارجوكم ساعدوني .........ز |
![]() |
|
|