製作.sens數據集跑通bundlefusion

1. 主要參考這篇博客實現 https://blog.csdn.net/Wuzebiao2016/article/details/94426905

2. 首先就是將自己採集的RGBD圖像的保存格式向Bundlefusion需要的格式對齊,如彩色圖的命名格式是frame-000000.color.png,深度圖的命名規則是frame-000000.depth.png.

 

3. 最重要的事情是如何將你準備的數據生成.sens文件

(1)將工程中原始的main函數註釋掉,然後換成下面的main函數調用工程下的loadFromImages()和saveToFile()

int main()
{
ml::SensorData sd;
sd.loadFromImages("D:/Compressed/BundleFusionData", "frame-", "jpg");
sd.saveToFile("D:/Compressed/test.sens");
}

1. 主要參考這篇博客實現 https://blog.csdn.net/Wuzebiao2016/article/details/94426905

2. 首先就是將自己採集的RGBD圖像的保存格式向Bundlefusion需要的格式對齊,如彩色圖的命名格式是frame-000000.color.png,深度圖的命名規則是frame-000000.depth.png.

上面這篇文章中也談了很多關於壓縮類型的問題,爲了能讓代碼正常運行,生成可用的.sens文件,則需要對sensorData.h中的

#defineM_SENSOR_DATA_VERSION 4下面,將彩色圖和深度圖的壓縮類型進行初始化,初始化制定類型。

m_colorCompressionType = TYPE_JPEG;// TYPE_PNG;

m_depthCompressionType = TYPE_ZLIB_USHORT;

雖然.sens中圖像很多,但是重建的效果卻很差,只有這一點點,也許跟我們的採集方式有關,我們是拿着kinect相機徑直向前走的緣故,使用kinect採集圖像數據的正確打開方式是,使相機朝着obstacles(牆面或者物體)掃描,因爲Kinect相機的有效工作距離比較短一般在3-4米。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章