張吳波 孫希平
摘要:數(shù)碼相機(jī)標(biāo)定在計(jì)算機(jī)視覺(jué)中占有非常重要的地位,是計(jì)算機(jī)視覺(jué)工作中開(kāi)展其他方面研究的基礎(chǔ),該文提出了針對(duì)數(shù)碼相機(jī)的像點(diǎn)物距法對(duì)數(shù)碼相機(jī)機(jī)進(jìn)行標(biāo)定,為數(shù)碼相機(jī)標(biāo)定方法的研究提出了另外一條新途徑。
關(guān)鍵詞:像點(diǎn)物距法;標(biāo)定;邊緣檢測(cè)
中圖分類號(hào):TP391.4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)05-1133-03
Research For Calibration Of Object Point Basing On Digital Camera
ZHANG Wu-bo, SUN Xi-ping
(Hubei University of Automotive Technology, Shiyan 442002, China)
Abstract: Calibration basing digital camaer is very important for computer vision.it is a foundation when we research the other aspect of computer vision.this paper research a method named dot pitch of image point basing on digitabl camaer.it is a new way for calibration of digital camera.
Key words: dot pitch of image point; calibration; edge detection
1 背景
計(jì)算機(jī)視覺(jué)檢測(cè)就是用各種成像系統(tǒng)代替視覺(jué)器官作為輸入敏感手段,由計(jì)算機(jī)來(lái)代替大腦完成對(duì)圖像數(shù)據(jù)的分析和處理,并發(fā)出相應(yīng)指令完成對(duì)操控對(duì)象的控制。今年來(lái),隨著CCD數(shù)碼相機(jī)在成像分辨率、圖像采樣速率的提高,CCD數(shù)碼相機(jī)已被越來(lái)越廣泛地應(yīng)用于計(jì)算機(jī)視覺(jué)檢測(cè)等領(lǐng)域。
基于數(shù)碼相機(jī)的計(jì)算機(jī)視覺(jué)檢測(cè)主要解決的是如何從數(shù)碼相機(jī)拍攝的圖像中,計(jì)算物體表面某些特征點(diǎn)的位置信息。由于圖像中每個(gè)像素都是通過(guò)凸透鏡投射得到的,它對(duì)應(yīng)于光學(xué)中心與場(chǎng)景點(diǎn)形成一條射線。因此該問(wèn)題的本質(zhì)是確定場(chǎng)景中的點(diǎn)與圖像中對(duì)應(yīng)的點(diǎn)的位置關(guān)系。
本文采用像點(diǎn)物距法,通過(guò)利用用物點(diǎn)間的距離和物點(diǎn)在數(shù)碼相機(jī)中的所拍攝的相片上的投影來(lái)確定物點(diǎn)的坐標(biāo)以及數(shù)碼相機(jī)的參數(shù)。
2 數(shù)碼相機(jī)標(biāo)定模型
為了能得到數(shù)碼相機(jī)的參數(shù)以及物點(diǎn)的坐標(biāo),需要對(duì)數(shù)碼相機(jī)進(jìn)行標(biāo)定。第一種標(biāo)定的方法是,在一塊平板上畫(huà)若干個(gè)點(diǎn),用數(shù)碼相機(jī)對(duì)其照相,分別得到這些點(diǎn)在它們像平面上的像點(diǎn),但是由于標(biāo)靶上的點(diǎn)大小在成像時(shí)不容易確定,因此在計(jì)算會(huì)存在較大的誤差。筆者采用的是在靶標(biāo)上畫(huà)若干個(gè)圓(靶標(biāo)),如圖所示。
圖1
靶標(biāo)中每個(gè)圓的圓心就是幾何的點(diǎn),用數(shù)碼相機(jī)照相對(duì)靶標(biāo)進(jìn)行拍攝,使用圖像處理技術(shù),對(duì)圖像進(jìn)行分析計(jì)算,可以得到圓心在像平面上的坐標(biāo)。利用物點(diǎn)間的距離以及一定的幾何關(guān)系就可以得到這些圓的圓心在物平面上的坐標(biāo),同時(shí)也可以確定此時(shí)數(shù)碼相機(jī)的參數(shù),從而計(jì)算出靶標(biāo)中其他物點(diǎn)的坐標(biāo)參數(shù)。
3 圓心定位
確定圓心在圖像上的坐標(biāo)位置,必須通過(guò)圖像分析的方法,提取圖像中的圓信息。其基本的過(guò)程是通過(guò)分析圖像直方圖,計(jì)算得到閥值,利用閥值對(duì)圖像進(jìn)行二值化,將圖像信息轉(zhuǎn)換成0-1矩陣。然后通過(guò)標(biāo)識(shí)數(shù)字圖像和亮度變化明顯的點(diǎn),提取出圖形的輪廓信息。最后利用輪廓信息確定數(shù)碼相機(jī)中圖像的幾何中心。邊緣檢測(cè)是本課題的關(guān)鍵問(wèn)題,提取圖形的輪廓信息的準(zhǔn)確性直接決定圖像坐標(biāo)位置的精確性。
邊緣檢測(cè)的方法有很多種,例如圖像二值法、Canny算法、小波換算、Hough變化和Sobel算子等。本課題采用Sobel算子來(lái)邊緣檢測(cè)。圓心定位的效果如圖所示,圖中的白點(diǎn)即是標(biāo)定的圖像中圖形的中心。
圖2
4 像點(diǎn)物距標(biāo)定法數(shù)學(xué)模型
4.1 標(biāo)定系統(tǒng)坐標(biāo)系
為了能根據(jù)靶標(biāo)中各圓心的的距離以及靶標(biāo)在數(shù)碼相機(jī)拍攝的圖像中各圓的圓心距離進(jìn)行標(biāo)定,需要建立坐標(biāo)系來(lái)分析。坐標(biāo)系建立的合適與否直接關(guān)系到模型的能否正確實(shí)現(xiàn)以及數(shù)碼相機(jī)各個(gè)參數(shù)的求解,定義的三層坐標(biāo)系統(tǒng)如圖所示;
1) 世界坐標(biāo)系[Xe,Ye,Ze];它是客觀世界的絕對(duì)坐標(biāo),反映物體的真實(shí)信息與各種指標(biāo)。
2) 數(shù)碼相機(jī)坐標(biāo)系[x-0-y];以小孔數(shù)碼相機(jī)模型的光學(xué)中心為原點(diǎn),以相機(jī)光軸為[z]軸建立的三維直角坐標(biāo)系,其[x]軸、[y]軸分別于像平面的[x]軸、[y]軸相互平行。其原點(diǎn)[0,0,0]在像平面的投影為像平面的中點(diǎn)。
3) 圖像坐標(biāo)系[xf,yf,zf],它是像所在的坐標(biāo)系。
圖3
4.2 數(shù)碼像機(jī)參數(shù)計(jì)算模型
相機(jī)成像原理與小孔成像原理相同,即光線是沿直線傳播的。由圖可知,數(shù)碼相機(jī)的拍攝位置與靶標(biāo)所在的平面存在一定的夾角,而不是垂直靶標(biāo)拍攝的,但數(shù)碼相機(jī)鏡頭是垂直像平面的。
圖4
像平面為[z=h2],靶平面為[ax+by+z-h1=0]。數(shù)碼相機(jī)參數(shù)為[a,b,h1,h2]。[p1,p2,p3,p4]為靶平面上的四個(gè)點(diǎn)(圓心)[q1,q2,q3,q4]在像平面上的像,它們的坐標(biāo)已知,分別為[p110,10,h2,p240,10,h2,p340,40,h2,p410,40,h2]。且[q1q2,q1q3,q1q4,q2q3]為已知,其長(zhǎng)度分別定為[l12,l13,l14,l23],且[l12=30,l13=1.414*30,l14=30,l23=30]。求數(shù)碼相機(jī)的參數(shù)[a,b,h1,h2]以及求出物點(diǎn)[q1,q2,q3,q4]的坐標(biāo),以及物點(diǎn),像點(diǎn)與數(shù)碼相機(jī)參數(shù)[a,b,h1,h2]之間的數(shù)學(xué)關(guān)系。
設(shè)點(diǎn)[q]的坐標(biāo)為[qi(xi,yi,zi);i=1,2,3,4.]點(diǎn)[p]的坐標(biāo)為[pi(ui,vi,h2);i=1,2,3,4.]其中[ui,vi]已知,[h2]為數(shù)碼相機(jī)的參數(shù)。
由數(shù)碼相機(jī)成像原理以及相似三角形,連接[pi,qi]和數(shù)碼相機(jī)鏡頭的幾何中心[o(0,0,0)],顯然有如下的幾何關(guān)系式:
[xi-0ui-0=yi-0vi-0=zi-0h2-0] (1)
由此可得
[xi=kiuiyi=kivizi=kih2],[ki]待定 (2)
[qi]在靶平面上,自然滿足靶平面方程,結(jié)合式(2)就有:
[akiui+bkivi+kih2-h1=0][i=1,2,3,4] (3)
這就建立了四個(gè)方程。由空間距離方程可知:
[ q1q22=l212=(x1-x2)2+(y1-y2)2+(z1-z2)2] (4)
將式(3)帶入式(4)就得:
[u1k1-u2k22+v1k1-v2k22+(h2k1-h2k2)2] (5)
同理可得:
[(u1k1-u3k3)2+v1k1-v3k32+(h2k1-h2k3)2=l213(u1k1-u4k4)2+(v1k1-v4k4)2+(h2k1-h2k4)2=l214(u2k2-u3k3)2+(v2k2-v3k3)2+(h2k2-h2k3)2=l223] (6)
聯(lián)立式(3),(5),(6)得:
[akiui+bkivi+kih2-h1=0;i=1,2,3,4(u1k1-u2k2)2+(v1k1-v2k2)2+(h2k1-h2k2)2=l212(u1k1-u3k3)2+(v1k1-v3k3)2+(h2k1-h2k3)2=l213(u1k1-u4k4)2+(v1k1-v4k4)2+(h2k1-h2k4)2=l214(u2k2-u3k3)2+(v2k2-v3k3)2+(h2k2-h2k3)2=l223] (7)
其中[ui,vi,l12,l13,l14,l23]是已知量,[a,b,h1,h2,ki]是所求的量。
利用靶標(biāo)中物點(diǎn)的實(shí)際距離,以及其在數(shù)碼相機(jī)中像點(diǎn)位置,代入式(7),可以解出次方程組的解。
5 結(jié)論
數(shù)碼相機(jī)的定標(biāo)這種研究已經(jīng)有很多種的方法了,以往都是利用矩陣求算,不僅計(jì)算麻煩,而且產(chǎn)生的誤差比較大。該文所研究的方法是一種全新的方法,不僅簡(jiǎn)單,而且誤差比較小。在該模型中,巧妙地借助了物點(diǎn)的像、物距與數(shù)碼相機(jī)之間參數(shù)之間的幾何關(guān)系,建立了一定的數(shù)學(xué)方程,大大簡(jiǎn)化了問(wèn)題的求解,同時(shí)借助小孔成像原理建立模型,模型簡(jiǎn)單實(shí)用。
由于靶標(biāo)上的點(diǎn)用圓心表示可以更精確,而且圓成像后一般為橢圓,對(duì)于尋找圓心對(duì)應(yīng)的像的位置更方便準(zhǔn)確,所以采取了用圓來(lái)刻畫(huà)點(diǎn)的靶標(biāo),這樣保重了計(jì)算的準(zhǔn)確性。
參考文獻(xiàn):
[1] 姜大志.數(shù)碼相機(jī)標(biāo)定方法研究[J].南京航天航空大學(xué)學(xué)報(bào),2001,33(1).
[2] 陸永耕.數(shù)碼像機(jī)內(nèi)部參數(shù)標(biāo)定[J].上海電機(jī)學(xué)院學(xué)報(bào),2012(2).
[3] 沈小芳.數(shù)碼相機(jī)標(biāo)定模型研究[J].湖北工業(yè)大學(xué)學(xué)報(bào),2011(5).
[4] 蘇金林.數(shù)碼相機(jī)定位方法的數(shù)學(xué)模型研究[J].自動(dòng)化與儀器儀表,2012(3).
[5] 胡華科.數(shù)碼相機(jī)標(biāo)定方法的優(yōu)化研究[J].五邑大學(xué)學(xué)報(bào):自然科學(xué)版,2004,18(2).