黎雙文,梁 耀,劉鑫磊,李豐果
(華南師范大學物理與電信工程學院/廣東省量子調控工程與材料重點實驗室,廣東 廣州 510006)
樹葉是樹木的重要器官,反映了樹木的多種生長信息。為了避免背景信息對目標樹葉提取的影響,往往將目標樹葉從樹上采摘下來,并配以簡單的背景獲得圖像,然后運用不同的算法對目標樹葉的特征進行提?。?-5]。但是對目標樹葉進行采摘會對樹木造成損傷,理想的做法是直接對自然生長狀態(tài)的目標樹葉進行拍攝。但是直接獲得目標樹葉圖像的同時往往會碰到復雜的背景(如樹葉、枝干、天空、建筑等),由于背景復雜,使得對目標樹葉分割難度成倍增加。當前還沒有一種普適的算法實現復雜背景下目標樹葉的分割和特征信息的提取,因此復雜背景對目標樹葉的分割算法及其有效性是當前這一領域研究的熱點和難點。畢于慧等[6]在CIE Lab空間對植物復雜背景下的彩色圖像進行矢量變換,再利用改進的幾何活動輪廓模型進行分割,通過對比大大減少了運算所需的迭代次數,但并末對運算時間進行對比。Xia等[7]提出利用結合多層感知器的主動輪廓模型對復雜背景下的辣椒葉片彩色圖像進行分割,但是要預先對葉片形狀進行建模且不適用于多種葉片。Wang等[8]對棗葉復雜背景的圖像進行分割時,提出了一種融合最大類間方差法和Canny 算子邊緣檢測的方法,但是該方法并不適用于各種葉片且成功率較低。高理文等[9]對復雜背景的圖像進行分割時對目標圖像進行人工標記葉邊緣點和葉外點,然后對標記圖像進行分水嶺分割并取得較好的結果,但是其自動化程度不高。在復雜背景下目標樹葉分割的研究中[10],我們發(fā)現分割后的目標樹葉邊緣會出現缺口,邊緣缺口直接影響了分割的錯分率;同時運行時間較長,在一定程度上限制了實時監(jiān)測等方面的應用。為了解決上述問題,本研究提出利用凸包填充法對目標樹葉邊緣的缺口部分進行補缺,以降低目標樹葉分割的錯分率;利用模糊C聚類去除與目標樹葉顏色差異較大的綠色背景,以減少后續(xù)算法的運算量,提高分割算法的運行效率。
超綠算法(extra-green algorithm,EXG)[11]是一種通過增加綠色通道的權重,擴大植物綠色部分與非綠色背景之間的對比度,從而實現對綠色植物進行分割的方法。其中,超綠特征值為2G-B-R,R、G、B分別表示彩色圖像中的紅色、綠色、藍色通道,超綠算法可用如下公式表示:
式中,T為閾值,本研究設為0,其中EXG為灰度值。當超綠特征值大于閾值T小于255時用超綠特征值表示,當超綠特征值≥255時統一為255,當超綠特征值≤閾值T時為0。
模糊C聚類(uzzy C-cluster algorithm,FCM)通過對圖像中的像素點與c個聚類中心的隸屬度和歐氏距離的乘積進行加權距離求和,并通過對加權距離(即目標函數)進行不斷迭代,使得類內相似度最大,類間相似度最小,從而達到對圖像進行分割的目的[12-14]。
設X = {x1,x2,x3,…,xn}為像素點集,n為X中像素點的總數目。分類結果可用c×n的隸屬度矩陣U = [uij]來表示,其中uij( 0≤uij≤1 )表示像素點j對聚類中心i的隸屬程度。對c個聚類中心
歐氏距離dij表示第j個像素點到第i個聚類中心的距離。
目標函數可表示為:
式中,m為模糊權重系數,其取值范圍為1 式中,λj為拉格朗日乘子,V = [vi]表示由c個聚類中心組成的集合。通過對式(4)中uij、vi、λj求偏導并使其偏導為0,即可得其最優(yōu)解。此時, 模糊C聚類的算法步驟如下: (1)根據前景和背景的特點取c=2,并分別選取灰度值為50和250的某個像素點為其初始聚類中心V(0);(2)由步驟(1)中的初始聚類中心V(0),通過式(2)和式(5)計算其隸屬度矩陣U(r),r為迭代次數;(3)由隸屬度矩陣U(r),通過式(6)計算新的聚類中心集合Vr= [vir];(4)根據式(2)和式(6)由Vr得到新的隸屬度矩陣 U(r+1);(5)如果 U(r+1)- U(r)≤ε(ε≤0.01)則停止迭代運算,否則r = r + 1返回步驟(3)進行迭代。 1.3.1 腐蝕運算 腐蝕運算可以消除小于結構元素的點,即可以用來消除目標物體邊緣與背景存在的連通部分。形態(tài)學操作可用式(7)表示: 式中,f為原圖,b為結構原素,若結構元素b平移x后仍位于f的集合中,則原點處對應的像素點與目標圖像的像素點值一致。 1.3.2 膨脹運算 膨脹運算主要用來擴展物體的邊界點和使一些相鄰距離較短的區(qū)域進行連接,形態(tài)學操作可用式(8)表示: 從式(8)可知,若結構元素b平移x后與f的交集不為空集,則原點處對應的像素點與目標圖像的像素點值一致。 1.3.3 底帽變換 底帽變換即用閉運算的結果減去原圖像,得到被閉運算填充的谷底部分,由于這一部分位于圖像較暗的區(qū)域,也稱為黑帽變換。形態(tài)學操作可用式(9)表示: f·b為形態(tài)學閉運算,可用式(10)表示: 從式(10)可知,閉運算是一種對圖像進行先膨脹后腐蝕的形態(tài)學操作,具有連接鄰近物體、填充物體內部細小空洞和平滑邊界的作用。圖1為底帽變換的示意圖,波動曲線表示底帽變換前的灰度變化,實心圓曲線表示用結構元素大小為15的圓形結構元素閉運算后的灰度變化。從圖1可以看出,底帽變換得到被閉運算填充的谷底部分,突出了原圖像中的暗區(qū)域。 圖1 底帽變換示意圖 平面點集凸包[17]算法步驟: (1)選取平面點集中y坐標值最小的點為坐標原點,如果y坐標最小的點有多個,則選取x軸最左邊的點為坐標原點po。然后,對平面集中所有的點進行極坐標變換,計算極坐標上各點與po連線輻角的大小。如果存在兩個或兩個以上幅角大小相同的點,則優(yōu)先選取最接近po的點,如圖2A的p3和p4。將輻角按非降序進行排序 p = { p1,p2, …,pn-1}。 (2)按排序結果依次對極坐標上的點進行掃描。設當前的棧頂元素(即最后一個進棧的數據)為pk,此時掃描的元素為pl,若pj、pk、pl構成一個左旋路徑,則表明此路徑構成凸邊,pl為新的棧頂元素,把pl壓入堆棧(即為一暫時存儲數據的存儲區(qū)域)中,如圖2B所示。若pj、pk、pl構成一個右旋路徑,則pk為凸包內的點,將pk從堆棧中移出,此時重新判斷pk前兩個堆棧元素pi,pj與pl構成的路徑方向,重復此判斷和處理,直至pl與后面堆棧中的元素構成左旋路徑為止,如圖2C所示。 (3)對極坐標上所有點進行判斷和處理,直至返回坐標原點po為止,如圖2D所示。 圖2 Graham掃描法計算凸包 以下為凸包在目標樹葉分割中的應用說明,圖3A(彩插四)為通過本文算法分割出來的目標樹葉。從圖3A可以看出,分割后的目標樹葉的邊緣和葉脈處出現了缺口,對該圖進行內部填充(對每一行目標樹葉進行掃描,提取每一行像素點值為1的坐標位置的最大值和最小值,并使兩坐標位置間像素點的值為1)后結果如圖3B(彩插四)所示。從圖3B可以看出,目標樹葉邊緣處仍存在缺口,對缺口采用凸包填充法進行補缺,補缺過程如下:先對目標樹葉構造一個最小外接矩形(如圖3C,彩插四),由于該樹葉葉尖部分的形狀比較尖細,如果直接對整片樹葉進行凸包填充可能會造成過分割的現象,因此可以將圖3C分為上下兩部分,如圖3D、E(彩插四)所示,其中下部分為葉尖部分,如圖3C紅色虛線方框所示。對上下兩部分用Convhull函數進行凸包處理(紅色圈內),如圖3D、E所示,其中圖3I(彩插四)為圖3D藍色虛線方框的局部放大圖。對圖3D、E分別構造相應的最小外接矩形的全1矩陣,然后利用Inpolygon函數判斷外接矩形中的點,若點位于凸包內則保持1不變,若點在凸包外則將其設為0,填充后的結果如圖3F、G(彩插四)所示。將圖3F、G與原圖匹配并相加即可得到填充后的目標樹葉,結果如圖3H(彩插四)所示。 對目標樹葉進行分割,分割流程如圖4所示:(1)對原彩色圖像利用超綠算法進行初步分割;(2)對初步分割的圖像,利用模糊C聚類進行再次分割;(3)對原彩色圖像的灰度圖進行底帽變換,并進行Otsu運算;(4)對步驟(2)和(3)得到的圖像進行異或運算,得到較完整的目標樹葉輪廓;(5)利用腐蝕和比較連通區(qū)域的大小將目標樹葉單獨分離出來;(6)對步驟(5)分離的目標樹葉進行凸包填充,利用原圖像的坐標信息對分割出來的目標樹葉進行匹配疊加,得到目標樹葉的彩色圖像。 圖4 目標樹葉分割流程 圖5A(彩插四)中含有天空、樹枝和其他樹葉的復雜背景,對于非綠色的背景部分可以利用超綠算法進行去除,結果如圖5B(彩插四)所示。從圖5B可以看到天空、樹枝等非綠色背景,利用超綠算法可以有效去除,但對其他與目標樹葉顏色相似的綠色背景卻無法去除。對于與目標樹葉顏色差異較大的綠色背景部分,可以利用原圖像的坐標信息對圖5B進行匹配疊加,得到超綠處理后的彩色圖像,結果如圖5C(彩插四)所示,再利用模糊C聚類進行去除,結果如圖5D(彩插四)所示。由圖5D可知,以上算法還不能將目標樹葉單獨地分割出來,對于與目標樹葉顏色差異較小的綠色背景,可利用目標樹葉的邊緣信息對其進行去除。對圖5A的灰度圖像進行底帽變換,結果如圖5E(彩插四)所示,從圖5E可以看出目標樹葉的邊緣輪廓,為了突出目標樹葉的邊緣輪廓和減少錯分現象,需要對圖5E進行Otsu運算,結果如圖5F(彩插四)所示。為了更準確地將目標樹葉分割出來,將聚類結果與邊緣信息結合起來,需要對圖5D和圖5F進行異或運算,即參與運算的兩個值相同為0、否則為1,結果如圖5G(彩插四)所示。為避免目標樹葉邊緣處與背景還存在連通部分,可以通過形態(tài)學腐蝕運算將目標樹葉從復雜背景中分離出來。為了得到單獨的目標樹葉,可以通過比較連通區(qū)域大小的方法將其單獨提取出來,結果如圖5H(彩插四)所示,從圖5H還可以看到提取出來的目標樹葉內部和邊緣處存在部分缺口的情況,為此需利用內部填充法和凸包填充法對圖5H進行填充,填充后的結果如圖5I(彩插四)所示。利用原圖像圖5A的坐標信息對圖5I)進行匹配疊加,得到單一背景的目標樹葉彩色圖像(圖5J,彩插四)。 3.2.1 錯分率分析 為了驗證算法的有效性,利用錯分率(ME)[18-19]評價復雜背景下目標樹葉分割的準確率,錯分率可用式(11)計算。 本研究算法分割的目標樹葉像素數用V表示,Photoshop軟件分割的目標樹葉的像素數用VP表示。 |V∩VP|表示目標樹葉被正確分割的像素數。 M * N表示像素的總數,即圖像大小。表示目標樹葉的分割準確率,ME值越小,表明本研究算法分割的誤差越小,分割效果越好。采用Photoshop軟件對目標樹葉進行分割并將其二值圖像作為評價標準(即上式中的VP)與本研究算法進行比較。其中,本研究算法分割的目標樹葉的缺口部分如圖6(彩插四)中紅色橢圓虛線所示,紅色箭頭指向為其局部放大圖;對缺口部分進行補缺后如圖中黑色橢圓虛線所示,黑色箭頭指向為其局部放大圖。表1為圖6所示的5個樣本補缺前和補缺后的錯分率,通過比較連通區(qū)域大小提取到的目標樹葉的錯分率均小于3.94%,對提取到的目標樹葉利用凸包填充法對缺口部分進行補缺后其錯分率顯著降低,錯分率均小于2.84%(表1)。從圖6可以看出,目標樹葉補缺后還能較好地保留其邊緣細節(jié)。 表1 目標樹葉錯分率比較 3.2.2 運行效率分析 為了提高分割的運行效率,在超綠算法的基礎上引入模糊C聚類算法。模糊C聚類算法可以去除與目標樹葉顏色差異較大的綠色背景,減少了后面異或運算和腐蝕運算的運算量。圖7A(彩插四)為沒有引入模糊C聚類算法的分割效果圖,圖7B(彩插四)為引入模糊C聚類算法的分割效果圖。圖7C(彩插四)和圖7D(彩插四)分別為圖7A和B紅色虛紅方框的放大圖。從圖7C和D可以看出,圖7D的連通區(qū)域顯著少于圖7C的連通區(qū)域。連通區(qū)域的減少,減少了算法對連通區(qū)域進行比較和排序的運算量,從而提高了算法的運行效率。 本研究的試驗環(huán)境為i5-6500、3.2GHZ處理器、4G內存。表2為圖7(彩插四)所示5個樣本未引入模糊C聚類算法和引入聚類算法的運行效率。從表2可以看出,在超綠算法對原圖像進行分割的基礎上引入模糊C聚類算法后可顯著減少后續(xù)算法的運算量,提高了算法的運行效率,提高效率最高可達16.65%。 表2 樣本運算效率 眾所周知,對自然生長狀態(tài)下,植物樹葉的分割和特征信息的提取不得不面對復雜背景。復雜背景對目標樹葉的分割帶來極大的挑戰(zhàn)和不確定性。李凱等[20]提出一種粒子群優(yōu)化算法和K-means聚類算法混合的分割算法對復雜背景棉花葉片圖像進行分割;董本志等[21]提出一種葉片區(qū)域的快速多閾值提取方法對自然環(huán)境下的植物葉片進行分割。這些算法與我們前期工作一致,分割得到的目標樹葉邊緣處都出現了缺口。在我們的前期工作中由于背景的復雜性,導致算法的運行效率不高。本研究集中在算法的準確性和運算效率兩個方面進行研究,在對復雜背景下目標樹葉分割的基礎[10]上,提出了在超綠算法的基礎上結合模糊C聚類算法來去除與目標樹葉顏色差異較大的綠色背景,減少了后續(xù)算法的運算量,分割效率平均提高了13.82%。為提高目標樹葉分割的準確性,對分割后目標樹葉邊緣處的缺口部分采用凸包填充法進行補缺,補缺后錯分率顯著降低,錯分率平均降低了1.05%。運行效率的提高,有利于對目標樹葉進行實時監(jiān)測。 經過多次試驗研究發(fā)現,本研究所采用的算法存在過分割的現象,對于算法的普適性還沒有深入研究。因此,下一步主要集中研究本文提出算法的普適性以及進一步提高算法的運行效率,以使其應用在實際的在線監(jiān)測中。1.3 形態(tài)學運算
1.4 凸包填充法
2 目標樹葉分割步驟與流程
3 結果與分析
3.1 目標樹葉的分割
3.2 分割錯分率和運行效率的分析
4 結語