版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
本文是一篇關(guān)于相機標定意義和原理的個人總結(jié),包含了OpenCV和Matlab中常用的相機標定函數(shù)的注解。相機標定是機器視覺的基礎(chǔ),標定結(jié)果的好壞直接決定了機器視覺的系統(tǒng)精度,作用可見一斑。在這一年半的時間里,我個人也是隨著實驗和程序的進一步理解,對標定的原理和意義有了更多的想法。同樣,由于博文的關(guān)系,仍有一些朋友會常常詢問標定的程序問題。本人的2010-05-17OpenCV標定稈序的問題也多次被朋友詢問,由于當時對標定的認識還不夠系統(tǒng),因此現(xiàn)在認為該文對標定的意義和原理有很多誤解,并在此推薦一些較好的博文拱大家學(xué)習(xí):雙目測距與三維重建的OpenCV實現(xiàn)問題集錦(一)圖像獲取與單目標定雙目測距與三維重建的OpenCV實現(xiàn)問題集錦(二)雙目標定與雙目校正雙攝像頭測距的OpenCV實現(xiàn)分享一些OpenCV實現(xiàn)立體視覺的經(jīng)驗下面結(jié)合本人的畢業(yè)論文及一年半來對機器視覺的學(xué)習(xí),對相機標定的意義和原理進行敘述。單目相機模型單目相機模型中的三種坐標系關(guān)系如圖1所示,相機坐標系即是以光軸中心O為原點的坐標系,其z軸滿足右手法則,成像原點0所代表平面即為像平面坐標系(實際應(yīng)用中,f均以圖像左上角為坐標系原點),實際物體坐標系即為世界坐標系。光軸中心0P(Xw,Yw,Zw)光軸中心0P(Xw,Yw,Zw)圖1單目相機模型的三坐標系統(tǒng)關(guān)系其中,P在世界坐標系的值為(X,Y,Z),P是P在像平面坐標系的投影點,其相機WWWu坐標系的值為(X,Y,Z)。0是相機坐標系Z軸與像平面夾角,一般情況下Z軸與像平面垂uuu直,0值為90。且相機坐標系x0y與像平面x0y平行,f為相機的焦距。° fff
對于從相機坐標系到像平面坐標系的變換,像平面坐標系是用像素單位來表示的,而相機坐標系則是以毫米為單位來表示,因此,要完成改變換過程就需要先得到像平面的像素單位與毫米單位之間的線性關(guān)系。在圖1中,相機光軸中心z軸方向上與像平面的交點O'稱為投影中心,坐標為(c,c),是像素單位,而每個像素在X和Y的物理尺寸為s=1和xy ff xZdxs=乂,單位是像素/毫米,則像平面的像素與毫米間的線性關(guān)系如式(1):y對于從相機坐標系到像平面坐標系的變換,像平面坐標系是用像素單位來表示的,而相機坐標系則是以毫米為單位來表示,因此,要完成改變換過程就需要先得到像平面的像素單位與毫米單位之間的線性關(guān)系。在圖1中,相機光軸中心z軸方向上與像平面的交點O'稱為投影中心,坐標為(c,c),是像素單位,而每個像素在X和Y的物理尺寸為s=1和xy ff xZdxs=乂,單位是像素/毫米,則像平面的像素與毫米間的線性關(guān)系如式(1):ydyruars0carxaxxv=0scyyy10011丿、丿八丿1)根據(jù)小孔模型下投影變換原理,像平面的物理坐標(x,y)對應(yīng)的相機坐標系滿足式2):其對應(yīng)的矩陣形式為式(3):”x”YX=/u—fuZZcos9uuy=f—YZusin92)rxa1y= Z11丿U00-fcos-i9fsin-i90(X)uYuZu11丿聯(lián)立式(1)和式(3),得到式(4)即為相機坐標系與像平面坐標系變換的矩陣。ua1rsfx—fcos—19cx0auYv0sfsin—19c0u=ZyxZ1丿丿U0010丿丿u1k1丿rxa4)其中,ya,c,c,f,9axy丿即為相機的6個內(nèi)參數(shù),其組成的矩陣即為內(nèi)參數(shù)矩陣。xO成像面攝像機坐標系P(X,Y,Z)xO成像面攝像機坐標系uuuu圖2相機坐標系與世界坐標系的變換關(guān)系其中,平移矩陣T是三維列向量,旋轉(zhuǎn)矩陣R是坐標軸依次繞x,y和z軸旋轉(zhuǎn)角度屮沖
和T所形成的三個矩陣RG),R(9),RG)的總乘積。它們的定義如式(5和T所形成的三個矩陣RG),R(9),RG)的總乘積。它們的定義如式(5):xy?)=RG)=zr100、0cos屮sin屮、0-sin屮cos屮丿rcos90-sin9、010、sin90cos9丿rcostsint 0、-sintcost0<001丿z5)則矩陣R的計算公式如式6):'cos9costR=-cos9sint、sin9cos屮sint+sin屮sin9cost
cos屮cost-sin屮sin9sint
-sin屮cos9sin屮sint-cos屮sin9costsin屮cost+cos屮sin9sintcos屮cos96)因此,從相機坐標系到世界坐標系的變換如式(7),其中,0T表示(000),R3x3為旋轉(zhuǎn)矩陣,T為平移矩陣,該變換矩陣稱為外參數(shù)矩陣。3x1rR3x33x10T7)最后,聯(lián)立式(4)和式(7)8):求得像平面坐標系與世界坐標系之間的變換關(guān)系,如式v一fcos-rR3x33x10T7)最后,聯(lián)立式(4)和式(7)8):求得像平面坐標系與世界坐標系之間的變換關(guān)系,如式v一fcos-19 cxsfsin-19cyy01rR3x3、0t3x1wYwZ其中,M3x4mmm000102mmm101112mmm202122mmm3031320、rx、=MwYw丿1Zw1丿3x4m03m13m23m33rxwYwZw18)即為透視投影矩陣,表示空間中三維點坐標與圖像平面二維坐標之間的線性關(guān)系,(uv1)t表示P的像平面齊次坐標值,(XYZ1)t表示P的世界坐標系齊次坐u www標值?;谝陨蠋缀卧砗拖鄼C模型得到的圖像信息和三維信息之間的關(guān)系,存在不可逆性,即可以通過已知世界坐標系的坐標值求得二維坐標值,如果要進行二維坐標到三維坐標的反求還需要其他的數(shù)學(xué)模型輔助求解。Matlab標定工具箱應(yīng)用制作標定板,標定板尺寸為324(mm)X252(mm),即7行9列63個36mm的正方形方格組成,如圖3所示。
2) 將水平平行的左右相機同時采集標定板的不同位姿圖像,共計12組位姿(對于采集的圖像,位姿越多,標定結(jié)果也會越精確,建議在10組到20組之間)如圖4,5所示。圖4左相機的標定圖像
圖5右相機的標定圖像3) 在工具箱中通過Extractgridcorners提取每幅標定圖像的特征點(即黑方格與白方格的交點)。4)進行單目標定,得到左右相機的內(nèi)外參數(shù)以及畸變系數(shù),并將參數(shù)保存到Calib_Results_left和Calib_Results_right兩個mat格式的文件中。Matlab標定結(jié)果與OpenCV標定結(jié)果的比較與分析Matlab標定結(jié)果:通過上節(jié)的步驟(1)-(4),可以得到如圖6和通過上節(jié)的步驟(1)-(4),變系數(shù)結(jié)果。C且C且librationresult(withui'lcertainties.):FocalLength:Frincipalp□int:Skew:Distortion:Piselerror:fi=.=[cc二FocalLength:Frincipalp□int:Skew:Distortion:Piselerror:fi=.=[cc二[alpha_c二[kc二[err二[854.3277629.1.1551.90.00000]?[0.00000]0.08416 -0.22269-0.33.151 O.,£Sfi28]858.80255]?[57.33772 57.84430]236.24060]?[11.55439 6.83477]=>angleofpiselaxes=90.00000?0.00000degrees-0.00136 0.00151 0.00000]?[0.02747 0.14400 0.00226 0.00295 0.00000]圖6左相機的內(nèi)參數(shù)和畸變系數(shù)Calibrationresults(withuncertainti已s):FocalLength:Principalpoint:fc=[ 71021 8燉.昶] ?L56.03100 56.. ]tc竺[^jll.14761 244.-^5410 ] ?L7.9955^ 6.84&^2-]Skew:alpha二c=[0.00000]'?[0.00000 ]豈angleofpixe.laxes-90.00000?0.00000degreesDistortion:kc [0.02792 0.04452 -0.00127 0.00270 0.00000]?[0.03411 0:27055 0.001:93 0.002^4 0.00000]Piselerror:err=[0.3,1349. 0.£6350]圖7右相機的內(nèi)參數(shù)和畸變系數(shù)對于左右相機由于透鏡畸變造成的誤差使用工具箱中的visualize_distortions功能進行分析,可以得到左相機的畸變圖,如8、9、10所示,相應(yīng)的右相機畸變圖,如11、12、13所示。0100200300400500600PixelerrorFocalLengthPrincipalPoint0100200300400500600PixelerrorFocalLengthPrincipalPointSkewFi.adialcoeFficierits+/-[57.34,57.84]+/-[11.55,6.835]+/-0+/-[0.02747,0.144,0]+/-[0.002255,0.002947]CompleteDistortionModel:100150200250300350400450=[0.3315.0.28&3]=(8E4.328,858.803)
=(291.155,236241)=0=(0.08416,-0.2227.0)Tangenticilcoefficients=(-0,001357^0.00151)圖8左相機鏡頭畸變圖RadialComponentoftheDistortionModel50o11:1o15o20o
cl-2o30oc.-3oo4Gq50100 '^00 300400500 &00Pixelerror=[0.^315/0.^863]F□匚mlLength=^54.^858.803)-+/--[5?.M57;S4]PrincipalPoint=(2^1.15^-236.241).+/-[11.55;6.835]Skew=0+/-0R.adialcoefficients=(0.0841&,-0.2^2?/Q)'+/-[0.02747,0.144jClTangentialcoel+i匚imrit呂=(^C.001357,0.001E1)+/-[0.002255,0.002347]圖9左相機徑向畸變圖0 100 200 300 400 500 600Pixelerror =[o'^lS,唸克]F6匕alLength =.(854,328,:B58.803)' 先[57,34?5?.84]PrincipalPoint =(231.1阪23&.,241). +/r[11,隔上.S3S]Skew =0 +/::0Radial匚oefficients: =(0.08416,-0,2227?.10) +/-[0.0274?,-0.1*4,0]Tanger?tialcoefficier.t^=^0.00135^0.00151) +/-[0.002^5^-0.002947]圖10左相機切向畸變圖對于圖8到10,圖中的0點即為左相機光學(xué)中心,圖中的箭頭顯示相機圖像的畸變方向。圖8左相機整體畸變模型中,該相機的左側(cè)畸變不明顯,若物體的圖像在此則不易受畸變因素影響造成線條的彎曲;圖9左相機徑向畸變模型中,該相機的畸變系數(shù)由中心向外增大,即物體的圖像越靠近圖像邊緣,其線條的彎曲程度就越大;圖10左相機切向畸變模型中,箭頭方向顯示該相機切向畸變的增大方向,在相機的左側(cè)其切向畸變與徑向畸變的方向相反,使得整體畸變模型中,相機左側(cè)的畸變較小。CompleteDistortionModel0100£00 3000100£00 300400500 &00Pixelerror=[0.313?;0.2635]FocalLength ==tS21^j324.38^+A'[56.Q3;5&.06]PrincipalP口int =={311.143,244.354)+/■i養(yǎng)9吆6.84S]Skew=0+/:0R.adialcoelticientE =(Q.02792/0.0445^0)+/:[0.03411^.2706,0]TangHntialcoefficients=(-0.001265,0.002762)+/-[0.001331,0.C02442]圖11右相機鏡頭畸變圖PixelerrorFdcalLengthPrincipalPointSkewRadialcoeffi匚PixelerrorFdcalLengthPrincipalPointSkewRadialcoeffi匚ien出=[0.3135^0.2635]^21.71/824.389)
=仗11.146」244.354)=0=(0.027^:0.04452,吋T^ngential^oetficient^=^3.001265^0.002762)+/^[56.03,56.06]+產(chǎn)[7,g3&z&.84S]+/-0+A[0.0341b0,3706,0]+/-[0.001331,0.002442]圖12右相機徑向畸變圖50100150200250300350400450TangentialComponentoftheDistortionModel0;10020030040050060050100150200250300350400450TangentialComponentoftheDistortionModel0;100200300400500600PbielerrorFocalLengthPrincipalPointSkewRadial.xQeffi匚的岀+戶[56.03,56.06]+/-[7.39'6>t.84S]+PbielerrorFocalLengthPrincipalPointSkewRadial.xQeffi匚的岀+戶[56.03,56.06]+/-[7.39'6>t.84S]+'/7.0+/-[0.03411>0;270t>0]4-/-[0.00193L0.002442]=0=?02門乙0.0445^.0)Tangentialcoefficientf=(-0.0012&5,0.0027^2)圖13右相機切向畸變圖對于圖11到13,圖中的0點與左相機相同,即為右相機光學(xué)中心,圖中的箭頭顯示相機圖像的畸變方向。圖11右相機整體畸變模型中,該相機的中間及偏左側(cè)畸變不明顯,若物體的圖像在此則不易受畸變因素影響造成線條的彎曲;圖12右相機徑向畸變模型中,該相機的畸變系數(shù)由中心向外增大,但右相機比左相機在光軸中心附近有更大的區(qū)域畸變很小,因此位于右側(cè)相機光學(xué)中心的圖像,其線條因受畸變造成的彎曲很?。粓D13右相機切向畸變模型中,箭頭方向顯示該相機切向畸變的增大方向,在相機的左側(cè)其切向畸變與徑向畸變的方向相反,使得整體畸變模型中,位于右相機圖像左側(cè)的線條受畸變影響較小。OpenCV標定結(jié)果:在此列舉的OpenCV標定結(jié)果是我雙目視覺標定且優(yōu)化后的結(jié)果,與Matlab的會有差異。左側(cè)相機的內(nèi)參數(shù)矩陣:/837.62931 0 301.0371、0 840.95381238.93799右側(cè)相機的內(nèi)參數(shù)矩陣:11)xtangentialytangential11)xtangentialytangential12)其中,(x,y)是像平面上的任一點坐標值,(x,y)是進行切向畸變矯正后的坐標tangentialtangential‘837.34215 0 306.91534、0 842.97182244.3674 (10)<001‘該式(9)-(10)與式(1)相對應(yīng)。而Matlab中的cc對應(yīng)于式(1)中的相機光軸中心在圖像平面的投影坐標,fc即為式(1)中的s和s。xy至此,講解完了OpenCV與Matlab所對應(yīng)的相機標定內(nèi)參數(shù)矩陣的含義OpenCV與Matlab標定中的差異:OpenCV的標定參數(shù)中,對于鏡頭畸變采用的方法是Brown博士在71年發(fā)表的文章中提到的;而Matlab中的鏡頭畸變參數(shù)采用基于Heikkil博士提出的方法,將非線性干擾因素引入到內(nèi)外參數(shù)的求解過程。Heikkil采用5X1的矩陣(k kppk)來表示以上的兩種畸變系數(shù)。根據(jù)1 2 1 2 3Brown的非線性模型,k1,k2和k表示鏡頭的徑向畸變系數(shù),通常只使用k1,k2兩項,k只是針對即便較大的鏡頭(例如魚眼鏡頭,其余情況下該系數(shù)值為0),而p和p表示切向畸12變系數(shù),由式(11)和式(12)求(解該矩陣,本文的畸)變系數(shù)求解伴隨在相機標定過程中x =xU+kr2+kr4+kr6/radical 1 2 3y =yU+kr2+kr4+kr6radical 1 2 3其中,(x,y)是像平面上的任一點坐標值,(x,y )是進行徑向畸變矯正后的坐radicalradical標值,r2,r4,r6是r作為光學(xué)中心畸變?yōu)?的點進行泰勒級數(shù)展開后得到的。=x+[2py+p(r2+2x2"
=y+[p(r2+2y2)+2py]值,r2,r4,r6如式(11)的定義相同。4.外參數(shù)的作用及其在相機標定中的意義外參數(shù)定義了如圖2所示的圖像平面到世界坐標系的變換關(guān)系。而標定就是通過相機尋找圖像平面中如圖3所示的標定板的特征點位置,所以得到的外參數(shù)是圖像平面與標定板所處平面的線性變換關(guān)系。在我的2010-06-14基于Matlab的雙目視覺定位問題研究中,通過Matlab標定工具箱產(chǎn)生的圖4與圖5就可以表達上述含義。圖了圖4因此,對于不同的棋盤格標定板空間位置,必然對應(yīng)于不同的外參數(shù)矩陣。同樣的,在視覺伺服中,雅可比矩陣也有同樣的數(shù)學(xué)意義。對于視覺伺服,個人認為可以看些徐德的論文入門。
5.OpenCV標定程序說明用于尋找圖像中的棋盤格標定板的特征點:CvSizeboard_sz=cvSize(board_w,board_h);IplImage*imgLeft=cvCreateImage(cvSize(imgL->width,imgL->height),imgL->depth,imgL->nChannels);IplImage*imgRight=cvCreateImage(cvSize(imgR->width,imgR->height),imgR->depth,imgR->nChannels);CvPoint2D32f*cornersLeft=newCvPoint2D32f[board_n];CvPoint2D32f*cornersRight=newCvPoint2D32f[board_n];intcorner_countLeft,corner_countRight;cvResize(imgL,imgLeft,CV_INTER_LINEAR);cvResize(imgR,imgRight,CV_INTER_LINEAR);if(frame++%board_dt==0){//Findchessboardcorners:intfoundLeft=cvFindChessboardCorners(imgLeft,board_sz,cornersLeft,&corner_countLeft,CV_CALIB_CB_ADAPTIVE_THRESH|CV_CALIB_CB_FILTER_QUADS);intfoundRight=cvFindChessboardCorners(imgRight,board_sz,cornersRight,&corner_countRight,CV_CALIB_CB_ADAPTIVE_THRESH|CV_CALIB_CB_FILTER_QUADS);//GetSubpixelaccuracyonthosecornerscvCvtColor(imgLeft,grayLeft,CV_BGR2GRAY);//ifinputiscolorfulthenusethiscvCvtColor(imgRight,grayRight,CV_BGR2GRAY);//cvCopy(image1,gray_image1);//cvCopy(image2,gray_image2);cvFindCornerSubPix(grayLeft,cornersLeft,corner_countLeft,cvSize(11,11),cvSize(-1,-1),cvTermCriteria(CV_TERMCRIT_EPS+CV_TERMCRIT_ITER,30,0.1));//尋找棋盤格標定板的特征點cvFindCornerSubPix(grayRight,cornersRight,corner_countRight,cvSize(11,11),cvSize(-1,-1),cvTermCriteria(CV_TERMCRIT_EPS+CV_TERMCRIT_ITER,30,0.1));//尋找棋盤格標定板的特征點//畫出找到的特征點cvDrawChessbo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度叉車銷售與綠色制造技術(shù)服務(wù)合同3篇
- 2025年度消防工程火災(zāi)風(fēng)險評估與整改服務(wù)合同3篇
- 多維度大數(shù)據(jù)驅(qū)動的農(nóng)產(chǎn)品市場分析與預(yù)測方案
- 兒童游樂場設(shè)施安全使用聲明
- 智能物流運輸優(yōu)化合作協(xié)議
- 2024年生產(chǎn)線建設(shè)與綠色制造合同3篇
- 2024深圳對外貿(mào)易貨物進口貨物退換貨合同3篇
- 二零二五年度主題餐廳場地及品牌授權(quán)承包合同3篇
- 2024氣象觀測設(shè)施設(shè)備采購及售后服務(wù)合同3篇
- 一年級數(shù)學(xué)計算題專項練習(xí)1000題匯編
- 辦理落戶新生兒委托書模板
- 施工現(xiàn)場環(huán)境因素識別、評價及環(huán)境因素清單、控制措施
- 2024年醫(yī)藥行業(yè)年終總結(jié).政策篇 易聯(lián)招采2024
- 兒科護士述職報告2024
- 股權(quán)投資協(xié)議的風(fēng)險控制
- 酒店微笑服務(wù)培訓(xùn)
- 浙江省嘉興市2023-2024學(xué)年七年級上學(xué)期語文期末試卷(含答案)
- 《鴻蒙智能互聯(lián)設(shè)備開發(fā)(微課版)》全套教學(xué)課件
- 山西省晉中市2023-2024學(xué)年高一上學(xué)期期末考試 物理 含解析
- 安全與急救學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 人力資源戰(zhàn)略規(guī)劃地圖
評論
0/150
提交評論