1. 程式人生 > >攝像機標定03_標定過程(Camera Calibration)

攝像機標定03_標定過程(Camera Calibration)

攝像機標定過程

為了進行攝像機標定,必須已知世界座標系中足夠多三維空間點的座標,找到這些點在影象中的投影的二維影象座標,並建立對應關係。

平面標定板的幾大優勢:非常易於操作;可以製作的非常精確;可以方便用在背光照明的應用上,只需要使用透明材料製作放置標誌點的底盤即可。

將標定標記在世界座標系中的座標記為Mi,將標定標記中心點投影到影象座標系的座標記為mi,將攝像機引數表示為c,c包含了攝像機的內參和外參(eg.針孔攝像機模型中,c=(f,k,sx,sy,cx,cy,α,β,γ,tx,ty,tz)。這裡必須注意的是外參對應的世界座標系是在標定板上,例如座標原點在標定板最中心的標定標記的中心,座標系的x

軸和y通過使提取出的標定標記中心點座標mi與軸分別於標定標記的排列行方向和列反向一致,在標定板與成像平面平行時z軸與光軸方向一致,然後通過投影計算得到的座標π(Mi,c)的距離最小化來計算攝像機引數:

d(c)=i=1k||miπ(Mi,c)||2>min
式中,k=mn是標定板上標定標記的數量,這個問題是一個非常複雜的非線性最優化問題。因此,需要為這些引數提供更好的初始值,攝像機內參的初始值可以在影象感測器以及說明中得到。攝像機外參的初始值一般很難得到。

然而,這個優化過程並不能得到所有攝像機引數,因為我們選擇的攝像機模型的待解引數過多:
這裡寫圖片描述這裡寫圖片描述
為了解決這個上述簡併性(degener-acies)問題,攝像機必須使用多幅影象進行標定,在這些影象中標定板的位置要求不同,這樣才能避免上述問題發生。例如,對針孔攝像機而言標定物件不能在所有拍攝的標定物件中均互相平行

。而對於遠心攝像機來說,為了解決以上問題,標定板必須繞所有軸旋轉。假設我們使用l幅影象進行標定,那麼就必須求得l組外參(α1,βl,γl,tx,l,ty,l,tz,l)。我們將內參和l組外參放在攝像機引數向量c中,然後我們必須解決下面的最優化問題來標定攝像機:

d(c)=j=1li=1k||mi,jπ(Mi,c)||2>min
式中,mi,j表示在第j幅標定影象中的第i個標定標記的座標,如果在影象中標定板放置的位置和方向合適的話,就可以求得所有攝像機引數的唯一解。為了使求得的攝像機引數準確度更高,所有影象中標定板的位置應該能覆蓋影象的四個角,這主要是因為角落處的鏡頭畸變最大,這樣就可以得到徑向畸變係數k最準確的值。

相關推薦

攝像機標定03_標定過程Camera Calibration

攝像機標定過程 為了進行攝像機標定,必須已知世界座標系中足夠多三維空間點的座標,找到這些點在影象中的投影的二維影象座標,並建立對應關係。 平面標定板的幾大優勢:非常易於操作;可以製作的非常精確;可以方便用在背光照明的應用上,只需要使用透明材料製作放置標誌點的

攝像機標定01_面陣攝像機Camera Calibration

面陣攝像機的攝像機模型 機器視覺應用中常用的兩種鏡頭:普通鏡頭和遠心鏡頭。 使用普通鏡頭時,世界座標系到影象座標系的投影為透視投影。普通鏡頭與針孔攝像機實現的投影方式相同,因此將攝像機與普通鏡頭的組合成為針孔攝像機模型。 使用遠心鏡頭時,世界座標系到影象座

相機標定Camera calibration及實踐

在機器視覺領域,相機的標定是一個關鍵的環節,它決定了機器視覺系統能否有效的定位,能否有效的計算目標物。相機的標定基本上可以分為兩種,第一種是相機的自標定;第二種是依賴於標定參照物的標定方法。前者是相機拍攝周圍物體,通過數字影象處理的方法和相關的幾何計算得到相機引數,但

【學習ARToolkit小記之三】 攝像頭標定Camera Calibration

本部分內容只用於個人的學習記錄與記錄,詳細內容請參考官方網站教程。 一、開發環境 1、作業系統:Windows 7(64位) 2、程式設計環境:Microsoft Visual Studio 2010 3、ARToolkit版本:ARToolKit-2.72.1 二、

OpenCV相機標定及距離估計單目

相機標定基本知識 對於針孔攝像機模型,一幅檢視是通過透視變換將三維空間中的點投影到影象平面。投影公式如下: 或者 這裡(X, Y, Z)是一個點的世界座標,(u, v)是點投影在影象平面的座標,以畫素為單位。A被稱作攝像機矩陣,或者內參數矩陣。(cx, cy)是基

無人駕駛-鐳射雷達與相機聯合校準Lidar Camera Calibration

1.鐳射雷達與攝像頭效能對比 在無人駕駛環境感知裝置中,鐳射雷達和攝像頭分別有各自的優缺點。 攝像頭的優點是成本低廉,用攝像頭做演算法開發的人員也比較多,技術相對比較成熟。攝像頭的劣勢,第一,獲取準確三維資訊非常難(單目攝像頭幾乎不可能,也有人提出雙目或三目攝像頭去做);另

ios in-house 公布整個過程startssl認證

pri nload con popu ios 自己 連接 star 沒有 首先大體說一下步驟: 1。申請蘋果enterprise 賬號 為應用生成app id,provision profile等 詳見:http://www.th7.cn/Program/I

elasticsearch aggregation 過程未完

elasticsearch aggregation 過程在查詢過程中,ES是將整個查詢分成幾個階段的,大體如下:QueryPhaserescorePhasesuggestPhaseaggregationPhaseFetchPhase對於全文檢索,可能還有DFSPhase。從源代碼QueryPhase 類可以看

主機A傳輸到服務器A的過程大概陳述

hcna#<----- ----->#為註釋部分數據從主機A上傳送到服務器A上主機A的IP地址:10.1.1.1/24 24的子網掩碼mac 適配器標誌:MAC:11-22-33-AA網關為:10.1.1.254想進行數據傳輸,先要把數據進行封裝經過傳輸層,加上TCP頭組成數據段,經過網絡

Serializable 指示一個類可以序列化;ICloneable支持克隆,即用與現有實例相同的值創建類的新實例接口;ISerializable允許對象控制其自己的序列化和反序列化過程接口

att 文本 所有 可能 成員 強制 void inter 適用於 Serializable : 序列化是指將對象實例的狀態存儲到存儲媒體的過程。在此過程中,先將對象的公共字段和私有字段以及類的名稱(包括類所在的程序集)轉換為字節流,然後再把字節流寫入數據流。在隨後對對象進

raid-6磁盤陣列損壞導致數據丟失的恢復過程圖文教程

服務器 磁盤陣列 raid6 數據恢復 服務器數據恢復 一、故障描述機房突然斷電導致整個存儲癱瘓,加電後存儲依然無法使用。經過用戶方工程師診斷後認為是斷電導致存儲陣列損壞。整個存儲是由12塊日立硬盤(3T SAS硬盤)組成的RAID-6磁盤陣列,被分成一個卷,分配給幾臺Vmware的ESX

三、存儲過程Stored Procedure與遊標Cursor

行數據 exceptio 結構 行數 into 完成 num replace 多個 一、存儲過程   一組為了完成特定功能的SQL語句集,經編譯後存儲在數據庫中,用戶通過指定存儲過程的名字並給出參數,來執行它。 在大型數據庫中,存儲過程和觸發器具有重要的作用。無論是存儲過程

SAS--SQL過程基礎版

技術 right pan 刪除 圖片 ret || 計算 eat 本文總結SAS中的SQL過程編程技術(基礎版) Part 1:【select語句綜述】子句順序(select和from是必要的其他可選):selectfromwheregroup byhavingorder

分頁存儲過程代碼

number bit exec ber into create balloons variable 多少 use BalloonShop select * from Product --20個字,1, 5 CREATE PROCEDURE GetProductsOnC

GCC編譯器原理------編譯原理三:編譯過程2-2---編譯之語法分析

tails 需要 表達式 一個數 就是 out 和數 margin 操作符 2.2 語法分析 語法分析器(Grammar Parser)將對由掃描器產生的記號進行語法分析,從而產生語法樹(Syntax Tree)。整個分析過程采用了上下文無關語法(Context-free

一個前端開發者換電腦的過程IDE篇

做出 插件 分享圖片 我們 簡體 ima com 軟件 中文   一臺全新的電腦,需要做出怎樣的改變,才可以搖身一變成為前端開發者能用的電腦呢。首先,我們需要安裝一個編輯器,這裏我們選擇目前最火的vscode。   先去到它的官網,把對應版本的vscode下載下來。   

自制Spark安裝詳細過程含Scala

推薦spark安裝連結http://blog.csdn.net/weixin_36394852/article/details/76030317 一、scala下載安裝與配置          1.下載 &n

強化學習RLAI讀書筆記第三章有限馬爾科夫決策過程finite MDP

第三章 有限馬爾科夫決策過程 有限馬爾科夫決策過程(MDP)是關於評估型反饋的,就像多臂老虎機問題裡一樣,但是有是關聯型的問題。MDP是一個經典的關於連續序列決策的模型,其中動作不僅影響當前的反饋,也會影響接下來的狀態以及以後的反饋。因此MDP需要考慮延遲反饋和當前反饋與延遲反饋之間的交換。

程式地址空間:虛擬地址原理及發展過程圖解說明

目錄   簡單理解的空間佈局圖及驗證: 早期的記憶體管理機制 分段 分頁 簡單理解的空間佈局圖及驗證: 用兩段程式碼測試一下: 1 #include<stdio.h> 2 #include<stdlib.h> 3

HTTP-web伺服器接收到client請求後的處理過程很詳細

      1. 客戶發起情況到伺服器網絡卡;     2. 伺服器網絡卡接受到請求後轉交給核心處理;     3. 核心根據請求對應的套接字,將請求交給工作在使用者空間的Web伺服器程序     4. Web伺