(一)技術領域
本發(fā)明涉及方格蔟污染蠶繭檢測裝置及方法,具體涉及一種基于圖像處理的方格蔟污染蠶繭檢測方法。
(二)
背景技術:
蠶繭作為繅絲工業(yè)的原料,其表面的污染會對生絲的色澤產生影響,為了使產品色澤統(tǒng)一、提高產品質量,需要在繅絲前剔除有表面污染的蠶繭。傳統(tǒng)選繭主要靠人工,但是檢測速度緩慢的同時選繭的準確性易受人員技術水平、精神狀態(tài)等主觀因素影響,存在勞動強度大、誤選率高等缺點。隨著計算機圖像處理技術的快速發(fā)展,計算機圖像處理技術也開始應用到蠶繭質量檢測領域。現(xiàn)有基于圖像處理的蠶繭質量檢測裝置往往一次只采集一個蠶繭的圖像,且需工人手工放置蠶繭,效率低下。且處理范圍僅限于性別鑒定、大小判斷、自動計數(shù)等領域,而在污染蠶繭的檢測方面存在空白,極大地阻礙了蠶繭的深加工。因而需要設計一套可以快速篩選方格蔟污染蠶繭的設備及方法,以滿足市場的需要。
(三)
技術實現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術之不足,提供一種基于圖像處理的方格蔟污染蠶繭檢測方法。
一種基于圖像處理的方格蔟污染蠶繭檢測方法,步驟如下:
1.采集原始圖像。
將方格蔟水平放置,將兩個攝像頭分別設置在方格蔟的上下兩面,且均正對方格蔟中心,保證采集到的正面圖像和反面圖像區(qū)域相同且方格蔟在圖像中的占比為75%-80%;
方格蔟上方攝像頭采集的圖片即為蠶繭正面原始圖像;
方格蔟下方攝像頭采集的圖片水平翻轉后即為蠶繭反面原始圖像。水平翻轉可使同一個蠶繭在正反兩面圖像中所處的位置相同,便于后續(xù)處理。
對步驟1)得到的兩個原始圖像同時處理,分別得到兩個原始圖像的二值化圖像;
1.1對兩個原始圖像分別依次執(zhí)行開運算、轉化為灰度圖像grayimg、提取梯度圖,將得到的梯度圖表示為pimg;
1.2標記前景和背景;
利用ostu法確定最佳閾值對步驟2.1得到的灰度圖像grayimg進行二值化,超過閾值的像素點置為255,低于閾值的像素點像素值置為0,得到二值圖像bwimg。再用圓形結構元素對二值圖像bwimg進行腐蝕后得到二值圖像ebwimg,二值圖像ebwimg中像素值為255的點組成的連通分量為前景標記im。
采用ostu法確定最佳閾值的過程如下:
通過對灰度圖像grayimg進行按行按列、從左到右、從上到下的掃描,找出圖像中的最大像素值和最小像素值,用最大像素值與最小像素值加和的一半作為初始閾值把圖像分為兩類,然后對整幅圖像進行掃描,同時用迭代法求得動態(tài)閾值,將小于初始閾值的所有像素點的像素值加和求平均后得到第一參考值;將大于等于初始閾值的所有像素點的像素值加和求平均后得到第二參考值;第一參考值和第二參考值的平均值作為調整后的動態(tài)閾值,即最佳閾值。
對二值圖像bwimg使用分水嶺算法得到分水線,將這些分水線組成的連通分量定義為背景標記em。
1.3采用數(shù)學形態(tài)學中的極小值標定技術修改梯度圖像pimg,把前景標記im、背景標記em強制作為梯度圖像的局部極小值后,再屏蔽掉pimg中的所有局部極小值,得到修改后的梯度圖像pimg。
1.4對修改后的梯度圖像pimg使用經典分水嶺變換,按從左至右、從上至下的順序將修改后的梯度圖像pimg轉換為標記圖像。標記數(shù)字從1開始順序標記(即順序標記為2、3、4、5、…)。由于拍照時已確保蠶繭都在圖片中央,所以修改后的梯度圖像pimg最左上角像素點屬于背景,故標記圖像中標號為1的部分即為背景。
1.5將標記圖像中標記為1部分的像素點的像素值置為0,其它像素點的像素值均置為255;分別得到蠶繭的正反面二值圖像。
2.檢測蠶繭污染情況,計算出污染蠶繭坐標并在蠶繭正面原始圖像中標注;
2.1用4連通標記法對步驟2)得到的蠶繭正反面二值圖像分別進行連通域標記。標記數(shù)字從1開始順序標記(即順序標記為2、3、4、5、…)。一張圖片中標記相同的像素點為一個連通域,每一個連通域對應一個蠶繭;
2.1.1按照從上到下,從左到右的順序遍歷步驟2)得到的蠶繭正反面二值圖像中的所有像素點,將像素值為255的像素點作為目標像素點。若當前像素點不是目標像素點,則不做標記;若當前像素點為目標像素點,則掃描當前像素點左邊和上面的2個4鄰域像素點:
若二者均不是目標像素點,則采用新標記對當前像素點進行標記;
若二者中有一個為目標像素點,則采用二者中目標像素點的標記對當前像素點進行標記;
若二者都為目標像素點,且當二者的標記相同時,采用該標記對當前像素點進行標記;但當二者的標記不同時,采用二者中的任意一個的標記對當前像素點進行標記,并將二者的標記作為一個等價對,等價對中的兩個標記視為等價;
2.1.2比對所有的等價對中的標記,將所有等價的標記歸為一個等價組,遍歷蠶繭正反面二值圖像中所有的像素點,針對每一個等價組,采用相同的標記對被該等價組標記的目標像素點重新進行標記。
2.2按步驟3.1)所述連通域標記數(shù)字順序,逐個對連通域進行蠶繭污染檢測,獲取方格蔟中所有污染蠶繭的坐標;
2.2.1計算蠶繭正面二值圖像中連通域的外接矩形,并將外接矩形在蠶繭正面原始圖像和蠶繭正面二值圖像中的對應區(qū)域提取出來,二者做掩模運算后得到單個蠶繭的正面彩色圖像;
2.2.2對步驟3.2.1得到的單個蠶繭的正面彩色圖像建立顏色直方圖,設定閾值為0.45-0.6:
若黃色分量的占比超過閾值,則直接判為污染繭,保存當前正在檢測的蠶繭正面二值圖像連通域中心坐標作為污染蠶繭坐標;若黃色分量的占比未超過閾值,則需檢測蠶繭反面的污染情況。
蠶繭反面污染情況檢測方法為:
遍歷步驟3.1得到的反面二值圖像中的所有連通域,找出包含當前正在檢測的蠶繭正面二值圖像連通域中心坐標的連通域a。
計算連通域a的外接矩形,并將它在蠶繭反面原始圖像和蠶繭反面二值圖像中的對應區(qū)域提取出來,二者做掩模運算后得到同一個蠶繭的反面彩色圖像。
求取蠶繭反面彩色圖像基于hsv空間的顏色直方圖,若黃色分量的占比超過閾值,則判為污染繭,保存當前連通域中心坐標作為污染蠶繭坐標;若黃色分量的占比未超過閾值,則判為無污染繭;
顏色直方圖中h分量平均量化成16級,s分量平均量化成4級,v分量平均量化成4級,故顏色直方圖的橫坐標取值范圍為0-64(16*4)??v坐標為顏色分量所占比例,取值范圍為0-1。統(tǒng)計顏色直方圖橫坐標中9-16對應的縱坐標值之和作為黃色分量占比。設定黃色分量占比閾值,閾值范圍為0.45-0.6。
3.3以步驟1)中得到的蠶繭正面原始圖像中污染繭坐標為中心,顯示紅色字符“*”,使處理結果可視化。
與現(xiàn)有技術相比,本發(fā)明的有益效果是:
1.本發(fā)明結合數(shù)字圖像處理技術,使蠶繭的表面污染的篩選也可以通過機器來完成,為智能化采繭技術提供數(shù)據支持。
2.本發(fā)明處理對象為整張方格蔟,一次圖像采集即可完成蔟內所有蠶繭的污染判斷,克服了現(xiàn)有基于圖像處理的蠶繭質量檢測裝置中一次只采集一個蠶繭的圖像且需工人手工放置蠶繭造成的效率低下的問題。
(四)具體實施方式
本發(fā)明中所使用的處理器、攝像頭均可采用現(xiàn)有設備。
一種基于圖像處理的方格蔟污染蠶繭檢測方法,步驟如下:
1.采集原始圖像。
將方格蔟水平放置,將兩個攝像頭分別設置在方格蔟的上下兩面,且均正對方格蔟中心,保證采集到的正面圖像和反面圖像區(qū)域相同且方格蔟在圖像中的占比為75%-80%;
方格蔟上方攝像頭采集的圖片即為蠶繭正面原始圖像;
方格蔟下方攝像頭采集的圖片水平翻轉后即為蠶繭反面原始圖像。水平翻轉可使同一個蠶繭在兩幅圖像中所處的位置相同,便于后續(xù)處理。將采集得到的原始圖像利用現(xiàn)有處理器如計算機進行圖像處理。
2.對步驟1)得到的兩個原始圖像同時處理,分別得到兩個原始圖像的二值化圖像;
2.1對兩個原始圖像分別依次執(zhí)行開運算、轉化為灰度圖像grayimg、提取梯度圖,將得到的梯度圖表示為pimg;
2.2標記前景和背景;
利用ostu法確定最佳閾值對步驟2.1得到的灰度圖像grayimg進行二值化,超過閾值的像素點置為255,低于閾值的像素點像素值置為0,得到二值圖像bwimg。再用圓形結構元素對二值圖像bwimg進行腐蝕后得到二值圖像ebwimg,二值圖像ebwimg中像素值為255的點組成的連通分量為前景標記im。
采用ostu法確定最佳閾值的過程如下:
通過對灰度圖像grayimg進行按行按列、從左到右、從上到下的掃描,找出圖像中的最大像素值和最小像素值,用最大像素值與最小像素值加和的一半作為初始閾值把圖像分為兩類,然后對整幅圖像進行掃描,同時用迭代法求得動態(tài)閾值,將小于初始閾值的所有像素點的像素值加和求平均后得到第一參考值;將大于等于初始閾值的所有像素點的像素值加和求平均后得到第二參考值;第一參考值和第二參考值的平均值作為調整后的動態(tài)閾值,即最佳閾值。
對二值圖像bwimg使用分水嶺算法得到分水線,將這些分水線組成的連通分量定義為背景標記em。
2.3采用數(shù)學形態(tài)學中的極小值標定技術修改梯度圖像pimg,把前景標記im、背景標記em強制作為梯度圖像的局部極小值后,再屏蔽掉pimg中的所有局部極小值,得到修改后的梯度圖像pimg。
2.4對修改后的梯度圖像pimg使用經典分水嶺變換,按從左至右、從上至下的順序將修改后的梯度圖像pimg轉換為標記圖像。標記數(shù)字從1開始順序標記(即順序標記為2、3、4、5、…)。由于拍照時已確保蠶繭都在圖片中央,所以修改后的梯度圖像pimg最左上角像素點屬于背景,故標記圖像中標號為1的部分即為背景。
2.5將標記圖像中標記為1部分的像素點的像素值置為0,其它像素點的像素值均置為255;分別得到蠶繭的正反面二值圖像。
3.檢測蠶繭污染情況,計算出污染蠶繭坐標并在蠶繭正面原始圖像中標注;
3.1用4連通標記法對步驟2)得到的蠶繭正反面二值圖像分別進行連通域標記。標記數(shù)字從1開始順序標記(即順序標記為2、3、4、5、…)。一張圖片中標記相同的像素點為一個連通域,每一個連通域對應一個蠶繭;
3.1.1按照從上到下,從左到右的順序遍歷步驟2)得到的蠶繭正反面二值圖像中的所有像素點,將像素值為255的像素點作為目標像素點。若當前像素點不是目標像素點,則不做標記;若當前像素點為目標像素點,則掃描當前像素點左邊和上面的2個4鄰域像素點:
若二者均不是目標像素點,則采用新標記對當前像素點進行標記;
若二者中有一個為目標像素點,則采用二者中目標像素點的標記對當前像素點進行標記;
若二者都為目標像素點,且當二者的標記相同時,采用該標記對當前像素點進行標記;但當二者的標記不同時,采用二者中的任意一個的標記對當前像素點進行標記,并將二者的標記作為一個等價對,等價對中的兩個標記視為等價;
3.1.2比對所有的等價對中的標記,將所有等價的標記歸為一個等價組,遍歷蠶繭正反面二值圖像中所有的像素點,針對每一個等價組,采用相同的標記對被該等價組標記的目標像素點重新進行標記。
3.2按步驟3.1)所述連通域標記數(shù)字順序,逐個對連通域進行蠶繭污染檢測,獲取方格蔟中所有污染蠶繭的坐標;
3.2.1計算蠶繭正面二值圖像中連通域的外接矩形,并將外接矩形在蠶繭正面原始圖像和蠶繭正面二值圖像中的對應區(qū)域提取出來,二者做掩模運算后得到單個蠶繭的正面彩色圖像;
3.2.2對步驟3.2.1得到的單個蠶繭的正面彩色圖像建立顏色直方圖,設定閾值為0.45-0.6。
若黃色分量的占比超過閾值(0.45-0.6),則直接判為污染繭,保存當前正在檢測的蠶繭正面二值圖像連通域中心坐標作為污染蠶繭坐標;若黃色分量的占比未超過閾值(0.45-0.6),則需檢測蠶繭反面的污染情況。
蠶繭反面污染情況檢測方法為:
遍歷步驟3.1得到的反面二值圖像中的所有連通域,找出包含當前正在檢測的蠶繭正面二值圖像連通域中心坐標的連通域a。
計算連通域a的外接矩形,并將它在蠶繭反面原始圖像和蠶繭反面二值圖像中的對應區(qū)域提取出來,二者做掩模運算后得到同一個蠶繭的反面彩色圖像。
求取蠶繭反面彩色圖像基于hsv空間的顏色直方圖,若黃色分量的占比超過閾值(0.45-0.6),則判為污染繭,保存當前連通域中心坐標作為污染蠶繭坐標;若黃色分量的占比未超過閾值(0.45-0.6),則判為無污染繭;
顏色直方圖中h分量平均量化成16級,s分量平均量化成4級,v分量平均量化成4級,故顏色直方圖的橫坐標取值范圍為0-64(16*4)。統(tǒng)計顏色直方圖橫坐標中9-16對應的縱坐標值之和作為黃色分量占比。
3.3以步驟1)中得到的蠶繭正面原始圖像中污染繭坐標為中心,顯示紅色字符“*”,使處理結果可視化。