陳杰,侯同娣,泮進明
(1.鹽城工業(yè)職業(yè)技術(shù)學院,江蘇 鹽城 224005; 2.浙江大學 生物系統(tǒng)工程與食品科學學院,浙江 杭州 310058)
在農(nóng)作物葉面積測量中,葉形紙稱重法、長寬系數(shù)法、鮮樣稱重法、干樣稱重法、回歸方程法等方法的測量都需要將葉片采摘下來,造成葉片損壞。當前使用的葉面積儀器測定方法[1],對于小麥等葉片形狀較簡單的作物適用,對于復雜形狀的葉片則有一定的局限。在圖像檢測識別中,有研究對基于數(shù)學形態(tài)學的植物葉片圖像分割方法進行了探索[2]。本研究通過基于MATLAB軟件的Sobel算子、Prewitt算子、Canny算子、形態(tài)學處理等不同算法的比較分析,選擇最優(yōu)方法,再進一步去噪處理,可實現(xiàn)作物葉面積的測量。
Sobel算子是把圖像中的每個像素的上、下、左、右四領(lǐng)域的灰度值加權(quán)差,在邊緣處達到極值,從而實現(xiàn)邊緣檢測。其定義:
Sx=[f(x+1,y-1)+2f(x+1,y)+f(x+1,y+1)]-[f(x-1,y-1)+2f(x-1,y)+f(x-1,y+1)];
Sy=[f(x-1,y+1)+2f(x,y+1)+f(x+1,y+1)]-[f(x-1,y-1)+2f(x,y-1)+f(x+1,y-1)]。
圖像中每個像素點都與下面2個核做卷積,一個核對垂直邊緣影響最大,而另一個核對水平邊緣影響最大,2個卷積的最大值作為像素點的輸出值。該算子的卷積模板:
該算子算法能夠產(chǎn)生較好的檢測效果,而且對噪聲具有平滑抑制作用,但是得到的邊緣較粗,可能出現(xiàn)偽邊緣,需要根據(jù)具體工況合理設計。
Prewitt算子將邊緣檢測算子模板的大小從2×2擴大到3×3,進行差分算子的計算,將方向差分運算與局部平均相結(jié)合,從而減小噪聲對圖像邊緣檢測的影響。其表達式:
Sx=[f(x+1,y-1)+2f(x+1,y)+f(x+1,y+1)]-[f(x-1,y-1)+2f(x-1,y)+f(x-1,y+1)];
Sy=[f(x-1,y+1)+2f(x,y+1)+f(x+1,y+1)]-[f(x-1,y-1)+2f(x,y-1)+f(x+1,y-1)]。
Prewitt算子卷積模板:G(i,j)=Px+Py。其中,
Px是水平模板,Py是垂直模板。對圖像中每個像素點都用這兩個模板進行卷積,取最大值作為輸出,最終產(chǎn)生邊緣圖像。Prewitt算法對圖像邊緣檢測效果較粗,背景噪聲對算法有效性影響較大,閾值選取不適當會造成邊緣點誤判等缺陷。
Canny邊緣檢測算法是高斯函數(shù)的一階導數(shù),是對信噪比與定位精度之乘積的最優(yōu)化逼近算子。該算法首先用二維高斯函數(shù)的一階倒數(shù)對圖像進行平滑,設二維高斯函數(shù):
其梯度矢量:
1019 Clinical analysis of 11 stroke warning syndrome patients treated with alteplase intravenous thrombolysis
其中,σ為高斯濾波器參數(shù),控制平滑程度。對于σ值過小的濾波器,定位精度高,信噪比低;σ值比過大,則會出現(xiàn)信噪比高,定位精度低。因此,高斯濾波器參數(shù)σ的大小選擇需要根據(jù)實際情況確定。
傳統(tǒng)的Canny算法采用2×2領(lǐng)域一階偏導的有限差分來計算平滑后的數(shù)據(jù)陣列I(x,y)的梯度幅值和梯度方向。其中,x和y方向偏導數(shù)的2個陣列Px(i,j)和Py(i,j)分別為
Px(i,j)=(I(i,j+1)-I(i,j)+I(i+1,j+1)-I(i+1,j)/2,
Py(i,j)=(I(i,j)-I(i+1,j)+I(i,j+1)-I(i+1,j+1)/2。
像素的梯度幅值和梯度方向用直角坐標到極坐標的坐標轉(zhuǎn)化公式來計算,用二階范數(shù)來計算梯度幅值:
梯度方向:
θ[i,j]=arctan[Py(i,j)/Pxj(i,j)]。
Canny算子進行圖像邊緣檢測是較為有效的,檢測樣本標遠的噪聲和位置是精確的,但樹葉檢測結(jié)果是表面紋理較細,對于進一步開展面積計算沒有特別大的價值。
數(shù)學形態(tài)學處理的基本思想是用具有一定形態(tài)的結(jié)構(gòu)元素去度量和提取圖像中的對應形狀,以達到對圖像分析和識別的目的。數(shù)學形態(tài)學的應用大大簡化了圖像數(shù)據(jù),保持其基本形狀特征,并除去不相干的結(jié)構(gòu),提高圖像的分析處理速度。該方法采用三原色RGB通道線性組合模型rgb’=aR+bG+cB,得到凸顯樹葉目標特征的二維圖像,通過填充、膨脹和腐蝕操作優(yōu)化二值化圖像,可較大程度地抑制噪聲并保留細節(jié)部分檢測出邊緣,算法簡單,結(jié)構(gòu)元選取靈活。
由圖1可知,本算法得到的葉片邊緣清晰,葉片內(nèi)部效果比較適合作進一步的處理。
圖1 Sobel邊緣檢測
由圖2可知,本算法得到的葉片邊緣和經(jīng)脈顯示均比較清晰,但葉片內(nèi)部效果進一步處理比較困難。
圖2 Prewitt邊緣檢測
由圖3可知,本算法只能得到葉片經(jīng)脈,不能很好地得到內(nèi)部的整體部分。
圖3 Canny邊緣檢測
由圖4可知,本算法對于試驗條件下背景干擾較小的情況下,效果較差。
圖4 形態(tài)學邊緣檢測
由圖5可知,Sobel算法通過去噪處理后,圖片中葉片內(nèi)部的效果較好,適合進一步開展像素點統(tǒng)計等簡易的算法,從而實現(xiàn)葉片面積的快速檢測。
圖5 Sobel算子處理結(jié)果的去噪再處理
本文通過4種算法進行了基于MATLAB的圖像處理。其中,Sobel算子的處理結(jié)果葉片內(nèi)部效果最好;Prewitt算子的處理結(jié)果比較清晰地看到葉片的紋理,葉片內(nèi)部不夠干凈;Canny算子的處理結(jié)果只能看到葉片的經(jīng)脈,不能很好地整體體現(xiàn)葉片內(nèi)部;形態(tài)學處理的結(jié)果則基本看不到任何效果。
通過比較分析選擇Sobel算子的處理結(jié)果,再進行圖像的去噪處理,從而得到較好的圖形處理結(jié)果。在該結(jié)果分析的基礎(chǔ)上,進一步開展像素點的統(tǒng)計,則能較好地計算出作物葉片面積,從而實現(xiàn)作物葉片面積的快速在線無損測量。