使用kalibr标定时要注意什么
這篇文章主要介紹“使用kalibr標定時要注意什么”,在日常操作中,相信很多人在使用kalibr標定時要注意什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”使用kalibr標定時要注意什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1. 模型的選擇
這里主要是總結在各種issue中大家提出的使用kalibr中模型選擇的問題,以及各種模型之間利弊;
pinhole-radtan: 最常見的針孔模型+布朗畸變模型, 適用于大多數的角度小于120的相機, 其中畸變參數包含了徑向畸變k1,k2和切向畸變p1,p2; 如果相機的畸變情況不是很嚴重,這個模型基本都可以; 比如我的DOV為150的相機, 也可以用這個且去畸變效果很好;
pinhole-equi:針孔模型+等距畸變模型,也就是KB模型所需要選擇的類型,該模型的使用范圍也很廣,大部分的魚眼鏡頭也可以,注意8參數的KB模型的畸變參數為k1,k2,k3,k4,雖然也是四個數,但與前一個模型不同的是,這里只有徑向畸變的參數,而沒有切向畸變tangential distortion,投影時對應的公式也不同;同時這也是opencv中cv::fisheye使用的模型;
Omni-radtan: 適用于大部分的魚眼鏡頭;
ds/eucm: 也是使用于魚眼鏡頭,參數更少,更緊湊.但是同樣也沒有切向畸變;這兩個模型的好處就是在精度和速度之間有很好的平衡,比較適用于實時的,基于優化的slam;
對于角度很大的魚眼相機,如180, 210等,即使模型合適, kalibr也存在初始化錯誤的可能,因此可以多采集幾個ros包試一下;
如果處在選模型階段,可以先從KB模型開始, 也就是先使用pinhole-equi模型標定一下,檢查去畸變效果;
同時需要注意的是雖然KB模型和pinhole-fov模型從理論上可以適用于大于180的魚眼相機,但是kalibr的中的測試都是基于針孔模型, 結果顯示這兩個模型對大于180度的相機的表現效果并不好;
角度>180其實可以使用eucm-none進行標定;
2. 標定時注意事項:
采集數據集時盡量保證標定板出現在相機圖像的各個角度和各個角落,否則標定結果可信度不高, 對畸變大的相機有可能還會出現初始化錯誤等提示;
kalibr推薦的幀率為4HZ, 這里有一個降幀的命令:
rosruntopic_toolsthrottlemessagesold_topic4.0new_topic
用這個命令可以將原本的rosbag中的old_topic降幀成4hz的new_topic, 然后邊rosbag play, 邊rosbag record new_topic 即可;
總結
以上是生活随笔為你收集整理的使用kalibr标定时要注意什么的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win10美吱er吱er,Win10修改
- 下一篇: 继无界汽车后,魅族申请无界手机商标