《PCL点云库学习&VS2010(X64)》Part 46 点云分类—画刷分类
2017-12-01 17:08
369 查看
《PCL点云库学习&VS2010(X64)》Part 46 点云分类—画刷分类
最近被这个鼠标消息函数弄得晕头转向,算法思路很清晰,逻辑分析及调试能力还有待提高。该算法主要针对分类而言,针对CloudCompare中的多段线分割,在此思路的触发下,写了画刷分类算法,目前见到的软件就国外的TerraSolid与另外一个软件可以做到,国内的Lidar360及点云魔方等暂时还没有。功能很简单,实现起来也还好。
思路:
一、单个点画刷
(1)选取屏幕坐标后触发mousePressEvent()函数;
(2)触发相应的PointPicked()函数,找到鼠标点坐标;
(3)找到鼠标坐标点对应到GL窗口中的三维坐标;
(4)查找三维坐标邻域,将邻域点设置颜色标记并新建对象输出。
2、连续移动画刷
(1)移动鼠标,触发mouseMoveEvent()函数,返回鼠标坐标点集;
(2)每次移动鼠标触发相应的PointPicked()函数,找到鼠标点坐标集;
(3)找到鼠标坐标点集对应到GL窗口中的三维坐标点集;
(4)查找三维坐标集邻域,并标记每个邻域点;
(5)剔除重复点,将所有邻域点设置颜色标记并新建对象输出。
效果雏形图:
相关文章推荐
- 《PCL点云库学习&VS2010(X64)》Part 13 PCL1.72(VTK6.2.0)ICP示例
- 《PCL点云库学习&VS2010(X64)》Part 33 循环中的多个点云ID处理技巧
- 《PCL点云库学习&VS2010(X64)》Part 9 PCL1.72(VTK6.2.0)滤波例程
- 《PCL点云库学习&VS2010(X64)》Part 16 PCL1.72(VTK6.2.0)滤波例程(2)之双边滤波
- 《PCL点云库学习&VS2010(X64)》Part 4 MFC+VTK+VS2010 测试VTK的MFC对话框程序
- 《PCL点云库学习&VS2010(X64)》Part 31 pcl::PointCloud::Ptr和pcl::PointCloud相互转换
- 《PCL点云库学习&VS2010(X64)》Part 11 PCL1.72(VTK6.2.0)点特征描述与提取
- 《PCL点云库学习&VS2010(X64)》Part 10 PCL1.72(VTK6.2.0)选点操作
- 《PCL点云库学习&VS2010(X64)》Part 36 OpenTopography-激光雷达技术工具集
- 《PCL点云库学习&VS2010(X64)》Part 2 A simple test of PCL in MFC
- 《PCL点云库学习&VS2010(X64)》Part 47 鼠标选取点云坐标的计算原理
- 《PCL点云库学习&VS2010(X64)》Part 1 Installation of PCL in VS2010(x64)
- 《PCL点云库学习&VS2010(X64)》Part 24 PCL&VTK&Eigen Spline曲线拟合
- 《PCL点云库学习&VS2010(X64)》Part 30 空间中求一点到两点所构成的直线的距离
- 《PCL点云库学习&VS2010(X64)》Part 45 点云压缩算法—扫描线(DouglasPeuckerAlgorithm)
- 《PCL点云库学习&VS2010(X64)》Part 39 批处理命令设置PCL的环境变量
- 《PCL点云库学习&VS2010(X64)》Part 12 PCL1.72(VTK6.2.0)三角网格化(1)
- 《PCL点云库学习&VS2010(X64)》Part 27 PCL中的区域增长之—Region_Growing算法
- 《PCL点云库学习&VS2010(X64)》Part 5 VTK6.2+VS2013+Qt5.5 测试VTK基于VS2013的Qt程序
- 《PCL点云库学习&VS2010(X64)》Part 28 BoundingBox&addArray