日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

将TUM数据集制作成BundleFusion数据集

發(fā)布時(shí)間:2023/12/10 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 将TUM数据集制作成BundleFusion数据集 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在上一篇文章中,我寫到了如何將TUM數(shù)據(jù)生成BundleFusion所需要的數(shù)據(jù)集,生成的數(shù)據(jù)集如下圖中所示.并且是將每一組數(shù)據(jù)的groundtruth.txt中的位姿數(shù)據(jù)寫如到這里的pose文件中,作為每一幀圖像的先驗(yàn)位姿.

今天我便將生成的數(shù)據(jù)集轉(zhuǎn)換為了.sens格式,然后運(yùn)行bundlefusion算法,第一次嘗試很失敗,1400張圖像,最后只重建出了花瓶的一半,還有幾片葉子,我不知道哪里出了問題,首先是檢查一下數(shù)據(jù)格式是不是正確,圖像的名稱,?還有每一組數(shù)據(jù)集最后的info.txt文件的內(nèi)容,檢查并沒有發(fā)現(xiàn)明顯的錯(cuò)誤.然后我又調(diào)解了兩個(gè)配置文件中的一些參數(shù),但是并不知道有可能是什么原因.最后我把目光停留在數(shù)據(jù)集的info.txt文件上,之前使用kinect相機(jī),經(jīng)過手動標(biāo)定相機(jī)可以標(biāo)定得到depthShift這個(gè)數(shù)據(jù),但是現(xiàn)在我并不知道,也不知道TUM數(shù)據(jù)集的這個(gè)數(shù)值,然后我在代碼中搜索這個(gè)m_depthShift的用途,代碼是如下

for (unsigned int i = 0; i < getDepthWidth()*getDepthHeight(); i++) {const auto* d = getDepthFloat();std::cout << "d[" << i << "]: " << d[i] << std::endl;depth[i] = (unsigned short)ml::math::round((m_recordedData->m_depthShift * d[i]));}

讀取深度圖的深度數(shù)據(jù),然后乘上?m_depthShift,我大致猜出來,他的作用了,

在最初的info.txt文件中我將m_depthShift設(shè)置為1000, ?但是重建不成功,我突然想到,我要查看一下,深度圖像的數(shù)值,于是我用imageJ來查看一下深度圖.

這是BundleFusion使用的SUN3D數(shù)據(jù)集中的一組數(shù)據(jù)的一對彩色圖和深度圖,當(dāng)我把鼠標(biāo)點(diǎn)在最左側(cè)的垃圾桶的上邊緣時(shí),imgJ顯示1328,而根據(jù)彩色圖,目測也是1米多的樣子,所以也驗(yàn)證了,該組數(shù)據(jù)集中的info.txt中的m_depthShift=1000.

?

?而對于TUM數(shù)據(jù)集,當(dāng)我將鼠標(biāo)放在圖片最前端的花盆上時(shí),根據(jù)彩色圖,目測只有30cm的距離,但是imageJ上顯示的是2930,所以我感覺應(yīng)該將info.txt中的m_depthShift設(shè)置為1000.

我將m_depthShift設(shè)置為10000后,重新生成?.sens數(shù)據(jù)集,這次就可以重建成功了.重建效果如下.

?

總結(jié)

以上是生活随笔為你收集整理的将TUM数据集制作成BundleFusion数据集的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。