




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
實驗報告冊
數字圖形圖像處理
霍夫變換試驗學院:人民武裝學院學院專業:計算機科學與技術班級:11級計科班 學號:1120070544 學生姓名:蘇靖 指導教師: 實驗目的:1.掌握MATLAB軟件的使用,以及其設計流程;2.掌握霍夫變換的實現方法;用MATLAB語言設計基于霍夫變換的任意圖形的識別。掌握圖像分割的基本原理及應用。實驗內容:通過全局閾值及局部閾值實現灰度圖像二值化;通過Hough檢測圖像中的直線。二、實驗儀器或設備裝MATLAB軟件的微機一臺三、總體設計原理及流程圖1、 程序設計的原理霍夫變換的基本思想就是把圖像平面上的點對應到參數平面上的曲線最后通過統計特性來解決問題。具有良好的抗噪聲性能和對部分遮蓋的不敏感等特性。2、 程序流程圖四、實驗要求程序結構清晰,運行結果正確。描述上述程序的設計、實現和結果,并對結果進行分析五、主要程序代碼1、霍夫變換檢測圓程序clearall;closeall;clc;%[cr,st]=circle_product;%st(1)->x,st(2)->y,st(3)->rcr=imread('sample.bmp');%circle1.bmpfigure;imshow(cr);[row,range]=size(cr);p=row*range;a=0;Y=zeros(1,p);Q=zeros(1,p);fork1=1:1:rowfork2=1:1:rangeifcr(k1,k2)==0a=a+1;XXX=k2-1;YYY=row+1-k1;Y(a)=YYY;Q(a)=XXX;endendendfork3=1:1:pifY(k3)==0&Q(k3)==0break;endend%z=ones(1,5);%a=1:1:300;b=1:1:300;%zl=sqrt((a-Q(l)).人2+(b-Y(l)).人2);%z2=sqrt((a-Q(2)).A2+(b-Y(2)).A2);%z3=sqrt((a-Q(3)).A2+(b-Y(3)).A2);%z4=sqrt((a-Q(4)).A2+(b-Y(4)).A2);%z5=sqrt((a-Q(5)).A2+(b-Y(5)).A2);%%zl=sqrt((a-Q(l))*(a-Q(l))+(b-Y(l))*(b-Y(l)));%%Zl=(a-Q(l)).A2+(b-Y(l)).A2;r0=(abs(zl-z2)<=0.l&abs(zl<=z3)<=0.l&abs(zl<=z4)<=0.l&abs(zl<=z5)<=0.l&abs(z2<=z3)<=0.l&abs(z2<=z4)<=0.l&abs(z2<=z5)<=0.l);%r=r0.*zl;%aa=r0.*a;%bb=r0.*b;%rrr=round(r(r0~=0))%aaa=aa(r0~=0)%bbb=bb(r0~=0)k7=floor(k3/6);k5=2;a=l:l:300;b=l:l:300;rrr=zeros(l,p);aaa=zeros(l,p);bb=zeros(l,p);k6=0;as=0;kll=l;fork5=l:l:k7k6=0;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%zl=sqrt((a-Q(k5)).A2+(b-Y(k5)).A2); z2=sqrt((a-Q(k5+l)).A2+(b-Y(k5+l)).A2);z3=sqrt((a-Q(k5+2)).A2+(b-Y(k5+2)).A2); z4=sqrt((a-Q(k5+3)).A2+(b-Y(k5+3)).A2);z5=sqrt((a-Q(k5+4)).A2+(b-Y(k5+4)).A2); z6=sqrt((a-Q(k5+5)).A2+(b-Y(k5+5)).A2);r0=(abs(zl-z2)<=.l&abs(zl<=z3)<=.l&abs(zl<=z4)<=.l&abs(zl<=z5)<=.l&abs(zl<=z6)<=.l&abs(z2<=z3)<=l&abs(z2<=z4)<=.l&abs(z2<=z5)<=.l&abs(z2<=z6)<=.l);rr=r0.*zl;aa=r0.*a;bb=r0.*b;[m,n]=size(rr);ifrr==zeros(l,n);as=as+l;continue;end[pzl,pz]=size(rr(r0~=0));rrr=round(rr(r0~=0))aaa=aa(r0~=0)bbb=bb(r0~=0)pz2=pz+kll-l;k9=l;fork8=kll:pz2RR(k8)=rrr(k9);XX(k8)=aaa(k9);YY(k8)=bbb(k9);k9=k9+1;endk11=k8+1;%ifrr==zeros(1,n);%as=as+1;continue;%endend%ifaa==zeros(1,300)%as=1%endrangex=1:1:range;rowy=1:1:row;[RX,RY]=meshgrid(rangex,rowy);RT=RX;figure;mesh(RX,RY,RT);holdon;plot3(XX,YY,RR,'ko');%%%%%%%%%%%%%%%5[rhao,nn]=the_max1(XX,YY,RR);i1=ones(row,range);rhaocenter=rhao;%t2=1.5;t3=1.5;fork1=1:1:rowfork2=1:1:rangeXXX=k2-1;YYY=row+1-k1;ifabs(((XXX-center(1))*(XXX-center(1))+(YYY-center(2))*(YYY-center(2)))-center(3)*center(3))<=101i1(k1,k2)=0;endendendimwrite(il,'找出的圓.bmp','bmp');i2=imread('找出的圓.bmp');figure;imshow(i2);%st2、霍夫變換檢測直線clearall;closeall;clc;i=imread('sample.bmp');[row,range]=size(i);p=row*range;a=0;Y=zeros(l,p);Q=zeros(l,p);forkl=l:l:row fork2=l:l:rangeifi(kl,k2)==0 a=a+l; XXX=k2-l;YYY=row+l-kl;Y(a)=YYY;Q(a)=YYY-XXX;endendend%fort=l:l:a%o=[Y(t)Q(t)]%endXl=[0l];Yl=[Y(l)Q(l)];plot(Xl,Yl,'r');holdon;YY=zeros(l,a-l);QQ=zeros(l,a-l);fort=2:l:a X2=[0l];Y2=[Y(t)Q(t)];plot(X2,Y2);[YY(t-l),QQ(t-l)]=pll(Xl,Yl,X2,Y2);%yyy=YY(t-1)%qqq=QQ(t-1)%看交點plot(YY(t-1),QQ(t-1),'ko');end %[res]=gather_point(YY,QQ,QQ);nn=0;res%[m,n3]=size(YY);%forno1=1:1:n3%n=0;%forno2=(no1+1):1:n3%if(abs(res(no2,1)-res(no1,1))<=0.0001&abs(res(no2,2)-res(no1,2))<=0.0001&abs(res(no2,2)-res(no1,2))<=0.0001)%n=n+1;hao=res(no1,:);%end%end%ifnn>=n3/5%rhao=hao;break;%elseifnn<n%rhao=hao;nn=n;
%end%end[rhao]=the_max1(YY,QQ,QQ);t2=t2/(tl-l)%%yyy=YY%qqq=QQ%t2=0;t3=0;t2=t2/(tl-l)%%fort1=2:1:t%t2=YY(t1)+t2;%t3=t3+QQ(t1);%end%t3=t3/(t1-1)%t2=m,t3=b%i1=ones(row,range);%t2=2;t3=0;i1=ones(row,range);rhaot2=rhao(1);t3=rhao(2);t2=round(t2);t3=round(t3);%t2=1.5;t3=1.5;fork1=1:1:rowfork2=1:1:rangeXXX=k2-1;YYY=row+1-k1;ifabs(YYY-(t2*XXX+t3))<=1%YYY==t2*XXX+t3i1(k1,k2)=0;endendendimwrite(il,'找出的直線.bmp','bmp');i2=imread('找出的直線.bmp');figure;subplot(2,l,l);imshow(i);subplot(2,l,2);imshow(i2);五、實驗結果l、霍夫變換檢測圓實驗結果截圖待檢測的圖:檢測出的圓:2、霍夫變換檢測直線實驗結果截圖待檢測的圖:檢測出的圓:2、霍夫變換檢測直線實驗結果截圖待檢測的圖:五、Hough變換是一種利用圖像的全局特征將特定形狀的邊緣像素連接起來,形成連續平滑邊緣的一種方法。它通過將源圖像上的點映射到用于累加的參數空間,實現對已知解析式曲線的識別。Hough變換常用于對圖像中的直線和圓進行識別。程序代碼:%Hough變換I=imread('hdt.bmp');%I=rgb2gray(I);rotI=I;subplot(2,2,1);imshow(rotI);title('灰度圖像');%axis([50,350,50,500]);%gridon;%axison;BW=edge(rotI,'prewitt');subplot(2,2,2);imshow(BW);title('prewitt算子邊緣檢測后圖像');%axis([50,350,50,500]);%gridon;%axison;[H,T,R]=hough(BW);subplot(2,2,3);imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');title('霍夫變換圖');xlabel('\theta'),ylabel('\rho');axison,axisnormal,holdon;P=houghpeaks(H,5,'threshold',ceil(0.3*max(H(:))));x=T(P(:,2));y=R(P(:,1));plot(x,y,'s','color','white');lines=houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);subplot(2,2,4);imshow(rotI);title('霍夫變換圖像檢測');%axis([50,350,50,500]);%gridon;%axison;holdon;max_len=0;fork=1:length(lines)xy=[lines(k).point1;lines(k).point2];plot(xy(:,1),xy(:,2),'LineWidth',2,'Color','green');pl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 七年級體育教學資源開發計劃
- 2025WPS合同自動化處理系統集成合同
- 高三班主任師生關系改善計劃
- 小學語文名師工作室家校互動計劃
- 二年級班級圖書角建設計劃
- 小學綜合素質評價提升計劃
- 初中語文思維導圖教學應用計劃2024-2025
- 園林建設工程施工合同
- 浙美版三年級下冊美術課程改革計劃
- 五年級英語課堂互動提升計劃
- 基層武裝工作知識
- 生產異常處理方法及流程
- 廣東省廣州市越秀區2025年中考一模歷史模擬試題(含答案)
- 古典詩詞的藝術美與吟誦知到智慧樹章節測試課后答案2024年秋浙江廣廈建設職業技術大學
- 創傷性休克并發癥護理
- 準零剛度非線性低頻隔振器理論研究及應用
- 《小米銷售培訓》課件
- 品牌傳播策略考核試卷
- 2025年北京鐵路局集團招聘筆試參考題庫含答案解析
- 《蜻蜓介紹》課件
- 2025年牛津譯林版英語七年級下冊全冊單元重點知識點與語法匯編
評論
0/150
提交評論