在之前使用opencv的小伙伴们,也希望PCL像opencv那样,N个imshow()+Waitkey()来显示点云;
PCL最简单的是通过以下方式来显示一幅点云:
pcl::visualization::CloudViewer viewer("Cloud Viewer");
viewer.showCloud(cloud_filtered_show,"cloud filtered");
while (!viewer.wasStopped())
{
}
那么,如果想在一个程序中,显示多幅点云的图像,则需要多个pcl::visualization::CloudViewer对象,例如
//显示点云1
pcl::visualization::CloudViewer viewer1("Cloud1");
viewer.showCloud(cloud_filtered_show,"cloud1");
while (!viewer.wasStopped())
{
}
//显示点云2
pcl::visualization::CloudViewer viewe2r("Cloud2");
viewer.showCloud(cloud2,"cloud2");
while (!viewer.wasStopped())
{
}
则可以实现关闭前一个点云后,显示第二个点云;
如果还不明白,可以看我另一篇博客,里面有完整例子https://blog.csdn.net/h649070/article/details/111593910