皂角花分割和邊緣檢測算法MATLAB實現_第1頁
皂角花分割和邊緣檢測算法MATLAB實現_第2頁
皂角花分割和邊緣檢測算法MATLAB實現_第3頁
皂角花分割和邊緣檢測算法MATLAB實現_第4頁
皂角花分割和邊緣檢測算法MATLAB實現_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、皂角花分割和邊緣檢測算法MATLAB實現圖像處理和計算機視覺領域研究的發展,圖像分割和邊緣檢測的問題在近二十年中得到了廣泛的關注和長足的發展,國內外很多研究人士提出了很多方法,在不同的領域取得了一定的成果。本實驗針對一張皂角樹的彩色圖像,尋找一種準確率高的皂角花分割和邊緣檢測算法,并在MATLAB中得以。一、 實驗步驟2.1 圖像分割預處理步驟一、圖像灰度化實驗采集的圖像是通過手機拍攝獲取的RGB彩色圖像,由于圖像中的每個像素都具有三個不同的顏色分量,圖像中會出現很多與識別無關的信息,為進一步對圖像的處理研究,首先將彩色圖像轉換為灰度圖像,這個過程稱圖像灰度化。如圖2-1所示:圖2-1 圖像灰

2、度化步驟二、圖像去噪圖像去噪是數字圖像處理中的重要環節和步驟。去噪效果的好壞直接影響到后續的圖像分割、邊緣檢測等圖像處理工作。在這里使用中值濾波多圖像中隨機出現部分點進行處理。如圖2-2所示:圖2-2 圖像去噪步驟三、圖像二值化二值化處理利用圖像中要得到的皂角花和綠葉之間灰度上的不同來得到一個閾值或范圍,此處設閾值為0.61基本上把最開始的圖像劃為背景和對象物體。如圖2-3所示:圖2-3 圖像二值化2.2 圖像形態學處理步驟四、腐蝕膨脹這里主要是采用數學形態學中的腐蝕與膨脹操作,因為圖像中的藍天在二值化后的圖像呈現出一些零散的白點。現通過先腐蝕后膨脹的操作去除這點亮點。對腐蝕和膨脹設定相應的閾

3、值。如圖2-4所示:圖2-4 腐蝕膨脹2.3 圖像分割步驟五、區域生長法分割區域生長法利用圖像像素間的相似性進行分割,調用regiongrow函數對圖像進行處理。這里設置閾值為0.17。如圖2-5所示: 圖2-5 區域生長法步驟六、 Canny 算子邊緣檢測Canny的研究思想主要是把檢測像素點轉換為檢測單位函數極大值,他指出一個好的邊緣檢測算子應有三個特性:檢測性噪比高,邊緣定位精度高,單邊響應效果好。Canny算子基于Laplace濾波,采用兩個閾值,對強邊和弱邊進行檢測。從實驗結果可以看出,相對其它邊緣檢測算子,Canny算子對像素變化更加敏感,能更好地捕捉圖像中的微弱邊緣。采用Cann

4、y算子檢測皂角花邊緣如圖2-6所示:圖2-6 Canny 算子二、 算法實現MATLAB的數字圖像處理功能很強大,其自帶的圖像處理工具箱包括了經典圖像處理的許多方面,如圖像的集合操作、鄰域和區域操作、圖像變換、圖像的恢復、增強和分割、線性濾波器和濾波器設計、圖像分析和統計、色彩、集合及形態操作等方面。針對以上操作都可直接使用MATLAB提供的函數,簡單快捷。3.1 讀取圖像原圖像為1111.PNG,存放在本機D盤。I=imread('D:1111.PNG');subplot(2,2,1),imshow(I);axis on; %顯示坐標3.2 圖像預處理I1=rgb2gray(

5、I);subplot(3,3,1); imshow(I1); title('灰度圖像'); %圖像灰度化B = medfilt2(I1);subplot(3,3,2); imshow(B); title('圖像去噪'); %圖像去噪中值濾波I3=im2bw(B,0.61); subplot(3,3,3); imshow(I3); title('圖像二值化'); %圖像二值化3.3圖像腐蝕膨脹se=strel('square',18);I4=imerode(B,se);subplot(3,3,4); imshow(I4); titl

6、e('腐蝕'); %圖像腐蝕操作sv=strel('square',15);I5=imdilate(I4,sv);subplot(3,3,5); imshow(I5); title('膨脹'); %圖像膨脹操作3.4圖像分割首先編寫m文件,實現生長區域算法,用戶選擇種子點,然后根據閾值進行區域生長。m文件:function J = regionGrow(I)if isinteger(I) I=im2double(I);endfigure,imshow(I),title('原始圖像')M,N=size(I);y,x=getpts;

7、%獲取區域生長點起始點x1=round(x); y1=round(y); seed=I(x1,y1); %將生長起始灰度值存在seed中J=zeros(M,N); J(x1,y1)=1; sum=seed; suit=1; count=1; threshold=0.16;while count>0s=0;count=0; for i=1:M for j=1:N if J(i,j)=1 if (i-1)>0 & (i+1)<(M+1) & (j-1)>0 & (j+1)<(N+1) for u= -1:1 % 判斷點周圍八點是否符合閾值條件

8、for v= -1:1 if J(i+u,j+v)=0 & abs(I(i+u,j+v)-seed)<=threshold& 1/(1+1/15*abs(I(i+u,j+v)-seed)>0.8 J(i+u,j+v)=1; % 判斷是否為尚未標記,并且符合閾值條件的點 count=count+1; s=s+I(i+u,j+v); end end end end end end end suit=suit+count; sum=sum+s; seed=sum/suit; end最后,將我們處理后的圖像進行區域生長。f = regionGrow(I5); %區域生長分割

9、imshow(f); title('regionGrow');3.5 Canny算子邊緣檢測k,t=edge(f,'canny');imshow(k); title('canny算子'); %Canny算子邊緣檢測三、 結論與討論本次實驗通過對皂角花圖像預處理、形態學處理及分割等一系列操作,實現了皂角花的目標分割及邊緣檢測。數字圖像目標分割與提取是數字圖像處理和計算機視覺領域中一個備受關注的研究分支,也是圖像處理領域的一個經典難題。經過近二十年的不斷研究和探討,數字圖像目標分割與提取在不同領域取得了很大發展,但是目前還沒有一個通用的算法或標準能夠勝任所有不同的應用,該問題也沒有形成一個通用的自身理論

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論