一种物理可实现的激光雷达3D点云对抗样本生成方法及系统

文档序号:29492328发布日期:2022-04-06 13:49阅读:447来源:国知局
一种物理可实现的激光雷达3d点云对抗样本生成方法及系统
技术领域
1.本发明属于对抗机器学习技术领域,具体涉及一种物理可实现的激光雷达3d点云对抗样本生成方法及系统。


背景技术:

2.近些年来,自动驾驶汽车正在快速发展,其中一些已经在公共的道路上运行,为乘客提供无人驾驶出租车服务,例如谷歌公司的waymo one和百度公司的apollo go。在自动驾驶感知中,点云目标检测对于确保自动驾驶的安全性至关重要。相比于相机,激光雷达能够在更加恶劣的天气和光照条件下工作,因此它通常被认为更加可靠。现在大部分自动驾驶制造商都采用了激光雷达,它可以提供360度的视角,并利用红外激光测量到周围障碍物的距离,将点云信息以坐标和强度等方式存储下来,进而得到道路环境的3d图。随后自动驾驶系统使用复杂深度神经网络来处理3d点云进而做出决策。因此,对点云目标检测器在潜在攻击下的安全性研究是十分必要的。
3.研究表明,深度神经网络具有脆弱性,攻击者可以在良性样例上添加精心构造但人眼却难以察觉的扰动,从而使得深度学习模型以高置信度做出错误预测。由于自动驾驶对激光雷达的高度依赖,一些先前的研究已经探索了点云目标检测模型的脆弱性。文献[xiang c,qi c r,li b.generating 3d adversarial point clouds[c]//proceedings of the ieee/cvf conference on computer vision and pattern recognition.2019:9136-9144.]提出了一种点云对抗样本生成方法,通过在原始点云上添加人眼不易察觉的扰动达到欺骗pointnet网络(3d点云目标检测器)的目的,但该方法提出的点云对抗样本生成方法仅能在数字域欺骗3d点云目标检测器,没有考虑激光雷达采集点云信息的原理,无法在真实世界中进行实际应用。
[0004]
探究一种物理可实现的激光雷达3d点云对抗样本生成方法,可根据生成的对抗样本对现有的3d点云目标检测器进行进一步训练以提高检测器的安全防护效果,应用价值高。


技术实现要素:

[0005]
本发明提供一种物理可实现的激光雷达3d点云对抗样本生成方法及系统,该方法利用现有的3d点云目标检测器的脆弱性,创新性地对激光雷达采集点云数据满足的物理规律进行建模,以构造物理可实现的面向两种不同类型的3d点云对抗样本,为机器学习安全分析与防护提供了新的指导。
[0006]
为了实现上述目的,本发明采用如下技术方案:
[0007]
本发明的第一个目的在于提供一种物理可实现的激光雷达3d点云对抗样本生成方法,包括以下步骤:
[0008]
1)获取包含目标区域的原始3d点云数据,所述的目标区域为目标物体和目标场景;
[0009]
2)针对步骤1)获取的原始3d点云数据,根据激光雷达点云的物理规律建模,得到点云对抗样本仿真模型;
[0010]
3)根据目标区域的位置得到待注入的对抗点云数据的球坐标范围,并在球坐标范围内随机注入预设数量的对抗点;
[0011]
4)设计损失函数,包括“目标隐藏攻击”损失函数和“目标创建攻击”损失函数;
[0012]
5)将“目标隐藏攻击”或“目标创建攻击”的损失函数代入到云对抗样本仿真模型中,优化更新步骤3)中随机注入的对抗点的坐标信息,将点云对抗样本仿真模型的最优输出作为最终生成的3d点云对抗样本。
[0013]
进一步的,所述的对抗样本仿真模型表示为:
[0014]y′
=f(p+δ)≠y
[0015]
p

=p+δ
[0016]
其中,f是3d点云目标检测器的抽象函数,p是良性的原始3d点云数据;y是3d点云目标检测器的良性输出,即y=f(p),表示为将原始3d点云数据作为3d点云目标检测器输入时得到的输出;δ是与p具有相同维度的噪声,y

是对抗性输出;p

为3d点云目标检测器的对抗样本。
[0017]
进一步的,所述的对抗样本仿真模型的目标函数和约束函数为:
[0018]
min
p

[0019]
(r
′i,α
′i,ω
′i)∈loc
exp
,i∈[1,n]
[0020]
s.t.|α

i-α
′j|+|ω

i-ω
′j|≠0,i,j∈[1,n]
[0021][0022]
其中,是损失函数,p

={(r
′i,α
′i,ω
′i)∣i∈[1,n]}是对抗点云数据,n是对抗点的数量,r
′i、α
′i、ω
′i分别是第i个对抗点相对于激光雷达的距离、水平角和垂直角,loc
exp
={xa,ya,za,wa,la,ha,θa}表示添加对抗点云数据的目标区域,(xa,ya,za)是目标区域的中心点,(wa,la,ha)是目标区域的宽长高,θa是旋转角,表示激光雷达指定的垂直角度范围。
[0023]
本发明的第二个目的在于提供一种物理可实现的激光雷达3d点云对抗样本生成系统,用于实现上述的3d点云对抗样本生成方法。
[0024]
本发明提出的一种物理可实现的激光雷达3d点云对抗样本生成方法考虑了激光雷达采集点云数据满足的物理规律,设计了满足该物理规律的约束函数,并基于两种不同的“攻击”方式设计了两种损失函数,可构造生成覆盖更全面的3d点云对抗样本。本领域技术人员可以利用生成的3d点云对抗样本对3d点云目标检测器进一步训练学习优化,使得检测器能够识别到攻击数据,降低检测器在面对攻击时的错误预测率,为自动驾驶汽车的安全防护提供了新的指导。
附图说明
[0025]
图1是本发明实施例示出的一种物理可实现的激光雷达3d点云对抗样本生成方法的流程示意图。
具体实施方式
[0026]
下面结合附图对本发明的实施例作详细说明,本实施例以本发明技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0027]
以自动驾驶汽车的应用场景为例,在自动驾驶汽车上部署激光雷达和3d点云目标检测器,由激光雷达利用红外激光测量到周围障碍物的距离,将点云信息以坐标和强度等方式存储下来,作为原始3d点云数据。随后,3d点云目标检测器以原始3d点云数据作为输入,进而作出决策,判断前方或者周围的目标物。
[0028]
如图1所示,本发明提出的一种物理可实现的激光雷达3d点云对抗样本生成方法首先获取自动驾驶汽车上激光雷达返回的原始3d点云数据,根据激光雷达点云物理规律建模,得到点云对抗仿真模型;进而设计针对两种不同攻击形式(“目标隐藏攻击”和“目标创建攻击”)的优化函数,求解得到生成的对抗点云样本;将对抗点云样本注入到目标激光雷达的返回数据中,利用3d点云目标检测器对对抗点云样本进行判断,可有效“欺骗”该3d点云目标检测器作出错误决策。这能够说明本发明构建的对抗点云样本可用于实际工作中对3d点云目标检测器的安全性研究和安全性防护,使得检测器能够识别到攻击数据,降低检测器在面对攻击时的错误预测率,为自动驾驶汽车的安全防护提供了新的指导
[0029]
下面对本发明的具体实施步骤进行介绍:
[0030]
1)获取包含目标物体或目标场景的原始3d点云数据。本实施例中,获取安装在自动驾驶汽车上的激光雷达返回的原始3d点云数据。
[0031]
2)针对步骤1)获取的原始3d点云数据,根据激光雷达点云的物理规律建模,得到点云对抗样本仿真模型,其目的在于生成对3d点云目标检测器具有对抗作用的点云数据,本实施例以cnn作为3d点云目标检测器算法为例。
[0032]
对于一般的3d点云目标检测器,将其对抗性攻击过程建模如下:
[0033]y′
=f(x+δ)≠y
[0034]
其中,f是3d点云目标检测器的抽象函数,是良性输入点云,即原始3d点云数据,n是输入点的数量,每个点表示为其3d坐标和光强度;是3d点云目标检测器的良性输出,即y=f(x),表示为将原始3d点云数据作为3d点云目标检测器输入时得到的输出,m是点云中检测到的物体数量,每个物体用一个t维向量表示其预测位置、预测类别和类别预测置信度。δ是与x具有相同维度的噪声(例如,注入激光雷达的对抗点云),而y

是对抗性输出。x+δ可以进一步表示为x

,它被称为3d点云目标检测器的对抗样本,即攻击者故意设计的机器学习模型(例如cnn)的输入,以导致模型出错。
[0035]
激光雷达采集到的点云数据物理规律如下:
[0036]
a.每个生成的点仅出现在激光雷达的一条激光射线上;
[0037]
b.每条激光射线最多有一个点。
[0038]
为了使得生成的对抗点云更好地符合物理规律的限制,本发明选择在球坐标中生成点云,并将这个问题表述为基于梯度的优化问题,得到对抗样本仿真模型,如下:
[0039]
min
p

[0040]
(r
′i,α
′i,ω
′i)∈loc
exp
,i∈[1,n]
[0041]
s.t.|α

i-α
′j|+|ω

i-ω
′j|≠0,i,j∈[1,n]
[0042][0043]
其中,是损失函数,p

={(r
′i,α
′i,ω
′i)∣i∈[1,n]}是对抗点云集合,n是对抗点的数量,r
′i、α
′i、ω
′i分别是第i个对抗点相对于激光雷达的距离、水平角和垂直角,loc
exp
={xa,ya,za,wa,la,ha,θa}表示添加对抗点云的目标区域,(xa,ya,za)是目标区域的中心点,(wa,la,ha)是目标区域的宽长高,θa是旋转角,表示激光雷达指定的垂直角度范围。
[0044]
3)根据目标区域的位置计算对抗点云的球坐标范围,并在计算得到的球坐标范围内随机添加给定数量的对抗点。
[0045]
4)设计损失函数:
[0046]
本发明根据对抗攻击效果设计了两种点云对抗样本生成的损失函数,分别对应“目标隐藏攻击”和“目标创建攻击”,用于优化这两种类型“攻击”下的对抗点的坐标信息。
[0047]
一,“目标隐藏攻击”[0048]
其目的是将对抗点云注入目标对象附近,使目标对象无法被检测到,根据3d点云目标检测器的检测流程,针对其良性输出y=f(x)中的一个被检测得到的物体(称为目标对象),目标检测算法是先在目标对象附近生成一系列的检测框提议,再从检测框提议中筛选出与目标对象相关的检测框提议集合(称为相关提议集合),最后从相关提议集合中生成最终的检测框。为了让该目标对象不被检测到,那么就需要抑制3d点云目标检测器输出的与目标对象相关的检测框提议。本实施例中,如果检测框提议与真实框的交并比(iou)大于阈值∈u,并且类预测置信度大于阈值∈s,则可以认为该检测框提议是与目标对象相关的。在本发明的具体实现中,∈u=0.1,∈s=0.1。
[0049]
考虑到在现实世界的实用性,本发明选择在目标对象上方(即本实施例预设的目标区域)注入对抗点云来抑制这些与目标对象相关的检测框提议,本领域技术人员也可以选择在目标对象的其他方向上注入对抗点云。
[0050]“目标隐藏攻击”的损失函数设计如下:
[0051][0052]
其中,b1={(xi,yi,zi,wi,hi,li,θi,si)∣i∈[1,k1]}是所有与目标对象相关的检测框提议集合,k1是检测框提议集合中所有与目标对象相关的检测框数量,b
t
是3d点云目标检测器输出的最终检测框,(xi,yi,zi)是与目标对象相关的第i个检测框提议的中心坐标,(wi,hi,li)是与目标对象相关的第i个检测框提议的宽高长,θi是与目标对象相关的第i个检测框提议的旋转角,si是与目标对象相关的第i个检测框提议的置信度;b1和s1分别是相关的边界框提议及其置信度,iou(.)表示交并比。
[0053]
后续将“目标隐藏攻击”的损失函数代入到对抗样本仿真模型的表达式中,可优化得到针对“目标隐藏攻击”的对抗样本。
[0054]
二,“目标创建攻击”[0055]
其目的是通过将对抗点云注入到目标区域(例如在激光雷达前方10米处),将目标对象诱导到特定位置。与“目标隐藏攻击”不同,由于“目标创建攻击”实际上该位置是不存在目标对象的,因此在判断检测框提议是否与“目标对象”相关时,用目标区域来代替“目标对象”。本实施例中,选择与目标区域具有最大iou的前m个检测框提议作为相关提议。因此,“目标创建攻击”设计损失函数如下:
[0056][0057]
其中,loc
exp
是目标区域,b2={(x
′i,y
′i,z
′i,w
′i,h
′i,l
′i,θ
′i,s
′i)∣i∈[1,k2]}是所有与目标区域相关的检测框提议集合,k2是检测框提议集合中所有与目标区域相关的检测框数量,(x
′i,y
′i,z
′i)是与目标区域相关的第i个检测框提议的中心坐标,(w
′i,h
′i,l
′i)是与目标区域相关的第i个检测框提议的宽高长,θ
′i是与目标区域相关的第i个检测框提议的旋转角,s
′i是与目标区域相关的第i个检测框提议的置信度;b2和s2分别是相关的边界框提议及其置信度,iou(.)表示交并比。
[0058]
后续将“目标创建攻击”的损失函数代入到对抗样本仿真模型的表达式中,可优化得到针对“目标创建攻击”的对抗样本。
[0059]
5)利用“目标隐藏攻击”或“目标创建攻击”的损失函数优化步骤3)中对抗点的坐标信息,以获得最优的对抗样本。
[0060]
具体为:分别计算“目标隐藏攻击”或“目标创建攻击”的损失函数到对抗点球坐标的梯度,仅更新对抗点云p

的距离参数r
′i,i∈[1,n],不会更新对抗点的水平角参数α
′i,i∈[1,n]和垂直角参数ω
′i,i∈[1,n],以确保物理可实现性;直到损失收敛或迭代结束,停止更新,得到最优的对抗样本。
[0061]
本发明考虑了激光雷达采集点云数据满足的物理规律,设计了满足该物理规律的约束函数,并基于“目标隐藏攻击”和“目标创建攻击”分别设计损失函数,生成了覆盖全面的3d点云对抗样本。本领域技术人员可以利用生成的3d点云对抗样本对3d点云目标检测器进一步训练学习优化,使得检测器能够识别到攻击数据,降低检测器在面对攻击时的错误预测率,为自动驾驶汽车的安全防护提供了新的指导。
[0062]
与前述的一种物理可实现的激光雷达3d点云对抗样本生成方法的实施例相对应,本技术还提供了一种物理可实现的激光雷达3d点云对抗样本生成系统的实施例,其包括:
[0063]
数据获取模块,其用于获取包含目标区域的原始3d点云数据,所述的目标区域为目标物体和目标场景;
[0064]
点云对抗样本仿真模型模块,其用于针对数据获取模块获取的原始3d点云数据,根据激光雷达点云的物理规律建模,得到点云对抗样本仿真模型;
[0065]
对抗点注入模块,其用于根据目标区域的位置得到待注入的对抗点云数据的球坐标范围,并在球坐标范围内随机注入预设数量的对抗点;
[0066]
损失函数设计模块,其用于设计损失函数,包括“目标隐藏攻击”损失函数和“目标创建攻击”损失函数;
[0067]
优化更新模块,其用于将损失函数设计模块得到的“目标隐藏攻击”或“目标创建攻击”的损失函数代入到云对抗样本仿真模型模块中,优化更新对抗点注入模块注入的对抗点的坐标信息;
[0068]
3d点云对抗样本输出模块,其用于将点云对抗样本仿真模型的最优输出作为最终生成的3d点云对抗样本并输出。
[0069]
关于上述实施例中的系统,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0070]
对于系统实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为点云对抗样本仿真模型模块,可以是或者也可以不是物理上分开的。另外,在本发明中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的模块或单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现,以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。
[0071]
以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!