从像素坐标到相机坐标_鱼眼相机模型EUCM(一)
前言
相較于普通的針孔相機,魚眼相機的能夠觀測到的范圍更廣,在一定程度上其實是可以增強視覺的魯棒性的。針對于魚眼相機的模型其實有挺多的,也有論文對這些模型進行了評測,但對于本人來說,最熟知的還是針孔模型,如果換到其他的模型的話,可能會丈二摸不著頭腦?;诖?#xff0c;希望自己能對這些模型有些通透的理解。
畸變的簡單介紹
為了獲得好的成像效果,相機的前面會加透鏡,透鏡的加入會使得光的傳播發生變化:首先是透鏡自身的形狀對光線傳播的影響,其次是在組裝過程中,透鏡和成像平面不可能完全平行,這也會使得光線穿過透鏡投影到成像平面時的位置發生變化[1]。這里主要有兩種畸變,徑向畸變主要是由于透鏡的形狀引起的,而切向畸變是由于相機在組裝過程中由于不能使得透鏡和成像平面嚴格平行引起的。
Extended Unified Camera Model
對與EUCM模型來說,它需要標定6個參數
,其中前四個是相機的內參,后兩個是畸變洗漱,具體的可以使用kalibr工具進行標定(由于現在手頭上也沒有相機,標定的內容先放一邊了)。有了這6個參數,就可以計算圖像的坐標了。它的模型如下圖所示:- :相機坐標系坐標
- :投影平面坐標系坐標(橢球坐標)
- :歸一化平面坐標系坐標(M平面)
根據上面的坐標、內參和畸變系數可以得到他們之間的關系。
相機坐標到像素坐標
歸一化平面坐標
其中
,x,y,z都是相機坐標系下的坐標。相較于普通的針孔模型,他的歸一化坐標多了一個系數, 都是畸變系數。像素坐標
有了歸一化平面坐標之后,就可以使用內參進行投影了
像素坐標到相機坐標
在實際情況中,從圖像中得到特征點,這是他的像素坐標,如何準確的恢復到世界坐標系中也是很很重要的,畸變的影響會導致它最后反投影的點的結果不準確。
橢球面坐標
該坐標可以通過像素坐標進行轉換,假設橢球面坐標
,那么它的值為其中
, 。歸一化平面坐標和橢球面坐標就是z不相同。相機坐標
這里的恢復就需要用到兩幀圖像的對應橢球面坐標進行三角化才可以得到相機坐標,橢球面坐標其實就相當于針孔相機去畸變之后的坐標,根據它得到的路標點才是比較準確的。三角化的過程就不敘述了。
總結
粗略看了一下文獻[2]中的代碼,它主要的改變其實就是將去畸變坐標變成了橢球面中的坐標,用該坐標來進行投影和反投影,計算基本矩陣和本質矩陣,在優化方面,雅克比矩陣也變化了,改變在g2o的代碼中。模型的變化應該就是處理的點的變化,不論是像素坐標還是歸一化平面坐標,或者是轉化為其他坐標,他們都是為了更好的恢復3D點。看了這篇文章和論文讓我對畸變模型有了更好的理解。
參考資料
[1]《視覺SLAM十四講》高翔、張濤等
[2] Liu, Guo, Feng, et al. Accurate and Robust Monocular SLAM with Omnidirectional Cameras[J]. Sensors, 2019, 19(20):4494.
總結
以上是生活随笔為你收集整理的从像素坐标到相机坐标_鱼眼相机模型EUCM(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 360浏览器部分网页打不开解决方法360
- 下一篇: Anker 上架 SOLIX C1000