CN111523331A - 一种二维码识别方法及装置 - Google Patents
一种二维码识别方法及装置 Download PDFInfo
- Publication number
- CN111523331A CN111523331A CN201910108079.2A CN201910108079A CN111523331A CN 111523331 A CN111523331 A CN 111523331A CN 201910108079 A CN201910108079 A CN 201910108079A CN 111523331 A CN111523331 A CN 111523331A
- Authority
- CN
- China
- Prior art keywords
- dimensional code
- positioning
- identified
- image
- determining
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/0008—General problems related to the reading of electronic memory record carriers, independent of its reading method, e.g. power transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及图像处理技术领域,尤其涉及一种二维码识别方法及装置,所述方法包括:获取待处理图像并执行识别过程:其中,识别过程包括:识别所述待处理图像中的定位框;若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。通过上述方法,可以提高二维码识别过程中的准确率和效率。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种二维码识别方法及装置。
背景技术
二维码,又称为快速响应编码(Quick Response,QR Code),是一个近几年来移动设备上流行的一种编码方式,它可以存储更多的信息,也可以表示更多的数据类型。
目前,二维码可以应用在很多场景下,例如在扫码支付的场景下,或者通过扫码解锁共享单车的场景下,但是用户在使用终端扫描二维码时,可能会因拍摄角度不当、或者二维码存在缺损等原因,导致无法扫描到完整的二维码,进而无法对二维码进行准确解码,以获取二维码中记录的信息。
发明内容
有鉴于此,本申请实施例提供一种二维码识别方法,以提高二维码识别的准确率,以及识别效率。
第一方面,本申请实施例提供了一种二维码识别方法,包括:
获取待处理图像并执行识别过程:其中,所述识别过程包括:
识别所述待处理图像中的定位框;
若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;
基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。
一种可能的实施方式中,在识别所述待处理图像中的定位框之后,还包括:
若识别出的所述定位框的个数等于所述预设个数,则基于识别出的所述定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的实施方式中,在识别所述待处理图像中的定位框之后,还包括:
若识别出的所述定位框的个数大于所述预设个数时,则从识别出的所述定位框中选取出所述预设个数的目标定位框;
基于所述预设个数的目标定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的实施方式中,所述方法还包括:
若确定所述二维码解码失败,则重新获取待处理图像并执行所述识别过程,直至确定所述二维码解码成功。
一种可能的实施方式中,所述基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置,包括:
若识别出的所述定位框的个数为一个,则以识别出的所述定位框的位置为基准,分别在识别出的所述定位框的水平方向和垂直方向上确定每个缺失的所述定位框的位置。
一种可能的实施方式中,所述基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置,包括:
若识别出的所述定位框的个数为两个,则基于识别出的两个所述定位框的位置,确定识别出的两个所述定位框的连线;
以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置。
一种可能的实施方式中,在确定每个缺失的所述定位框的位置之后,还包括:
将识别出的所述定位框分别填充在每个缺失的所述定位框的位置上。
一种可能的实施方式中,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线为所述二维码的一侧边、所述连线的距离为所述二维码的边长,基于所述二维码的边长,确定所述二维码的另一侧边,并将所述二维码的另一侧边的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的实施方式中,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线为所述二维码的一条对角线、所述连线的距离为所述二维码的对角线长度,基于所述二维码的对角线长度,确定所述二维码的另一条对角线,并将所述二维码的另一条对角线的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的实施方式中,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线作为等腰直角三角形的一边,确定构成所述等腰直角三角形的另外两边;
将所述另外两边的交点处的位置确定为缺失的所述定位框的位置。
一种可能的实施方式中,在识别所述待处理图像中的定位框之后,还包括:
若未识别出所述待处理图像中的定位框,则从所述待处理图像中随机选取一个假定定位框的位置;
以所述假定定位框的位置为基准,确定所述待处理图像中缺失的假定定位框的位置;
基于确定的各个假定定位框的位置,定位所述待处理图像中的二维码并对所述二维码进行解码。
第二方面,本申请实施例提供了一种二维码识别装置,包括:
获取模块,用于获取待处理图像;
处理模块,用于执行识别过程,其中,所述处理模块包括:
识别单元,用于识别所述待处理图像中的定位框;
确定单元,用于若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;
解码单元,用于基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。
一种可能的设计中,所述识别单元,在识别所述待处理图像中的定位框之后,还用于:
若识别出的所述定位框的个数等于所述预设个数,则基于识别出的所述定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的设计中,所述识别单元,在识别所述待处理图像中的定位框之后,还用于:
若识别出的所述定位框的个数大于所述预设个数时,则从识别出的所述定位框中选取出所述预设个数的目标定位框;
基于所述预设个数的目标定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的设计中,所述处理模块,还用于:
若确定所述二维码解码失败,则重新获取待处理图像并执行所述识别过程,直至确定所述二维码解码成功。
一种可能的设计中,所述确定单元,在基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置时,具体用于:
若识别出的所述定位框的个数为一个,则以识别出的所述定位框的位置为基准,分别在识别出的所述定位框的水平方向和垂直方向上确定每个缺失的所述定位框的位置。
一种可能的设计中,所述确定单元,在基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置时,具体用于:
若识别出的所述定位框的个数为两个,则基于识别出的两个所述定位框的位置,确定识别出的两个所述定位框的连线;
以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置。
一种可能的设计中,所述确定单元,在确定每个缺失的所述定位框的位置之后,还用于:
将识别出的所述定位框分别填充在每个缺失的所述定位框的位置上。
一种可能的设计中,所述确定单元,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线为所述二维码的一侧边、所述连线的距离为所述二维码的边长,基于所述二维码的边长,确定所述二维码的另一侧边,并将所述二维码的另一侧边的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,所述确定单元,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线为所述二维码的一条对角线、所述连线的距离为所述二维码的对角线长度,基于所述二维码的对角线长度,确定所述二维码的另一条对角线,并将所述二维码的另一条对角线的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,所述确定单元,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线作为等腰直角三角形的一边,确定构成所述等腰直角三角形的另外两边;
将所述另外两边的交点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,所述识别单元,在识别所述待处理图像中的定位框之后,还用于:
若未识别出所述待处理图像中的定位框,则从所述待处理图像中随机选取一个假定定位框的位置;
以所述假定定位框的位置为基准,确定所述待处理图像中缺失的假定定位框的位置;
基于确定的各个假定定位框的位置,定位所述待处理图像中的二维码并对所述二维码进行解码。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面的任一种可能的实施方式中所述的二维码识别方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面的任一种可能的实施方式中所述的二维码识别方法的步骤。
本实施例所提供的二维码识别方法,通过识别获取的待处理图像中的定位框,然后在识别出的定位框的个数小于预设个数时,基于识别出的定位框的位置,确定待处理图像中缺失的定位框的位置,最后基于识别出的定位框的位置和缺失的定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
通过上述方法,在识别二维码时,若无法将用于定位二维码的定位框全部识别出来时,可以基于已识别出的定位框的位置,确定缺失的定位框的位置,进而基于各个定位框的位置,准确地确定出待处理图像中二维码的轮廓并进行解析。即使在拍摄角度存在偏差或二维码破损的情况下,也可以准确地定位二维码进行识别,提高了二维码识别过程中的准确率,且现有技术中若二维码的拍摄角度出现偏差或二维码破损时,需要对二维码进行校准,然后对二维码进行定位和识别,流程较为繁琐,通过上述方法,无需进行图像校准即可准确定位二维码,提高了二维码的识别效率。
为使本申请实施例的上述目的、特征和优点能更明显易懂,下面将结合实施例,并配合所附附图,作详细说明。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种二维码识别方法的流程示意图;
图2示出了本申请实施例提供的一种可能的二维码的定位框的示意图;
图3示出了本申请实施例提供的一种可能的黑白像素框排列顺序示意图;
图4示出了本申请实施例提供的另一种可能的黑白像素框排列顺序示意图;
图5示出了本申请实施例提供的识别出的定位框的位置示意图;
图6示出了本申请实施例提供的另一种确定定位框的位置的方法示意图;
图7示出了本申请实施例提供的一种确定定位框的位置的方法示意图;
图8示出了本申请实施例提供的等腰三角形另外两边位置的可能的结果的示意图;
图9示出了本申请实施例提供的一种高版本的二维码的定位框的示意图;
图10示出了本申请实施例提供的一种二维码识别方法的流程示意图;
图11示出了本申请实施例提供的二维码识别装置1100的架构示意图;
图12示出了本申请实施例提供的电子设备1200的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。以下对本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先,对本申请所提供的方法可适用的应用场景做出介绍。
二维码是用特定的集合图像按照一定的规律在二维方向上分布的黑白相间的图像,用来记录数据符号信息,现有二维码中都包含三个特征定位点,特征定位点即本文所述定位框。用户在扫描二维码时,往往所扫描到的区域除二维码外,还会包括背景区域,通过二维码上的特征定位点,可以实现对二维码区域的识别和解析。
二维码现在已广泛被应用于移动支付、共享单车开锁等领域,以共享单车开锁为例,部分共享单车所配置的二维码的部分图像可能会被人为破坏,这种情况就会导致二维码信息的解析失败,进而导致共享单车无法得到充分利用。
本申请所提供的方法可适用于二维码破损或拍摄角度存在偏差时,对二维码进行扫描的场景中。
现有技术中,在对二维码进行扫描时,首先确定二维码上的三个定位框,然后基于二维码上的三个定位框,对二维码信息进行读取。然后有些情况下,可能因为拍摄角度的原因或者二维码破损的原因,导致并不能同时获取搭配二维码上的三个定位框,这种情况下,可能会导致二维码信息读取的失败。
本申请所提供的二维码识别方法,可以通过识别获取的待处理图像中的定位框,然后在识别出的定位框的个数小于预设个数时,基于识别出的定位框的位置,确定待处理图像中缺失的定位框的位置,最后基于识别出的定位框的位置和缺失的定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
下面,结合具体实施例对本申请提供的二维码识别方法及装置进行详细说明。其中,应理解,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。本申请实施例中用到的“第一”、“第二”等限定词,仅用于区分特征,并不限定特征之间的先后顺序或者暗示重要程度等。
实施例一
本申请实施例提供了一种二维码识别方法,如图1所示,为本申请实施例提供的二维码识别方法的流程示意图,包括以下步骤:
S101、获取待处理图像。
其中,待处理图像可以为包含二维码的图像。
S102、识别待处理图像中的定位框。
S103、若识别出的定位框的个数小于预设个数,则基于识别出的定位框的位置,确定待处理图像中缺失的定位框的位置。
S104、基于识别出的定位框的位置和缺失的定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
具体实施中,二维码为二值图像,二维码的定位框为具有一定的黑白像素点的比例的区域图像,因此在识别待处理图像中的定位框时,可以确定待处理图像中满足预设黑白像素点比例的区域图像为待处理图像的定位框。
首先,对下述比值进行说明,下述比值1:5:1表示连续的像素框中,黑色像素框:白色像素框:黑色像素框的比值为1:5:1;下述比例1:1:3:1:1表示黑色像素框:白色像素框:黑色像素框:白色像素框:黑色像素框的比值为1:1:3:1:1。
示例性的,参见图2所示,为一种可能的二维码的定位框的示意图,该定位框由像素值不同的像素框组成,该定位框由像素值不同的像素框组成,每个像素框的大小可以由人为设定,其中每个像素框中所包含的像素点的个数相同。图2所示的定位框是一个7×7的正方形框,包含16个白色像素框和33个黑色像素框,第一行和第七行的像素框包含7个黑色像素框,第二行和第六行的像素框包含5个白色像素框,2个黑色像素框,黑白像素框之间按照位置顺序的比值为1:5:1,第三行到第五行均包含两个白色像素框,5个黑色像素框,黑白像素框之间按照位置顺序的比值为1:1:3:1:1。
在确定待处理图像中的定位框时,可以以像素框大小为单位,对待处理图像进行划分,然后在划分后的待处理图像中确定符合条件的定位框。
例如,因定位框的第三行至第五行所包含的黑白像素框按照位置顺序的比值为1:1:3:1:1,定位框的第二行和第六行所包含的黑白像素框按照位置顺序的比值为1:5:1,则需要定位框的第一行的像素框包含至少连续7个为黑色像素框。因此,可以在第n行确定连续7个均为黑色像素框的区域为第一候选像素框,然后确定第n+1行中黑白像素框,按照位置顺序之间的比值为1:5:1的位置区域为第二候选像素框,再判断第一候选像素框与第二候选像素框是否均在同一列上,如图3所示,若第一候选像素框为第n行第i个像素框至第n行第i+6个像素框,第二候选像素框为第n+1行第i+3个像素框至第i+9个像素框,则说明第一候选像素框和第二候选像素框并不能构成定位框。
若第一候选像素框和第二候选像素框如图4所示,第一候选像素框的7个像素框均和第二候选像素框的7个像素框均对应在同一列上,则确定待处理图像中第n+2行中黑白像素框,按照位置顺序之间的比值为1:1:3:1:1的位置区域为第三候选像素框,然后执行上述判断过程,以此类推,直至确定出第n行至第n+6行中的像素框均符合比例要求,则确定这些像素框共同构成待处理图像中的定位框。
在另外一种可能的实施方式中,在第n行确定连续7个均为黑色像素框的区域为第一候选像素框之后,可以纵向判断像素框是否符合预设条件。按照图2所示的二维码的定位框的示意图,二维码的定位框的第一列和第七列的像素框为7个黑色像素框,第二列和第六列的像素框为5个白色像素框,2个黑色像素框,黑白像素框之间按照位置顺序的比值为1:5:1,第三列到第五列均包含两个白色像素框,5个黑色像素框,黑白像素框之间按照位置顺序的比值为1:1:3:1:1。那么,在另外一种可能的实施方式中,在第n行确定连续7个均为黑色像素框的区域为第一候选像素框之后,可以纵向判断像素框是否符合预设条件。
示例性地,若第n行第i列至第i+6列为连续的黑色像素框,则可以先判断第n+1行至第n+6行第i列的像素框是否为连续的黑色像素框,若判断结果为是,则可以判断第n行至第n+6行的第i+1列的黑白像素框,按照位置顺序之间的比例是否为1:5:1,以此类推,直至确定第n+1行至第n+6行第i+6列的像素框符合比例要求。
需要说明的是,识别待处理图像中的定位框的方法可参照其他现有技术,本申请对此并不限定,在此将不再详细展开介绍。
二维码中一般包含三个定位框,对于一些高版本的二维码可能会包含多个定位框,在本实施例中先对仅包含三个定位框的二维码的识别展开说明。
在识别出二维码的定位框之后,需要先判断一下识别出的二维码的定位框的个数,包括以下几种情况:
情况1:识别出的定位框的个数等于预设个数。
若识别出的定位框的个数等于预设个数,则可以基于识别出的定位框,定位待处理图像中的二维码,并对二维码进行解码。
例如,预设个数可以为3个,若在待处理图像中也识别出3个定位框,则说明识别出了待处理图像中的所有定位框,此时,可以直接根据定位框对待处理图像中包含的二维码进行定位,并对二维码进行解码。
情况2:识别出的定位框的个数小于预设个数。
若二维码的部分区域被遮挡或破损,或者,拍摄角度的不当,可能会出现上述情况2。
若预设个数为3个,则情况2中可能会出现:
情景一、识别出一个定位框。
情景二、识别出两个定位框。
针对情景一,即仅识别出一个定位框的情况,则可以以识别出的定位框为基准,进行验证定位。
具体的,可以以识别出的定位框为顶点,分别在水平和垂直方向上确定可能存在缺失的定位框的位置,然后进行验证。设确定的定位框为A,则以A为顶点可以在水平方向和垂直方向上,确定另外两个的定位框的位置共有四种可能,分别为以A为左上角定位框的情况,以A为右上角定位框的情况,以A为左下角定位框的情况以及以A为右上角定位框的情况,针对每种可能的位置,进行验证定位。例如,可以扫描通过每种假设的定位框的位置和定位框A所确定的二维码的区域,若可以对二维码进行解码,说明该种假设的定位框的位置为正确的定位框的位置,若不可以对二维码进行解码,说明该种假设的定位框的位置并非正确的定位框的位置。
针对情景二,若识别出两个定位框,则两个定位框的位置可能如图5所示,第一种为定位框在二维码的同一条边上,第二种为定位框在二维码的对角线上,那么可以基于识别出的两个定位框的位置,确定识别出的两个定位框的连线,然后以识别出的定位框的连线为基准,确定每个确实的定位框的位置。
在一种可能的实施方式中,确定出的定位框的连线为二维码的一侧边,连线的距离为二维码的边长,则可以基于二维码的边长,确定二维码的另一侧边,并将二维码的另一侧边的任意一个顶点处的位置确定为定位框的位置。
如图6所示的确定定位框的位置的方法示意图,在基于确定出的定位框的连线确定二维码另一侧边长的有两种可能的结果,基于确定出的两种结果均能对二维码进行定位,因此,两种结果均可行。
在另外一种可能的实施方式中,确定出的定位框的连线为二维码的对角线,连线的距离为二维码的对角线的长度,则可以基于二维码的对角线长度,确定二维码的另一条对角线,并确定二维码的另一条对角线的任意一个顶点处的位置为缺失的定位框的位置。
如图7所示的确定定位框的位置的方法的示意图,确定二维码的对角线之后,因二维码是一个正方形,正方形的对角线的夹角为90°,且对角线相等,因此,可以根据二维码的一条对角线,确定二维码的另一条对角线的位置和长度,可以根据确定出的另一条对角线的任意一个顶点、以及识别出的两个定位框对待处理图像中的二维码进行定位。
在另外一种可能的实施方式中,在确定出的定位框的连线为二维码的对角线,连线的距离为二维码的对角线的长度后,可以将连线作为等腰直接三角形的一边,然后确定构成等腰直角三角形的另外两边,并将另外两边的交点处的位置确定为缺失的定位框的位置。
在将连线作为等腰直角三角形的一边时,等腰直角三角形的另外两边的位置有6种可能的结果,如图8所示,为本申请实施例提供的另外两边位置的可能的结果的示意图。
针对图8所示的6种结果,可以分为两类,一类是以确定出的定位框的连线为等腰直角三角形的腰,另外一类是以确定出的定位框的连线为等腰直角三角形的底。
图8中,结果1、结果2、结果3和结果6均是以确定出的定位框的连线为等腰直角三角形的腰所得到的结果,这种情况下,以结果1为例,可以先假设缺失的定位框的位置为结果1中所示的定位框的位置,然后通过得到的缺失的定位框的位置和识别出的两个定位框的位置对待处理图像中的二维码进行定位,然后对定位出的二维码区域进行扫描解码,判断是否能成功解析二维码。
需要说明的是,通过扫描结果1、结果2、结果3和结果6分别与识别出的两个定位框所确定的二维码区域并不能成功解析二维码。
图8中,结果4和结果5均是以确定出的定位框的连线为等腰直角三角形的底所得到的结果,这种情况下,以结果4为例,可以先假设缺失的定位框的位置为结果4中所示的定位框的位置,然后通过得到的缺失的定位框的位置和识别出的两个定位框的位置对待处理图像中的二维码进行定位,然后对定位出的二维码区域进行扫描解码,判断是否能成功解析二维码。
需要说明的是,通过扫描结果4和结果5分别与识别出的两个定位框所确定的二维码区域均可以成功解析二维码。
若二维码为高版本的二维码,则可能会出现:
情况3:识别出的定位框的个数大于预设个数。
如图9所示,为本申请实施例提供的一种高版本的二维码的定位框的示意图,高版本的二维码中除顶点处的定位框外,在二维码的内部还包含有定位框,但是顶点处的定位框的面积较大,二维码内部的定位框面积较小。设面积较大的定位框为A类定位框,面积较小的定位框为B类定位框,当识别出的定位框的个数大于预设个数时,可以从识别出的定位框中选取出预设个数的目标定位框,然后基于得到的预设个数的目标定位框,定位待处理图像中的二维码,并对二维码进行解码。
具体的,若预设个数为3个,则可以将识别出的定位框按照从大到小的顺序进行排列,然后选取面积最大的三个定位框为目标定位框,并根据选取出的目标定位框对待处理图像中的二维码进行定位,对二维码进行解码。同样大小的定位框可随机进行排列,例如,若定位框A、定位框B、定位框C的面积大小相同,则排序方式可以为A、B、C随机排序。
一种可能的场景中,可能识别出的定位框并未包含所有的A类定位框,例如可以包含两个A类定位框,以及至少两个B类定位框,此时,将识别出的定位框按照面积大小进行排序之后,所选取的目标定位框应该为两个A类定位框,一个B类定位框,此时,可以将选取的B类定位框舍弃,然后根据识别出的两个A类定位框确定另外一个A类定位框的位置,再根据最终得到的三个A类定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
另外一种可能的场景中,可能包括一个A类定位框,以及至少三个B类定位框,此时,将识别出的定位框按照面积大小进行排序之后,所选取的目标定位框应该为一个A类定位框,两个B类定位框,此时,可以将选取的B类定位框舍弃,然后根据识别出的A类定位框确定另外两个A类定位框的位置,再根据最终得到的三个A类定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
具体的,根据识别出的A类定位框,确定其余A类定位框的方法与上述方法相同,在此将不再赘述。
具体实施中,待处理图像中可能会有些区域符合上述定位框识别的要求,但是这些区域并不是定位框所在区域,设这些区域为干扰区域,通过对定位框进行识别之后,识别出的定位框的个数大于预设个数时,识别出的定位框可能还包括干扰区域,通过将识别出的定位框按照面积大小进行排序,然后选取目标像素点,再基于目标像素点对待处理图像中二维码进行定位可以避免干扰区域对检测的影响。
在另外一种可能的应用场景中,通过待处理图像识别出的定位框的个数可能为零,这种情况下,可以从待处理图像中随机选取一个假定定位框的位置,然后以假定定位框的位置为基准,确定待处理图像中缺失的假定定位框的位置,最终基于确定的各个假定定位框的位置,定位待处理图像中的二维码并对二维码进行解码。
具体实施中,以假定定位框的位置为基准,确定待处理图像中缺失的假定定位框的位置的方法,与上述根据识别出的一个定位框的位置,确定待处理图像中确实的另外两个定位框的方法相同,在此将不再赘述。
在基于识别出的定位框确定缺失的定位框的位置时,可以以在待处理图像中建立坐标系,然后先确定识别出的定位框的坐标,再根据识别出的定位框的坐标,确定缺失的定位框的坐标,最终,根据识别出的定位框的坐标以及缺失的定位框的坐标,在坐标系中确定整个二维码在待处理图像中的位置区域,由此实现对二维码的定位。
在另外一种可能的实施方式中,可以在确定出缺失的定位框的坐标之后,将识别出的定位框分别填充在每个缺失的定位框的位置上,在对待处理图像中的二维码进行定位时,通过识别出的定位框以及填充的定位框,对二维码进行定位。
考虑到可能因为拍摄角度的问题导致识别二维码时无法准确二维码的轮廓,并且由于用户在使用终端扫描二维码时是一个持续的过程,该过程中扫描二维码的角度其实也是一直变化的,基于上述特点,若按照本申请提供的上述识别过程定位二维码并对二维码进行解码的过程中,若本次扫描出的待处理图像中无法成功对二维码进行解码,那么可以重新获取待处理图像,也即重新获取不同拍摄角度下的待处理图像,并执行上述识别过程,直至确定二维码解码成功。通过尝试对不同拍摄角度下获取的待识别图像中的二维码进行定位和解码,可以更容易对二维码成功定位并解码。
本实施例所提供的二维码识别方法,通过识别获取的待处理图像中的定位框,然后在识别出的定位框的个数小于预设个数时,基于识别出的定位框的位置,确定待处理图像中缺失的定位框的位置,最后基于识别出的定位框的位置和缺失的定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
通过上述方法,在识别二维码时,若无法将用于定位二维码的定位框全部识别出来时,可以基于已识别出的定位框的位置,确定缺失的定位框的位置,进而基于各个定位框的位置,准确地确定出待处理图像中二维码的位置,然后进行解析。即使在拍摄角度存在偏差或二维码破损的情况下,也可以准确地定位二维码进行识别,提高了二维码识别过程中的准确率,且现有技术中若二维码出现偏差时,需要对二维码进行校准,然后对二维码进行定位和识别,流程较为繁琐,通过上述方法,无需进行图像校准即可准确定位二维码,提高了二维码的识别效率。
实施例二
本申请实施例中,将结合实施例一中,在对待处理图像中的定位框进行识别后可能出现的几种可能的结果,进行概括性说明,参见图10所示,为本申请实施例提供的一种二维码识别方法的流程示意图,包括以下步骤:
S1001、获取待处理图像。
S1002、识别待处理图像中的定位框。
具体是被待处理图像中的定位框的方法参照实施例一种所述的识别待处理图像中的定位框的方法,在此将不再赘述。
S1003、判断识别出的定位框的个数是否小于预设个数。
若判断结果为是,则顺序执行步骤S1004至步骤S1005;
若判断结果为否,则执行步骤S1006;
S1004、基于识别出的定位框的位置,确定待处理图像中缺失的定位框的位置。
S1005、基于识别出的定位框的位置和缺失的定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
S1006、判断识别出的定位框的个数是否等于预设个数。
若判断结果为是,则顺序执行步骤S1007;
若判断结果为否,则执行步骤S1008至步骤S1009。
S1007、基于识别出的定位框,定位待处理图像中的二维码并对二维码进行解码。
S1008、从识别出的定位框中选取出预设个数的目标定位框。
S1009、基于预设个数的目标定位框,定位待处理图像中的二维码并对二维码进行解码。
通过上述方法,在识别二维码时,若无法将用于定位二维码的定位框全部识别出来时,可以基于已识别出的定位框的位置,确定缺失的定位框的位置,进而基于各个定位框的位置,准确地确定出待处理图像中二维码的轮廓并进行解析。即使在拍摄角度存在偏差或二维码破损的情况下,也可以准确地定位二维码进行识别,提高了二维码识别过程中的准确率,且现有技术中若二维码出现偏差时,需要对二维码进行校准,然后对二维码进行定位和识别,流程较为繁琐,通过上述方法,无需进行图像校准即可准确定位二维码,提高了二维码的识别效率。
实施例三
本申请实施例提供了一种二维码识别装置,如图11所示,为本申请实施例提供的二维码识别装置1100的架构示意图,包括获取模块1101和处理模块1102,其中,处理模块1102包括识别单元11021、确定单元11022、以及解码单元11023,具体的:
获取模块1101,用于获取待处理图像;
处理模块1102,用于执行识别过程,其中,所述处理模块1102包括:
识别单元11021,用于识别所述待处理图像中的定位框;
确定单元11022,用于若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;
解码单元11023,用于基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。
一种可能的设计中,所述识别单元11021,在识别所述待处理图像中的定位框之后,还用于:
若识别出的所述定位框的个数等于所述预设个数,则基于识别出的所述定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的设计中,所述识别单元11021,在识别所述待处理图像中的定位框之后,还用于:
若识别出的所述定位框的个数大于所述预设个数时,则从识别出的所述定位框中选取出所述预设个数的目标定位框;
基于所述预设个数的目标定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的设计中,所述处理模块1102,还用于:
若确定所述二维码解码失败,则重新获取待处理图像并执行所述识别过程,直至确定所述二维码解码成功。
一种可能的设计中,所述确定单元11022,在基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置时,具体用于:
若识别出的所述定位框的个数为一个,则以识别出的所述定位框的位置为基准,分别在识别出的所述定位框的水平方向和垂直方向上确定每个缺失的所述定位框的位置。
一种可能的设计中,所述确定单元11022,在基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置时,具体用于:
若识别出的所述定位框的个数为两个,则基于识别出的两个所述定位框的位置,确定识别出的两个所述定位框的连线;
以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置。
一种可能的设计中,所述确定单元11022,在确定每个缺失的所述定位框的位置之后,还用于:
将识别出的所述定位框分别填充在每个缺失的所述定位框的位置上。
一种可能的设计中,所述确定单元11022,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线为所述二维码的一侧边、所述连线的距离为所述二维码的边长,基于所述二维码的边长,确定所述二维码的另一侧边,并将所述二维码的另一侧边的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,所述确定单元11022,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线为所述二维码的一条对角线、所述连线的距离为所述二维码的对角线长度,基于所述二维码的对角线长度,确定所述二维码的另一条对角线,并将所述二维码的另一条对角线的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,所述确定单元11022,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线作为等腰直角三角形的一边,确定构成所述等腰直角三角形的另外两边;
将所述另外两边的交点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,所述识别单元11021,在识别所述待处理图像中的定位框之后,还用于:
若未识别出所述待处理图像中的定位框,则从所述待处理图像中随机选取一个假定定位框的位置;
以所述假定定位框的位置为基准,确定所述待处理图像中缺失的假定定位框的位置;
基于确定的各个假定定位框的位置,定位所述待处理图像中的二维码并对所述二维码进行解码。
本实施例提供的上述二维码识别装置,通过识别获取的待处理图像中的定位框,然后在识别出的定位框的个数小于预设个数时,基于识别出的定位框的位置,确定待处理图像中缺失的定位框的位置,最后基于识别出的定位框的位置和缺失的定位框的位置,定位待处理图像中的二维码,并对二维码进行解码。
利用本实施例提供的上述二维码识别装置,可以在识别二维码时,若无法将用于定位二维码的定位框全部识别出来时,可以基于已识别出的定位框的位置,确定缺失的定位框的位置,进而基于各个定位框的位置,准确地确定出待处理图像中二维码的轮廓并进行解析。即使在拍摄角度存在偏差或二维码破损的情况下,也可以准确地定位二维码进行识别,提高了二维码识别过程中的准确率,且现有技术中若二维码出现偏差时,需要对二维码进行校准,然后对二维码进行定位和识别,流程较为繁琐,若利用上述装置,无需进行图像校准即可准确定位二维码,提高了二维码的识别效率。
实施例四
基于相同的技术构思,本申请实施例还提供了一种电子设备。参照图12所示,为本申请实施例提供的电子设备1200的结构示意图,包括处理器1201、存储器1202、和总线1203。其中,存储器1202用于存储执行指令,包括内存12021和外部存储器12022;这里的内存12021也称内存储器,用于暂时存放处理器1201中的运算数据,以及与硬盘等外部存储器12022交换的数据,处理器1201通过内存12021与外部存储器12022进行数据交换,当电子设备1200运行时,处理器1201与存储器1202之间通过总线1203通信,使得处理器1201在执行以下指令:
获取待处理图像并执行识别过程:其中,所述识别过程包括:
识别所述待处理图像中的定位框;
若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;
基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。
一种可能的设计中,处理器1201执行的处理中,在识别所述待处理图像中的定位框之后,还包括:
若识别出的所述定位框的个数等于所述预设个数,则基于识别出的所述定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的设计中,处理器1201执行的处理中,在识别所述待处理图像中的定位框之后,还包括:
若识别出的所述定位框的个数大于所述预设个数时,则从识别出的所述定位框中选取出所述预设个数的目标定位框;
基于所述预设个数的目标定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
一种可能的设计中,处理器1201执行的处理中,还包括:
若确定所述二维码解码失败,则重新获取待处理图像并执行所述识别过程,直至确定所述二维码解码成功。
一种可能的设计中,处理器1201执行的处理中,所述基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置,包括:
若识别出的所述定位框的个数为一个,则以识别出的所述定位框的位置为基准,分别在识别出的所述定位框的水平方向和垂直方向上确定每个缺失的所述定位框的位置。
一种可能的设计中,处理器1201执行的处理中,所述基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置,包括:
若识别出的所述定位框的个数为两个,则基于识别出的两个所述定位框的位置,确定识别出的两个所述定位框的连线;
以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置。
一种可能的设计中,处理器1201执行的处理中,在确定每个缺失的所述定位框的位置之后,还包括:
将识别出的所述定位框分别填充在每个缺失的所述定位框的位置上。
一种可能的设计中,处理器1201执行的处理中,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线为所述二维码的一侧边、所述连线的距离为所述二维码的边长,基于所述二维码的边长,确定所述二维码的另一侧边,并将所述二维码的另一侧边的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,处理器1201执行的处理中,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线为所述二维码的一条对角线、所述连线的距离为所述二维码的对角线长度,基于所述二维码的对角线长度,确定所述二维码的另一条对角线,并将所述二维码的另一条对角线的任意一个顶点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,处理器1201执行的处理中,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线作为等腰直角三角形的一边,确定构成所述等腰直角三角形的另外两边;
将所述另外两边的交点处的位置确定为缺失的所述定位框的位置。
一种可能的设计中,处理器1201执行的处理中,在识别所述待处理图像中的定位框之后,还包括:
若未识别出所述待处理图像中的定位框,则从所述待处理图像中随机选取一个假定定位框的位置;
以所述假定定位框的位置为基准,确定所述待处理图像中缺失的假定定位框的位置;
基于确定的各个假定定位框的位置,定位所述待处理图像中的二维码并对所述二维码进行解码。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行二维码识别方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述二维码识别方法,从而提高二维码识别的准确率和效率。
本申请实施例所提供的二维码识别方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (24)
1.一种二维码识别方法,其特征在于,包括:
获取待处理图像并执行识别过程:其中,所述识别过程包括:
识别所述待处理图像中的定位框;
若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;
基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。
2.如权利要求1所述的方法,其特征在于,在识别所述待处理图像中的定位框之后,还包括:
若识别出的所述定位框的个数等于所述预设个数,则基于识别出的所述定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
3.如权利要求1所述的方法,其特征在于,在识别所述待处理图像中的定位框之后,还包括:
若识别出的所述定位框的个数大于所述预设个数时,则从识别出的所述定位框中选取出所述预设个数的目标定位框;
基于所述预设个数的目标定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
4.如权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
若确定所述二维码解码失败,则重新获取待处理图像并执行所述识别过程,直至确定所述二维码解码成功。
5.如权利要求1所述的方法,其特征在于,所述基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置,包括:
若识别出的所述定位框的个数为一个,则以识别出的所述定位框的位置为基准,分别在识别出的所述定位框的水平方向和垂直方向上确定每个缺失的所述定位框的位置。
6.如权利要求1所述的方法,其特征在于,所述基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置,包括:
若识别出的所述定位框的个数为两个,则基于识别出的两个所述定位框的位置,确定识别出的两个所述定位框的连线;
以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置。
7.如权利要求5或6所述的方法,其特征在于,在确定每个缺失的所述定位框的位置之后,还包括:
将识别出的所述定位框分别填充在每个缺失的所述定位框的位置上。
8.如权利要求6所述的方法,其特征在于,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线为所述二维码的一侧边、所述连线的距离为所述二维码的边长,基于所述二维码的边长,确定所述二维码的另一侧边,并将所述二维码的另一侧边的任意一个顶点处的位置确定为缺失的所述定位框的位置。
9.如权利要求6所述的方法,其特征在于,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线为所述二维码的一条对角线、所述连线的距离为所述二维码的对角线长度,基于所述二维码的对角线长度,确定所述二维码的另一条对角线,并将所述二维码的另一条对角线的任意一个顶点处的位置确定为缺失的所述定位框的位置。
10.如权利要求6所述的方法,其特征在于,所述以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置,包括:
以所述连线作为等腰直角三角形的一边,确定构成所述等腰直角三角形的另外两边;
将所述另外两边的交点处的位置确定为缺失的所述定位框的位置。
11.如权利要求1所述的方法,其特征在于,在识别所述待处理图像中的定位框之后,还包括:
若未识别出所述待处理图像中的定位框,则从所述待处理图像中随机选取一个假定定位框的位置;
以所述假定定位框的位置为基准,确定所述待处理图像中缺失的假定定位框的位置;
基于确定的各个假定定位框的位置,定位所述待处理图像中的二维码并对所述二维码进行解码。
12.一种二维码识别装置,其特征在于,包括:
获取模块,用于获取待处理图像;
处理模块,用于执行识别过程,其中,所述处理模块包括:
识别单元,用于识别所述待处理图像中的定位框;
确定单元,用于若识别出的所述定位框的个数小于预设个数,则基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置;
解码单元,用于基于识别出的所述定位框的位置和缺失的所述定位框的位置,定位所述待处理图像中的二维码,并对所述二维码进行解码。
13.如权利要求12所述的装置,其特征在于,所述识别单元,在识别所述待处理图像中的定位框之后,还用于:
若识别出的所述定位框的个数等于所述预设个数,则基于识别出的所述定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
14.如权利要求12所述的装置,其特征在于,所述识别单元,在识别所述待处理图像中的定位框之后,还用于:
若识别出的所述定位框的个数大于所述预设个数时,则从识别出的所述定位框中选取出所述预设个数的目标定位框;
基于所述预设个数的目标定位框,定位所述待处理图像中的二维码并对所述二维码进行解码。
15.如权利要求12至14任一所述的装置,其特征在于,所述处理模块,还用于:
若确定所述二维码解码失败,则重新获取待处理图像并执行所述识别过程,直至确定所述二维码解码成功。
16.如权利要求12所述的装置,其特征在于,所述确定单元,在基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置时,具体用于:
若识别出的所述定位框的个数为一个,则以识别出的所述定位框的位置为基准,分别在识别出的所述定位框的水平方向和垂直方向上确定每个缺失的所述定位框的位置。
17.如权利要求12所述的装置,其特征在于,所述确定单元,在基于识别出的所述定位框的位置,确定所述待处理图像中缺失的所述定位框的位置时,具体用于:
若识别出的所述定位框的个数为两个,则基于识别出的两个所述定位框的位置,确定识别出的两个所述定位框的连线;
以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置。
18.如权利要求16或17所述的装置,其特征在于,所述确定单元,在确定每个缺失的所述定位框的位置之后,还用于:
将识别出的所述定位框分别填充在每个缺失的所述定位框的位置上。
19.如权利要求17所述的装置,其特征在于,所述确定单元,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线为所述二维码的一侧边、所述连线的距离为所述二维码的边长,基于所述二维码的边长,确定所述二维码的另一侧边,并将所述二维码的另一侧边的任意一个顶点处的位置确定为缺失的所述定位框的位置。
20.如权利要求17所述的装置,其特征在于,所述确定单元,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线为所述二维码的一条对角线、所述连线的距离为所述二维码的对角线长度,基于所述二维码的对角线长度,确定所述二维码的另一条对角线,并将所述二维码的另一条对角线的任意一个顶点处的位置确定为缺失的所述定位框的位置。
21.如权利要求17所述的装置,其特征在于,所述确定单元,在以识别出的两个所述定位框的连线为基准,确定每个缺失的所述定位框的位置时,具体用于:
以所述连线作为等腰直角三角形的一边,确定构成所述等腰直角三角形的另外两边;
将所述另外两边的交点处的位置确定为缺失的所述定位框的位置。
22.如权利要求12所述的装置,其特征在于,所述识别单元,在识别所述待处理图像中的定位框之后,还用于:
若未识别出所述待处理图像中的定位框,则从所述待处理图像中随机选取一个假定定位框的位置;
以所述假定定位框的位置为基准,确定所述待处理图像中缺失的假定定位框的位置;
基于确定的各个假定定位框的位置,定位所述待处理图像中的二维码并对所述二维码进行解码。
23.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至11任一所述的二维码识别方法的步骤。
24.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至11任一所述的二维码识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910108079.2A CN111523331B (zh) | 2019-02-02 | 2019-02-02 | 一种二维码识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910108079.2A CN111523331B (zh) | 2019-02-02 | 2019-02-02 | 一种二维码识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111523331A true CN111523331A (zh) | 2020-08-11 |
CN111523331B CN111523331B (zh) | 2023-03-21 |
Family
ID=71900225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910108079.2A Active CN111523331B (zh) | 2019-02-02 | 2019-02-02 | 一种二维码识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111523331B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749769A (zh) * | 2020-08-19 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 图形码检测方法、装置、计算机设备及存储介质 |
CN116167395A (zh) * | 2023-04-26 | 2023-05-26 | 荣耀终端有限公司 | 一种扫码方法及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070071320A1 (en) * | 2005-09-20 | 2007-03-29 | Fuji Xerox Co., Ltd. | Detection method of two-dimensional code, detection device for the same, and storage medium storing detection program for the same |
CN106650714A (zh) * | 2016-10-08 | 2017-05-10 | 迪堡金融设备有限公司 | 一种纸钞的冠字号识别方法及其装置 |
CN107832652A (zh) * | 2017-09-28 | 2018-03-23 | 努比亚技术有限公司 | 二维码识别方法、终端及计算机可读存储介质 |
CN108510265A (zh) * | 2017-02-24 | 2018-09-07 | 北京嘀嘀无限科技发展有限公司 | 订单生成、支付方法及装置、数据接收处理方法及服务器 |
CN109101855A (zh) * | 2018-07-21 | 2018-12-28 | 湖南七纬科技有限公司 | 一种基于opencv的缺失定位框二维码识别方法 |
CN109190436A (zh) * | 2018-07-30 | 2019-01-11 | 努比亚技术有限公司 | 一种二维码识别方法、移动终端及存储介质 |
-
2019
- 2019-02-02 CN CN201910108079.2A patent/CN111523331B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070071320A1 (en) * | 2005-09-20 | 2007-03-29 | Fuji Xerox Co., Ltd. | Detection method of two-dimensional code, detection device for the same, and storage medium storing detection program for the same |
CN106650714A (zh) * | 2016-10-08 | 2017-05-10 | 迪堡金融设备有限公司 | 一种纸钞的冠字号识别方法及其装置 |
CN108510265A (zh) * | 2017-02-24 | 2018-09-07 | 北京嘀嘀无限科技发展有限公司 | 订单生成、支付方法及装置、数据接收处理方法及服务器 |
CN107832652A (zh) * | 2017-09-28 | 2018-03-23 | 努比亚技术有限公司 | 二维码识别方法、终端及计算机可读存储介质 |
CN109101855A (zh) * | 2018-07-21 | 2018-12-28 | 湖南七纬科技有限公司 | 一种基于opencv的缺失定位框二维码识别方法 |
CN109190436A (zh) * | 2018-07-30 | 2019-01-11 | 努比亚技术有限公司 | 一种二维码识别方法、移动终端及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749769A (zh) * | 2020-08-19 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 图形码检测方法、装置、计算机设备及存储介质 |
CN116167395A (zh) * | 2023-04-26 | 2023-05-26 | 荣耀终端有限公司 | 一种扫码方法及电子设备 |
CN116167395B (zh) * | 2023-04-26 | 2023-09-22 | 荣耀终端有限公司 | 一种扫码方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111523331B (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9892300B2 (en) | Two-dimensional code | |
JP2835274B2 (ja) | 画像認識装置 | |
KR100563875B1 (ko) | 2차원 코드 판독 장치, 2차원 코드 판독 방법, 2차원 코드판독 프로그램을 기록한 기록매체, 휴대형 단말기 및디지털 카메라 | |
CN101155238B (zh) | 图像区域检测方法及其装置 | |
CN110765795B (zh) | 二维码识别方法、装置及电子设备 | |
CN111523331B (zh) | 一种二维码识别方法及装置 | |
CN110569845A (zh) | 一种试卷图像的校正方法及相关装置 | |
EP3561729B1 (en) | Method for detecting and recognising long-range high-density visual markers | |
CN109101855B (zh) | 一种基于opencv的缺失定位框二维码识别方法 | |
CN112985778B (zh) | 测试图卡的定位方法、终端及存储介质 | |
CN110020571B (zh) | 二维码校正方法、装置及设备 | |
US11250230B2 (en) | Narrow-strip 2-dimensional bar codes, methods, apparatuses, and devices for generating and identifying narrow-strip 2-dimensional bar codes | |
EP2853089B1 (en) | Pattern processing apparatus, pattern processing method, and pattern processing program | |
US11893764B1 (en) | Image analysis for decoding angled optical patterns | |
CN113066128B (zh) | 自识别标识板的视觉检测与恢复方法、装置、设备及介质 | |
CN111428530B (zh) | 一种二维码图像检测识别设备、装置及方法 | |
CN110263597B (zh) | 一种快速准确的qr码校正方法及系统 | |
CN113838032A (zh) | 棋盘定位方法、装置、设备及存储介质 | |
Liang et al. | Real time recognition of 2D bar codes in complex image conditions | |
JP6734213B2 (ja) | 情報処理装置及びプログラム | |
CN116468611B (zh) | 图像拼接方法、装置、设备和存储介质 | |
US20230342896A1 (en) | Image acquisition apparatus and image acquisition method | |
CN114494443B (zh) | 正弦波星图自动定位方法、装置、电子设备及存储介质 | |
CN114997206A (zh) | 一种Aztec码图边界定位的方法及装置 | |
CN117288152A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230418 Address after: Room 2110, No. 79 Wanbo Second Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province, 510006 Patentee after: Guangzhou Qian Technology Co.,Ltd. Address before: Room 203, 2 / F, building 34, yard 8, Dongbei Wangxi Road, Haidian District, Beijing 100193 Patentee before: Beijing Qisheng Technology Co.,Ltd. |
|
TR01 | Transfer of patent right |