1. 程式人生 > >matlab相機標定

matlab相機標定

昨天使用opencv進行相機標定出了各種各樣的問題,浪費了大量的時間!!!

在老師的推薦下,初步使用了matlab進行標定,體驗良好,實在太好用了!!!!不多說,開始上步驟:

1.下載安裝matlab

安裝包和具體步驟百度有,我這裡使用的是matlab7.0

2.下載相機標定工具箱,下載網址和例項教程如下:

http://www.vision.caltech.edu/bouguetj/calib_doc/index.html

下載完成好,將下載包解壓到matlab目錄下的ToolBox資料夾下,我重新把資料夾重新命名為calib,

然後,在matlab中新增該目錄,就可以直接呼叫了,過程如下:File-->Set path-->Add Folder,之後新增該目錄完成了


3.開始標定

3.1開啟工具箱

命令列中輸入calib開啟工具箱


3.2選擇模組

圖片數目較小時(小於20),選擇Standard標準模式,否則選擇第二個,點選後出現下面視窗


3.3選擇圖片目錄

將目錄改到拍攝的圖片目錄,如圖所示。


選中後,會自動出來目錄下的圖片

3.4讀入圖片

點選標定工具箱的 Image names


首先是輸入系列圖片名字,不要輸入其中的序號,比我的的圖片是01,02這樣的,直接省略不輸入,直接回車

其次是輸入圖片格式,我的是bmp檔案,輸入b

然後會自動讀入圖片了

3.3選擇角點

點選工具箱的Extraction  grid corners按鈕


首先是選擇要進行下一步的圖片數目,如果是所有圖片,直接回車

其次選擇標定圖示的大小,也就是一會滑鼠選擇角點是,滑鼠指點的大小,我選擇的是5X5的

再然後是視窗大小11X11

最後一個為是否選擇自動選中方塊數目引擎,這裡使用了自動引擎,不用手動輸入x,y方向的方塊數目,直接回車就好

接下來選擇標定板的四個角點就好,如圖所示:


選擇這樣的四個角點,左上角作為第一個點,順時針選擇其餘三個就好,接下來繼續進行選擇


首先是每個方框的大小,在這裡使用的x X y的大小為30X30

剩餘的兩個選項是關於相機畸變的,目前菜鳥不太會,直接跳過了,角點識別出來如圖所示:


接下來繼續同樣步驟設定其他圖片,大同小異,部分步驟被省略

3.4開始標定

角點提取完成後,點選Calibration開始標定,標定完成後,點選save軟體進行儲存,相機的引數即被儲存下來。

如此便使用matlab簡單完成了相機標定,實在是比opencv方便多了。