2013-10-14 35 views
0

我是PCL和C++的新手。我需要使用PCL 1.6將XYZ類型的點雲轉換爲XYZRGB類型的點雲,反之亦然。我試過'pcl :: copyPointCloud(cloud,cloudRGB);'但VS2010說:「沒有重載函數的實例'pcl :: copyPointCloud'匹配參數列表」。我不知道它究竟意味着什麼,所以我怎麼解決它?在documentation我發現該函數需要三個變量,但我不知道第二個是什麼,以及如何找到它。其他例子不使用第二個,但我不知道他們是否使用PCL 1.6。使用pcl 1.6將pcloudXYZ轉換爲pcloudXYZRGB

非常感謝您對您的幫助

回答

0

0填補了RGB數據:d,你不能只是簡單地轉換了兩件事情,因爲你沒有任何RGB數據。

Look here for the official documentation and example

+0

好吧,但我什麼時候可以使用函數'pcl :: copyPointCloud(cloud,cloudRGB);'?只能從點雲RGB傳遞到簡單的點雲,並因此丟失顏色信息?非常感謝您的支持 – SPS

+0

我不認爲你可以這樣做,因爲類型不一樣。嘗試它,如果它的作品,那麼你只是失去了顏色。 – alap

+0

看這裏:[可能的解決方案](http://stackoverflow.com/questions/15999331/how-can-i-change-rgb-values-of-pclpointxyzrgba) – alap

0

到一種數據類型轉換到另一個PCL你可以ü這個功能:

pcl::PointCloud<pcl::PointXYZ> input; 
    pcl::PointCloud<pcl::PointXYZRGB> cloud; 
    pcl::copyPointCloud(input,cloud); 

但這裏的數據的輸入應該是XYZ + RGB格式的形式,不僅僅是它是可能的。這是讀取爲輸入=相機/ registered_image /點

相關問題