CN106991462B - 三维码生成方法 - Google Patents
三维码生成方法 Download PDFInfo
- Publication number
- CN106991462B CN106991462B CN201710146047.2A CN201710146047A CN106991462B CN 106991462 B CN106991462 B CN 106991462B CN 201710146047 A CN201710146047 A CN 201710146047A CN 106991462 B CN106991462 B CN 106991462B
- Authority
- CN
- China
- Prior art keywords
- module
- quick response
- response code
- brightness
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000004044 response Effects 0.000 claims abstract description 93
- 238000012545 processing Methods 0.000 claims abstract description 12
- 239000003550 marker Substances 0.000 claims abstract description 6
- 230000008859 change Effects 0.000 claims description 23
- 238000012986 modification Methods 0.000 claims description 19
- 230000004048 modification Effects 0.000 claims description 19
- 230000000007 visual effect Effects 0.000 claims description 13
- 230000000694 effects Effects 0.000 claims description 9
- 239000003086 colorant Substances 0.000 claims description 2
- 238000005457 optimization Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 19
- 238000009826 distribution Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000012360 testing method Methods 0.000 description 10
- 238000002474 experimental method Methods 0.000 description 7
- 230000003247 decreasing effect Effects 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000000205 computational method Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000945 filler Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000010561 standard procedure Methods 0.000 description 2
- 108091026890 Coding region Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000454 anti-cipatory effect Effects 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000002939 deleterious effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002073 mitogenetic effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Analysis (AREA)
Abstract
本发明公开三维码生成方法,首先产生一张包含嵌入信息的二维码,利用待处理图像得到阈值层,再判断模组区块属性,调整模组区块亮度,将处理后的图像与二维码定位标志对应的区域进行混合处理成为三维码。此种方法可提高三维码的识读质量,提高解码正确率,实现优化视觉的目标。
Description
技术领域
本发明涉及一种三维码生成方法。
背景技术
二维码是在平面的横向和纵向上都用黑白相间的图形表示资讯的符号。与图1(a)一维条码相比,二维条码的信息量、信息密度更大,读取速度更快,编码范围更广,成本更低,容错能力强。鉴于二维条码的这些优势,世界各国都竞相研发,并广泛使用二维条码。分别有日本Denso Wave(文献1)公司开发的QR Code(Quick Response Code),如图1(b),美国Symbol公司开发的PDF417码,如图1(c),中国开发的汉信码,如图1(d)。
QR Code是一种由黑白两色方格组合而成的正方形二维码。QR是英文QuickResponse的缩写,即快速反应,因为发明者希望QR Code可以让其内容快速被解码。QR Code最早应用于汽车零件管理,而后应用于各种行业中的仓储管理。现在,由于网络媒体的发达以及智能手机的普及,人们也越来越依赖透过智能手机来获得所需的信息。由于良好的信息跟踪能力,二维码已被行销和宣传行业广泛采用,常用于广告媒体传输上,使用者透过手机摄像头扫描二维码即可。
本案所述二维码指的是QR Code,所有与二维码相关的技术参数均采用其标准制作方法。
由于二维码编码方式的限制,美化二维码时不能使其任意地呈现各种效果,因此有艺术家与研究人员开始挑战各种美化二维码的方法(文献2-10),目的是使二维码具有更好的视觉效果且保证解码稳健性。基于是否改变二维码模组信息的编码方式,大致可以分为两类方法。
第一类方法改变二维码模组信息的编码。论文(文献11、12)提出的方法,因为二维码具有容错能力,即使是将部分模组替换成图像或标志,仍可被正确地解码。但由于将图像叠加在定位标志或校正标志会严重降低二维码的正确解码率,所以,最常见的方法是将图像或标志嵌在二维码的中央(文献13),如图2(a)。这类方法限制了修改模组区域的位置,且图像面积只占二维码的一小部分,不是特别明显,对于美化二维码来说还是远远不够的。另外,这些方法没有充分利用码字的生成过程,破坏了二维码的模组,降低了解码的可靠性。
第二类方法不改变二维码模组信息的编码,直接根据模组颜色来修改对应主题图像像素的亮度或颜色。有些艺术家利用调整二维码的颜色(文献3、4)来达到艺术效果如图2(b)、2(c)。在线上程序Visualead(文献14)所制作的图2(d)中,其方法选择模组中央的像素进行亮度改变。因为解码器在解码二维码时的采样区域是模组的中心区域,所以,该方法能够较好地权衡解码稳健性和图像保真。但是,被修改的中心像素在模组中所占的比例比较大,使得图片连通性降低。这类方法没有改变二维码模组信息的编码,保证了解码的稳健性,但解码取样点散布在图像中,对视觉会造成不好的影响。
综上所述,任何二维码视觉化方法的主要挑战是,要能够被标准的应用程序解码。像素的引入造成了二维码亮度的改变,扭曲了二值化阈值,增加了解码错误的概率。其次的挑战是使用二维码的整个区域来优化视觉的问题。二维码的纠错能力有限,所以不能简单地用图像像素替换二维码的模组。
本文涉及的参考文献如下:
[1]Denso Wave:http://www.qrcode.com/en/index.html
[2]LogoQstore:https://www.logoqstore.com/
[3]A.T Communications:http://logoq.net/logoq/index.html
[4]Get QR Code Generator Pro:http://www.qr-code-generator.com
[5]QRhacker.com:http://www.qrhacker.com
[6]Huaban:https://http://huaban.com/pins/756443579
[7]Frame QR:http://www.vitreoqr.com/2014/Frame_QR.html
[8]QR Pixel:http://www.qrpixel.com
[9]QR Code Artist:http://www.qrcartist.com
[10]QuickMark Color:http://color.quickmark.com.tw
[11]S.Ono,K.Morinaga,and S.Nakayama,“Two-dimensional barcodedecoration based on real-coded genetic algorithm,”IEEE Congress onEvolutionary Computation,pp.1068–1073,2008.
[12]D.Samretwit and T.Wakahara,“Measurement of readingcharacteristics of multiplexed image in QR code,”International Conference onIntelligent Networking and Collaborative Systems,pp.552–557,2011.
[13]Unitag:https://www.unitag.io/qrcode
[14]Visualead:http://www.visualead.com
[15]Normal distribution:https://en.wikipedia.org/wiki/Normal_distribution
[16]ZXing.Net:https://zxingnet.codeplex.com
[17]G.J.Garateguy,G.R.Arce,D.L.Lau and O.P.Villarreal,“QR images:optimized image embedding in QR codes,”IEEE Transactions on Image Processing,vol.23,no.7,pp.2842–2853,2014.
[18]H.K.Chu,C.S.Chang,R.R.Lee,and N.J.Mitra,“Halftone QR codes,”ACMTransactions on Graphics,vol.32,no.6,pp.217:1–217:8,2013.
[19]W.C.Liao,“Visual arts-oriented QR code,”M.S.thesis,Yuan-ZeUniversity,2015.
发明内容
本发明的目的,在于提供三维码生成方法,其可提高三维码的识读质量,提高解码正确率,实现优化视觉的目标。
为了达成上述目的,本发明的解决方案是:
三维码生成方法,包括如下步骤:
步骤1,产生一张包含嵌入信息的二维码;
步骤2,根据二维码的版本以及设定的二维码模组大小将图像O缩放得到正方形图像S;
步骤3:利用S产生一张阈值层T;
步骤4:将S与二维码互相叠合,找出二维码模组所对应到S的区块;
步骤5:根据二维码模组的颜色,将S中对应模组中心区域的平均亮度值L与T以及设定的强韧性值r进行比较,判断是否需要修改;
步骤6:若不需修改,则S对应模组区域不做任何修改;若需要修改,则利用高斯调变函数调整区域的亮度,使得L与T以及r比较后能够符合二维码的颜色;
步骤7:重复步骤5~6直至所有模组处理完毕;
步骤8:将S与二维码定位标志对应的区域进行混合处理成为三维码。
上述步骤2中,正方形图像S的边长为像素(17+4*V)*w,其中,w为二维码模组的边长像素数,V为二维码的版本。
上述步骤3的具体内容是:将S的RGB空间转换成YUV色彩空间,对其中Y平面的灰阶图G进行处理,生成阈值层T,作为调整S亮度时的门槛。
上述处理的内容是:将转换成YUV色彩空间的图像分割成不重复的区块,设一个窗格的大小为5×5区块,以某区块为中心的窗格内所有区块的平均亮度定义为该区块的平均亮度。
上述步骤4中,在模组区块中心周围进行取样判断,模组中心区域为黑将模组的值设为1,为白设为0,并用对应于二维码模组中心c×c像素的平均亮度来代替对应于整个模组的区块的平均亮度,其中,c为三维码模组中心区域的边长像素数。
上述步骤6中,调整亮度的改变量为:
其中,(m,n)表示二维码模组的索引,lm,n表示坐标点(m,n)的模组中心区域的平均亮度值,tm,n表示坐标点(m,n)的模组中心区域的T值,qm,n表示坐标点(m,n)二维码模组的颜色,黑色为0,白色为1。
上述步骤8后还包括步骤9:在三维码周边增加白色静止区。
上述步骤9中,增加的白色静止区的宽度为4*w像素,其中,w为二维码模组的边长像素数。
三维码在二维码的基础上再增加了一个维度,其能够表示的数据也就更多,具有更多的信息容量。本发明采用颜色和亮度来表示第三维,从而在平面上实现了三维码的表示。由于识读设备中对颜色和亮度的采集是由A/D转换的位数决定的,而且还要考虑印刷设备的能力,因此,在三维码制作过程中,需要确立一种合适的标准方法,以保证其识读质量。
采用上述方案后,本发明利用高斯调变函数来制作三维码,即修改与二维码模组对应的主题图像像素的亮度,使像素颜色的改变量从中心向四周平滑的递减,而且会根据模组区块的平滑程度,决定递减的速度,使调整亮度后的模组区块更平滑,符合人类视觉***HVS(Human Visual System)对颜色及亮度的感知认识。
附图说明
图1是各种条码示意图;
其中,(a)是UPC,(b)是QR Code,(c)是PDF417码,(d)是汉信码;
图2是美化二维码示意图;
其中,(a)是Unitag,(b)是qr-code-generator,(c)是Visualead,(d)是Visualead;
图3是取不同μ或σ值时的高斯曲线形状示意图;
图4是高斯函数的标准正态分布示意图;
图5是本发明的流程图;
图6是YUV色彩空间影像成分示意图;
其中,(a)是Y平面,(b)是U平面,(c)是V平面;
图7是本发明中二值化方法示意图;
其中,(a)是分割成不重复的区块,(b)是窗格;
图8是二值化结果示意图;
其中,(a)是二值化图像,(b)是阈值层;
图9是本发明的制作结果示意图,其中,c=11,r=32,α=0.5,β=0.25;
图10是不同强韧性结果比较图一,其中,c=9,α=0.5,β=0.25;
图11是不同强韧性结果比较他二,其中,c=9,α=0.5,β=0.2;
图12是不同强韧性值的正确解码率示意图,其中,c=9,α=0.5,β=0.25;
图13是不同模组中心大小结果比较图一,其中,r=45,α=0.5,β=0.25;
图14是不同模组中心大小结果比较图二,其中,r=45,α=0.5,β=0.25;
图15是不同模组中心大小的正确解码率示意图,其中,r=45,α=0.5,β=0.25;
图16是不同高斯标准差系数结果比较图,其中,r=45,c=11;
图17是不同高斯标准差系数结果比较图,其中,r=45,c=11;
图18是本发明与其他同类方法的比较示意图,
其中,(a)是原始图像,(b)是Visualead(文献14),(c)是论文(文献18),(d)是论文(文献19),(e)是本发明方法。
具体实施方式
本发明利用高斯函数值的分布特性来制作三维码。
高斯函数(文献15)的形式为:
在图像处理中应用高斯函数可以平滑图像颜色。高斯函数有两个实数参数,即期望值μ和标准差σ,σ2为方差。μ是高斯曲线的位置参数,描述高斯函数值的集中趋势位置。高斯曲线关于μ对称,并在μ处取最大值,从μ处分别向左右两侧逐渐均匀下降。在正、负无穷远处为0。σ描述高斯函数值分布的离散程度,σ越大,数据分布越分散,高斯曲线越扁平;σ越小,数据分布越集中,高斯曲线越瘦高。图3为高斯曲线取不同的μ或σ值时的曲线形状。高斯曲线在μ±σ处有拐点,形状呈现中间高两边低,呈钟型。
高斯函数的标准正态分布在各个领域中受广泛应用,指高斯曲线约68.3%数值分布在距离平均值有1个标准差之内的范围,约95.4%数值分布在距离平均值有2个标准差之内的范围,以及约99.7%数值分布在距离平均值有3个标准差之内的范围。如图4所示,深蓝色区域是距平均值小于一个标准差之内的数值范围,在正态分布中,此范围所占比率为全部数值之68%,两个标准差之内的比率合起来为95%;三个标准差之内的比率合起来为99%。
在制作三维码的本发明中,将通过调整高斯函数值的分布特性来对应于模组区块图像像素的亮度,使得模组中心的亮度最亮或最暗,周围的亮度逐渐均匀地变暗或变量,图像颜色比较平滑,最终能够由此获得良好的三维码视觉效果。
以下将对本发明的技术方案进行详细分析。
1.1、流程概要
本发明提供的三维码生成方法主要分生成阈值层及设置模组区块亮度等四个阶段。所制作的三维码,除要能够被用户的识读程序正确解码,同时还要具备高视觉品质的外观。图5为本发明的流程图,表1为本发明所用符号表。
表1本发明所用符号说明
V | 二维码的版本 |
C | 二维码的容错等级 |
w | 二维码模组的边长像素数 |
O | 原始主题图像 |
M | 二维码的边长模组数,M=17+4V |
N | 三维码的边长像素数,N=M×w |
S | 原图缩放后的图像 |
Q | 二维码模組的值 |
(m,n) | 二维码中模组的索引 |
Y | S中图像像素的亮度值 |
(i,j) | 三维码模组中图像像素的索引 |
L | S中对应于二维码模组的图像区块的平均亮度 |
B | 三维码模组的值 |
T | 阈值层(ThresholdMask) |
r | 三维码的强韧性 |
c | 三维码模组中心区域的边长像素数 |
本发明的输入为一个版本为V,容错等级为C,模组边长像素数为w的二维码(可由Zxing(文献16)等程序制作),以及一张主题图像O。首先根据二维码的版本V,利用公式(2)(3)将原图像O调整大小至N×N像素的图像S。本发明用维持长宽比的图像缩放方法,一方面保留主题图像整体图像内容资讯,又可让主要图像物件以原始长宽比例呈现,获得较佳视觉效果。
M=17+4V (2)
N=w×M (3)
在本发明中,二维码模组的值Q如公式(4):
Q={qm,n|qm,n∈{0,1}},m=0,1,2,…,M-1,n=0,1,2,…,M-1 (4)
缩放后的图像S中各像素的亮度表示为公式(5):
Y={ym+i,n+j|ym+i,n+j∈[0,1]},m,n=0,1,2,…,M-1,i,j=0,1,2,…,w-1 (5)
S中对应于二维码各模组的图像区块的平均亮度表示为公式(6):
L={lm,n|lm,n∈[0,1]},m=0,1,2,…,M-1,n=0,1,2,…,M-1 (6)
合成的三维码也表示成模组值,如公式(7):
B={bm,n|bm,n∈{0,1}},m=0,1,2,…,M-1,n=0,1,2,…,M-1 (7)
本发明调整模组区块内各像素的亮度Y,使得模组中心区域内各像素的平均亮度L增加ΔL达到T中相应位置门槛的要求,Y+ΔL能够保证三维码与原始二维码相同位置的模组值保持一致,即B=Q,意为B与Q所有相同位置的值都对应相等。
综上所述,本发明的流程概要如下:
输入:一张欲制作成为三维码的主题图像O,以及欲嵌入的信息。
输出:一张三维码。
执行步骤:
步骤1:产生一张包含嵌入信息的二维码。
步骤2:根据二维码的版本以及设定的模组大小w将O缩放至边长为(17+4*V)*w像素的正方形图像S。
步骤3:利用S产生一张阈值层T(Threshold Mask)。
步骤4:将S与二维码互相叠合,找出二维码模组所对应到S的区块。
步骤5:根据二维码模组的颜色,将S中对应模组中心区域的平均亮度值L与T以及设定的强韧性值r进行比较,判断是否需要修改。
步骤6:若不需修改,则S对应模组区域不做任何修改;若需要修改,则利用高斯调变函数调整区域的亮度,使得L与T以及r比较后能够符合二维码的颜色。
步骤7:重复步骤5~6直至所有模组处理完毕。
步骤8:将S与二维码定位标志对应的区域进行混合处理成为三维码。
步骤9:在三维码周边加上宽度为4*w像素的白色静止区。
1.2、生成阈值层
本发明制作三维码需要调整图片的亮度,因此,首先将一般的RGB色彩空间转换成YUV色彩空间。在YUV色彩空间中,Y代表亮度(Luminance),U与V分别代表色度、浓度(Chrominance),如图6所示。本发明只需要调整图片的亮度值,因此只取出YUV中的Y平面,其余空间则保留不作任何更动。
本发明通过对Y平面的灰阶图G的进一步处理,可以生成缩放后的图像S的阈值层(Threshold Mask),定义黑白的界线,作为调整S亮度时的门槛。本发明参考市面上常见的Zxing(文献16)程序以及论文(文献17)所提到的二值化方法,利用一个窗格来计算图像每个区块的平均亮度,示意图如图7。
将图像分割成不重复的区块,区块的大小随着制作三维码时设置的模组大小w变动,一个窗格的大小为5×5区块,每个区块的平均亮度是以该区块为中心的窗格内所有区块的平均亮度,这个亮度被当作阀值使用,公式(8)为其计算方法。
例如,图8为w=8时所做出的结果,生成的阈值层将在后续使用。
1.3、设置模组区块亮度
本发明制作三维码时,针对缩放后的图像S对应到二维码的定位标志与校正标志的区域只进行混合处理,根据二维码模组的黑白颜色来整体降低或提高相应区块的亮度,从而修饰图像且不影响定位。
关于对应到二维码的编码区域,则进行以下步骤的亮度调整。由于解码器将二维码图像二值化后,会对模组进行检测。即在模组区块中心周围进行取样判断,模组中心区域为黑将模组的值设为1,为白设为0。并且,如果想正确解码一个3×3像素的模组,至少需要保证中心(即边长为模组1/3大小的正方形区域)的像素包含正确的信息。所以,本发明针对S进行处理时,用对应于二维码模组中心c×c像素的平均亮度来代替对应于整个模组的区块(以下简称为模组区块)的平均亮度,公式(9)为其计算方法。
其中,c至少应为模组大小w的1/3。c越大,制作出来的三维码解码稳健性较好、但视觉效果较差;c越小,解码稳健性较差、但视觉效果较好。
1.4、判断模组区块属性
本发明利用分界黑与白的阈值层T当做二值化的门槛来判断缩放后的图像S模组区块的属性,即模组中心区域的平均亮度是否需要进行调整,以及所必要的调整量。模组中心区域的平均亮度满足门槛值的不做修改,如公式(10)所示。
其中,(m,n)表示为二维码模组的索引,lm,n表示为该座标点的模组中心区域的平均亮度值,tm,n表示为该座标点的模组中心区域的T值,qm,n表示为该座标点二维码模组的颜色,黑色为0,白色为1。
在公式(10)中,lm,n没有做任何调整,原因是当模组中心区域的平均亮度值已经刚好满足条件时,该模组区块的像素被二值化后,检测模组得到的值刚好等于二维码的颜色,因此不做任何的调整。为了进一步针对不满足门槛值的lm,n进行调整,在公式(11)中,将lm,n加上或减去r(强韧性)值,使其大于或小于tm,n。r越大,生成的三维码的解码稳健性越好、视觉效果越差;r越小,解码稳健性越差、视觉效果越好。
若lm,n过于接近或等同于tm,n时,公式(11)没有进行任何的修改。因此,将公式(11)更进一步修改成公式(12)。
现实中扫码识读时,会因为显示媒介不同、光源差异、解码器二值化演算法不同等造成误差,因此将tm,n加上或减去r值,折中这些误差,以提高正确解码的概率。
综上所述,可以得出公式(13)。
Δlm,n意为lm,n需要的改变量以保证正确解码。若lm,n已经满足二值化时,则会变成正确的二维码模组颜色,不做任何的调整;若不满足,则调整其亮度值加上Δlm,n。其中,Δlm,n为正表示增加亮度,为负表示降低亮度。
1.5、调整模组区块亮度
在进行模组区块亮度调整时,本发明将Δlm,n乘上高斯系数来调整模组区块内像素的亮度值,如公式(14)所示。
从而使越靠近模组中心点的像素的亮度值改变量越大,但同时还能使模组中心区域的平均亮度的改变量满足公式(13)。由公式(14)可以看出,各个模组区块的高斯系数是不同的,这取决于对应区块的高斯标准差σm,n,而σm,n又是由同一模组区块的平滑程度sm,n动态决定的,如公式(15)、公式(16)所示。
公式(17)是上述方法具体处理过程的表示。本发明可以使平滑的模组区块高斯标准差大、平均亮度改变量小,使锐利的模组区块高斯标准差小、平均亮度改变量大,符合人类视觉***对颜色及亮度的感知认识。另外,使用高斯函数调整整个模组的亮度,提高模组中心区域的辨识率,保证正确解码,同时也会使得模组区块的亮度改变更平滑,有更好的视觉效果。
公式(15)中的系数a、b是常数,根据模组区块的平滑程度决定对应区块高斯函数的标准差,但它们的大小与设定的高斯函数的标准差的最大值和最小值有关。本实施例用两个参数α、β(以下简称为高斯标准差系数)动态地调整设定的标准差最大值σmax和最小值σmin,根据高斯函数的标准正态分布,95%多的函数值落在对称轴两边各2个标准差的范围内,它们的计算公式设计如公式(18)、(19)所示。
由于模组中心c×c像素(c至少为模组大小w的1/3)区域为模组检测时的重要区域,因此本实施例内定α=0.5,β=0.25。α、β越大,标准差的最大值、最小值设得越大,制作出来的三维码模组中心改变的像素数越多、改变量越小;α、β越小,标准差的最大值、最小值设得越小,制作出来的三维码模组中心改变的像素数越少、改变量越大。
2、标准制作参数
2.1、制作结果
本发明所使用的设备规格为Intel(R)Core(TM)I7-4790CPU 3.60GHz,4GB RAM,使用Java语言引入ZXing库来进行三维码制作,并提供用户自订参数,如设定欲嵌入的信息、容错能力等级、强韧性、模组大小)、模组中心区域大小以及高斯标准差系数α、β等。
图9展示了本发明制作的版本为2,容错等级为L,模组大小为25,强韧性为32,模组中心大小为11,高斯标准差系数α、β分别为0.5和0.25的三维码。本发明考量主题图像与二维码模组对应的像素区块的平均亮度,能满足原始模组的颜色,便不做任何修改,让原始图像能够最大化呈现出来,否则,利用高斯调变函数调整模组区块的亮度,使得亮度改变更平滑,视觉化效果更好。因此,从制作结果可见,本发明方法优于前述其他方法。
2.2实验测试
为了对本发明制作结果进行品质分析,在实验测试阶段,使用了不同的设备和不同的解码应用以及不同的参数来测试实验结果的正确解码率。实验测试40张本方法制作的三维码,图像的模组大小是25像素,在版本为2的情况下,每一张图有(25×25)×(25×25)=625×625像素,图像使用DELL 2407WFP荧幕来展示,并将手机镜头正面对准三维码进行测试实验。具体的实验测试设备及解码应用如表2所示。
表2本发明所用符号说明
2.3、三维码品质
2.3.1、关于强韧性
由于每张图像的亮度分布都不一样,扫码设备以及解码器的性能有好有坏,光源变化等也都会影响解码品质。为了确立一个标准的强韧性参数,本发明首先根据经验将模组中心大小设置为9(约为模组大小的1/3),高斯标准差系数α、β分别设置为0.5和0.25,然后设置不同的强韧性值来测试实验结果的正确解码率。图10、11分别展示了两张图像在不同强韧性情况下的制作结果,图中r代表强韧性,c代表模组中心大小,α、β代表高斯标准差系数。
扫码测试结果如图12所示,横坐标表示强韧性值大小,纵坐标表示正确解码率,图中折线的序号与表2中的序号逐一对应,代表相应的设备和解码程序。从结果可见,在强韧性值为40时,三维码的正确解码率都已超过80%;在强韧性值为55时,正确解码率都达到了100%。强韧性越大,判断修改图像的基准就越严谨,原始图像的更多区域被修改,图像的完整度就越低,但解码率越高。根据此实验结果,综合视觉化品质,本标准将强韧性设为45,以使制作出来的三维码兼具良好的解码率和接近自然的视觉品质。
2.3.2、关于模组中心
在标准强韧性参数的基础上,为了进一步确立标准的模组中心大小,本实施例将强韧性设设置为45,然后同样将高斯标准差系数α、β分别设置为0.5和0.25,继续使用表2中的设备及解码程序来测试不同模组中心大小的正确解码率。图13、14中分别展示了两张图像在不同模组中心大小情况下的制作结果,图中r代表强韧性,c代表模组中心大小,α、β代表高斯标准差系数。
扫码测试结果如图15所示,横坐标表示模组中心大小,纵坐标表示正确解码率。从结果可见,在模组中心大小为11时,三维码的正确解码率都达到了100%。中心区域越大,亮度改变量越大,解码率越高,但原始图像的完整度就越低。根据此实验结果,本实施例将模组中心大小设为11,以使制作出来的三维码既能保证被成功解码,也能获得好的视觉品质。
2.3.3、关于高斯标准差
本实施例将强韧性设置为45、模组中心大小设置为11,在图16、17所示不同高斯标准差系数α、β的情况下均制作出了较好视觉化效果和解码品质的三维码。从图中可见,高斯标准差系数越大,高斯调变函数标准差的最大值、最小值设得越大,模组中心区域改变的像素越多、亮度改变量越小,更符合人类视觉***。
3、结论
二维码当下被广泛流行应用于大部分的移动设备上,可以让使用者快速准确地获取相关信息。但传统二维码杂乱无章的外表无法让人视觉直观地了解其内容的关联,以及预期将会得到的结果。此外,难看的外表影响其传播媒介的美观,所以三维码势必将成为一种新潮流。
修改模组编码是方法之一,其主要利用二维码的容错能力和编码区的填充位来进行图像嵌入,但嵌入图像的面积受限于容错等级、版本大小、嵌入信息长度等诸多因素。因此,直接嵌入破坏模组结构影响解码、利用填充位操纵编码耗费时间长,且美化后的效果也不尽理想。
本发明采用的是不修改模组编码的方法,而是改变模组的亮度或颜色。同类方法如表3所示,论文(文献14、18、19)都利用修改每个模组中心区域来保证辨识度,以及利用以外的区域来让图像表达更完美。
表3本发明方法与相关其他方法的特性比较
彩色图像 | 修改模组中心 | 图像涵盖整个面积 | 合成速度快 | 资料密度大 | 视觉品质好 | |
Visualead[14] | ○ | ○ | ○ | ○ | ○ | |
论文[18] | ○ | ○ | ||||
论文[19] | ○ | ○ | ○ | ○ | ○ | |
本标准方法 | ○ | ○ | ○ | ○ | ○ | ○ |
图18为本发明与其上述方法的制作结果对比。Visualead(文献14)为线
上制码程序,为了表达出每个模组的颜色而修改整个模组,导致图像看起来非常的突兀不均匀,原始图像更是无法完美地表现出来。论文(文献18)提出了将模组切成3×3子模组以及利用半色调技术来更完美地表现图像,并发现二维码模组中心区域在解码时是决定该模组颜色的关键区域,但该方法需要进行大量的计算来为每个模组分配最适合的模式,合成速度慢且视觉效果有限。论文[19]的方法,对模组中心的正方形区域分层做辨识增强,使得模组中心为黑色或白色,虽然能够保证解码,但突兀的黑白方格使得视觉效果仍然不是很好。
本发明设计高斯调变函数调整模组区块的亮度,使得像素亮度平滑地改变,且改变后的模组中心区域的亮度呈圆形扩散改变,更符合人类视觉***,而上述其他同类方法多是靠模组中央的正方形区块调整亮度,视觉效果不佳。
综上所述,本发明提出的生成方法与相关参数,既能使得三维码更容易被人眼辨识的同时,又能确保模组中心区域像素平均亮度值满足解码时二值化要求的门槛值,有效地保证了解码的稳健性。
综合上述,由于三维码是在二维码的基础上增加了一个颜色和亮度的维度,在制作过程中也应尽量减少损坏的模组的数目,并使用最大可能的面积,同时保持与原始图像视觉保真度。因此,首先,本发明根据模组大小将模组中心区域分成不同层次,每层都是一个矩形或圆形,最外层的亮度刚好满足二值化时要求的阈值,越靠近模组中心的层次,越接近原始二维码的亮度,保证了二维码能够被正确解码。其次,本方法利用高斯调变函数来修改模组中心区域像素的亮度,使像素颜色的改变量从中心向四周平滑的递减,而且会根据模组区块的平滑程度,决定递减的速度,使调整亮度后的模组区块更平滑,符合人类视觉***对颜色及亮度的感知认识,达到优化视觉的目标。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。
Claims (6)
1.三维码生成方法,其特征在于包括如下步骤:
步骤1,产生一张包含嵌入信息的二维码;
步骤2,根据二维码的版本以及设定的二维码模组大小将图像O缩放得到正方形图像S;
步骤3:利用S产生一张阈值层T,所述步骤3的具体内容是:将S的RGB空间转换成YUV色彩空间,对其中Y平面的灰阶图G进行处理,生成阈值层T,作为调整S亮度时的门槛;
步骤4:将S与二维码互相叠合,找出二维码模组所对应到S的区块;
步骤5:根据二维码模组的颜色,将S中对应模组中心区域的平均亮度值L与T以及设定的强韧性值r进行比较,判断是否需要修改;r越大,生成的三维码的解码稳健性越好、视觉效果越差;r越小,解码稳健性越差、视觉效果越好;
利用分界黑与白的阈值层T当做二值化的门槛来判断缩放后的图像S模组区块的属性,即模组中心区域的平均亮度是否需要进行调整,以及所必要的调整量,模组中心区域的平均亮度满足门槛值的不做修改,如下公式所示:
其中,(m,n)表示为二维码模组的索引,lm,n表示为该座标点的模组中心区域的平均亮度值,tm,n表示为该座标点的模组中心区域的T值,qm,n表示为该座标点二维码模组的颜色,黑色为0,白色为1;
步骤6:若不需修改,则S对应模组区域不做任何修改;若需要修改,则利用高斯调变函数调整区域的亮度,使得L与T以及r比较后能够符合二维码的颜色;
步骤7:重复步骤5~6直至所有模组处理完毕;
步骤8:将S与二维码定位标志对应的区域进行混合处理成为三维码。
2.如权利要求1所述的三维码生成方法,其特征在于:所述步骤2中,正方形图像S的边长为(17+4*V)*w像素,其中,w为二维码模组的边长像素数, V为二维码的版本。
3.如权利要求1所述的三维码生成方法,其特征在于:所述处理的内容是:将转换成YUV色彩空间的图像分割成不重复的区块,设一个窗格的大小为5×5区块,以某区块为中心的窗格内所有区块的平均亮度定义为该区块的平均亮度。
4.如权利要求1所述的三维码生成方法,其特征在于:所述步骤4中,在模组区块中心周围进行取样判断,模组中心区域为黑将模组的值设为1,为白设为0,并用对应于二维码模组中心c×c像素的平均亮度来代替对应于整个模组的区块的平均亮度,其中,c为三维码模组中心区域的边长像素数。
5.如权利要求1所述的三维码生成方法,其特征在于:所述步骤6中,调整亮度的改变量为:
其中,(m,n)表示二维码模组的索引,lm,n表示坐标点(m,n)的模组中心区域的平均亮度值,tm,n表示坐标点(m,n)的模组中心区域的T值,qm,n表示坐标点(m,n)二维码模组的颜色,黑色为0,白色为1。
6.如权利要求1所述的三维码生成方法,其特征在于:所述步骤8后还包括步骤9:在三维码周边增加白色静止区,增加的白色静止区的宽度为4*w像素,其中,w为二维码模组的边长像素数。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710146047.2A CN106991462B (zh) | 2017-03-13 | 2017-03-13 | 三维码生成方法 |
JP2017214699A JP6483221B2 (ja) | 2017-03-13 | 2017-11-07 | 三次元コードの生成方法 |
US15/808,001 US10755153B2 (en) | 2017-03-13 | 2017-11-09 | Method of generating 3-dimensional code based on gaussian modulating function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710146047.2A CN106991462B (zh) | 2017-03-13 | 2017-03-13 | 三维码生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106991462A CN106991462A (zh) | 2017-07-28 |
CN106991462B true CN106991462B (zh) | 2018-04-17 |
Family
ID=59412029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710146047.2A Active CN106991462B (zh) | 2017-03-13 | 2017-03-13 | 三维码生成方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10755153B2 (zh) |
JP (1) | JP6483221B2 (zh) |
CN (1) | CN106991462B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10496861B2 (en) * | 2016-11-09 | 2019-12-03 | Leigh M. Rothschild | Method and system for creating a symbology related to a captured image |
CN107481376B (zh) * | 2017-08-21 | 2020-01-10 | 三维码(厦门)网络科技有限公司 | 一种基于智能应用的三维码开锁方法 |
CN107657021B (zh) * | 2017-09-27 | 2019-12-10 | 三维码(厦门)网络科技有限公司 | 一种基于三维码的采集*** |
CN108062781B (zh) * | 2018-01-31 | 2021-05-11 | 深圳市裕同包装科技股份有限公司 | 一种视觉码批量生成的***及其方法 |
CN108960383B (zh) * | 2018-05-21 | 2021-07-06 | 陈绳旭 | 三维码智慧车牌 |
CN109934322B (zh) * | 2019-03-22 | 2020-08-07 | 地维码(福建)网络科技有限公司 | 动态三维码的生成方法、生成装置、识别方法及识别装置 |
CN110009082B (zh) * | 2019-04-12 | 2022-07-05 | 三维码(厦门)网络科技有限公司 | 三维码的优化方法、介质、计算机设备及装置 |
CN110942126B (zh) * | 2019-11-08 | 2020-09-18 | 广州追溯信息科技有限公司 | 星阵三维码的生成方法 |
US11429804B2 (en) | 2020-09-18 | 2022-08-30 | Google Llc | Platform for registering and processing visual encodings |
CN112926714B (zh) * | 2021-03-16 | 2022-09-16 | 北京航空航天大学 | 融合qr码、条形码和光学字符的视觉三维码及其编码方法 |
US11853825B2 (en) * | 2021-11-08 | 2023-12-26 | Paypal, Inc. | Video/animated QR codes—privacy |
CN117131895B (zh) * | 2023-08-29 | 2024-03-08 | 宁波邻家网络科技有限公司 | 批量生成统一视觉ai二维码的方法及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003248792A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | 2次元コードのデコード方法、2次元コードのデコード装置、コンピュータに2次元コードのデコード方法を実行させるためのプログラム、このプログラムを記録した記録媒体 |
CN103310251A (zh) * | 2012-09-10 | 2013-09-18 | 成都菲普迪斯科技有限公司 | Ccqr码的编码方法及译码方法 |
CN104751099A (zh) * | 2015-04-14 | 2015-07-01 | 华中科技大学 | 一种彩色三维码图像识读前的预处理方法 |
CN104835108A (zh) * | 2015-05-14 | 2015-08-12 | 上海交通大学 | 产生可视化二维码的方法 |
CN104899629A (zh) * | 2015-06-12 | 2015-09-09 | 吴伟和 | 一种基于径向基函数的二维码图像生成方法 |
CN105160378A (zh) * | 2015-08-18 | 2015-12-16 | 矽照光电(厦门)有限公司 | 一种彩色隐形图像码生成方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6572025B1 (en) * | 2000-05-10 | 2003-06-03 | Japan Gain The Summit Co., Ltd. | Information code product, manufacturing device and method for manufacturing the same, information code reading device, authentication system, authentication terminal, authentication server, and authentication method |
JP3499805B2 (ja) * | 2000-05-12 | 2004-02-23 | 日本電信電話株式会社 | 三次元表示方法 |
KR101205865B1 (ko) * | 2011-04-05 | 2012-11-28 | 김의준 | 디자인 큐알 코드 생성 방법 |
US8439275B2 (en) * | 2011-04-06 | 2013-05-14 | Eastman Kodak Company | Multi-resolution optical codes |
US20130068831A1 (en) * | 2011-09-19 | 2013-03-21 | Ronald Steven Cok | Managing information using machine-readable codes |
TW201435830A (zh) * | 2012-12-11 | 2014-09-16 | 3M Innovative Properties Co | 不顯眼之光學標籤及其方法 |
CN103854298B (zh) * | 2014-02-13 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 一种图片与二维码融合的方法及终端 |
US9865027B2 (en) * | 2014-05-09 | 2018-01-09 | Graphiclead LLC | System and method for embedding of a two dimensional code with an image |
CN104182764A (zh) * | 2014-08-19 | 2014-12-03 | 田文胜 | 一种图形识别*** |
JP6704910B2 (ja) * | 2014-10-27 | 2020-06-03 | ムン キ イ, | 映像処理装置 |
CN105718979B (zh) * | 2016-01-14 | 2019-06-25 | 厦门纳纬信息技术有限公司 | 一种生成二维码图片的方法 |
CN105975892B (zh) * | 2016-05-04 | 2019-02-01 | 上海皇和信息科技有限公司 | 彩色图片二维码解码方法 |
CN106778998A (zh) * | 2016-11-28 | 2017-05-31 | 北京慧眼智行科技有限公司 | 一种彩色二维码的生成方法和装置 |
-
2017
- 2017-03-13 CN CN201710146047.2A patent/CN106991462B/zh active Active
- 2017-11-07 JP JP2017214699A patent/JP6483221B2/ja active Active
- 2017-11-09 US US15/808,001 patent/US10755153B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003248792A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | 2次元コードのデコード方法、2次元コードのデコード装置、コンピュータに2次元コードのデコード方法を実行させるためのプログラム、このプログラムを記録した記録媒体 |
CN103310251A (zh) * | 2012-09-10 | 2013-09-18 | 成都菲普迪斯科技有限公司 | Ccqr码的编码方法及译码方法 |
CN104751099A (zh) * | 2015-04-14 | 2015-07-01 | 华中科技大学 | 一种彩色三维码图像识读前的预处理方法 |
CN104835108A (zh) * | 2015-05-14 | 2015-08-12 | 上海交通大学 | 产生可视化二维码的方法 |
CN104899629A (zh) * | 2015-06-12 | 2015-09-09 | 吴伟和 | 一种基于径向基函数的二维码图像生成方法 |
CN105160378A (zh) * | 2015-08-18 | 2015-12-16 | 矽照光电(厦门)有限公司 | 一种彩色隐形图像码生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106991462A (zh) | 2017-07-28 |
JP2018152044A (ja) | 2018-09-27 |
US20180260671A1 (en) | 2018-09-13 |
US10755153B2 (en) | 2020-08-25 |
JP6483221B2 (ja) | 2019-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106991462B (zh) | 三维码生成方法 | |
KR100914515B1 (ko) | 색상 기반 이미지 코드의 색상 판별 방법 | |
USRE44139E1 (en) | Method and apparatus for decoding mixed code | |
Phillips | Image processing in C | |
USRE44982E1 (en) | Mixed code, and method and apparatus for generating the same | |
AU2006252025B2 (en) | Recognition of parameterised shapes from document images | |
Li et al. | An aesthetic QR code solution based on error correction mechanism | |
CN106960427A (zh) | 二维码图像处理的方法和装置 | |
US20140119647A1 (en) | Method and Apparatus for Decoding Mixed Code | |
TW201723930A (zh) | 彩色二維條碼的產生方法 | |
CN106778995A (zh) | 一种与图像融合的艺术化二维码生成方法及装置 | |
WO2005022465A2 (en) | Detecting and correcting redeye in an image | |
CN105718979B (zh) | 一种生成二维码图片的方法 | |
CN109740572A (zh) | 一种基于局部彩色纹理特征的人脸活体检测方法 | |
TWI696954B (zh) | 數位物件唯一識別符(doi)識別方法與裝置 | |
CN103020917A (zh) | 一种基于显著性检测的中国古代书法绘画图像复原方法 | |
CN109803172A (zh) | 一种直播视频的处理方法、装置及电子设备 | |
CN108734250B (zh) | 基于Sobel算子的视觉二维码生成方法 | |
CN116822548B (zh) | 生成高识别率ai二维码的方法及计算机可读存储介质 | |
Chen et al. | Box-and-ellipse-based ANFIS for bridge coating assessment | |
Cai et al. | Beautified QR code with high storage capacity using sequential module modulation | |
CN107247984B (zh) | 一种可视化二维码的编码方法 | |
CN114764927B (zh) | 一种分区域增强的人脸逆光图片的制作方法 | |
US20210203994A1 (en) | Encoding data in a source image with watermark image codes | |
Tsai et al. | Auto ROI & mask R-CNN model for QR code beautification (ARM-QR) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20170728 Assignee: Malijia (Xiamen) e-commerce Co.,Ltd. Assignor: CN3WM (XIAMEN) NETWORK TECHNOLOGY Co.,Ltd. Contract record no.: X2021350000004 Denomination of invention: 3D code generation method Granted publication date: 20180417 License type: Common License Record date: 20210907 |
|
EE01 | Entry into force of recordation of patent licensing contract |