• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    立體視覺系統(tǒng)的參數(shù)標(biāo)定的M atlab實(shí)現(xiàn)

    2011-04-20 07:27:22邊后琴譚葉
    關(guān)鍵詞:攝像機(jī)標(biāo)定坐標(biāo)系

    邊后琴,譚葉

    (上海電力學(xué)院計(jì)算機(jī)與信息工程學(xué)院,上海 200090)

    攝像機(jī)標(biāo)定是計(jì)算機(jī)視覺研究領(lǐng)域中的一個(gè)重要課題,其主要任務(wù)是確定攝像機(jī)的內(nèi)外參數(shù),其內(nèi)部參數(shù)包括幾何和光學(xué)特性,外部參數(shù)包括相對(duì)世界坐標(biāo)系的攝像機(jī)坐標(biāo)的一個(gè)三維位置和方向.現(xiàn)有的攝像機(jī)標(biāo)定方法主要可以分為傳統(tǒng)的標(biāo)定方法[1]、自標(biāo)定方法[2]和基于主動(dòng)視覺的標(biāo)定方法[3]3類.傳統(tǒng)的標(biāo)定方法是基于一個(gè)精確測(cè)定的物體作為空間參照物的攝像機(jī)內(nèi)標(biāo)定方法[4];自標(biāo)定方法不需要借助任何外在的信息,僅利用圖像之間的點(diǎn)對(duì)應(yīng)信息就可以獲得攝像機(jī)的內(nèi)部參數(shù)[5];基于主動(dòng)視覺的標(biāo)定方法是通過控制攝像機(jī)的運(yùn)動(dòng)來標(biāo)定攝像機(jī)的內(nèi)部參數(shù)[6].本文研究了基于平面板標(biāo)定的傳統(tǒng)的攝像機(jī)標(biāo)定方法,利用MATLAB編程語言實(shí)現(xiàn)了這一標(biāo)定方法,并給出了實(shí)驗(yàn)過程和結(jié)果,以期為標(biāo)定方法在工程中的實(shí)際應(yīng)用提供參考.

    1 攝像機(jī)成像模型

    攝像機(jī)在拍攝圖像的過程中,涉及3個(gè)坐標(biāo)系,即圖像坐標(biāo)系、攝像機(jī)坐標(biāo)系和世界坐標(biāo)系.圖像坐標(biāo)系有兩個(gè):一是以像素為單位的圖像坐標(biāo)系(u,v);二是以物理單位(例如毫米)表示的圖像坐標(biāo)系(x,y).在(x,y)坐標(biāo)系中,原點(diǎn)O1定義在攝像機(jī)光軸與圖像平面的交點(diǎn),該點(diǎn)一般位于圖像中心處,但由于攝像機(jī)制作的原因,也會(huì)有些偏離,若原點(diǎn)O1在(x,y)坐標(biāo)系中的坐標(biāo)為(u0,v0),每一個(gè)像素在x軸與y軸方向上的物理尺寸為ku=1/dx,kv=1/dy,x軸與y軸方向的夾角為θ,則圖像中任意一個(gè)像素在兩個(gè)坐標(biāo)系中的關(guān)系為:

    一般取θ=π/2,圖像坐標(biāo)系關(guān)系如圖1所示.在這一情況下,式(1)可以簡(jiǎn)單地表示為:

    圖1 圖像坐標(biāo)系示意

    定義攝像機(jī)坐標(biāo)系為(Xc,Yc,Zc),其坐標(biāo)原點(diǎn)O稱為攝像機(jī)的光心,Xc軸和Yc軸與圖像的x軸與y軸平行,Zc軸為攝像機(jī)的光軸,它與圖像平面垂直.光軸與圖像平面的交點(diǎn),即為圖像坐標(biāo)系的原點(diǎn)O1,O1為攝像機(jī)焦距.攝像機(jī)可安放在環(huán)境中的任何位置,在環(huán)境中選擇一個(gè)基準(zhǔn)坐標(biāo)系來描述攝像機(jī)的位置,用以描述環(huán)境中任何物體的位置,該坐標(biāo)系稱為世界坐標(biāo)系,它由Xw,Yw,Zw軸組成.用R和t分別表示攝像機(jī)坐標(biāo)系和世界坐標(biāo)系之間的旋轉(zhuǎn)關(guān)系和平移關(guān)系.因此,空間中某一點(diǎn)X在世界坐標(biāo)系與攝像機(jī)坐標(biāo)系下的齊次坐標(biāo)如果分別是(Xw,Yw,Zw,1)T與(Xc,Yc,Zc,1)T,則存在的關(guān)系為:

    空間的任何一點(diǎn)X在圖像上的成像位置可以用針孔模型近似表示,如圖2所示,即任何點(diǎn)X在圖像上的投影位置x為光心O與X點(diǎn)的連線OX和圖像平面的交點(diǎn).此種關(guān)系稱為中心射影或透視投影.(x,y)為x點(diǎn)的圖像坐標(biāo);(Xc,Yc,Zc)為空間點(diǎn)X在攝像機(jī)坐標(biāo)系下的坐標(biāo).

    圖2 針孔攝像機(jī)模型

    成立,所以:

    那么,攝像機(jī)坐標(biāo)和圖像坐標(biāo)間的變換關(guān)系為:

    根據(jù)比例關(guān)系,則:

    由此可見,在成像的過程中丟失了深度信息.此透視投影關(guān)系用齊次坐標(biāo)與矩陣可以表示為:

    代入式(7),得到以世界坐標(biāo)系表示的X點(diǎn)坐標(biāo)與其投影點(diǎn)x的坐標(biāo)(u,v)的關(guān)系為:

    式中:P——攝像機(jī)的投影矩陣,為3×4矩陣;

    K——由坐標(biāo)尺度k u和k v,中心u 0和v 0,焦距f,x和y方向的夾角θ確定,這5個(gè)參數(shù)稱為攝像機(jī)的內(nèi)部參數(shù); Pt——由攝像機(jī)相對(duì)于世界坐標(biāo)系的方位,即旋轉(zhuǎn)矩陣R和平移向量t所對(duì)應(yīng)的6個(gè)參數(shù)確定,這6個(gè)參數(shù)稱為攝像機(jī)的外參數(shù).

    確定攝像機(jī)內(nèi)外參數(shù)的過程,稱為攝像機(jī)的標(biāo)定.雙目視覺中攝像機(jī)定標(biāo)的基本方法是,在固定的攝像機(jī)模型下,基于特定的參照物,通過對(duì)左右兩幅圖像進(jìn)行圖像處理和數(shù)學(xué)變換計(jì)算,可以得到攝像機(jī)模型的內(nèi)部和外部參數(shù).對(duì)于使用日益廣泛的非測(cè)量攝像機(jī)來說,標(biāo)定是從二維圖像中獲取三維信息必不可少的步驟.

    2 參數(shù)標(biāo)定方法的實(shí)現(xiàn)過程

    平面模板標(biāo)定方法的基本原理為:

    需要注意的是,這里我們假設(shè)模板平面是在世界坐標(biāo)系中Z=0的平面上.由于攝像機(jī)有5個(gè)未知內(nèi)參數(shù),所以當(dāng)所攝取的圖像數(shù)目大于等于3時(shí),就可以線性唯一求解出K.

    基于Matlab的立體視覺系統(tǒng)的參數(shù)標(biāo)定分為兩個(gè)階段:一是根據(jù)給定的圖像標(biāo)定每一臺(tái)攝像機(jī)的內(nèi)部參數(shù);二是根據(jù)內(nèi)標(biāo)定的結(jié)果標(biāo)定立體視覺系統(tǒng)的外部參數(shù).平面標(biāo)定方法包括以下5個(gè)步驟:

    (1)打印一張黑白相間的格子紙,貼在一個(gè)平面板上;

    (2)從不同角度拍攝若干張模板圖像;

    (3)檢測(cè)出圖像中的特征點(diǎn);

    (4)求出攝像機(jī)的內(nèi)部和外部參數(shù);

    (5)求出畸變系數(shù);

    (6)優(yōu)化求精.

    實(shí)驗(yàn)平臺(tái)如下:5×8的黑白相間的棋盤狀標(biāo)定塊,每個(gè)柵格的規(guī)格為30 mm×30 mm,打印后固定于塑料泡沫板上.安裝兩臺(tái)位置固定的CCD攝像機(jī),從不同角度拍攝若干張模板的圖像,然后用Matlab讀入圖像,提取標(biāo)定模板的網(wǎng)格角點(diǎn),標(biāo)定參數(shù),計(jì)算誤差,最后將左右攝像機(jī)的標(biāo)定結(jié)果聯(lián)立得到外部參數(shù)矩陣.

    整個(gè)標(biāo)定系統(tǒng)的第一個(gè)運(yùn)行界面見圖3.

    圖3 運(yùn)行界面

    圖像是標(biāo)定方法的直接對(duì)象,讀入圖像按鈕用于讀入需要標(biāo)定的圖像,可以選擇圖像格式、文件名等,通過調(diào)用子函數(shù)ima_read_calib實(shí)現(xiàn),該函數(shù)可以將目標(biāo)文件夾下的所有文件列出并讀入.運(yùn)行時(shí)先選擇文件名,以左邊攝像機(jī)文件名為例(左邊攝像機(jī)所拍攝圖片共有14幅,將其依次命名為left01,left02,left03,…,left14),輸入left,在Image format一欄可以發(fā)現(xiàn)有不同可供選擇的圖片格式.若所用圖片是jpg格式,就輸入j.其他不同格式的圖像對(duì)應(yīng)的字母如下:

    讀入圖像后,程序顯示結(jié)果如圖4所示.圖4顯示了由左邊攝像機(jī)拍攝的14幅jpg格式的圖像的縮略圖.一般來說,圖片越多,標(biāo)定精度越高,可以根據(jù)實(shí)際需要的標(biāo)定精度選擇要標(biāo)定的圖像數(shù)量,如果不對(duì)數(shù)量進(jìn)行選擇,系統(tǒng)會(huì)默認(rèn)是該文件名序列的全部圖像(按照標(biāo)定方法原理,用于標(biāo)定的圖像數(shù)量不能小于3).

    圖4 用于標(biāo)定的圖像

    提取網(wǎng)格頂點(diǎn)按鈕的操作要調(diào)用的子函數(shù)是click_calib,此時(shí),默認(rèn)平行于水平面方向?yàn)閄軸,而垂直方向?yàn)閅軸.如果在上一個(gè)過程中圖像未被正確讀入,則此時(shí)會(huì)先提示:Cannot extract cornerswithout images!如果圖像被正確讀入,則提示需要設(shè)置操作界面的坐標(biāo)系大小,并要求設(shè)置柵格的邊長(zhǎng).用戶在標(biāo)定模板上用鼠標(biāo)依次點(diǎn)擊圖像的4個(gè)頂點(diǎn),次序?yàn)樽笊?、右上、右下、左?根據(jù)提示輸入每一個(gè)方格的長(zhǎng)(30 mm)與寬(30 mm).在選取4個(gè)頂點(diǎn)時(shí),如果偏移過大,需要輸入X軸和Y軸的柵格數(shù)量時(shí),只需要按照實(shí)際操作輸入即可.選擇完畢以后,就可以依次提取網(wǎng)格角點(diǎn).

    網(wǎng)格網(wǎng)點(diǎn)提取過程如下.

    標(biāo)定左攝像機(jī)的參數(shù),在標(biāo)定前,一定要確定有多于3幅圖片進(jìn)行提取角點(diǎn)等操作,因?yàn)槠矫婺0宓臉?biāo)定方法規(guī)定必須要多于3幅圖片,如果小于3幅,則會(huì)因?yàn)榍蠼夥匠踢^少而無法得到結(jié)果.輸出的內(nèi)部參數(shù)有:有效焦距fc=f,主點(diǎn)(投影中心)cc=(u0,v0),偏斜角alpha_c=θ,畸變系數(shù)kc=[kukv],經(jīng)過優(yōu)化后可以得到計(jì)算的像素誤差(Pixel error,單位是像素).

    提取網(wǎng)格角點(diǎn)后,就可以計(jì)算出攝像機(jī)的內(nèi)部參數(shù),結(jié)果如下:

    得到兩個(gè)攝像機(jī)的內(nèi)部參數(shù)后,就可以進(jìn)行由這兩個(gè)攝像機(jī)構(gòu)成的立體視覺系統(tǒng)的標(biāo)定,即得到兩個(gè)攝像機(jī)的外部參數(shù).立體視覺系統(tǒng)標(biāo)定的界面如圖5所示.

    圖5 立體視覺系統(tǒng)標(biāo)定運(yùn)行界面

    首先需要載入左右攝像機(jī)的標(biāo)定結(jié)果,單擊該按鈕,出現(xiàn)如下提示:

    在原先得到左右攝像機(jī)內(nèi)部參數(shù)的基礎(chǔ)上,我們得到了該立體視覺系統(tǒng)的外部參數(shù),即右攝像機(jī)相對(duì)于左攝像機(jī)的旋轉(zhuǎn)矩陣R和平移矩陣T:

    左右攝像機(jī)外部參數(shù)示意見圖6和圖7.

    圖6 左攝像機(jī)外部參數(shù)示意

    圖7 右攝像機(jī)外部參數(shù)示意

    得到結(jié)果后,選擇保存.該操作調(diào)用了saving _calib這一函數(shù),目的是生成mat文件,為了后面操作方便,將得到的結(jié)果Calib_Results.mat重命名為后Calib_Results_left.mat,以區(qū)分隨后對(duì)右攝像機(jī)參數(shù)標(biāo)定的結(jié)果.

    通過實(shí)驗(yàn)可以發(fā)現(xiàn),這種基于Matlab的攝像機(jī)標(biāo)定方法的優(yōu)缺點(diǎn)很明顯:一方面,友好的界面以及簡(jiǎn)易的操作方法能夠被廣泛應(yīng)用到實(shí)際工程中;另一方面這種標(biāo)定方法的精確性仍有待提高,在測(cè)量左攝像機(jī)的內(nèi)部參數(shù)時(shí),其誤差約為0.6%,而右攝像機(jī)的內(nèi)部參數(shù)誤差也有0.2%,因此不合適運(yùn)用于高精度的場(chǎng)合.

    3 結(jié)語

    本文通過Matlab編程實(shí)現(xiàn)了一種較為方便的立體視覺系統(tǒng)的標(biāo)定方法.采用自標(biāo)定方法實(shí)現(xiàn)攝像機(jī)的自標(biāo)定,通過編寫程序調(diào)用Matlab的子函數(shù),可以很方便地實(shí)現(xiàn)標(biāo)定的計(jì)算過程.由于已知模板的每一個(gè)柵格大小,對(duì)14對(duì)圖像進(jìn)行角點(diǎn)提取,反復(fù)迭代,可以較為精確地得到攝像機(jī)的有效焦距等參數(shù).使用Matlab設(shè)計(jì)的標(biāo)定程序的操作界面具有更好的交互性和實(shí)時(shí)性,我們所需要做的只是將左右攝像機(jī)標(biāo)定完的結(jié)果作為初始數(shù)據(jù),使用特定的程序計(jì)算得到外部參數(shù),即旋轉(zhuǎn)矩陣和平移矩陣.

    通過實(shí)驗(yàn)充分證明,該方法有效且方便,具有良好的人機(jī)交互功能,便于操作,能夠?qū)崟r(shí)得到結(jié)果.

    [1]ZHANG Z Y.Flexible camera calibration by viewing a plane from unknown orientations[C]//Proceedings of the International Conference on Computer Vision,Kerkyra,Corfu,Greece,1999:666-673.

    [2]HARTLEY R.Estimation of relative camera positions for uncalibrated cameras[C]//Proceedings of the European Conference on Computer Vision,Santa Margherita Ligure,Italy,1992: 579-587.

    [3]MA S D.A self-calibration technique for active vision system[J].IEEE Transactions on Robot Automation,1996,12(1): 114-120.

    [4]祝海江,吳福朝,胡占義.基于兩條平行線段的攝像機(jī)標(biāo)定[J].自動(dòng)化學(xué)報(bào),2005,31(6):853-864.

    [5]傅丹,周劍,邱志強(qiáng),等.基于直線的幾何不變性標(biāo)定攝像機(jī)內(nèi)參數(shù)[J].中國(guó)圖象圖形學(xué)報(bào),2009,14(6):1 058-1 063.

    [6]夏艷,蘇中,吳細(xì)寶.雙目視覺測(cè)量系統(tǒng)的標(biāo)定及三維測(cè)量[J].中國(guó)圖象圖形學(xué)報(bào),2008,13(7):1 298-1 302.

    (編輯胡小萍)

    猜你喜歡
    攝像機(jī)標(biāo)定坐標(biāo)系
    使用朗仁H6 Pro標(biāo)定北汽紳寶轉(zhuǎn)向角傳感器
    解密坐標(biāo)系中的平移變換
    坐標(biāo)系背后的故事
    看監(jiān)控?cái)z像機(jī)的4K之道
    基于勻速率26位置法的iIMU-FSAS光纖陀螺儀標(biāo)定
    基于重心坐標(biāo)系的平面幾何證明的探討
    攝像機(jī)低照成像的前世今生
    新安訊士Q6155-E PTZ攝像機(jī)
    船載高精度星敏感器安裝角的標(biāo)定
    如何消除和緩解“攝像機(jī)恐懼癥”
    新聞前哨(2015年2期)2015-03-11 19:29:25
    张家港市| 桑植县| 当雄县| 陇南市| 鲜城| 全州县| 峨边| 沽源县| 星座| 深圳市| 大新县| 古蔺县| 武川县| 礼泉县| 太湖县| 剑阁县| 静宁县| 辉南县| 康马县| 绥化市| 南城县| 华蓥市| 霍州市| 泗洪县| 淮南市| 宜城市| 罗定市| 张北县| 德令哈市| 旅游| 安平县| 香格里拉县| 托里县| 阳江市| 太仓市| 崇州市| 东宁县| 嘉峪关市| 邵武市| 象州县| 肃宁县|