鄒 宇
(江蘇開放大學,江蘇 南京 210012)
雙目視覺技術指的是使用相機代替人眼獲取不同的圖像運動信息,再將人類大腦的思維通過視覺處理器模擬出來,從同一場景的不同角度對物體進行二維圖像拍攝,最終恢復物體的三維坐標。雙目視覺技術的計算精度高、實現簡單,屬于人工智能視覺領域的重點研究問題。雙目視覺技術的特點明顯,尤其在人類無法作業的場景,包括高危環境、有害環境等,雙目視覺技術已經應用于各行各業,是其他目標定位技術無法超越的一種圖像獲取技術。因此,雙目視覺技術一直是人工智能領域的重點技術。該文提出的基于雙目視覺技術的定位控制系統包括系統構建、相機標定、圖像預處理、圖像匹配和信息獲取等。
圖像平滑技術也稱圖像模糊處理技術,屬于一種速度快、準確率高且操作簡單的圖像處理技術,圖像平滑技術能夠有效降低圖像中的噪聲,避免圖像失真。
一般情況下,數字信號在傳輸過程中產生的數據錯誤容易造成圖像脈沖噪聲的出現。如要判斷是否出現了脈沖噪聲,需要確定一點的像素值,再與其他像素點的灰度值進行比對,這樣可以獲得脈沖噪聲與其他像素點灰度特征值的差異。通常情況下,脈沖噪聲是相鄰域中像素點灰度特征的極值。然而,像脈沖噪聲極值點也經常會存在于其他區域或邊界,判斷脈沖噪聲點不能僅依靠極值點實現,同時要綜合考慮其他因素。
高斯噪聲模型廣泛應用于圖像平滑技術領域的原因是高斯噪聲的數據整理率在圖像的空間域或頻域較高。高斯噪聲包括2個特征:一個是高斯噪聲的噪聲波動和噪聲密度較大;另一個是高斯噪聲圖像中每個像素的灰度級都會被影響,其干擾圖像像素的范圍較廣,即使是相同灰度級的像素受高斯噪聲干擾的程度也不同。
雙目立體視覺定位系統主要是通過獲取圖像的深度信息以得到圖像的三維立體信息。在完成圖像預處理工作和圖像立體匹配工作后,實現相機立體標定,再采用三角測量的模式,用2個相機對相同目標物體拍攝圖像,進而從視差中恢復距離。為了最終能夠獲得空間物體目標在現實領域中的實際物理形態,雙目立體視覺定位系統要綜合考慮包括根據立體匹配結果獲得視差以及根據視差對物體目標的特征進行三維坐標還原等在內的多個問題。
該文創建的雙目視覺立體定位系統結構如圖1所示。1) 相機。該文選取的相機像素是130萬,屬于工業級黑白相機,USB接口免驅安裝,工作電壓為5V。2個相機可以通過USB接口與計算機連接,實現數據信息傳輸。由于相機不用安裝驅動,也不需要數據采集卡,通過MFC編程就可以實現對圖像的采集和保存,同時可以控制圖像尺寸大小和實際曝光時間。通過手動方式調整鏡頭的焦距距離,對圖像進行捕捉時,要確保相機內部參數固定。不采用自動對焦鏡頭進行圖像捕捉的原因是進行標定后的相機內部參數不能改變。2) 計算機。雙目視覺立體定位系統對計算機顯卡和處理器要求較高,如果計算機內存過小,處理器計算速度較低,系統圖像處理模塊中的大量算法計算會導致計算機出現卡頓等情況。系統為了能夠有效顯示目標物體定位結果,完全呈現目標物體圖像和拍攝圖像,需要性能較好的計算機,因此,該文選自i3處理器的臺式機。3) 平臺。該文進行的圖像捕捉試驗需要一個木制平板,為了能夠有效實現對目標物體的準確定位,可以固定2臺CCD相機的安裝平臺。

圖1 雙目視覺立體定位系統硬件組成圖
雙目視覺立體定位系統采用了MFC編程方式,能夠在Windows操作系統中運行,同時調用了Open CV函數庫完成了系統控制程序的編譯,系統流程圖如圖2所示。

圖2 雙目視覺立體定位系統流程圖
如圖3所示,手繪黑白棋盤格圖像置于質地堅硬的平板上,10×10邊長設為2cm的黑白格,目標是排除誤差較大的角點并排除誤差較多的點。同時將相機標定的圖像和目標物體的圖像數據傳輸到計算機系統中并保存。

圖3 圖像采集模塊示意圖
如圖4所示,將左右相機固定,對棋盤進行移動操作,共采集圖像20組,全部由相機進行圖像捕捉。分別點擊4個角點,即左上、左下、右上和右下。根據角點信息計算獲得圖像主光心坐標,再依次提取角點,重復以上步驟。

圖4 圖像預處理模塊示意圖
如圖5所示,原點是圖像左上角的第一個角點,方向指向棋盤模板外,軸垂直于圖像平面,根據創建的坐標系得到每個角點單應性矩陣。同時,通過單應性矩陣可得相機的內、外參數。為了得到更高精度的相機內、外參數,必須增加畸變因數,把標定得到的內、外參數進行非線性化的求解。

圖5 圖像校正和匹配模塊示意圖
該文對選擇采集的2組圖像進行數據校正,得到有效區域。并通過改進基于固定窗口的特征匹配算法獲得自適應區域特征匹配算法,達到了提高數據匹配準確度和精確度的目的。
如圖6所示,將提前標定好的相機內、外參數和立體匹配得到的視圖差等通過MATLAB標定箱導入雙目視覺立體定位系統中,以獲得目標物體定位模塊,并計算得出物體三維坐標及位置距離。

圖6 目標定位模塊示意圖
該文選用的雙目視覺立體定位系統相機鏡頭焦距為4mm,屬于工業相機,將2個相機固定在同一水平位置,確保2個相機的內、外參數完全一致。相機內部參數見表1,相機固定位置如圖7所示。

表1 相機內部參數

圖7 雙目視覺立體定位系統
標定試驗的步驟如下。確保目標在2個相機的視角區域范圍,將黑白格棋盤模板靜置于2個相機前方。在區域內完成平行移動和旋轉動作,試驗輔助燈源采用日光燈,防止光線不佳影響拍照質量。為了確保旋轉矩陣中向量乘積為0,要注意模板的光軸處于交叉狀態(尤其在對標定棋盤模板進行移動時)。為了提高標定系數的準確性,該文試驗對棋盤模板進行了20次捕捉拍攝,并使用MATLAB中的工具作為標定工具箱。每次對棋盤進行旋轉動作操作時,相機即對棋盤模板進行捕捉拍攝,左、右相機拍攝3次可以得到相機內部參數。標定流程如圖8所示。

圖8 標定實現流程圖
得到的標定結果見表2、表3。

表2 左相機標定結果

像素誤差 [0.48684,0.35799]

表3 右相機標定結果
綜上所述,該文選用VS2010開發軟件,并調用軟件中的Open CV函數庫,通過MATLAB軟件編譯了系統MFC控制程序,搭建了系統驗證試驗平臺。在基于雙目視覺三維定位與試驗的基礎上,從相機的標定、圖像的平滑和增強、立體校正與匹配以及特征點的定位4個方面進行了研究。該文雖然實現了雙目系統的定位功能,但是由于時間有限,還需要進一步完善和研究。