PCL-1.8.0安装与配置问题(2)
测试文件说明(有同学提问,所以就说一下)
我用别人的例子说明,首先需要点云数据,pcd格式的,本文用麦子的点云文件,放在工程自己创建的“my”工程文件下,默认文件在工程文件C:\visual studio 2013\Projects\my\my中,若不是可以自己定义文件路径。
(我也把两个点云数据——maize和horse以及运行过的工程文件提供给大家,算做个参考吧)
如图所示,下面的是要添加的头文件,只是举个例子,根据自己的需要添加
代码如下
#include"stdafx.h"
#include<pcl/visualization/cloud_viewer.h>//添加自己编程是所需要用到的头文件,以下几项也是头文件
#include<iostream>
#include<pcl/io/io.h>
#include<pcl/io/pcd_io.h>
intuser_data;
//以下为外部函数
void
viewerOneOff(pcl::visualization::PCLVisualizer&viewer)
{
viewer.setBackgroundColor(1.0, 0.5, 1.0);
pcl::PointXYZ o;
o.x = 1.0;
o.y = 0;
o.z = 0;
viewer.addSphere(o, 0.25,"sphere", 0);
std::cout << "i only runonce" << std::endl;
}
void
viewerPsycho(pcl::visualization::PCLVisualizer&viewer)
{
static unsigned count = 0;
std::stringstream ss;
ss << "Once per viewer loop:" << count++;
viewer.removeShape("text", 0);
viewer.addText(ss.str(), 200, 300,"text", 0);
//FIXME: possible race condition here:
user_data ++;
}
int_tmain(int argc, _TCHAR* argv[])//自动生成的主函数,在执行程序
{
pcl::PointCloud<pcl::PointXYZRGBA>::Ptrcloud(new pcl::PointCloud<pcl::PointXYZRGBA>);
pcl::io::loadPCDFile("maize.pcd",*cloud);//默认测试文件在工程文件C:\visual studio 2013\Projects\my\my中,若不是可以自己定义文件路径
pcl::visualization::CloudViewerviewer("Cloud Viewer");
//showCloud函数是同步的,在此处等待直到渲染显示为止
viewer.showCloud(cloud);
//该注册函数在可视化时只调用一次
viewer.runOnVisualizationThreadOnce(viewerOneOff);
//该注册函数在渲染输出时每次都调用
viewer.runOnVisualizationThread(viewerPsycho);
while (!viewer.wasStopped())
{
//在此处可以添加其他处理
user_data++;
}
return 0;
}
预编译出现如下图所示,说明编译通过
第一次调试的时候速度回很慢,大家耐心点。
如果数据存在,则直接显示如下图
注意:
1.出现上图“rgba”提示,是数据点云没有带色彩信息,可以将数据类型定义为XYZ类型,不采用XYZRGB就不会出现这个提示了。
即将以下语句
pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(newpcl::PointCloud<pcl::PointXYZRGBA>);
改为
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(newpcl::PointCloud<pcl::PointXYZ>);
2没有数据运行程序后,运出现如下窗口属正常,测试也是成功的。
在输入法为英文状态下按r,可以看到如下图,也可按左键拖动
以上内容只是个人的经验,可能在说明过程中存在错误,还请大家见谅,不吝赐教,谢谢大家。
题外话:
有人评论说:
PCL官网上的All-In-One Installer只更新到1.6.0版本,1.8.0的版本是由一个日本小哥制作和维护的: http://unanancyowen/en/pcl18/
所以有必要说一下,过一些天,再更新在windows安装虚拟机以及如何安装pcl等问题
附件(本例程代码已经上传到我的CSDN地址是:http://download.csdn.net/detail/u013019296/9841079)