哈夫 霍夫 变换

哈夫 霍夫 变换

ID:47017167

大小:128.50 KB

页数:4页

时间:2019-05-25

哈夫 霍夫 变换_第1页
哈夫 霍夫 变换_第2页
哈夫 霍夫 变换_第3页
哈夫 霍夫 变换_第4页
资源描述:

《哈夫 霍夫 变换》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、哈夫变换1、利用哈夫变换数钱clc,closeallA=imread('money2.jpg');A=rgb2gray(A);A=imresize(A,0.25);figure,subplot(131),imshow(A),title('原图')BW=edge(A,'roberts',0.04);subplot(132),imshow(BW),title('Roberts,thresh=0.04')se1=strel('square',3);BW=imdilate(BW,se1);subplot(133),imshow(BW),title('im

2、dilate,消除边界的不连续')BW=imclearborder(BW);figure,subplot(131),imshow(BW),title('imclearborder,清除边界上不相关部分')BW2=imfill(BW,'holes');subplot(132),imshow(BW2),title('imfill,填补空洞')se1=strel('square',3);BW3=bwperim(BW2);subplot(133),imshow(BW3),title('bwperim,提取边缘')[M,N]=size(A);H=zeros

3、(M,N,round(sqrt(M^2+N^2)));forrow=1:Mforcol=1:Nif(BW3(row,col)~=0)forx0=1:Mfory0=1:Nr=round(sqrt((row-x0)^2+(col-y0)^2));%半径ifr~=0H(x0,y0,r)=H(x0,y0,r)+1;%H是累加器,三维矩阵endendendendendend%为了方便观察,将三维参数矩阵根据半径的不同做成不同的帧,制作成视频forfn=1:360[C,map]=gray2ind(mat2gray(H(:,:,fn),[090]),100);

4、mov(fn)=im2frame(C,map);endmovie2avi(mov,'hough.avi')figure%在matlab内用动画的方式按半径增长的方式显示霍夫变换得到的三维矩阵fori=1:50imshow(mat2gray(H(:,:,i),[090]));title(num2str(i)),drawnowpause(0.3);end%另一种表示方法,设定恰当的阈值,将超过阈值的点在三维空间标示出来figure,holdon,[m,n,p]=size(H);fori=1:miforj=1:nfork=1:p/4if(H(i,j,k

5、)>50)colors=H(i,j,k)/125*[100];plot3(i,j,k,'.','Color',colors,'MarkerSize',6);endendendend实验结果:由上图可见,超过累加器阈值50的点聚集为6个不同的小范围空间内,有3个半径接近21,另外3个半径接近25,假设半径小的是5毛,半径大的是1元,则可以得到结论:图中有4.5元。实验总结:由于不同钱币半径相差很小(比如5角和1元),所以拍照时必须小心排除阴影的干扰(比如在不同方向的光照下),而且,应该注意相机与钱币的相对角度,使得图片中钱币呈圆形。附:视频houg

6、h.avi,可以在暴风影音中播放

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。