[ArtCoder]通过风格转换生成类似艺术的二维码!
三个要点
✔️ 使用神经风格转移来生成类似艺术的二维码
✔️ 提出了一种基于三个损失函数的端到端二维码生成方法
✔️ 成功生成了一个强大的QR码,可以被真正的应用所读取。
An End-to-end Method for Producing Scanning-robust Stylized QR Codes
written by Hao Su, Jianwei Niu, Xuefeng Liu, Qingfeng Li, Ji Wan, Mingliang Xu, Tao Ren
(Submitted on 16 Nov 2020)
Comments: Published on arxiv.
Subjects: Computer Vision and Pattern Recognition (cs.CV); Multimedia (cs.MM)
code:![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的 。
简介
在这篇文章中,我们介绍了我们关于使用神经风格转移生成艺术性二维码的研究。
所提出的方法(ArtCoder)可以从原始图像(Content)、目标图像(Style)和我们要设置的信息中生成以下QR码,就像一般的图像风格转换一样。
如果你用你的智能手机扫描这个图像,你会看到 "感谢你审查论文 "的文字。
建议的方法(ArtCoder
管道
拟议方法的管道如下
所提出的方法被建模为一个函数$Psi$,它从风格图像$I_s$、内容图像$I_c$和信息M中生成一个QR码$Q=Psi(I_s,I_c,M)$。
在这种情况下,$Q=Psi(I_s,I_c,M)$的目标函数(损失函数)$L_{total}$由以下方程定义,结合三个损失函数。
$L_{total}=lambda_1L_{style}(I_s,Q)+lambda_2L_{content}(I_c,Q)+lambda_3L_code(M,Q)$
$lambda_1,\lambda_2,\lambda_3$是表示三个函数的权重的参数。
此外,风格损失$L_{style}$、内容损失$L_{content}$和代码损失$L_{code}$分别用于保留QR码的风格、内容和信息内容。下面让我们依次看一下每项损失。
风格损失$L_{style}$和内容损失$L_{content}$
样式损失$L_{style}$和内容损失$L_{content}$用于确保生成的QR码保留其样式和内容。具体来说,根据现有的关于风格转换的研究(1,2),它们由以下公式定义
$L_{style}(I_s,Q)=\frac{1}{C_sH_sW_s}||G[f_s(I_s)]-G[f_s(Q)]||^2_2$
$L_{content}(I_c,Q)=\frac{1}{C_sH_sW_s}||f_c(I_c)]-f_c(Q)||^2_2$
其中$G$是格雷姆矩阵,$f_s(,f_c)$表示从预训练的VGG-19的$s(,c)$层提取的特征图。
关于代码损失$L_{code}$
代码损失$L_{code}$用于控制生成的QR码的内容,使用SS层(采样-模拟层),一个虚拟的QR码阅读器,模拟QR码阅读器的采样过程。
关于取样-模拟层
在用于解码二维码的Goole ZXing中,二维码阅读器对每个模块的中心像素(二维码中的黑色和白色方块)进行采样和解码。
当QR码被QR码阅读器实际读取时,居住在坐标$(i,j)$、原点在每个模块中心的像素被采样的概率$g_{M_k(i,j)}$被认为遵循以下公式
$g_{M_k(i,j)}=\frac{1}{2\pi\sigma^2}e^{-\frac{i^2+j^2}{2\sigma^2}}$
采样-模拟层使用上述方程来模拟生成的QR码被真正的QR码阅读器读取时的采样过程,从而提高QR码读取过程的稳健性。
具体来说,对于QR码中的每个模块$m-dis-m$(每个模块有$a-dis-a$像素),我们以核大小$a$、跨度$a$和填充0进行卷积运算,并输出$m-dis-m$的特征图$F=l_ss(Q)$。
基于这个特征图$F=l_ss(Q)$和$g_{M_k(i,j)}$,对应于模块$M_k$的位$F_{M_k}$由以下公式给出
$F_{M_k}=sum_{(i,j) \in M_k} g_{M_k(i,j)} \cdot Q_{M_k(i,j)}$
考虑$F_{M_k}$来模拟当QR码被QR码阅读器实际读取时,每个模块是否会被解码为0或1。
代码损失 $L_{code}$
代码损失$L_{code}$被计算为对应于QR码$Q$的每个模块$M_k/in Q$的子码损失$L^{M_k}_{code}$之和。
$L_{code}=sum_{M_k in Q}L^{M_k}_{code}$
其中$L^{M_k}_{code}$由以下公式给出。
$L^{M_k}_{code}=K_{M_k}\cdot ||textit{M}_{M_k}-F_{M_k}||$
其中$textit{M}$是一个$m×m$矩阵,代表目标QR码以及每个模块是否应该为0或1。而$K$是由下面描述的竞争机制计算的激活图。
竞争机制
通过控制激活图$K$,竞争机制决定是优先考虑生成的QR码的视觉质量($L_style,L_content$),还是优先考虑QR码是否能被QR码阅读器准确读取($L_code$)进行优化。
这种竞争机制的管道如下图所示。
具体来说,当虚拟二维码阅读器$R_{QR}$读取二维码$Q$时,如果模块$M_k$是正确的,激活图$K$为0,如果它是错误的,则为1。
通过采用这样的竞争机制,通过优先优化错误模块的$L_{code}$和正确模块的$L_{style},L_{content}$,适当地保留了图像的质量和QR码阅读的稳健性。读取QR码时的稳健性。
关于虚拟QR码阅读器$R_{QR}$。
当一个普通的二维码阅读器读取一个二维码$Q$时,它被转换成灰度,并根据每个模块的值进行二进制化,如下所示
这里,$T$是判断一个模块是黑是白的阈值。
另一方面,当用虚拟二维码阅读器读取二维码$Q$时,对每个模块$M_k$进行以下二值化。
其中$T_b,T_w$分别是判断模块是黑色还是白色的阈值(如果模块$M_k$是黑色的($textit{M}_{M_k}=0$),阈值为$T_b$,如果相反则为$T_w$)。
换句话说,根据每个模块的理想值($\textit{M}_{M_k}$)使用不同的阈值,每个模块的值比实际的二维码阅读更严格地被分辨出来。
在这种情况下,我们引入了一个参数 $eta=\frac{|T-T_b|}{T}=\frac{|T_w-T|}{(255-T)}$ 来表示QR码读取的稳健性。通过设置这个参数$eta$,可以在图像的质量和QR码读取的稳健性之间进行权衡。
基于上述,损失函数根据上述管道进行优化,并对生成的QR码进行迭代更新。
实验结果
实验设置
关于实验中使用的数据集,内容图像数据集包括100张512x512的图像(肖像、卡通、风景、动物、标志等),风格图像数据集包括30张代表不同风格的图像。
实验在NVIDIA Tesla V100 GPU上进行,超参数设置为$\lambda_1=10^15, \lambda_2=10^7, \lambda_3=10^20,学习率为0.001,鲁棒参数\eta=0.6$。另外,生成QR码的迭代次数为10^4美元。
生成的QR码的质量
与现有方法的比较
首先,与现有的NST(神经风格转移)技术或二维码生成方法的比较结果如下
将Ours与其他方法相比较,生成结果的质量比现有的NST实例退化得更少,而且与现有的艺术风格的QR码生成方法相比,不会产生大量的点状噪声。
对于重量参数$\lambda$。
在重量参数中,改变$lambda_2$的含量损失的结果显示如下。
从图中可以看出,通过改变权重参数,可以控制生成的图像。
二维码阅读的稳健性
在下面的实验中,我们将验证所生成的QR码的鲁棒性,以便被真正的应用所读取。
对稳健性的定性分析
在下面的图片中,显示了实际生成的QR码的一部分的放大图。
如果你在对任何生成的图像进行二进制化处理后观察每个模块的中心(二进制结果中的蓝色和红色圆圈),你会发现每个模块的黑白区域都被很好地分开,采样后的结果与理想结果相同。
因此,生成的二维码可以被普通的二维码阅读器稳健地读取。
对于表示稳健性的参数$eta$来说
改变稳健性参数$eta$的结果如下。
其中,(a)显示了生成的图像,(b)部分图像的放大,(c)误差模块和(d)每个损失的大小。
一般来说,增加$/eta$会增加编码损失,提高鲁棒性,但会降低图像质量。另一方面,较小的$eta$会在早期收敛为零,提高了图像质量,但降低了鲁棒性。
成功阅读的概率
生成的图像以三种尺寸(3厘米×3厘米、5厘米×5厘米和7厘米×7厘米)显示在屏幕上,扫描距离为20厘米,其结果显示如下。
该表显示了使用每个移动设备对30个QR码进行50次扫描的平均成功次数(在3秒内成功解码被视为成功扫描)。
总的来说,它显示了至少96%的成功率,这表明所提出的方法足够强大,可以在实际应用中发挥作用。(即使在扫描失败的情况下,读取似乎也是成功的,尽管它需要3秒钟以上的时间来完成)。)
距离和角度对阅读的影响
下图显示了改变$eta$时的结果,并与改变距离和角度时的现有方法进行了比较。
作为比较的结果,对于$0.6$,所提出的方法的稳健性等于或略逊于现有的方法,这意味着它的稳健性足以在实践中得到应用。
摘要
在这篇文章中,我们介绍了我们利用神经风格转移生成艺术类二维码的工作。所提出的方法(ArtCoder)能够生成具有优良质量和稳健性的QR码,可以被现实世界的应用所读取。
然而,如果在未来的研究中充分提高生成速度,我们也许有一天会在现实世界中遇到像艺术一样醒目的二维码!"。
与本文相关的类别