單目相機標定原理


 
 

 
 

相機標定目的:
獲取攝像機的內參和外參矩陣,同時也會得到每一副標定圖像的旋轉和平移矩陣。 內參和外參可以對之后相機拍攝的圖像就進行矯正,得到畸變相對很小的圖像。

 

原理:
成像模型的坐標系為:世界坐標系 --> 相機坐標系 --> 圖像坐標系 --> 像素坐標系

先說從相機坐標系到圖像坐標系的變換:
從針孔成像模型說起:

 
 

 
 

 
 

————————————————————————————
相機坐標系中實際的點坐標為Q(X, Y, Z)
對應的圖像(坐標系)平面上的點為 q(x, y , f)

 

理想情況如上所示,但實際上成像芯片的中心通常不在光軸上。


 
 

 
 

原本的焦距是f,這里把f拆成2個不同的焦距,一個是x軸的焦距,一個是y軸的焦距


 
 

因此最終計算的結果為:
 
 

將實際中的點Q(X, Y, Z)映射到投影平面上坐標為 (x , y)的點的過程稱為投影變換。

這種變換可以使用齊次坐標。


 
 

 
 
 
 

給q(x, y)增加了一個維度w,即為q(x, y, w)


 
 

 
 

下圖所示,網上一些資料中也有這種形式:
x0、y0為在圖像平面上的主點坐標,是Cx,Cy的另一種形式,
其中s為坐標軸傾斜參數,理想情況下為0,其他參數都是一樣的。


 
 

—————————————————————————————————
我們已經得到了內參矩陣,能夠從相機坐標系轉換到圖像坐標系上,
接下來說如何得到外參矩陣,將其從世界坐標系轉換到相機坐標系上

從世界坐標系轉換到相機坐標系上屬於剛體變換,即不會發生形變,也就是說只有旋轉平移

公式符號說明:
帶有下標 w 的是世界坐標系
帶有下標 c 的是相機坐標系

設旋轉矩陣為 R, 平移矩陣為 T
 
 
 
 

再把偏移矩陣T加上即可,
偏移矩陣T為 [Tx, Ty, Tz]的轉置,是X、Y、Z方向上的平移。


 
 

將旋轉矩陣R和偏移矩陣T合起來即得外參矩陣即為:


 
 

——————————————————————————————————
圖像坐標系和像素坐標系之間的轉換:
像素坐標系和圖像坐標系都在成像平面上,只是各自的原點和度量單位不一樣。
圖像坐標系的原點為相機光軸與成像平面的交點,通常情況下是成像平面的中點或者叫principal point。圖像坐標系的單位為mm,屬於物理單位,
而像素坐標系的單位是pixel,我們平常描述一個像素點都是幾行幾列。所以
這兩者之間的轉換如下:其中dx和dy表示每一列和每一行分別代表多少mm,即1pixel = dx mm
點(u,v)為像素坐標系上的點,對應的圖像坐標系上的點為(x,y)

 
 

——————————————————————————————————————
有了一系列參數后就能推導整個公式了。(這里借用一下別人的圖)
 
 

 

相機的內參和外參可以通過張正友標定獲取。通過最終的轉換關系來看,
一個三維世界中的坐標點,可以在圖像中找到一個對應的像素點,

但是反過來,通過圖像中的一個點找到它在三維中對應的點就很困難,因為我們並不知道等式左邊的Zc值。這個Zc可近似看做相機坐標系中相機到物體的距離。

在我看來,二維圖像中的一個點,對應在三維空間中是一條線,因此如果不知道相機劇被測物體距離,是無法從二維圖像上的點推導出三維空間中某個點的坐標的。
————————————————————————————————
透鏡畸變
(寫了這么多,寫不動了,透鏡畸變原理可以在《學習OpenCV》第11章找到相關內容,挺詳細的)

 
 

 
 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM