Windows下三维处理库——PCL点云库安装教程
来源:互联网 发布:mac虚拟机iso镜像文件 编辑:程序博客网 时间:2024/05/24 06:11
Windows下三维处理库——PCL点云库安装教程
每次使用新的东西都会在安装上花费大量的时间,这次虽然走了些弯路,但也还算顺利,还是有很多人会出现安装失败的教程,还是发个帖归纳下吧。
平台:windows 10 X64(只看)
所需数据文件:
vs2010 X64安装文件
PCL all-in-one安装包
pbd文件数据包
QT4.8.0安装文件
cmake3.3.1安装文件
除了vs2010需要自行下载,以上所有文件都可以在官网上找到:
http://pointclouds.org/downloads/windows.html
(有些文件下载速度比较慢,建议翻墙下载)
然后就可以开始安装了:
先关闭所有其他程序,安装vs2010,默认安装路径就行;
然后安装PCL all-in-one 安装包,默认安装路径就好,其间会问你需不需要添加PATH,请选择第二个:添加PATH到所有用户
PCL all-in-one安装好以后,并不能使用,还需要解压PBD数据文件,然后把解压后文件夹内所有数据复制到PCL安装目录下的bin文件夹中,这一步很关键,一定是要文件下的文件,直接复制文件夹貌似是不行的,我就走了这个弯路。。。
接下来安装QT4.8.0 ,同样是默认安装路径,其间也会问你需不需要添加PATH,和安装PCL all-in-one是一个道理,选择第二个就行。
最后安装cmake3.3.1 默认选项就好,这个都没什么问题。
于是环境文件就安装好了,我们可以尝试运行一个PCL程序:
在VS2010中新建一个C++空项目,然后新建一个CPP文件,贴入如下代码:
//这些代码都是从官网找到的实例#include <iostream>#include <pcl/io/pcd_io.h>#include <pcl/point_types.h>#include <pcl/ModelCoefficients.h>#include <pcl/filters/project_inliers.h>int main (int argc, char** argv){ pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>); pcl::PointCloud<pcl::PointXYZ>::Ptr cloud_projected (new pcl::PointCloud<pcl::PointXYZ>); // Fill in the cloud data cloud->width = 5; cloud->height = 1; cloud->points.resize (cloud->width * cloud->height); for (size_t i = 0; i < cloud->points.size (); ++i) {cloud->points[i].x = 1024 * rand () / (RAND_MAX + 1.0f);cloud->points[i].y = 1024 * rand () / (RAND_MAX + 1.0f);cloud->points[i].z = 1024 * rand () / (RAND_MAX + 1.0f); } std::cerr << "Cloud before projection: " << std::endl; for (size_t i = 0; i < cloud->points.size (); ++i)std::cerr << "" << cloud->points[i].x << " " << cloud->points[i].y << " " << cloud->points[i].z << std::endl; // Create a set of planar coefficients with X=Y=0,Z=1 pcl::ModelCoefficients::Ptr coefficients (new pcl::ModelCoefficients ()); coefficients->values.resize (4); coefficients->values[0] = coefficients->values[1] = 0; coefficients->values[2] = 1.0; coefficients->values[3] = 0; // Create the filtering object pcl::ProjectInliers<pcl::PointXYZ> proj; proj.setModelType (pcl::SACMODEL_PLANE); proj.setInputCloud (cloud); proj.setModelCoefficients (coefficients); proj.filter (*cloud_projected); std::cerr << "Cloud after projection: " << std::endl; for (size_t i = 0; i < cloud_projected->points.size (); ++i)std::cerr << "" << cloud_projected->points[i].x << " " << cloud_projected->points[i].y << " " << cloud_projected->points[i].z << std::endl; return (0);}
我们会发现#include 处会报错,原因很简单,这段代码所需要的库文件是需要用cmake生成的,这也是我们要用到cmake的原因
接下来是很关键的几步,我们找到vs中这个项目的文件,比如说项目名字叫PCLTest,那我们就进入到PCLTest的文件夹下(注意是vs项目目录project下的那个文件夹,不要搞错了)。
新建一个叫source的空文件夹,再新建一个叫cmake-bin 的文件夹,把唯一的cpp文件拷贝到source中去,取名PCLtest.cpp,然后在cmake-bin中新建一个txt文件,名字叫Cmakelists
这些准备工作做完了,于是就可以编译库了,在Cmakelist.txt中添加如下命令
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
project(project_inliers)find_package(PCL 1.2 REQUIRED)include_directories(${PCL_INCLUDE_DIRS})link_directories(${PCL_LIBRARY_DIRS})add_definitions(${PCL_DEFINITIONS})add_executable (project_inliers project_inliers.cpp)target_link_libraries (project_inliers ${PCL_LIBRARIES})
打开cmake3.3.1
第一行填写source的目录,第二行添加cmake-bin的目录(路径不可以有中文出现,不然cmake会报错的)
然后点下面的configure按钮,等待一段时间,下面的输出框显示Configuring done
然后点击Generate 按钮 ,等待出现
Generating done
说明编译成功,接下来用vs2010打开source文件夹下面的PCLTest.sln,打开项目,右键设置PCLTest为启动项目,然后运行,如果所有步骤都完美的话,会出带有以下信息的窗口:
Cloud before projection:1.28125 577.094 197.938828.125 599.031 491.375358.688 917.438 842.563764.5 178.281 879.531727.531 525.844 311.281Cloud after projection:1.28125 577.094 0828.125 599.031 0358.688 917.438 0764.5 178.281 0727.531 525.844 0
如果是一闪就没有了的,请随便加个断点就行。
全文虽然没有图,但是应该是写清楚了得
- Windows下三维处理库——PCL点云库安装教程
- PCL—综述—三维图像处理
- PCL—综述—三维图像处理
- Windows下安装PCL点云库
- Windows下Qt4与PCL点云库安装与联调
- PCL系列——三维重构之泊松重构
- Windows下PCL及其第三方库的安装编译过程
- Ubuntu下安装pcl
- ubuntu下安装pcl
- PCL:Ubuntu下安装配置PCL
- 学习PCL之——PCL安装指南(一)
- PCL KinectFusion 编译安装教程
- PCL KinectFusion 编译安装教程
- 1 PCL 1.7.2库简单安装教程
- Ubuntu14.04下PCL安装
- Ubuntu14.04下PCL安装
- ubuntu 16.04 下安装PCL
- ubuntu 16.04 下安装PCL
- 【数据库】SQL更新数据之增删改
- web项目中servlet java.lang.class not found exeception
- 第二周项目三
- Sql2008登录方法
- Python基础知识:python模块的引入方法
- Windows下三维处理库——PCL点云库安装教程
- spring data jpa 创建方法名进行简单查询
- No Content-Security-Policy meta tag found. Please add one when using the cordova-plugin-whitelist pl
- 《C++》10 C++ 类 & 对象
- Search的用法
- 第一篇文章——我的IT之路
- Dubbo高级篇_02_activemq的安装与使用
- 第一篇:JAVA的安装和环境变量的配置
- 博客搬家啦!