《PCL点云库 C++ 》
文章平均质量分 90
梁Rio
这个作者很懒,什么都没留下…
展开
-
《PCL点云库学习&VS2010(X64)》Part 51 PTDV0.2迭代加密三角网算法V0.2
《PCL点云库学习&VS2010(X64)》Part 51 PTDV0.2迭代加密三角网算法V0.21、利用实际点云测试初级版本的渐进加密三角网算法: 1、获取最低点 2、构建初始三角网 3、更新最低点 4、更新三角网 5、获取地面点2、测试效果:第一组:建筑物尺寸40m原始构网图: 原始点云(左)与地面点云(右)对比图: 其他...原创 2018-05-28 22:16:56 · 4109 阅读 · 9 评论 -
《PCL点云库学习&VS2010(X64)》Part 40 三角网格碰撞检测
《PCL点云库学习&VS2010(X64)》Part 40 三角网格碰撞检测1、距离检测:2、1)距离检测2)碰撞点检测——动画中的红色(细看有,粗看无)3)容差检测原创 2017-05-21 01:12:00 · 2633 阅读 · 5 评论 -
《PCL点云库学习&VS2010(X64)》Part 32 计算点云中点的索引
《PCL点云库学习&VS2010(X64)》Part 32 计算点云中点的索引1、返回实际点的索引 选点后,有时并非是点云上的点,而是与屏幕交互时得到的点,该点可以打印出来,但是在点云中并没有具体的索引。所以在选取点后,我们可以将该点设置一个cloudhandle,同时设置一个RenderingPointCloudProperty,让点改变颜色,同时改变点的大小。原创 2017-04-21 14:22:19 · 2121 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 30 空间中求一点到两点所构成的直线的距离
《PCL点云库学习&VS2010(X64)》Part 30 空间中求一点到两点所构成的直线的距离参考1最近在做叶面重建的工作,构建叶面TIN的算法中会用到3维中点到直线的距离方程,一开始以为像二维一样有公式之类的,后来找了一下没有找到,就写了一个函数,分享一下。double dis_3D(Point a,Point b,Point s){ double ab=sqr转载 2017-04-19 11:41:41 · 3922 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 38 Compare Eigen matrices for equality
《PCL点云库学习&VS2010(X64)》Part 38 Compare Eigen matrices for equality主要介绍利用Eigen库比较两个矩阵是否相等。isApprox1、该方法执行两个矩阵的元素相减,并计算得到的矩阵的Frobenius范数(Frobenius norm)。它检查该值是否小于或等于可以传入的精度参数。如果不传入任何精度值,则将范数与零进行比原创 2017-05-16 21:27:43 · 625 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 34 旋转平移矩阵用法
《PCL点云库学习&VS2010(X64)》Part 34 旋转平移矩阵用法1、变换与投影矩阵讲解:https://en.wikipedia.org/wiki/Transformation_matrixhttp://web.iitd.ac.in/~hegde/cad/lecture/L6_3dtrans.pdf点云变换主要涉及平移、旋转、缩放、反射、剪切、视角转换、投影等,这里原创 2017-04-23 12:44:55 · 6859 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 37 FLANN——快速最近邻搜索库
《PCL点云库学习&VS2010(X64)》Part 37 FLANN——快速最近邻搜索库一、介绍 该算法库在OpenCV和PCL等开源库中应用较广,是PCL的默认安装库之一。与PCL自带的Kdtree比较,暂时没做比较,但是将其专门作为一个库,说明其功能的强大及其实用性好。包含6个函数:1、Index2、buildIndex3、addPoints原创 2017-05-14 19:35:36 · 2033 阅读 · 0 评论 -
《Qt》part 11 Qt5.5 VowelBox
《Qt》part 11 Qt5.5 VowelBox第二十章中的OpenGL的代码,在Qt5.5中的调试,有的需要注意,不然能通过调试,但是无法得到线框矩形。代码:main.cpp#include #include #include "vowelcube.h"int main(int argc, char *argv[]){ QApplication a(ar原创 2017-04-18 16:19:03 · 613 阅读 · 3 评论 -
《PCL点云库学习&VS2010(X64)》Part 39 批处理命令设置PCL的环境变量
《PCL点云库学习&VS2010(X64)》Part 39 批处理命令设置PCL的环境变量文章来源:http://www.lofter.com/tag/PCL在安装PCL 1.7.2 AllInOne的时候发现需要设置一个永久的环境变量,找了一下相关资料发现是使用setx这条命令。如果想设置JAVA_HOME,则需执行如下命令即可:setx PC转载 2017-05-17 23:36:36 · 564 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 36 OpenTopography-激光雷达技术工具集
《PCL点云库学习&VS2010(X64)》Part 36 OpenTopography工具注册表-激光雷达技术工具集1、主要介绍当前主流的激光雷达数据处理库、开源软件、商业软件等。 英文主页: http://opentopo.sdsc.edu/tools/listTools2、日期 工具名称 工具类型 关键词 评分2017年1月12日 planlauf /地形原创 2017-05-10 15:09:15 · 6828 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 33 循环中的多个点云ID处理技巧
《PCL点云库学习&VS2010(X64)》Part 33 循环中的多个点云ID处理技巧在局部拟合过程中,会产生多个局部点云数据,可视化过程中会出现PointCloudID的处理问题:SetPointCloudRenderingProperty()函数会有警告:couldn't find the point cloud id ...解决方法:#include原创 2017-04-21 16:58:49 · 1403 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 31 pcl::PointCloud::Ptr和pcl::PointCloud相互转换
《PCL点云库学习&VS2010(X64)》Part 31 pcl::PointCloud::Ptr和pcl::PointCloud相互转换1、在函数返回指针时,经常会出现不知道的错误,不用返回指针,直接得到PointXYZ,再将其转化为Ptr。#include #include #include pcl::PointCloud::Ptr cloudPointer(new原创 2017-04-20 16:20:51 · 5475 阅读 · 1 评论 -
《PCL点云库学习&VS2010(X64)》Part 41 图形学领域的关键算法及源码链接
《PCL点云库学习&VS2010(X64)》Part 41 图形学领域的关键算法及源码链接原文链接:Conference papersGraphics Conference Paper Link Archive (Ke-Sen Huang)Reproducible Research archive (image processing, vision, machi转载 2017-06-06 10:16:05 · 4141 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 18 PCL1.72(VTK6.2.0)编译CloudCompare注意点
《PCL点云库学习&VS2010(X64)》Part 17 PCL1.72(VTK6.2.0)编译CloudCompare注意点1、CMake时注意boost的路径;2、CMake时注意CMake_Install_Prefix的路径,该路径是CMake生成后,打开.sln文件,编译、安装生成,所得到的应用程序exe的路径。此时最好修改一下,方便后期查找,不修改也没关系。3、Inst原创 2016-08-31 17:04:21 · 3778 阅读 · 3 评论 -
《PCL点云库学习&VS2010(X64)》Part 50 PTDV0.1迭代加密三角网算法V0.1
《PCL点云库学习&VS2010(X64)》Part 50 PTDV0.1渐进加密三角网算法V0.1利用随机点和ArrayList来实现初级版本的渐进加密三角网算法:1、生成随机点2、构建三角网3、生成新的随机点4、判断新的点是否在三角网中5、若是,加入点列表中6、更新三角网一、示例1初始点:10个点添加随机点:1000个点 随机生成1...原创 2018-05-22 01:27:04 · 3209 阅读 · 4 评论 -
《PCL点云库学习&VS2010(X64)》Part 49 OpenCV与FLANN混合使用时uchar相互冲突的解决方法
《PCL点云库学习&VS2010(X64)》Part 49 OpenCV与FLANN混合使用时uchar相互冲突的解决方法同时使用opencv和pcl库的朋友都遇到过来这个头痛的问题——Flann冲突。究其根本是因为两个库同时使用了flann,造成歧义,同时FLANN中的matrix.h文件和OpenCV的types_c.h文件中都定义了uchar,编译时就会造成未定义标识符等编译错误...原创 2018-03-26 14:01:09 · 2518 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 25 PCL点云操作函数汇集
《PCL点云库学习&VS2010(X64)》Part 25 PCL点云操作函数汇集一、pcl::copyPointCloud()函数的用法:1、将索引中的点云复制到pcl::PointXYZ中存储起来。注:一般滤波算法、RANSAC算法、Cluster算法中都会有索引提取,当然在Cluster提取时要注意,有的Cluster里面是很多聚类后的点云,要分别转存,用迭代器和循环解决。#原创 2017-03-31 09:14:11 · 7736 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 48 基于霍夫变换的点云平面检测法
《PCL点云库学习&VS2010(X64)》Part 48 基于霍夫变换的点云平面检测法参考文献: Dorit Borrmann, Jan Elseberg, Kai Lingemann, and Andreas Nüchter. The 3D Hough Transform for Plane Detection in Point Clouds - A Review and A new Acc原创 2017-12-22 17:26:54 · 5510 阅读 · 6 评论 -
《PCL点云库学习&VS2010(X64)》Part 5 VTK6.2+VS2013+Qt5.5 测试VTK基于VS2013的Qt程序
VS2013-64bitPCL1.72-allinone-32bitQt5 -msvc2013-64bit Qt-msvc2013- Add-in 1.2.3cmake-3.4.3-win32-x86VTK6.2.0原创 2016-05-19 20:03:56 · 5377 阅读 · 6 评论 -
《PCL点云库学习&VS2010(X64)》Part 46 点云分类—画刷分类
《PCL点云库学习&VS2010(X64)》Part 46 点云分类—画刷分类最近被这个鼠标消息函数弄得晕头转向,算法思路很清晰,逻辑分析及调试能力还有待提高。该算法主要针对分类而言,针对CloudCompare中的多段线分割,在此思路的触发下,写了画刷分类算法,目前见到的软件就国外的TerraSolid与另外一个软件可以做到,国内的Lidar360及点云魔方等暂时还没有。功能很简单,实现起来也还好原创 2017-12-01 17:08:58 · 2225 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 47 鼠标选取点云坐标的计算原理
openGL从鼠标坐标转换到三维坐标转换的方法利用鼠标获取的二维坐标,映射到三维点云中,查找出对应的三维坐标,是选点的基本算法步骤。 参考博文: 在opengl下从鼠标坐标转换到三维坐标的方法基本原理: 1、利用鼠标的mousePress()函数找到鼠标坐标点; 2、屏幕坐标转换:将鼠标坐标转换到屏幕坐标; 3、glReadPixels()函数找到深度坐标winZ; 4转载 2017-12-09 16:20:56 · 3885 阅读 · 1 评论 -
《PCL点云库学习&VS2010(X64)》Part 45 点云压缩算法—扫描线(DouglasPeuckerAlgorithm)
《PCL点云库学习&VS2010(X64)》Part 45 点云压缩算法—扫描线(DouglasPeuckerAlgorithm)道格拉斯-普克算法主要应用有点云滤波、点云压缩、点云分割、轮廓线提取等,还可用于曲线拟合、曲线平滑、轨迹线压缩等。前期在做滤波算法,查阅论文时发现这个算法的介绍,出于好奇就在网上搜了一下,资源蛮多,找到了一个与点云相关的算法,将其稍微修改了下,贴出来供大家参考。1、mai原创 2017-11-01 09:09:57 · 3638 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 43 协方差矩阵的特征向量
《PCL点云库学习&VS2010(X64)》Part 43 协方差矩阵的特征向量对协方差矩阵的特征向量最直观的解释之一是它总是指向数据方差最大的方向。更准确地说,第一特征向量是数据方差最大的方向,第二特征向量是与第一特征向量垂直的方向上数据方差最大的方向,第三特征向量是与第一和第二特征向量垂直的方向上数据方差最大的方向,以此类推。下图是二维空间的一个例子:原创 2017-08-31 13:59:28 · 7792 阅读 · 7 评论 -
《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误
《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误在使用欧式聚类时,发现debug版本可以编译通过并正常运行,而在release版本中,直接编译不通过,开始以为是库编译出了问题,后来在maillist中发现有人遇到同样的问题。具体错误:error LINK2019:无法解析的外部符号“public: void __cde原创 2017-09-06 08:54:42 · 3954 阅读 · 4 评论 -
《PCL点云库学习&VS2010(X64)》Part 42 OCtreeViewer
《PCL点云库学习&VS2010(X64)》Part 42 OCtreeViewer1、八叉树可视化主要是八叉树可视化,官方教程中有一个八叉树栅格可视化的例程,很多时候见过,但却不知道在哪里,怎么用,下面直接贴代码:#include #include #include #include #include #include #include #include "boos原创 2017-07-26 21:42:31 · 1533 阅读 · 5 评论 -
《PCL点云库学习&VS2010(X64)》Part 28 BoundingBox&addArray
《PCL点云库学习&VS2010(X64)》Part 28 BoundingBox&addArray参考资源1参考资源2参考资源3代码:#include VTK_MODULE_INIT(vtkRenderingOpenGL);VTK_MODULE_INIT(vtkInteractionStyle);VTK_MODULE_INIT(vtkR原创 2017-04-18 09:51:57 · 2742 阅读 · 13 评论 -
《PCL点云库学习&VS2010(X64)》Part 35 VFH_Recognition——FLANN_Build_Tree
《PCL点云库学习&VS2010(X64)》Part 35 VFH_Recognition——FLANN_Build_Tree#include #include #include #include #include #include #include #include #include typedef std::pair > vfh_model;/** \b原创 2017-04-29 13:39:51 · 1339 阅读 · 12 评论 -
《PCL点云库学习&VS2010(X64)》Part 17 PCL1.72(VTK6.2.0)数据格式转换txt2pcd
《PCL点云库学习&VS2010(X64)》Part 17 PCL1.72(VTK6.2.0)数据格式转换txt2pcd1、txt转换成pcd点云格式#include#include#include #include #include #include using namespace std;int main(){typedef struct tagPOINT_3D原创 2016-08-31 11:36:55 · 2365 阅读 · 6 评论 -
《PCL点云库学习&VS2010(X64)》Part 15 PCL1.72(VTK6.2.0)三角网格化(2)之泊松重构
《PCL点云库学习&VS2010(X64)》Part 15 PCL1.72(VTK6.2.0)三角网格化(2)之泊松重构1、cpp//点的类型的头文件#include //点云文件IO(pcd文件和ply文件)#include #include //kd树#include //特征提取#include #include //重构#include #include原创 2016-07-14 20:57:39 · 3555 阅读 · 7 评论 -
《PCL点云库学习&VS2010(X64)》Part 9 PCL1.72(VTK6.2.0)滤波例程
Part 9 PCL1.72(VTK6.2.0)滤波例程一、直通滤波1、新建空的控制台程序:passthrough,属性列表中加入.props属性配置文件。2、代码passthrough.cpp:#include #include #include #include intmain(int argc, char** argv){ srand(time(0)); pc原创 2016-06-12 17:26:14 · 3128 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 13 PCL1.72(VTK6.2.0)ICP示例
Part 13 PCL1.72(VTK6.2.0)ICP示例1、ICPcpp:#include #include #include #include #include int main(int argc, char** argv){ pcl::PointCloud::Ptr cloud_source (new pcl::PointCloud); pcl::Po原创 2016-06-30 10:28:02 · 1872 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 10 PCL1.72(VTK6.2.0)选点操作
Part 10 PCL1.72(VTK6.2.0)选点操作1、单点选取程序:cpp:#include #include #include #include typedef pcl::PointXYZRGBA PointT;typedef pcl::PointCloud PointCloudT;// Mutex: //boost::mutex cloud_mut原创 2016-06-21 20:31:45 · 4475 阅读 · 16 评论 -
《PCL点云库学习&VS2010(X64)》Part 7 PCL双边滤波BilateralFilter
Part 7 PCL双边滤波BilateralFilterPCL里的双边滤波,双边滤波主要作用是具有保边的功能,即在滤波的过程中不会连带边界一起都平滑掉,这样有利于计算准确的法线。一般情况下双边滤波的效果不是很明显,最好是分别计算了运行前后点云的法线,可以通过法线的分布清楚的分出效果来。void Filters::bilateralFilter(pcl::PCLPointCloud2:原创 2016-05-29 15:00:39 · 5574 阅读 · 2 评论 -
《PCL点云库学习&VS2010(X64)》Part 11 PCL1.72(VTK6.2.0)点特征描述与提取
Part 11 PCL1.72(VTK6.2.0)点特征描述与提取1、NARF_Feature_Extractioncpp/* \author Bastian Steder */#include #include #include #include #include #include #include #include #include #include #in原创 2016-06-22 09:50:23 · 3026 阅读 · 21 评论 -
《PCL点云库学习&VS2010(X64)》Part 6 VTK6.2+VS2013+Qt5.5 测试VTK基于VS2013的Qt程序之PCLViewer
Part 6 VTK6.2+VS2013+Qt5.5 测试VTK基于VS2013的Qt程序之PCLViewer 1、新建一个VS下的Qt程序,QApplication,命名为PCLViewer :配置属性->VC++目录->包含目录:D:\VTK\V原创 2016-05-25 22:48:13 · 3391 阅读 · 22 评论 -
《PCL点云库学习&VS2010(X64)》Part 1 Installation of PCL in VS2010(x64)
《VS2010(X64)&PCL点云库学习》Part 1 Installation of PCL in VS2010(x64) 一、PCL+VS2010环境配置我的电脑环境参数:操作系统:Win原创 2016-03-24 16:57:46 · 5761 阅读 · 14 评论 -
《PCL点云库学习&VS2010(X64)》Part 2 A simple test of PCL in MFC
《VS2010(X64)&PCL点云库学习》Part 2 A simple test of PCL in MFC 本文主要介绍如何将PCL的控制台程序移植到MFC中,基本内容还是按照上一篇PCL配置博文来继续讲解的。1、新建MFC程序原创 2016-04-11 09:18:46 · 2851 阅读 · 0 评论 -
《PCL点云库学习&VS2010(X64)》Part 4 MFC+VTK+VS2010 测试VTK的MFC对话框程序
Part 4 MFC+VTK+VS2010 测试VTK的MFC对话框程序 1、新建空的对话框程序PointCloudViewer,头文件PointCloudViewer.h// PointCloudViewerDlg.h :原创 2016-05-15 22:19:33 · 2552 阅读 · 2 评论 -
《PCL点云库学习&VS2010(X64)》Part 19 PCL1.72(VTK6.2.0)PCL程序计时
《PCL点云库学习&VS2010(X64)》Part 19 PCL1.72(VTK6.2.0)PCL程序计时1、系统计时clock()头文件:time.h函数原型:clock_t clock(void);功能:该函数返回值是硬件滴答数,要换算成秒,需要除以CLK_TCK或者 CLK_TCKCLOCKS_PER_SEC。比如,在VC++6.0下,这两个量的值都是1000。原创 2016-08-31 23:05:52 · 1080 阅读 · 1 评论 -
《PCL点云库学习&VS2010(X64)》Part 20 PCL1.72(VTK6.2.0)PCL控制台程序线程
《PCL点云库学习&VS2010(X64)》Part 20 PCL1.72(VTK6.2.0)PCL控制台程序线程1、控制台中添加线程#include ……while (!viewer.wasStopped()) { //在此处可以添加其他处理 viewer.spinOnce(100);原创 2016-09-04 16:11:38 · 1001 阅读 · 0 评论