3d激光雷达开发(点云数据显示)
Posted 费晓行
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3d激光雷达开发(点云数据显示)相关的知识,希望对你有一定的参考价值。
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
点云数据显示是开发过程中必不可少的一个环节。因为在实际场景中,可能会涉及到很多的算法步骤,这中间的每一步,都要停下来看一下,处理结果是不是我们自己想要的,所以这中间就必然会涉及到查看显示的部分。显示本身不复杂,但是有几个细节需要注意下。
1、准备cloud_view.cpp
#include <pcl/visualization/cloud_viewer.h>
#include <iostream>
#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>
int
main ()
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);
pcl::io::loadPCDFile ("bunny.pcd", *cloud);
pcl::visualization::CloudViewer viewer("Simple Cloud Viewer");
viewer.showCloud(cloud);
while (!viewer.wasStopped())
return 0;
显示部分代码比较简单,要注意的是PointCloud里面的数据形式。
2、准备CMakeLists.txt
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
project(cloud_view)
find_package(PCL 1.2 REQUIRED)
include_directories($PCL_INCLUDE_DIRS)
link_directories($PCL_LIBRARY_DIRS)
add_definitions($PCL_DEFINITIONS)
add_executable (cloud_view cloud_view.cpp)
target_link_libraries (cloud_view $PCL_LIBRARIES)
3、利用cmake生成sln,开始编译,不出意外,应该可以成功
4、执行cloud_view.exe
执行的过程中,可能会提示缺少dll,不全即可。在自己的电脑上面,发现只依赖于这几个dll库,如下所示,
如代码所示,显示的文件为bunny.pcd,这个文件网上都有,可以找到下载一下,
5、几个注意点
1)显示的pcd点数不要太多,一般几千到几万个点是可以的,多了有可能会出现闪退,估计pcl库内部有bug;
2)显示需要一段时间,不是程序坏了,需要等一段时间而已;
3)显示的时候,一开始是红、绿、黑的三色图,这是正常的,缩放一下就可以看到点云了。
以上是关于3d激光雷达开发(点云数据显示)的主要内容,如果未能解决你的问题,请参考以下文章