TACO-Net: Topological Signatures Triumph in 3D Object Classification¶
会议: ECCV2026
论文: ECCV 原文
作者: Anirban Ghosh, Ayan Dutta;University of North Florida
领域: 3D 视觉
关键词: 点云分类、拓扑数据分析、立方持久同调、多方向滤波、轻量卷积网络
一句话总结¶
TACO-Net 先把点云转换为多种灰度体素上的固定拓扑统计,再训练轻量 1D CNN 学习这些统计之间的关系,在 ModelNet40 上取得 99.05% OA,但包含拓扑特征生成的完整吞吐量约为 5.3 个点云/秒。
研究背景与动机¶
点云分类要从无序、疏密不均且可能缺失的三维采样中识别物体类别。PointNet 直接聚合逐点特征,PointNet++ 再引入局部邻域,DGCNN 学习邻接关系;这些方法主要让网络从坐标及其局部关系中建立形状表示。另一条路线先体素化或渲染多视图,再让深层网络处理规则输入。它们都需要回答同一个问题:如何保留足以区分类别的形状结构,而不被采样位置和噪声牵着走。
持久同调提供了不同的观察方式:不只观察哪里有点,而是记录随着一个阈值变化,连通分量、环和空腔在什么时候出现、什么时候消失。不过,单一拓扑描述并不自动成为好分类器;同一物体从不同方向扫描、围绕不同中心扩张,可以暴露不同结构,而这些结构的统计组合仍需要学习。本文因此把困难拆在一个明确边界上:前端只计算固定、可复用的形状描述,后端负责把描述变成有类别判别力的表示。
核心 idea:用互补的灰度滤波定义多种“观察形状的顺序”,经立方持久同调压缩成定长签名,再以小型 1D CNN 学习签名之间的高阶组合,而不对拓扑计算反向传播。 这是通用 3D 物体分类方法,自动驾驶只是动机中的应用,不是本文专属任务。
方法详解¶
整体框架¶
输入是一个物体的点云,输出是封闭类别集合中的类别概率。点云先在自身轴对齐包围盒内变为二值体素,包含至少一个点的体素记为占据;随后经过多滤波形状探测、立方拓扑签名和签名卷积分类三个阶段,对应原文图 4 和图 5。
前两阶段没有可学习参数,可以预先计算并缓存。最后的网络接收的是有固定拼接顺序的统计向量,不是原始点序列,也不是直接在三维体素上进行卷积。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
INPUT["物体点云"] --> VOXEL["包围盒内二值体素化"]
VOXEL --> FILTER["多滤波形状探测<br/>高度、径向与 DEDS"]
FILTER --> TOPO["立方拓扑签名<br/>持久图与统计向量"]
TOPO --> CNN["签名卷积分类<br/>三层 1D CNN"]
CNN --> OUTPUT["物体类别概率"]
关键设计¶
1. 多滤波形状探测:同一占据网格,从不同顺序观察结构
二值体素只回答某处是否有点,无法直接表达结构如何逐渐连起来。TACO-Net 为它赋予不同的灰度值,以此定义后续加入体素的先后顺序。高度滤波采用坐标取自 -1、0、1 且排除零向量的 26 个方向,按到对应超平面的距离给占据体素赋值;未占据体素被放到最大距离再加 1 的位置,因此较晚进入。径向滤波改为测量到参考中心的距离,最多从包围盒内部的三维规则网格选取 27 个中心,探测围绕不同位置的结构组织。
另外四类滤波统称 DEDS:密度统计半径 1 邻域内的占据体素数;膨胀取到最近占据体素的曼哈顿距离;腐蚀对占据与未占据互换后的网格执行膨胀;有符号距离则对占据体素取到最近未占据体素的曼哈顿距离减 1,对未占据体素取到最近占据体素的距离的负值。它们分别引入局部密集程度、外部距离、内部结构及边界两侧距离信息。
这里的“滤波”首先产生灰度体,并不等于神经网络滤波器;之后才按灰度阈值做持久同调的过滤序列。最大配置包含 26 个高度、27 个径向和 4 个 DEDS 灰度体。ModelNet10/40 实际只保留前 18 个径向中心,即按 x 坐标分组后的前两片、每片内部按字典序排列的中心,因此实际使用 48 个灰度体。原文称中心数和体素分辨率仅在训练划分上选择,不能把“固定前端”理解成所有数据集超参数完全相同。
2. 立方拓扑签名:把变长的结构事件压缩为可学习的定长统计
对每个灰度体,算法按灰度从低到高添加体素及其面、边、顶点,得到嵌套的立方复形。随阈值升高,连通分量合并,环可能出现后被填平,封闭空腔也可能形成或消失。算法分别在 \(H_0,H_1,H_2\) 中记录这些事件的出生与死亡,组成持久图;这里三者依次对应连通分量、环或隧道、封闭空腔。这样既利用体素规则结构,也避免把所有采样点直接组成复杂的点集复形。
持久图大小因物体而异,因此还要向量化。每个同调维度先计算一个持久熵,以归一化生命周期衡量寿命分布的分散程度。对参与计算的有限生命周期,原文定义为:
这里 \(b_i,d_i\) 是出生和死亡阈值;公式说明统计量的含义,缓存正文未充分说明无穷寿命和空图的具体实现处理,复现时仍应核对补充代码。熵之外还计算持久图到空图的 amplitude:Wasserstein 使用阶数 1、2,Bottleneck 取极限情形,Betti 曲线计算存活区间数量并取两种范数,持久景观使用层数 1、2 及两种范数,热核使用标准差 0.15 及两种范数。
三个同调维度合计得到 3 个熵值,以及 Wasserstein 6、Bottleneck 3、Betti 6、景观 12、热核 6 个幅值,总计每个灰度体 36 维。Betti 曲线和景观使用 100 个阈值采样,热核使用 20 个。原文的全配置与 ModelNet 配置于是分别对应:
多种统计分别概括寿命分布、最长结构及不同阈值下的拓扑活动,避免只靠一个汇总量。不过,有限方向加统计压缩不等价于完整持久同调变换的可逆性保证;本文引用的理论是设计动机,不能据此断言 1728 维向量唯一确定任意形状。
3. 签名卷积分类:学习固定描述符之间的组合,而不是重新学习拓扑
网络依次使用卷积核大小为 3、5、7 的三层 Conv1D,每层后接批归一化和 ReLU。前两层通道数为 128、64,第三层在 ModelNet 上等于类别数,在 ScanObjectNN 上为 40,在两个医学数据集上为 32;随后通过输出维数等于类别数的全连接层和 softmax 得到分类概率。ModelNet40 模型有 0.72M 可学习参数。
卷积的局部邻域位于“固定顺序的拓扑统计向量”上,不能误读为空间中邻近的点。其作用是逐层组合相邻统计并形成判别表示;向量的生成过程不参与梯度更新。原文替换分类器的实验也说明,拓扑特征本身并不足以解释全部增益:相同的最佳 ModelNet40 特征配 XGBoost 得到 81.35% OA,配作者测试的 2.2M 参数 Transformer 得到 62.20%,均显著低于这套 CNN。但这只支持所测试配置,不能推广成卷积普遍优于 Transformer。
一个完整示例¶
原文图 2 展示一个包含 2048 个点的 ModelNet40 汽车。以体素大小 0.05 将点落到二值网格后,点的输入排列不会改变哪些网格被占据;从车头方向扫描和从侧向扫描时,结构进入复形的顺序却不同,因而会产生不同持久图。
按照 ModelNet 配置,同一辆车生成 48 个灰度体,每个灰度体经三个同调维度汇总为 36 个数,拼接后得到 1728 维。这个向量进入三层卷积和 40 类分类头,输出汽车等类别的概率。这个例子只是沿用图 2 的输入解释流程,不虚构该样本的置信度或逐项拓扑数值。
损失函数 / 训练策略¶
拓扑部分由 Python 的 giotto-tda 实现,1D CNN 由 MATLAB 实现。硬件为 Intel i9-12900K、32 GB 内存和 NVIDIA RTX 3060。采用 Adam,初始学习率为 \(10^{-3}\),批大小 128,最多训练 1000 轮,训练损失低于 0.005 时提前停止;除另有说明,每种配置训练 5 次并报告平均结果。
正文描述了 softmax 分类和训练损失阈值,但没有明确列出具体损失函数公式,因此不擅自补写额外的拓扑损失或正则项。训练仅优化分类网络;每个数据集仍需训练自己的分类器,多数据集结果不是同一个模型的零样本迁移。
实验关键数据¶
主实验¶
OA 是所有测试样本的整体准确率,mAcc 是按类别分别计算准确率后取平均;以下准确率单位均为 %。ModelNet40 使用体素大小 0.05、1728 维特征,ModelNet10 使用同一特征长度。ScanObjectNN 表 2 的比较范围是从头监督训练,不能延伸为优于所有预训练方法。
| 数据集 / 条件 | 指标 | TACO-Net | 对比方法 | 对比值 | 原文位置 |
|---|---|---|---|---|---|
| ModelNet40,标准测试 | OA / mAcc | 99.05 / 97.97 | RotationNet | 97.37 / 96.29 | 表 1 |
| ModelNet10 | OA / mAcc | 99.52 / 99.52 | 此处不补录基线 | 未列 | 第 3.1 节正文,附录表号未解析 |
| ScanObjectNN,OBJ_BG | OA | 95.08 | Mamba3D | 94.49 | 表 2 |
| ScanObjectNN,OBJ_ONLY | OA | 94.01 | Mamba3D | 92.43 | 表 2 |
| ScanObjectNN,PB_T50_RS | OA | 91.87 | Mamba3D | 92.64 | 表 2 |
ModelNet40 相对 RotationNet 的 OA 增益是 1.68 个百分点。最难的 PB_T50_RS 上则低于 Mamba3D 0.77 个百分点,是表内第二而非第一。原文另报 ModelNet40 五折交叉验证平均 OA 97.49%、标准差 0.32;这不是标准划分 99.05% 的重复测量,不能把二者写成同一结果的均值与误差。
消融实验¶
下表为 ModelNet40 的特征与网络消融,来自表 6;完整模型取表 1 作为参照。H 表示高度滤波,R 表示径向滤波,DEDS 为密度、腐蚀、膨胀及有符号距离四类。
| 配置 | OA (%) | mAcc (%) | 说明 |
|---|---|---|---|
| 完整模型 | 99.05 | 97.97 | 1728 维,三层 Conv1D |
| 仅 DEDS | 96.52 | 93.76 | 不使用高度和径向 |
| 仅 R | 95.47 | 91.52 | 只保留径向特征 |
| 仅 H | 98.29 | 96.38 | 高度本身已很强 |
| DEDS + H | 98.82 | 97.33 | 移除径向后的对照 |
| 仅持久熵 | 96.16 | 92.79 | 不使用 amplitude |
| 仅前两层 Conv1D | 98.18 | 95.93 | 保留最佳输入特征 |
| 仅第一层 Conv1D | 94.76 | 90.70 | 保留最佳输入特征 |
关键发现¶
- 高度滤波是最强的单组特征;在 DEDS + H 上加入径向特征的 OA 增益为 0.23 个百分点。仅 H 的完整流水线据报快 3.5 倍,仅熵的特征生成快 2.2 倍,这两个加速范围不同。
- 体素大小不是越细越好:0.03 时 OA/mAcc 为 98.61/96.96,0.07 时为 98.30/96.16,均低于 0.05 的设置。更细网格还增加拓扑计算成本。
- 对损坏数据的测试借鉴 ModelNet40-C,但使用 2048 × 3 点云且损坏后不归一化;另增加低/高强度分别随机删除 10%/30% 点的均匀下采样,不能视为完全相同的标准协议。
- 低强度 impulse 损坏下 OA 只有 52.88%;高强度旋转下,未增强模型为 49.39%,在训练中加入随机选取 20% 训练样本的损坏副本后升至 96.11%。前者使用干净数据训练、按干净测试准确率选出的最佳保存模型,不是五次平均的默认条件。
亮点与洞察¶
- 最可复用的思想是把形状表示和判别学习分开:同一套固定拓扑特征可缓存后反复训练分类器,有利于分析“描述能力不足”与“分类器不合适”分别造成的影响。
- 多方向高度滤波携带的是随扫描顺序变化的结构信息,而不仅是物体整体有几个孔。仅 H 的强结果说明几何信息可以通过拓扑事件的发生时刻进入表示。
- 特征预算可以显式调整:滤波数量和统计类型直接决定输入长度。表 6 给出了减少特征后仍保留较高准确率的依据,但实际部署仍应同时测量前端成本。
局限与展望¶
- 作者明确把拓扑前端加速列为后续方向。体素大小 0.05 时,特征生成及完整流水线约为 5.3 个点云/秒;16,454 个点云/秒只是已有特征上的分类速度,2.50 分钟训练时间也不能代表从原始点云开始的全部准备成本。
- 拓扑稳定性不意味着对任意旋转、离群点或占据关系突变都稳定。固定方向、轴对齐包围盒与有限分辨率仍引入姿态和离散化依赖,impulse 与高强度旋转的退化提供了直接反例。
- 作者强调滤波族与向量化规则跨数据集复用,但径向中心数、体素分辨率和部分网络通道数会变化。因此“无需任何数据集适配”比原文实际设置更强,不宜使用。
- 当前缓存保留多个未解析的附录引用,缺少相应附录表和部分预处理细节;五次训练的标准测试均值与五折结果还存在明显差距。应进一步核对数据划分、参数选择流程、特征归一化和补充实现,不能仅凭高准确率断言存在或不存在泄漏。
- 本文在多种数据集分别评估,尚不能据此证明跨域零样本泛化或整场景自动驾驶能力。可探索更快的持久同调实现、姿态增强和拓扑统计与局部几何特征的互补融合。
相关工作与启发¶
- vs PointNet / PointNet++ / DGCNN:这些方法从点坐标或邻域学习特征,TACO-Net 先固定形状描述再学习分类。其优势是前端可解释、可缓存,代价是离散化和统计压缩可能丢失细粒度局部信息。
- vs RotationNet:后者以多视图和视点估计进行物体分类,本文使用点云体素上的拓扑签名。表 1 支持该基准上的准确率差异,但两者输入表示和计算流程不同。
- vs TopoRec:TopoRec 面向大规模点云识别而非这里的类别分类。作者报告其最近向量方案在 ModelNet40 上约为 36% OA,换成本文 CNN 后约为 69%,提示前端签名设计和学习后端都不可省略。
- 持久同调变换的启发:完整变换的形状辨识理论帮助解释为什么要使用多方向扫描;将理论转化为有限方向、有限统计量后的误差分析,仍是值得补足的研究环节。
评分¶
- 新颖性: 4/5。把互补立方滤波、丰富拓扑统计和轻量 CNN 组合成有效的分类流程,但主要组件已有前作基础。
- 实验充分度: 4/5。包含多数据集、特征和网络消融及损坏测试,但部分协议与附录细节在缓存中不完整。
- 写作质量: 3/5。主流程较清楚,未解析引用及“通用性”措辞需要读者结合实际超参数辨析。
- 价值: 4/5。为固定拓扑描述符加轻量学习器提供强实证,部署价值仍受前端吞吐量限制。