当前位置:首页|资讯|编程|深度学习

全网唯一!!三维点云分类的对抗性攻击和防御综述

作者:3D视觉工坊发布时间:2024-01-02

作者:大森林 | 来源:3DCV

在公众号「3DCV」后台,回复「原论文」可获取论文pdf和代码链接

添加微信:CV3d008 备注:BEV,拉你入BEV群。文末附行业细分群

摘要

作为一种主要的AI技术,深度学习已经成功地解决了大量的2D视觉任务。最近,在3D点云方面,深度学习正在变得越来越流行,用于解决这个领域的各种任务。尽管已经取得了显著的成就,但深度学习算法很容易受到对抗性攻击。这些攻击几乎是人眼无法察觉到的,但却可以在测试和部署阶段轻易欺骗的深度神经网络。为支持未来的研究,本综述总结了目前在点云分类方面的对抗性攻击和防御技术的最新进展。本文首先介绍了对抗性攻击的原理和特点,并总结和分析了近年来对抗性实例的生成方法。 此外,本文将防御策略分类为输入转换、数据优化和深度模型修改。最后,我们提出了几个本领域具有挑战性的问题和未来的研究方向。

I. 引言

深度学习(DL)[1]是机器学习(ML)和人工智能(AI)的一个子集,它利用类似于人脑的结构来分析大量数据。深度学习的特点是使用可以处理和分析大量数据的多层神经网络。这些神经网络在大规模数据集上进行训练,这使得它们能够自主学习模式并做出决策。近年来,深度学习在图像识别[2,3]、语义分割[4,5]、语音识别[6,7]和自然语言处理[8]等领域取得了令人瞩目的成果。

尽管DL取得了巨大的成功,但Szegedy等人[9]在2013年发现,深度模型在图像分类任务中对对抗性实例很脆弱。对抗性实例是对深度学习模型的输入进行了修改,旨在误导模型。例如,在图像分类中,对抗性实例可能是一张熊猫图片,经过了人眼几乎无法察觉的略微修改,但导致深度学习模型将图像分类为长臂猿。对抗性实例可以在2D或3D空间中创建。在2d空间的情况下生成对抗性实例,输入为图像,修改图像的像素。这些修改可以给图像的像素添加小扰动[10,11,12,13,14,15,16],也可以是给图像结构的进行更为显著的修改[17,18,19,20]。

得益于3D采集技术的快速发展,各种类型的3D扫描仪、激光雷达和RGB-D相机变得越来越经济实惠。3D数据通常用作深度神经网络(DNN)的输入,应用于医疗保健[21]、自动驾驶汽车[22]、无人机[23]、机器人技术[24]和许多其他应用中。与2D数据相比,这些3D数据从环境中获取了更多信息,从而允许进行更复杂的分析。3D数据有不同的表示,如voxel[25]、网格[26]和点云[27]。点云可以直接从扫描仪接收,因此它们可以精确地捕获形状细节,成为许多安全关键应用中首选的表示方式。在3D的情况下生成对抗性实例,输入是点云,修改点云中的点。这种实例可以通过添加、删除和移动点云中的一些点来创建,或者通过使用生成式对抗网络(GAN)或其他变换技术生成具有预定义目标标签的全新点云来创建。与3D空间相比,在2D空间中创建对抗性实例通常更容易,因为输入空间更小,可以扰动的维度更少。一般来说,因为对抗性实例利用模型预测过程中的漏洞或弱点,并且人眼通常难以从正常实例区分出它们,所以非常难以检测。因此,对抗性实例可能对DL模型的安全性和可靠性构成严重威胁。为了确保DL模型的健壮性和可靠性,拥有有效针对对抗性实例的防御方法非常重要。

2D图像和3D点云的对抗性防御都旨在保护DL模型免受对抗性实例的欺骗。但是,用于防御对抗图像和对抗性点云的方法之间存在一些关键差异。一些主要区别包括:

  • 输入数据:对抗图像是2D数据表示,而对抗性点云是3D数据表示。这意味着防御对抗图像和点云的方法可能需要考虑输入数据的不同维度和特性。

  • 对抗扰动:对抗图像可能通过在图像像素中添加小扰动进行修改,而对抗性点云可能通过对点云中的单个点或点组应用扰动进行修改。这意味着防御对抗图像和点云的方法可能需要根据所使用的对抗扰动类型进行调整。

  • 复杂性:防御对抗性点云可能比防御对抗图像更复杂,因为应用于点云扰动可能更加难以识别和消除。这可能需要使用更复杂的防御防御方法,例如能够从输入点云中检测和消除对抗扰动的方法。

总的来说,对抗性点云可能更难识别和防御,因为它们在3D点云数据中可能更不容易识别。与图像相比,由于缺乏相关经验,人类可能不会轻易感受到对抗性点云的变化,从而它们可能更具危害性和更难防御。因此,对3D点云的对抗性攻击和防御进行全面调查非常重要,以发现当前方法的挑战和局限性,并确定未来在这一领域的研究机会。目前已经发表了许多综述文章,在计算机视觉、机器学习和深度学习系统的背景下,调查了一般的对抗性攻击和防御。这些综述提供了对各种类型的攻击和防御的概述,以及它们的优缺点。但是,这些综述几乎没有专门关注3D点云领域的攻击和防御。 一些已发表的综述确实简要提到了3D攻击和防御[28],但是相关内容不全面,我们需要更全面地深入探讨这个主题的综述。表1列出了已发表综述的对抗性攻击和防御的摘要或概述。其中一些综述侧重于特定领域,如计算机视觉[28,29,30]、文本[31]和图像[32,33,34,35],而其他的提供人工智能领域对抗性攻击和防御的更广泛概述[36,37]。

表1 已发表的对抗性攻击和防御调查综述

我们的主要贡献如下:

  • 综述了不同类型的对抗性点云,以及生成它们所使用的方法,并为这些方法提出一个分类方法。

  • 综述了为了防御对抗性点云所提出的各种方法,包括数据优化、输入变换方法和深度模型修改。

  • 对研究人员在这一领域中使用的最重要的数据集和模型进行分类。

  • 评估当前方法对3D点云的对抗性攻击和防御的挑战和局限性,并确定未来在这一领域研究的机会。

图1 3D点云上对抗性攻击和防御方法的分类

图1显示了针对3D点云的对抗性攻击和防御方法的分类概述。本文的其余部分组织如下。第二节介绍本文中使用的符号、术语和测量列表。我们在第三节中讨论针对3D点云分类的深度模型的对抗性攻击。第四节详细回顾了现有的对抗性防御方法。在第五节中,我们总结了通常使用的3D数据集,并提出了最近研究中使用的数据集和受害者模型的分类法。我们在第六节中讨论与对抗性攻击相关的当前挑战和潜在解决方案。最后,第七节总结了这项调查。

II. 背景

在这一节中,我们提供了3D对抗性攻击领域必要的背景知识,包括中使用的符号、术语和点云距离度量。通过建立清晰的定义,研究人员可以更准确地比较不同方法的有效性,并识别这些方法中的趋势或模式。

A. 定义术语

为了对各种方法和途径进行一致的讨论,定义文献中使用的技术术语至关重要,这些术语的定义如下。本文的剩余部分也遵循这些定义。

  • 3D点云是3D空间中的一组点,通常表示3D形状或场景。

  • 对抗性点云是经过有意修改,以误导分析3D点云的DL模型的3D点云。我们关注几何修改,而不是属性(例如颜色)修改,因为这些是我们所调研的对抗性点云文献的主要内容。

  • 对抗性攻击是一种技术,旨在向输入点云引入扰动或噪声,以欺骗DL模型,导致其做出错误预测或决策。

  • 黑盒攻击是一种攻击者只能访问模型的输入和输出,不能访问所攻击的DL模型的结构的对抗性攻击。

  • 白盒攻击是一种攻击者知道所攻击DL模型的所有架构和参数详细信息的对抗性攻击。

  • 目标攻击通过操纵输入点云,导致模型遇到修改后的点云会输出特定的目标标签。

  • 非目标攻击通过操纵输入点云,使模型输出错误标签,而不考虑该标签是什么。

  • 添加点攻击通过添加点到点云以欺骗DL模型。

  • 点移位攻击通过移动点云中的点以欺骗DL模型,同时点的数量与原始点云中保持相同。

  • 删除点攻击通过从点云中删除点以欺骗DL模型。

  • 基于优化的攻击是一种对抗性点云的创建被公式化并作为优化问题被优化的攻击类型。

  • 基于渐变的攻击是一种利用代价函数处理每个输入点来渐变地生成对抗性点云,增加错误分类趋势的攻击类型。

  • 表面扰动攻击是一种通过修改点云中物体表面的点的攻击。

  • 表面外扰动攻击是一种通过修改点云中物体表面之外的点的攻击。

  • 可转移性是指为一个DL模型生成的对抗性实例成功地导致另一个DL模型发生错误分类的能力。

  • 对抗性防御是一系列旨在减轻对抗性攻击的影响并提高DL模型的鲁棒性的技术。

  • 攻击成功率是指对DL模型进行对抗性攻击的成功次数百分比。

B. 距离度量

如果对抗性攻击的目标是修改点,则会创建一个可能会欺骗DL模型输出错误结果的对抗性点云。3D几何对抗性攻击可以通过添加、删除或移动点来实现。如果通过移动点生成对抗性点云,则可以使用范数来测量和之间的距离,因为两个点云具有相同数量的点。在这种情况下,我们可以讨论向量差异(扰动),并将视为和之间的距离。的典型选择是,,,方程为:

其中是由个3维空间中的点组成的原始点云,,,,,和第个点,,,,是3D坐标向量。是通过向添加对抗扰动,,,,而形成的对抗性点云。三种常见的范数具有以下解释:

  • 范数或计数中的非零元素的数量,因此它指示中与相比发生了多少点的变化。

  • 范数或是和之间的欧几里得距离。

  • 范数或是和之间的点中的最大差异。

如上所述,距离标准要求和具有相同数量的点。因此,这些距离度量无法用于涉及添加或删除点的攻击。为了量化不具有相同点数的两个点云之间的不相似度,通常使用Hausdorff距离和Chamfer距离。Hausdorff距离定义如下:

它查找每个对抗点的最近原点,然后找到所有这种最近点对之间的最大平方欧几里得距离。Chamfer距离与Hausdorff距离类似,除了它对所有最近点对的距离求和,而不是取最大值:

可选地,Chamfer距离可以关于两个点云中的点数平均。

除上述提到的距离度量之外,点云还有其他距离度量,例如点到平面距离,用于点云压缩。但是,这些在3D对抗性攻击的文献中不常见,所以我们在这里不评论它们。

III. 对抗性攻击

本节描述生成对抗性的七种最常见方法。我们的讨论涵盖这七种广泛使用的方法的技术细节,还简要讨论与这七种攻击相关的衍生方法。本节中描述的一些方法[45,46]是2D数据的对抗实例的扩展版本,适用于3D点云。这些方法可能会由于数据的额外维度而面临新的挑战。其他方法[47]是专门为3D数据设计的,可能比仅将2D数据的方法扩展而来的方法更有效地生成对抗性点云。因为这些方法可能会考虑3D点云及处理它们的深度模型的独特特征。总体而言,这些方法的目标是更好地理解对抗性可能如何影响当前的深度3D模型。最流行的方法也在表3(见原文)中进行了总结,我们解释了对抗性攻击和攻击类别如何与点云分类任务中相关的对抗性实例。

A. 3D快速梯度符号方法(3D FGSM)

Goodfellow等人[61]提出了快速梯度符号方法(FGSM)。 根据标准FGSM,该方法向给定点云的每个点添加对抗扰动,以创建对抗性作为。根据每个点的梯度符号扰动是生成的。扰动可以表示为

:,

其中是由参数化的从输入点云映射到输出标签的深度模型。,是模型关于的损失函数的梯度,表示符号函数。值是一个调节超参数,确定原始输入和对抗输入之间的范数之差。

FGSM由Liu等[54]扩展到3D数据。下面介绍了三种不同的方法[54]来定义值作为的约束,如下所示:

1)约束每个点的范数在和的维度之间。

2)约束每个点的范数在每个点的和之间。

3)约束每个点的范数在所有点与之间。

由于第一种方法严重限制了点的移动,作者建议第二种和第三种方法。然而,所有三种方法在攻击成功率方面差异很小。

图2 原始点云和3D FGSM对抗对应物[45]的示例,Chamfer距离从0.01变化到0.05

Yang等[45]使用Chamfer距离(而不是范数)在3D域中扩展FGSM。使用这种方法,对抗性中的每个点进行略微扰动。Chamfer距离与攻击成功率之间存在权衡,因为随着Chamfer距离的减小,对抗性攻击实现高攻击成功率可能变得更加困难。然而,如果Chamfer距离设置太高,模型可能更容易受到对抗性攻击。在这两个因素之间找到正确的平衡可能具有挑战性,并且可能取决于特定的点云模型特征和使用的对抗性攻击类型。图2说明了Chamfer距离在两个点云之间变化从0.01到0.05的FGSM对抗性的一个实例。作者在[45]中将其设置为0.02作为“适当距离”。

除FGSM攻击之外,Yang等[45]还引入了另一种攻击,称为“动量增强逐点渐变(MPG)”。MPG攻击类似于[62],将动量集成到FGSM的迭代中。MPG攻击产生更可转移的对抗实例。

B. 3D卡林尼和瓦格纳攻击(3D C&W)

C&W攻击由Carlini和Wagner[63]提出。他们提供了三种攻击,具有三种不同的距离度量,范数、范数和范数。作为一般规则,生成C&W攻击可以描述为一个优化问题,以找到最小扰动,使得对抗输入的标签更改为目标标签。

其中指的是距离度量(可以使用不同的距离度量定义,如范数、Chamfer距离或Hausdorff距离),是一个适当选择的常数,如果的标签被更改为目标标签,。通过这样做,距离和惩罚项可以更有效地优化。作者[63]列出了七个目标函数。根据他们的实验评估,一个有效的函数也被其他论文使用,如下所示:

其中表示Softmax函数,表示控制置信度的常数。与FGSM攻击相比,这些攻击不对扰动施加约束。事实上,这些攻击在不施加任何约束的情况下搜索最小扰动来改变标签为目标标签。

图3  C&W攻击的四种类型,导致瓶子标签被错误分类

第一个实例是Xiang等[46]开发的C&W攻击的3D版本。根据论文[46],提出了四种类型的攻击。在图3中,您可以看到这四种C&W攻击,其中瓶子的标签已被错误分类。

  1. 通过使用范数(所有点与之间)作为距离度量,以可以忽略的距离移动点云表面的点。

  2. 通过添加对抗独立点,使用两种不同的距离度量。1.原点云与对抗性点云之间的 Chamfer距离。2.原点云与对抗性点云之间的Hausdorff距离。这些度量被用来将独立点推向点云的表面。

  3. 通过三种不同距离度量的组合添加对抗集群。1.原点云与对抗集群之间的 Chamfer距离用于将集群推向点云的表面。2. 添加的集群数量。使用此度量,仅添加1到3个集群,因此添加的集群数量很小。3. 最小化最大距离。在此度量中,最小化每个集群中两个最远点之间的距离,以将添加的点约束在小区域内聚集。

  4. 通过三种不同距离度量的组合添加对抗对象。1. 原点云与对抗对象之间的Chamfer距离用于将对抗对象推向点云的表面。2. 添加的对象数量。使用此度量,仅添加1到3个对象,因此添加的对象数量很小。3. 范数在真实世界对象与对抗对象之间用于生成类似真实世界的形状。

第一种攻击是基于移动点,其他三种攻击是基于添加点。由于直接将点添加到无界的3D空间不可行,因此最后三种攻击使用关键点的位置作为对抗点(或簇或对象)的初始位置。关键点类似于对分类结果具有关键作用的关键点。在PointNet中,关键点的一个实例是计算最大池化后剩余的点。

Tsai等[53]开发了一种称为K近邻(KNN)的移位点攻击,它通过添加额外的距离损失来限制相邻点之间的距离,从而将对抗性限制在物理对象内。他们使用Chamfer距离来测量两个点云之间的距离。

Wen等[52]考虑了一种新的称为局部曲率一致性的距离度量,以指导扰动的点朝向物体表面。采用C&W攻击框架,作者使用Chamfer距离、Hausdorff距离和局部曲率一致性距离的组合作为距离度量来创建几何感知对抗性攻击(GeoA3)。生成的GeoA3攻击具有平滑性和公平性表面属性,因此与原始点云的差异对人眼几乎难以察觉。

C. 3D投影梯度下降法(3D PGD)

2D文献中最强大的攻击之一是投影梯度下降(PGD),其根源在Madry等人[64]的开创性论文中。迭代FGSM方法被认为是PGD方法。获取迭代FGSM方法,我们可以生成对抗性如下:

其中,限制每次迭代中生成的对抗输入的变化,为迭代次数。

PGD攻击试图增加正确类的成本,而不指定模型应选择哪个错误类。PGD攻击在约束下找到最大化成本函数的扰动:

:,

图4 分布式攻击生成的两个对抗点云实例

3D PGD攻击与2D版本相似,但通常使用不同的距离度量来计算扰动。具体来说,Liu等[56]提出了一种PGD攻击,称为分布式攻击,使用Hausdorff距离(原点云表面逼近的三角网格)与对抗性之间的距离度量将对抗点推向三角网格。该方法对点云中的点密度不太敏感,因为它使用网格而不是点云来测量扰动。图4演示了分布式攻击生成的两个对抗性实例。

Ma等[58]提出了联合基于渐变的攻击(JGBA)。他们向PGD攻击的优化函数添加了一个额外的项来干扰SOR(统计异常值去除器),该优化函数删除异常点。该项在删除异常值后计算模型损失函数相对于点的渐变,而第一项(方程8中的项)则计算模型损失函数相对于中的所有点的渐变。这两个术语组合用于求解优化问题。JGBA攻击采用范数作为距离度量来约束点的移动。

D. 形状攻击

图5  Liu等[56]提出的三种形状攻击

这类攻击试图改变点云的形状。形状攻击的概念可以与2D图像中所谓的无限制攻击进行比较[65,66,67]。发生此类攻击时,输入数据可能会显着改变,而不改变语义。这种对抗性攻击会欺骗分类器而不会使人类感到困惑。在这方面,Liu等[56]提出了三种形状攻击,如下所示。图5演示了这三种形状攻击。

  1. 扰动重采样 该攻击使用最远点抽样对渐变最低的特定数量的点进行重采样,以确保所有点近似均匀分布。算法进行迭代以生成欺骗模型的对抗性。用于维持与之间的相似性的距离度量是Hausdorff距离。

  2. 添加对抗棒 在此攻击中,算法向点云添加四根棒,以便其中一端附着到点云上,而另一端与第一端的距离很小。算法优化两端的位置,以改变点云的标签。最后,它在两端之间添加一些点使它们看起来像棒。

  3. 添加对抗汇聚点 在这种情况下,选择关键点(在PointNet中保留的最大池化后点)作为汇聚点,并将点云中的点拉向它们。此攻击的目标是最小化全局更改在最大池化操作中未选定的点。用于维持与之间相似性的距离度量是范数。

Lee等[50]还提出了一种基于形状的对抗性攻击,称为ShapeAdv,它基于在点云自动编码器的潜在空间中注入对抗扰动。更准确地说,原始点云使用自动编码器进行处理以生成对抗性,然后将对抗性输入分类器。相应地,Lee等[50]生成了三种具有不同距离度量的攻击。这些度量用作C&W损失的一个项,以保持原始点云和对抗性之间的相似性。所有三种攻击都计算C&W损失相对于潜在空间中的对抗扰动的梯度。三种类型的攻击的距离度量定义如下:

  1. 潜在空间中的形状感知攻击。为了进行更有意义的攻击,作者最小化潜在空间与对抗潜在空间之间的范数。使用这种方法,生成的对抗性在外观上与原始点云大不相同。

  2. 点空间中的形状感知攻击。在这种情况下,正试图解决前一种攻击的问题。为了保持原始点云与对抗性之间的相似性,将距离度量替换为最小化两者之间的Chamfer距离。

  3. 带有辅助点云的形状感知攻击。攻击最小化对抗性与从原始点云类别中采样的个近邻的平均Chamfer距离。这种攻击旨在避免在任何方向上的潜在空间中进行对抗扰动。为了指导潜在空间中的方向,它使用从类别采样的辅助点云。

E. 频率攻击(其他维度攻击)

Liu等[71]提出了一种基于频域的对抗攻击,其目的是增强生成的对抗实例的可转移性。作者通过图Fourier变换(GFT)将点转换到频域。然后将其分为低频分量和高频分量,并对低频分量施加扰动以创建对抗点云。Liu等[72]以不同的方式研究了3D点云的几何结构,通过扰动点云的三个频率分量(低、中和高频)中的每个来研究3D点云的几何结构。他们发现扰动点云的低频分量会严重损害其粗糙形状。为了保留点云的形状,他们在低频分量上施加约束,并将扰动引导至高频分量以创建对抗点云。Huang等[73]基于对原始点云中的点应用可逆坐标变换提出了一种新的攻击,这减少了一个自由度并将它们的移动限制在切平面上。根据变换点云的梯度计算最佳方向。之后,所有点都被赋予一个分数以构建敏感度图。最后,得分最高的点被选中以欺骗深度模型。作者在[74]中认为,通过分析点云的拉普拉斯矩阵的特征值和特征向量,可以确定模型对扰动特别敏感的区域。通过关注这些区域,可以更有效地制定攻击。

F. 最小点云扰动攻击

图6 [57]中提出了原始点云和最小对抗性攻击的两个例子

在2D域中存在一种特殊类型的对抗攻击,它侧重于扰动对抗攻击中的最小像素数[63,75,76,77,78,79,80]。例如,仅通过改变一个像素欺骗深度模型的攻击被称为一个像素攻击[75],这是这种类型的著名攻击。吸取2D攻击的灵感,Kim等[57]提出了称为最小的点云扰动攻击,仅操纵最小数量的点。为了找到对抗点云,他们修改了PGD攻击的优化函数,通过添加一个项将更改的点数量保持在最小值。此外,他们使用Hausdorff距离和Chamfer距离两种不同的距离度量来保持与之间的相似性。图6说明了最小对抗攻击的实例。

在另一种称为可变步长攻击(VSA)的攻击中[55],将硬边界约束集成到PGD攻击的优化函数中,以保留修改的点云数,这使其更难检测。更具体地说,初始化具有最高渐变范数(对分类任务影响最大)的某些点为修改的点。通过控制步长(开始时为大步长()和结束时为小步长),此方法逃避局部最优并找到适当位置的修改(对抗)点。

Kim等[81]提出了一类称为Nudge攻击的点云扰动攻击,它最小化点扰动以反转3D DNN结果。研究人员使用基于渐变的和遗传算法生成对抗点云,通过对多达150个点进行扰动来欺骗DNN。当点与3D对象的表面距离较远时,即使对单点进行攻击,该攻击也能欺骗DNN。

Yang等[45]提供了一种点附着攻击,通过将几个点附加到点云上。使用Chamfer距离在新添加的点与原始点云之间保持小距离。硬边界约束限制点云中添加的点数,从而更难检测。

Tan等[82]提出了一种新的攻击,称为单点攻击,其中仅需要扰动点云中的单个点就可以欺骗深度模型。作者还提出了一种可解释性方法来识别点云中对攻击最重要的点。

形状先验引导攻击[83]是一种使用形状先验或对象结构的先验知识来引导扰动的生成的方法,或者对点云进行的更改以创建对抗点云。该方法的目标是创建具有最小扰动的对抗点云,同时仍能欺骗目标对象检测模型。

G.删除点的攻击

图7 [48]中提出的原始点云与删除点(红色点)和对抗点云

前节描述的攻击主要围绕移动、添加或转换点(在另一个空间中转换点并进行更改)。本小节总结了一些通过删除某些点来生成对抗点云的攻击。根据如何删除点,可以进行下面这些攻击。作者提供了各种有效地删除关键点的算法。例如,Zheng等[48]开发了一种方法,通过使用敏感图[84]找到对模型决策非常重要的关键点,并将其删除。图7中红色点表示通过敏感图删除的点。根据这种方法,每个点都被赋予一个敏感度分数,这反映了它对深度模型识别的贡献。通过将高敏感度点向点云中心移动,这些点不会对表面产生太大影响,实际上与删除点的操作相同。因此,通过移动点云中的高得分点,可以欺骗模型,产生对抗点云。该方法以Drop100和Drop200的两个流行删除攻击提出,分别删除100个和200个点。

IV. 对抗性攻击的防御

针对3D点云的对抗性防御方法通常可以分为三类:输入变换、数据优化和深度模型修改。以下部分讨论这些类别下的防御方法。

A. 输入变换

输入变换是一种预处理方法,它通过在将输入点云馈送到深度模型之前对其应用一些变换。这种变换设计可以减少模型对对抗性攻击的敏感性,或使攻击者更难制作对抗性点云。输入变换方法如下:

1)简单随机采样(SRS)

简单随机采样[46]是一种通常称为SRS的统计技术,它随机丢弃输入点云中的一定数量的点(通常为500),每个点的丢弃概率相同。

2)统计异常值去除(SOR)

由于大多数对抗性攻击中存在异常值,Zhou等[88]提出了一种统计异常值去除(SOR)方法,如果点到其k个最近邻居的平均距离超出(μ+σ.α),则会剪裁对抗性点云中的点,其中μ是均值,σ是原始点云中所有点的k个最近邻距离的标准偏差。根据所分析的领域大小,α将确定(在[88]中α=1.1和k=2)。

[89]中使用了类似的防御方法。使用欧几里德距离在每个点及其k个近邻之间检测异常值。具有高平均距离的点被丢弃为异常值。

3)突出点移除

该防御方法[54]假设对抗点具有相当大的渐变值。以此为前提,该方法根据模型f相对于每个点的渐变输出类计算每个点的显着性,并丢弃了显著性高的点。

4)去噪和上采样网络(DUP-Net)

DUP-Net防御方法包含两步。为了删除异常值,它在第一步中使用SOR作为去噪。在第二步中,第一步的输出提供给上采样网络[90]以生成更密集的点云。通常发现对抗扰动会丢失原始点云中的关键点,所以该防御使用跟踪点云基本表面的更密集、更均匀分布的点云来恢复这些关键点。

5)IF-Defense

IF-Defense [91]是对输入点云的预处理技术。它首先使用SOR从输入点云中去除异常值。在下一步中,使用两种损失来优化输入点的坐标,在几何约束和分布约束下。几何约束损失试图将点推向表面,以最大限度地减少异常值。为了估计对象的表面,作者在原始点云上训练隐函数网络[92,93]。由于隐函数的输出是连续的,所以预测的表面局部平滑。这减少了异常值的影响。分布约束损失通过最大化每个点与其k个近邻之间的距离来鼓励点具有均匀分布。相应地,输入点云使用If-Defense以干净的形状捕获。

图8 三种不同防御方法对Drop100攻击的结果。图取自[91]

图8显示了针对Drop100攻击的三种不同防御方法的结果,包括SOR、DUP-Net和If-defense。

6)其他防御

Dong等[94]提出了Gather-Vector Guidance (GvG)方法,该方法对局部特征的变化很敏感。如果对抗扰动改变了局部特征,收敛向量也会改变。该方法学习忽略有噪声的局部特征。

Liu等[95]开发了PointGuard方法,该方法在原始点云中创建许多随机子集,然后根据这些随机子集的标签的多数票预测原始点云的标签。

Sun等[96]提出了一个框架,用于评估3D点云分类模型对自适应攻击的鲁棒性。

Ada3Diff [97]是一种通过自适应扩散过程平滑点云中的扰动来防御3D点云模型对抗性攻击的方法,有效减少了对抗性攻击的影响。

B. 数据优化

另一类方法是训练数据优化,这通过优化训练数据来提高模型对对抗性攻击的鲁棒性。它通过采用数据增强等技术对现有训练数据应用变换来生成额外的训练实例,或者通过故意将对抗实例引入训练数据中以提高模型对此类攻击的鲁棒性的对抗训练。可以使用以下方法进行优化数据:

1)对抗训练

在修改后的训练集方面,对抗训练[61]是一种有效的防御方法,它使用对抗实例来增强训练集,以增加模型对攻击的鲁棒性。更准确地说,在标准训练中,模型仅使用原始点云进行训练,而对抗训练使用原始点云和对抗性点云。在[54]中首次描述了针对点云的对抗训练。[54]和[59]的作者通过增强FGSM和ITA攻击来训练深度模型。作为找到更强大对抗训练方法的一种方式,在[98]中的作者使用自适应攻击。使用这种新的对抗训练,通过嵌入扰动注入模块,可以向深度模型添加不同类型的攻击。该模块用于生成对抗训练的扰动特征。Sun等[99]将自监督学习应用于3D点云的对抗训练。

在不同的尝试中,[45,100]中的作者通过从高斯分布随机采样值向每个点添加高斯噪声。通过这样做,被攻击的模型可以逃离狭窄的对抗子空间。他们还开发了一种量化方法,将点云坐标转换为具有多个量化级别的低数值精度,这减轻了坐标中的细微变化。然后使用这些噪声点云来增强训练集。

2)点云交叉混合(PointCutMix)

Zhang等[101]提出了PointCutMix技术,它通过在两个最佳对齐的原始点云之间交换点来生成新的训练集,并使用此新训练集训练模型。

3)低通频率防御(LPF-Defense)

在LPF-Defense [102]中,深度模型使用原始点云的低频版本进行训练。更具体地说,使用球面谐波变换(SHT)[103],原始点云从空间域转换到频域。然后通过过滤高频输入数据成分,检索原始点云的低频版本。该方法基于假设3D深度模型过度依赖训练集中不必要的信息,这使它们容易受到对抗性点云的攻击。因此,通过在训练阶段抑制高频内容,它丢弃了训练数据中的不必要信息。

C. 深度模型修改

另一类别是深度模型修改,它指修改深度模型体系结构本身以提高其对对抗性攻击的鲁棒性。这可以通过在训练期间对原始深度神经网络架构进行更改来实现。这个类别的实例如下。

1)Defense-PointNet

作者在[104]中提供了一种防御方法,通过将PointNet深度模型分成两个部分。第一个部分是特征提取器,在其最后一层连接判别器,使其能够学习更强大的特征。特征提取器将原始点云和对抗对应物(由FGSM攻击生成)的mini-batch作为输入以提取特征,并欺骗判别器。第二部分是PointNet分类器,它经过训练可以正确分类每个输入。使用三个不同的损失函数优化模型参数:分类器、判别器和特征提取器。而判别器损失试图区分原始点云和对抗性点云,特征提取器损失会误导判别器将每个原始/对抗向量标记为原始向量,并且分类器损失鼓励分类器为每个输入给出正确的预测。

2)上下文一致动态图网络(CCN)

Li等[105]提出了两种方法来提高3D点云分类模型的对抗鲁棒性。第一种方法是引入一种新的点云体系结构,称为上下文一致动态图网络(CCN),该体系结构被设计为对对抗性攻击更具鲁棒性。第二种方法通过深入分析影响点云模型鲁棒性的因素,并开发技术来缓解这些因素。为了提供一个相对对抗性点云更鲁棒的模型,作者集成了这两项技术。

3)晶格点分类器(LPC)

Li等[106]提出在网络中嵌入声明节点,以将对抗实例转换为空白点。作者提出了一个有效的具体措施,即晶格点分类器(LPC),它将每个点云投影到晶格上并使用2D CNN生成2D图像进行分类。(在分形晶格中的结构稀疏编码被定义为LPC中的声明节点)。声明节点通过隐式梯度防御对抗性攻击,将它们指向输入错误的更新方向。

V. 数据集分类和受害者模型

已经收集了各种3D点云数据集,以评估DNN上的形状分类,包括ModelNet [107]、ShapeNet [108]、ScanObjectNN [109]、McGill基准测试 [110]、ScanNet [111]、悉尼城市对象[112]。这些数据集的特征总结也在表4中给出。在所有这些中,4个数据集即ModelNet10 [107]、ModelNet40 [107]、ShapeNet [108]和ScanObjectNN [109]已被广泛用于评估攻击和防御技术。

此外,表5(见原文)中还总结了最近研究中使用的数据集和受害者模型的分类法。

表4 常用数据集汇总

VI. 挑战和讨论

本节讨论对抗性点云面临的当前挑战以及可能的解决方案。对攻击者和研究人员来说,对抗性点云是一个有趣的问题,它利用了深度模型的易受攻击性,并帮助防御者避免对抗性点云。我们的讨论将集中在以下问题上。什么因素影响对点云的攻击?

A. 哪些因素影响对抗性攻击在3D点云上的成功?

关于对3D点云的对抗性攻击,有一些更为重要常规因素,包括:受攻击模型的复杂性和鲁棒性:当深度模型不太复杂、鲁棒性较差时,它可能对对抗性攻击不太免疫,只需要更简单或更弱的攻击就可以来欺骗它。3D点云的结构:点在点云中的分布以及异常值的存在可能会造成大多数类型对抗性点云的成功。

B. 不同防御方法的比较 :3D点云的分布和异常值可能显着影响针对对抗性点云的防御方法的有效性。例如,输入变换技术旨在使输入数据更具鲁棒性,抵御对抗性攻击。这些技术可能依赖于修改点云中的点分布或删除异常值。通过这样做,会扰乱原始点云的结构。这使得攻击者更难进行成功的修改。另一方面,其他防御方法(如对抗训练)可能不那么依赖这些因素,效果可能不那么好。对抗训练是2D防御技术中最强大的防御之一,但在3D数据上效果不佳。论文[64]证明,对抗训练通过在约束的搜索空间中找到最坏情况的实例来最大化分类器损失。这种过程可以改变决策边界,使模型对不同类型的攻击更具鲁棒性。这种证明基于2D数据的正则结构。2D攻击是通过改变像素值来执行的。请注意,在2D的情况下,数据具有正则结构。但是点云由不规则放置在空间中的3D数据点组成。此外,文献中使用的点云是通过从每个3D对象随机采样1024个点构建的。因此,点在对象表面上不是均匀分布的,并且同一类(例如飞机)的任何两个点云在结构上都没有相同的规律,与2D情况相反。这些结构差异导致对抗训练阶段的不同防御行为。因此,使用约束搜索空间中的最坏情况实例进行训练无法保证鲁棒性抵御其他攻击。换句话说,由于点云的不规则结构,建立对抗点模型以消除其对防御的影响是非常具有挑战性的。

C. 3D点云与图像数据在攻击和防御方面的比较

3D点云与图像在对抗性攻击和防御方面存在几个差异:对3D点云的对抗性攻击可能更复杂。对图像数据的对抗性攻击通常通过向像素值添加小扰动。相比之下,对3D点云的对抗性攻击可以通过更复杂的修改,例如添加或删除点,或改变点云中点的连接性。事实上,3D点云与图像的结构不同。图像通常表示为像素值的2D数组,而3D点云表示为3D点的集合。这种结构上的差异可能使原本为图像数据开发的防御方法更难应用于3D点云。另一方面,3D点云可能更敏感于扰动。因为3D点云用于表示现实世界中的物理对象,即使对点云进行很小的扰动也可能导致所表示对象的形状或外观发生显着变化。这种敏感性可能使3D点云的稳健防御方法更难开发。

VII. 结论

近年来,3D点云分类的对抗性攻击已经成为一个重大问题。这些攻击可以成功操纵3D点云的分类,导致在测试和部署阶段做出错误的决策,可能产生有害的后果。可以将3D点云的对抗性攻击分类为几种类型,包括删除攻击、添加攻击、移位攻击和变换攻击。

为了防御这些攻击,研究人员已经提出了两大类方法:输入转换和对抗训练。输入转换方法旨在预处理输入数据以抵御对抗扰动,而对抗训练则通过在训练数据中增加对抗实例来提高模型的鲁棒性。为了更好地防御对抗性攻击,可以将输入转换技术与对抗训练相结合。

3D点云对抗性攻击研究的一些潜在未来方向包括:通过仅以点云中的子集为目标和关注点云的局部结构而不是全局结构,来优化攻击方法;以及探索3D点云分类器对专门为3D数据设计的而不是从2D图像扩展的方法的对抗性攻击的鲁棒性。

3D视觉交流群

大家好,群里会第一时间发布3D计算机视觉方向的最前沿论文解读和交流分享,主要方向有:

视觉SLAM激光SLAM语义SLAMNeRF-SLAM路径规划相机标定立体匹配三维点云结构光机械臂抓取缺陷检测6D位姿估计相位偏折术Halcon阵列相机光度立体视觉NeRF多视图几何、OpenMVS、MVSNetcolmap纹理贴图深度估计Transformer多传感器标定多传感器融合3D目标检测路径规划轨迹预测3D点云分割模型部署、车道线检测BEV感知Occupancy目标跟踪四旋翼建模、无人机飞控、求职、硬件选型视觉产品落地最新论文3D视觉最新产群

添加微信: dddvision,备注:研究方向+学校/公司+昵称(如3D点云+清华+小草莓), 小助理会拉你入群。



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1