智能圖像處理與分析識(shí)別課件:工程應(yīng)用-米粒檢測(cè)_第1頁(yè)
智能圖像處理與分析識(shí)別課件:工程應(yīng)用-米粒檢測(cè)_第2頁(yè)
智能圖像處理與分析識(shí)別課件:工程應(yīng)用-米粒檢測(cè)_第3頁(yè)
智能圖像處理與分析識(shí)別課件:工程應(yīng)用-米粒檢測(cè)_第4頁(yè)
智能圖像處理與分析識(shí)別課件:工程應(yīng)用-米粒檢測(cè)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

智能圖像處理與分析識(shí)別

《智能圖像處理與分析識(shí)別》工程應(yīng)用-米粒檢測(cè)11.1米粒圖像預(yù)處理11.2米粒圖像輪廓提取11.3米粒圖像特征提取11.4米粒分類《智能圖像處理與分析識(shí)別》背景

食品檢測(cè)在國(guó)家糧食安全中擁有舉足輕重的地位。隨著經(jīng)濟(jì)全球化程度的深入,中國(guó)巨大的市場(chǎng)消費(fèi)力將吸引越來越多的國(guó)際米類品牌的進(jìn)入,國(guó)內(nèi)糧食市場(chǎng)的競(jìng)爭(zhēng)將會(huì)日趨激烈,人們?cè)絹碓阶⒅丶Z食的安全和品質(zhì)問題,糧食質(zhì)量檢測(cè)的市場(chǎng)潛力和發(fā)展空間日益顯著。在糧食工業(yè)生產(chǎn)過程中,視覺檢測(cè)可以代替人工檢測(cè),視覺檢測(cè)方法即能夠準(zhǔn)確識(shí)別有質(zhì)量問題的產(chǎn)品,又能夠減輕操作者勞動(dòng)強(qiáng)度,提高檢測(cè)效率和準(zhǔn)確率,對(duì)完善“精細(xì)農(nóng)業(yè)”具有重要意義。11.1米粒圖像預(yù)處理

由于拍攝背景會(huì)受到光照影響而深淺不一,因此先要對(duì)圖像進(jìn)行預(yù)處理,為后面米粒圖像分割、特征提取、分類檢測(cè)做準(zhǔn)備。預(yù)處理主要包括的內(nèi)容為:背景處理、圖像灰度化、圖像二值化、圖像去噪、圖像孔洞填充。米粒原圖圖像讀取的Matlab程序代碼如下:

Img0=imread('mi.jpg');figure,imshow(Img0);title(‘原圖’);11.1米粒圖像預(yù)處理11.1.1圖像背景均勻化

為了使二值化后的圖像能夠清楚地顯示出黑白的位置,需要將圖片背景色的亮度調(diào)整到相同顏色。觀察原圖,可以發(fā)現(xiàn)圖像中心位置背景亮度強(qiáng)于其他部分亮度。因此需要先提取背景圖像,再?gòu)脑瓐D中減去背景圖像,以得到背景均勻的圖像。圖像背景提取的Matlab代碼程序如下:Se=strel(‘disk’,35);Background=imopen(Img0,se);Figure,imshow(background);Title(‘背景圖像');提取的背景圖像11.1米粒圖像預(yù)處理

接著,從原始圖像中減去提取的背景圖像,即可得到具有均勻背景的米粒圖像。去除圖像背景的Matlab代碼如下所示:Img=Img0-background;figure,imshow(Img);title('去背景圖');背景均勻化圖像11.1米粒圖像預(yù)處理11.1.2圖像二值化

對(duì)圖像進(jìn)行二值化處理,以更好的分割出米粒所在的區(qū)域,方便后續(xù)米粒輪廓提取。圖像的二值化使圖像變得簡(jiǎn)單,而且數(shù)據(jù)量減小,能凸顯出感興趣目標(biāo)的輪廓。對(duì)米粒圖像進(jìn)行二值化的Matlab程序代碼如下:I=rgb2gray(Img);figure,imshow(I);title('灰度圖');bw=imbinarize(I);figure,imshow(bw);title('二值化圖');灰度圖二值圖11.1米粒圖像預(yù)處理11.1.3圖像去噪及米粒填充由于拍攝的圖像存在一些污點(diǎn)噪聲,使得二值圖中的背景上存在一些白色噪聲,還有部分米粒區(qū)域出現(xiàn)黑色的小噪點(diǎn)。為了更好的提取米粒目標(biāo)區(qū)域,需要對(duì)二值圖進(jìn)行圖像去噪和米粒填充處理。處理背景噪聲時(shí),除了需要考慮一些污點(diǎn)產(chǎn)生的小像素,還需要注意一些面積遠(yuǎn)遠(yuǎn)大于米粒的一些噪聲。在去除大對(duì)象時(shí)選用removeLargeArea()函數(shù),去除小對(duì)象時(shí)選用bwareaopen()函數(shù)。針對(duì)米粒填充,則采用孔洞填充的方法填充米粒中的一些孔洞。11.1米粒圖像預(yù)處理圖像去噪及米粒填充的Matlab程序代碼如下:%%去噪bw=removeLargeArea(bw,8000);%去除二值圖像中的大對(duì)象bw=bwareaopen(bw,300,8);%去除二值圖像中的小對(duì)象figure,imshow(bw);title('去噪后圖像');%%孔洞填充%填充中的間隙。%創(chuàng)建一個(gè)盤形結(jié)構(gòu)元素,指定10像素的半徑,以便填充最大的間隙。se=strel('disk',1);bw=imclose(bw,se);%閉運(yùn)算%填充任何孔洞bw=imfill(bw,'holes');figure,imshow(bw);title('填充圖像')去噪后圖像填充圖像11.2米粒圖像輪廓提取采用bwboundaries()函數(shù)對(duì)二值圖像中的米粒進(jìn)行輪廓提取,函數(shù)內(nèi)的參數(shù)選用‘noholes’能夠避免搜索圖像內(nèi)部輪廓,從而加快處理速度。bwboundaries()返回兩個(gè)參數(shù)。第一個(gè)返回參數(shù)B表示邊界像素位置的單元格,B是一個(gè)P×1的數(shù)組,其中P代表連通體的個(gè)數(shù),B內(nèi)每一行是一個(gè)Q×2的矩陣,Q內(nèi)每一行表示連通體的邊界像素的位置坐標(biāo)(第一列是縱坐標(biāo)Y,第二列是橫坐標(biāo)X),Q為邊界像素的個(gè)數(shù)。第二個(gè)參數(shù)L表示標(biāo)簽矩陣,其中標(biāo)記了對(duì)象和孔。采用label2rgb函數(shù)對(duì)標(biāo)簽進(jìn)行顏色轉(zhuǎn)換,格式為:label2rgb(L,map,zerocolor)。其中,L為要轉(zhuǎn)換的標(biāo)簽矩陣;map可取值為@gray或者@jet,@gray為灰度條,@jet為彩色條,即變?yōu)椴噬珗D像;zerocolor為標(biāo)記0的顏色,[.5.5.5]即將標(biāo)記0的顏色設(shè)為[0.50.50.5]。缺省值為[111],即白色。11.2米粒圖像輪廓提取米粒圖像輪廓提取的Matlab程序代碼如下:[B,L]=bwboundaries(bw,'noholes');figure,imshow(label2rgb(L,@jet,[0.50.50.5]))%為每個(gè)閉合圖形設(shè)置顏色顯示holdonN=length(B);%N等于元組B的長(zhǎng)度,也等于米粒的個(gè)數(shù)fork=1:N%for循環(huán)在這里的作用是給所有輪廓進(jìn)行描邊boundary=B{k};%將每一個(gè)輪廓的像素坐標(biāo)賦值給boundaryplot(boundary(:,2),boundary(:,1),'b','LineWidth',1)endtitle('輪廓圖')輪廓提取圖11.3米粒圖像特征提取通過觀察米粒原圖,發(fā)現(xiàn)米粒的圓形度、長(zhǎng)寬比、顏色等參數(shù)特征能夠較好的區(qū)別不同種類的米粒。在完成圖像預(yù)處理和輪廓提取后,就可以對(duì)這些參數(shù)進(jìn)行計(jì)算了。圓形度的計(jì)算公式如第八章所示,面積乘上4π除以周長(zhǎng)的平方。在輪廓提取的基礎(chǔ)上,可利用regionprops()函數(shù)可以獲取圖像的面積和周長(zhǎng),進(jìn)而計(jì)算圓形度。長(zhǎng)寬比可利用最小外接矩形來計(jì)算。調(diào)用minboundrect()函數(shù)可以獲取連通區(qū)域的最小外接矩形,其返回值有四個(gè),第一個(gè)返回值rectx表示從矩形右上角開始順時(shí)針旋轉(zhuǎn)的依次四個(gè)點(diǎn)的橫坐標(biāo)值,第二個(gè)返回值recty表示從矩形右上角開始順時(shí)針旋轉(zhuǎn)的依次四個(gè)點(diǎn)的縱坐標(biāo)值,第三個(gè)返回值area表示矩形的面積,第四個(gè)返回值perimeter表示矩形的周長(zhǎng)。由于米粒表面顏色較為均勻,因此顏色特征可以用顏色的一階矩來表示,即米粒區(qū)域RGB顏色的平均值。利用mean2()函數(shù)來獲取每一個(gè)通道的像素平均值,mean2()函數(shù)相當(dāng)于對(duì)整個(gè)輪廓矩陣求像素的平均值。11.3米粒圖像特征提取%%提取特征%找到測(cè)量圖像區(qū)域的屬性(中心,面積,圓形度等)stats=regionprops(L,'ALL');CirRatio=zeros(1,N);%圓形度%計(jì)算圓形度fork=1:NCirRatio(k)=4*pi*stats(k,1).Area/(stats(k,1).Perimeter)^2;stats(k,1).metric=CirRatio(k);end%求最小外接矩、RGB一階矩和長(zhǎng)寬比[labelpic,num]=bwlabel(bw,8);%stats=regionprops(L,'ALL');figure,holdon;imshow(bw);ratio1=[];ratio2=[];ratio3=[];lenwidth=[];11.3米粒圖像特征提取fori=1:num[r,c]=find(labelpic==i);%最小外接矩形,%'a'是按最小面積算,如果按邊長(zhǎng)算,用'p'[rectx,recty,area,perimeter]=minboundrect(c,r,'a');x=min(round(rectx)):max(round(rectx));y=min(round(recty)):max(round(recty));xx=sqrt((rectx(4)-rectx(1))*(rectx(4)-rectx(1))+...(recty(4)-recty(1))*(recty(4)-recty(1)));yy=sqrt((rectx(4)-rectx(3))*(rectx(4)-rectx(3))+...(recty(4)-recty(3))*(recty(4)-recty(3)));%長(zhǎng)寬比ifxx>yychang=xx;kuan=yy;elsechang=yy;kuan=xx;end

lwlw=chang/kuan;lenwidth=[lenwidth,lwlw];%添加到長(zhǎng)寬比矩陣%顏色矩Img1=Img(y,x,1);Img2=Img(y,x,2);Img3=Img(y,x,3);ratio1=[ratio1,mean2(Img1)];%R通道一階矩ratio2=[ratio2,mean2(Img2)];%G通道一階矩ratio3=[ratio3,mean2(Img3)];%B通道一階矩end%%構(gòu)建特征矩陣FeatureFeature=[];Feature=double(Feature);metric=[stats.metric];%圓形度%將R通道的像素值減B通道的像素值作為一個(gè)特征Feature1=ratio1-ratio3;%將B通道的像素值減R通道的像素值作為一個(gè)特征Feature2=ratio3-ratio1;Feature=[Feature1',Feature2',metric',lenwidth'];11.4米粒分類

米粒分類檢測(cè)采用Kmeans聚類算法。在Matlab中,聚類函數(shù)kmeans()的返回值有四個(gè),第一個(gè)返回值idx表示聚類結(jié)果,第二個(gè)返回值C表示聚類中心,第三個(gè)返回值SUMD表示每一個(gè)樣本到該聚類中心的距離和,第四個(gè)返回值D表示每一個(gè)樣本到各個(gè)聚類中心的距離。利用Kmeans聚類算法對(duì)米粒圖像進(jìn)行分類檢測(cè)的Matlab程序代碼如下:Feature=mapminmax(Feature',0,1)';%按列最小最大規(guī)范化到[0,1]opts=statset('Display','final');%要顯示的輸出級(jí)別,final顯示最終迭代結(jié)果[idx,C,sumD,D]=kmeans(Feature,3,'dist','sqEuclidean','Replicates',8);%聚類%idx:聚類結(jié)果%C:聚類中心%SUMD:每一個(gè)樣本到該聚類中心的距離和%D:每一個(gè)樣本到各個(gè)聚類中心的距離temp1=find(idx==1);temp2=find(idx==2);temp3=find(idx==3);cout1=sprintf('%d',length(temp1));%計(jì)數(shù)cout2=sprintf('%d',length(temp2));cout3=sprintf('%d',length(temp3));11.4米粒分類figure,subplot(1,2,1),imshow(Img0);title('原圖');subplot(1,2,2),imshow(Img);title(['聚類結(jié)果:第一類',cout1,'個(gè),'...'第二類',cout2,'個(gè),','第三類',cout3,'個(gè)']);fori=1:N[r,c]=find(L==i);[rectx,recty,area,perimeter]=minboundrect(c,r

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論