CN115511031A - 一种扩容二维码、三维码解码方法、系统、设备和介质 - Google Patents
一种扩容二维码、三维码解码方法、系统、设备和介质 Download PDFInfo
- Publication number
- CN115511031A CN115511031A CN202211217727.6A CN202211217727A CN115511031A CN 115511031 A CN115511031 A CN 115511031A CN 202211217727 A CN202211217727 A CN 202211217727A CN 115511031 A CN115511031 A CN 115511031A
- Authority
- CN
- China
- Prior art keywords
- dimensional code
- code
- module
- image
- small
- 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.)
- Pending
Links
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
- 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/06046—Constructional details
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明涉及一种扩容二维码的解码方法,所述扩容二维码的每一模组由N*N的小码点矩阵构成,包括以下步骤:获取扩容二维码图像;对扩容二维码图像进行二值化处理;根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸;扫描获取二值化处理后的图像中小码点的尺寸,根据模组尺寸和小码点的尺寸计算小码点矩阵的阶级;根据相邻定位符的位置,确定二维码的尺寸,并根据各定位符与校正符的位置以及二维码的尺寸,进行透视变换得到校正码图;根据小码点矩阵的阶级以及二维码的Dark Module位置,确定模组中包含数据的小码点;将当前扩容二维码中的所有模组转换为二维01矩阵;根据二维码的解码算法对所有二维01矩阵进行解码。
Description
技术领域
本发明涉及一种扩容二维码、三维码解码方法、系统、设备和介质,属于编码符号的解码技术领域。
背景技术
二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。随着智能手机的广泛应用与互联网的快速发展,二维码作为一种快速响应的入口得到了广泛的应用,人们只要通过手机“扫一扫”功能,就能获取到想要的信息,市场上主流的扫码软件与读码设备普遍内置有二维码的生码、解码方法。但也由于二维码的开源性,第三方可随意伪造二维码。
现有技术如专利号CN110991591A的专利《二维码的编解码方法、装置、编码设备和解码设备》通过在结束符之后的空余区域添加隐藏信息,对一些不宜公开的信息编码进二维码进行传输。缺点是剩余空白区域所能存储的隐藏信息量较少,在同版本下隐藏信息的存储容量受明文信息长度的的限制,若想扩大隐藏信息存储容量需要缩小明文信息长度或者扩大二维码版本。
为了解决上述现有技术存在的问题,申请人提供了专利号CN114239782A的一种扩容二维码、三维码的生成方法,按照码点裂变和叠加的规则将隐藏信息内置其中,能较好的防止个人隐私信息的泄露,保障了隐私信息的安全。但是这个方案的缺点在于改变了二维码的编码规则,解码算法也相应发生改变,难以兼容原来的二维码解码,兼容性差。
发明内容
为了解决上述现有技术中存在的问题,本发明提出了一种扩容二维码的解码方法,通过确定二维码的模组尺寸和小码点的尺寸,得到小码点矩阵的阶级,继而根据DarkModule确定模组中哪些小码点包含数据,从而将所有模组转换为二维矩阵,最后利用现有二维码解码算法对二维矩阵进行解码。
本发明的技术方案如下:
一方面,本发明提供一种扩容二维码的解码方法,所述扩容二维码的每一模组由N*N的小码点矩阵构成,包括以下步骤:
获取扩容二维码图像;
对扩容二维码图像进行二值化处理;
根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据;
扫描获取二值化处理后的图像中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级;
根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图;
基于校正码图,根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置;
根据包含数据的小码点位置将当前扩容二维码中的所有模组转换为二维01矩阵;根据二维码的解码算法对所有二维01矩阵进行解码。
作为优选实施方式,所述对扩容二维码图像进行二值化处理的方法具体为:
将扩容二维码图像转化为灰度图并进行局部二值化处理,生成黑白扩容三维码图像。
作为优选实施方式,所述根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据的方法具体为:
包括三个定位符和一个校正符;
辨识在横纵方向上,黑白连通域像素所占比例为1:1:3:1:1的部分为定位符位置;辨识在横纵方向上,黑白连通域像素所占比例为1:1:1:1:1的部分为定位符位置,获取各定位符的中心坐标为定位点坐标,获取校正符的中心坐标为校正点坐标;
根据黑白联通区域所占像素数量确定二维码的模组边长为m。
作为优选实施方式,所述扫描获取二值化处理后的图像中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级的方法具体为:
对二值化处理后的图像进行逐行扫描,计算二值化处理后的图像中小码点的边长为n;
根据以下公式计算出小码点矩阵的阶级:
其中,N为小码点矩阵的阶级,m为二维码模组的边长,n为小码点的边长。
作为优选实施方式,所述根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图的方法为:
根据相邻定位符的定位点坐标,确定定位点之间的距离;
根据定位点之间的距离确定当前扩容二维码的版本的尺寸;
根据三个定位点的坐标和一个校正点的坐标以及当前扩容二维码的版本的尺寸,对二值化处理后的图像进行透视变换,得到校正码图,并获取透视变换的映射关系。
作为优选实施方式,所述基于校正码图,根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置的方法具体为:
获取校正码图中的Dark Module,将Dark Module分割为与小码点矩阵的阶级一样的N阶矩阵;
获取分割后的Dark Module中各矩形块的中心位置坐标,根据校正码图和二值化处理后的图像的映射关系,获取各矩形块的中心位置在二值化处理后的图像中的对应位置,并确定对应位置的像素值;
若对应位置的像素值对应黑色,则对应的矩形块包含数据,则当前扩容二维码的模组中对应位置的小码点包含数据;若对应位置的像素值对应白色,则对应的矩形块不包含数据。
另一方面,本发明还提供一种扩容三维码的解码方法,包括以下步骤:
获取扩容三维码图像,所述扩容三维码图像融合了如本发明任一实施例所述的扩容二维码以及背景图片;
采用本发明任一实施例所述的扩容二维码的解码方法对扩容二维码进行解码。
再一方面,本发明还提供一种扩容二维码的解码系统,所述扩容二维码的每一模组由N*N的小码点矩阵构成,包括:
原始数据获取模块,用于获取扩容二维码图像;
预处理模块,用于对扩容二维码图像进行二值化处理;
模组尺寸获取模块,用于根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据;
小码点矩阵阶级计算模块,用于扫描获取二值化处理后的图像中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级;
校正模块,用于根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图;
数据点确定模块,用于基于校正码图,根据小码点矩阵的阶级以及二维码的DarkModule模组位置,确定当前扩容二维码的模组中包含数据的小码点位置;
解码模块,用于根据包含数据的小码点位置将当前扩容二维码中的所有模组转换为二维01矩阵;根据二维码的解码算法对所有二维01矩阵进行解码。
再一方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明任一实施例所述的一种扩容二维码的解码方法。
再一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任一实施例所述的一种扩容二维码的解码方法。
本发明具有如下有益效果:
1、本发明一种扩容二维码的解码方法,针对模组裂变分割形式的扩容二维码,通过确定二维码的模组尺寸和小码点的尺寸,得到小码点矩阵的阶级,继而根据Dark Module确定模组中哪些小码点包含数据,从而将所有模组转换为二维矩阵,最后利用现有二维码解码算法对二维矩阵进行解码,识别速度快,准确率高,对于二维码模组的任意裂变情况均可进行解码。
2、本发明一种扩容二维码的解码方法,解码算法沿用现有的二维码解码算法,可以兼容非裂变分割形式的正常二维码,使用场景丰富。
附图说明
图1为本发明实施例一的方法流程图;
图2为本发明实施例中扩容二维码的示例图;
图3为本发明实施例中扫描获取小码点边长的示例图;
图4为本发明实施例中二维码模组和小码点的尺寸对比示例图;
图5为本发明实施例中Dark Module的位置示意图;
图6为本发明实施例中在黑白扩容二维码图像中对应Dark Module的模组示例图;
图7为本发明实施例二的方法流程图;
图8为本发明实施例中扩容三维码的示例图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,文中所使用的步骤编号仅是为了方便描述,不对作为对步骤执行先后顺序的限定。
应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
实施例一:
参见图1,本实施例提供一种扩容二维码的解码方法,所述扩容二维码中对每一模组进行了裂变分割处理,形成N*N的小码点矩阵,具体如图2所示,解码方法具体包括以下步骤:
S100、通过扫码设备扫描获取扩容二维码图像。
S200、对扩容二维码图像进行二值化处理,生成黑白的扩容二维码图像。
S300、根据二值化处理后的黑白的扩容二维码图像,确定二维码中各定位符与校正符的位置信息以及二维码的模组尺寸数据,正常二维码中都包含了三个定位符和一个校正符,通过定位符与校正符的位置信息可以对二维码图进行定位和校正;
S400、根据相邻定位符的位置信息,确定当前使用的二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图;
S500、对校正码图进行扫描,获取校正码图中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据,获取小码点和模组直接的尺寸比例关系,从而计算得到小码点矩阵的阶级;
S600、根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置;
S700、根据包含数据的小码点位置将当前扩容二维码中的所有模组转换为二维01矩阵,假设一个二维码模组含有y个小码点,则对y个小码点位置按照二维码模组的排布顺序进行数据区和功能区读取,形成y个二维01矩阵,其中1代表黑色,0代表白色;根据现有的二维码的解码算法对所有二维01矩阵进行Reed-Solomon纠错处理和解码,得到当前扩容二维码包含的内容数据。
作为本实施例的优选实施方式,在步骤S200中,所述对扩容二维码图像进行二值化处理的方法具体为:
将扩容二维码图像进行灰度化处理,将其转化为灰度图;
再对灰度图进行局部二值化处理,生成黑白的扩容三维码图像;二值化处理是将灰度图转化为黑白图的方法,分为全局二值化处理和局部二值化处理,更准确说局部二值化叫做自适应阈值二值化,是一种现有技术,局部取多大可以自定义,可以是一张图片的宽度的1/8,本实施例具体采用局部二值化处理,对二维码所在区域的部分进行二值化。
作为本实施例的优选实施方式,在步骤S300中,根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据的方法具体为:
本实施例中,扩容二维码包括三个定位符和一个校正符;
S301、辨识在横纵方向上,黑白连通域像素所占比例为1:1:3:1:1的部分为定位符位置;辨识在横纵方向上,黑白连通域像素所占比例为1:1:1:1:1的部分为定位符位置,获取各定位符的中心坐标为定位点坐标,获取校正符的中心坐标为校正点坐标;
S302、根据黑白联通区域所占像素数量确定二维码的模组边长为m。
作为本实施例的优选实施方式,在步骤S400中,所述扫描获取校正码图中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级的方法具体为:
S501、对二值化处理后的图像进行逐行扫描(也可以是隔行扫描),计算二值化处理后的图像中小码点的边长为n,如图3所示,找出最小码点黑色像素持续的宽度即为边长;
S502、然后根据以下公式计算出小码点矩阵的阶级:
其中,N为小码点矩阵的阶级,m为二维码模组的边长,n为小码点的边长。
如图4所示,图4中N=3,因此当前小码点矩阵的阶级为3,这是一个3*3的矩阵,该小码点矩阵将二维码的模组裂变分割成了3*3=9份;当m=n时为特殊情况表明该二维码就是未裂变的二维码(正常二维码,非本实施例所述的扩容二维码),所以本实施例提供的解码方法同时兼容正常二维码的解码。
作为本实施例的优选实施方式,在步骤S500中,所述根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图的方法为:
S501、根据相邻定位符的定位点坐标,确定定位点之间的距离;
S502、根据定位点之间的距离和二维码模组大小确定当前扩容二维码的版本的尺寸dimension,其中版本与尺寸的关系与正常二维码相同,为:
dimension=17*version+4;
S503、根据三个定位点的坐标和一个校正点的坐标以及当前扩容二维码的版本的尺寸dimension的N倍以及标准dimension二维码的定位点和校正点坐标,对二值化处理后的图像进行透视变换,得到校正码图,并获取透视变换的映射关系。
作为本实施例的优选实施方式,在步骤S600中,所述根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置的方法具体为:
S601、获取Dark Module,将Dark Module分割为与小码点矩阵的阶级一样的N阶矩阵;如图5所示,根据二维码的Dark Module模组一定是黑色模组,以此来确定分割份数中哪些小码点含有数据。
S602、获取分割后的Dark Module中各矩形块的中心位置坐标,根据校正码图和二值化处理后的图像的映射关系,获取各矩形块的中心位置在二值化处理后的黑白的扩容二维码图像中的对应位置,并确定对应位置在黑白的扩容二维码图像中的像素值;
S603、具体参见图6,若对应位置的像素值对应黑色,则对应的矩形块包含数据,则当前扩容二维码的模组中对应位置的小码点包含数据,即小码点矩阵中对应位置的小码点包含数据;若对应位置的像素值对应白色,则对应的矩形块不包含数据,模组中对应位置的小码点也不包含数据;如图6所示,图6中的Dark Module在二值化的黑白扩容二维码图像中,左上、中间和右下位置为黑色,则所有模组的左上位置小码点、中间位置小码点和右下位置小码点包含了数据。
实施例二:
具体参见图7,本实施例提供一种扩容三维码的解码方法,包括以下步骤:
A100、获取扩容三维码图像,所述扩容三维码图像融合了如本发明任一实施例所述的扩容二维码以及背景图片,具体参见图8;
A200、采用上述实施例一所述的扩容二维码的解码方法对扩容二维码进行解码。
实施例三:
本实施例提供一种扩容二维码的解码系统,所述扩容二维码的每一模组由N*N的小码点矩阵构成,包括:
原始数据获取模块,用于获取扩容二维码图像;该模块用于实现实施例一中步骤S100的功能,在此不再赘述;
预处理模块,用于对扩容二维码图像进行二值化处理;该模块用于实现实施例一中步骤S200的功能,在此不再赘述;
模组尺寸获取模块,用于根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据;该模块用于实现实施例一中步骤S300的功能,在此不再赘述;
校正模块,用于根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图;该模块用于实现实施例一中步骤S400的功能,在此不再赘述;
小码点矩阵阶级计算模块,用于扫描获取校正码图中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级;该模块用于实现实施例一中步骤S500的功能,在此不再赘述;
数据点确定模块,用于根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置;该模块用于实现实施例一中步骤S600的功能,在此不再赘述;
解码模块,用于根据包含数据的小码点位置将当前扩容二维码中的所有模组转换为二维01矩阵;根据二维码的解码算法对所有二维01矩阵进行解码;该模块用于实现实施例一中步骤S700的功能,在此不再赘述。
实施例四:
本实施例提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明任一实施例所述的一种扩容二维码的解码方法或扩容三维码的解码方法。
实施例五:
本实施例提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任一实施例所述的一种扩容二维码的解码方法或扩容三维码的解码方法。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种扩容二维码的解码方法,所述扩容二维码的每一模组由N*N的小码点矩阵构成,其特征在于,包括以下步骤:
获取扩容二维码图像;
对扩容二维码图像进行二值化处理;
根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据;
扫描获取二值化处理后的图像中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级;
根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图;
基于校正码图,根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置;
根据包含数据的小码点位置将当前扩容二维码中的所有模组转换为二维01矩阵;根据二维码的解码算法对所有二维01矩阵进行解码。
2.根据权利要求1所述的一种扩容二维码的解码方法,其特征在于,所述对扩容二维码图像进行二值化处理的方法具体为:
将扩容二维码图像转化为灰度图并进行局部二值化处理,生成黑白扩容三维码图像。
3.根据权利要求2所述的一种扩容二维码的解码方法,其特征在于,所述根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据的方法具体为:
包括三个定位符和一个校正符;
辨识在横纵方向上,黑白连通域像素所占比例为1:1:3:1:1的部分为定位符位置;辨识在横纵方向上,黑白连通域像素所占比例为1:1:1:1:1的部分为定位符位置,获取各定位符的中心坐标为定位点坐标,获取校正符的中心坐标为校正点坐标;
根据黑白联通区域所占像素数量确定二维码的模组边长为m。
5.根据权利要求4所述的一种扩容二维码的解码方法,其特征在于,所述根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图的方法为:
根据相邻定位符的定位点坐标,确定定位点之间的距离;
根据定位点之间的距离确定当前扩容二维码的版本的尺寸;
根据三个定位点的坐标和一个校正点的坐标以及当前扩容二维码的版本的尺寸,对二值化处理后的图像进行透视变换,得到校正码图,并获取透视变换的映射关系。
6.根据权利要求5所述的一种扩容二维码的解码方法,其特征在于,所述基于校正码图,根据小码点矩阵的阶级以及二维码的Dark Module模组位置,确定当前扩容二维码的模组中包含数据的小码点位置的方法具体为:
获取校正码图中的Dark Module,将Dark Module分割为与小码点矩阵的阶级一样的N阶矩阵;
获取分割后的Dark Module中各矩形块的中心位置坐标,根据校正码图和二值化处理后的图像的映射关系,获取各矩形块的中心位置在二值化处理后的图像中的对应位置,并确定对应位置的像素值;
若对应位置的像素值对应黑色,则对应的矩形块包含数据,则当前扩容二维码的模组中对应位置的小码点包含数据;若对应位置的像素值对应白色,则对应的矩形块不包含数据。
7.一种扩容三维码的解码方法,其特征在于,包括以下步骤:
获取扩容三维码图像,所述扩容三维码图像融合了如权利要求1所述的扩容二维码以及背景图片;
采用权利要求1-6任一项所述的扩容二维码的解码方法对扩容二维码进行解码。
8.一种扩容二维码的解码系统,所述扩容二维码的每一模组由N*N的小码点矩阵构成,其特征在于,包括:
原始数据获取模块,用于获取扩容二维码图像;
预处理模块,用于对扩容二维码图像进行二值化处理;
模组尺寸获取模块,用于根据二值化处理后的图像确定二维码各定位符与校正符的位置信息以及二维码的模组尺寸数据;
小码点矩阵阶级计算模块,用于扫描获取二值化处理后的图像中小码点的尺寸数据,根据模组尺寸数据和小码点的尺寸数据计算小码点矩阵的阶级;
校正模块,用于根据相邻定位符的位置信息,确定二维码的尺寸,并根据各定位符与校正符的位置信息以及二维码的尺寸,进行透视变换得到校正码图;
数据点确定模块,用于基于校正码图,根据小码点矩阵的阶级以及二维码的DarkModule模组位置,确定当前扩容二维码的模组中包含数据的小码点位置;
解码模块,用于根据包含数据的小码点位置将当前扩容二维码中的所有模组转换为二维01矩阵;根据二维码的解码算法对所有二维01矩阵进行解码。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述的一种扩容二维码的解码方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6任一项所述的一种扩容二维码的解码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211217727.6A CN115511031A (zh) | 2022-09-30 | 2022-09-30 | 一种扩容二维码、三维码解码方法、系统、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211217727.6A CN115511031A (zh) | 2022-09-30 | 2022-09-30 | 一种扩容二维码、三维码解码方法、系统、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115511031A true CN115511031A (zh) | 2022-12-23 |
Family
ID=84508030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211217727.6A Pending CN115511031A (zh) | 2022-09-30 | 2022-09-30 | 一种扩容二维码、三维码解码方法、系统、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115511031A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115936037A (zh) * | 2023-02-22 | 2023-04-07 | 青岛创新奇智科技集团股份有限公司 | 二维码的解码方法及装置 |
CN116167395A (zh) * | 2023-04-26 | 2023-05-26 | 荣耀终端有限公司 | 一种扫码方法及电子设备 |
-
2022
- 2022-09-30 CN CN202211217727.6A patent/CN115511031A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115936037A (zh) * | 2023-02-22 | 2023-04-07 | 青岛创新奇智科技集团股份有限公司 | 二维码的解码方法及装置 |
CN116167395A (zh) * | 2023-04-26 | 2023-05-26 | 荣耀终端有限公司 | 一种扫码方法及电子设备 |
CN116167395B (zh) * | 2023-04-26 | 2023-09-22 | 荣耀终端有限公司 | 一种扫码方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115511031A (zh) | 一种扩容二维码、三维码解码方法、系统、设备和介质 | |
US9406010B2 (en) | Producing, capturing and using visual identification tags for moving objects | |
US11790198B2 (en) | Method and apparatus for processing encoded pattern, storage medium, and electronic apparatus | |
US6786412B2 (en) | Two-dimensional code reading method, two-dimensional code reading program, recording medium with two-dimensional code reading program, two-dimensional code reading device, digital camera and portable terminal with digital camera | |
WO2010031110A1 (en) | Data storage device and encoding/decoding methods | |
CN113673655B (zh) | 用于确定二维码解码方向的方法及装置、电子设备、介质 | |
WO2002101634A1 (en) | Generating and decoding graphical bar codes | |
CN111161181A (zh) | 图像数据的增强方法、模型的训练方法、设备和存储介质 | |
CN101882220B (zh) | 一种基于动态模板的条码图像校正方法及校正点获取方法 | |
CN114626967A (zh) | 一种数字水印嵌入与提取方法、装置、设备及存储介质 | |
CN110210467B (zh) | 一种文本图像的公式定位方法、图像处理装置、存储介质 | |
CN109886059B (zh) | 一种基于宽度学习的qr码图像检测方法 | |
CN113420580A (zh) | 用于对二维码进行辅助定位符定位的方法及装置、二维码扫描设备、存储介质 | |
CN101882213B (zh) | 一种条码图像采样方法 | |
CN114519788A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN115909378A (zh) | 单据文本检测模型的训练方法及单据文本检测方法 | |
CN101908144B (zh) | 一种条码图像校正方法及校正点获取方法 | |
CN109635613B (zh) | 一种用于球体表面的二维码生成方法、系统及装置 | |
CN110659343A (zh) | 一种地理围栏数据的提取方法、装置及设备 | |
CN201927034U (zh) | 一种条码图像采样装置 | |
Xu | ADVANCES IN IMAGE-BASED DATA HIDING, FEATURE DETECTION, GRID ALIGNMENT, AND DOCUMENT CLASSIFICATION | |
Sheu et al. | Improvement of QR Code Recognition Based on Pillbox Filter Analysis | |
CN118015037A (zh) | 印章去除方法及装置、存储介质、终端 | |
CN117253242A (zh) | 笔记处理方法和装置 | |
CN118052714A (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 |