PCL的點雲可視化的一種最常用的方法就是PCLVisualizer
它是基於VTK的可視化類,需要引入頭文件
#include <pcl/visualization/pcl_visualizer.h>
通常用法是
pcl::visualization::PCLVisualizer::Ptr viewer (new pcl::visualization::PCLVisualizer ("3D Viewer"));
viewer->addPointCloud (cloud, "cloud");
viewer->spin();
這就構成了最基本的顯示流程了,其中第一行創建一個窗口,窗口名字叫做3D Viewer,這個窗口是個智能指針創建的,所以在它的生命週期結束前這個窗口都不會銷燬。(實際上根據我的觀察似乎程序結束前它都不會被銷燬。。。)
然後使用addPointCloud 這個函數來添加點雲,注意是添加到viewer這個對象裏,你還可以在添加完這一組後再添加另一組,那麼這個viewer裏就會同時有兩組,如果想刪除掉某一組,就需要留意後面那個參數裏,那個參數就是cloud的名字,你可以通過
viewer->removePointCloud("cloud);
來移除cloud這個組裏的所有點,但是保留了其他組的點。當然,如果添加了太多組,也可以使用
viewer->removeAllPointClouds()
來移除所有的點。
如果想要添加座標系,可以使用
viewer->addCoordinateSystem();
這個函數來添加座標系。