1.PCL下载
百度云链接:https://pan.baidu.com/s/1gL-thPQIpuwUljAC7mLBkw 提取码:obx4
包含文件:pcl-1.8.0-pdb-msvc2015-win64,pcl-1.8.0-pdb-msvc2015-win64
注意:所下载的PCL文件一定要与VS版本对应,例如该文件名中的msvc2015对应VS2015版本
2.VS2015
官网下载即可
PCL参考安装教程
OpenCV参考安装教程
Python参考安装教程
Cmake参考安装教程
错误 C1083 无法打开包括文件: “boost/shared_ptr.hpp”: No such file or directory”解决办法
原因:需要根据自己的实际版本修改属性设置
解决:【属性页】—【VC++目录】—【包含目录】,检查boost的链接文件名是否与自己的文件对应。
例如教程中给出的链接是C:\PCL1.8.0\PCL 1.8.0\3rdParty\Boost\include\boost-1_64,而我的boost文件名是C:\PCL1.8.0\PCL 1.8.0\3rdParty\Boost\include\boost-1_61,修改过来即可
错误 C1083 无法打开包括文件: “vtkSmartPointer.h”: No such file or directory
同上,【属性页】—【VC++目录】—【包含目录】,检查VTK的链接文件名是否与自己的文件对应。
无法打开stdafx.h
在头文件中插入#include "stdafx.h"即可
无法打开包括文件pkgconfig.obj
原因:使用批处理文件生成lib目录时,误将PCL的lib文件下的pkgconfig文件名也生成了
解决:【属性页】—【输入】—【附加依赖项】,将pkgconfig删除即可
无法打开其他xxxx.obj的参考解决方案:
https://blog.csdn.net/Devil_box/article/details/42098981
https://blog.csdn.net/lizhengze1117/article/details/85917702
错误 LNK1107 文件无效或损坏: 无法在 0x7DA 处读取 ConsoleApplication1 C:\PCL1.8.0\PCL1.8.0\lib\0.txt
问题同上,误将0.txt生成了,删去即可
检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(ConsoleApplication1.obj 中)
lib文件后缀中,有gd的为debug模式,否则为release模式
改为release模式运行,详细步骤与原理参考:https://www.cnblogs.com/lisuyun/p/6410393.html
无法查找或打开 PDB 文件
需要进行VS配置,详细步骤见https://blog.csdn.net/softimite_zifeng/article/details/53303889
找不到opencv_worldxxxx.dll
解决方法:
把自己opencv文件目录下的\opencv\build\x64\vc15\bin中的三个dll文件,拷贝到C:\Windows\System32 中。
1.示例程序2的运行,需要将rabbit.pcd文件放到与cpp文件同一目录下
rabbit文件百度云链接:链接:https://pan.baidu.com/s/1M0HT7PCKs7t7bGCI2OV7Tw
提取码:p6io
#include "stdafx.h"
#include
#include//标准C++库中的输入输出类相关头文件。
#include
#include//pcd 读写类相关的头文件。
#include
#include //PCL中支持的点类型头文件。
using namespace std;
using namespace pcl;
void viewerOneOff(visualization::PCLVisualizer& viewer) {
viewer.setBackgroundColor(0, 0, 0); //设置背景颜色为黑色
}
int main() {
PointCloud::Ptr cloud(new PointCloud);
char strfilepath[256] = "rabbit.pcd";
if (-1 == io::loadPCDFile(strfilepath, *cloud)) {
cout << "error input!" << endl;
return -1;
}
cout << cloud->points.size() << endl;
visualization::CloudViewer viewer("Cloud Viewer: Rabbit"); //创建viewer对象
viewer.showCloud(cloud);
viewer.runOnVisualizationThreadOnce(viewerOneOff);
system("pause");
return 0;
}
2.安装好Cmake后在cmd中显示结果的方法:
(1)找到cmake-bin文件夹下的ALL_BUILD.vcxproj文件,打开并调试
(2).调试完成后cmake_bin文件夹下的Debug文件夹下会出现project_inliers.exe文件,从控制台运行该程序可以看到打印结果
环境配置错误,大部分原因在于VS配置时出现错误,在这里发一个我自己的VS环境配置文件,给大家参考:
链接:https://pan.baidu.com/s/1Wfc-oHBg5bUswiwZ2K4utg
提取码:yp17
*注:仅适用于WIN10+PCL1.8.0+VS2015,安装目录为C:\PCL1.8.0\PCL 1.8.0的情况