馮為嘉,張寶峰,曹作良
(1. 天津大學精密測試技術(shù)及儀器國家重點實驗室,天津 300072;
2. 天津理工大學天津市復雜工業(yè)系統(tǒng)控制理論及應用重點實驗室,天津 300384)
全方位視覺一次拍攝可攝取 360°方位角中的全部景物,這一特性非常有利于多目標捕獲、機動目標跟蹤,尤其對移動機器人的視覺導航具有特殊的意義.近年來利用全方位視覺傳感器構(gòu)建全方位視覺系統(tǒng)得到了廣泛地研究[1-3],全方位視覺傳感器雖然可以在一次拍攝中捕獲水平方向 360°的全部信息,但是在垂直方向有一定的視場限制,且鏡頭本身將會出現(xiàn)在拍攝的圖像中造成盲區(qū).筆者利用魚眼鏡頭構(gòu)建全方位視覺系統(tǒng)在捕獲 360°方位角信息的同時可兼顧天頂 185°半球域視場.魚眼鏡頭存在的光學偏差以及鏡頭與相機的裝配誤差,往往造成圖像中心偏離成像芯片靶面中心等誤差,因此需要對成像系統(tǒng)進行標定以確定圖像中心坐標和其他成像系統(tǒng)參數(shù)[4-5].在建立成像系統(tǒng)模型的基礎(chǔ)上提出需標定的系統(tǒng)內(nèi)、外部參數(shù),對傳統(tǒng)的線性標定方法進行改進,設計適合于魚眼鏡頭標定的新型靶標和標定方法,為畸變矯正奠定基礎(chǔ).國內(nèi)外學者對魚眼圖像畸變矯正和圖像復原算法進行了大量研究[6-8],目前常見的魚眼鏡頭矯正模型有球面模型、對數(shù)極限模型、多項式變換模型等.不同光學結(jié)構(gòu)的鏡頭適合于不同的矯正模型,通常為不同類型魚眼鏡頭選擇適合的矯正模型是較為困難的.筆者利用等距投影定理及支持向量機訓練的方法分別實現(xiàn)了對魚眼圖像中的像素點和整幅圖像的畸變矯正,取得了理想的效果.
圖 1為成像系統(tǒng)模型.本文建立的成像系統(tǒng)模型包括世界坐標系(xw,yw,zw),魚眼鏡頭坐標系(x,y,z),攝像機坐標系(x',y',z'),圖像坐標系(i,c),成像平面坐標系(u,v).
其中 p為世界坐標系中一點,OO′為光軸,h為 p點到鏡頭表面的距離,r為p到鏡頭中心O的水平距離,ω 為 p點相對鏡頭中心的入射角(仰角),θ為 p點在攝像機坐標系中的方位角,p′為 p在成像面上的像點,r為像點離圖像中心點O′的距離(徑向距離),θ'為像點在圖像物理坐標系中的方位角.
根據(jù)等距投影定理,O′為魚眼圖像的中心點(u0,v0),(u,v)為成像點 p′在成像面中的像素坐標,它們之間的關(guān)系為
圖1 成像系統(tǒng)模型Fig.1 Model of imaging system
本文研究與魚眼圖像畸變矯正相關(guān)的圖像中心點、鏡頭表面到成像點距離l、徑向畸變系數(shù)kx和ky4個參數(shù)的標定方法.
世界坐標系與攝像機坐標系變化為
世界坐標系與圖像坐標系變換關(guān)系為
式中:(u0,v0)是像素中心坐標;dx和 dy分別為一個像素在 x軸與 y軸方向上的物理尺寸,而 sx=1/dx,sy= 1 /dy即單位長度的像素個數(shù).
由于魚眼鏡頭的“桶形”畸變量比較大,無法直接使用傳統(tǒng)的線性標定方式,因此根據(jù)魚眼鏡頭的成像模式建立簡單的直接以視場角為參數(shù)的成像模型,假設偏心畸變、薄棱鏡畸變、正交畸變?yōu)?0,在僅考慮徑向畸變和內(nèi)方位元素誤差的情況下,利用類似與線性標定的方法,同時解算外部參數(shù)和成像模型內(nèi)部參數(shù).根據(jù)等距投影定理式(1)和坐標系轉(zhuǎn)換公式(2)和式(3)組成方程為
式中:rd為標定點成像點距圖像傳感器中心的距離;(xd,yd)為標定點所成像點的圖像傳感器坐標,xd=(u-u0)dx,yd=(v-v0)dy.
以上公式表達了徑向尺寸約束,另外還有徑向排列約束為
聯(lián)立徑向尺寸約束(4)和徑向排列約束(6),就可以組成包含外參數(shù)(旋轉(zhuǎn)矩陣和平移矩陣)和內(nèi)部參數(shù)(徑向成像模型參數(shù))的方程組,只要給定比較接近的初始值便可以求解合理的參數(shù)值[9].
實驗平臺及采集到的魚眼圖像如圖 2和圖 3所示.根據(jù)靶標上的 24個基準圓建立世界坐標系,結(jié)合采集圖像中提取出的這些基準圓圓心的圖像坐標,即可建立包含攝像機位姿旋轉(zhuǎn)矩陣、平移矩陣的非線性方程組,通過旋轉(zhuǎn)矩陣約束關(guān)系,利用最小二乘擬合算法解算出旋轉(zhuǎn)矩陣和平移矩陣,及待求的像面中心.實驗步驟如下:
步驟 1利用 CAD制圖軟件設計靶標,在預定的位置繪制24個圓,用來構(gòu)建世界坐標系;
步驟 2將魚眼鏡頭攝像機固定在光學平面上,鏡頭擺放的角度無特殊要求;
步驟 3在鏡頭前放置直線位移平臺,其上固定著靶標,靶標面垂直于平臺的直線位移方向,但靶標與鏡頭的位置無特殊要求;
步驟 4采集圖像,保證圖像包含所有標定圓;
步驟 5利用直線位移平臺使靶標水平移動固定距離 L,按步驟 4要求再采集 1幅圖像,重復此步驟,獲取多幅圖像;
步驟 6利用求質(zhì)心方法獲得每個圓的圓心坐標.
圖2 魚眼鏡頭標定實驗平臺Fig.2 Experimental environment of calibration
圖3 標定實驗中采集的原始圖像Fig.3 Original image in calibrating
考慮到魚眼圖像的劇烈畸變,邊緣的基準圓將畸變?yōu)闄E圓,為了提高標定的精度,在實驗中采用每幅圖像中間部分的 4個基準圓準確地提取出圓心的位置.從圖 3中提取出部分基準圓圓心的圖像坐標如表1所示.
利用上述坐標數(shù)據(jù)可以解算出旋轉(zhuǎn)矩陣 R和平移矩陣T分別為
表1 基準圓圓心圖像坐標與世界坐標Tab.1 Image coordinate and world coordinates for the Tab.1 centre of basic circle
根據(jù)解算出的旋轉(zhuǎn)矩陣 R、平移矩陣 T、像面中心(u0,v0),結(jié)合已建立的包含攝像機位姿旋轉(zhuǎn)矩陣、平移矩陣的非線性方程組,以及旋轉(zhuǎn)矩陣約束關(guān)系,利用采集得到的一組基準圓的圓心圖像坐標,反向解算對應的世界坐標,并與這組基準圓實際的世界坐標進行比對,以驗證標定結(jié)果的正確性,具體驗證結(jié)果如表2所示.
表2 基準圓圓心坐標實際值與解算值比較Tab.2 Comparison between practical values and calculation values for basic circle
由圖4和表2可見,各個基準圓圓心圖像坐標的實際值和解算值基本一致,證明利用上述魚眼鏡頭標定方法獲得的標定結(jié)果是準確可靠的.
圖4 x和y實際值與解算值比較Fig.4 Practical and calculation value comparison of x and y
鏡面到成像點的距離l,屬于成像系統(tǒng)內(nèi)部參數(shù),是標定徑向畸變系數(shù)的必要前提,但它無法通過直接測量得到.根據(jù)等距投影成像原理,如果空間 2點到魚眼鏡頭的入射角相同,則在成像面上的徑向距離相等.
空間中不同的2點p1、p2點在魚眼成像面上的像點為同一點 p′,p1、p2點到鏡面的垂直距離為 h1、h2,到光軸的水平距離為s1、s2,從圖5(a)中可以得
圖5 參數(shù)l標定Fig.5 Calibration of parameter l
從式(10)中可得知,只要在空間中找到2點能成像于魚眼圖像中同一點,測得這2點的水平和垂直距離,即可求得l.
設計特殊的標定靶標如圖 5(b)所示,針對靶標模式在程序中建立5個基準點,一方面用來保證成像系統(tǒng)坐標系與靶標坐標系的一致性,另一方面便于捕獲標定點在圖像中的像素值.在保證靶標與成像系統(tǒng)垂直的前提下,移動靶標位置,多次測量、計算取平均值得到l為17.8 mm.
將徑向畸變分解到x、y軸上得
式中rx和ry為像點到圖像中心點的距離在x和y軸上的分量,圖像中心點為(u0,v0),空間一點入射角為ω的p點在圖像平面的成像點為p′(u,v),那么
將式(11)代入到式(12)得
kx、ky標定模型如圖6(a)所示.
圖6 kx和ky標定Fig.6 Calibration of kx,ky
表中Δuxi、Δuyi為標定點的成像點到圖像中心的像素個數(shù)差,Δsi為標定點到光軸的實際空間距離,為θi標定點的入射角,θ= a rctan.求取實驗數(shù)據(jù)的平均值得 kx= 3 .2145,ky= 3 .2258.
表3 kx的標定結(jié)果Tab.3 Calibration results of kx
表4 ky的標定結(jié)果Tab.4 Calibration results of ky
根據(jù)前文標定得出的成像系統(tǒng)參數(shù),建立虛擬像面,推導出空間任意一點與畸變圖像點之間的對應關(guān)系.空間任意一點 p在虛擬像面上的點與在魚眼圖像之間的關(guān)系如圖7所示.
圖7 魚眼圖像矯正模型Fig.7 Model for rectification of fish-eye lens image
式中 z'為矯正后虛擬像面的高度,也可理解為矯正圖像的放大倍數(shù),z'與矯正后的圖像大小成正比.若令z'等于 p點與成像系統(tǒng)間的空間垂直距離,則可以通過魚眼圖像中的像素點求得物點的世界坐標.這為利用魚眼圖像實現(xiàn)AGV空間定位奠定了基礎(chǔ).本文以兩點定位算法[10]為例,定位結(jié)果與實際測量結(jié)果如表 5 所示,其中 z'=2.08×106μm.
表5 AGV定位結(jié)果Tab.5 Localization results of AGV m
目前常見的魚眼鏡頭矯正模型有球面模型、對數(shù)極限模型、多項式變換模型等.不同光學結(jié)構(gòu)的鏡頭適合于不同的矯正模型,通常為不同類型魚眼鏡頭選擇適合的矯正模型是較為困難的.因此,本文采用支持向量機替代矯正模型.支持向量機是基于統(tǒng)計學習理論的機器學習方法,依據(jù)結(jié)構(gòu)風險最小化原則,將輸入空間映射到一個高維內(nèi)積空間中提高學習機的泛化能力,能有效地解決過度學習問題,具有良好的擬合、回歸和分類的能力.
由于本文中解決的是一個非線性多項式函數(shù),故采用多項式核函數(shù)為宜.將 SVM 應用于函數(shù)擬合問題,首先考慮用線性回歸函數(shù)
擬合數(shù)據(jù){x , y } ,i = 1,? ? ?,n , x ∈ Rd,y ∈ R 的問題,
i i i i并假設所有訓練數(shù)據(jù)都可以在精度ε下無誤差地用線性函數(shù)擬合,即
這里αi?和αi將只有小部分不為0,它們對應的樣本就是支持向量,一般是在函數(shù)變化比較劇烈的位置上的樣本;而且這里只涉及內(nèi)積運算,只要用核函數(shù)K( xi, xj) 替代式(19)和式(20)中的內(nèi)積運算就可以實現(xiàn)非線性函數(shù)擬合.
為將魚眼鏡頭的實際成像點恢復為理想像點,要建立理想像點與畸變圖像對應像點間的映射關(guān)系.在嘗試點陣模型、網(wǎng)格模型的基礎(chǔ)上設計了一種較大差異的環(huán)形訓練模型.
如圖 8(a)所示,以畸變中心為圓心,繪制圓環(huán),每一圓環(huán)的半徑為其相鄰內(nèi)層圓環(huán)半徑的 1.5倍,每一圓環(huán)的寬度也為其相鄰內(nèi)層圓環(huán)寬度的 1.5倍;過畸變中心做 6條直線,相鄰直線間的夾角為 30°;以各圓環(huán)與過畸變中心直線的交點作為訓練點.訓練模型在魚眼鏡頭下的成像如圖 8(b)所示.圖 8(a)中可以看到,沿畸變中心向外的方向,雖然圓環(huán)的半徑增量和寬度都是遞增的,但圖 8(b)圖中圓環(huán)的半徑增量和寬度卻基本保持不變,因此基于此訓練模型能夠在靠近魚眼邊緣的圖像獲得清晰的像點.而傳統(tǒng)模型在靠近魚眼邊緣處無法得到理想像點進行準確的標定,影響矯正效果.
圖8 SVM訓練Fig.8 SVM training
利用SVM實現(xiàn)魚眼圖像矯正流程如圖9所示.
圖9 基于SVM的魚眼圖像矯正的流程Fig.9 Flow chart based on SVM for fish-eye lens image Fig.9 rectification
依據(jù)訓練模型,建立實際空間像點的徑向距離與魚眼畸變圖像中相應像點徑向距離的對應關(guān)系.將物理空間像點的徑向距離作為 SVM 的輸入,相應魚眼畸變圖像中像點的徑向距離作為 SVM 的輸出,對SVM進行訓練.通過訓練好的SVM模型,將矯正后圖像像素的徑向距離轉(zhuǎn)換為魚眼畸變圖像中的徑向距離,從而建立矯正后圖像與畸變圖像對應像素的坐標映射.基于此算法的魚眼鏡頭圖像矯正結(jié)果如圖10所示.
圖10 基于SVM訓練的魚眼圖像矯正結(jié)果Fig.10 Fish-eye lens image rectification results based on Fig.10 SVM
為了進一步研究利用SVM方法矯正后的圖像與未畸變的魚眼圖像間的關(guān)系,按照本文提出的訓練模型,采用等距的同心圓將圖 10(c)從內(nèi)到外劃分為 7個區(qū)間.在不同的區(qū)間中隨機抽取角點.通過提取角點在矯正前和矯正后圖像中的坐標位置來分析不同區(qū)間內(nèi)的矯正規(guī)律.每個區(qū)間中的像素點在矯正前、后的圖像中距圖像中心點的平均距離(像素個數(shù))如表6所示.
表6 矯正結(jié)果分析Tab.6 Rectification results analysis
通過以上分布規(guī)律發(fā)現(xiàn),利用本文提出的 SVM訓練模型得到的矯正圖像在區(qū)間 1和區(qū)間 2在內(nèi)矯正前、后像素點位置變化不大;而區(qū)間 3到區(qū)間 7內(nèi)的像素點在矯正前、后則保持了一種相對穩(wěn)定的變化率,與本文提出的 SVM 訓練模型相一致如圖8(b).由于本文采用的是嚴格符合等距投影規(guī)律的魚眼鏡頭,若依照等距投影定理入射角與徑向距離的關(guān)系改進本文提出的SVM訓練模型圖8(a),將得到更為理想的圖像矯正結(jié)果.
基于魚眼鏡頭構(gòu)建全方位視覺系統(tǒng).在建立全方位視覺系統(tǒng)模型的基礎(chǔ)上,提出圖像中心、鏡面到成像點距離 l、徑向畸變系數(shù) kx、ky的詳細標定方法.利用參數(shù)標定結(jié)果,依據(jù)等距投影定理和支持向量機訓練的方法實現(xiàn)魚眼圖像的像素點矯正和全圖像矯正.實驗結(jié)果證明,本文提出的方法有效、實用,
有助于促進魚眼鏡頭在多目標識別、跟蹤、AGV視覺自主導航等領(lǐng)域的應用.
[1]Goedeme T,Nuttin M ,Tuytelaars T,et al.Omnidirectional vision based topological navigation[J].International Journal of Computer Vision,2007,74(3):219-236.
[2]Hrabar S,Sukhatme G S. Omnidirectional vision for an autonomous helicopter[C]// 2003IEEE International Conference. Los Angeles,USA,2003:558-563.
[3]Sun Y J,Cao Q X,Chen W D. An object tracking and global localization method using omnidirectional vision system[C]//Proceedings of Intelligent Control and Automation on 2004 Fifth Word Congress. Harbin,China,2004:4730-4735.
[4]Li S G. Full-view spherical image camera[C]// Proceedings of the 18th International Conference on Pattern Recognition. Hong Kong,China,2006:386-390.
[5]Ying X H,Zha H B. Using sphere images for calibrating fisheye cameras under the unified imagingmodel of the central catadioptric and fisheye cameras[C]//Proceedings of the 18th International Conference on Pattern Recognition.Hong Kong,China,2006:539-542.
[6]Brauer-Burchardt C,Voss K. A new algorithm to correct fish-eye and strong wide-angle-lens-distortion from Single Images[C]// Proceedings of the 2001International Conference on Images Processing. Saloniki,Greece,2001:225-228.
[7]Hartley R,Kang Sing Bing. Parameter-free radial distortion correction with centre of distortion estimation[C]//Proceedings of the Tenth IEEE International Conference on Computer Vision. Beijing,China,2005:1834-1841.
[8]邱志強,陸宏偉,于起峰. 用射影不變性糾正魚眼鏡頭畸變[J]. 應用光學,2003,24(5):36-38.
Qiu Zhiqiang,Lu Hongwei,Yu Qifeng. A correction method of fish-eye lens distortion using projective invariability[J].Journal of Applied Optics,2003,24(5):36-38(in Chinese).
[9]陳啟軍,張宏輝,王月娟. 一種簡單的機器人魯棒自適應軌跡跟蹤控制算法[J]. 華中科技大學學報:自然科學版,2004,32(增):256-268.
Chen Qijun,Zhang Honghui,Wang Yuejuan. A simple robust adaptive trajectory tracking control for robotic manipulators[J].Journal of Huazhong University of Science and Technology:Nature Science Edition,2004,32(Suppl):256-268(in Chinese).
[10]李雁斌,曹作良,劉常杰,等. 基于粒子濾波的全方位視覺傳感器實現(xiàn)移動機器人導航[J].傳感技術(shù)學報,2009,22(5):745-750.
Li Yanbin,Cao Zuoliang,Liu Changjie,et al. Omnidirectional visual sensor for mobile robot navigation based on particle filter[J].Chinese Journal of Sensors and Actuators,2009,22(5):745-750(in Chinese).