研究发现,只要一张打印出来的贴纸,就能“欺骗”AI系统,让检测系统也无法看到眼前活生生的人。该研究也可能用于现实的视频监控系统,引起热议。
一张贴纸让你在AI面前”隐身“。
来自比利时鲁汶大学 (KU Leuven) 几位研究人员最近的研究发现,借助一张简单打印出来的图案,就可以避开 AI 视频监控系统。
研究人员表示,他们设计的图像可以将整个人隐藏起来,不会让计算机视觉系统发现。这项研究在YOLO (v2) 的开源对象识别系统上进行了演示。
如上图所示,AI 系统成功检测到左边的人,而右边的人被忽略了。右边的人身上挂着一块彩色纸板,在论文中被称为 “对抗性补丁”(adversarial patch),正是这块补丁 “欺骗” 了 AI 系统,让系统无法发现画面中还有一个人。
这种欺骗利用了一种称为对抗性机器学习的方法。大多数计算机视觉系统依赖训练 (卷积) 神经网络来识别不同的东西,方法是给它提供大量样本,调整它的参数,直到它能正确地分类对象。通过将样本输入一个训练好的深度神经网络并监控输出,可以推断出哪些类型的图像让系统感到困惑。
他们发表了题为 Fooling automated surveillance cameras: adversarial patches to attack person detection 的论文,并公布了用于生成图像补丁的源代码。
地址:https://gitlab.com/EAVISE/adversarial-yolo
生成的补丁 (patch)能够成功地将人在检测器视线中隐藏起来。例如,被恶意地用来绕过监视系统,只要将一小块硬纸板放在身体前面,面向监视摄像头,就能不被监视系统发现。
研究结果显示,这个系统能够显著降低人体检测器的精度。该方法在真实场景中也能很好地发挥作用。
如下面的 demo 所示,使用 YOLOv2 检测拍摄的录像,画面中人、椅子、桌子等都被准确地检测出来,但只要拿上这块 “补丁”,系统就无法检测到人。
生成“神奇补丁”,秒变隐形人
他们是如何生成这块神奇的 “对抗性补丁” 的呢?
优化目标包括以下三个部分:
Lnps:非可打印性得分,这个因子表示贴纸中的颜色在多大程度上可由普通打印机打印出来。有下式:
其中 ppatch 是贴纸中的一个像素,而 cprint 是一组可打印颜色 C 中的颜色。这种损失有利于确保图像中的颜色与可打印颜色集中的颜色密切相关。
Ltv:图像总变化。该损失函数损失确保优化器支持平滑颜色过渡的图像并防止图像噪声。可以由 P 计算 Ltv:
如果相邻像素相似则得分较低,如果相邻像素不同则得分较高。
Lobj:图像中的对象分数。补丁的目标是隐藏图像中的人。所以训练的目标是对探测器输出的目标或类别分数实现最小化。将这三个部分相加得到总损失函数:
采用由经验确定的因子 α 和 β 对三个部分进行按比例缩放,然后求和,并使用 Adam 算法进行优化。优化器的目标是总损失 L 的最小化。在优化过程中冻结网络中的所有权重,并仅更改 patch 中的值。在过程开始时,以随机值对 patch 进行初始化。
图 3 所示为目标损失的计算,遵循相同的程序来计算类概率
YOLOv2 对象检测器输出一个单元网格,每个单元格包含一系列锚点(默认值为五个)。每个锚点包含边界框的位置、对象概率和类别得分。为了让探测器忽略图像中的人,研究人员尝试了三种不同的方法:最小化类人的分类概率(图 4d),最小化对象得分(图 4c),或两者的组合(图 4b 和 4a)。
研究人员分别尝试了每一种方法。最小化类分数倾向于将类中的人员移至不同的类。在使用 MS COCO 数据集训练的 YOLO 探测器的实验中,研究人员发现生成的贴纸会作为 COCO 数据集中的另一个类被检测到。图 4a 和 4b 分别为采用类和对象概率的实例。
研究人员提出的最小化对象性得分的另一种方法则不存在这个问题。虽然在优化过程中仅仅将其其置于 “人” 这一类别之上,但是生成的贴纸对于某个类的特定性低于其他方法,如图 4c 所示。
研究团队对各种类型的 patch 进行了实验,比如随机生成的图像噪声或者模糊化的图像,他们发现经过多次图像处理的随机物体的照片的效果不错。
例如,他们提出的图像补丁 (图 4c) 是通过随机选取一幅图像来创建的,图像经过了旋转,随机放大和缩小,随机添加随机噪声,随机修改正确率和对比度。
实验结果:显著降低警报,安全摄像头还安全吗?
通过实验结果评估 patch 的有效性。过程与训练过程相同(包括随机变换),将结果应用于 Inria 测试集上来进行评估。
换句话说,研究人员提出一个问题:监控系统产生的警报,有多少可以通过使用贴纸来规避
上表所示为使用不同贴纸的警报触发分析结果。可以清楚地看到,贴纸(OBJ-CLS,OBJ 和 CLS)显著降低了警报数量。
上图所示为在 Inria 测试集中使用不同贴纸的效果对比示例。首先将 YOLOv2 检测器用于没有贴 patch 的图像中(第 1 行),然后是使用随机贴纸(第 2 行)以及生成的贴纸的效果(第 3 行)。在大多数情况下,贴纸能够成功地将人员隐藏在探测器中。如果效果不好,则可能是贴纸没有和人对齐。因为在优化期间,贴纸的中心对齐是仅仅由图像边框确定的。
上图测试了印刷版贴纸在现实世界中的效果。一般情况下,效果还是不错的。由于上文所述的图像训练对齐的原因,将贴纸保持在正确位置似乎是非常重要的。
结果生成的 “补丁”,可以应用在衣服、包或其他物体上,佩戴这种 “补丁” 的人将成为隐形人 —— 使用 AI 检测算法无法检测到。
这种方法也可以用来隐藏某些对象。例如,如果监视系统被设计为检测物体而不是人,那么 “补丁” 也可以将汽车之类的物体隐藏起来。
可以想象,这种伎俩可以让骗子躲避安全摄像头。“我们的工作证明,使用对抗性补丁绕过摄像机监控系统是可能的,” 作者之一 Wiebe Van Ranst。
Van Ranst 说,将这种方法应用于现成的视频监控系统应该不会太难。“目前我们还需要知道使用的是哪种检测器。我们未来想做的是生成一个补丁,可以同时在多个检测器上工作,” 他说。“如果这种方法有效,那么这个补丁也很有可能对监控系统中使用的检测器有效。”
当然,这个 “补丁” 目前并非万无一失,如果它在画面中不是清晰可见的,或者角度发生了变化,AI 系统都能迅速 “发现” 画面中的人类。
不过,这项研究是学术界尝试使用 2D 打印技术将人类从检测系统中隐藏起来。之前的工作主要是使用带有特殊框架的眼镜来欺骗人脸识别软件,或使用对抗样本欺骗图像分类系统,例如用一张贴纸就能令 AI 将香蕉误认为是烤面包机,用几张贴纸就能将自动驾驶系统 “骗” 进反车道。
论文地址:https://arxiv.org/pdf/1904.08653.pdf
开源地址:https://gitlab.com/EAVISE/adversarial-yolo