袁雪霞,尹新富
(1.鄭州財經學院信息工程學院,河南 鄭州 450000;2.鄭州財經學院教務處,河南 鄭州 450000)
靈芝(Ganoderma lucidum) 作為一種重要的食(藥) 用菌,被廣泛地用在各種中藥制劑中。近年來,靈芝栽培也正向著工廠化栽培方向發展。在靈芝工廠化栽培過程中,需要根據靈芝不同階段的生長狀態調整噴水、光照和通風等環境參數,人工根據靈芝子實休的形態來判斷生長階段,存在一定的判斷失誤風險,人為主觀觀察生長狀態會有一定的錯誤機率,造成靈芝工廠化生產時的車間溫濕度、光照時間等不能及時調節。同時,靈芝的成熟形態也需要人工根據經驗進行判斷,一般是當菌蓋邊緣生長點完全消失時,標志著靈芝子實體發育成熟,但具體何時進行靈芝孢子粉的采摘還是需要目測經驗判斷;而且在靈芝作為中藥材,其品質等級劃分也是依靠人工分揀挑選[1],費時費力還容易出錯。
基于上述問題,采用計算機視覺和圖像識別技術,對靈芝生長形態和長勢通過圖像識別進行自動科學判斷,即時掌握靈芝生長信息,就可以為靈芝的生長環境控制、采摘收獲以及等級劃分等提供科學的依據[2]。
在食用菌工廠化生產過程中,會安裝許多監控設備,用于監控生長狀態和環境參數[3]。通過這些監控設備對靈芝生長狀態圖像進行采集,就可以獲得第一手的數字圖像。
采集到的靈芝數字圖像包含的信息量非常大,分辨率越高的圖像越清晰。一般而言,清晰度高的圖像便于科研工作人員分析提取某些特征和特殊信息。然而在靈芝生產實際中,由于受環境噪聲及采集設備本身的性能限制,會導致得到的圖像清晰度降低,可研究分析的性能或實用性大大降低[4]。所以,為了能讓人們對圖像信息得到準確無誤的理解,便于做出正確的信息決策和后繼應用,很有必要對采集到的原始圖像進行增強處理,一方面去除干擾噪聲,另一方面提高細節清晰度和層次感。
為了提高靈芝圖像的質量,采用平滑處理來去除圖像的噪聲干擾,盡量保持靈芝圖像的邊緣輪廓和細節特征,圖像平滑中最常用的有消噪聲掩模法、多圖像平均法、鄰域平均法等方法。
消噪聲掩模法[5]可用于消除隨機相加噪聲,但隨著平滑作用的加強,所帶來的副作用會越大,實際圖像反而會更模糊;而多圖像平均法是以噪聲干擾的統計學特征為基礎,由于很難得到多幅圖像,在實際應用也受到很多限制。因此,采用鄰域平均法,用于靈芝圖像的噪聲消除。
鄰域平均法的數學表達式如式(1)所示。
式中:f(x-m,y-n)為給定的靈芝圖像;g(x,y)為經過噪聲消除后得到圖像;M為鄰域內所包含的像素總數;S為事先確定的鄰域,但該鄰域不包括f(x,y)這個點。
例如,一個半徑為1的鄰域可表示為:
式中:h(x,y)為低通濾波器的脈沖響應函數。對應半徑為1的鄰域,該響應函數的值為:
在靈芝圖像的處理過程中,圖像像素點的梯度值求取是一個必要的步驟,在圖像增強處理中,不論是依據梯度值屬性,還是依據子塊均值差屬性,都是將圖像劃分成兩個等價類。梯度值屬性將圖像劃分成亮暗兩個等價類,子塊均值差將圖像劃分成噪聲區和非噪聲區兩個等價類,從而對圖像進行亮區和暗區的劃分。但前提是要正確計算圖像象素點梯度值的大小,因而計算象素點的梯度值是必不可少的,其具體方法如下。
圖像在點x(m,n)處,梯度對應一階導數,梯度算子是一階導數算子,梯度G[x(m,n)]的幅度計算為:
對于數字圖像,可用差分法代替上式的微分法,上式可改寫為:
式中:△mx=x(m,n)-x(m+1,n);△nx=x(m,n)-x(m,n+1)。
采用近似形式表示為:
根據上述計算就可以求得圖像中每一點的梯度值大小,需要注意的是其中最后一行和最后一列用其前一行或前一列的梯度值近似代替。算出梯度值后,一是可以完成圖像梯度信息的知識化,二是方便于接下來劃分亮暗區閾值P的求取,P可以按照下式求得:
式中:閾值P為所有像素點梯度值均方和的平均值。
圖像中特定形狀窗口內像素灰度值均值的求取是圖像處理的常用算法,根據這一算法的基本方法,我們取靈芝圖像中的一個4×4方形子塊,計算其灰度值均值,標記子塊s的均值為V(s),則其計算公式如下:
式中:x(m,n)為圖像在點(m,n)處的像素灰度值。
子塊的劃分提取是計算其均值的前提,這里可運用MATLAB中的矩陣子塊調用指令,設劃分好子塊后的矩陣為h,原矩陣為H,且原始圖像H的大小為M×N,則有:
式中:m,n分別為子塊矩陣集h中單個小矩陣塊的寬度和高度上的像素點數;a=M/m,b=N/n,且a,b都為正整數。這里設m=n=4,對于大小為256×256的靈芝圖像來說,a=b=64,即將原始圖像可劃分成64×64=4 096個4×4的子塊圖像。劃分好子塊后,既可按照上述均值V(s) 的計算方法計算各個子塊的灰度均值。閾值是通過分析圖像噪聲統計特性來估計的,由于圖像中干擾噪聲基本屬于高斯噪聲,對其均值和均方值分別進行統計后,取閾值為3倍的均方值,其中均值和均方值計算方法如式(11)、 (12) 所示:
圖像分割是圖像處理中的一項技術,是在不同條件要求下,將一張圖像分割成具有特定特征的區域,并提取其中感興趣目標的過程。而遺傳算法是一種利用生物染色體遺傳理論的算法,它模擬了生物在自然選擇進化過程中一代代不斷優化從而達到最佳生存狀態過程。
對于二維圖像來說,可以將遺傳算法應于圖像分割中,對圖像分割過程中的閾值進行優化選擇,快速、準確地進行圖像分割,利用遺傳算法的優勢來提高圖像分割的性能。
遺傳算法通過對多個個體的迭代搜索來逐步找出圖像分割問題的最優解,多個個體組所構成的群體作為進化的對象,個體的染色體代表待優化問題的解,個體的適應度值就是由解的值計算得到的適應函數的值,反映的是個體的適應能力。算法主要流程見圖1。
如圖1所示,初始種群中的每個體通過隨機方法產生后,首先遵循適者生存、優勝劣汰的進化規則,根據適應度值的大小,判斷個體的優劣程度,依此進行選擇,然后按照交叉概率從當前種群中隨機選取2個個體,交換部分基因形成2個新的個體,構成下一代的染色體,最后按照變異概率使個體基因的某一位發生變化,這樣可以維持種群的多樣性,往復迭代,直至條件滿足。
標準的遺傳算法編碼方法有二進制編碼、格雷編碼、浮點數編碼等多種編碼方式,由于圖像分割的目的就是將感興起的部分從圖像背景中分割出來,因此需要確定一個灰度的分割閾值。而遺傳算法可以進行快速全局搜索,利用遺傳算法的這一特性就可以快速對圖像分割閾值進行搜索,得到最優的分割閾值,從而提高圖像分割效率。可以用染色體來表示分割閾值,從而確定編碼染色體,編碼方式采用浮點數編碼,以提高遺傳算法的計算精度。在開始進行初始種群選擇時,按照遺傳算法的啟發式方法進行給定變量的微調,這樣得到的初始種群都在可行域范圍內。
選擇適應度函數的目的實際上是為了評價最優閾值,采用遺傳算法增加罰函數,使優秀個體盡可能遺傳到下代,這樣遺傳到下一代的個體將更加靠近最優閾值。在選擇方式上,為了便于和改進遺傳算法做比較,這里采用的選擇方式為隨機遍歷抽樣法,通過隨機遍歷抽樣,選擇到的個體將遺傳到下一代中。通過計算,將種群中每個染色體的適應度值按照適應度值的大小進行排序,從中選擇閾值排名靠前的個體來替代排名靠后的個體。
進行遺傳交叉和變異,將得到的新個體再重復上面的適應度計算,從而完成一代進化的過程,得到新的更優的遺傳個體。將這樣的遺傳進化過程進行重復,一般在進行5代進化后,平均適應度值就已經不超過1%,此時就可以得到最優的閾值,按照這個閾值對圖像進行分割處理就能得到更為完整的分割圖像。
靈芝圖像分割的關鍵就是找到圖像的最優分割閾值。因此使用遺傳算法中的染色體來表示分割閾值,利用遺傳算法的快速全局搜索能力來對最佳閾值進行搜索,大大提高了傳統閾值法的分割效率,而且分割結果也有一定的優化。可以快速將靈芝圖像從原始采集圖像中分離出來,得到更加清晰完整的靈芝生長形態,使計算機能夠自動識別靈芝長勢形態,從而精準確定靈芝所處的生長階段,采取相應的養護栽培方式,減少人工辨別失誤。