理解好圖像的點(diǎn)云拼接,需要從相機(jī)的模型說起。理解相機(jī)的成像原理之后,便可更為深刻的理解圖像的點(diǎn)云如何拼接在一起。
首先說下相機(jī)的概念與原理。
相機(jī)概念與原理
相機(jī)的作用:將三維世界中的坐標(biāo)點(diǎn)(單位為米)映射到二維圖像平面(單位為像素)。
通常我們見到的相機(jī)都是針孔相機(jī),但是不是簡單的 針孔,還有透鏡的畸變存在,所以在做圖像處理時要進(jìn)行畸變校正。
由于畸變的存在,我們在使用相機(jī)之前都要進(jìn)行相機(jī)標(biāo)定。
目的就是求出內(nèi)參對于簡單的應(yīng)用求出徑向畸變和切向畸變就夠了。
所謂的外參就是相機(jī)的位姿。
有了外參、內(nèi)參、圖像、深度信息 便可以把圖像中的點(diǎn),轉(zhuǎn)到世界坐標(biāo)系下,并帶有RGB的顏色。就形成了所謂的點(diǎn)云。
相關(guān)的公式也很好理解 ,就是通過相似三角形的原理。

注意其中fx 、fy、 cx 、cy也就是相機(jī)的內(nèi)參了。在相機(jī)出廠時會給出。
理解了相機(jī)的概念與原理,來編輯代碼實(shí)現(xiàn)下。
Code實(shí)現(xiàn)
全部代碼
先放上全部代碼,再進(jìn)行分段講解
代碼講解

讀取對應(yīng)路徑下的彩色圖像、深度圖像、相機(jī)的位姿。
上面說了,有了這三個量再加上相機(jī)內(nèi)參,就可以得到點(diǎn)云。

//相機(jī)內(nèi)參

傳說中的相機(jī)內(nèi)參
//定義點(diǎn)云使用的格式
聲明pcl的格式創(chuàng)建一個點(diǎn)云,然后開始for循環(huán)處理每一張圖片和對應(yīng)的深度圖片與相機(jī)位姿。



得到要處理的彩色圖像深度圖像對應(yīng)的pose,然后for循環(huán)處理每一個像素。
得到深度信息
通過:

這個公式得到相機(jī)坐標(biāo)系下的 x,y,z

相機(jī)坐標(biāo)系下的點(diǎn)通過坐標(biāo)變換轉(zhuǎn)到世界坐標(biāo)系下。

賦值點(diǎn)云的坐標(biāo)與顏色。

保存成點(diǎn)云文件。
責(zé)任編輯:lq6
-
圖像
+關(guān)注
關(guān)注
2文章
1095瀏覽量
42144 -
拼接
+關(guān)注
關(guān)注
0文章
17瀏覽量
12867
原文標(biāo)題:圖像的點(diǎn)云拼接-原理講解與代碼實(shí)現(xiàn)
文章出處:【微信號:vision263com,微信公眾號:新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
硬件融合拼接器與軟件融合拼接的區(qū)別?
云拼接處理器的性能如何?
無法將Jlink調(diào)試器與CYBT263065EVAL COOLDIM_PRG_BOARD連接在一起怎么解決?
異形拼接處理器可以實(shí)現(xiàn)的效果
ADS1258芯片底部的散熱片需要與地連在一起嗎?
ADS1217是需要2個電源隔離供電嗎?還是接在一起,對測量精度有多大影響?
ADS1198有兩個時鐘,CLK和SCLK,這兩個時鐘信號能接在一起嗎?
電路圖設(shè)計:需要問一下,需要哪些零件可以組合在一起組成一個音箱?
DAC7811接入系統(tǒng)后輸出恒為4V是怎么回事
ADS7953 MXO和AINO一般都是連在一起的,但要保證Rsource<50Ω,請問這個Rsource是指哪里?
AN-166:與Linduino一起飛行中更新

圖像的點(diǎn)云是如何拼接在一起的?
評論