?? hough_l.m
字號(hào):
img1=imread('K:\demo\photo\2123.jpg');
img= RGB2GRAY(img1)
edimg=edge(img);
s=size(img);
nr=s(1);
nth=s(2);
accarray=zeros(nr,nth);
rmax=sqrt(s(1)^2+s(2)^2);
dr=2*rmax/(nr-1);
dth=pi/nth;
th=[0:dth:(pi-dth)];
for y=1:s(1),
for x=1:s(2)
if edimg(y,x)==1
r=(x*cos(th))+(y*sin(th));
rdx=round(r/dr+nr/2);
for k=1:nth
accarray(rdx(k),k)=accarray(rdx(k),k)+1;
end
end
end
end
colormap gray;
imagesc(accarray);
m=max(accarray);
mm=max(m);
mn=min(m);
th=round((mm+mn)/2);
dr=2*rmax/(nr+1);
thimg=im2bw(accarray,th);
[l,num]=bwlabel(thimg);
figure, imshow(img)
for i=1:num
mask=l==i;
region=mask.*accarray;
[tmpc,tmpr]=max(region);
[tmax,col]=max(tmpc);
row=tmpr(col);
r=dr*(row-(nr/2));
th=dth*(col-1);
line([0 s(2)], [(r/sin(th)) ((r-(s(2)*cos(th)))/sin(th))]);
end
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -