劉媛媛 王躍勇 于海業(yè) 秦銘霞 孫嘉慧
(1.吉林農(nóng)業(yè)大學(xué)信息技術(shù)學(xué)院, 長春 130118; 2.吉林農(nóng)業(yè)大學(xué)工程技術(shù)學(xué)院, 長春 130118;3.吉林大學(xué)工程仿生教育部重點實驗室, 長春 130025)
秸稈還田是目前世界普遍重視的一項減少污染、培肥地力的增產(chǎn)措施[1-2],然而,秸稈還田檢測面臨點多面廣、時間緊迫、難于量化、人員匱乏等實際問題[3]。
秸稈覆蓋率是衡量秸稈還田的一項重要指標。近年來,利用機器視覺進行圖像分割取得了一些的進展[4-8],這些方法雖能有效地分割識別出目標圖像,但算法復(fù)雜,計算量大,且計算精度仍有待提高。秸稈覆蓋率檢測現(xiàn)場采集的圖像中,秸稈覆蓋與未覆蓋圖像顏色十分相似,雜草干擾較大,這些問題對高精度分割和所需目標的提取都造成了很大的困難。
提高計算精度的關(guān)鍵是圖像中秸稈與背景土壤分割的準確性,而分割的關(guān)鍵是找到最優(yōu)的分割閾值。傳統(tǒng)的閾值選擇方法太耗時,且計算量偏大?;依莾?yōu)化算法(Grey wolf optimizer ,GWO)[9]是一種群體智能優(yōu)化算法,KHAIRUZZAMAN等[10]將其引入多閾值圖像分割中,提高了分割效率。但單獨處理復(fù)雜的問題時,易出現(xiàn)早熟現(xiàn)象,導(dǎo)致尋優(yōu)效果和穩(wěn)定性都不理想,且算法處理速度慢。差分進化算法(Differential evolution,DE)[11]是一種基于群體啟發(fā)式搜索的高效全局優(yōu)化算法?;谏鲜鎏攸c,本文提出一種差分灰狼優(yōu)化(DE-GWO)算法,采用自適應(yīng)Tsallis熵[12-13]作為算法的目標函數(shù),以期快速準確提取目標圖像。
秸稈覆蓋率檢測是基于機器視覺技術(shù),結(jié)合秸稈覆蓋率現(xiàn)場復(fù)雜的環(huán)境及圖像灰度直方圖[14]的特點,利用算法尋找最優(yōu)閾值,準確快速地進行圖像多閾值分割,計算出各部分的像素點個數(shù),將秸稈部分的像素點個數(shù)與整幅圖像的像素點個數(shù)相比,得到秸稈覆蓋率
η=n0/n×100%
(1)
式中n0——秸稈部分像素點個數(shù)
n——整幅圖像像素點個數(shù)
為了適應(yīng)現(xiàn)場檢測需求,更廣泛快速處理田間大面積區(qū)域秸稈覆蓋率檢測問題,采用無人機高空俯視拍攝的圖像作為處理對象?,F(xiàn)場田間圖像存在土壤、雜草、雜物等外界干擾,秸稈覆蓋部分顏色和雜草顏色都極其接近,已還田部分顏色和土壤顏色接近,如圖1所示。
圖1 現(xiàn)場采集圖像Fig.1 Field acquisition image1.秸稈 2.已耕作土壤 3.土壤 4.雜草
本文提出DE-GWO算法實現(xiàn)現(xiàn)場田間秸稈覆蓋圖像分割,在此基礎(chǔ)上利用形態(tài)學(xué)算法[15]進行圖像各部分的提取,以便于后續(xù)的面積計算。檢測方法流程如圖2所示。
圖2 秸稈覆蓋率檢測方法流程圖Fig.2 Block diagram of straw mulching rate
本文秸稈覆蓋率檢測方法是基于多閾值圖像分割方法,可根據(jù)圖像內(nèi)容合理選擇閾值數(shù)量,主要對圖像灰度級進行分類。因此,灰度級范圍在相同閾值區(qū)域內(nèi)時,秸稈含水率、秸稈種類以及光照等條件不會對檢測結(jié)果造成影響。
現(xiàn)場采集圖像通常受限于光照條件和采集設(shè)備,具有明顯的噪聲,直接影響分割的準確性。針對噪聲與實際情況下的圖像光照強度不均等問題,采用基于頻域的平滑濾波方法[16]對圖像進行增強,可消除圖像在數(shù)字化過程中的噪聲點并修正圖像的亮度不均問題。此外,將經(jīng)處理后的圖像轉(zhuǎn)換為灰度圖像,為后續(xù)基于灰度直方圖的閾值分割做好準備。
獲得精確秸稈覆蓋率關(guān)鍵在于提取出的秸稈部分面積,閾值的選擇很重要?;趫D像的復(fù)雜程度,引入DE-GWO算法,核心是將GWO算法中的搜索機制嵌進DE算法循環(huán)中,采用自適應(yīng)Tsallis熵作為目標函數(shù),評估圖像分割效率,使用GWO算法讓灰狼個體的位置不斷迭代更新,再利用DE算法的交叉選擇維持種群的多樣性,加快算法運行速度,最好個體狼位置即為最佳閾值。然后將最佳閾值代入實地采集的現(xiàn)場田間秸稈圖像中,依據(jù)閾值對復(fù)雜的田間圖像進行分割,提取出圖像的各個部分,計算出秸稈覆蓋率。
個體狼根據(jù)目標獵物更新自我位置,如圖3所示,其中,圍繞目標獵物產(chǎn)生個體狼8個可能位置,以右上角狼所在位置為例,GWO算法是根據(jù)調(diào)整系數(shù)向量和從而改變個體狼的位置。本文提出的DE-GWO算法是在GWO算法基礎(chǔ)上,個體狼在圍捕目標的過程中對自身位置進行DE算法中的交叉、選擇操作,完成個體位置的局部優(yōu)化,優(yōu)化范圍如圖3中陰影部分所示,其中右上角局部區(qū)域為上述舉例個體狼的優(yōu)化范圍。
圖3 DE-GWO算法中個體狼圍捕目標獵物優(yōu)化范圍Fig.3 DE-GWO algorithm optimal range of individual wolf hunting for target prey
狼群圍捕目標獵物位置優(yōu)化,見圖4。其中,DE-GWO算法位置優(yōu)化后的狼群(內(nèi)部淺色個體)較GWO算法狼群位置(外圍深色個體)更接近目標獵物,減少搜索圍捕過程,大大降低了算法耗時。
圖4 DE-GWO算法狼群圍捕目標獵物位置優(yōu)化Fig.4 DE-GWO algorithm optimal positions of wolves hunting for target prey
閾值分割的關(guān)鍵是找到合適的閾值,這也是本文算法的基礎(chǔ)。在閾值分割技術(shù)中,選擇熵準則確定閾值,現(xiàn)階段,常見選用基于香農(nóng)熵[17]的閾值分割方法,如Kapur熵[18]、Pun熵[19]等。然而香農(nóng)熵是具有廣延性的,這種性質(zhì)忽略了子系統(tǒng)之間的相互作用,反映在閾值選擇上忽略了目標和背景灰度概率分布之間的相關(guān)性。由于田間實際圖像干擾因素較多,且圖像灰度級相近。本文選擇可以推廣到非廣義系統(tǒng)的Tsallis熵[20]作為核心算法的適應(yīng)度函數(shù)。設(shè)一幅圖像灰度級為G,灰度在圖像中出現(xiàn)的概率為pi。Tsallis熵的離散定義為
(2)
式中Sq——Tsallis的熵值
q——調(diào)節(jié)參數(shù)
在單閾值分割情況下,設(shè)閾值z將圖像劃分為目標區(qū)域A和背景區(qū)域B兩類,則這2個區(qū)域的灰度概率分別為
(3)
其中
wA+wB=1
這兩個區(qū)域的Tsallis熵分別為
(4)
(5)
則總的Tsallis熵為
(6)
(7)
然而,雖然Tsallis熵能夠增加算法靈活性和適應(yīng)性,由式(2)可知,選擇合適的q值是確定多閾值Tsallis熵的關(guān)鍵。利用分割圖像的直方圖均值來選擇q值。在直方圖上,當(dāng)灰度級G=256時,設(shè)灰度級處于0~99的區(qū)域為灰度暗區(qū),100~149的區(qū)域為灰度中區(qū),150~255的區(qū)域為灰度亮區(qū),自動選取參數(shù)q的方法為
(8)
式中V——閾值
l——灰度暗區(qū)灰度級
m——灰度中區(qū)灰度級
d——灰度亮區(qū)灰度級
根據(jù)分割圖像的直方圖均值選擇不同的q,實現(xiàn)自適應(yīng)Tsallis熵,達到更好分割圖像的目的。
GWO算法是MIRJALILI等[9]于2014年提出的群體智能優(yōu)化算法。模擬自然界中灰狼家族的社會等級制度和群體狩獵行為,主要通過能力最強(離最優(yōu)閾值最近)的α狼帶領(lǐng)次優(yōu)的狼β和δ捕食(尋優(yōu))。
GWO算法模仿狼群狩獵行為過程中,主要分為包圍、獵捕和攻擊3個步驟[9]。狼群在尋找最優(yōu)閾值的過程中首先對目標進行包圍,該過程可表示為
D=|CXP(t)-X(t)|
(9)
X(t+1)=XP(t)-AD
(10)
其中
A=2ar1-a
(11)
C=2r2
(12)
式中t——當(dāng)前迭代數(shù)
D——狼群與最優(yōu)閾值之間的距離
A、C——系數(shù)向量
XP——獵物所在位置
X——狼群當(dāng)前所在位置,即潛在閾值向量
a——遞減參數(shù)(初始值為2,線性遞減到0)
r1、r2——[0,1]之間的隨機向量
在對獵物進行包圍后,狼群實施獵捕行為,為了更好地搜尋到獵物位置(最優(yōu)閾值),該過程通常是由α、β、δ來引導(dǎo),其他的搜索單位ω應(yīng)根據(jù)當(dāng)前最佳搜索單位α、β、δ的位置更新它們各自的位置。該階段的狼群位置更新表達式為
X(t+1)=(X1+X2+X3)/3
(13)
其中
(14)
(15)
式中X(t+1)——更新后潛在的最優(yōu)解向量
Dα、Dβ、Dδ——狼群中剩余個體ω與α、β、δ間的距離
ω以這些距離為參照來更新各自位置,從而更加接近最優(yōu)解。狼群狩獵過程的最后階段是攻擊,該階段狼群需要完成抓獲目標獵物,即GWO算法獲得最優(yōu)閾值。該過程的模型構(gòu)建主要通過a值的遞減來實現(xiàn)。
此時,灰狼算法結(jié)束迭代后的閾值可能會陷入局部最優(yōu)解,不能準確分割圖像,且實際采集的田間秸稈圖像復(fù)雜使整個過程計算量大、耗時較長,因此,融入另外一種智能算法——DE算法。
DE算法是1997年由STORN和PRICE[11]提出的一種基于種群迭代的高效的全局優(yōu)化隨機搜索算法。它也是基于群體的啟發(fā)式搜索算法,群中每個個體對應(yīng)一個解向量。DE算法的進化流程與遺傳算法[21]非常類似,包括變異、交叉和選擇操作,通過逐步迭代,不斷進化,實現(xiàn)全局最優(yōu)解的搜索。
從一個隨機產(chǎn)生的初始種群開始,通過把種群中任意2個個體的向量差與第3個個體求和來產(chǎn)生新個體,然后將新個體與當(dāng)代種群中相應(yīng)的個體相比較,如果新個體的適應(yīng)度優(yōu)于當(dāng)前個體,則在下一代中就用新個體取代舊個體,否則仍保存舊個體。通過不斷地進化,保留優(yōu)良個體,淘汰劣質(zhì)個體,引導(dǎo)搜索向最優(yōu)閾值逼近。
由于差分進化算法具有原理簡單、控制參數(shù)少、魯棒性強、收斂速度快等優(yōu)點[22-24],將其與灰狼算法充分融合,通過不斷迭代尋優(yōu),找到最適合的閾值進行分割。
入組及排除標準[3]:均符合糖尿病臨床診斷標準;均知曉本次實驗;對本次實驗所用藥物無過敏史;排除惡性腫瘤、酮癥酸中毒、心力衰竭、急性感染、自身免疫性疾病、精神疾病等患者。本研究經(jīng)醫(yī)院倫理委員會同意批準。
基于DE-GWO算法流程為:首先,灰狼的位置隨機初始化,對初始的灰狼種群進行差分操作;其次,利用自適應(yīng)Tsallis熵計算初始種群中每個個體的適應(yīng)度,得到最優(yōu)的3個值Xα、Xβ、Xδ;然后,將差分所得的狼作為GWO算法迭代收斂尋優(yōu)的個體狼,通過式(14)、(15)進行位置更新,對GWO中更新的個體狼進行DE算法中的變異和交叉操作,使灰狼個體的位置再一次更新,根據(jù)式(11)、(12)中a和C的遞減逐漸確定獵物位置;最后,重復(fù)上述過程直到達到最大迭代次數(shù),得到的α狼位置即為最理想的閾值。算法流程如圖5所示。
圖5 DE-GWO算法流程Fig.5 Flow chart of DE-GWO algorithm
將上述基于DE-GWO算法的多閾值圖像分割方法用于秸稈覆蓋率檢測中,并驗證算法的準確性與有效性。首先,選用一組模擬田間秸稈覆蓋情況的圖像,使用二閾值對其進行分割,如圖6所示。通過手動分割與自動分割的匹配率、誤分率以及準確率[25]來評判圖像的分割效果。計算公式為
YMR=[(N1-|N2-N1|)/N2]×100%
(16)
YMER=[(N2-N1)/(mn)]×100%
(17)
YAR=YMR-YMER
(18)
式中YMR——匹配率,%
YMER——誤分率,%
YAR——準確率,%
N1——自動分割圖像目標像素
m——圖像行像素點數(shù)量
n——圖像列像素點數(shù)量
圖6 玉米秸稈原始圖像Fig.6 Original image of corn straw
采用PS軟件中直方圖手動精準檢測面積作為手動標準分割方法。與DE-GWO算法進行比較的其他算法分別是原始GWO、加入慣性因子的改進PSO算法[26]。各優(yōu)化算法的參數(shù)設(shè)置如表1所示。
表1 算法參數(shù)Tab.1 Algorithm parameters
實驗環(huán)境為:Mircrosoft Windows 10 Professional, CPU: Inter Core i5-5200u@ 2.20 GHz,RAM:4 GB;Visual C++2010軟件開發(fā)環(huán)境。為避免隨機性,每幅圖像運行30次,實驗結(jié)果如表2所示。
表2 3種算法判定結(jié)果對比Tab.2 Comparison of three algorithms results
由圖7~9可以看出,DE-GWO、改進PSO、GWO 3種算法分割效果接近,由表2可知,DE-GWO算法較改進PSO、GWO算法匹配率高、誤分率小、準確率高;此外,DE-GWO算法較改進PSO算法的耗時縮短50%左右,較GWO算法縮短了近90%。說明DE-GWO算法準確率高、耗時短,證明算法分割效果相近情況下,DE-GWO的分割效率更高。
圖7 DE-GWO算法分割圖像Fig.7 DE-GWO algorithm segmentation images
圖8 改進PSO算法分割后圖像Fig.8 Improved PSO algorithm segmentation images
圖9 GWO算法分割圖像Fig.9 GWO algorithm segmentation images
圖10 二閾值分割圖像Fig.10 Segmentation images using two thresholds
在自然光照條件下,采用DJI大疆悟2代inspire2型無人機配X5S型云臺相機,距地面50 m垂直拍攝采集,采集時間為2017年10月21日,地點為吉林省榆樹市大崗鄉(xiāng)。采用3組樣本地塊進行實驗,利用所提出的DE-GWO算法,根據(jù)田間采集圖像內(nèi)容復(fù)雜程度而選取不同的閾值進行多閾值圖像分割,分割得不同閾值對應(yīng)的圖像(圖10~12)。以圖12為例,根據(jù)灰度直方圖利用本文所提出的算法找出4個最佳閾值將圖像分為5個部分?;叶燃壧幱?~56為已耕作部分,56~109為土壤部分,109~165為其他部分,165~214為秸稈部分,214~255為雜草部分。計算各部分所占地塊面積,并計算出圖像實際面積以及算法耗時,見表3。
圖11 三閾值分割圖像Fig.11 Segmentation images using three thresholds
圖12 四閾值分割圖像Fig.12 Segmentation images using four thresholds
DEGWO算法改進PSO算法GWO算法二閾值三閾值四閾值二閾值三閾值四閾值二閾值三閾值四閾值秸稈覆蓋/像素626368257154815500807617440953497185814957708589759094435724567已耕作/像素728852738311241358709717152140154791447981600049836419841514691土壤/像素601071683239196198542793994560178317914859雜草/像素212939135107200946233567028689197863258520523170211459其他/像素2972192800854316024秸稈覆蓋率/%39.8436.9135.0839.3734.3137.0845.1937.9036.50實際覆蓋面積/m2225620901987222919432099255821462066所用時間/s1.903.073.7538.2648.4338.3356.7950.2150.73
圖像實際面積與無人機型號fov視角有關(guān),本文圖像與實際面積轉(zhuǎn)換公式為
(19)
(20)
Sa=LaDa
(21)
式中Sa——實際面積
La——實際長度
Da——實際寬度
Ha——實際拍攝的高度
θ——相機的fov視角
考慮到采集圖像中田間秸稈覆蓋情況的復(fù)雜性,對本文提出的算法進行實際應(yīng)用驗證實驗。由圖10~12以及表3可以看出,本文提出的DE-GWO算法可以根據(jù)采集實際秸稈覆蓋圖像內(nèi)容的復(fù)雜程度,實現(xiàn)圖像多閾值精準分割,并計算出實際秸稈覆蓋面積和秸稈覆蓋率。與此同時,相比改進PSO和GWO兩種算法,本方法大大縮短了圖像分割處理的時間。
將實際采集的樣本圖像分別應(yīng)用于DE-GWO算法不同閾值圖像分割,將算法檢測結(jié)果與人工拉繩法進行對比實驗,結(jié)果如圖13所示。
圖13 不同閾值秸稈覆蓋率對比Fig.13 Comparison of straw mulching rate with different thresholds
根據(jù)本文的分割方法,開發(fā)了一套秸稈覆蓋面積計算軟件系統(tǒng)。該系統(tǒng)主要包括圖像顯示、參數(shù)設(shè)置以及結(jié)果輸出3部分,如圖14所示。
圖14 秸稈覆蓋率檢測系統(tǒng)Fig.14 Detection system of straw coverage
其中,采用路徑選擇方式對存儲圖像進行選擇輸入,后經(jīng)算法處理的現(xiàn)場田間各部分分割結(jié)果一并顯示在圖像顯示區(qū)域。算法選擇可分為DE-GWO算法、改進PSO算法和GWO算法,用以進行算法對比實驗。結(jié)果輸出由像素點數(shù)量和相應(yīng)參數(shù)比值兩部分組成,包括原始圖像像素A、秸稈覆蓋部分像素B、已耕作部分像素C、土壤部分像素D和其他部分像素E,以及秸稈覆蓋部分與原始圖像像素比值B/A、已耕作部分與原始圖像像素比值C/A、土壤部分與原始圖像像素比值D/A、其他雜物部分與原始圖像對比E/A。將本部分的比值加以轉(zhuǎn)換得到實際面積,得出實際秸稈覆蓋面積。
參數(shù)設(shè)置為系統(tǒng)子界面形式,如圖15所示,主要用來預(yù)置算法和拍攝所用相機等參數(shù)的信息,為系統(tǒng)根據(jù)設(shè)置好的參數(shù)進行準確分割做好準備,包括算法種群規(guī)模、迭代次數(shù),交叉概率的選擇,及相機的fov視角、拍攝高度的設(shè)置。本部分可以根據(jù)實際情況隨時進行參數(shù)設(shè)置,同時,也為工作人員的實際監(jiān)測提供了軟件系統(tǒng)平臺。
圖15 檢測系統(tǒng)參數(shù)設(shè)置Fig.15 Parameter setting of detection system
(1)提出了一種基于多閾值圖像分割(DE-GWO算法)的田間秸稈覆蓋率檢測方法,實現(xiàn)了對秸稈還田覆蓋率的精準檢測,可完成實際面積轉(zhuǎn)換計算。
(2)DE-GWO算法較改進PSO算法的耗時縮短50%左右,較GWO算法縮短了近90%,具有匹配率高、誤分率小、準確率高、耗時短的特點。
(4)開發(fā)了一套秸稈覆蓋率檢測軟件系統(tǒng),可通過參數(shù)設(shè)置完成秸稈覆蓋實際面積的轉(zhuǎn)換計算,實現(xiàn)田間秸稈覆蓋檢測及信息存儲。