上篇《相機標定原理(一)》重描述的圖像坐標系之間的轉換都是基于理想情況下的轉換,并沒有考慮到圖像由于光學鏡頭制作工藝帶來的畸變問題,所以這篇文章主要以魚眼矯正和標定算法為主介紹。 1、什么是魚眼鏡頭本文所指超廣角鏡頭是一種焦距為16 mm或更短的并且視角接近或等于180?的鏡頭,俗稱“魚眼鏡頭”。 為使鏡頭達到最大的攝影視角,這種攝影鏡頭的前鏡片直徑很短且呈拋物狀向鏡頭前部凸出,與魚的眼 睛頗為相似,“魚眼鏡頭”因此而得名。 2、為什么需要魚眼矯正魚眼鏡頭成像角度有180度之大,隨著視場角的增加,圖像邊緣經(jīng)常會出現(xiàn)畸變。所以在魚眼視角下的應用就需要將視圖矯正,然后再進行應用 3、魚眼矯正模型在上篇文章中說明的小孔成像原理,遵守透視投影規(guī)則,所以成像不存在畸變。但是在魚眼成像中,由于其超大視場角的原因,不遵守透視投影,物方點,投影中心和像方點不在同一直線上,基于共線方程的經(jīng)典模型不再適用于魚眼相機的成像模型 一般來講,投影模型[1]分為5種,根據(jù)不同的投影模型來制作不同的鏡頭 由圖 2 可以看出, P 為物方點, 經(jīng)過投影中心,彎曲投射到了 p,而不是沿直線到達 p′ 。 目前魚眼鏡頭的成像模型大都可以用以上其中一種公式近似表達, 等距投影是理想的球面投影, 但 是魚眼鏡頭的等效投影面是一個近似球面的不規(guī)則曲面而非理想曲面, 考慮到擬合度,可以選擇更一般 的多項式作為投影模型 ,使用泰勒公式展開 4、魚眼矯正原理在實際工程中魚眼相機標定使用的最多的是等距投影模型,為了平衡計算量和精度,一般取到泰勒展開式的前五項 假設相機坐標系下的一點P(x,y,z),如果按照理想的小孔成像模型投影到圖像坐標系,不存在畸變,投影點為P0(a,b),投影點到圖像中心的距離為r,θ為入射角。由于畸變存在實際上的投影點為P'(x',y'),實際投影點到圖像中心的距離為rd,θd為折射角, 根據(jù)泰勒展開式,可以將真實點坐標和畸變后坐標近似表示出來 在實際魚眼矯正過程中,是已知畸變后的像點位置求實際的入射角,由于相機方程已知,可以根據(jù)實際坐標和相機焦距,逆向求解k1,k2,k3,k4的值。所以魚眼矯正的本質(zhì)就是求解關于θ的一元高次方程。 常見的求解方法有: ·二分法·牛頓法·不動點迭代 魚眼矯正方法已經(jīng)非常成熟,在matlab工具包和opencv中都已經(jīng)集成,使用者只需要按照需求采集圖像樣本,輸入即可。 https://ieeexplore./document/1642666/citations#citations 直播預告 END |
|