【Sky Eye 開闊未來】3 步驟!標定完成雙目視覺

一.   概述

上一篇文章介紹了 解析!雙目視覺標定原理” ,說明了雙目立體視覺標定的原理與必要的約束。為了幫助各位加快校正的速度,此篇章搭配 自由軟體Octave 與 Matlab 公開提供的工具,僅需要執行三大步驟就能夠輕鬆完成鏡頭校正
此次介紹章節為 3 步驟!標定完成雙目視覺" 亦屬於雙目立體視覺篇章(藍色章節),趕快依照步驟一同完成雙目立體標定吧 !

此外,世平集團 ATU 團隊精心設計的一套 Sky Eye 開發版,幫助我們一同開闊未來 !!  
大大通精彩方案    開闢未來_雙目立體視覺帶你進入 FCW  & LDW 新視野

 



雙目立體視覺技術指南 (前車偵測) - 文章架構示意圖
  

 

二.   雙目立體視覺標定三步驟

此篇文章將會介紹如何進行標定,雙目立體標定的方式可分為三大步驟
第一步為收集真實世界資訊,也就是取得兩顆鏡頭拍攝不同角度的棋盤格的影像資訊。
第二步為計算真實世界座標與鏡頭座標關係,這裡介紹如何使用 Octave的標定工具進行計算。
第三步為重新建構雙目立體空間,透過 重映射(Remap) 算法完成校正。


第一步 : 收集真實世界資訊

首先,第一步就是收集真實世界的資訊,如下圖所示,為雙目立體視覺標定拍攝方式之示意圖。這裡說明棋盤格與拍攝方式,並建議同時顯示兩顆鏡頭的畫面,以利於拍攝。除此之外,必須注意的事就是請多嘗試拍攝不同角度的棋盤格資訊,盡可能將棋盤格涵蓋至整個畫面上,或甚至多拍攝遠近距離的變化。至少取得 3 張以上的資訊,才可進行第二步的校正分析。

 


雙目立體視覺標定拍攝方式之示意圖

 

二步 : 計算真實世界座標與相機座標關係

接續,第二步就是計算真實世界座標與相機座標關係。這裡需要先行下載 Octave Linux 的開發平台,相似於 Matlab 是一個快速開發的工具。並可從 Matlab的官方網站下載 Camera Calibration Tool,皆下載完成後即可藉由 Octave 平台開啟 Camera Calibration Tool 進行校正計算

 


嘗試拍攝不同角度之示意圖

 

通常雙目視覺校正方式皆會先進行單顆鏡頭的校正分析(Calibration) 以較適當的方式計算出鏡頭內部參數(如焦距、光學原點、失真係數等等)。接續,進行兩科鏡頭的校正分析,去校正兩顆鏡頭的影像空間

因此 Camera Calibration Tool 設計也是如此,故先介紹單科鏡頭的校正分析,雙目視覺有兩顆鏡頭皆以同樣方式校正。如下圖所示,為 Octave & Camera Calibration Tool 單顆鏡頭校正操作說明。從 Octave平台選擇執行路徑至Camera Calibration Tool資料夾後,於命令行輸入 calib_gui 即執行程式。並且如同示意圖中操作方式一樣,點選 Standard 模式後,依序執行步驟1至步驟5

 


Octave & Camera Calibration Tool 單顆鏡頭校正之操作說明



各步驟說明如下,而程式執行過程中,若出現以下未提起的參數設定皆使用 default 即可!

-> 單顆鏡頭的標定校正方式 

步驟1 : 讀取影像( Image names) , 須先設定檔案名稱以及副檔名即可讀取影像資料,如下方示意圖所示。

     除此之外,所拍攝的圖片請移動至該程式的目錄底下。


Octave & Camera Calibration Tool 讀取檔案之操作說明


步驟2 : 提取棋盤格之特徵點(Extract gird corners),這裡需以點選的方式框出範圍,點即棋盤格中的內角點範圍由左上、右上、右下、左下點擊。
             其中請注意程式段落,若是出現Size dX of each square along the X direction ([]=100mm) 這樣資訊,請於此處輸入棋盤格內方塊的長與寬的實際長度。



Octave & Camera Calibration Tool提取特徵點之操作說明

 

步驟3 : 進行校正分析(Calibration), 開始計算真實世界座標與相機座標關係,分析完成後即顯示出相關係數 (如焦距、光學原點、失真係數等等)。


Octave & Camera Calibration Tool校正分析後之參數展示圖


步驟4 : 顯示校正分析(Calibration), 這裡將模擬顯示所拍攝的各個棋盤格角度。


Octave & Camera Calibration Tool校正分析之展示圖


步驟5 : 儲存 (Save), 參數資訊紀錄於 Calib_result 檔案之中,並分別將名稱改成 calib_result_right 以及calib_result_left ,即可開始著手進行兩個鏡頭的校正。

 

-> 雙顆鏡頭的標定校正方式 

如單顆鏡頭類似。此時須要開啟 Camera Calibration Tool 中的另一支程式stereo_gui 。照上述方法開啟執行後,即出現以下畫面,並依序執行動作。


Octave & Camera Calibration Tool 雙目鏡頭校正之操作說明


步驟1 : 讀取兩顆鏡頭參數(Load left and right calibraiotn files),依照單顆鏡頭步驟5所儲存的檔案名 稱讀取即可。


步驟2 : 校正兩顆鏡頭之校正參數(Run stereo calibration),依兩顆鏡頭參數進行校正,重新校正兩顆鏡頭實際的空間關係,故須考量旋轉矩陣與平移矩陣的影響,如下方示意圖所示。


Octave & Camera Calibration Tool雙目校正分析後之參數展示圖


步驟3 : 顯示兩顆鏡頭之校正分析結果,如圖所示,此工具會將棋盤格與鏡頭的空間關係呈現出來。


Octave & Camera Calibration Tool 雙目校正分析之結果展示圖


根據以上步驟,完成雙目立體標定與校正分析後,即可獲得兩顆鏡頭的參數、旋轉矩陣與平移矩陣。而後續將利用這些參數以及 OpenCV 的函數產生相對應的空間映射表(Map) ,如下方程式段所示,展示如何使用函式計算出映射表(Map)

 

第三步 : 重新建構雙目立體空間

得到映射表後即可進入執行影像校正,如下圖所描述的演算法流程圖一樣,影像校正所使用的算法就是所謂的 Remap ,藉此重新描述影像空間與像素位置。
*** 雙目立體標定方式就與魚眼校正的方式相同,僅差異是否有對兩顆鏡頭進行空間標定。

 



雙目立體視覺之基本流程圖


經過以上步驟就完成了雙目立體標定與校正,亦表示兩顆鏡頭的影像能達到極線約束的條件。如下圖呈現了雙目立體標定前與標定後的差異,經由標定後的影像完成校正魚眼之外,還能符合極線約束的條件

*** 以綠色虛線作為校正完成的參考線,所有特徵點 (任一點) 理應呈現同一個水平面或是列上。


雙目立體標定前之示意圖



雙目立體標定後之示意圖

 

後續, 僅須透過 區塊比較(Block Match) 的匹配算法去計算視差,就能獲得更好的效果 ! 建構出良好的三維空間,如下展示雙目立體視覺結果示意圖 !

 


雙目立體視覺結果之示意圖


大概上,雙目立體視覺的流程就是取得影像後,藉由雙目立體標定法所得到的參數進行影像校正,即可利用 區塊比較(Block Match) 獲得建構良好的三維空間,即視差圖。下一篇文章,即將進入到車道偏移偵測的篇章(橘色章節)  ”精闢 !車道偏移原理解密 () “,帶領各位提取車道資訊與辨識車道線 !

 

三.  參考文件

[1] 每日頭條網站 - 雙目立體視覺技術的實現
[2] 每日頭條網站 - 雙目立體視覺測量系統應用
[3] 每日頭條網站 - ADAS單目/雙目/三目到底有什麼區別?
[4] 維基百科 - Block-matching algorithm
[5] 論文 - Performance Analysis between Basic Block Matching and Dynamic Programming of Stereo Matching Algorithm
[6] 教材 - Stereo Vision by Professor Fei-Fei Li

[7] 維基百科 - Epipolar geometry
[8] 維基百科 - 單應性
[9] 論文 - A Flexible New Technique for Camera Calibration
[10] 數學工廠 - Camera Calibration 相機校正
[11] CSDN - 雙目測距(雙目標定、雙目校正和立體匹配)
[12] 官方網站 – GNU Octave
[13] 官方網站 – Camera Calibration Toolbox for Matlab

 
如有任何相關 雙目立體視覺(Stereo Vision) 技術問題,歡迎至博文底下留言提問 !!
接下來還會分享更多 雙目立體視覺(Stereo Vision) 的技術文章 !!敬請期待 【Sky Eye 開闊未來】 !!


 

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論

哭阿

哭阿

2021年5月28日
威力你好,我標定完雙眼鏡頭,要進行測距,有沒有教學可以跟著操作
ATU 伊布小編 (一部)

ATU 伊布小編 (一部)

2021年5月25日
嗨 你好 ! 抱歉 ~ 文章的連結方式沒有呈現妥當!! 以下為 Camera Calibration Tool 下載連結 http://www.vision.caltech.edu/bouguetj/calib_doc/htmls/example.html
哭阿

哭阿

2021年5月21日
你好 我沒有看到 Matlab的官方網站下載 Camera Calibration Tool