来自密歇根大学等机构的研究者提出了一个新颖且全面的数据集 ModelNet40-C ,以系统地测试以及进一步提高点云识别模型对于失真的稳健性。
3D 点云广泛应用于 3D 识别技术中。一些特别的应用领域往往对 3D 点云识别的安全性有更高的要求,如自动驾驶、医疗图像处理等。学界目前对点云安全性的研究集中在对抗攻击的稳健性。与对抗性攻击相比, 自然的失真和扰动在现实世界中更为常见。然而目前还没有关于 3D 点云针对失真的稳健性的系统性研究。论文地址: https://arxiv.org/abs/2201.12296
项目主页: https://sites.google.com/umich.edu/modelnet40c
开源 Github: https://github.com/jiachens/ModelNet40-C
近日,来自密歇根大学等机构的研究者提出了一个新颖且全面的数据集 ModelNet40-C ,以系统地测试以及进一步提高点云识别模型对于失真的稳健性。ModelNet40-C 包含 185000 个点云数据,它们来自 15 种不同的点云失真类型,且每个类型有 5 种不同的严重程度。这些点云失真分为 3 大类:密度 (density) 失真、噪音 (noise) 失真、以及变换 (transformation) 失真。实验表明,目前具有代表性的 3D 点云识别模型(比如:PointNet、PointNet++、DGCNN 以及 PCT)在 ModelNet40-C 上的错误率比在原本 ModelNet40 数据集上的错误率高出超过 3 倍,如下图 1 所示。这证明了点云深度模型框架仍然非常容易受到常见失真的影响。图 1. 深度点云识别代表性模型在 ModelNet40 和 ModelNet40-C 数据集上的错误率。根据这一发现,该研究进一步做了大量的测试去探索不同模型架构,数据增强,以及自适应方法对于失真稳健性的影响。研究者根据实验结果总结了多个发现来帮助 3D 点云识别技术的开发者们设计更稳健的模型以及训练方案。例如,研究者发现基于 Transformer 的点云识别架构在提高模型对于失真的稳健性有很大的优势;不同类型的数据增强策略对各种类型的失真有不同的优势;测试时自适应方法对一些很严重的失真有很好的稳健性,等等。图 2. ModelNet40-C 数据集失真类型图示。失真稳健性在 2D 图像上已经得到广泛关注,其中 CIFAR-C 和 ImageNet-C 通过模拟不同天气,噪声,以及模糊来构建失真数据集。然而该研究的研究者发现 3D 点云的失真与 2D 图像有根本的不同,原因在于点云数据结构更加灵活且不规则,例如,一个点云内点的数量是可以改变的,同时 3D 点云位置的改变也很容易影响语义信息。研究者提出 3 点构建 ModelNet40-C 的原则:1) 语义不变性、2) 失真切实性、3) 失真多样性来保证数据集的质量。ModelNet40-C 的失真分为密度 (density) 失真,噪音 (noise) 失真,以及变换 (transformation) 失真三类。密度失真包括 “遮挡”,“激光雷达 (LiDAR)”,“局部密度上升”,“局部密度下降”,以及“局部缺失” 5 种,它们模拟了现实中不同传感器生成点云密度的不同特征,例如,“遮挡” 模拟了传感器在扫描 3D 物体时受角度限制只能生成一部分点云。噪音失真包括 “均匀分布”,“高斯分布”,“脉冲”,“上采样”,以及“背景” 噪音,他们模拟现实中传感器生成时以及程序预处理过程中不可避免的数字噪声与误差。变换失真包括“旋转”,“错切”,“自由形变”,“径向基形变”,以及“反径向基形变”,前两种模拟了在处理点云数据时非对准状态以及动态采集数据时的失真,后三种则代表了 AR/VR 游戏以及生成模型 (GAN) 产出的点云失真。图 3. 在 ModelNet40-C 上 6 个模型的平均混淆矩阵。研究者阐述了这些失真是点云应用中非常常见的,并且保证了生成的数据集仍然保持了原有的语义,如图 2 所示。图 3 展示了在 ModelNet40-C 上 6 个模型的平均混淆矩阵,对角线上的比重依然很高,这同样交叉验证了 ModelNet40-C 的语义不变性。ModelNet40-C 上基准测试 (Benchmarking) 结果与分析在构建 ModelNet40-C 之后,该研究进行了大批量的基准测试,包含不同模型架构设计,不同数据增强方法,以及不同自适应方法的实验设置。表 1. 在标准训练下不同模型在 ModelNet40-C 上的错误率。如表 1 所示,该研究在 PointNet, PointNet++, DGCNN, RSCNN, PCT, 以及 SimpleView 六个模型上进行了基准测试。研究者总结了一些发现: 1) “遮挡”和 “激光雷达” 给点云识别模型造成了极高的错误率。2) 小角度的 “旋转” 仍然会很大程度影响点云识别性能。3) “背景”和 “脉冲” 噪声给大部分模型带来了意想不到的挑战。研究者进而这些发现也可以反映到模型设计上。1) PointNet 对密度失真较为稳健,但是整体上缺表现不佳。这是因为 PointNet 只编码全局特征而没有局部特征,这种特性一直以来被认为是 PointNet 的主要缺点。但是密度失真是局部特征损失,这反而对 PointNet 的影响有限,但是这种机制确实导致 PointNet 对其他的失真类型非常敏感。研究者建议今后对 PointNet 的使用应该考虑应用场景。2) 球查询 (ball query) 的聚类方法对 “背景” 和“脉冲”噪声更加稳健。这是因为球聚类相对于 kNN 聚类限定了最大聚类半径,这样的设计有助于帮助模型去除相差很远的异常值的影响。3) 基于 Transformer 的点云识别模型对变换失真更加稳健,这是因为自注意力 (self-attention) 机制能够使得模型能够学习到更稳健以及全面的全局特征,而且 Transformer 架构也实现了更大的模型容量,使得其对于全局的形变失真更稳健。表 2. 在标准训练下不同模型在 ModelNet40-C 上的错误率。如表 2 所示,该研究采用 PointCutMix-R, PointCutMix-K, PointMixup, RSMix, 以及对抗训练 (Adversarial Training) 作为 5 种数据增强的训练方式。研究者发现: 1) 这些数据增强的方案虽然对于干净数据集上对模型性能的提升有限,但是都显而易见地提高了模型在点云失真场景下的稳健性。2) 没有一种数据增强方案可以主宰所有的失真类型。PointCutMix-R 对于噪音失真的稳健性很好因为它随机采样两个不同类别的点云并直接合成,所以生成的点云是两个已有点云降采样的“重叠”,以至于每个降采样的点云对于另一半来说都相当于噪音失真。所以这样的数据增强模式可以极大地提高噪音失真的稳健性。PointMixup 对变换失真的表现较好因为 PointMixup 是对两个不同类别的点云做最小距离配对并“插值” 采样,所以生成的点云的形状介于两种种类之间,这种于变换失真中的整体形变接近,所以其对变换失真更为稳健。RSMix 则对密度失真稳健,虽然 RSMix 整体思路与 PointCutMix 接近,但其严格规定刚性合成,即两个不同类别的点云采样过后在 3D 空间仍然是独立的,没有“叠加”。这样的合成相当于两个独立的局部缺失的点云,所以其对密度失真的稳健性较好。表 3. 在标准训练下不同模型在 ModelNet40-C 上的错误率。该研究首次将测试时自适应方法应用到点云识别的任务中来。研究者采用 BN 和 TENT 方法去更新模型的批标准化层 (BatchNorm Layer)的参数,他们发现: 1) 测试时自适应方法可以稳定地提升模型的稳健性,但总体上并没有数据增强的效果好;2) 测试自适应方法对一些困难的失真类型效果出乎意料的好。例如,平均而言,TENT 有助于在“遮挡” (错误率 = 47.6%),“激光雷达 (错误率 = 54.1%), 和“旋转” (错误率 = 19.8%) 失真类型下实现最强的稳健性,分别比最佳数据增强方法高出 6.7%,1.9%,和 7.9%。这证明了自适应方法在提高点云识别失真稳健性的巨大潜力。研究者最终将数据增强中整体表现最好的 PointCutMix-R 与自适应方法 TENT 结合,发现基于 Transformer 架构的 PCT 模型达到了目前最好的整体失真稳健性 (错误率 = 13.9%)。这一发现同时验证了 Transformer 在模型稳健性的成功,与之前的研究 (Bai, Yutong, et al. ,2021) 在 Transformer 对 2D 图像的结论基本吻合。该研究提出了一个新颖并且全面的 3D 点云识别稳健性分析数据集 ModelNet40-C。研究者提出并构建了了 75 种不同的失真类型和程度来模拟真实场景中由于物理限制、传感器准确度限制、以及处理过程中造成的点云失真和损坏。ModelNet40-C 包含 185000 个不同的点云数据。实验表明,目前代表性的模型在 ModelNet40-C 上的错误率比在原本 ModelNet40 数据集上的错误率高出~ 3 倍。该研究通过大量的基准测试展现了不同模型架构,不同数据增强策略,以及自适应方法在 ModelNet40-C 上的性能并总结了有用的发现来帮助 3D 点云社区设计更稳健的识别模型。我们期待着 ModelNet40-C 数据集能加速今后更多的点云识别稳健性的研究!