视频网站开发流程,wordpress音视频播放器,wordpress排版错乱,织梦网站做瀑布流方便论文#xff1a;Text2QR: Harmonizing Aesthetic Customization and Scanning Robustness for Text-Guided QR Code Generation
Abstract
二维码通常包含很多信息但看起来并不美观。stable diffusion的出现让平衡扫描鲁棒性和美观变为可能。 为了保证美观二维码的稳定生成Text2QR: Harmonizing Aesthetic Customization and Scanning Robustness for Text-Guided QR Code Generation
Abstract
二维码通常包含很多信息但看起来并不美观。stable diffusion的出现让平衡扫描鲁棒性和美观变为可能。 为了保证美观二维码的稳定生成引入了QR美观蓝图(QR Aesthetic Blueprint, QAB)模块生成蓝图图像对整个生成过程进行控制。随后可扫描性增强潜在细化(the Scannability Enhancing Latent Refinement, SELR)过程在潜在空间内细化输出从而强化了可扫描的鲁棒性。 这个方法利用了stable diffusion的强大生成能力在图像美观性和二维码可扫描行之间进行权衡。
Github仓库
1 Introduction
现在有很多工作致力于改善二维码的美观性但是大多导致了扫描的不稳定。
本文提出了Text2QR提供无缝生成二维码的解决方案平衡用户定义的美观性和强大的可扫描性。 框架通过三个关键步骤展开
用户通过使用stable diffusion生成他们喜欢的图案来启动该流程。协同作用开始于QAB模块中图像的混合。这个模块生成一张蓝图合并预先生成的图像引导图像中的内容并准确反映QR码中的编码信息。然后将这张蓝图图像输入ControlNet指导Stable Diffusion保留用户定义的美观性并维持QR码明暗块之间的所需关系。虽然生成的结果会带来解码挑战但是其表现出明显的明暗块分布同时保持与用户偏好一致。构建了能量方程量化生成结果中的内容和消息的一致性。通过对潜在代码进行梯度上升迭代来优化该能量方程逐渐增强扫描鲁棒性同时保持内容一致性。
本文的贡献
Text2QR在二维码生成中协调用户定义的美观性和强大的可扫描性。引入QAB模块和SELR流程用于保持美观的同时优化扫描稳健性。更优越的效果
3 Preliminary
先阐明QR码扫描仪从美观的QR码图像中解码二进制信息的过程。 给定带有QR码的彩色图像首先通过提取亮度通道YCbCr颜色空间中的Y通道将其转化为灰度表示表示为 I ∈ R H × W I\in \mathbb{R}^{H\times W} I∈RH×W包含 L L L个灰度级通常为256。 设QR码包含 n × n n\times n n×n个模块每个模块的大小为 a × a a\times a a×a个像素有 n ⋅ a ≤ min ( H , W ) n\cdot a\leq \min(H, W) n⋅a≤min(H,W)。这样就构建出了一个包含 n 2 n^2 n2个模块的网格记作 M k M_k Mk其中 k ∈ [ 1 , 2 , ⋯ , n 2 ] k\in [1,2,\cdots,n^2] k∈[1,2,⋯,n2]。这个网格将图像 I I I划分为 n 2 n^2 n2个块表示为 I M k ∈ R a × a I_{M_k}\in\mathbb{R}^{a\times a} IMk∈Ra×a。
第 k k k个模块被解码为1位信息 I ~ k \tilde{I}_k I~k代表0或1其中 I ~ ∈ R n × n \tilde{I}\in \mathbb{R}^{n\times n} I~∈Rn×n表示整张二进制图的结果。 通常扫描仪对于每个模块的中心子区域内的像素进行采样。 令 θ \theta θ为以模块 M k M_k Mk为中心、大小为 x × x x\times x x×x的正方形区域 p ∈ { 1 , 2 , ⋯ , H } × { 1 , 2 , ⋯ , W } \mathbf{p}\in\{1,2,\cdots,H\}\times \{1,2,\cdots,W\} p∈{1,2,⋯,H}×{1,2,⋯,W}表示 I I I的像素坐标。解码后的二进制值 I ~ k \tilde{I}_k I~k可以记作 v k 1 x 2 ∑ p ∈ θ I M k ( p ) ; I ~ k { 0 if v k ≤ T b , 1 if v k ≥ T w , − 1 otherwise . v_k\frac{1}{x^2}\sum_{\mathbf{p}\in\theta}I_{M_k}(\mathbf{p});\tilde{I}_k \begin{cases} 0 \qquad \text{if} \ v_k\leq\mathcal{T}_b, \\ 1 \qquad \text{if} \ v_k\geq\mathcal{T}_w, \\ -1 \qquad \text{otherwise}. \end{cases} vkx21p∈θ∑IMk(p);I~k⎩ ⎨ ⎧01−1if vk≤Tb,if vk≥Tw,otherwise. 其中 T b \mathcal{T}_b Tb和 T w \mathcal{T}_w Tw是二值化的阈值。考虑到对称性令 T b L ⋅ ( 1 − η ) / 2 \mathcal{T}_bL\cdot (1-\eta)/2 TbL⋅(1−η)/2 T w L ⋅ ( 1 η ) / 2 \mathcal{T}_wL\cdot(1\eta)/2 TwL⋅(1η)/2其中 η ∈ ( 0 , 1 ) \eta\in(0,1) η∈(0,1)。超参数 η \eta η可以控制二值化过程的严格性。
4 Method 4.1 Overall
第一阶段用户准备 I g I^g Ig和 M \mathcal{M} M依赖关联参数 c c c和 z 0 z_0 z0。 第二阶段关键一步是通过创新的QAB模块将 I g I^g Ig和 M \mathcal{M} M中封装的信息无缝集成以制定全面的蓝图记为 I b I^b Ib。 随后 I b I^b Ib在ControlNet C \mathcal{C} C中进行处理以对stable diffusion model施加影响。这个影响涉及通过受控过程调整中间特征定义为 I s G ( c , z 0 ∣ C ( I b , c , z 0 ) ) I^s\mathcal{G}(c,z_0|\mathcal{C}(I^b,c,z_0)) IsG(c,z0∣C(Ib,c,z0)) 这种整合确保了协同输出 I s I^s Is和谐地平衡了源自 I g I_g Ig的审美偏好和 M \mathcal{M} M的结构约束。 最后阶段 I s I^s Is通过SELR模块进行迭代微调改进了扫描鲁棒性同时保留了美术品质。
最后输出是一个美观的二维码 Q Q Q。
4.2 QR Aesthetic Blueprint
该模块旨在通过集成二维码信息和引导图像细节来创建可扫描的蓝图。
最初从引导图像 I g I^g Ig中提取亮度通道表示为 I y g I^g_y Iyg。为了确保可以比较的分布分别使用直方图偏振(Histogram polarization)进行亮度调整和模块重组的方法进行像素重新排列来预处理 I y g I^g_y Iyg和 M \mathcal{M} M。最后应用自适应半色调方法(Adaptive-Halftone)将二者混合产生蓝图图像 I b I^b Ib。
4.2.1 Histogram polarization
该模块的主要目的是协调 I y g I^g_y Iyg的直方图分布和QR码的直方图分布。该过程增强了 I y g I^g_y Iyg的对比度产生高对比度的图像 I h c I^{hc} Ihc。 直方图偏振操作由查找表 H \mathcal{H} H表示其将像素值从一个灰度级映射到另一个灰度级。
对于每一个像素 p \mathbf{p} p令 τ I y g ( p ) \tauI^g_y(\mathbf{p}) τIyg(p) τ ′ I h c ( p ) \tauI^{hc}(\mathbf{p}) τ′Ihc(p)将过程表示为 τ ′ H ( τ ) \tau\mathcal{H}(\tau) τ′H(τ) 令 n τ n_\tau nτ表示灰度级 τ ∈ [ 0 , L ) \tau\in[0,L) τ∈[0,L)的出现次数为每一个灰度级 τ \tau τ引入累积分布函数(Cumulative Distribution Function, CDF) cdf ( τ ) ∑ i 0 τ n i H × W \text{cdf}(\tau)\sum_{i0}^\tau \frac{n_i}{H\times W} cdf(τ)i0∑τH×Wni 目标是令生成的 I h c I^{hc} Ihc在 [ 0 , T b ) ∪ [ T w , L ) [0,\mathcal{T}_b)\cup[\mathcal{T}_w,L) [0,Tb)∪[Tw,L)范围内具有平坦的直方图。同时排除在 [ T b , T w ) [\mathcal{T}_b,\mathcal{T}_w) [Tb,Tw)中出现的情况。为了实现这一点首先创建一个新图像 I h e I^{he} Ihe其线性化CDF的值的范围为 [ 0 , L − T w T b ) [0,L-\mathcal{T}_w\mathcal{T}_b) [0,L−TwTb)。令 τ ~ I h e ( p ) \tilde{\tau}I^{he}(\mathbf{p}) τ~Ihe(p)于是有 τ ~ ( L − T w T b ) ⋅ cdf ( τ ) \tilde{\tau}(L-\mathcal{T}_w\mathcal{T}_b)\cdot \text{cdf}(\tau) τ~(L−TwTb)⋅cdf(τ) 随后通过添加 T w − T b \mathcal{T}_w-\mathcal{T}_b Tw−Tb来移动值的范围 [ T b , L ) [\mathcal{T}_b,L) [Tb,L)从而获得 I h c I^{hc} Ihc τ ′ H ( τ ) { τ ~ if τ ~ T b , τ ~ T w − T b if τ ~ ≥ T b . \tau\mathcal{H}(\tau)\begin{cases} \tilde{\tau} \qquad \text{if} \ \tilde{\tau}\mathcal{T}_b, \\ \tilde{\tau}\mathcal{T}_w-\mathcal{T}_b \qquad \text{if} \ \tilde{\tau}\geq\mathcal{T}_b. \\ \end{cases} τ′H(τ){τ~τ~Tw−Tbif τ~Tb,if τ~≥Tb.
4.2.2 Module reorganization
为了将QR码 M \mathcal{M} M与 I h c I^{hc} Ihc混合首先将 I h c I^{hc} Ihc二值化为二值图像 I b i n I^{bin} Ibin。该二值图像指导module reorganization方法记为 E r \mathcal{E}_r Er该方法在保留编码信息的同时重新排列 M \mathcal{M} M的模块。该过程可以表述为 I b i n ( p ) { 0 if I h c ( p ) T b , 1 if I h c ( p ) T w , I^{bin}(\mathbf{p})\begin{cases} 0 \qquad \text{if} \ I^{hc}(\mathbf{p})\mathcal{T}_b, \\ 1 \qquad \text{if} \ I^{hc}(\mathbf{p})\mathcal{T}_w, \\ \end{cases} Ibin(p){01if Ihc(p)Tb,if Ihc(p)Tw, M r E r ( M , I b i n ) \mathcal{M}^r\mathcal{E}_r(\mathcal{M},I^{bin}) MrEr(M,Ibin)
4.2.3 Adaptive-Halftone blending
考虑第 k k k个模块区域 M k M_k Mk我们输入经过histogram polarization后的图像块 I M k h c I_{M_k}^{hc} IMkhc和一个目标值 M k r 0 or 1 M_k^r0\ \text{or} \ 1 Mkr0 or 1。目标是获得蓝图 I b I^b Ib其中 I M k b I_{M_k}^b IMkb可以被解码为正确的信息同时保留尽可能多的图像内容。
为了达成这个目标引入了全新的blending methodAdaptive-Halftone blending(自适应半色调混合)。 具体地对于每个模块 M k M_k Mk令 θ k \theta_k θk是一个大小为 u × u u\times u u×u的方形区域以图像块 I M k h c ( u ≤ a ) I^{hc}_{M_k}(u\leq a) IMkhc(u≤a)为中心。用 M k r \mathcal{M}_k^r Mkr来填充 I θ k h c I_{\theta_k}^{hc} Iθkhc以生成 I M k b I_{M_k}^b IMkb。通过最小化该模块内的编码距离来优化放行区域大小 u u u。 u u u对应的该模块的模拟解码值定义为 E k ( I M k b ∣ u ) E_k(I_{M_k}^b|u) Ek(IMkb∣u) E k ( I M k b ∣ u ) 1 a 2 [ ∑ p ∈ θ k L ⋅ M k r ∑ p ∉ θ k I M k b ( p ) ] 1 a 2 [ u 2 ⋅ L ⋅ M k r ∑ p ∉ θ k I M k b ( p ) ] \begin{align} E_k(I_{M_k}^b|u)\frac{1}{a^2}[\sum_{\mathbf{p}\in\theta_k} L\cdot \mathcal{M}_k^r\sum_{\mathbf{p}\notin\theta_k} I_{M_k}^b(\mathbf{p})] \\ \frac{1}{a^2}[u^2\cdot L\cdot\mathcal{M}_k^r\sum_{\mathbf{p}\notin\theta_k} I_{M_k}^b(\mathbf{p})] \end{align} Ek(IMkb∣u)a21[p∈θk∑L⋅Mkrp∈/θk∑IMkb(p)]a21[u2⋅L⋅Mkrp∈/θk∑IMkb(p)] 特别地当 u a ua ua时有 E k ( I M k b ∣ u ) L ⋅ M k r E_k(I_{M_k}^b|u)L\cdot\mathcal{M}_k^r Ek(IMkb∣u)L⋅Mkr。目标是最小化编码距离 u k argmin v ∣ ∣ E k ( I M k b ∣ u ) − L ⋅ ( η ⋅ M k r 1 − η 2 ) ∣ ∣ u_k{\underset{v}{\operatorname{arg min}}}||E_k(I_{M_k}^b|u)-L\cdot(\eta\cdot\mathcal{M}_k^r\frac{1-\eta}{2})|| ukvargmin∣∣Ek(IMkb∣u)−L⋅(η⋅Mkr21−η)∣∣ 根据 T b \mathcal{T}_b Tb和 T w \mathcal{T}_w Tw的定义可以简写上式 s k { argmin s ∣ ∣ E k ( I M k b ∣ u ) − T b ∣ ∣ if M k r 0 , argmin s ∣ ∣ E k ( I M k b ∣ u ) − T w ∣ ∣ if M k r 1 , s_k\begin{cases} {\underset{s}{\operatorname{arg min}}}||E_k(I_{M_k}^b|u)-\mathcal{T}_b|| \qquad \text{if} \ \mathcal{M}_k^r0, \\ {\underset{s}{\operatorname{arg min}}}||E_k(I_{M_k}^b|u)-\mathcal{T}_w|| \qquad \text{if} \ \mathcal{M}_k^r1, \\ \end{cases} sk⎩ ⎨ ⎧sargmin∣∣Ek(IMkb∣u)−Tb∣∣sargmin∣∣Ek(IMkb∣u)−Tw∣∣if Mkr0,if Mkr1, 为每个模块都填充了合适尺寸的同心方形块后继续将标记包括查找器和对齐标记粘贴到最终的蓝图 I b I^b Ib上。
下图展示了从不同的蓝图生成不同的 I s I^s Is
此调整涉及当 I h c I^{hc} Ihc有效封装模块信息以保留更多图像内容时缩小块的大小。 相反当需要更明显的控制信号来确保模块在 I s I^s Is中的可扫描性时它会扩大块的大小。
4.3 Scannability Enhancing Latent Refinement
生成的 I s I^s Is遵循施加的 M r \mathcal{M}^r Mr的结构约束但因为仍有大量错误的模块因此不可扫描。为了解决此问题可扫描性增强潜在细化(Scannability Enhancing Latent Refinement, SELR)提供了很细致的强化过程来增强扫描鲁棒性。
包括取景器和对其图案的标记对于确定QR码的位置和角度至关重要从而影响其扫描性。因此在细化之前将它们的外观整合到 I s I^s Is上记作 I s ^ \hat{I^s} Is^。
使用VAE将增强图像 I s ^ \hat{I^s} Is^编码为潜在代码 z s z_s zs将VAE的模型记作 E V \mathcal{E}_V EV。总体目标函数 L L L可以被分为三项之和标记损失 L m \mathcal{L}_m Lm编码损失 L c \mathcal{L}_c Lc协调损失 L h \mathcal{L}_h Lh。 L ( z ) λ 1 L m ( D V ( z ) , I b ) λ 2 L c ( D V ) ( z ) , I b ) λ 3 L h ( D V ) ( z ) , I s ) \begin{aligned} \mathcal{L}(z)\lambda_1\mathcal{L}_m(\mathcal{D}_V(z),I^b) \\ \lambda_2\mathcal{L}_c(\mathcal{D}_V)(z),I^b) \\ \lambda_3\mathcal{L}_h(\mathcal{D}_V)(z),I^s) \end{aligned} L(z)λ1Lm(DV(z),Ib)λ2Lc(DV)(z),Ib)λ3Lh(DV)(z),Is) 其中 λ 1 \lambda_1 λ1到 λ 3 \lambda_3 λ3用于平衡各项之间的权重。 D V \mathcal{D}_V DV代表VAE编码器的解码器。 z z z是由 z s z_s zs初始化并在不断迭代中通过最小化目标函数来微调的潜变量控制生成的QR码 Q D V ( z ) Q\mathcal{D}_V(z) QDV(z)的可扫描性和美观质量。代码损失 L c \mathcal{L}_c Lc是通过Artcoder: an end-to-end method for generating scanning-robust stylized qr codes这篇文章提出的方法计算的该方法采用SSLayer提取模块值通过竞争机制计算基于模块的代码损失。
4.3.1 Marker loss
扫描仪根据标记区域中的特定像素比来识别QR码。 引入一个二元掩码 K c c \mathcal{K}_{cc} Kcc专门用于过滤标记的交叉中心区域目的是保护基本标记功能免受因美学定制而造成的潜在损害。形式上标记损失函数 L m \mathcal{L}_m Lm定义如下 L m ( Q , I b ) K c c ⋅ ∣ ∣ Q y − I b ∣ ∣ 2 \mathcal{L}_m(Q,I^b)\mathcal{K}_{cc}\cdot||Q_y-I^b||^2 Lm(Q,Ib)Kcc⋅∣∣Qy−Ib∣∣2 其中 Q y Q_y Qy表示二维码 Q Q Q的亮度通道。 这个公式确保了标记的完整性同时允许对QR码的非标记区域进行美观修改。重点是优化视觉质量同时保持原始扫描能力。
这个损失函数计算了 L 2 L^2 L2-Wasserstein距离记为 W 2 W_2 W2计算 Q Q Q的特征图和 I s I^s Is的距离。 特别地
4.3.2 Harmonizing Loss
解决了与标记和代码相关的可扫描性问题后要进一步确保通过协调损失来保留美学品质。特征图 f i f_i fi通过预训练的VGG-19网络的 i ∈ [ 1 , 6 , 11 , 18 , 25 ] i\in[1,6,11,18,25] i∈[1,6,11,18,25]层提取而出损失可以被计算为 L h ∑ i W 2 ( f i ( Q ) , f i ( I s ) ) \mathcal{L}_h\sum_i W_2(f_i(Q),f_i(I^s)) Lhi∑W2(fi(Q),fi(Is)) 令 P 1 , P 2 P_1,P_2 P1,P2分别为 R n \mathbb{R}^n Rn上具有 μ 1 , μ 2 ∈ R n \mu_1,\mu_2\in\mathbb{R}^n μ1,μ2∈Rn的平均值、非奇异协方差矩阵 C 1 , C 2 ∈ R n × n C_1,C_2\in\mathbb{R}^{n\times n} C1,C2∈Rn×n。 L 2 L^2 L2-Wasserstein距离 W 2 ( P 1 , P 2 ) W_2(P_1,P_2) W2(P1,P2)可以被定义为 A trace ( C 1 C 2 − 2 ( C 1 C 2 C 1 ) 1 2 ) A\text{trace}(C_1C_2-2(\sqrt{C_1}C_2\sqrt{C_1})^{\frac{1}{2}}) Atrace(C1C2−2(C1 C2C1 )21) W 2 ( P 1 , P 2 ) ∣ ∣ μ 1 − μ 2 ∣ ∣ 2 A W_2(P_1,P_2)\sqrt{||\mu_1-\mu_2||^2A} W2(P1,P2)∣∣μ1−μ2∣∣2A 协调损失的集成确保优化的输出不仅满足功能要求而且保留美学品质。本质上SELR模块利用标记、编码、协调损失来优化生成的QR码的可扫描性和美观性。