CN111222613B - 一种处理二维码的方法、装置和计算机存储介质 - Google Patents
一种处理二维码的方法、装置和计算机存储介质 Download PDFInfo
- Publication number
- CN111222613B CN111222613B CN202010297475.7A CN202010297475A CN111222613B CN 111222613 B CN111222613 B CN 111222613B CN 202010297475 A CN202010297475 A CN 202010297475A CN 111222613 B CN111222613 B CN 111222613B
- Authority
- CN
- China
- Prior art keywords
- axis
- straight line
- coordinate system
- line parallel
- coordinate
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000005070 sampling Methods 0.000 claims abstract description 288
- 238000012937 correction Methods 0.000 claims abstract description 269
- 238000013507 mapping Methods 0.000 claims abstract description 190
- 238000004364 calculation method Methods 0.000 claims abstract description 153
- 238000001514 detection method Methods 0.000 claims description 59
- 238000004891 communication Methods 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 230000002093 peripheral effect Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 7
- 230000009466 transformation Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000003814 drug Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请公开一种处理二维码的方法、装置和计算机存储介质,在畸变二维码的实际图像中建立采样坐标系,根据畸变二维码的版本信息建立校正坐标系,确定坐标系之间的坐标映射关系;在校正坐标系中确定待建立标准二维码中分别以平行于第一轴和第二轴的直线进行拟合得到每条直线的坐标映射关系,根据每条直线上特征点或计算点的校正坐标和每条直线的坐标映射关系分别确定每条直线上非特征点或非计算点的采样坐标;采样每个点采样坐标的颜色以在校正坐标系上得到对应的标准二维码。本申请处理二维码的方案,能更快速和准确译码畸变二维码。
Description
技术领域
本申请实施例涉及电子商务领域,尤其涉及一种处理二维码的方法、装置和计算机存储介质。
背景技术
国际互联网迅速走向普及化,逐步从大学、科研机构走向企业和家庭,其功能也从信息共享演变为一种大众化的信息传播手段。通过使用因特网,即降低了成本,也造就了更多的商业机会,电子商务技术从而得以发展,使其逐步成为了互联网应用的最大热点。为适应电子商务这一市场潮流,电子支付随之发展起来。
电子支付是指消费者、商家和金融机构之间使用安全电子手段把支付信息通过信息网络安全地传送到银行或相应的处理机构,用来实现货币支付或资金流转的行为。
随着电子支付的技术发展,二维码(2-dimensional bar code)支付成为电子支付一种重要的电子支付技术手段,二维码支付是一种基于账户体系搭起来的新一代无线支付方案。在该支付方案下,商家可把账号、商品价格等交易信息汇编成一个二维码,并印刷在各种报纸、杂志、广告、图书等载体上发布。 用户通过手机客户端扫拍二维码,便可实现与商家账户的支付结算。最后,商家根据支付交易信息中的用户收货、联系资料,就可以进行商品配送,完成交易。
二维码是通过按一定规律在平面的二维方向上分布的图形来记录信息的条码,其中,以快速响应矩阵(Quick Response,QR)二维码(QR码)最为常见。QR码是一种矩阵二维码符号,它具有一维条码及其它二维条码所具有的信息容量大、可靠性高、可表示汉字及图象多种文字信息、保密防伪性强等优点,QR码比传统的条形码(Bar Code)能存更多的信息,也能表示更多的数据类型。
QR码采用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符号信息的图形;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。例如,如图1所示,为现有技术中一种标准二维码QR图的结构示意图,二维码一般包括:三个位置探测图形11、两个版本信息12、多个校正图形13、两条定位图形14、三个格式信息15和数据和纠错码16。
位置探测图形也可以称为定位符或定位符图形,位置探测图形11由三个黑白相间的大正方形嵌套组成,位置探测图形11共3个,分别位于二维码左上角、右上角、左下角,用于确定二维码的长宽大小和位置。
版本信息12记录具体的版本(version)信息,版本信息用于指示二维码QR图的矩阵大小,例如,版本号从1到40。版本 1 是 21 x 21 的正方形矩阵,版本 2 是 25 x 25 的正方形矩阵,版本3 是 29 x 29的正方形矩阵,每增加一个版本,就会增加 4 的尺寸,公式是:(V-1)*4 + 21,其中,V是版本号, 最高版本 40,(40-1)*4+21 = 177,所以最高版本是177 x 177 的正方形,矩阵的每个单元用于表示“1”或“0”,例如,黑色单元用于表示二进制的“1”,白色单元用于表示二进制的“0”。
校正图形13由三个黑白相间的小正方形嵌套组成,便于确定中心,纠正扭曲,其中,校正图形的数量根据版本不同而不同,版本为1没有校正图形,版本为2-40,至少有一个校正图形,一般版本越高,校正图形的数量越多,例如,版本为7的校正图形13的数量共6个,一个校正图形位于QR二维码的正中央,四个校正图形分别位于所述QR二维码的两条垂直的中轴线上且靠近所述QR二维码的周边,最后一个校正图形位于所述QR二维码没有位置探测图形的右下角。
定位图形14由两条黑白相间的直线组成,便于确定二维码的角度,纠正扭曲。
格式信息15记录使用的掩码和纠错等级。
数据和纠错码16包括:数据码(Data Code),用于存储要存放的数据信息;纠错码(Error Correction Code),使得当二维码的数据出现允许范围内的错误时,也可以正确解码。
在日常生活和工业应用中,二维码的使用越来越广泛,诸如:零售行业、物流行业、图书、服装、医药、金融行业(例如移动支付)对条码的使用需求越来越大。二维码也从早期的平面印刷品,应用在不同形状物体的表面,例如:将二维码印于圆柱形药瓶表面用于记录药品相关信息;展会或促销时,将包含产品信息或宣传信息的二维码贴纸贴在展销人员的手臂上。在这些应用场景下,因为条码都位于曲面物体上,即条码弯曲,再加上条码识别设备镜头的影响,条码识读设备拍摄到的条码图像相较于平整的条码图像存在一定的变形和失真。
对于畸变的二维码,常用的方法是利用透视变换对二维码图像进行校正,但这种方法只适用于线性畸变的二维码,无法对非线性畸变的二维码进行校正。
例如,中国专利CN105046184A公开一种基于畸变图像校正的二维码解码方法和系统,在获取一帧包含二维码的图像,通过确定二维码的多个特征点,从而判断出二维码的类型。根据二维码的类型调用相应的匹配模板。先采取透视变换进行校正,透视变换运算量较小,可快速实现畸变程度较小的四边形图案。并将每一个像素点的灰度值填入匹配模板,由匹配模板实现快速解码。若解码失败,则开始较为复杂同时校正精度更为准确的曲面校正算法进行校正。曲面校正可校正的畸变程度较大的图案。将曲面校正后的二维码图案重新进行透视变换进行校正。经曲面校正可得到近似规则四边形的图案,再经透视变换可以得到正确的二维码四边形图案。
上述描述的现有技术方案,采用曲面校正算法能解决部分问题,但无法解决如柱面畸变或是更复杂的畸变,对离特征点较远的区域的校正效果也比较差,且解码过程中进行了多次透视变换,效率较低。
发明内容
鉴于上述问题,本申请实施例提供了一种处理二维码的方法、装置和计算机存储介质,克服了上述问题或者至少部分地解决了上述问题。
本申请的第一方面提供一种处理二维码的方法,包括:
终端设备获取畸变二维码实际图像中的版本信息;
所述终端设备在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系;
所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点;
所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系;
所述终端设备根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标;
所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点,其中,所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个;
所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系;
所述终端设备根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标;
所述终端设备在采样坐标系中采样每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码;
所述终端设备译码该对应于该畸变二维码的所述标准二维码。
可选地,当所述第一轴为X轴时,所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于X轴的直线上每个特征点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上特征点的横坐标,与分别是校正坐标系平行X轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上特征点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
可选地,所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于Y轴的直线上每个计算点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上计算点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上计算点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
可选地,当所述第一轴为Y轴时,所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于Y轴的直线上每个特征点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上特征点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上特征点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
可选地,所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于X轴的直线上每个计算点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上计算点的横坐标,与分别是校正坐标系平行X轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上计算点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
可选地,所述平行于所述第一轴的直线上的至少两个特征点包括:
平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。
可选地,所述计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标由所述终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定。
本申请的第二方面提供一种处理二维码的装置,包括:
获取模块,用于获取畸变二维码实际图像中的版本信息;
坐标建立模块,用于在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系;
确定模块,用于在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点;
处理模块,用于根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系;根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标;
所述确定模块还用于在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点,其中,所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个;
所述处理模块还用于根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系;根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标;
所述处理二维码的装置还包括:
校正模块,用于在采样坐标系中采样每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码;
译码模块,用于译码该对应于该畸变二维码的所述标准二维码。
可选地,当所述第一轴为X轴时,为确定每条平行于第一轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于X轴的直线上每个特征点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上特征点的横坐标,与分别是校正坐标系平行X轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上特征点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
可选地,为确定每条平行于第二轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于Y轴的直线上每个计算点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上计算点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上计算点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
可选地,当所述第一轴为Y轴时,为确定每条平行于第一轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于Y轴的直线上每个特征点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上特征点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上特征点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
可选地,为确定每条平行于第二轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于X轴的直线上每个计算点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上计算点的横坐标,与分别是校正坐标系平行X轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上计算点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
可选地,所述平行于所述第一轴的直线上的至少两个特征点包括:
平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。
可选地,所述计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标由所述终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定。
本申请的第三方面提供一种计算机设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行所述的处理二维码的方法的步骤。
本申请的第四方面提供一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行所述的处理二维码的方法的步骤。
上述描述的处理二维码的方案,将曲面校正的问题转化为曲线校正的问题,在校正坐标系中确定待建立二维码中多条平行于第一轴的直线,确定每条平行于第一轴的直线上的特征点并进行拟合以计算出每条平行于第一轴的直线的坐标映射关系,利用在校正坐标系中位于平行于第一轴的同一直线上的点的校正坐标计算出对应采样坐标系中曲线上的每个映射点的采样坐标,然后在校正坐标系中确定待建立二维码中多条平行于第二轴的直线,其中,第一轴和第二轴相互垂直,确定每条平行于第二轴的直线上的计算点并进行拟合以计算出每条平行于第二轴的直线的坐标映射关系,利用在校正坐标系中位于平行于第二轴的同一直线上的点的校正坐标计算出对应采样坐标系中曲线上的每个映射点的采样坐标,对每个采样坐标上的映射点的上颜色进行采样,形成理想的二维码图像,因此,可以更为快速和更为准确的译码畸变二维码。
上述说明仅是本申请实施例技术方案的概述,为了能够更清楚了解本申请实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本申请实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中一种标准二维码QR图的结构示意图;
图2为本申请实施例一种终端设备的结构示意图;
图3为本申请另一实施例的一种处理二维码方法流程示意图;
图4为本申请另一实施例的一种发生曲面畸变的QR二维码图像;
图5为本申请另一实施例的校正坐标系中对应于畸变QR二维码的标准QR二维码示意图;
图6为本申请另一实施例的一种处理二维码装置的结构示意图;
图7为本申请另一实施例的一种计算机设备基本结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。另外,本文中术语“系统”和“网络”在本文中常被可互换使用。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
请参阅图2,为本申请实施例一种终端设备的结构示意图,如图2所示,终端设备100包括存储器102、存储控制器104、一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、定位模块112、摄像模块114、音频模块116、触控屏幕118以及按键模块120。这些组件通过一条或多条通讯总线/信号线122相互通讯。
可以理解,图2所示的结构仅为示意,终端设备100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
存储器102可用于存储软件程序以及模块,如本申请实施例中的在终端设备100内处理二维码的方法及装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的在终端设备100内处理二维码的方法。
存储器102可包括高速随机存储器,还可包括非易失性存储器(non-volatilememory)或易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器,例如,闪存(flash memory)、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦写可编程只读存储器(erasable programmable read-only memory,EPROM)、电可擦写可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、可编程只读存储器(programmable read-only memory,PROM)、磁性存储器、磁盘、光盘等,所述RAM可以包括静态RAM或动态RAM。在一些实施例中,所述存储器102可以是所述终端设备100的内部存储单元,例如,该所述终端设备100的硬盘或内存。在另一些实施例中,所述存储器102也可以是所述终端设备100的外部存储设备,例如该所述终端设备100上配备的插接式硬盘、智能存储卡(Smart Media Card, SMC)、安全数字(Secure Digital, SD)卡或闪存卡(Flash Card)等。在一些实例中,存储器102可进一步包括相对于所述终端设备100远程设置的存储器,这些远程存储器可以通过网络连接至终端设备100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。
外设接口108将各种输入/输入装置耦合至处理器106以及存储器102。处理器106运行存储器102内的各种软件、指令以执行终端设备100的各种功能以及进行数据处理。
在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,它们可以分别由独立的芯片实现。
在本申请实施例中,该处理器106可以是中央处理单元(Central ProcessingUnit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器106还可以是其他通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,例如单片机等。
射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。射频模块110可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(Subscriber Identity Module,SIM)卡、存储器等等。射频模块110可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(Global System for MobileCommunication,GSM)、增强型移动通信技术(Enhanced Data GSM Environment,EDGE)、宽带码分多址技术(wideband code division multiple access,W-CDMA)、码分多址技术(Code division access,CDMA)、时分多址技术(time division multiple access,TDMA)、蓝牙、无线保真技术(Wireless Fidelity,WiFi)(如美国电气和电子工程师协会标准IEEE802.11a,IEEE 802.11b,IEEE802.11g和/或IEEE 802.11n)、网络电话(Voice overinternet protocol,VoIP)、全球微波互联接入(Worldwide Interoperability forMicrowave Access,Wi-Max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。
定位模块112用于获取终端设备100的当前位置,定位模块112的实例包括但不限于全球卫星定位系统(Global Positioning System,GPS)、基于无线局域网或者移动通信网的定位技术。
摄像模块114用于扫描、拍摄照片或者视频。拍摄的照片或者视频可以存储至存储器102内,并可通过射频模块110发送。
音频模块116向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。音频电路从外设接口108处接收声音数据,将声音数据转换为电信息,将电信息传输至扬声器。扬声器将电信息转换为人耳能听到的声波。音频电路还从麦克风处接收电信息,将电信号转换为声音数据,并将声音数据传输至外设接口108中以进行进一步的处理。音频数据可以从存储器102处或者通过射频模块110获取。此外,音频数据也可以存储至存储器102中或者通过射频模块110进行发送。在一些实例中,音频模块116还可包括一个耳机播孔,用于向耳机或者其他设备提供音频接口。
触控屏幕118在终端设备100与用户之间同时提供一个输出及输入界面。具体地,触控屏幕118向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频、及其任意组合。一些输出结果是对应于一些用户界面对象。触控屏幕118还接收用户的输入,例如用户的点击、滑动等手势操作,以便用户界面对象对这些用户的输入做出响应。检测用户输入的技术可以是基于电阻式、电容式或者其他任意可能的触控检测技术。触控屏幕118的显示单元的具体实例包括但并不限于液晶显示器或发光聚合物显示器。
按键模块120同样提供用户向终端设备100进行输入的接口,用户可以通过按下不同的按键以使终端设备100执行不同的功能。
如图3所示,为本申请另一实施例的一种处理二维码方法流程示意图,所述处理二维码方法可以由图2实施例的终端设备执行,本实施例的处理二维码方法适用于所有的矩阵式二维码,例如汉信二维码、Aztec二维码和QR二维码,但为描述方便,后续实施例均以QR二维码为例进行说明。
步骤31,终端设备获取发生畸变的二维码的实际图像。
例如,终端设备通过其扫描装置获取QR二维码的实际图像时,判断所述QR二维码是否发生曲面畸变,例如,判断所述QR二维码的实际图像是否为正方形;当判断所述QR二维码的实际图像为正方形时,确定所获取的QR二维码为标准的QR二维码,然后识别该标准的QR二维码;当判断所述QR二维码的实际图像为非正方形,确定所述QR二维码发生畸变,例如,如图4所示,为本申请一实施例的一种发生曲面畸变的QR二维码图像。
步骤32,终端设备获取该畸变二维码实际图像中的版本信息。
例如,终端设备从所述畸变QR二维码的实际图像中获取该畸变QR二维码的版本信息,该畸变QR二维码的版本信息可以指示该畸变QR二维码的矩阵大小,例如,所述版本信息指示该畸变QR二维码为61 x 61的正方形矩阵。例如,如图4所示,为版本为7的发生曲面畸变的QR二维码图像。
步骤33,终端设备在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系。
例如,终端设备在所述畸变QR二维码的实际图像中建立采样坐标系,例如,以扫描所述畸变QR二维码的扫描装置获得的整体图像的下边侧和左边侧分别为X和Y轴建立采样坐标系,所述整体图像为扫描装置的扫描图像范围的图像;或者,以扫描装置获取图像的视频框的下边和左边分别为X和Y轴建立采样坐标系。本实施例中,建立采样坐标系的X轴和Y轴可以随机设定,本实施例并不限定。
由于所述版本信息可以指示该畸变QR二维码的正方形矩阵的大小,例如,所述版本信息为7,则可以指示该畸变QR二维码为45x 45的正方形矩阵,而标准QR二维码是由黑白正方形的模块(也可以称为像素点)构成的正方形矩阵,当模块的大小设定时,标准QR二维码的位置探测图形和校正图形的位置和大小也可以确定。因此,终端设备可以根据所述版本信息指示的该畸变QR二维码的正方形矩阵的大小以及标准QR二维码的规格可以确定位置探测图形和校正图形的位置和大小,例如,如果待建立的标准QR二维码的模块大小为1x1,那么标准QR二维码的位置探测图形和校正图形的位置和大小也可以确定,即位置探测图形的大小为7x7,校正图形的大小为5x5。
因此,所述终端设备根据所述畸变QR二维码的版本信息建立校正坐标系以便在该校正坐标系中建立对应于所述畸变QR二维码的标准QR二维码,例如,以版本为7为例,将待建立标准QR二维码的左下角位置探测图形的左下角点确定为所述校正坐标系的坐标原点(0,0),将所述待标准QR二维码的左下角位置探测图形的下边确定为所述校正坐标系的X轴,将所述待标准QR二维码的左下角位置探测图形的左边确定为所述校正坐标系的Y轴,例如,如图5所示,为本申请另一实施例的校正坐标系中对应于畸变QR二维码的标准QR二维码示意图。
例如,所述版本信息可以指示该畸变QR二维码为45x 45的正方形矩阵,所述终端设备以待建立标准QR二维码的第三位置探测图形A3的左下角的角点为坐标原点(0,0)和以所述第三位置探测图形A3的下侧边和左侧边分别为X轴和Y轴建立校正坐标系。
步骤34,所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点。
例如,所述终端设备在所述校正坐标系的待建立标准二维码中根据标准二维码中的坐标确定平行于第一轴的多条直线,且每一条平行于所述第一轴的直线包括至少两个特征点,如果某条平行于所述第一轴的直线仅仅包括一个特征点,则不是本实施例所需要的直线。
对于标准QR二维码而言,当其模块(也可以称为像素点)大小确定时,即当版本信息指示确定值和确定模块大小时,根据标准QR二维码固定格式的限定,则标准QR二维码的边长、位置探测图形的位置和边长、校正图形的位置和边长均是按照固定格式固定的。例如,如果待建立的标准QR二维码的模块大小为1x1,则该待建立的标准QR二维码的边长、位置探测图形的位置和边长、校正图形的位置和边长均可确定,即位置探测图像的大小为7x7,校正图形的大小为5x5,而每个模块(也可以称为像素点)的中心点即为该模块的坐标。因此,所述终端设备可以在所述校正坐标系中根据所述畸变QR二维码的版本信息确定待建立标准QR二维码的周边四个角的角点的坐标、待建立标准QR二维码的每个位置探测图形的周边四个角的角点的坐标、待建立标准QR二维码的每个校正图形的中心点的坐标和待建立标准QR二维码的每条边的中点的坐标,这些角点和中心点的坐标为能根据版本信息确定,是坐标能公知的点,因此,所述终端设备可以将这些角点和中心点确定为特征点,即所述平行于所述第一轴的直线上的至少两个特征点包括平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。
例如,以版本为7的标准QR二维码为例,所述终端设备可以根据所述畸变QR二维码的版本信息确定待建立标准QR二维码的第一位置探测图形A1、第二位置探测图形A2和第三位置探测图形A3的位置和周边四个角的角点的坐标,例如,根据所述版本信息指示的该畸变QR二维码的矩阵大小,确定该畸变QR二维码在标准状态下的矩阵大小,即该畸变QR二维码在标准状态下的矩阵的右上角、左上角和左下角依次对应所述第一位置探测图形A1、所述第二位置探测图形A2和所述第三位置探测图形A3,以及可以确定这三个位置探测图形的位置和周边四个角的角点的坐标。
为尽可能将所述畸变QR二维码正确校正,终端设备在校正坐标系中的待建立标准QR二维码中确定尽可能多的平行于第一轴的平行直线,以及在每条直线上确定尽可能多的特征点。
所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个,为描述方便,平行于X轴的平行直线可以称为水平直线,平行于Y轴的平行直线可以称为垂直直线。
下述分别就终端设备在校正坐标系中的待建立标准QR二维码中平行于X轴的平行直线确定至少两个特征点和平行于Y轴的平行直线确定至少两个特征点为例进行描述。
当所述第一轴为X轴时,所述终端设备在校正坐标系中的待建立标准QR二维码中平行于X轴的平行直线确定特征点可以如下所述。
所述终端设备在校正坐标系中将平行于X轴的同一直线上的如下至少两点确定为特征点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。
例如,位置探测图形为“回”形,由黑白两个正方形相套而成,因此,可以将所述校正坐标系中位于探测图形上同一水平直线上的至少两个周边角点确定为特征点。
例如,当畸变QR二维码的版本为7时,所述终端设备在所述校正坐标系中,可以将待建立标准QR二维码的上侧边上的至少两个点确定为特征点,例如,终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码的右上角的第一位置探测图形A1的上边侧的两个角点和待建立标准QR二维码的左上角的第二位置探测图形A2的上边侧的两个角点,这些特征点均处于待建立标准QR二维码的上侧边上,即处于平行于X轴上的一条平行线上,可以称为水平直线。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,所述终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码的右上角的第一位置探测图形A1的下边侧的两个角点、待建立标准QR二维码的左上角的第二位置探测图形A2的下边侧的两个角点和待建立标准QR二维码的上端的至少一个校正图形的中心点,这些特征点均处于平行于X轴上的一条平行线上,可以称为水平直线。其中,根据待建立标准QR二维码的版本不同,同一直线上的校正图形的数量也不同,版本为1时,没有校正图形,当版本大于等于2时,版本越高,同一直线上的校正图形的数量越多,例如,目前最高版本(即版本为40)同一直线上的校正图形为7个,因此,校正图形的中心点位于该水平直线上的校正图形可以有两个或两个以上,则这些校正图形中至少一个校正图形的中心点确定为特征点。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,所述终端设备在所述校正坐标系中,可以将待建立标准QR二维码的中间平行于X轴的直线上的两个或两个以上校正图形的中心点确定为特征点。其中,根据待建立标准QR二维码的版本不同,同一直线上的校正图形的数量也不同,版本越高,同一直线上的校正图形的数量越多。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,所述终端设备在所述校正坐标系中,可以将待建立标准QR二维码的下侧边上的至少两个点确定为特征点,例如,所述终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码左下角的第三位置探测图形A3的下侧边上的两个角点和待建立标准QR二维码的右下角的角点,这些特征点均处于平行于X轴的同一直线上,即同一个水平直线上。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,所述终端设备在所述校正坐标系中,在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码左下角的第三位置探测图形A3的上侧边上的两个角点和待建立标准QR二维码的下端的至少一个校正图形的中心点,这些特征点均处于平行于X轴的同一直线上,即同一个水平直线上。其中,根据待建立标准QR二维码的版本不同,同一直线上的校正图形的数量也不同,版本越高,同一直线上的校正图形的数量越多,因此,校正图形的中心点位于该水平直线上的校正图形可以有两个或两个以上,则这些校正图形中至少一个校正图形的中心点确定为特征点。
当所述第一轴为Y轴时,所述终端设备在校正坐标系中的待建立标准QR二维码中平行于Y轴的平行直线确定特征点可以如下所述。
例如,所述终端设备在校正坐标系中将平行于Y轴的同一直线上的如下至少两点确定为特征点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。
例如,所述终端设备可以将所述校正坐标系中位于探测图形上同一垂直直线上的至少两个周边角点确定为特征点。
例如,当畸变QR二维码的版本为7时,所述终端设备在所述校正坐标系中,可以将待建立标准QR二维码的左侧边(即与Y轴重合的侧边)上的至少两个点确定为特征点。例如,终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码的左上角的第二位置探测图形A2的左边侧的两个角点和待建立标准QR二维码的左下角的第三位置探测图形A3的左边侧的两个角点,这些特征点均处于待建立标准QR二维码的左侧边上,即Y轴上,可以称为垂直直线。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码的左上角的第二位置探测图形A2的右边侧的两个角点、待建立标准QR二维码的左下角的第三位置探测图形A3的右边侧的两个角点和待建立标准QR二维码的左端的至少一个校正图形的中心点,这些特征点均处于平行于Y轴上的一条平行线上,可以称为垂直直线。其中,根据待建立标准QR二维码的版本不同,同一直线上的校正图形的数量也不同,版本越高,同一直线上的校正图形的数量越多,校正图形的中心点位于该垂直直线上的校正图形可以有两个或两个以上,则这些校正图形中至少一个校正图形的中心点确定为特征点。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,在所述校正坐标系中,所述终端设备可以将待建立标准QR二维码的中间平行于Y轴的直线(即垂直直线)上的两个或两个以上校正图形的中心点确定为特征点。其中,根据待建立标准QR二维码的版本不同,同一直线上的校正图形的数量也不同,版本越高,同一直线上的校正图形的数量越多。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,在所述校正坐标系中,所述终端设备可以将待建立标准QR二维码的右侧边上的至少两个点确定为特征点,例如,所述终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码右上角的第一位置探测图形A1的右侧边上的两个角点和待建立标准QR二维码的右下角的角点,这些特征点均处于平行于Y轴的同一直线上,即同一个垂直直线上。
在本申请的另一实施例中,当畸变QR二维码的版本为7时,所述终端设备在所述校正坐标系中,所述终端设备在校正坐标系中将待建立标准QR二维码的如下至少两个点确定为同一直线上的特征点:待建立标准QR二维码右上角的第一位置探测图形A1的左侧边上的两个角点和待建立标准QR二维码的右端的至少一个校正图形的中心点,这些特征点均处于平行于Y轴的同一直线上,即同一个垂直直线上。其中,根据待建立标准QR二维码的版本不同,同一直线上的校正图形的数量也不同,版本越高,同一直线上的校正图形的数量越多,校正图形的中心点位于该垂直直线上的校正图形可以有两个或两个以上,则这些校正图形中至少一个校正图形的中心点确定为特征点。
步骤35,所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系。
对于校正坐标系中平行于第一轴的同一直线上的至少两个特征点,终端设备根据畸变QR二维码的版本在校正坐标系中确定所述至少两个特征点的校正坐标,以及在终端设备自定义的采样坐标系中识别出该至少两个特征点,并在采样坐标系中确定该至少两个特征点对应的采样坐标。
例如,对于校正坐标系中每条平行于X轴的直线上和每条平行于Y轴的直线上的特征点,每个特征点的校正坐标和采样坐标都是确定已知的,例如,在校正坐标系中根据版本信息确定每个特征点的校正坐标,终端设备的根据建立采样坐标系的规则和识别特征点确定特征点的采样坐标。
例如,所述终端设备在采样坐标系中可以识别畸变QR二维码的周边角点、位置探测图形和校正图形,所述终端设备识别这些图像后,获取畸变QR二维码的周边角点、位置探测图形的周边角点和校正图形的中心点的坐标,获取校正坐标系中平行于第一轴的同一直线上确定的至少两个特征点在采样坐标系中的坐标。
例如,当畸变QR二维码的版本为7时,所述终端设备在校正坐标系中,确定待建立标准QR二维码左上角的第二位置探测图形A2的上侧边上的两个角点为特征点O1和O2,坐标分别为O1(x1,y1)和O2(x2,y2),确定待建立标准QR二维码的右上角的第一位置探测图形A1的上侧边上的两个角点为特征点O3和O4,坐标分别为O3(x3,y3)和O4(x4,y4)。则所述终端设备在采样坐标系中,识别出分别对应于所述校正坐标系中特征点O1、O2、O3和O4的特征点O1’、O2’、O3’和O4’,并分别获取坐标:O1’(x1’,y1’)、O2’(x2’,y2’)、O2’(x3’,y3’)和O4’(x4’,y4’)。
在本申请的另一实施例中,所述终端设备可以在校正坐标系中获得校正图形的中心点的校正坐标和在采样坐标系中获得校正图形的中心点的采样坐标,例如,获取校正坐标系中校正图形B1的中心点的校正坐标和采样坐标系中校正图形的中心点B1’的采样坐标。
当所述第一轴为X轴时,所述终端设备根据每条平行于X轴的直线上每个特征点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上特征点的横坐标,与分别是校正坐标系平行X轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上特征点的数量,i为大于等于零的整数且小于n。
所述终端设备根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
例如,校正坐标系中平行于X轴的任意同一直线上有n个特征点,可选的,n=3或4,在校正坐标系中,该直线上n个特征点的校正坐标分别为:(x1,y1)、(x2,y2)、…、(xn,yn),该n个特征点的采样坐标分别为:(x1’,y1’)、(x2’,y2’)、…、(xn’,yn’),在校正坐标系中由于该直线为平行于X轴的直线,所以该直线上n个特征点的校正纵坐标相等,即y1= y2=…= yn,则根据校正坐标系和采样坐标系的X轴坐标映射关系公式(1)得到该直线上n个特征点沿X轴的如下等式:
因此,该直线沿X轴的拟合参数和沿Y轴的拟合参数就构成了该直线的拟合参数,根据该直线的拟合参数就可以得到该直线的坐标映射关系,即每条直线的坐标映射关系均满足公式(1)和(2)。
当所述第一轴为Y轴时,所述终端设备根据每条平行于Y轴的直线上每个特征点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上特征点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上特征点的数量,i为大于等于零的整数且小于m。
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
例如,校正坐标系中平行于Y轴的任意同一直线上有m个特征点,可选的,m=3或4,在校正坐标系中,该直线上m个特征点的校正坐标分别为:(x1,y1)、(x2,y2)、…、(xm,ym),该m个特征点的采样坐标分别为:(x1’,y1’)、(x2’,y2’)、…、(xm’,ym’),在校正坐标系中由于该直线为平行于Y轴的直线,所以该直线上n个特征点的校正横坐标相等,即x1= x2=…= xm,则根据校正坐标系和采样坐标系的X轴坐标映射关系公式(3)得到该直线上m个特征点沿X轴的如下等式:
因此,该直线沿X轴的拟合参数和沿Y轴的拟合参数就构成了该直线的拟合参数,根据该直线的拟合参数就可以得到该直线的坐标映射关系,即每条直线的坐标映射关系均满足公式(3)和(4)。
在本申请的另一实施例中,不论是平行于X轴的直线还是平行于Y轴的直线,由于每条直线的拟合参数可能不同,所以将每条直线的拟合参数代入上述公式(1)和(2)或代入上述公式(3)和(4)后,得到的每条直线的坐标映射关系可能不同。
步骤36,所述终端设备根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标。
所述非特征点为平行于第一轴的直线上排除特征点之后的点。
对于校正坐标系中每条平行于第一轴(例如,平行于X轴或Y轴)的直线上的特征点,每个特征点的校正坐标都是确定已知的,即根据畸变QR二维码的版本即可以确定每个点的校正坐标,该点包括特征点和非特征点。
在校正坐标系中,对于平行于第一轴(例如,平行于X轴或平行于Y轴)的同一直线上任意一个非特征点的校正坐标(x,y),在该直线的拟合参数确定的基础上,根据上述步骤35确定的每条直线的坐标映射关系确定该非特征点在采样坐标系中的采样坐标,例如,对于校正坐标系中平行于X轴的直线根据公式(1)和(2)可以确定该直线上非特征点在采样坐标系中的采样坐标,对于校正坐标系中平行于Y轴的直线根据公式(3)和(4)可以确定该直线上非特征点在采样坐标系中的采样坐标。
例如,对于平行于X轴的直线,当直线的特征点的数量n=3时,该直线沿X轴的拟合参数:a0 、a1 、a2,该直线沿Y轴的拟合参数:b0 、b1 、b2,非特征点的校正坐标为(x,y),则该非特征点的采样坐标(x',y')分别根据如下公式确定:
例如,对于平行于Y轴的直线,当直线的特征点的数量n=3时,该直线沿X轴的拟合参数:c0 、c1 、c2,该直线沿Y轴的拟合参数:d0 、d1 、d2,非特征点的校正坐标为(x,y),则该非特征点的采样坐标(x',y')分别根据如下公式确定:
为尽可能将所述畸变QR二维码正确校正,终端设备在校正坐标系中的待建立标准QR二维码中确定尽可能多的平行于第一轴的直线以及每条直线上年尽可能多的特征点,例如,在待建立标准QR二维码中,在每一行平行于第一轴的模块中确定至少两个特征点,或者,在每隔一行或两行的平行于第一轴的模块中确定至少两个特征点,然后计算该直线的拟合参数,根据该拟合参数和该直线的坐标映射关系确定该行直线上非特征点在采样坐标系上的采样坐标。
在本申请的另一实施例中,所述终端设备还可以在校正坐标系中,根据位置探测图形上的角点等已获取到的特征点的校正坐标确定校正图形中心点的校正坐标。所述终端设备在采样坐标系中根据位置探测图形上的角点等已获取到的特征点的采样坐标,根据预定的计算公式模型确定校正图形中心点的采样坐标,例如,所述终端设备在采样坐标系中,根据预定的计算公式模型确定校正图形中心点的估算位置,然后在估算位置的预定范围内进行精确的校正图形检测,得到校正图形中心点的采样坐标。
步骤37,所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点。
所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个。
例如,平行于所述第二轴的直线上的特征点可以包括平行于第二轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。特征点确定的具体方式可以参考前述步骤34的描述,在此不再赘述。
属于平行于所述第二轴的直线且同时也属于平行于所述第一轴的直线上的非特征点由于根据前述步骤36已经确定出该非特征点在采样坐标系中的采样坐标,所以也可以作为平行于第二轴的直线上的计算点,即也可以作为平行于第二轴的直线上的特征点,用于计算该平行于所述第二轴的直线的拟合参数。
步骤38,所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系。
当计算点为校正坐标系中平行于第二轴的直线上的特征点时,终端设备根据畸变QR二维码的版本在校正坐标系中确定所述特征点的校正坐标,以及在终端设备自定义的采样坐标系中识别出该特征点,并在采样坐标系中确定该特征点对应的采样坐标。
当计算点为属于平行于所述第二轴的直线且同时也属于平行于所述第一轴的直线上的非特征点时,终端设备根据畸变QR二维码的版本在校正坐标系中确定所述非特征点的校正坐标,以及根据前述步骤36已经确定出该非特征点在采样坐标系中的采样坐标,例如,所述终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定属于平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标。
所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系。
例如,当所述第一轴为X轴时,所述第二轴就为Y轴,所述终端设备根据每条平行于Y轴的直线上每个计算点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上计算点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上计算点的数量,i为大于等于零的整数且小于m。
所述终端设备根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
例如,当所述第一轴为Y轴时,所述第二轴就为X轴,所述终端设备根据每条平行于X轴的直线上每个计算点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上计算点的横坐标,与分别是校正坐标系平行X轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上计算点的数量,i为大于等于零的整数且小于n。
所述终端设备根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
步骤39,所述终端设备根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标。
所述非计算点为平行于第二轴的直线上排除计算点之后的点。
对于校正坐标系中每条平行于第二轴(例如,平行于X轴或Y轴)的直线上的计算点,每个计算点的校正坐标都是确定已知的,即根据畸变QR二维码的版本即可以确定每个计算点的校正坐标。
在校正坐标系中,对于平行于第二轴(例如,平行于X轴或平行于Y轴)的同一直线上任意一个非计算点的校正坐标(x,y),在该直线的拟合参数确定的基础上,根据上述步骤38确定的每条直线的坐标映射关系确定该非计算点在采样坐标系中的采样坐标,例如,对于校正坐标系中平行于X轴的直线根据公式(1)和(2)可以确定该直线上非计算点在采样坐标系中的采样坐标,对于校正坐标系中平行于Y轴的直线根据公式(3)和(4)可以确定该直线上非计算点在采样坐标系中的采样坐标。
非计算点的采样坐标的计算方式可以参考前述步骤36描述的非特征点的采样坐标的计算方式,在此不再赘述。
步骤40,终端设备在采样坐标系中采样每个采样坐标上的颜色,并在校正坐标系上对应于每个采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码。
例如,所述终端设备在采样坐标系中采样前述已经计算出采样坐标的每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标(即采样坐标对应模块)的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码。
终端设备根据上述确定每个点的采样坐标,在采样坐标系中确定每个点采样坐标的颜色,由于QR二维码均是黑白模块(即像素点)构成,黑色模块(即像素点)表示“1”,白色模块(即像素点)表示“0”,所以,终端设备在采样坐标系中确定每个点采样坐标的颜色后,在校正坐标系上对应于每个点的采样坐标的校正坐标上生成相同的颜色,这样就可以得到对应于该畸变QR二维码的标准QR二维码,即实现对该畸变QR二维码的校正。
步骤41,终端设备译码该对应于该畸变二维码的标准二维码。
终端设备可以识别和解析该对应于该畸变QR二维码的标准QR二维码,直接进行译码获取该标准QR二维码指示的信息。
综上所述,上述描述的处理二维码方法,将曲面校正的问题转化为曲线校正的问题,将曲面校正的问题转化为曲线校正的问题,在校正坐标系中确定待建立二维码中多条平行于第一轴的直线,确定每条平行于第一轴的直线上的特征点并进行拟合以计算出每条平行于第一轴的直线的坐标映射关系,利用在校正坐标系中位于平行于第一轴的同一直线上的点的校正坐标计算出对应采样坐标系中曲线上的每个映射点的采样坐标,然后在校正坐标系中确定待建立二维码中多条平行于第二轴的直线,其中,第一轴和第二轴相互垂直,确定每条平行于第二轴的直线上的计算点并进行拟合以计算出每条平行于第二轴的直线的坐标映射关系,利用在校正坐标系中位于平行于第二轴的同一直线上的点的校正坐标计算出对应采样坐标系中曲线上的每个映射点的采样坐标,对每个采样坐标上的映射点的上颜色进行采样,形成理想的二维码图像,因此,可以更为快速和更为准确的译码畸变二维码。
如图6所示,为本申请另一实施例的一种处理二维码装置的结构示意图,所述处理二维码装置可以为终端设备的电路芯片,或者所述处理二维码装置为一种终端设备。
所述处理二维码装置包括:扫描模块61、获取模块62、坐标建立模块63、确定模块64、处理模块65、校正模块66和译码模块67,所述扫描模块61、所述获取模块62、所述坐标建立模块63、所述确定模块64、所述处理模块65、所述校正模块66和所述译码模块67任意两者之间通过总线相互连接,任意模块可以通过电路、芯片或处理器实现。
在本申请实施例中,该处理器可以是中央处理单元(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,例如单片机等。
本文描述的总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。该总线系统可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所述扫描模块61用于获取发生畸变的二维码的实际图像,所述扫描模块61获取发生畸变的QR二维码的实际图像的具体过程,可以参考前述方法实施例的步骤31所描述的内容,在此不再赘述。
所述获取模块62用于获取该畸变二维码实际图像中的版本信息,关于所述获取模块62如何获取版本信息以及该版本信息的描述,可以参考前述方法实施例的步骤32所描述的内容,在此不再赘述。
所述坐标建立模块63,用于在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系。
所述坐标建立模块63建立校正坐标系和采样坐标系的具体过程,具体可以参考前述方法实施例的步骤33所描述的内容,在此不再赘述。
所述确定模块64,用于在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点。
所述确定模块64用于将平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点。
关于所述确定模块64确定特征点的具体过程,可以参考前述方法实施例的步骤34所描述的内容,在此不再赘述。
所述处理模块65用于根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系。
当所述第一轴为X轴时,所述处理模块65用于根据每条平行于X轴的直线上每个特征点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上特征点的横坐标,与分别是校正坐标系平行X轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上特征点的数量,i为大于等于零的整数且小于n。
所述处理模块65还用于根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
例如,校正坐标系中平行于X轴的任意同一直线上有n个特征点,可选的,n=3或4,在校正坐标系中,该直线上n个特征点的校正坐标分别为:(x1,y1)、(x2,y2)、…、(xn,yn),该n个特征点的采样坐标分别为:(x1’,y1’)、(x2’,y2’)、…、(xn’,yn’),在校正坐标系中由于该直线为平行于X轴的直线,所以该直线上n个特征点的校正纵坐标相等,即y1= y2=…= yn,则所述处理模块65根据校正坐标系和采样坐标系的X轴坐标映射关系公式(1)得到该直线上n个特征点沿X轴的如下等式:
因此,该直线沿X轴的拟合参数和沿Y轴的拟合参数就构成了该直线的拟合参数,根据该直线的拟合参数就可以得到该直线的坐标映射关系,即每条直线的坐标映射关系均满足公式(1)和(2)。
当所述第一轴为Y轴时,所述处理模块65用于根据每条平行于Y轴的直线上每个特征点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上特征点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上特征点的数量,i为大于等于零的整数且小于m。
所述处理模块65还用于根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
例如,校正坐标系中平行于Y轴的任意同一直线上有m个特征点,可选的,m=3或4,在校正坐标系中,该直线上m个特征点的校正坐标分别为:(x1,y1)、(x2,y2)、…、(xm,ym),该m个特征点的采样坐标分别为:(x1’,y1’)、(x2’,y2’)、…、(xm’,ym’),在校正坐标系中由于该直线为平行于Y轴的直线,所以该直线上n个特征点的校正横坐标相等,即x1= x2=…= xm,则所述处理模块65根据校正坐标系和采样坐标系的X轴坐标映射关系公式(3)得到该直线上m个特征点沿X轴的如下等式:
则所述处理模块65根据校正坐标系和采样坐标系的Y轴坐标映射关系公式(4)得到该直线上n个特征点沿Y轴的如下等式:
因此,该直线沿X轴的拟合参数和沿Y轴的拟合参数就构成了该直线的拟合参数,根据该直线的拟合参数就可以得到该直线的坐标映射关系,即每条直线的坐标映射关系均满足公式(3)和(4)。
在本申请的另一实施例中,不论是平行于X轴的直线还是平行于Y轴的直线,由于每条直线的拟合参数可能不同,所以将每条直线的拟合参数代入上述公式(1)和(2)或代入上述公式(3)和(4)后,得到的每条直线的坐标映射关系可能不同。
所述处理模块65还用于根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标。
关于所述处理模块65如何确定直线的拟合参数和如何确定非特征点的采样坐标,可以参考前述方法实施例的步骤36所描述的内容,在此不再赘述。
所述确定模块64还用于在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点。
关于计算点的描述以及所述确定模块64确定每一条平行于第二轴的直线上的至少两个计算点具体过程,可以参考前述方法实施例的步骤37所描述的内容,在此不再赘述。
所述处理模块65还用于根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系。
例如,当所述第一轴为X轴时,所述第二轴就为Y轴,所述处理模块65用于根据每条平行于Y轴的直线上每个计算点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上计算点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上计算点的数量,i为大于等于零的整数且小于m。
所述处理模块65还用于根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
例如,当所述第一轴为Y轴时,所述第二轴就为X轴,所述处理模块65用于根据每条平行于X轴的直线上每个计算点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上计算点的横坐标,与分别是校正坐标系平行X轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上计算点的数量,i为大于等于零的整数且小于n。
所述处理模块65还用于根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
关于所述处理模块65如何确定每条平行于第二轴的直线的坐标映射关系的具体过程,可以参考前述方法实施例的步骤38所描述的内容,在此不再赘述。
所述处理模块65还用于根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标。
关于所述处理模块65如何确定每条平行于第二轴的直线上的非计算点对应的采样坐标的具体过程,可以参考前述方法实施例的步骤39所描述的内容,在此不再赘述。
所述校正模块66,用于在采样坐标系中采样每个已计算出采样坐标的点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码。
关于所述校正模块66如何得到对应于该畸变二维码的标准二维码的具体过程,可以参考前述方法实施例的步骤40所描述的内容,在此不再赘述。
所述译码模块67,用于译码该对应于该畸变二维码的标准二维码。
综上所述,上述描述的处理二维码装置,将曲面校正的问题转化为曲线校正的问题,将曲面校正的问题转化为曲线校正的问题,在校正坐标系中确定待建立二维码中多条平行于第一轴的直线,确定每条平行于第一轴的直线上的特征点并进行拟合以计算出每条平行于第一轴的直线的坐标映射关系,利用在校正坐标系中位于平行于第一轴的同一直线上的点的校正坐标计算出对应采样坐标系中曲线上的每个映射点的采样坐标,然后在校正坐标系中确定待建立二维码中多条平行于第二轴的直线,其中,第一轴和第二轴相互垂直,确定每条平行于第二轴的直线上的计算点并进行拟合以计算出每条平行于第二轴的直线的坐标映射关系,利用在校正坐标系中位于平行于第二轴的同一直线上的点的校正坐标计算出对应采样坐标系中曲线上的每个映射点的采样坐标,对每个采样坐标上的映射点的上颜色进行采样,形成理想的二维码图像,因此,可以更为快速和更为准确的译码畸变二维码。
为解决上述技术问题,本申请实施例还提供一种计算机设备,具体请参阅图7,图7为本申请另一实施例的一种计算机设备基本结构框图。
所述计算机设备7包括通过系统总线相互通信连接存储器71、处理器72、网络接口73。需要指出的是,图中仅示出了具有组件71-73的计算机设备7,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的所述计算机设备7是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器 (Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备7可以是移动终端、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备7可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器71至少包括一种类型的可读存储介质,所述可读存储介质包括非易失性存储器(non-volatile memory)或易失性存储器,例如,闪存(flash memory)、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦写可编程只读存储器(erasableprogrammable read-only memory,EPROM)、电可擦写可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、可编程只读存储器(programmableread-only memory,PROM)、磁性存储器、磁盘、光盘等,所述RAM可以包括静态RAM或动态RAM。在一些实施例中,所述存储器71可以是所述计算机设备7的内部存储单元,例如,该所述计算机设备7的硬盘或内存。在另一些实施例中,所述存储器71也可以是所述计算机设备7的外部存储设备,例如该所述计算机设备7上配备的插接式硬盘,智能存储卡(SmartMedia Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。当然,所述存储器71还可以既包括所述计算机设备7的内部存储单元也包括其外部存储设备。本实施例中,所述存储器71通常用于存储安装于所述计算机设备7的操作系统和各类应用软件,例如用于执行处理二维码的方法的程序代码等。此外,所述存储器71还可以用于暂时地存储已经输出或者将要输出的各类数据。
在本申请实施例中,该处理器72可以是中央处理单元(Central ProcessingUnit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器72还可以是其他通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,例如单片机等。
该处理器72通常用于控制所述计算机设备7的总体操作。本实施例中,所述存储器71用于存储程序代码或指令,所述程序代码包括计算机操作指令,所述处理器72用于执行所述存储器71存储的程序代码或指令或者处理数据,例如运行执行处理二维码的方法的程序代码。
本文描述的总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。该总线系统可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请的另一实施例还提供一种计算机可读介质,计算机可读介质可以是计算机可读信号介质或者计算机可读介质。计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图3对应的执行处理二维码的方法中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。
计算机可读介质包含但不限于电子、磁性、光学、电磁、红外的存储器或半导体系统、设备或者装置,或者前述的任意适当组合,所述存储器用于存储程序代码或指令,所述程序代码包括计算机操作指令,所述处理器用于执行所述存储器存储的程序代码或指令。
所述存储器和所述处理器的定义,可以参考前述计算机设备实施例的描述,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (14)
1.一种处理二维码的方法,其特征在于,包括:
终端设备获取畸变二维码实际图像中的版本信息;
所述终端设备在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系;
所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点,所述至少两个特征点包括,平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点;
所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系;
所述终端设备根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标;
所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点,其中,所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个;
所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系;
所述终端设备根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标;
所述终端设备在采样坐标系中采样每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码;
所述终端设备译码该对应于该畸变二维码的所述标准二维码,当所述第一轴为X轴时,所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于X轴的直线上每个特征点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上特征点的横坐标,与分别是校正坐标系平行X轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上特征点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
2.根据权利要求1所述的方法,其特征在于,所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于Y轴的直线上每个计算点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上计算点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上计算点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
3.根据权利要求1所述的方法,其特征在于,所述计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标由所述终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定。
4.一种处理二维码的方法,其特征在于,包括:
终端设备获取畸变二维码实际图像中的版本信息;
所述终端设备在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系;
所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点,所述至少两个特征点包括,平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点;
所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系;
所述终端设备根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标;
所述终端设备在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点,其中,所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个;
所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系;
所述终端设备根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标;
所述终端设备在采样坐标系中采样每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码;
所述终端设备译码该对应于该畸变二维码的所述标准二维码,当所述第一轴为Y轴时,所述终端设备根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于Y轴的直线上每个特征点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上特征点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上特征点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
5.根据权利要求4所述的方法,其特征在于,所述终端设备根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系具体包括:
所述终端设备根据每条平行于X轴的直线上每个计算点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上计算点的横坐标,与分别是校正坐标系平行X轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上计算点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
6.根据权利要求4所述的方法,其特征在于,所述计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标由所述终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定。
7.一种处理二维码的装置,其特征在于,包括:
获取模块,用于获取畸变二维码实际图像中的版本信息;
坐标建立模块,用于在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系;
确定模块,用于在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点,所述平行于所述第一轴的直线上的至少两个特征点包括平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点;
处理模块,用于根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系;根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标;
所述确定模块还用于在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点,其中,所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个;
所述处理模块还用于根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系;根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标;
所述处理二维码的装置还包括:
校正模块,用于在采样坐标系中采样每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码;
译码模块,用于译码该对应于该畸变二维码的所述标准二维码,当所述第一轴为X轴时,为确定每条平行于第一轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于X轴的直线上每个特征点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上特征点的横坐标,与分别是校正坐标系平行X轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上特征点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
8.根据权利要求7所述的装置,其特征在于,为确定每条平行于第二轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于Y轴的直线上每个计算点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上计算点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上计算点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
9.根据权利要求7所述的装置,其特征在于,所述计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标由终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定。
10.一种处理二维码的装置,其特征在于,包括:
获取模块,用于获取畸变二维码实际图像中的版本信息;
坐标建立模块,用于在所述畸变二维码的实际图像中建立采样坐标系,根据所述畸变二维码的版本信息建立校正坐标系;
确定模块,用于在所述校正坐标系中确定待建立标准二维码中平行于第一轴的多条直线且每一条平行于所述第一轴的直线包括至少两个特征点,所述平行于所述第一轴的直线上的至少两个特征点包括平行于所述第一轴的同一直线上的如下至少两点:位置探测图形的角点、校正图形的中心点和所述待建立标准二维码的角点;
处理模块,用于根据每条平行于第一轴的直线上每个特征点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第一轴的直线的坐标映射关系;根据每条平行于第一轴的直线上非特征点的校正坐标和每条平行于第一轴的直线的坐标映射关系分别确定每条平行于第一轴的直线上的非特征点对应的采样坐标;
所述确定模块还用于在所述校正坐标系中确定待建立标准二维码中平行于第二轴的多条直线以及每一条平行于第二轴的直线上的至少两个计算点,其中,所述计算点包括该计算点所属平行于所述第二轴的直线上的特征点和/或该计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点,所述第一轴为相互垂直的X轴和Y轴的其中之一,所述第二轴为所述X轴和所述Y轴的另一个;
所述处理模块还用于根据每条平行于第二轴的直线上每个计算点在所述校正坐标系中的校正坐标和在采样坐标系中对应的采样坐标分别确定每条平行于第二轴的直线的坐标映射关系;根据每条平行于第二轴的直线上非计算点的校正坐标和每条平行于第二轴的直线的坐标映射关系分别确定每条平行于第二轴的直线上的非计算点对应的采样坐标;
所述处理二维码的装置还包括:
校正模块,用于在采样坐标系中采样每个特征点、每个非特征点、每个计算点和每个非计算点的采样坐标的颜色,并在校正坐标系上对应于每个点的采样坐标的校正坐标上生成对应的颜色得到对应于该畸变二维码的标准二维码;
译码模块,用于译码该对应于该畸变二维码的所述标准二维码,当所述第一轴为Y轴时,为确定每条平行于第一轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于Y轴的直线上每个特征点在所述校正坐标系中的校正纵坐标和在采样坐标系中对应的采样坐标及根据如下计算公式(3)和(4),分别确定每条平行于Y轴的直线的拟合参数:
其中,y为校正坐标系中平行Y轴的同一直线上特征点的纵坐标,与分别是校正坐标系平行Y轴的同一直线上特征点在采样坐标系中的横坐标和纵坐标,c是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系横坐标的映射关系的拟合参数,d是校正坐标系平行Y轴的同一直线上纵坐标与采样坐标系纵坐标的映射关系的拟合参数,m为校正坐标系平行Y轴的同一直线上特征点的数量,i为大于等于零的整数且小于m;
根据每条平行于Y轴的直线的拟合参数分别确定每条平行于Y轴的直线的坐标映射关系,所述每条平行于Y轴的直线的坐标映射关系包括公式(3)和(4)。
11.根据权利要求10所述的装置,其特征在于,为确定每条平行于第二轴的直线的坐标映射关系,所述处理模块用于:
根据每条平行于X轴的直线上每个计算点在所述校正坐标系中的校正横坐标和在采样坐标系中对应的采样坐标以及根据如下计算公式(1)和(2),分别确定每条平行于X轴的直线的拟合参数:
其中,x为校正坐标系中平行X轴的同一直线上计算点的横坐标,与分别是校正坐标系平行X轴的同一直线上计算点在采样坐标系中的横坐标和纵坐标,a是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系横坐标的映射关系的拟合参数,b是校正坐标系平行于X轴的同一直线上横坐标与采样坐标系纵坐标的映射关系的拟合参数,n为校正坐标系平行于X轴的同一直线上计算点的数量,i为大于等于零的整数且小于n;
根据每条平行于X轴的直线的拟合参数分别确定每条平行于X轴的直线的坐标映射关系,所述每条平行于X轴的直线的坐标映射关系包括公式(1)和(2)。
12.根据权利要求10所述的装置,其特征在于,所述计算点所属平行于所述第二轴的直线且也属于平行于所述第一轴的直线上的非特征点的采样坐标由终端设备根据该非特征点的校正坐标和该非特征点所属平行于第一轴的直线的坐标映射关系确定。
13.一种计算机设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-6任意一项所述的处理二维码的方法的步骤。
14.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行权利要求1-6任意一项所述的处理二维码的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010297475.7A CN111222613B (zh) | 2020-04-16 | 2020-04-16 | 一种处理二维码的方法、装置和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010297475.7A CN111222613B (zh) | 2020-04-16 | 2020-04-16 | 一种处理二维码的方法、装置和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111222613A CN111222613A (zh) | 2020-06-02 |
CN111222613B true CN111222613B (zh) | 2020-07-28 |
Family
ID=70830111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010297475.7A Active CN111222613B (zh) | 2020-04-16 | 2020-04-16 | 一种处理二维码的方法、装置和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111222613B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111798619B (zh) * | 2020-07-09 | 2021-12-10 | 常德市广汇气体有限公司 | 一种通过扫码充装气瓶的充气系统 |
CN112149442B (zh) * | 2020-09-15 | 2022-12-06 | 浙江大华技术股份有限公司 | 畸变二维码的识别方法和装置、存储介质及电子装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424457A (zh) * | 2013-08-20 | 2015-03-18 | 复旦大学 | 一种非线性扭曲情况下的二维码识别方法 |
CN105046183A (zh) * | 2015-07-22 | 2015-11-11 | 福建新大陆自动识别技术有限公司 | 一种畸变qr码的解码方法和系统 |
CN109508573A (zh) * | 2018-11-12 | 2019-03-22 | 上海商米科技有限公司 | 二维码的解码方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100383810C (zh) * | 2006-09-26 | 2008-04-23 | 福建榕基软件开发有限公司 | 畸变qr码图像的扭正方法 |
JP4951735B2 (ja) * | 2007-11-26 | 2012-06-13 | 株式会社デンソーウェーブ | 光学情報読取装置 |
CN101908125B (zh) * | 2010-06-01 | 2014-07-02 | 福建新大陆电脑股份有限公司 | Qr码条码解码芯片及其解码方法 |
CN104517092B (zh) * | 2013-09-29 | 2018-04-03 | 北大方正集团有限公司 | 一种qr码校正图形的检测方法及系统 |
CN104008359B (zh) * | 2014-04-18 | 2017-04-12 | 杭州晟元数据安全技术股份有限公司 | 一种用于qr码识别的精确网格采样方法 |
-
2020
- 2020-04-16 CN CN202010297475.7A patent/CN111222613B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424457A (zh) * | 2013-08-20 | 2015-03-18 | 复旦大学 | 一种非线性扭曲情况下的二维码识别方法 |
CN105046183A (zh) * | 2015-07-22 | 2015-11-11 | 福建新大陆自动识别技术有限公司 | 一种畸变qr码的解码方法和系统 |
CN109508573A (zh) * | 2018-11-12 | 2019-03-22 | 上海商米科技有限公司 | 二维码的解码方法和装置 |
Non-Patent Citations (3)
Title |
---|
A New Approach for Nonlinear Distortion Correction in Endoscopic Images Based on Least Squares Estimation;K. Vijayan Asari 等;《IEEE Transactions on Medical Imaging》;19990430;第18卷(第4期);第345-354页 * |
QR码图像几何校正算法的研究;黄珂 等;《计算机工程与应用》;20130329;第50卷(第20期);第192-196页 * |
基于 webapp 的二维条码识别技术研究与应用;甄鑫;《中国优秀硕士学位论文全文数据库-信息科技辑》;20190115(第1期);第18-36页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111222613A (zh) | 2020-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11983599B2 (en) | System and method for document processing | |
WO2020173008A1 (zh) | 一种文本识别方法及装置 | |
CN110046529B (zh) | 二维码识别方法、装置及设备 | |
US7886978B2 (en) | Techniques for decoding images of barcodes | |
US9412164B2 (en) | Apparatus and methods for imaging system calibration | |
CN103336938B (zh) | 一种基于一维条形码图像的识别方法 | |
JP5805918B1 (ja) | 情報取得方法及び情報取得装置 | |
CN111222613B (zh) | 一种处理二维码的方法、装置和计算机存储介质 | |
WO2018059365A1 (zh) | 图形码处理方法及装置、存储介质 | |
CN106599758A (zh) | 一种画质处理方法及终端 | |
CN110431563B (zh) | 图像校正的方法和装置 | |
US20160314560A1 (en) | Image displaying method, apparatus, and device, and computer program product | |
CN112163443A (zh) | 一种扫码方法、扫码装置及移动终端 | |
CN110765799A (zh) | 客户端扫码识别方法、装置、设备及存储介质 | |
CN114495146A (zh) | 图像文本检测方法、装置、计算机设备及存储介质 | |
US8646691B2 (en) | Apparatus and method for using machine-readable codes | |
CN112036420A (zh) | 产生电子价格表的方法、计算设备和计算机可读存储介质 | |
CN111428707B (zh) | 图形识别码的识别方法、装置、存储介质及电子设备 | |
JP4314148B2 (ja) | 2次元コード読取装置 | |
TWI726264B (zh) | 產生條碼的方法和裝置 | |
WO2022099492A1 (zh) | 图像的处理方法、装置、设备以及存储介质 | |
TWI808032B (zh) | 形變條碼處理系統 | |
CN112036205A (zh) | 二维码识别方法、电子设备及存储介质 | |
CN115984858A (zh) | 字符坐标确定方法及装置、设备、存储介质 | |
CN115376136A (zh) | 一种字符识别方法、装置、设备及存储介质 |
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 |