KinectFusion是微軟研究院的一個項目,使Kinect可以作爲3D物體掃描儀,代碼開源在PCL(Point Cloud Library)點雲庫中,去年在Windows下配好環境,嘗試了一下效果,沒有做總結,最近將依次把相關的東西總結一下同時也重新學習,歡迎大家一起討論,批評指正。
- KinectFusion 相關的兩篇論文,感興趣的可以去網上下載:
實現 KinectFusion: real-time 3d reconstruction and interactionusing a moving depth camera. [S. Izadi, D. Kim, O.Hilliges et al, 2011]
- 配置環境的參考資料
- 硬件條件
- 配置過程簡介,我最終配的版本是1.7.1
common
octree
io
kdtree
search
sample_consensus
filters
2d
geometry
features
ml
segmentation
visualization
surface
registration
keypoints
tracking
recognition
stereo
apps
outofcore
examples
people
global_tests
tools
5. 到pcl/build目錄下找到剛纔CMake得到的vs工程,打開PCL工程,右鍵All Build生成,生成靜態庫,動態鏈接庫和執行程序,這個過程會比較慢,可能1到幾個小時,可以幹些別的事情了,過程中可能彈出某某外部環境以改變,是否重新加載,點擊是,繼續生成。網上有人說這個過程中100多到300多個工程,總有個別編譯不成功的情況,只要主要模塊沒有丟失,而且你要的工程編譯成功就可。順利的話,生成成功,其中pcl_kinfu_app就是KinectFusion。可以連上Kinect設備,按照-help依次嘗試,重建自己身邊的場景啦!
附:
下面這些編譯選項這些是PCL主要的模塊,基於點雲庫的程序大多都用到,KinFu,in_hand_scanner,和KinFu_LargeScale都用到。
common常用項
io 輸入輸出
filter 濾波
features各種特徵提取
keypoints 關鍵點提取
search,octree,kdtree 查詢點臨近點查找
sample_consensus 平面,圓柱曲面聚類
segmentation 分割包括顏色分割
registration 匹配,包括ICP和特徵匹配
visualization 視覺渲染