內參、外參、畸變參數三種參數與相機的標定方法與相機座標系 ...
文章推薦指數: 80 %
實際其fx=F*Sx,其中的F就是焦距上面的f,Sx是像素/每毫米即上面的dx,其是最後面圖裏的後兩個矩陣進行先相乘,得出的,則把它看成整體,就相當於4個內參。
請輸入正確的登錄賬號或密碼
註冊
忘記密碼
首頁
未分類
正文
內參、外參、畸變參數三種參數與相機的標定方法與相機座標系的理解
原創
tap880507
2018-08-2509:58
https://blog.csdn.net/yangdashi888/article/details/513563851、相機參數是三種不同的參數。
相機的內參數是六個分別爲:1/dx、1/dy、r、u0、v0、f。
u0,v0爲圖像像素座標系中光軸投影座標即主點座標,1/dx,1/dy分別爲在x方向上每個像素的物理尺寸,在y方向上每個像素的物理尺寸,gama爲x,y不垂直時的扭曲係數,一般爲0;。
opencv1裏的說內參數是4個其爲fx、fy、u0、v0。
實際其fx=F*Sx,其中的F就是焦距上面的f,Sx是像素/每毫米即上面的dx,其是最後面圖裏的後兩個矩陣進行先相乘,得出的,則把它看成整體,就相當於4個內參。
其是把r等於零,實際上也是六個。
dx和dy表示:x方向和y方向的一個像素分別佔多少長度單位,即一個像素代表的實際物理值的大小,其是實現圖像物理座標系與像素座標系轉換的關鍵。
u0,v0表示圖像的中心像素座標和圖像原點像素座標之間相差的橫向和縱向像素數。
相機的外參數是6個:三個軸的旋轉參數分別爲(ω、δ、 θ),然後把每個軸的3*3旋轉矩陣進行組合(即先矩陣之間相乘),得到集合三個軸旋轉信息的R,其大小還是3*3;T的三個軸的平移參數(Tx、Ty、Tz)。
R、T組合成成的3*4的矩陣,其是轉換到標定紙座標的關鍵。
其中繞X軸旋轉θ,則其如圖: 注意:在每個視場無論我們能提取多少個角點,我們只能得到四個有用的角點信息,這四個點可以產生8個方程,6個用於求外參,這樣每個視場就還賺兩個方程來求內參,則其在多一個視場即可求出4個內參。
因爲六個外參,這就是爲什麼要消耗三個點用於求外參。
畸變參數是:k1,k2,k3徑向畸變係數,p1,p2是切向畸變係數。
徑向畸變發生在相機座標系轉圖像物理座標系的過程中。
而切向畸變是發生在相機制作過程,其是由於感光元平面跟透鏡不平行。
其如下:1.徑向畸變:產生原因是光線在遠離透鏡中心的地方比靠近中心的地方更加彎曲徑向畸變主要包含桶形畸變和枕形畸變兩種。
下面兩幅圖是這兩種畸變的示意: 它們在真實照片中是這樣的: 2.切向畸變:產生的原因透鏡不完全平行於圖像平面,這種現象發生於成像儀被粘貼在攝像機的時候。
下面圖片來自於《學習opencv》p413。
其中畸變的形象示意圖是如下:其總的轉換關係:下面是普通攝像頭標定後的輸出值,其如下:其中的fx、fy是f/dx、f/dy得出來的值。
其中的cx、cy一般不是正好是圖像分辨率的一半,其是有偏差的,一般越好的攝像頭則其越接近於分辨率的一半。
上面例子使用的攝像頭是一個普通的1280x720分辨率的攝像頭,其偏差還是蠻大的。
下面的數據是比較好的攝像頭羅技720p的,其分辨率也是1280x720的分辨率。
可以看出其更接近分辨率的一半。
2、相機的標定方法與意義:(一)什麼是攝像機標定 在圖像測量過程以及機器視覺應用中,爲確定空間物體表面某點的三維幾何位置與其在圖像中對應點之間的相互關係,必須建立攝像機成像的幾何模型,這些幾何模型參數就是攝像機參數。
在大多數條件下這些參數必須通過實驗與計算才能得到,這個求解參數的過程就稱之爲攝像機標定。
(一)相機標定的意義 無論是在圖像測量或者機器視覺應用中,攝像機參數的標定都是非常關鍵的環節,其標定結果的精度及算法的穩定性直接影響攝像機工作產生結果的準確性。
因此,做好攝像機標定是做好後續工作的前提,是提高標定精度是科研工作的重點所在。
其標定的目的就是爲了相機內參、外參、畸變參數。
其標定方法大概有三種如下:1.線性標定方法的大概數學公式是:其求解過程如下:注意:這種標定是沒有考慮到相機畸變的非線性問題,意思是這種標定是在不考慮相機畸變的情況下使用。
2.非線性標定方法:當鏡頭畸變明顯時必須引入畸變模型,將線性標定模型轉化爲非線性標定模型,通過非線性優化的方法求解相機參數:3.兩步標定法: 1.Tsai的經典兩步法 概念:Tsai基於RAC約束(RadialAlignmentConstrain)提出的兩步法,在求解過程中將CCD(電耦合器件)陣列感光元的橫向間距和縱向間距當作已知參數,求解的攝像機內部參數:有效焦距f;鏡頭徑向畸變係數k1,k2;非確定性尺度因子xs;圖像中心或主點u0,v0。
外部參數:世界座標系與攝像機座標系之間的旋轉矩陣R與平移向量t。
求解:首先利用最小二乘法求解超定線性方程組,求得模型外部參數;然後求解內部參數,如果攝像機無透鏡畸變,可通過一個超定線性方程組解出,如果存在一個以二次多項式近似的徑向畸變,則利用一個包含三個變量的目標函數進行優化搜索求解。
1.相機座標系:相機座標系是連接圖像物理座標系與世界座標系的橋樑,其中相機座標的系的座標原點是:鏡頭的光心---其也是相機座標系裏的投影中心。
1.內參數:由於相機座標系使用的是毫米制的單位,而圖像平面使用的像素爲單位。
內參數的作用就是在這兩個座標系之間進行線性的變化。
相機光軸中心Z軸方向與像平面交點稱爲投影中心,其座標爲,其單位爲像素。
在圖像平面上像素和毫米之間的關係有: (1)根據小孔成像原理,圖像平面上的一點(x,y)對應在相機座標系下的座標爲: (2)改寫成矩陣形式爲: (3)聯立1,3式: 其中爲相機內矩陣參數,一般來說,內陣矩陣數要求解的有(fx,fy,cx,cy)。
攝像機的透視投影模型(即針孔成像模型): 設OXYZ爲世界座標系,uv爲以像素爲單位的圖像座標系。
如果物點P在世界座標系下的座標爲(X,Y,Z),對應的圖像點p在圖像座標系的座標爲(u,v),可以有: 在該式中,fu、fv、u0、v0只與攝像機內部參數有關,故稱矩陣M1爲內參數矩陣。
其中fu=f/dX,fv=f/dY,分別稱爲u軸和v軸上的歸一化焦距;f是相機的焦距,dX和dY分別表示傳感器u軸和v軸上單位像素的尺寸大小。
u0和v0則表示的是光學中心,即攝像機光軸與圖像平面的交點,通常位於圖像中心處,故其值常取分辨率的一半。
現以NiKonD700相機爲例進行求解其內參數矩陣:就算大家身邊沒有這款相機也無所謂,可以在網上百度一下,很方便的就知道其一些參數—— 焦距f=35mm 最高分辨率:4256×2832 傳感器尺寸:36.0×23.9mm根據以上定義可以有:u0=4256/2=2128 v0=2832/2=1416 dx=36.0/4256 dy=23.9/2832fu=f/dx=4137.8 fv=f/dy=4147.3該模型中其他一些參數的含義解釋: 爲投影深度,其幾何意義是目標點P在攝像機座標系中座標的Z分量,一般情況下,該值令爲1.R,t則構成了攝像機的外參數矩陣,分別稱爲旋轉矩陣和平移矩陣。
R是一個3X3的矩陣,t則是一個3X1的矩陣。
R可以使用四元素法表示也可以使用歐拉角表示,各有各的好處。
攝像機的仿真,可以簡單的認爲是對內外參數的仿真。
只要理解了以上模型中各個量的含義,就可以很容易的模擬一個攝像機。
發表評論
登录
所有評論
還沒有人評論,想成為第一個評論的人麼?請在上方評論欄輸入並且點擊發布.
相關文章
linux下卸載nginx
十年河東,十年河西,莫欺少年窮
學無止境,精益求精
1.首先輸入命令ps-ef| grep nginx檢查一下nginx服務是否在運行。
ps-ef|grepnginx
2.停止Nginx服務
/usr/sbin/ng
天才臥龍
2022-04-3014:21:37
DockerCompose使用
version:"3.0"
services:
redis6379:
image:redis:latest
container_name:redis6379
ports:
-"63
DayVK
2022-04-3014:18:56
wpf無法從流中加載光標
使用wpf加載圖片光標時,無論是用光標文件的絕對路徑還是使用uri資源的方式都不得行,及報無法從文件中加載光標或無法從流中加載光標。
這中情況,就很有可能是光標cur文件不是標準的光標文件。
比如你是通過png圖片轉的光標文件。
HelloLLLLL
2022-04-3014:17:16
ASP.NETCoreAPI版本控制
場景:
任何不斷髮展變化的API都需要API版本控制策略。
你的API版本可以適應根據API使用者的期望而切換不同版本變得有所不同。
我通常建議將以下API版本控制策略作爲整體API管理系統的一部分。
1.如果你的API處於早期測試版本中,爲了
東方朔劉男
2022-04-3014:11:36
matlab練習程序(離散系統辨識與響應)
上一篇熟悉了連續系統辨識與響應,這一篇熟悉一下離散系統辨識與響應。
計算機通常處理的系統爲離散系統,這裏我們先將連續系統轉換爲離散系統,然後再進行處理。
流程上還是先構造離散系統並根據控制量得到響應,然後用子空間迭代算法(以後會單獨實現一次
DspTian
2022-04-3014:11:26
監視網頁變化
說到這個話題,可能第一反應就是RSSFeed。
但是,我要看的網站不提供這個服務,而且,我希望的是監視特定的網頁的變化,而不是整個網站的變化,而且希望在有變化時,能夠“主動”地通知我,比如讓揚聲器發個聲。
查了下,有免費的監視網站,但是,我
平靜寄居者
2022-04-3014:11:16
springcache及springboot如何使用redis連接池
一、springboot整合Redis
要整合Redis的話,最好的方式是使用SpringCache,僅僅通過@Cacheable、@CachePut、@CacheEvict、@EnableCaching等註解就可以輕鬆使用R
前度劉郎
2022-04-3014:10:26
C#/VB.NET合併PDF頁面
本文以C#及vb.net代碼爲例介紹如何來實現合併PDF頁面內容。
本文中的合併並非將兩個文檔簡單合併爲一個文檔,而是將多個頁面內容合併到一個頁面,目的是減少頁面上的空白區域,使頁面佈局更爲緊湊、合理。
下面,將分別從兩個示例來展示合併,即:
E-iceblue
2022-04-3014:10:16
微信步數修改器_一鍵修改98800(2022最新版)
本工具支持微信、支付寶、QQ,按照下面的圖文教程,一步一步來,非常簡單,幾分鐘搞定~
無圖無真相,下面是我刷成功的截圖:
開始表演
第一步:下載小米運動APP
1、在手機的應用商店搜索下載App:ZeppLife(原小米運
犬小哈
2022-04-3014:09:15
在.NET中使用Access數據庫的注意事項
這幾天做了個網站的管理頁面,使用的Access數據庫,結果輕車熟路地栽了幾個不大不小的跟頭。
把經驗總結一下,省得記性不好,下次接着犯。
1、Access不支持多語句查詢!!!
這是第一個讓人鬱悶的,千萬不要指望和在SQLServer中那樣
蘭亭
2022-04-3014:05:45
輕量級Ajax解決方案:Anthem.NET初探
官方網站:http://anthemdotnet.com下載地址:http://sourceforge.net/projects/anthem-dot-net相比較AJAX.NET而言,Anthem.NET絕對稱得上輕量級,而且對於新手而言
蘭亭
2022-04-3014:05:35
令人啼笑皆非的《銀河系漫遊指南》
看過這部電影,有點接受不了國外牛人的惡搞了,這是純粹的惡搞科幻片。
摘錄幾段:
毛巾是星際漫遊者最有用的東西
《銀河系漫遊指南》中關於毛巾這個詞條也有一些解釋。
一條毛巾,它解釋說,大概是對一個星際漫遊者來說最有用的東西了。
從一個
蘭亭
2022-04-3014:05:35
[轉貼]細說HTML元素的ID和Name屬性的區別
可以說幾乎每個做過Web開發的人都問過,到底元素的ID和Name有什麼區別阿?爲什麼有了ID還要有Name呢?!而同樣我們也可以得到最classical的答案:ID就像是一個人的身份證號碼,而Name就像是他的名字,ID顯然是唯一的,而N
蘭亭
2022-04-3014:05:35
[轉貼]程序員如何防止腦疲勞:下午補充一些乾果
一個醫生朋友針對我下午犯困的狀況,提出了一些防止腦疲勞的建議。
主要是調節酸鹼平衡,當用腦過度或體力透支時,體液呈酸性;長期酸性血液會使大腦神經功能退化。
因此要多喫鹼性食物,如海帶、綠葉蔬菜、柑橘水果、豆類、茶葉,少喫酸性食物,如肉
蘭亭
2022-04-3014:05:35
不可否認,傲遊(Maxthon)確實越來越垃圾
曾幾何時,因爲選項卡、鼠標手式、自動填表喜歡上了傲遊。
現在隨着它的一次次升級,假死和崩潰的次數越來越頻繁,我不得不小心翼翼地注意着自己的一舉一動,生怕它又要搞罷工。
看樣子到了該裝IE7的時候了-_-
蘭亭
2022-04-3014:05:35
T
tap880507
24小時熱門文章
最新文章
carsim2016和matlab2016b的聯合仿真,找不到carsims-function的解決辦法
歐拉角旋轉之困惑
MACboost、XCODE安裝和vins-mobile的調試
VINS-MONO環境搭建
Qt5.7+VS2015環境搭建
最新評論文章
AgricultureDroneMarketBusinessStatusbyTopKeyCompanies,IndustryKeyChallengesDuetoCor
如何在matlab座標軸上輸入希臘字符和開根號符號
SS7MarketProvidesanIn-DepthInsightofSales,Revenue,AnalysisofGrowthFactorsandReview
EnterpriseContentManagement(ECM)MarketSize,Share,GlobalIndustryAnalysis,Trends&Forecast
CloudPBXMarketReport:IndustryTrends,Size,Revenue,Component,CompanyProfilesAnalysis
Highaltitudelongendurance(PseudoSatellite)MarketCAGRValue,GlobalIndustryBriefAnalysis
ij.startcanon:OfficialManuals:ij.start.canon
Takeassignmenthelpertoresolvethepaperquerieseasily
延伸文章資訊
- 1畸变参数三种参数与工业相机的标定方法与相机坐标系的理解
相机标定内参和外参. 在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应 ...
- 2摄像机内参、外参矩阵_葫芦与瓢的博客-程序员资料
摄像机矩阵由P由内参矩阵和外参矩阵组成,对摄像机矩阵进行QR分解可以得到内参矩阵和外参矩阵在opencv的3D重建中(opencv中文网站中:照相机定标与三维场景重建), ...
- 3相机内参外参 - CSDN博客
相机内参外参1.像素坐标具体参见百度百科:https://baike.baidu.com/item/像素坐标/53722252.相机内参矩阵(Intrinsic matrix)说内参矩阵之前, ...
- 4一文带你搞懂相机内参外参(Intrinsics & Extrinsics) - 知乎专栏
Yanjie Ze, July 14 2021 摘要:本文介绍了相机的内参和外参以及推导过程,由三个部分组成:第一部分,相机内参; 第二部分,相机外参;第三部分, ...
- 5內參、外參、畸變參數三種參數與相機的標定方法與相機座標系 ...
實際其fx=F*Sx,其中的F就是焦距上面的f,Sx是像素/每毫米即上面的dx,其是最後面圖裏的後兩個矩陣進行先相乘,得出的,則把它看成整體,就相當於4個內參。