彩色圖像分割


一、實驗目的:熟悉RGB空間的彩色圖像分割方法

二、實驗內容:以redflower.jpg圖像為例,采用邊界盒方法分割出該圖像中的紅色花朵,通過改變標准偏差的系數值,觀察對分割結果產生的影響

原圖:

 1 rgb=imread('D:/redflower.jpg');
 2 figure,
 3 subplot(2,2,1);
 4 imshow(rgb)
 5 rgb1=im2double(rgb);
 6 r=rgb1(:,:,1);%圖像的紅色分量
 7 g=rgb1(:,:,2);%圖像的綠色分量
 8 b=rgb1(:,:,3);%圖像的藍色分量
 9 r1=r(130:195,86:170);%在?的紅分量中選擇一塊矩形區域,由輸入可知size(r)=(195 ,218),改變選擇的行列可以改變標准偏差的標准值
10 r1_u=mean(mean(r1(:)));%計算該矩形區域的均值
11 [m,n]=size(r1);%得到該矩形區域的高度和寬度  
12 sd1=0.0;;%該區域標准偏差變量
13 for i=1:m
14     for j=1:n
15         sd1=sd1+(r1(i,j)-r1_u)*(r1(i,j)-r1_u);%二重循環對差值的平均進行累加
16     end
17 end
18 r1_d=sqrt(sd1/(m*n));%計算得到該區域的標准偏差
19 r2=zeros(size(rgb1,1),size(rgb1,2));
20 ind=find((r>r1_u-1.10*r1_d)&(r<r1_u+1.10*r1_d));%找到符合條件的點
21 r2(ind)=1;%將符合條件的點的灰度值賦值為1
22 subplot(2,2,2);
23 imshow(r2);
24 title('標准差為1.10');
25 ind=find((r>r1_u-1.20*r1_d)&(r<r1_u+1.20*r1_d));
26 r2(ind)=1;
27 subplot(2,2,3);
28 imshow(r2);
29 title('標准差為1.20');
30 ind=find((r>r1_u-1.30*r1_d)&(r<r1_u+1.30*r1_d));
31 r2(ind)=1;
32 subplot(2,2,4);
33 imshow(r2);
34 title('標准差為1.30');

運行結果截圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM