先看視頻:http://research.microsoft.com/en-us/projects/surfacerecon/
算法在此:http://research.microsoft.com/pubs/155378/ismar2011.pdf
KinFu是KinctFusion的開源實現,由PCL開發團隊開發,目前還沒有進入release版本。
看這里:http://pointclouds.org/news/kinectfusion-open-source.html
迫不及待想試試效果,便直接編譯代碼,運行時才發現我的顯卡不支持。。。。
KinFu對顯卡的要求很高,現在也沒有正式的最低配置發布出來,以下是猜測可以運行的配置:
Nvidia的Fermi架構顯卡;支持CUDA,而且CC(Compute Capability)在2.0以上;顯存至少750M;
有強悍顯卡的同學可以按照以下步驟編譯,看能否運行(能運行的請將配置發到評論里,謝謝):
Windows下的詳細過程在這里:
http://pointclouds.org/documentation/tutorials/compiling_pcl_windows.php
http://razorvision.tumblr.com/post/14221437255/compiling-the-open-source-kinect-fusion-pcl-point
以下附加簡要說明:
我的系統:Windows 7, VS2010 Pro
1. 代碼的SVN Repository URL:http://svn.pointclouds.org/pcl/trunk
// 我用的是TortoiseSVN,沒用過的可Google
2. 代碼版本是rev 5477. 代碼更新比較快,有些是無法編譯的,這個版本可以。
3. 運行CMake-GUI后需要改幾個設置:
a. CMAKE --> CMAKE_INSTALL_PREFIX // 默認是在C:\Program Files\PCL,可以改成C:\PCL,
避免寫權限的問題。
b. BUILD --> BUILD_GPU // 勾上這個
c. Ungrouped Entries --> USE_PROJECT_FOLDERS // 如果用的是Pro版本的Visual Studio,
可以勾上這個,方便瀏覽工程
4. 編譯代碼前請先安裝:
a. CUDA toolkit: http://developer.nvidia.com/cuda-downloads // 安裝后沒有重啟提示,需要手工重啟
b. 更新顯卡驅動到最新
5. 編譯“ALL BUILD”需要花很長時間(我用了20多分鍾),中間出了幾個Marco問題
(這個是VS2010的問題,還沒解決),點cancel繼續編譯。編譯結束后會提示重新加載工程,
因為生成了幾個新的工程。加載后再編譯一次“ALL BUILD”,新的工程便可以編譯到.
6. 打開命令行窗口運行你編譯的KinFu,這樣可以看到打印信息。我的路徑是
C:\PCL\kinfu_app_debug.exe,編譯的是debug版本。
7. 如果一切正常,到這里就能看到效果了。