雙目視覺 標定+矯正 (基于MATLAB)

      網友投稿 1000 2022-05-29

      準備雙目攝像頭:

      準備標定板

      標定的開始階段最需要用到的標定板,可以直接從opencv官網上能下載到:

      http://docs.opencv.org/2.4/_downloads/pattern.png

      具體如下:

      然后,建議固定到盒子上,方便等下拍照。

      采集圖片

      建議左右攝像頭,同時拍照,分別保存起來,可以參考? opencv 雙目攝像頭拍照

      保存大約20到30張圖片,MATLAB2016的這個工具十分挑剔,如果角度不好的話,將使用不了,因此在采集圖像時,最好多的采集一些,拍的時候要拍到全部;注意事項:是測量好屏幕上每個方格的大小,這個標定的時候會用到,比如20mm。

      一、 標定步驟

      1.? 調出標定工具箱

      在命令行輸入stereoCameraCalibrator,出現如下界面:

      2.????? 勾選相應的選項

      然后將上面的“Skew”、“Tangential Distortion”以及“2 Coefficients”等選項選上,將“3 Coefficients”選項去掉,如下:

      3.????? 載入圖像

      然后點擊 Add images(添加圖像),出現如下界面:

      Camera 1 代表左攝像頭,Camera 2 代表右攝像頭,分別選擇存放著左右圖像的文件夾,需要特別注意的是棋盤格的邊長應該根據打印的實際大小填寫 (例如20mm),單位可以選擇

      然后點擊OK,程序會自動檢測采集的圖像到底有多少可以使用,可以說MATLAB2016的這個工具十分挑剔,如果角度不好的話,將使用不了,因此在采集圖像時,最好多的采集一些。(此處只是為了說明標定步驟,所以使用的圖像較少)。

      4.????? 標定

      點擊按鈕,開始標定:

      5.????? 校準

      雙目視覺 標定+矯正 (基于MATLAB)

      從下圖可以看到,平均的標定誤差以及 標定過程中誤差較大的的圖像對。

      點擊選擇不想接受的誤差直方圖,可以直接在左邊的圖像對中找到對應的圖像,右鍵選擇“Remove and Recalibrate”:

      可以重復上述步驟,直到認為誤差滿足標定需求為止。

      6.????? 導出參數

      點擊選擇Export camera parameters, 并點擊“OK”。

      二、????? 參數讀取

      標定結束后,會得到如下標定參數:

      CameraParameters1與CameraParameters2為左右攝像頭的內部參數,RotationOfCamera2與TranslationOfCamera2為兩個攝像頭的旋轉、平移參數。

      1. ?? 兩個攝像頭的平移和旋轉參數

      平移參數可直接使用;但旋轉參數需進行轉置才能使用。

      2. ? 攝像機內參矩陣

      雙擊框框這里:

      CameraParameters1與CameraParameters2中包含如下文件:

      IntrinsicMatrix存放的是攝像頭的內參,只與攝像機的內部結構有關,需要先轉置再使用。

      例如:左相機的參數,點擊CameraParameters1

      IntrinsicMatrix 存放的是攝像頭的內參

      RadialDistortion 和 TangentialDistortion 中存放的是畸變參數

      先看一下?IntrinsicMatrix 參數,雙擊一下?IntrinsicMatrix

      這個和OpenCV中是轉置的關系,注意不要搞錯。

      對應

      即:

      420.758142829981 ? ? ?-0.457820850080972 ? ? 344.440839504749

      0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 423.157176819330 ? ? ? ?? 242.870587685168

      0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 1

      3.????? 畸變參數

      RadialDistortion 和TangentialDistortion 中存放的是畸變參數,

      RadialDistortion 為 徑向畸變,攝像頭由于光學透鏡的特性使得成像存在著徑向畸變,可由K1,K2,K3確定。

      TangentialDistortion 為 切向畸變,由于裝配方面的誤差,傳感器與光學鏡頭之間并非完全平行,因此成像存在切向畸變,可由兩個參數P1,P2確定。

      不過在使用時,需要注意參數的排放順序,即K1,K2,P1,P2,K3。切記不可弄錯,否則后續的立體匹配會出現很大的偏差。

      例如, 左相機為例:

      RadialDistortion :0.016004928431323 , 0.041062484186359? 對應 K1,K2? ; K3默認為0

      TangentialDistortion :0.005480700176874 , 0.003979285309815 ? 對應 ?P1,P2

      所以在opencv中使用時,K1,K2,P1,P2,K3順序 :

      0.016004928431323 , 0.041062484186359 ,?0.005480700176874 , 0.003979285309815? ,0

      希望對你有幫助。

      MATLAB 機器視覺

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:《智能系統與技術叢書 生成對抗網絡入門指南》—1.1.3新時代的人工智能
      下一篇:Qt入門系列開發教程【基礎控件篇】QLabel文本標簽
      相關文章
      国产成人亚洲综合色影视| 亚洲最大AV网站在线观看| 久久亚洲精品成人| 毛茸茸bbw亚洲人| 亚洲精品久久久www| 日日摸日日碰夜夜爽亚洲| 亚洲欧美国产欧美色欲| 亚洲一线产品二线产品| 亚洲91精品麻豆国产系列在线| 亚洲图片中文字幕| 亚洲无限乱码一二三四区| 亚洲黄色免费电影| 亚洲精品在线播放| 亚洲国产av美女网站| 亚洲av无码不卡久久| 最新亚洲卡一卡二卡三新区| 亚洲综合国产成人丁香五月激情| 亚洲午夜无码毛片av久久京东热| 亚洲人成人网毛片在线播放| 亚洲中文字幕无码爆乳| 亚洲成AV人片在WWW| 色偷偷尼玛图亚洲综合| 亚洲AV无码一区二区三区久久精品 | 国产AV无码专区亚洲A∨毛片| 人人狠狠综合久久亚洲婷婷| 亚洲av中文无码乱人伦在线播放 | 亚洲中文字幕无码mv| 亚洲AV日韩AV永久无码色欲| www亚洲一级视频com| 亚洲午夜国产片在线观看| 国产成人麻豆亚洲综合无码精品| 亚洲欧洲日产国码无码久久99| 亚洲Av无码专区国产乱码DVD| 亚洲综合久久综合激情久久| 亚洲女人影院想要爱| 亚洲中文字幕无码久久2020| 亚洲AV日韩精品一区二区三区| 亚洲中文字幕伊人久久无码| 亚洲成a人片在线观看无码专区| 91嫩草私人成人亚洲影院| 亚洲精品亚洲人成在线播放|