劉莫塵 許榮浩 閆 筱 閆銀發(fā) 李法德 劉雙喜
(1.山東農(nóng)業(yè)大學機械與電子工程學院,泰安 271018; 2.山東省園藝機械與裝備重點實驗室,泰安 271018;3.華北電力大學(保定)電氣與電子工程學院,保定 071003)
為了提高生絲質(zhì)量,繅絲前需要對蠶繭進行檢測分類,剔除黃斑繭、口繭、薄皮繭等下繭。黃斑繭是指因被死蠶或蠶尿等污染造成表面出現(xiàn)黃色污斑的蠶繭,根據(jù)污斑面積的大小分為尿黃繭(污斑總面積超過0.5 cm2)、靠黃繭(污斑總面積超過1 cm2)和老黃繭(污斑占繭體面積的1/3以上)等[1]。黃斑繭占下繭的比例高達50%,而傳統(tǒng)黃斑繭剔除主要靠人工目測,勞動力成本較高,同時選繭的準確性易受人員技術水平、精神狀態(tài)等主觀因素影響,存在勞動強度大、誤選率高等缺點。

圖1 方格蔟圖像Fig.1 Images of mountage
國外對蠶繭檢測的研究報道較少,國內(nèi)對蠶繭檢測研究主要以圖像處理與機器視覺為主。蔡健榮等[2]提出了一種基于X射線成像技術的蠶繭雌雄判別方法。SUMRIDDETCHKAJORN等[3-4]通過處理紅白兩種光源照射下的蠶繭尾部圖像來判斷蠶繭性別。KAMTOSNGDEE等[5]則采用模式匹配的方法處理蠶繭尾部圖像實現(xiàn)蠶繭雌雄鑒定。甘勇等[6]和周志宇等[7]通過圖像分析和處理、基于機器視覺技術的方法進行了單個蠶繭表面積的測量,實現(xiàn)了蠶繭質(zhì)量無損智能檢測。陳浩等[8]在多光源條件下,用高拍儀拍攝蠶繭圖像,提出了利用圖像處理實現(xiàn)單個蠶繭表面污斑面積自動檢測的方法。宋亞杰等[9]利用數(shù)學形態(tài)學方法實現(xiàn)了單個蠶繭蠶型判斷。陶丹等[10-11]提出了圖像處理過程中基于解模糊算法進行蠶蛹圖像恢復。張琦[12]和喬樂領[13]探討了基于圖像處理的蠶繭自動檢測計數(shù)系統(tǒng),實現(xiàn)了對方格蔟中采出蠶繭的自動計數(shù)。
綜上所述,目前采用圖像處理的方法可以實現(xiàn)蠶繭的雌雄鑒別、蠶繭表面積測量、繭型判斷和蠶繭的自動計數(shù)及檢測等功能,為蠶桑產(chǎn)業(yè)的自動化提供了有益的借鑒,但并沒見對整張方格蔟蠶繭進行黃斑繭檢測和自動剔除的研究文獻。
針對上述問題,本文使用基于模糊C均值聚類及HSV模型的黃斑繭檢測算法,快速分割整張方格蔟蠶繭,同時完成黃斑繭的檢測,并使用基于機器視覺的直角坐標式方格蔟自動采繭機對黃斑繭進行檢測剔除試驗。
方格蔟由山東農(nóng)業(yè)大學馬莊蠶桑實驗站提供,規(guī)格為540 mm×390 mm,采用MicroVision公司的MV-DC500型工業(yè)相機,圖像分辨率為640像素×480像素。用于圖像處理的上位機為Intel Core 2 Duo 2.93 Hz CPU,4 GB RAM,Windows XP操作系統(tǒng)的計算機。圖像處理軟件為OpenCV 3.2機器視覺庫。將方格蔟水平固定,兩臺相機分別設置在方格蔟的上、下方,且均正對方格蔟中心。在室內(nèi)自然光下采集圖像,方格蔟上方相機采集圖像即為方格蔟正面原始圖像,如圖1a所示。方格蔟下方相機采集圖像為方格蔟反面原始圖像,如圖1b所示。為了使同一蠶繭在正反兩面圖像中的位置相同,將方格蔟下方相機采集的圖像做豎直鏡像,即為方格蔟反面原始圖像,如圖1c所示。豎直鏡像后,同一蠶繭在正反兩面圖像中的位置一一對應。
黃斑繭檢測及剔除試驗裝置采用基于機器視覺的直角坐標式方格蔟自動采繭機,主要由X軸導軌、Y軸導軌、電磁采摘器、步進電動機、工業(yè)相機、上位機及STM32嵌入式控制系統(tǒng)等組成,如圖2所示。

圖2 直角坐標式方格蔟自動采繭機結構簡圖Fig.2 Schematic of Cartesian coordinate automatic cocoon harvestor1.機架 2.工作臺 3.X軸導軌 4.X軸步進電動機 5.傳動軸6.上方工業(yè)相機 7.Y軸導軌 8.Y軸步進電動機 9.電磁采摘器 10.蠶繭方格蔟 11.方格蔟夾持裝置 12.下方工業(yè)相機
X軸導軌為2個由傳動軸連接的同步導軌,長1 m,Y軸導軌帶有電磁采摘器,長1 m,在X軸導軌上運動,同步導軌導程為72 mm。步進電動機為57型步進電動機,步距角1.8°,扭矩2.8 N·m,用于帶動導軌運動,實現(xiàn)電磁采摘器定位。電磁采摘器由1個行程60 mm、單次往返時間0.5 s的電磁鐵和1個采繭頭組成,用于剔除檢測的黃斑繭。
上位機控制工業(yè)相機采集方格蔟圖像,采用基于模糊C均值聚類及顏色直方圖檢測算法進行黃斑繭檢測和視覺測量定位,計算黃斑繭的中心點坐標,通過RS232串口將黃斑繭的中心點坐標傳輸給STM32控制器。STM32控制X軸、Y軸步進電動機將電磁采摘器定位到黃斑繭位置,控制電磁采摘器接通電源,實現(xiàn)電磁采摘器對黃斑繭的定位剔除,然后斷開電磁采摘器電源,釋放電磁采摘器準備下一個黃斑繭的剔除,直到將方格蔟中黃斑繭剔除完畢,結束工作。其工作流程圖如圖3所示。

圖3 直角坐標式自動采繭機工作流程圖Fig.3 Flow chart of Cartesian coordinate automatic cocoon harvestor
因方格蔟中存在繭衣,繭衣較厚的區(qū)域使用傳統(tǒng)的Otsu閾值分割算法[14],易造成蠶繭黏連,無法完整地分割蠶繭,圖4為對圖1a使用Otsu算法分割后的二值圖像。從圖4紅色標記處可以看出,繭衣較厚處的蠶繭存在黏連,Otsu算法不能有效消除繭衣的影響。

圖4 Otsu算法分割結果Fig.4 Result of Otsu segment algorithm
為解決繭衣較厚、蠶繭不易分割及黃斑繭檢測剔除效率低的問題,本文采用基于FCM和HSV模型的黃斑繭檢測算法,其算法步驟為:
(1)將工業(yè)相機采集的方格蔟正面圖像作為原始圖像I0。
(2)對方格蔟原始圖像I0進行灰度化,得到灰度圖I1。
(3)對灰度圖I1采用FCM算法進行聚類,得到聚類后的圖像F0。
(4)對聚類后的圖像F0進行銳化,得到銳化圖像L1。
(5)對灰度圖I1使用Otsu算法進行二值化,得到二值化圖像I2。
(6)將L1與I1掩膜,并對掩膜后的圖像進行孔洞填充,得到去除方格蔟只保留蠶繭的二值圖像B0。
(7)將二值圖像B0與方格蔟原始圖像I0做掩膜,得到單個蠶繭的彩色圖像。
(8)對單個蠶繭的彩色圖像建立HSV空間的累積顏色直方圖,根據(jù)顏色直方圖判斷蠶繭是否為黃斑繭。
(9)若蠶繭為黃斑繭,保存當前正在檢測的蠶繭正面二值圖像連通域中心坐標作為黃斑繭坐標,開始下一個蠶繭的污染判斷;若由正面彩色圖像判斷蠶繭不是黃斑繭,則將工業(yè)相機采集到的方格蔟反面彩色圖像作為原始圖像I0,從步驟(2)開始重復執(zhí)行。
模糊C均值聚類通過模糊理論對重要數(shù)據(jù)進行分析和建模,獲得對樣本類屬的不確定描述[15]。
FCM算法可以把n個向量xi(i=1,2,…,n)分為c個模糊類別,并求出每類的聚類中心,使得非相似性指標的目標函數(shù)達到最小。
FCM目標函數(shù)[16]為
(1)
式中U——隸屬度均值
uik——介于0~1之間的值
k——樣本數(shù)據(jù)序號
ci——模糊類別i的聚類中心
dik——第i類模糊聚類中心與第k個樣本數(shù)據(jù)點之間的歐幾里得距離
m——權重系數(shù),取值為(1,∞)
對圖1a的灰度圖使用FCM進行聚類,聚類圖像將灰度圖分成了4種不同的顏色,分別為黑色、灰色、灰白色和白色。蠶繭區(qū)域為白色,繭衣則為灰白色,實現(xiàn)了蠶繭與繭衣的分割,如圖5所示。

圖5 FCM聚類分割Fig.5 FCM clustering segmentation
為將蠶繭完整的分割出來,對聚類后的圖像進行銳化、閾值分割和掩膜處理。用拉普拉斯算子對聚類后的圖像進行銳化,銳化后的圖像如圖6a所示。圖6a中,紅色標記處為存在繭衣的區(qū)域,繭衣區(qū)域銳化后的放大圖像如圖6b所示,蠶繭、繭衣及方格蔟均保留了輪廓。將銳化后的圖像與圖4所示的二值圖像進行掩膜,掩膜后的圖像繭衣與方格蔟的邊框被去除,但完整保留了蠶繭輪廓,繭衣區(qū)域掩膜后如圖6c所示。對整張方格蔟進行掩膜,實現(xiàn)蠶繭分割,如圖6d所示。

圖6 蠶繭輪廓提取Fig.6 Contour extraction of cocoon

圖7 蠶繭形狀還原Fig.7 Shape reduction of cocoon
為保證掩膜分割后的蠶繭形狀完好,對圖6d中的蠶繭輪廓進行區(qū)域填充,如圖7a所示。圖7a中存在較小的椒鹽噪點,對填充后的圖像進行開運算,去除噪點,如圖7b所示。把蠶繭圖像近似為橢圓,對圖7b的蠶繭連通域分別進行中心點提取,測量蠶繭兩個半軸的長度,并計算蠶繭的表面積A。把第n個蠶繭的表面積記為An,單位cm2。
累積顏色直方圖表示圖像中每一種顏色與其出現(xiàn)頻率間的統(tǒng)計關系[17],頻率計算公式為
Pi=ni/N
(2)
式中Pi——第i個顏色子空間出現(xiàn)的頻率
ni——第i個顏色子空間的像素數(shù)
N——圖像的總像素數(shù)
HSV顏色空間包括3個要素,其中,H分量代表色調(diào),S分量代表飽和度,V分量代表亮度[18]。作為一種面向視覺感知的顏色模型,HSV色彩空間比RGB色彩空間更符合人的視覺特性[19]。因此,選擇在HSV顏色空間建立累積顏色直方圖。顏色直方圖中將H分量非等間隔量化為16級,表示為Hm(m=1,2,…,16)。S分量非等間隔量化為4級[20],表示為Sn(n=1,2,3,4)。其中H3、H4和H5分量區(qū)間代表黃色和綠色,S2的歸一化量化區(qū)間為[0.15, 0.4],V分量為亮度分量,對顏色分辨無明顯影響,故不予考慮。正常蠶繭如圖8a所示,正常蠶繭的累積顏色直方圖如圖8b所示,根據(jù)GSBW40001選擇樣本黃斑繭,如圖8c所示,其累積顏色直方圖如圖8d所示。

圖8 蠶繭累積顏色直方圖Fig.8 Accumulative color histograms
設某幅分辨率為M像素×N像素的圖像,其像素總數(shù)為Y0,Y0=M×N,圖像中的像素點為pl(I,J)(1≤I≤M,1≤J≤N)。

對比圖8b和圖8d,正常蠶繭的Hm-S2直方圖在H3、H4、H5的量化占比均小于0.1,且波動較大,黃斑繭的Hm-S2直方圖在H3、H4、H5量化占比均超過0.1,且變化平緩。同時,黃斑繭污斑顏色大都表現(xiàn)為黃色和淺綠色,因此可將Hm-S2直方圖在H3、H4、H5的頻率之和與黃斑顏色閾值T的大小關系作為判定蠶繭是否為黃斑繭的標準。
在GB/T 9111—2015《桑蠶干繭試驗方法》中規(guī)定,黃斑污染總面積超過0.5 cm2的蠶繭為黃斑繭,則判斷某個蠶繭為黃斑繭的閾值T為
(3)
式中A——蠶繭表面積,cm2
判斷蠶繭為黃斑繭方法為
(4)
黃斑繭檢測的步驟為:
(1)對正面二值圖像進行連通域標記,按標記順序計算各連通域的外接矩形,同時提取外接矩形在蠶繭正面原始圖像和正面二值圖像中的對應區(qū)域,二者做掩模運算后得到單個蠶繭的正面彩色圖像,把蠶繭近似為橢圓,外接矩形的長、寬為蠶繭的長軸和短軸,進而計算每個蠶繭的表面積。
(2)對單個蠶繭的正面彩色圖像建立累積顏色直方圖,并將Hm-S2直方圖在H3、H4、H5的量化占比之和作為黃斑顏色分量占比。
(3)若某個蠶繭黃斑顏色占比超過閾值T,則直接判為黃斑繭,保存當前正在檢測的蠶繭正面二值圖像連通域中心坐標作為黃斑繭坐標,開始下一個蠶繭的污染判斷;若蠶繭正面彩色圖像的黃斑顏色占比未超過閾值,則提取外接矩形在蠶繭反面原始圖像和蠶繭正面二值圖像中的對應區(qū)域,二者做掩模運算后得到單個蠶繭的反面彩色圖像。對反面彩色圖像建立累積顏色直方圖。若黃斑顏色分量占比不小于閾值,則判為黃斑繭,保存當前正在檢測的蠶繭正面二值圖像連通域中心坐標作為黃斑繭坐標;若黃斑顏色分量的占比小于閾值,則判為正常蠶繭,開始下一個蠶繭的污染判斷。
方格蔟正面和反面的黃斑繭整體檢測結果在正面呈現(xiàn),如圖9所示,能夠較準確地檢測出方格蔟中的黃斑繭。對單張方格蔟圖像進行分割和黃斑繭檢測的平均時長約為1.271 s。

圖9 黃斑繭整體檢測結果(正面)Fig.9 Result of stained cocoon detection
繭衣上附有少量桑葉梗或碎桑葉,如圖10紅色標記1和2處,會導致正常蠶繭誤判為黃斑繭,本文算法可以在去除繭衣時,將桑葉梗或碎桑葉的影響一并去除,降低黃斑繭的誤判率。

圖10 繭衣附有桑葉梗的方格蔟圖像Fig.10 Out floss image of cocoon with leaf stalks

圖11 未識別蠶繭聚類放大圖Fig.11 Enlarge diagram of unidentified cocoon
經(jīng)過試驗發(fā)現(xiàn),當黃斑點位于蠶繭邊緣時,與圖像背景融合,F(xiàn)CM處理過程中,黃斑部分被當作背景,如圖11所示,因此本文算法對黃斑部分位于邊緣處的蠶繭檢測效果不好,圖12中紅色標記處和圖10中紅色標記3處是未能正確檢測的黃斑繭。

圖12 未能檢測到的黃斑繭Fig.12 Stained cocoon without detection
在山東農(nóng)業(yè)大學馬莊蠶桑實驗站,使用基于機器視覺的直角坐標式方格蔟自動采繭機,對方格蔟進行污黃斑繭檢測、視覺測量定位和黃斑繭剔除驗證試驗。基于機器視覺的直角坐標式方格蔟自動采繭機樣機如圖13所示。

圖13 基于機器視覺的直角坐標式方格蔟自動采繭機樣機Fig.13 Mock-up of Cartesian coordinate automatic cocoon harvestor based on machine vision
檢測正確率[21]是評估信息處理領域相關技術的經(jīng)典評價指標。檢測正確率說明系統(tǒng)排除干擾、減少噪聲的能力,將其運用到黃斑繭檢測性能評價中,其定義為
(5)
式中p——檢測正確率,%
Nc——檢測正確的黃斑繭個數(shù)
Nt——方格蔟黃斑繭總個數(shù)
機器視覺系統(tǒng)涉及世界坐標系、攝像機坐標系和圖像坐標系。方格蔟固定在工作臺上,方格蔟豎直方向固定不變,因此方格蔟蠶繭坐標只由水平面坐標決定。通過攝像機標定參數(shù),可以把攝像機拍攝的方格蔟蠶繭圖像坐標轉(zhuǎn)換為世界坐標系下的標定坐標[23],實現(xiàn)方格蔟蠶繭物理空間坐標的視覺測量。
設第k個黃斑繭中心點圖像坐標為Cck(uk,vk),世界坐標原點所對應的圖像坐標為Oc(u0,v0),則第k個黃斑繭的標定坐標Cwk(xwk,ywk)為
(6)
采用特征點的世界坐標與標定坐標之間的歐氏距離作為標定偏差D。則標定偏差D為
(7)
式中 (Xi,Yi)——世界坐標
(xi,yi)——標定坐標
圖像坐標系以圖像左上角第1個像素點作為原點,世界坐標系則以圖像左上角第1個蠶繭的中心點為原點,方格蔟中M個黃斑繭中心點作為已知點,使用游標卡尺分別測出M個已知蠶繭中心點的世界坐標(Xi,Yi)(i=1,2,…,M)。已確定M個蠶繭中心點在圖像上的坐標(ui,vi),通過式(6)分別計算得到M個已知點的標定坐標(xi,yi),通過式(7)分別計算M個蠶繭中心點標定坐標與世界坐標的標定偏差,將M個標定偏差的最大值作為該方格蔟的定位偏差。
隨機選取10張方格蔟,每張方格蔟可營繭169個,共計1 690個蠶繭左右,使用基于機器視覺的直角坐標式方格蔟自動采繭機,進行黃斑繭檢測、視覺測量定位和黃斑繭剔除試驗,試驗效果如圖14所示。

圖14 黃斑繭剔除效果圖Fig.14 Effect diagram of removing
對圖9中檢測到的黃斑繭進行剔除,剔除效果如圖14b所示,紅色標記處的黃斑繭已被成功剔除。對試驗數(shù)據(jù)進行整理,結果如表1所示。

表1 蠶繭檢測正確率及定位偏差Tab.1 Correct ratio of cocoon detection and deviation
由表1可得,隨機選取的10張方格蔟中黃斑繭平均檢測正確率81.2%,能較準確檢測出方格蔟中的黃斑繭,最大定位偏差3.0 mm,滿足黃斑繭剔除定位精度的要求。
(1)使用基于模糊C均值聚類及HSV模型的黃斑繭檢測算法,對方格蔟中的黃斑繭進行檢測。其中,模糊C均值聚類算法消除蠶繭繭衣及方格蔟邊框?qū)πQ繭分割的影響,通過掩膜對單個蠶繭進行提取,并利用HSV顏色直方圖中黃斑顏色分量占比是否超過黃斑繭檢測閾值來檢測蠶繭是否為黃斑繭。試驗結果表明,方格蔟黃斑繭平均檢測正確率為81.2%,對單張方格蔟圖像進行分割和黃斑繭檢測的平均時長為1.271 s。
(2)本文算法對方格蔟上附有的桑葉梗或碎桑葉具有較好的處理效果,可以避免因桑葉梗或碎桑葉的遮擋而造成黃斑繭的誤判,但該算法對黃斑位于邊緣處的蠶繭檢測效果不好。
(3)使用直角坐標式方格蔟自動采繭機對檢測到的黃斑繭進行定位剔除試驗,黃斑繭定位準確,最大定位偏差為3.0 mm,樣機運行平穩(wěn),剔除效果良好。