2016-06-14 91 views
1

我有一個來自Orbecc的Astra Pro 3D傳感器,它使用OpenNI進行抓取。如何爲OpenNI2構建PCL?

但預編譯格式http://pointclouds.org/的PCL使用OpenNI而不是OpenNI2。所以當我嘗試運行任何示例程序時,出現「無設備連接」錯誤。

經過一番研究,我發現我需要爲OpenNI2構建PCL。由於我對PCL很新,所以我不知道該怎麼做。

任何人都可以請幫助我用OpenNI2構建PCL。

回答

0

我的Linux系統上有類似的問題。 我通過自己編譯PCL解決了這個問題。源自this的教程對我非常有幫助。但要小心:這是爲了與OpenNI一起構建。

對於使用OpenNI2,我必須小心,它已經安裝在我的系統上(我也是通過構建源代碼來完成的)。在執行cmake時,在下載的OpenNI2源代碼的內部目錄中使用cmake ..,它應該顯示爲找到。

在此構建目錄中,您將找到以下文件:bin/pcl_openni2_viewer。這可以用來用OpenNI2測試PCL。

如果你有問題,沒有設備可以發現,你會得到類似這樣

terminate called after throwing an instance of 'pcl::IOException' 
    what(): void pcl::io::OpenNI2Grabber::setupDevice(const string&, const pcl::io::OpenNI2Grabber::Mode&, const pcl::io::OpenNI2Grabber::Mode&) in /home/dev/pcl/io/src/openni2_grabber.cpp @ 325 : No devices connected. 
Aborted (core dumped) 

OpenNI2的輸出不能正確地檢測相機和一些相機特定文件丟失。

我使用LIPS ToF相機,並且爲我的系統編譯了一些源代碼。爲了測試OpenNI2,我必須注意,其中一些文件被複制到可執行文件旁邊。爲了將它們與PCL一起使用,我將它們複製到了/usr/local/lib,對我來說一切正常。

希望有幫助! - 乾杯