PCL学习笔记(1):pcl1.6.0+vs2010环境配置以及第一个pcl程序
来源:互联网 发布:网络曝光台吧 编辑:程序博客网 时间:2024/04/30 01:16
//捣腾了一天,终于算是看到点希望了。
一、准备
(本文的环境配置不需要CMake)
1.vs2010 (本人使用的是32位)
2.pcl 安装包:All-in-one installers(点击下载)选择PCL 1.6.0 All-In-One Installer
3.PDB:在上面的下载页面选择PDB files
二、安装
1.安装vs 2010
2.安装 pcl 安装包(最好不要更改安装路径,否则会影响后面的环境配置和工程配置)
因为这个安装包里已经包含了openni、PrimeSense等,所以openni、PrimeSense等也是自动安装好。
【安装好即可,不要修改路径】
3.PDB files解压后,将所有pdb文件复制到:C:\Program Files\PCL 1.6.0\bin
三、环境变量配置
添加环境变量PCL_ROOT
C:\Program Files\PCL 1.6.0
然后在path环境变量下添加:
C:\Program Files\OpenNI\Bin;%PCL_ROOT%\bin;%PCL_ROOT%\3rdParty\FLANN\bin;%PCL_ROOT%\3rdParty\Qhull\bin;
四、新建工程
//很多程序可以去point cloud library官网下载
main.cpp
#include <pcl/visualization/cloud_viewer.h>#include <iostream>#include <pcl/io/io.h>#include <pcl/io/pcd_io.h>int user_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 run once" << 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 main (){ pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZRGBA>); pcl::io::loadPCDFile ("my_point_cloud.pcd", *cloud); pcl::visualization::CloudViewer viewer("Cloud Viewer"); //blocks until the cloud is actually rendered viewer.showCloud(cloud); //use the following functions to get access to the underlying more advanced/powerful //PCLVisualizer //This will only get called once viewer.runOnVisualizationThreadOnce (viewerOneOff); //This will get called once per visualization iteration viewer.runOnVisualizationThread (viewerPsycho); while (!viewer.wasStopped ()) { //you can also do cool processing here //FIXME: Note that this is running in a separate thread from viewerPsycho //and you should guard against race conditions yourself... user_data++; } return 0;}
五、工程配置【Debug】
1.项目-->属性-->配置属性-->VC++目录-->包含目录 //注意检查自己的路径是否正确
添加:
C:\Program Files\PCL 1.6.0\3rdParty\Boost\includeC:\Program Files\PCL 1.6.0\3rdParty\Eigen\includeC:\Program Files\PCL 1.6.0\3rdParty\FLANN\includeC:\Program Files\PCL 1.6.0\3rdParty\Qhull\includeC:\Program Files\PCL 1.6.0\3rdParty\VTK\include\vtk-5.8C:\Program Files\PCL 1.6.0\include\pcl-1.6C:\Program Files\OpenNI\Include
添加:
C:\Program Files\PCL 1.6.0\3rdParty\Boost\libC:\Program Files\PCL 1.6.0\3rdParty\Qhull\libC:\Program Files\PCL 1.6.0\3rdParty\FLANN\libC:\Program Files\PCL 1.6.0\3rdParty\VTK\lib\vtk-5.8C:\Program Files\PCL 1.6.0\libC:\Program Files\OpenNI\Lib3.项目-->属性-->配置属性-->链接器-->输入->附加依赖项 //注意检查自己的路径是否正确
添加:
opengl32.libpcl_kdtree_debug.libpcl_io_debug.libpcl_search_debug.libpcl_segmentation_debug.libpcl_apps_debug.libpcl_features_debug.libpcl_filters_debug.libpcl_visualization_debug.libpcl_common_debug.libflann_cpp_s-gd.liblibboost_system-vc100-mt-gd-1_47.liblibboost_filesystem-vc100-mt-gd-1_47.liblibboost_thread-vc100-mt-gd-1_47.liblibboost_date_time-vc100-mt-gd-1_47.liblibboost_iostreams-vc100-mt-gd-1_47.libvtkalglib-gd.libvtkCharts-gd.libvtkCommon-gd.libvtkDICOMParser-gd.libvtkexoIIc-gd.libvtkexpat-gd.libvtkFiltering-gd.libvtkfreetype-gd.libvtkftgl-gd.libvtkGenericFiltering-gd.libvtkGeovis-gd.libvtkGraphics-gd.libvtkhdf5-gd.libvtkHybrid-gd.libvtkImaging-gd.libvtkInfovis-gd.libvtkIO-gd.libvtkjpeg-gd.libvtklibxml2-gd.libvtkmetaio-gd.libvtkNetCDF-gd.libvtkNetCDF_cxx-gd.libvtkpng-gd.libvtkproj4-gd.libvtkRendering-gd.libvtksqlite-gd.libvtksys-gd.libvtktiff-gd.libvtkverdict-gd.libvtkViews-gd.libvtkVolumeRendering-gd.libvtkWidgets-gd.libvtkzlib-gd.lib
此时环境配置已经结束,在程序有一句函数,加载了一个pcd文件。
pcl::io::loadPCDFile ("my_point_cloud.pcd", *cloud);
六、添加my_point_cloud.pcd文件
在工程目录下F:\The Graduation Design\PCL\ppp\project_inliers\mmm(mmm为我的工程名字)新建txt,添加一下数据后,修改名字和后缀即可。
# .PCD v.7 - Point Cloud Data file formatVERSION .7FIELDS x y z rgbSIZE 4 4 4 4TYPE F F F FCOUNT 1 1 1 1WIDTH 213HEIGHT 1VIEWPOINT 0 0 0 1 0 0 0POINTS 213DATA ascii0.93773 0.33763 0 4.2108e+060.90805 0.35641 0 4.2108e+060.81915 0.32 0 4.2108e+060.97192 0.278 0 4.2108e+060.944 0.29474 0 4.2108e+060.98111 0.24247 0 4.2108e+060.93655 0.26143 0 4.2108e+060.91631 0.27442 0 4.2108e+060.81921 0.29315 0 4.2108e+060.90701 0.24109 0 4.2108e+060.83239 0.23398 0 4.2108e+060.99185 0.2116 0 4.2108e+060.89264 0.21174 0 4.2108e+060.85082 0.21212 0 4.2108e+060.81044 0.32222 0 4.2108e+060.74459 0.32192 0 4.2108e+060.69927 0.32278 0 4.2108e+060.8102 0.29315 0 4.2108e+060.75504 0.29765 0 4.2108e+060.8102 0.24399 0 4.2108e+060.74995 0.24723 0 4.2108e+060.68049 0.29768 0 4.2108e+060.66509 0.29002 0 4.2108e+060.69441 0.2526 0 4.2108e+060.62807 0.22187 0 4.2108e+060.58706 0.32199 0 4.2108e+060.52125 0.31955 0 4.2108e+060.49351 0.32282 0 4.2108e+060.44313 0.32169 0 4.2108e+060.58678 0.2929 0 4.2108e+060.53436 0.29164 0 4.2108e+060.59308 0.24134 0 4.2108e+060.5357 0.2444 0 4.2108e+060.50043 0.31235 0 4.2108e+060.44107 0.29711 0 4.2108e+060.50727 0.22193 0 4.2108e+060.43957 0.23976 0 4.2108e+060.8105 0.21112 0 4.2108e+060.73555 0.2114 0 4.2108e+060.69907 0.21082 0 4.2108e+060.63327 0.21154 0 4.2108e+060.59165 0.21201 0 4.2108e+060.52477 0.21491 0 4.2108e+060.49375 0.21006 0 4.2108e+060.4384 0.19632 0 4.2108e+060.43425 0.16052 0 4.2108e+060.3787 0.32173 0 4.2108e+060.33444 0.3216 0 4.2108e+060.23815 0.32199 0 4.808e+060.3788 0.29315 0 4.2108e+060.33058 0.31073 0 4.2108e+060.3788 0.24399 0 4.2108e+060.30249 0.29189 0 4.2108e+060.23492 0.29446 0 4.808e+060.29465 0.24399 0 4.2108e+060.23514 0.24172 0 4.808e+060.18836 0.32277 0 4.808e+060.15992 0.32176 0 4.808e+060.08642 0.32181 0 4.808e+060.039994 0.32283 0 4.808e+060.20039 0.31211 0 4.808e+060.1417 0.29506 0 4.808e+060.20921 0.22332 0 4.808e+060.13884 0.24227 0 4.808e+060.085123 0.29441 0 4.808e+060.048446 0.31279 0 4.808e+060.086957 0.24399 0 4.808e+060.3788 0.21189 0 4.2108e+060.29465 0.19323 0 4.2108e+060.23755 0.19348 0 4.808e+060.29463 0.16054 0 4.2108e+060.23776 0.16054 0 4.808e+060.19016 0.21038 0 4.808e+060.15704 0.21245 0 4.808e+060.08678 0.21169 0 4.808e+060.012746 0.32168 0 4.808e+06-0.075715 0.32095 0 4.808e+06-0.10622 0.32304 0 4.808e+06-0.16391 0.32118 0 4.808e+060.00088411 0.29487 0 4.808e+06-0.057568 0.29457 0 4.808e+06-0.0034333 0.24399 0 4.808e+06-0.055185 0.24185 0 4.808e+06-0.10983 0.31352 0 4.808e+06-0.15082 0.29453 0 4.808e+06-0.11534 0.22049 0 4.808e+06-0.15155 0.24381 0 4.808e+06-0.1912 0.32173 0 4.808e+06-0.281 0.3185 0 4.808e+06-0.30791 0.32307 0 4.808e+06-0.33854 0.32148 0 4.808e+06-0.21248 0.29805 0 4.808e+06-0.26372 0.29905 0 4.808e+06-0.22562 0.24399 0 4.808e+06-0.25035 0.2371 0 4.808e+06-0.29941 0.31191 0 4.808e+06-0.35845 0.2954 0 4.808e+06-0.29231 0.22236 0 4.808e+06-0.36101 0.24172 0 4.808e+06-0.0034393 0.21129 0 4.808e+06-0.07306 0.21304 0 4.808e+06-0.10579 0.2099 0 4.808e+06-0.13642 0.21411 0 4.808e+06-0.22562 0.19323 0 4.808e+06-0.24439 0.19799 0 4.808e+06-0.22591 0.16041 0 4.808e+06-0.23466 0.16082 0 4.808e+06-0.3077 0.20998 0 4.808e+06-0.3413 0.21239 0 4.808e+06-0.40551 0.32178 0 4.2108e+06-0.50568 0.3218 0 4.2108e+06-0.41732 0.30844 0 4.2108e+06-0.44237 0.28859 0 4.2108e+06-0.41591 0.22004 0 4.2108e+06-0.44803 0.24236 0 4.2108e+06-0.50623 0.29315 0 4.2108e+06-0.50916 0.24296 0 4.2108e+06-0.57019 0.22334 0 4.2108e+06-0.59611 0.32199 0 4.2108e+06-0.65104 0.32199 0 4.2108e+06-0.72566 0.32129 0 4.2108e+06-0.75538 0.32301 0 4.2108e+06-0.59653 0.29315 0 4.2108e+06-0.65063 0.29315 0 4.2108e+06-0.59478 0.24245 0 4.2108e+06-0.65063 0.24399 0 4.2108e+06-0.70618 0.29525 0 4.2108e+06-0.76203 0.31284 0 4.2108e+06-0.70302 0.24183 0 4.2108e+06-0.77062 0.22133 0 4.2108e+06-0.41545 0.21099 0 4.2108e+06-0.45004 0.19812 0 4.2108e+06-0.4475 0.1673 0 4.2108e+06-0.52031 0.21236 0 4.2108e+06-0.55182 0.21045 0 4.2108e+06-0.5965 0.21131 0 4.2108e+06-0.65064 0.2113 0 4.2108e+06-0.72216 0.21286 0 4.2108e+06-0.7556 0.20987 0 4.2108e+06-0.78343 0.31973 0 4.2108e+06-0.87572 0.32111 0 4.2108e+06-0.90519 0.32263 0 4.2108e+06-0.95526 0.34127 0 4.2108e+06-0.79774 0.29271 0 4.2108e+06-0.85618 0.29497 0 4.2108e+06-0.79975 0.24326 0 4.2108e+06-0.8521 0.24246 0 4.2108e+06-0.91157 0.31224 0 4.2108e+06-0.95031 0.29572 0 4.2108e+06-0.92223 0.2213 0 4.2108e+06-0.94979 0.24354 0 4.2108e+06-0.78641 0.21505 0 4.2108e+06-0.87094 0.21237 0 4.2108e+06-0.90637 0.20934 0 4.2108e+06-0.93777 0.21481 0 4.2108e+060.22244 -0.0296 0 4.808e+060.2704 -0.078167 0 4.808e+060.24416 -0.056883 0 4.808e+060.27311 -0.10653 0 4.808e+060.26172 -0.10653 0 4.808e+060.2704 -0.1349 0 4.808e+060.24428 -0.15599 0 4.808e+060.19017 -0.025297 0 4.808e+060.14248 -0.02428 0 4.808e+060.19815 -0.037432 0 4.808e+060.14248 -0.03515 0 4.808e+060.093313 -0.02428 0 4.808e+060.044144 -0.02428 0 4.808e+060.093313 -0.03515 0 4.808e+060.044144 -0.03515 0 4.808e+060.21156 -0.17357 0 4.808e+060.029114 -0.12594 0 4.2108e+060.036583 -0.15619 0 4.2108e+060.22446 -0.20514 0 4.808e+060.2208 -0.2369 0 4.808e+060.2129 -0.208 0 4.808e+060.19316 -0.25672 0 4.808e+060.14497 -0.27484 0 4.808e+060.030167 -0.18748 0 4.2108e+060.1021 -0.27453 0 4.808e+060.1689 -0.2831 0 4.808e+060.13875 -0.28647 0 4.808e+060.086993 -0.29568 0 4.808e+060.044924 -0.3154 0 4.808e+06-0.0066125 -0.02428 0 4.808e+06-0.057362 -0.02428 0 4.808e+06-0.0066125 -0.03515 0 4.808e+06-0.057362 -0.03515 0 4.808e+06-0.10653 -0.02428 0 4.808e+06-0.15266 -0.025282 0 4.808e+06-0.10653 -0.03515 0 4.808e+06-0.16036 -0.037257 0 4.808e+060.0083286 -0.1259 0 4.2108e+060.0007442 -0.15603 0 4.2108e+06-0.1741 -0.17381 0 4.808e+06-0.18502 -0.02954 0 4.808e+06-0.20707 -0.056403 0 4.808e+06-0.23348 -0.07764 0 4.808e+06-0.2244 -0.10653 0 4.808e+06-0.23604 -0.10652 0 4.808e+06-0.20734 -0.15641 0 4.808e+06-0.23348 -0.13542 0 4.808e+060.0061083 -0.18729 0 4.2108e+06-0.066235 -0.27472 0 4.808e+06-0.17577 -0.20789 0 4.808e+06-0.10861 -0.27494 0 4.808e+06-0.15584 -0.25716 0 4.808e+06-0.0075775 -0.31546 0 4.808e+06-0.050817 -0.29595 0 4.808e+06-0.10306 -0.28653 0 4.808e+06-0.1319 -0.2831 0 4.808e+06-0.18716 -0.20571 0 4.808e+06-0.18369 -0.23729 0 4.808e+06
七、运行,首次运行很慢,需要耐心等待,如果窗口一闪而过,请使用CTRL+F5【滑动鼠标可以进行缩放和旋转】请注意pcd文件中的数据绘制的是logo而非球体,代码解析请阅读本人的PCL学习笔记(2)。
6 0
- PCL学习笔记(1):pcl1.6.0+vs2010环境配置以及第一个pcl程序
- OPENNI学习实践-pcl1.6.0+vs2010环境配置以及第一个pcl程序
- PCL学习笔记(一)PCL+VS2010环境配置
- PCL学习笔记(一)PCL+VS2010环境配置
- 《PCL点云库学习&VS2010(X64)》Part 19 PCL1.72(VTK6.2.0)PCL程序计时
- 《PCL点云库学习&VS2010(X64)》Part 20 PCL1.72(VTK6.2.0)PCL控制台程序线程
- pcl1.8.0+QT5.7.0+vs2013 win7 x64环境配置以及第一个小程序实现
- PCL1.7.0+vs2010+cmake3.3.2+win7(64)编译PCL库与环境配置
- 《PCL点云库学习&VS2010(X64)》Part 12 PCL1.72(VTK6.2.0)三角网格化(1)
- 《PCL点云库学习&VS2010(X64)》Part 8 PCL1.72(VTK6.2.0)可视化例程
- 《PCL点云库学习&VS2010(X64)》Part 9 PCL1.72(VTK6.2.0)滤波例程
- 《PCL点云库学习&VS2010(X64)》Part 10 PCL1.72(VTK6.2.0)选点操作
- 《PCL点云库学习&VS2010(X64)》Part 13 PCL1.72(VTK6.2.0)ICP示例
- 《PCL点云库学习&VS2010(X64)》Part 17 PCL1.72(VTK6.2.0)数据格式转换txt2pcd
- 《PCL点云库学习&VS2010(X64)》Part 18 PCL1.72(VTK6.2.0)编译CloudCompare注意点
- PCL学习笔记(1) win8 64bit系统 + VS208——搭建PCL开发环境
- PCL编程->VS2013+PCL1.8.0环境配置及初运行
- PCL环境搭配 (PCL1.7.2+WIN8.1+VS2015)
- D3D9黑屏优化大幅降低CPU占用率代码
- [经典面试题][腾讯]集合差集
- 【Java】两个ArrayList之间求交并补
- flashback
- sphinx 使用教程-挺简单易懂
- PCL学习笔记(1):pcl1.6.0+vs2010环境配置以及第一个pcl程序
- 数据集网址
- java混合字符串中获取汉字部分
- Square root - UVa 10023 大数开方
- TCP/IP 详解卷一 - UDP
- Codeforces Round #290 (Div. 2) A,B,C,D
- oracle的ROWNUM
- 有情怀的格子布局(类似锤子桌面布局源码)
- SOAP UI 创建SOAP工程进行接口测试