目录 1.PCL环境搭建 2.常用的点云文件 3.认识点云的文件格式 4.点云的数据结构 5.输入输出(IO) 6.KD树 7.Oc树(八叉树) 8.点云可视化 9.点云滤波 去噪滤波 投影滤波 裁剪滤波 采样滤波 10.点云拟合分割 ransac拟合 常用的分割模型 最小二乘拟合 11.常用基础函数与功能 common模块 常见图形生成 12.点云与图像 13.特征点与特征描述及提取 单点特征 关键点提取 特征描述子提取 14.点云配准 粗配准 精配准 配准中常用功能 刚体旋转表述转换 15.点云曲面重建 1.PCL环境搭建 pcl1.8.1 vs2019环境搭建 PCL1.14.1 VS2022环境配置 2.常用的点云文件 本案例常用的点云测试文件 常用的几何图形点云(感兴趣选) 斯坦福常用的点云(可选) STL点云(可选) 3.认识点云的文件格式 了解PCD格式文件 了解PLY格式文件 了解XYZ格式文件 了解PTS格式文件 了解LAS格式文件 了解OBJ格式文件 4.点云的数据结构 pcl的点类型 自定义点的数据类型 pcl点云结构与核心内容 5.输入输出(IO) I/O模块介绍 PCD文件读写 PLY文件读写 txt文件读写 OBJ文件格式读写 STL文件读写 6.KD树 Kd-tree概述与原理 K近邻查询 半径范围内查询 圆柱形领域搜索 点云的分辨率计算 球形领域搜索 点云重叠区域计算 点云非重叠区域计算 删除点云中的重复点一 删除点云中的重复点二 删除点云中的重复点三 7.Oc树(八叉树) Oc-tree概述与原理 基于八叉树的体素中心滤波 点云空间压缩 点云空间变化检测 基于八叉树的体素滤波 基于八叉树的k近邻搜索 基于八叉树的半径搜索 8.点云可视化 显示点云自身颜色 改变点云颜色和背景颜色 随机为点云着色 基于高度对点云渲染着色 基于曲率对点云渲染着色 点云添加2D字体 点云添加3D字体 点云添加坐标系 点云可视化界面添加几何图形 显示点云法向量 体素网格可视化 多窗口显示点云 单个窗口显示多个点云 点云进行点选操作 点云实现框选操作 任意点选两点计算距离并可视化 任意点选三点计算角度并可视化 9.点云滤波 去噪滤波 直通滤波 体素滤波器 近似体素滤波 基于最近点的体素滤波 基于最少点的体素滤波 统计滤波器 半径滤波器 条件滤波器 基于曲率的条件滤波器 模型滤波器 去除点云无效点一 去除无效点二 中值滤波器 高斯滤波器 双边滤波器 快速双边滤波 从点云中提取子集一 从点云中提取子集二 投影滤波 点云投影到平面 点云投影到球面 点云投影到直线 点云投影到圆柱面 裁剪滤波 平面裁剪滤波 立方体裁剪滤波 多边形裁剪滤波 采样滤波 格网最低点采样 局部最大值点采样 随机下采样一 随机下采样二 均匀下采样 基于索引的均匀下采样 移动最小二乘(MLS)上采样 法线空间采样 法线空间随机采样 两点之间插值 最远点采样 10.点云拟合分割 ransac拟合 ransac拟合直线 ransac拟合直线(c++详细版) ransac拟合多条直线 ransac拟合2D圆 ransac拟合2D圆(三点定圆 c++详细版) ransac拟合多个2D圆 ransac拟合空间圆 ransac拟合多个空间圆 ransac拟合平面 ransac拟合平面(c++详细版) ransac拟合多个平面 ransac拟合球 ransac拟合球(c++详细版) ransac拟合多个球体 ransac拟合圆柱 ransac拟合多个圆柱 常用的分割模型 基于欧式聚类的点云分割 基于曲率的区域增长分割 基于颜色的区域增长分割 基于最小图分割 基于法线微分分割 MeanShift聚类分割算法 基于CPC算法点云分割 基于LCCP算法点云分割 最小二乘拟合 最小二乘拟合二维直线 最小二乘拟合二维圆 最小二乘拟合球 最小二乘拟合平面 11.常用基础函数与功能 common模块 角度与弧度相互转换 求点云质心 计算点云的协方差矩阵 计算点云质心和协方差矩阵 点云去均值操作 计算两向量之间的夹角 计算数组的平均值和标准差 计算点云给定点距离最远的点 计算点云的最大值和最小值 计算三角形的外接圆半径 计算平面多边形的面积 计算两条线段之间的最短距离和对应点 计算点到直线的距离 计算两点之间的欧式距离 批量读取任意格式的点云文件路径 从给定路径中提取文件名(有扩展名) 从给定路径中提取文件名(无扩展名) 代码计时功能 求两空间直线的交点 两平面的交线 两平面的交线(c++详细版) 计算三平面的交点 计算三平面的交点(c++详细版) 计算点到平面距离 计算两个异面直线的距离 点云按坐标轴排序 合并两个点云 等比例放大缩小点云 常见图形生成 生成任意直线点云 生成任意2D圆点云 生成任意3D圆点云 生成任意平面点云 生成任意球点云 生成任意圆锥点云 生成任意2D椭圆点云 生成任意3D椭圆点云 生成任意长度的圆柱点云 生成空间立方体点云 生成任意椭球点云 点云OBB包围盒 点云AABB包围盒 利用点云最值求AABB包围盒 主成分分析法(PCA)求OBB包围盒 简单的点云包围球算法 12.点云与图像 点云转深度图(C++详细版) 点云转灰度图(C++详细版) 点云转强度图(C++详细版) 深度图转点云(C++详细版) 13.特征点与特征描述及提取 单点特征 点云特征提取概念 求点云法向量并可视化 点云主曲率的计算 点云高斯曲率和平均曲率计算 积分图求点云法向量 最小二乘(MLS)求点云法向量 计算点云三维不变矩 关键点提取 ISS算法关键点提取 Harris3D算法关键点检测 基于高度的SIFT算法关键点检测 基于RGB的SIFT算法关键点检测 基于强度的SIFT算法关键点检测 基于曲率的SIFT算法关键点检测 特征描述子提取 PFH算法计算特征描述子 FPFH算法计算特征描述子 SHOT算法计算特征描述子 RSD算法计算特征描述子 VFH算法计算特征描述子 3DSC算法计算点云描述子 Spin Image算法计算特征描述子 14.点云配准 粗配准 4PCS算法点云粗配准 K4PCS算法点云粗配准 基于FPFH特征的Ransac配准算法 点云模板匹配算法 SAC-IA算法点云粗配准 精配准 点到点的icp算法精配准 点到点的kd-icp算法精配准 点云kd-GICP算法精配准 点到面的icp算法精配准 点到面的LS-icp精配准 NDT算法精配准 配准中常用功能 配准评价指标单向Hausdorff距离计算 配准评价指标双向Hausdorff距离计算 配准评价指标均方誤差MSE计算 配准评价指标均方根誤差RMSE计算 SVD分解算法求旋转平移矩阵 旋转平移矩阵应用 仿射变换矩阵应用 透视变换矩阵应用 放缩矩阵的应用 点云任意平面镜像变换 罗德里格斯旋转变换 刚体旋转表述转换 欧拉角转旋转矩阵 旋转矩阵转欧拉角 四元数转旋转矩阵 旋转矩阵转四元数 欧拉角转四元素 四元素转欧拉角 轴角转旋转矩阵 旋转矩阵转轴角 轴角转四元素 四元素转轴角 轴角转欧拉角 欧拉角转轴角 15.点云曲面重建 平面点云凹边界提取 平面点云的凸边界提取 点云边界提取 α-shape算法曲面重建 PolygonMesh数据结构介绍 耳切三角剖分算法 泊松曲面重建算法 贪婪三角化算法 贪婪投影三角化算法 hoppe移动立方体三维重建算法 RBF移动立方体算法