楊武飛 蔣建軍 陳雪梅 李中偉 周鋼



摘要:為了解決低對比度成像條件下傳統三維輪廓重建算法精度偏低的問題,提出一種基于鄰域距離最小化準則、由粗到細的高精度輪廓三維重建算法。首先使用Canny算子對目標圖像進行邊緣檢測,再利用目標形狀、尺寸等先驗信息剔除分割出的虛假目標邊緣。隨后,計算邊緣點法線方向上的梯度加權值作為工件初始化輪廓,根據左右一致性原則篩選出粗匹配點對,在匹配點對鄰域附近使用亞像素進行精細搜索,利用鄰域距離最小化準則估算出當前最佳亞像素匹配點對,并將其用于激光刻形工件的尺寸測量,總體精度可達0.1mm。該方法有效降低了輪廓重建算法對邊緣定位精度的依賴,同時提高了輪廓重建精度。
關鍵詞:低對比度圖像;輪廓三維重建;鄰域距離最小化準則;尺寸測量;激光刻形
DOI:10.11907/rjdk.192081 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP317.4文獻標識碼:A 文章編號:1672-7800(2020)006-0223-04
0 引言
圖像邊緣輪廓對于描述目標形狀、位置、尺寸等信息具有至關重要的作用,現有高精度輪廓三維重建算法都嚴重依賴于輪廓定位精度。激光刻形圖像存在目標輪廓對比度低、輪廓定位難度大、虛假輪廓多等特點,給輪廓重建帶來了巨大困難。工件邊緣輪廓定位精度是決定輪廓重建精度的主要因素,因此高精度邊緣輪廓檢測算法成為國內外學者的重點研究對象。當前輪廓檢測算法大體上可分為4類,分別是基于像素、基于邊緣、基于區域與基于深度學習網絡的方法。由于激光刻形工件圖像中普遍存在典型的直線、圓弧等特征,因而一般采用基于邊緣檢測的方法對工件圖像進行檢測,再通過對邊緣進行篩選與連接得到適用的工件輪廓。如Jermyn&Ishikawam描述一種根據圖像域邊界空間定義的新能量形式,提出圖像邊緣輪廓提取的優化框架;Schoenemann等在該框架基礎上,通過對邊界區域施加曲率約束,第一次提出一種基于比率的圖像區域提取方法;Wang等提出一種比率輪廓方法,用于提取顯著的區域邊界,尤其是將文獻[3]中提出的方法專門用于提取對稱邊界,但對稱邊界相比輪廓而言是有限制的,應用領域較為狹窄;Zhu等使用被稱為解開循環的分組標準,利用顯著輪廓的固有拓撲1D結構,從其它2D圖像雜波中提取輪廓,從而克服了這種限制。基于邊緣的圖像輪廓提取算法雖然取得了一定成就,但目前在效率與精度上仍然存在一定缺陷,無法得到完全通用的輪廓提取效果。因此,一些學者嘗試在邊緣檢測基礎上,使用其它輔助手段提高輪廓重建精度。如何袱、達飛鵬在極線校正的兩幅匹配圖像中,利用Prewitt邊緣算子搜索并構建一條封閉的區域邊緣,接著采用歸一化互相關系數計算匹配代價,通過Winner-Take-All區域優化算法獲取視差,并引入圖像平滑技術進一步降低誤匹配,該方法對高對比度輪廓的重建效果較好,但對于低對比度、重復紋理的圖像輪廓則重建誤差較大;Li通過使用Hough變換檢測圖像中的直線對進行匹配,該方法嚴重依賴Hough直線檢測效果,雖然一定程度上降低了誤匹配,但對于低對比度圖像效果仍不理想;方建中等使用Zernike矩方法對預處理圖像進行亞像素邊緣檢測,對獲得的亞像素點進行聚類與擬合,計算擬合曲線的交點,一定程度上提高了重建精度。
對于低對比度圖像,由于邊緣檢測算法的缺陷,容易出現漏檢或檢測出過多虛假邊緣的情況,因此對其真實邊緣的精確定位難度非常大。為此,本研究并不直接追求很高的邊緣檢測精度,而是利用在圖像中相鄰邊緣點重建出的點云在局部具有強連續性的假設,使用法線方向加權輪廓作為初始化輪廓,局部搜索最佳亞像素匹配點對,降低了系統對邊緣檢測算法的要求,對低對比度和多重虛假邊緣圖像具有較高的輪廓重建精度,算法適用性強。
1 由粗到細的高精度輪廓重建算法
1.1 算法流程
為了降低后續對應點匹配難度,首先對拍攝到的左右相機圖像進行畸變矯正,然后使用Bouguet極線校正算法[9-223將非平行相機系統校正為平行相機系統,之后利用經典Canny算子進行邊緣檢測。考慮到待檢測的目標邊緣輪廓形狀和尺寸可作為先驗條件,本文僅保留邊緣檢測圖像中與目標形狀、尺寸一致性較好的區域。計算每一個點法線方向加權平均輪廓作為初始值,根據左右一致性原則獲得粗匹配點,再使用鄰域最小距離準則估算出真實的亞像素匹配點對,經過三角法之后即可獲得目標邊緣輪廓的點云,主要流程如圖1所示。
1.2 立體極線校正
在雙目視覺中,本文預先對相機采集的雙目圖像進行極線矯正,使非平行相機系統轉換為平行相機系統,校正之后圖像中的對應點位于圖像中相同的Y軸上。該方式不僅降低了對應點誤匹配概率,同時在基于距離準則的極線匹配過程中,無需搜索所有點,僅需考慮匹配相同Y坐標上的點即可,極大地提高了對應點匹配速度。
1.3 法線方向亞像素邊緣輪廓定位
傳統邊緣檢測方法的檢測精度通常只能達到像素級,但是隨著科學技術的飛速發展,工業檢測等應用對精度的要求不斷提高,傳統像素級邊緣檢測方法已不能滿足實際測量需要,因此需要精度更高的邊緣檢測方法,如亞像素邊緣檢測方法。首先使用經典Canny邊緣檢測算子作為初始輪廓定位算子,通過對輪廓施加單像素約束,對輪廓點按順時針方向排序,計算每一個像素點法線方向的梯度加權輪廓作為最終的亞像素輪廓結果,具體過程如下:
1.3.1 法線方向計算
首先需要計算的是輪廓上當前點的法線方向,對于直線、圓、矩形、圓角矩形而言,局部輪廓都是直線或圓弧,因而可采用尋找當前點按順時針方向前后固定間隔點的方式實現,分別稱為點Pointpre、Pointnow、Pointnext,則法線方向定義為點Pointpre和點Pointnext所連直線中垂線的方向。當Pointpre與Pointnext所連直線與X軸平行時,法線方向平行于Y軸,否則為:
1.3.2 法線延長線計算
計算完當前點法線方向后,還需要計算當前點在法線方向上的延長線,將延長線直線上加權平均梯度作為目標輪廓亞像素點,具體過程如下:
(1)計算法線上距離當前點為固定距離的兩個點,可按照下式進行計算:
其中,D為常數,用于定義當前點Pointnow與順時針方向點Pointpre之間的測地距離(本文設置為7)。
(2)計算點P1與P2之間的連線段,將線段中垂線與工件初始輪廓交點設為P,沿法線方向分別取間距相等的點連成線段,計算線段上坐標點(x,Y)均值作為最終的亞像素坐標位置。
1.4 左右一致性粗匹配與鄰域距離最小準則精細匹配
左右一致性是立體匹配中一種常用的匹配策略,對邊緣輪廓圖像L(圖4(。))與邊緣輪廓圖R(圖4(d))按照從上往下、從左往右的順序進行遍歷,對于第i行,將邊緣輪廓圖像L中像素灰度值為255點的亞像素坐標存人數組P,將邊緣輪廓圖像R中像素灰度值為255點的亞像素坐標存人數組Q,將數組P第一個元素Pi(x1,y1)與Q的第一個元素Qi(x1,y1)、數組P最后一個元素Pi(x2,y2)與Q最后一個元素Qi(x2,y2)分別設置為對應的粗匹配點,如圖5(a)中編號為1的點與圖5(b)中編號為1的點,以及圖5(a)中編號為3的點與圖5(b)中編號為3的點分別為粗匹配的對應點。
2 實驗結果
測量系統由2個CCD相機、鏡頭、LED藍光光源、圓形標定板、支架與電腦組成,其中CCD采用Basler ace系列,型號為aeA2440-20gm,分辨率為2048x2048像素的工業相機,搭載焦距為16ram的Computar鏡頭,電腦主頻為3.0GHz,實驗過程采用LED藍光光源。
對比圖4與圖7可以看出,雖然目標輪廓的邊緣定位精度較差,平均大于1.5像素,但由于本文算法在初始邊緣輪廓附近強制使用了-2-2范圍鄰域的亞像素進行精細搜索,搜索精度為0.2像素,因此重建的三維點云精度仍然較高,這對于低對比度圖像輪廓的高精度重建尤其有效。
3 結語
由于測量工件材質的固有特性,激光刻形前后工件圖像存在邊緣輪廓對比度低、虛假邊緣多、輪廓定位精度差等難題,使用傳統對應點匹配重建算法難以保證重建精度。為此,本文并不單純追求較高的輪廓定位精度,而是利用工件形狀等先驗信息,使用Canny算子預先檢測工件邊緣輪廓,剔除虛假邊緣以降低后續輪廓誤匹配概率,同時使用鄰域法線方向加權梯度對邊緣輪廓進行合并,強制使用單像素約束定位到理想輪廓附近,并利用最小距離準則搜索最佳亞像素匹配點對,從而實現低對比度成像條件下的高精度輪廓重建,具有一定的實用價值。