于春和,祁樂(lè)陽(yáng)
(沈陽(yáng)航空航天大學(xué) 電子信息工程學(xué)院,遼寧 沈陽(yáng)110136)
基于HALCON的雙目攝像機(jī)標(biāo)定
于春和,祁樂(lè)陽(yáng)
(沈陽(yáng)航空航天大學(xué) 電子信息工程學(xué)院,遼寧 沈陽(yáng)110136)
基于對(duì)雙目攝像機(jī)立體視覺(jué)系統(tǒng)進(jìn)行標(biāo)定的目的。采用HALCON標(biāo)定板,通過(guò)軟件豐富算子平臺(tái)進(jìn)行對(duì)比實(shí)驗(yàn)得到雙目攝像機(jī)立體視覺(jué)系統(tǒng)的內(nèi)部參數(shù)以及外部參數(shù)。算法結(jié)果準(zhǔn)確,簡(jiǎn)單易行。其程序魯棒性強(qiáng),運(yùn)算效率高,能夠高效的運(yùn)用到雙目立體視覺(jué)系統(tǒng)中,為基于雙目立體視覺(jué)的人臉三維重建提供了堅(jiān)實(shí)的基礎(chǔ)。
剛性轉(zhuǎn)換;雙目標(biāo)定;機(jī)器視覺(jué);HALCON標(biāo)定板
Abstract:Based on the binocular stereo vision system for the purpose of calibration.The internal and external parameters of stereo vision system of binocular camera are obtained by using HALCON calibration board and comparative experiment by software rich operator platform.The results are accurate and simple.The program is robust and efficient,and can be applied to binocular stereoscopic vision system effectively,which provides a solid foundation for 3D reconstruction of human face based on binocular stereoscopic vision.
Key words:rigidity conversion;binocular calibration;machine vision;HALCON calibration plate
攝像機(jī)標(biāo)定是機(jī)器視覺(jué)和攝像測(cè)量領(lǐng)域相對(duì)基礎(chǔ)的工作,同時(shí)也是最復(fù)雜、困難的工作。 攝像機(jī)標(biāo)定的意義是得到立體空間中對(duì)象的幾何信息,其中所使用的圖像信息由雙目攝像機(jī)所得[1]。定后的雙目攝像機(jī)得到的圖像目標(biāo)信息是準(zhǔn)確的,為最終得到立體空間中對(duì)象的幾何信息打下堅(jiān)實(shí)基礎(chǔ)。圖像信息與對(duì)象幾何信息的對(duì)應(yīng)關(guān)系決定了待標(biāo)定攝像機(jī)的內(nèi)、外參數(shù)。簡(jiǎn)言之,攝像機(jī)的標(biāo)定就是求解被測(cè)目標(biāo)的世界坐標(biāo)與所得目標(biāo)圖像坐標(biāo)系同時(shí)獲得兩個(gè)待標(biāo)定攝像機(jī)相互對(duì)應(yīng)幾何關(guān)系的過(guò)程[2]。高精度攝像機(jī)標(biāo)定中被廣泛應(yīng)用的算法有Tasi的兩步法、Weng等的改良方法、Zhang的棋盤(pán)靶標(biāo)方法等[3]。這些方法都假設(shè)像點(diǎn)和三維空間標(biāo)志點(diǎn)的相互對(duì)應(yīng)關(guān)系是已知的,精確計(jì)算攝像機(jī)內(nèi)參、外參是這些算法的研究重點(diǎn)。基于Halcon的標(biāo)定方法降低了操作難度,提高了可行性。
我們需要對(duì)雙目攝像機(jī)進(jìn)行標(biāo)定以達(dá)到從目標(biāo)圖像中得到精確三維立體坐標(biāo)的目的。所以必須了解三維立體世界坐標(biāo)系中的目標(biāo)物體如何投射到二維圖像平面以及相對(duì)應(yīng)的攝像機(jī)參數(shù)[4]。本文說(shuō)明的是較為常規(guī)的面陣攝像機(jī)模型,同時(shí)論述了對(duì)面陣攝像機(jī)的標(biāo)定。在日??蒲兄校话闱闆r下應(yīng)用針孔攝像機(jī)模型,如圖1所示。
雖然實(shí)際上成像平面在鏡頭光心的后端,但是在實(shí)際應(yīng)用中我們可以假設(shè)成像平面在攝像機(jī)鏡頭光心前端焦距f處[5],如圖2所示。由此可以達(dá)到簡(jiǎn)化計(jì)算步驟的目的。成像平面坐標(biāo)系上的對(duì)應(yīng)點(diǎn)P由世界坐標(biāo)系上的Pw變換所得。首先,通過(guò)剛性轉(zhuǎn)換完成從世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的轉(zhuǎn)換,可以使用三維位姿或相似變換矩陣表示。關(guān)系為:
圖1 針孔攝像機(jī)透視投影模型
T=(tx,ty,tz)T是一個(gè)平移向量。 R=R(X,Y,Z)是一個(gè)旋轉(zhuǎn)矩陣,其中X、Y、Z是對(duì)應(yīng)于旋轉(zhuǎn)后對(duì)應(yīng)的坐標(biāo)系的軸向量在原始坐標(biāo)系中的值[6]。剛性轉(zhuǎn)換的平移向量、旋轉(zhuǎn)角度即為攝像機(jī)的外部參數(shù)。世界坐標(biāo)系中雙目攝像機(jī)的位姿由攝像機(jī)外參確定。攝像機(jī)坐標(biāo)系中的某個(gè)三維點(diǎn)映射到成像平面坐標(biāo)系的投射關(guān)聯(lián)為:
投射到成像平面時(shí),鏡頭發(fā)生畸變導(dǎo)致坐標(biāo)(U、V)變化。 如果鏡頭沒(méi)有發(fā)生畸變,投影點(diǎn)p′會(huì)在點(diǎn)P與光心連線的延長(zhǎng)線上,如圖2所示。坐標(biāo)位置的偏移就是鏡頭畸變所致。
圖2 鏡頭畸變
這種鏡頭畸變?cè)斐傻膱D像轉(zhuǎn)移可以不需要三維信息只在成像平面上建立數(shù)學(xué)模型。一般情況下,下屬表達(dá)式可以足夠準(zhǔn)確的表示徑向畸變:
參數(shù)k表示徑向畸變的程度。當(dāng)畸變類型為桶形畸變時(shí)K<0,當(dāng)畸變類型為枕形畸變時(shí)K>0。這種表示畸變的數(shù)學(xué)模型優(yōu)勢(shì)在于可以使用下述表達(dá)式進(jìn)行畸變校正:
我們將點(diǎn)從成像平面坐標(biāo)系轉(zhuǎn)換到像素坐標(biāo)系中:
式中Sx是縮放比例參數(shù),代表攝像機(jī)電荷耦合器件圖像轉(zhuǎn)換器的每個(gè)單元的水平方向距離和垂直方向距離,定義了徑向畸變的中心,表示成像平面上鏡頭光心的垂直投影[7]。攝像機(jī)進(jìn)行的三維到二維的投影轉(zhuǎn)換由攝像機(jī)內(nèi)參及外參決定。
綜上所述,得到攝像機(jī)的內(nèi)參(f,k,Sx,Sy,Cx,Cy)和外參(tx,ty,tz,X,Y,Z)是攝像機(jī)標(biāo)定的最終意義。
標(biāo)定雙目攝像機(jī)的過(guò)程包括在圖像中識(shí)別標(biāo)定板、在標(biāo)定板中識(shí)別標(biāo)定點(diǎn)精確坐標(biāo)、確定所有坐標(biāo)點(diǎn)圖像坐標(biāo)與世界坐標(biāo)間的對(duì)應(yīng)關(guān)系。HALCON標(biāo)定板擁有非常高的精度,這種精度是進(jìn)行高精度測(cè)量的先決條件。因此,使用HALCON標(biāo)定板是最簡(jiǎn)單有效的方法之一。
標(biāo)定精度受標(biāo)定板類型及拍攝細(xì)節(jié)影響,所以對(duì)標(biāo)定板時(shí)應(yīng)注意以下事項(xiàng)。如果使用前向光,需要使用陶瓷材質(zhì)的標(biāo)定板。如果使用背光,需要使用玻璃材質(zhì)的標(biāo)定板。標(biāo)定板的邊緣長(zhǎng)度應(yīng)大約為圖像邊緣長(zhǎng)度的1/3。為了在不同圖像中體現(xiàn)出標(biāo)定點(diǎn)透視畸變關(guān)系,我們應(yīng)該在拍攝中不斷改變標(biāo)定板方位。拍攝時(shí)光照要均勻,標(biāo)定板應(yīng)比參照物亮度高,但亮度不宜過(guò)高。標(biāo)定板上亮的部分灰度值必須達(dá)到100以上。為了標(biāo)定立體視覺(jué)系統(tǒng),需要拍攝多組包含標(biāo)定板的立體圖像對(duì),在每個(gè)圖像對(duì)中的每幅圖像都包含一個(gè)完整的標(biāo)定板。一般情況下,要確保立體圖像對(duì)中兩幅圖像的交迭區(qū)域一定比單個(gè)攝影機(jī)的視野小,圖像中標(biāo)定板的位置能夠盡量覆蓋整個(gè)交迭區(qū)域[8]。
攝像機(jī)按規(guī)則提取到立體像對(duì)后,首先對(duì)目標(biāo)做高斯濾波。然后,進(jìn)行簡(jiǎn)單的閾值分割。設(shè)定的閾值應(yīng)該比標(biāo)定板上白色部分的灰度值小。此外,該閾值的最佳設(shè)定應(yīng)大于目標(biāo)圖像其他大區(qū)域稍亮部分的灰度值。經(jīng)過(guò)閾值分割后獲取的多個(gè)部分中,凹狀孔數(shù)量與CalTab描述文件中的標(biāo)定點(diǎn)個(gè)數(shù)相一致的部分被提取出來(lái)。對(duì)目標(biāo)部分做邊緣檢測(cè)。邊緣檢測(cè)靈敏度越高得到的信息越多,但是會(huì)降低對(duì)噪聲的抑制能力[9]。對(duì)所得邊緣振幅進(jìn)行閾值分割,所有灰度值變化幅度大的邊緣都被選中。封閉輪廓的個(gè)數(shù)應(yīng)該與標(biāo)定板描述文件中點(diǎn)的個(gè)數(shù)相同,同時(shí)所有輪廓線的形狀應(yīng)該都是橢圓形。利用線性方法擬合標(biāo)志點(diǎn)邊緣的最優(yōu)解[10]。本算法魯棒性較強(qiáng),提高了邊緣檢測(cè)的穩(wěn)定性。通過(guò)對(duì)擬合橢圓的最小外包矩形的選取,最終世界坐標(biāo)系中標(biāo)定點(diǎn)與成像平面坐標(biāo)系中坐標(biāo)點(diǎn)的映射關(guān)系[11-12]。
與單目攝像機(jī)標(biāo)定相似,雙目攝像機(jī)標(biāo)定的輸入?yún)?shù)可以分為兩類,其一為對(duì)應(yīng)坐標(biāo)點(diǎn)在世界坐標(biāo)系中的坐標(biāo)。此外還有,坐標(biāo)點(diǎn)在兩個(gè)成像平面坐標(biāo)系中的坐標(biāo);其二為雙目攝像機(jī)的初始參數(shù)[13]。與單目攝像機(jī)標(biāo)定不同的是在雙目攝像機(jī)標(biāo)定時(shí)函數(shù)find_caltab和函數(shù)find_marks_and_pose必須在立體圖像對(duì)的每幅圖像中分別調(diào)用。標(biāo)定程序流程圖如圖3所示。
圖3 程序流程圖
函數(shù) read_image(:Image:FileName:)讀取文件名為FileName的圖像Image;函數(shù)find_caltab(ImageL,CaltabL,CaltabName,SizeGauss,MarkThresh,MinDiamMarks)基于標(biāo)定板在一個(gè)亮的區(qū)域中存在黑色標(biāo)定板的特征在圖像中尋找標(biāo)定板,效果如圖4(a)所示。第一步,對(duì)待標(biāo)定圖像執(zhí)行高斯模糊,高斯核的大小由輸入?yún)?shù)SizeGauss決定。該參數(shù)與對(duì)噪聲的抑制效果成正比。高斯模糊后對(duì)圖像進(jìn)行灰度閾值分割?;叶乳撝禐镸arkThresh到255。提取出凹孔個(gè)數(shù)與標(biāo)定板描述文件中對(duì)應(yīng)點(diǎn)個(gè)數(shù)相一致的凸出部分。凹孔的最小直徑為MinDiamMarks,量級(jí)為像素,視圖片而定。這樣有利于降低錯(cuò)誤目標(biāo)的干擾,提高系統(tǒng)運(yùn)行速度[14]。
find_marks_and_pose算子對(duì)選中的標(biāo)定板上的圓進(jìn)行分割,提取的坐標(biāo)點(diǎn)個(gè)數(shù)、周長(zhǎng)、坐標(biāo)位置都應(yīng)該與標(biāo)定板描述文件相符合。否則會(huì)自動(dòng)調(diào)整StartThresh,使StartThresh按照DeltaThresh步長(zhǎng)減小到MinThresh,直到找到精確的標(biāo)定點(diǎn)圓心。RCoordL、CCoordL、StartPoseL 為 3個(gè)返回值,分別為測(cè)得的行、列及對(duì)應(yīng)估計(jì)的攝像機(jī)外部參數(shù)。binocular_calibration算子的輸入?yún)?shù)為標(biāo)定點(diǎn)在成像平面坐標(biāo)系中的坐標(biāo)以及兩個(gè)攝像機(jī)內(nèi)參初始值,而且該函數(shù)返回雙目攝像機(jī)之間的相對(duì)位姿。標(biāo)定效果如圖4所示。
圖4 標(biāo)定效果
標(biāo)定完成后務(wù)必不要對(duì)雙目立體視覺(jué)系統(tǒng)進(jìn)行改變,比如焦距、相對(duì)位姿等[15]。然而,無(wú)論雙目攝像機(jī)的內(nèi)部參數(shù)還是外部參數(shù)發(fā)生變化,只需要單獨(dú)對(duì)發(fā)生變化部分進(jìn)行重新標(biāo)定即可。
在實(shí)驗(yàn)中,我們?cè)谡9庹障屡臄z了2組分別為15副、25副HALCON 100 mm標(biāo)定板圖像。兩組對(duì)比結(jié)果如表1所示。
由實(shí)驗(yàn)結(jié)果可以得出結(jié)論:基于HALCON的雙目攝像機(jī)標(biāo)定算法結(jié)果準(zhǔn)確,簡(jiǎn)單易行。其程序魯棒性強(qiáng),運(yùn)算效率高,能夠高效的運(yùn)用到雙目立體視覺(jué)系統(tǒng)中,為基于雙目立體視覺(jué)的人臉三維重建提供了堅(jiān)實(shí)的基礎(chǔ)。
[1]張廣軍.機(jī)器視覺(jué)[M].北京:科學(xué)出版社,2005.
[2]馬頌德,張正友.計(jì)算機(jī)視覺(jué):計(jì)算理論與算法基礎(chǔ)[M].北京:科學(xué)出版社,1998.
[3]Tsai R Y.An efficient and accurate camera calibration technique for 3D machine vision[J].Proc.ieeeConf.on ComputerVision & Pattern Recognition,1986:364-374.
[4]賈云得.機(jī)器視覺(jué)[M].北京:科學(xué)出版社,2005.
[5]李良福,陳衛(wèi)東,馮祖仁,等.目標(biāo)跟蹤與定位中的視覺(jué)標(biāo)定算法研究 [J].應(yīng)用光學(xué),2008,29(4):481-486.
[6]Fitzgibbon A,Pilu M,F(xiàn)isher R B.Direct least square fitting of ellipses [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1999,21(5):475-480.
[7]羅珍茜,薛雷,孫峰杰,等.基于HALCON攝像機(jī)標(biāo)定[J].電視技術(shù),2010,34(4):100-102.
[8]賈丹,攝像機(jī)現(xiàn)場(chǎng)標(biāo)定算法研究[D].哈爾濱:哈爾濱工程大學(xué),2007.
[9]Steger C,Ulrich M, Wiedemann C.Machine vision algorithms and applications[C]//Machine vision algorithms and applications.Wiley-VCH,2007.
[10]譚曉波.攝像機(jī)標(biāo)定及相關(guān)技術(shù)研究[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2003.
[11]ZHANG Zheng-you.A flexible new technique for camera calibration[J].IEEE Transaction on Pattern Analysis and machine Intelligence,2000,22(11):1330-1334.
[12]劉源洞,孔建益,王興東,等.雙目立體視覺(jué)系統(tǒng)的非線性攝像機(jī)標(biāo)定技術(shù) [J].計(jì)算機(jī)應(yīng)用研究,2011,28(9):3398-3400.
[13]張滋黎.基于視覺(jué)引導(dǎo)的大尺度空間坐標(biāo)測(cè)量方法研究[D].天津:天津大學(xué),2009.
[14]唐志豪,許幀英,李伯全,等.三維視覺(jué)測(cè)量系統(tǒng)平臺(tái)的軟件設(shè)計(jì)及實(shí)現(xiàn) [J].計(jì)算機(jī)測(cè)量與控制,2006(11):1566-1568.
[15]Lenz R K,Tsai R Y.Techniques for calibration of the scale factor and image center for high accuracy 3D machine vision metro logy[C]//Proceedings of IEEE International Conference on Robotics and Automation.Washington DC:IEEE,1987:68-75.
Binocular camera based on HALCON
YU Chun-he,QI Le-yang
(School of Electronic and Information Engineering, Shenyang Aerospace University,Shenyang110136,China)
表1 標(biāo)定結(jié)果比較
TN391
A
1674-6236(2017)19-0190-04
2016-09-01稿件編號(hào)201609004
于春和(1976—),男,遼寧沈陽(yáng)人,博士,副教授。研究方向:信息獲取與處理。