1.一种提高车牌攻击鲁棒性的对抗攻击方法,其特征在于:所述方法包括如下步骤:
S1:按照中国车辆号牌标准,确定车牌底板尺寸、字体和字符间隔,按比例缩放制作常见的小型汽车号牌,将制作的车牌整理为标准车牌数据集,记为数据集O;
S2:采用opencv的仿射变换函数对制作的标准数据集O按照不同角度分段进行仿射变换,变换后的数据集记为数据集A;采用opencv的亮度变换函数对制作的标准数据集O按照不同亮度分段进行亮度变换,变换后的数据集记为数据集B;采用opencv的仿射变换函数和亮度变换函数对制作的标准数据集O按照随机角度和亮度进行变换,变换后的数据集记为数据集C;
S3:构造一个由2个卷积层和1个全连接层构成的经典卷积神经网络LeNet-5,并对车牌数据集O、A、B、C进行字符检测与分割,然后用分割后的数据集训练LeNet-5模型,确保使其能够百分百准确识别“干净”的车牌数据,将训练完成后的LeNet-5模型结构和参数保存,以便之后评估攻击效果时调用;
S4:参考数据集O的制作工艺,制作n张不重复的车牌,n为设定数量,采用对抗攻击方法RP2生成对抗扰动,并添加到对应原始“干净”的车牌数据上,然后打印所有数字对抗车牌样本;在不同成像角度和光照强度下对打印的真实对抗车牌样本进行拍摄,调用已训练的车牌分类器LeNet-5对拍摄的数字对抗样本进行识别。
2.如权利要求1所述的一种提高车牌攻击鲁棒性的对抗攻击方法,其特征在于:所述步骤S1中,小型汽车号牌为全固定蓝色车牌,使用车牌标准字体,车牌大小与间隔为实际车牌的1/68,车牌数据集制作各省级牌照缩写,地区代号使用A~F字符,最后五位车牌为字母与数字混合的随机字符车牌,一共制作12500个车牌数据,并记为数据集O。
3.如权利要求1或2所述的一种基于对抗攻击的车牌攻击生成方法,其特征在于:所述步骤S2中,采用opencv的仿射变换函数对制作的标准数据集O按照不同角度分段进行仿射变换,变换后的数据集记为数据集A;该函数只需要已知旋转中心坐标、旋转角度、放缩比例以及返回旋转/放缩矩阵;
采用opencv的亮度变换对制作的标准数据集O按照不同亮度分段进行亮度变换,变换后的数据集记为数据集B,亮度变换记为:g(i,j)=α·f(i,j)
以上公式中的i,j是图像中像素点的横纵坐标,α是比例系数,也叫做增益参数。
4.如权利要求1或2所述的一种提高车牌攻击鲁棒性的对抗攻击方法,其特征在于:所述步骤S3中,采用opencv的库函数,对数据集O、A、B、C中所有数据进行灰度化,二值化操作,然后分析出车牌中每个字符的分割图块,并将分割后的字符与其对应标签整理成数据集,记为数据集I;从数据集I中随机取出80%作为训练集,其余20%作为测试集。构建一个经典卷积神经网络LeNet-5,它由2个卷积层、2个下采样层和1个全连接层组成,然后将训练集作为输入训练LeNet-5模型,最终在测试集上测得的精度为100%,即模型已经训练完成。将训练完成后的LeNet-5模型结构和参数保存,以便之后评估攻击效果时调用。
5.如权利要求1或2所述的一种提高车牌攻击鲁棒性的对抗攻击方法,其特征在于:所述步骤S4中,参考数据集O的制作方法,制作n张不重复的车牌作为评估的“干净”车牌数据。
RP2算法搜索特定物理区域将一个小扰动δ添加到原始输入,详细说明如下:
x′=x+δ
上式中,x′表示对抗样本,即分类器对输入x′误分类,x表示为原始的“干净”输入,δ表示为小扰动;RP2算法的目标是要找到一个最小的扰动δ,使得分类器对对抗样本x′误分类,为了生成鲁棒性较高的对抗样本,构建无靶向攻击的目标函数如下:有靶向攻击的目标函数是:
在这里,λ是正则化超参数的变形,||δ||p表示δ的p范数,用来衡量δ的扰动大小,y表示*为输入x的真实标签,y表示为标签的目标类,J(·)是模型的损失函数,用以衡量目标类别与对抗样本类别的距离;
定义为不可打印性分数,公式如下:
综合上述所有公式,无靶向攻击的目标函数如下:
有靶向攻击的目标函数是:
选定目标函数后,经过训练生成对抗扰动,并添加到对应原始“干净”的车牌数据上,即制作完成n张对抗样本,然后打印所有数字对抗车牌样本;在不同成像角度和光照强度下对打印的真实对抗车牌样本进行拍摄,调用已训练的车牌分类器LeNet-5对拍摄的数字对抗样本进行识别,评估生成的对抗样本的效果。