8.1 PFH&&FPFH

一、特征点的描述

三维点云第八节课主要内容为特征点的描述,上节课已讲解特征点的提取。

1.特征点的描述介绍 00:12

三维点云特征点描述方法分为两类:

  • 传统方法:如FPFH、SHOT等,部分已在PCL库中实现
  • 深度学习方法:本节将重点讲解四种深度学习方法
2.点的三个主题 00:35

点云特征处理的三个核心流程:

  • 特征点提取(Deduction)
  • 特征点描述(Description)
  • 特征点匹配(Match)
1) 特征点的匹配 00:47

特征点匹配的应用场景包括:

  • 点云配准:解决初始解限制问题
  • 数字人驱动:应用于直播、短视频领域的三维模型驱动技术
3.特征点的提取总结 01:15

特征点提取方法分类:

  • 传统方法:基于点周围几何结构分析(如Harris、ISS),通过协方差矩阵判断特征点
  • 深度学习方法:如3DCNN,但相关研究较少
  • 研究趋势:特征点描述领域深度学习方法更丰富,适合学术探索
4.点云的配置 02:19

点云配准技术路线:

  • 特征点提取
  • 特征描述
  • 特征匹配
  • RANSAC计算
  • 典型方法:PPFNet等深度学习描述方法
5.物体6D姿势 02:48

3DMatch方法通过特征点描述实现刚性物体定位,本质仍属于配准技术范畴。

6.特征点的传统方法描述 03:03

传统描述方法两大体系对比:

方法类型 原理 优势 缺陷 改进方向
直方图(Histogram) 统计邻域点特征分布 计算简单 无法区分镜像变换 引入局部参考系(LRF)
签名(Signature) 记录邻域点坐标均值 保留空间信息 对旋转敏感 建立旋转不变坐标系

关键问题:局部参考系(LRF)设计是解决旋转不变性的核心,该思想也被深度学习模型借鉴。

1) PFH 07:39

Point Feature Histogram方法框架:

输入要求:

  • 点坐标
  • 点法向量
  • 待描述特征点(Query Point)

输出特征:长度为B³的直方图数组(PCL默认B=5)

核心特性:

  • 6DoF不变性:对旋转平移变化鲁棒

  • 表面变化描述:通过邻域点法向量相对关系表征几何特征

  • 输入

    07:48

必需数据:

  • 点云坐标

  • 预计算的法向量

  • 指定特征点位置

  • 输出

    08:06

描述子维度:B³(典型值125维)

  • 核心思想

    08:28

技术实现:

  • 通过点对相对关系消除绝对坐标影响

  • 基于法向量差异表征表面曲率变化

  • 邻居

    09:25

邻域处理:

  • 以特征点为中心,半径r内所有点构成邻域

  • 计算邻域内所有点对的几何特征

  • 参考系

    10:07

局部坐标系构建:

  • 第一轴:点P1的法向量n1
  • 第二轴:n1与P1P2连线的叉积
  • 第三轴:前两轴的叉积

特征计算:

  • 距离d(通常弃用)
  • 角度特征α/φ/θ(用于直方图统计)

关键点:仅使用角度特征可避免扫描距离对描述子的影响。

  • 直方图

    15:41

直方图构建步骤如下:

  • 忽略d值,通常d值可靠性较低

  • 对于特征点周围k个邻居点,共产生k²个点对 - 每个点对生成三个标量参数(α,φ,θ)描述几何关系

  • 直方图构建方法:

    • 基础方法:分别对α/φ/θ建立独立直方图(各分b个区间),最终拼接为3b维向量
    • PFH方法:将三个参数视为三维坐标点,在三维网格(b³个单元)中进行投票统计
  • 应用案例

    19:09

  • 例题:不同区域有不同的直方图

三维投票机制中,k²个三元组作为坐标点投入三维网格,最终展开为b³维描述向量。不同空间区域的描述向量具有明显差异,该描述符可用于特征匹配等任务。

  • 例题:语义分割

    19:42

传统语义分割方法通过以下流程实现:

  • 为每个点生成特征描述向量(如PFH)
  • 使用SVM分类器训练特征向量
  • 基于几何特征(如圆柱/平面)区分不同物体
  • 该方法在深度学习前代表现尚可,但当前已被神经网络方案取代。
2) PFH总结 20:59

PFH方法核心特点:

  • 实现旋转不变性
  • 捕捉局部表面几何变化
  • 基于点对法向量与相对位置计算参数
  • 复杂度缺陷:n个特征点需计算nk²次运算
  • 敏感性问题:结果严重依赖法向量精度
3) FPFH 22:47

FPFH改进方案:

  • 简化计算:每个点仅计算与直接邻居的连线(k次运算)

  • 直方图构建:采用3b维拼接方案(非三维投票)

  • 加权融合 :

    • 中心点SPFH(简化直方图)
    • 邻居点SPFH的加权平均
    • 复杂度优化:从nk²降至nk
  • 例题:fpfh示例图

    27:33

FPFH直方图特征表现为三个明显峰值,对应α/φ/θ参数的独立统计结果。相较于PFH的b³维描述,3b维向量更易解析且计算效率更高。

4) fph与pfh的区别 29:07
对比维度 PFH FPFH
邻居连接方式 全连接 部分连接
影响范围 固定半径r r至2r
参数重复计算 存在
时间复杂度 O(nk²) O(nk)
描述符长度 3b
实际应用中优先选择FPFH,因其在相近效果下具备显著效率优势。
相关推荐
NEXT065 小时前
前端算法:从 O(n²) 到 O(n),列表转树的极致优化
前端·数据结构·算法
光泽雨5 小时前
检测阈值 匹配阈值分析 金字塔
图像处理·人工智能·计算机视觉·机器视觉·smart3
代码游侠6 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
想进个大厂6 小时前
代码随想录day37动态规划part05
算法
sali-tec6 小时前
C# 基于OpenCv的视觉工作流-章22-Harris角点
图像处理·人工智能·opencv·算法·计算机视觉
子春一6 小时前
Flutter for OpenHarmony:构建一个 Flutter 四色猜谜游戏,深入解析密码逻辑、反馈算法与经典益智游戏重构
算法·flutter·游戏
人道领域6 小时前
AI抢人大战:谁在收割你的红包
大数据·人工智能·算法
TracyCoder1237 小时前
LeetCode Hot100(34/100)——98. 验证二叉搜索树
算法·leetcode
A尘埃7 小时前
电信运营商用户分群与精准运营(K-Means聚类)
算法·kmeans·聚类