一種精確校正超廣角攝像頭圖像畸變的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及圖像處理和計算機視覺技術(shù)領(lǐng)域,特別涉及一種精確校正超廣角攝像 頭圖像畸變的方法。
【背景技術(shù)】
[0002] 今年來,隨著數(shù)字信號處理的快速發(fā)展、計算機處理能力的快速提升,基于超廣角 鏡頭的視覺系統(tǒng)在虛擬實景、視頻監(jiān)控、智能交通、醫(yī)療、機器人導航等領(lǐng)域得到了廣泛的 應用。以往在這些應用中采用的鏡頭拍攝視角范圍小,所拍攝圖像不能反映所拍攝場景的 全部信息。為了在同一場景中能獲取到更多的信息,目前大多采用多個攝像頭在不同角度 下進行信息采集,或者通過系統(tǒng)控制攝像頭巡航掃描。多個攝像頭系統(tǒng)不但加大設備的建 設和維護成本,而且布線難度也大大增加;快速巡航系統(tǒng)需要加設攝像頭移動、轉(zhuǎn)動平臺, 在加大成本的同時,也降低了系統(tǒng)的穩(wěn)固性和使用壽命。而超廣角攝像頭能夠很好的解決 這些問題。
[0003] 由于超廣角攝像機拍攝的圖像畸變非常嚴重,如果要利用這些嚴重畸變的圖像的 投影信息,就需要將這些變形的圖像校正為符合人體視覺習慣的透視投影圖像。目前人們 提出了各種各樣的校正算法,總的來說可以概括成兩個方面:(1)成像建模,通過對超廣角 鏡頭成像面進行建模,以模型約束去計算校正參數(shù);(2)從2維和3維空間對圖像畸變進行 校正,通過2維或3維坐標的轉(zhuǎn)換和對畸變鏡頭的標定來實現(xiàn)校正。
[0004] 傳統(tǒng)的校正方法中,一是采用高階多項式模型,將畸變函數(shù)進行正向或者逆向的 泰勒展開,根據(jù)需要的精度確定展開的階數(shù)。這類方法應用于數(shù)碼相機等畸變較小的鏡頭 具有很高的精度,而在廣角、超廣角鏡頭上,該模型只能補償影像中心附近的鏡頭畸變,在 影像四周還存在明顯的系統(tǒng)誤差,畸變校正的精度不高,且邊緣處畸變最大;二是采用除法 模型,根據(jù)立體視覺匹配約束條件將問題轉(zhuǎn)換為特征值求解問題。該方法提高了 130度左 右的廣角鏡頭畸變校正的校正精度,而對于畸變較小或者畸變更大的系統(tǒng),求解的畸變系 數(shù)誤差很大,該模型不適合超廣角、高精度的畸變校正。如專利申請?zhí)?01410424349. 8"一 種魚眼鏡頭標定后魚眼圖像校正的方法",多項式階數(shù)過高過于復雜,并且靠近魚眼圖像邊 緣處的校正精度很低,校正的有效角度較小。
[0005] 在這些算法中,存在建模復雜、測量困難、校正精度不高的缺點:簡單的畸變校正 技術(shù)尚無法校正角度偏大的部分;復雜的畸變校正技術(shù)測量困難,且難以滿足實時性。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的是提供一種精確校正超廣角攝像頭圖像畸變的方法,實現(xiàn)簡單,校 正精度高,實用性強,穩(wěn)定可靠。
[0007] 本發(fā)明一種精確校正超廣角攝像頭圖像畸變的方法,首先基于畸變模型計算校正 誤差,再根據(jù)下降算法迭代求精,最后根據(jù)求精獲得的攝像頭內(nèi)部參數(shù)和畸變參數(shù)校正畸 變圖像,具體包括以下步驟:
[0008] 步驟1、建立畸變圖像與世界坐標系之間對應的位置關(guān)系:
[0009] 首先設世界坐標系任一點0 = [X,Y, Z, 1]τ,對應校正圖像的攝像機坐標為P = [XC,YC,ZJT,畸變圖像坐標為Q= (u,v),校正圖像坐標為Q' = (u',v'),投影成像模型由以 下公式描述:
[0010] P = MO (1)
[0011] 式⑴中,M為投影矩陣,MV?3' M = [R|T],為旋轉(zhuǎn)矩陣,Γε?3χ1為 平移向量;
[0012] 再建立畸變圖像與校正圖像的關(guān)系模型如下:
[0013]
[0014]
[0015] 式中,kp k2, k3, k4, k5, k6為徑向畸變參數(shù),p p p2為切向畸變參數(shù),fx,fy,u。,V。為 攝像頭內(nèi)部參數(shù),r為攝像機坐標系下投影點到攝像機坐標系原點的距離,X。= X VZ。,y。= Yc/zc;
[0016] 步驟2、利用布設有黑白相間的長方形或正方形棋盤格的平面標定板拍攝多張圖 片,作為標定圖像,檢測該標定板上每四個棋盤格相交的點即角點的圖像坐標,根據(jù)步驟1 的投影成像模型建立標定板和標定圖像的對應關(guān)系,計算圖像坐標反投影誤差:| |d-d' 11, 式中M · 11表示12范數(shù),d為標定板角點的圖像坐標,d'為標定板角點的世界坐標系坐 TH- 標,通過步驟1的投影成像模型在圖像坐標下的投影,建立目標函數(shù),=Σ?κ· -4'Il2,ε 為反投影誤差平方,m為角點總數(shù),j為角點的索引號,判斷目標函數(shù)是否滿足預設的精度 要求,若不滿足精度要求,則利用下降迭代算法進行非線性優(yōu)化求精,得到優(yōu)化后的鏡頭內(nèi) 部參數(shù)和畸變參數(shù);
[0017] 步驟3、根據(jù)步驟2獲得的鏡頭內(nèi)部參數(shù)和畸變參數(shù),代入公式(2)和公式(3)計 算,得到校正后圖像的空間數(shù)據(jù),其中,校正圖像坐標u'、ν'和X。、y。之間的關(guān)系為u' = Xc · fx+u〇, v' = yc · fy+v〇;
[0018] 步驟4、利用最近鄰插值公式對校正圖像賦值完成校正,最近鄰插值公式: g(u',v')=g(u'int,v'int),g<y,v )為圖像在 ,v )的像素值,V int,v int為 V,v的整數(shù)部分。
[0019] 所述的下降迭代算法是LM下降迭代算法,具體步驟如下:
[0020] 1、初始化攝像頭內(nèi)部參數(shù)(fx,fy,u。,v。)、投影矩陣M和畸變參數(shù)c。,初始化步長 跨度V: = 2 ;
[0021] 2、計算每一個標定圖像坐標(Ul,V1)對所有畸變參數(shù)C k的偏導數(shù)矩陣J :
[0022]
[0023] 3、計算Η: = 為
J的轉(zhuǎn)置矩陣,初始化步長λ : = max(diag(H)),其中diag 為矩陣對角線上的元素;
[0024] 根據(jù)當前鏡頭內(nèi)部參數(shù)(fx,fy,u。,V。)、投影矩陣M和畸變參數(shù)Ck估計標定圖像 坐標,k表示在當前迭代下參數(shù)的更新次數(shù),計算目標函數(shù)氣
[0025] 4、求解方程(JtJ+ λ I) δ = -Jtε k,I為單位矩陣,得到增量δ,更新畸變參數(shù)Ck+1: =Ck+ δ ;
[0026] 5、計算更新畸變參數(shù)后的目標函婁
尸1 :;
[0027] 6、如果ε k+1= ε k,那么停止迭代計算,當前畸變參數(shù)ck即為優(yōu)化后的畸變參數(shù); 如果ε k+1< ε k,更新參數(shù)c: = ck+1,ε : = ε k+1,V: = 2,轉(zhuǎn)到2 ;如果ε k+1> ε k,更新參 數(shù) ε : = ε k,λ : = ν* λ,轉(zhuǎn)到 4。
[0028] 針對多項式模型和除法模型校正精度低、有效角度小的不足,本發(fā)明利用非線性 尋優(yōu)技術(shù)獲得超廣角攝像頭鏡頭內(nèi)部參數(shù)和畸變參數(shù),根據(jù)標定圖像的參數(shù)精確地校正超 廣角圖像,能夠獲取比其他畸變校正技術(shù)更大的可用視角。本發(fā)明利用通過鏡頭標定方法 獲得的參數(shù)對畸變圖像進行校正,不但適用于超廣角鏡頭的畸變校正,對畸變較小的普通 鏡頭和廣角鏡頭同樣適用,對圖像整體畸變校正角度大、精度高。進一步的,本發(fā)明使用自 制的平面標定板標定,只需要標定一次就能在任何環(huán)境下對圖像進行校正,穩(wěn)定可靠,實用 性強。
【附圖說明】
[0029] 圖1為本發(fā)明中自制的平面標定板示意圖;
[0030] 圖2為本發(fā)明中標定流程圖;
[0031] 圖3為本發(fā)明中圖像畸變校正流程圖;
[0032] 以下結(jié)合附圖和實施例對本發(fā)明做進一步詳述。
【具體實施方式】
[0033] 本發(fā)明一種精確校正超廣角攝像頭圖像畸變的方法,首先基于畸變模型計算校正 誤差,再根據(jù)下降算法迭代求精,最后根據(jù)求精獲得的攝像頭內(nèi)部參數(shù)和畸變參數(shù)校正畸 變圖像,具體包括以下步驟:
[0034] 步驟1、建立畸變圖像與世界坐標系之間對應的位置關(guān)系:
[0035] 首先設世界坐標系任一點0 = [X,Y, Z, 1]τ,對應校正圖像的攝像機坐標為P = [XC,YC,ZJT,畸變圖像坐標為Q= (u,v),校正圖像坐標為Q' = (u',v'),投影成像模型由以 下公式描述:
[0036] P = MO (1)