張 斌, 李慧嫻, 劉 丹, 李峰宇, 宋文豪, 楊騰達(dá)
(鄭州大學(xué) 物理工程學(xué)院 河南 鄭州 450001)
機(jī)器視覺測(cè)量作為非接觸式測(cè)量方法之一[1],在測(cè)量過程中具有客觀性強(qiáng)、魯棒性好、重復(fù)性高、無損傷等優(yōu)點(diǎn),能夠滿足現(xiàn)代工業(yè)生產(chǎn)批量大、檢測(cè)任務(wù)重、檢測(cè)精度要求高的需求,因此在測(cè)量領(lǐng)域得到了廣泛的應(yīng)用[2].
目前,基于機(jī)器視覺的圓柱體尺寸檢測(cè)應(yīng)用研究非常廣泛.文獻(xiàn)[3]設(shè)計(jì)了一套基于機(jī)器視覺的西林瓶尺寸自動(dòng)檢測(cè)系統(tǒng);文獻(xiàn)[4]設(shè)計(jì)了一套軸承內(nèi)外圈尺寸檢測(cè)和分類系統(tǒng),以替代人工檢測(cè)分類;文獻(xiàn)[5]應(yīng)用機(jī)器視覺理論研究基于機(jī)器視覺的管孔類零件尺寸自動(dòng)測(cè)量系統(tǒng).在這些研究中都涉及圓柱端面的尺寸測(cè)量,但大多數(shù)測(cè)量方法只簡(jiǎn)單地應(yīng)用Canny算子或Sobel算子尋找端面邊界,并直接進(jìn)行圓擬合來進(jìn)行參數(shù)估算.這種方法對(duì)于端面圖像簡(jiǎn)單、正常的圓柱樣品非常有效,但對(duì)于端面存在缺損或端面圖像復(fù)雜從而使圓邊界提取不完整的圓柱,無法進(jìn)行精確尺寸測(cè)量.因此,本文針對(duì)端面存在缺損或端面圖像復(fù)雜的圓柱提出了一種新的測(cè)量方法,即通過查找邊界點(diǎn),眾數(shù)篩選邊界點(diǎn),Kasa算法圓擬合,最終完成對(duì)圓直徑的精確測(cè)量.實(shí)驗(yàn)結(jié)果表明,該方法適用性強(qiáng),不僅能夠精確測(cè)量具有正常端面的圓柱尺寸,同時(shí)對(duì)端面存在缺損的圓柱也能夠進(jìn)行精確檢測(cè),且測(cè)量結(jié)果達(dá)到微米量級(jí).
機(jī)器視覺測(cè)量系統(tǒng)[6]主要由圖像采集、圖像處理與分析、結(jié)果輸出三部分構(gòu)成.圖像采集設(shè)備通常包含光源、相機(jī)、鏡頭、圖像采集卡及計(jì)算機(jī)等,目的是獲取被測(cè)物體的光學(xué)圖像及特征信息,然后通過圖像處理算法對(duì)采集到的圖像進(jìn)行分析,獲取所需要的信息,并將處理結(jié)果顯示出來. 機(jī)器視覺測(cè)量系統(tǒng)的原理如圖1所示.
測(cè)量方案采用低角度環(huán)形光進(jìn)行照明,圖2給出了本項(xiàng)目中圓柱端面所需要的測(cè)量參數(shù),包括外圓直徑d1,第2層圓直徑d2和中心孔直徑d3.外圓和第2層圓之間存在一個(gè)倒角區(qū)域.
圖1 測(cè)量系統(tǒng)原理Fig.1 Measurement system principle
圖2 測(cè)量參數(shù)Fig.2 Measurement parameters
圖像采集過程中,由于受環(huán)境和硬件條件的限制,不可避免地會(huì)摻雜部分噪聲.因此,在進(jìn)行尺寸測(cè)量之前首先要對(duì)圖像進(jìn)行濾波.中值濾波作為一種平滑濾波手段,它能夠在降低噪聲的同時(shí)減小邊緣的模糊程度[7],本文選用中值濾波對(duì)圖像進(jìn)行平滑處理.
中值濾波可以表示為
(1)
式中:D為濾波窗口;{fij}代表圖像二維數(shù)據(jù)序列.圖像預(yù)處理過程如圖3所示,其中圖3(a)為原圖像,圖3(b)為中值濾波后圖像的效果圖.
圖3 圖像預(yù)處理過程Fig.3 Image pre-processing
為了對(duì)圓柱的尺寸進(jìn)行精確的測(cè)量,需要根據(jù)目標(biāo)對(duì)象在圖像中的大致位置建立感興趣區(qū)域來查找邊界點(diǎn). 首先對(duì)目標(biāo)對(duì)象在圖像中的位置進(jìn)行了粗略估算,過程如下:對(duì)預(yù)處理后的圖像進(jìn)行閾值分割,得到圖3(c)所示的目標(biāo)對(duì)象.由于中心孔區(qū)域?qū)χ行狞c(diǎn)坐標(biāo)的估計(jì)存在較大干擾,因此,對(duì)閾值分割后的圖像進(jìn)行孔填充,得到如圖3(d)所示的目標(biāo)區(qū)域,最后通過求圖3(d)中區(qū)域的重心得到目標(biāo)對(duì)象的中心坐標(biāo).
由于受圖像復(fù)雜背景的影響,使得計(jì)算出的重心坐標(biāo)只是一個(gè)粗略的估計(jì)值,不能夠作為圓參數(shù)測(cè)量的基準(zhǔn)值,但可以在此基礎(chǔ)上進(jìn)一步完成圓柱端面尺寸的精確測(cè)量.
尺寸測(cè)量的關(guān)鍵是查找邊界點(diǎn),邊界點(diǎn)查找示意圖如圖4所示.查找邊界點(diǎn)的具體過程如下:
1) 根據(jù)2.2中粗略估計(jì)得到的圓柱端面圖像的中心點(diǎn)坐標(biāo),建立測(cè)量目標(biāo)區(qū)域,即ROI,如圖4(a)所示.
2) 剖面圖如圖4(b)所示,獲取ROI內(nèi)垂直于剖面線方向每列像素點(diǎn)的灰度均值[8],圖4(d)中f1即為ROI內(nèi)沿剖面線方向的灰度值變化函數(shù)圖.
3) 求灰度值的一階導(dǎo)數(shù),并選取一階導(dǎo)數(shù)的局部極值點(diǎn)作為邊緣點(diǎn)的候選點(diǎn),圖4(d)中f2即為灰度值一階導(dǎo)數(shù)函數(shù)曲線圖.
4) 以目標(biāo)對(duì)象中心點(diǎn)的位置為固定點(diǎn),如圖4(c)所示,令ROI每隔2°進(jìn)行一次旋轉(zhuǎn),并重復(fù)2)、 3)直到旋轉(zhuǎn)180°,得到如圖4(e)所示的圓邊緣候選邊界點(diǎn).
圖4 邊界點(diǎn)查找示意圖Fig.4 Sketch of boundary points search
當(dāng)圓柱端面受損或端面圖像較復(fù)雜時(shí),直接采用邊界點(diǎn)進(jìn)行圓擬合,會(huì)對(duì)圓參數(shù)的估計(jì)產(chǎn)生錯(cuò)誤的影響.因此,在進(jìn)行圓擬合之前要對(duì)候選邊界點(diǎn)進(jìn)行一定的篩選,本文提出一種新的眾數(shù)篩檢法對(duì)邊界點(diǎn)進(jìn)行選取.眾數(shù)篩檢法選取一組數(shù)據(jù)中的眾數(shù)為基點(diǎn),用Mode表示,之后把該組數(shù)據(jù)中數(shù)值大小在[Mode± 4]范圍內(nèi)的數(shù)據(jù)保留下來,將其他數(shù)據(jù)剔除,即完成篩選.該方法適用于篩除具有固定差值數(shù)據(jù)中出現(xiàn)的散亂點(diǎn),如平行線之間數(shù)據(jù)的散亂點(diǎn)、同心圓之間數(shù)據(jù)的散亂點(diǎn).本文所測(cè)量的端面存在3個(gè)同心圓,因此該方法非常適用.
由2.3節(jié)得到的邊界點(diǎn)是成組出現(xiàn)的,每一個(gè)d1圓上的邊界點(diǎn)都有d2和d3圓上的邊界點(diǎn)與之對(duì)應(yīng).在進(jìn)行眾數(shù)篩選時(shí)以組內(nèi)邊界點(diǎn)之間的距離為參考依據(jù),邊界點(diǎn)篩選及圓擬合圖像如圖5所示.其中d1與d2圓上的一組邊界點(diǎn)如圖5(a)所示,篩選后邊界點(diǎn)如圖5(b)所示.
圖5 邊界點(diǎn)篩選及圓擬合圖像Fig.5 Boundary points selection and circle fitting image
Kasa代數(shù)圓擬合法[9]是速度最快、應(yīng)用最為廣泛的一種圓擬合算法.作為代數(shù)距離法的一種,Kasa算法不僅有精確的解析解,且能夠克服幾何距離法中由于迭代不收斂或收斂到局部最小值所帶來的問題.因此,本文選擇Kasa算法進(jìn)行圓參數(shù)估計(jì).
Kasa算法以采樣點(diǎn)到目標(biāo)圓的代數(shù)距離平方和作為目標(biāo)函數(shù),推導(dǎo)出擬合圓心坐標(biāo)和擬合半徑的表達(dá)式[10].令(xi,yi)表示坐標(biāo)系中第i個(gè)被測(cè)量的數(shù)據(jù)點(diǎn),共有N個(gè)待測(cè)量的點(diǎn),3≤i≤N,(A,B)為圓心,R為圓的半徑,得到的殘差公式即目標(biāo)函數(shù)為
(2)
由于(2)式無法求解,因此可以將其轉(zhuǎn)化為
(3)
從(3)式中可以看出,u為關(guān)于A、B和R的二階函數(shù),其最小值可以通過如下式子求得:
(4)
根據(jù)(4)式進(jìn)行求導(dǎo),并引入新的參數(shù):
C=R2-A2-B2,
(5)
最終可以轉(zhuǎn)化為求A、B、C的線性方程組:
(6)
通過矩陣運(yùn)算對(duì)線性方程組(6)求解,可以得到A、B、C和R的值.進(jìn)行圓擬合后得到的邊界圖像如圖5(c)所示.
標(biāo)定的目的是確定被測(cè)樣品的實(shí)際尺寸與采集圖像中像素?cái)?shù)的量化對(duì)應(yīng)關(guān)系,以便將圖像中以像素為單位的尺寸轉(zhuǎn)換到物理尺寸上.選用機(jī)器視覺中常用的高精度實(shí)心圓陣列標(biāo)定板來對(duì)相機(jī)進(jìn)行標(biāo)定[11].已知標(biāo)定板中每個(gè)圓的標(biāo)準(zhǔn)直徑為0.375 mm,選用200萬像素的高分辨率工業(yè)相機(jī),安裝固定好后進(jìn)行尺寸標(biāo)定,標(biāo)定后一個(gè)像素的尺寸為8.432 μm.
為了驗(yàn)證該測(cè)量方法的可靠性,用人工和機(jī)器視覺兩種方法對(duì)同一樣品外直徑進(jìn)行重復(fù)測(cè)量[12],測(cè)量結(jié)果如表1所示.可以看出,機(jī)器視覺的測(cè)量精度高于人工測(cè)量的精度;此外測(cè)量結(jié)果的標(biāo)準(zhǔn)差表明,該測(cè)量方法比人工測(cè)量更加穩(wěn)定可靠.
表1 兩種測(cè)量方法對(duì)同一樣品外直徑的測(cè)量結(jié)果
為了驗(yàn)證該測(cè)量方法的重復(fù)性精度,在機(jī)器視覺系統(tǒng)所有條件均保持不變的情況下對(duì)同一個(gè)端面受損圓柱進(jìn)行了20次測(cè)量,測(cè)量數(shù)據(jù)見表2.可以看出,d1的重復(fù)性誤差為0.008 81 mm;d2的重復(fù)性誤差為0.012 91 mm;d3的重復(fù)性誤差為0.007 77 mm.圓柱測(cè)量誤差點(diǎn)線圖如圖6所示,可以看出,3個(gè)直徑測(cè)量值的波動(dòng)范圍都較小,均在±8 μm以內(nèi),表明該尺寸測(cè)量方法重復(fù)性高.
表2 同一樣品3個(gè)特征尺寸的重復(fù)測(cè)量結(jié)果
圖6 圓柱測(cè)量誤差點(diǎn)線圖Fig.6 Error points and curves of cylinder measurement
為了驗(yàn)證該測(cè)量方法的適用性,將該測(cè)量方法用于檢測(cè)表面光滑且無缺陷的其他材料的圓柱端面,最終圓擬合的結(jié)果如圖5(d)所示.可以看出,采用本文提出的測(cè)量方法對(duì)表面光滑且無損傷的其他材料圓柱同樣得到了理想的圓邊界,表明該方法不僅能夠測(cè)量受損圓柱的端面尺寸,同時(shí)能夠測(cè)量表面光滑且無缺陷的管孔圓柱的尺寸,適用性強(qiáng).但值得注意的是,當(dāng)受損面積大于50%時(shí),由于準(zhǔn)確的邊界點(diǎn)過少,可能導(dǎo)致該測(cè)量方法失去可信度.
此外,對(duì)測(cè)量所用時(shí)間進(jìn)行了對(duì)比,人工方法測(cè)量一個(gè)樣品外直徑的時(shí)間約為5 s,而基于Halcon的該尺寸測(cè)量方法的時(shí)間效率在毫秒量級(jí),能夠?qū)崿F(xiàn)在線實(shí)時(shí)檢測(cè).
由此可見,本文提出的尺寸測(cè)量方法具有很高的測(cè)量精度和穩(wěn)定性,測(cè)量時(shí)間短,且對(duì)同類型的圓柱測(cè)量具備通用性.
通過對(duì)受損圓柱進(jìn)行中值濾波、邊界點(diǎn)查找、眾數(shù)篩選及代數(shù)距離法圓擬合,完成了對(duì)帶孔圓柱多個(gè)圓直徑尺寸的精確測(cè)量,填補(bǔ)了機(jī)器視覺測(cè)量中關(guān)于受損圓柱尺寸精確測(cè)量的空白.實(shí)驗(yàn)結(jié)果表明,本文提出的尺寸測(cè)量方法不僅能夠精確地測(cè)量受損的圓柱,對(duì)于標(biāo)準(zhǔn)圓柱同樣適用,且重復(fù)精度達(dá)到±8 μm以內(nèi).該測(cè)量方法可以滿足快速、穩(wěn)定以及準(zhǔn)確性的要求,為表面受損或背景復(fù)雜的圓柱內(nèi)外徑測(cè)量提供了一種便捷高效的方法.