謝柳輝,馮曉蕾,周 曉,王進舉,李新成
(1.廣東省特種設(shè)備檢測研究院東莞檢測院,廣東 東莞 523000;2.武漢理工大學(xué)機電工程學(xué)院,武漢 430000)
隨著相機成像技術(shù)的快速發(fā)展,機器視覺檢測速度快、信息量大、檢測距離范圍廣的優(yōu)勢也越來越明顯,目前在工業(yè)上各個領(lǐng)域的應(yīng)用越來越廣泛。在視覺檢測算法的設(shè)計當中,圖像分割算法一直是一個熱門的話題,對灰度圖像進行閾值分割也是一種最常用的圖像分割技術(shù)。在很多場景下,應(yīng)用一個簡單的閾值就能夠?qū)D像的背景和目標很好地分割出來,因此該方法也一直在具體應(yīng)用被優(yōu)化與改進。
本文使用一種自制的圓形光源,通過在圓形光源表面粘貼亮暗交替的等間距圓環(huán)掩膜,制成一種特殊的圓形靶標。利用相機系統(tǒng)進行成像時,由于光在相機鏡頭中存在反射和反射,會造成入射光的方向存在差異,這就產(chǎn)生了光暈現(xiàn)象[1],由于光暈現(xiàn)象的存在靶標中的亮環(huán)會比暗環(huán)的寬度要寬。如果利用傳統(tǒng)的閾值分割理論計算出來的閾值進行圖像分割便不能反應(yīng)靶標的實際物理間距,因此提出一種能夠去除光暈現(xiàn)象的視覺分割算法。按照特定的間隔改變光圈的大小和調(diào)整曝光時間進行多次實驗,運用大津法計算出來的閾值和本文提出的算法計算出來的閾值分別進行圖像分割,得到一系列圓形光環(huán)的半徑像素尺寸和標準半徑像素尺寸的水平誤差、垂直誤差、標準差數(shù)據(jù)。對數(shù)據(jù)進行分析比較之后,結(jié)果表明該算法對于去除光暈現(xiàn)象的效果顯著以及具有較強的魯棒性。
為了使實驗系統(tǒng)具有更強的環(huán)境適應(yīng)能力,選擇可靠、恰當?shù)墓庠矗梢允沟帽尘昂湍繕擞行У胤蛛x出來,從而為后面的程序處理提供良好質(zhì)量的輸入原始圖像。在工業(yè)上的機器視覺系統(tǒng)的設(shè)計中,常用的光源可以大致分為兩大類:自然光、人造光源。其中人造光源具有可控性好,光波頻率相對集中等特點,能夠很大程度上保障視覺測量的準確度和可靠性。LED(發(fā)光二極管)光源具有響應(yīng)速度快、使用壽命長、單色性好、性價比高等多方面的優(yōu)點,并且一個完整的LED光源可以通過單個小型LED按照具體的應(yīng)用場合進行組合設(shè)計,靈活性很好,因此選用LED燈組合成圓形面光源作為本系統(tǒng)的實際使用光源。
為了得到等間距的圓形光環(huán),需要在圓形面光源上面布置亮暗交替的等間距圓環(huán)掩膜,本文利用菲林片打印的等間隔的靶標黏貼在圓形面光源表面制成一種特殊的圓形靶標,具體設(shè)計尺寸如圖1所示。其中靶標明暗交替的間隔相等,即保證a=b。
圖1 圓形靶標
圖像采集部分主要由相機、鏡頭以及合適的固定架組成。在進行相機和鏡頭的選型時,需要根據(jù)使用條件計算出合適的分辨率和視場,根據(jù)具體參數(shù)進行硬件選型。本文選用在響應(yīng)速度、功耗、性價比等方面具有優(yōu)勢的CMOS圖像傳感器作為圖像采集單元[2-3]。由于系統(tǒng)成像范圍較大,因此采用變焦鏡頭與本系統(tǒng)選用的相機進行配合,在距離變化時可以適當調(diào)整焦距以得到更加清晰的圖像。
在采集圖像時,固定相機和圓形靶標的相對位置后,改變曝光時間和光圈大小進行拍照保存。光圈變化為1~6,一共改變6次,其中每次調(diào)整曝光時間為100~800間隔100進行調(diào)整,得到48張圖像用于后續(xù)的處理和對比。
本文視覺檢測的目標尺寸為靶標最外圈白色光環(huán)的半徑,首先通過傳統(tǒng)的分割算法得到一組二值圖像,并且進行半徑的計算并記錄。然后利用本文提出的消除光暈現(xiàn)象的算法進行圖像分割得到另一組二值化圖像,再進行相同的半徑計算。將兩組二值化圖像計算得到的直徑結(jié)果和真實值進行對比得到誤差分布。真實的像素半徑可以根據(jù)靶標最外圈光環(huán)的實際物理大小以及靶標與相機的相對位置和姿勢來計算得到。
由于光源的亮度很高,曝光時間相對較低,在經(jīng)過圖像灰度化之后,可以去除一部分背景環(huán)境的影響,進一步定位到靶標所在圖像坐標系的位置。為了方便后續(xù)圖像處理中對于半徑的提取,需要進行閾值分割,得到更簡單的二值化圖像。由于灰度圖像的范圍是0~255,選擇一個圖像合適的閾值能夠最大程度保留圖像的重要信息從而保證檢測精度。圖像二值化過程如式(1)所示,首先需要確定一個閾值,逐個像素掃描整幅圖像,如果像素值大于閾值則置為最大值255,如果小于閾值則置為0。
目前使用較多的閾值提取方法大多都基于最大類間方差法,又叫大津法簡稱,OTSU。這是一種自適應(yīng)閾值分割算法,根據(jù)灰度圖的特征,將灰度圖像分為目標和背景兩種方法,將背景和目標進行類間方差計算,如果類間方差越大則說明圖像分割越好。本文的算法將主要與大津法計算結(jié)果進行對比分析。
由于光暈現(xiàn)象的存在,使用大津法確定的閾值進行圖像分割之后發(fā)現(xiàn),二值化圖中物理間隔相等的光環(huán)在成像之后亮環(huán)要比暗環(huán)寬,這一結(jié)果對于后續(xù)目標檢測的影響是很大的,因此本文提出一種自適應(yīng)的閾值提取算法,能夠很好地去除光暈現(xiàn)象的影響。
該算法根據(jù)靶標最外圈兩個環(huán)寬度是相等的這一特征進行閾值的提取。具體步驟如下。
(1)為了提高檢測的精度,將原始圖像放大10倍進行插值擴展到亞像素級別[4-8],并且進行高斯模糊。
(2)將閾值從0~255依次變化,得到對應(yīng)的二值化圖像,檢測出最外圈亮環(huán)和暗環(huán)的寬度,當兩者差距最小時,對應(yīng)的閾值即認為是最好的分割閾值。閾值變化與寬度對應(yīng)關(guān)系如圖2所示。
圖2 閾值計算
使用該算法對存在光暈現(xiàn)象的圖像進行閾值提取之后,利用該閾值進行二值化分割,如圖3所示。圖3(a)為圖像放大模糊之后的灰度圖像,可以很明顯地看出亮環(huán)寬度g2>g1、g4>g3,經(jīng)過本文方法提取閾值之后進行二值化圖像如圖3(b)所示,此時h1=h2、h3=h4。
圖3 閾值分割結(jié)果
在獲得二值化圖像的ROI之后,執(zhí)行Canny邊緣檢測,可以檢測到所有輪廓,并且是亞像素級的邊緣檢測結(jié)果。通過該操作可以獲得所有橢圓亞像素邊緣點集,然后使用最小二乘算法獲得橢圓方程進一步計算出最外圈半徑。
為了驗證所提出的自定義閾值算法在不同光照條件下的魯棒性,采集了一系列具有不同光圈和曝光時間條件下的圖像。計算出1~6的光圈變化下最外層亮環(huán)的半徑,與大津法計算出來的閾值結(jié)果比較,如表1所示。在去除光暈處理的每個光圈下,不同曝光時間之間的平均誤差較小。隨著曝光時間的增加,光暈現(xiàn)象也會更加嚴重,對大津法閾值處理之后進一步得出的半徑結(jié)果影響更大,相比之下本文提出的方法誤差相對很小,且較為穩(wěn)定。
表1 結(jié)果對比
本文給出了一種消除光暈現(xiàn)象影響的圖像閾值提取方法,經(jīng)過實驗測試和對比,證明了該算法的魯棒性強,能夠適用于多種光照環(huán)境。將該方法處理得到的二值化圖像進一步進行靶標最外圈亮環(huán)半徑尺寸的檢測,得出一系列的測試數(shù)據(jù)。相比于傳統(tǒng)的大津法提取的閾值分割,該方法能夠極大程度上消除光暈現(xiàn)象對視覺尺寸檢測的影響,在工業(yè)檢測上具有很好的應(yīng)用價值。