CN110543798A - 二维码的识别方法及装置 - Google Patents

二维码的识别方法及装置 Download PDF

Info

Publication number
CN110543798A
CN110543798A CN201910738952.6A CN201910738952A CN110543798A CN 110543798 A CN110543798 A CN 110543798A CN 201910738952 A CN201910738952 A CN 201910738952A CN 110543798 A CN110543798 A CN 110543798A
Authority
CN
China
Prior art keywords
dimensional code
color block
unit color
current sampling
pixel
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
Application number
CN201910738952.6A
Other languages
English (en)
Other versions
CN110543798B (zh
Inventor
屠寅海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910738952.6A priority Critical patent/CN110543798B/zh
Publication of CN110543798A publication Critical patent/CN110543798A/zh
Application granted granted Critical
Publication of CN110543798B publication Critical patent/CN110543798B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (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)
  • Artificial Intelligence (AREA)
  • Image Processing (AREA)

Abstract

本说明书实施例提供一种二维码识别的方法和装置,根据一个实施方式,获取待识别的二维码图像,确定二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,排列密度指示出二维码图像中单元色块的数量以及排列方式,然后基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素,接着按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出二维码中包含的信息。如此,可以提高二维码识别的准确度。

Description

二维码的识别方法及装置
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及通过计算机识别二维码包含的信息的方法和装置。
背景技术
二维码(dimensional barcode),又称二维条码,是在一维条码的基础上扩展出的一种具有可读性的条码,是用某种特定的几何图形按一定规律在平面二维方向上分布的黑白相间的图形记录数据符号信息,在代码编制上利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。常见的二维码形式例如:MaxiCode(牛眼码)、Aztec Code(阿兹特克代码)、QR Code(快速回应码),等等。
随着终端技术的发展,二维码在日常生活中的应用非常广泛,例如扫码支付、信息推送等等,各种信息都可以隐藏在二维码中进行快捷传播。因此,二维码的识别变得非常重要。由于二维码中的黑白图形分别对应二进制数中的“0”或“1”,通常通过识别黑白颜色的图形排列规则就识别其中包含的信息。现实生活中,会遇到二维码识别失败的情形,在排查二维码识别失败样本时,发现二维码畸变样本占较大比例。其中,二维码即便样本是二维码被铺装在非平面上,二维码出现的非线性畸变。这种情况下,二维码识别难度增大。
发明内容
本说明书一个或多个实施例描述了一种二维码的识别方法和装置,可以在二维码识别过程中,充分考虑二维码非线性畸变问题,提高二维码识别的有效性。
根据第一方面,提供了一种二维码的识别方法,所述方法包括:获取待识别的二维码图像;确定所述二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,所述排列密度指示出所述二维码图像中单元色块的数量以及排列方式;基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素;按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出所述二维码中包含的信息。
在一个实施例中,所述确定所述二维码图像中的单元色块的排列密度包括:根据定位图形中各个色块的尺寸之间的第一比例关系,检测所述二维码图像中的定位图形,其中,定位图形的尺寸与单元色块的尺寸具有第二比例关系;按照所述第一比例关系、所述第二比例关系,以及定位图形在所述二维码图像中的尺寸,确定单元色块在所述二维码图像中的尺寸;基于所述二维码图像的尺寸以及单元色块在所述二维码图像中的尺寸,确定所述排列密度。
在一个实施例中,所述确定所述二维码图像中的单元色块的排列密度之后,还包括,按照所述排列密度分割出所述二维码图像中的各个单元区域,各个单元区域分别对应各个单元色块,所分割出的单元区域包括第一单元区域,所述第一单元区域对应第一单元色块;所述预定规则包括以下至少一项:将所述第一单元区域的左上角像素作为所述第一单元色块的当前采样像素;将所述第一单元区域的中心位置的一个像素作为所述第一单元色块的当前采样像素;将所述第一单元区域的中心位置的四个像素中的一个像素作为所述第一单元色块的当前采样像素。
在一个实施例中,所述预定规则包括:按照所述二维码图像中的至少一个定位图形的位置,确定二维码标准坐标系,其中,定位图形中各个色块的尺寸满足第一比例关系;建立所述二维码标准坐标系与所述二维码图像的图像坐标系的映射关系;根据所述排列密度在所述二维码标准坐标系中确定各个单元色块的中心点;按照所述映射关系将各个中心点分别映射到所述图像坐标系,得到相应的各个映射点;将各个映射点对应的像素作为相应单元色块的当前采样像素。
在一个进一步的实施例中,所述建立所述二维码标准坐标系与所述二维码图像的图像坐标系的映射关系包括:获取各个定位图形的中心点分别在所述二维码标准坐标系与所述图像坐标系中的第一坐标和第二坐标;将所述第一坐标和第二坐标中的坐标值输入包含待定参数的映射关系模型;求解所述待定参数,从而确定所述映射关系。
在一个实施例中,所述单元色块包括第一单元色块,所述第一单元色块的当前采样像素的相邻像素包括,沿所述第一单元色块的当前采样像素的第一方向的第一相邻像素;所述基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素包括:在所述第一单元色块的当前采样像素的颜色与所述第一相邻像素的颜色不一致的情况下,将所述第一单元色块的当前采样像素向所述第一方向的相反方向调整预定个像素。
在一个实施例中,所述基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素包括:按照预定的遍历方式,依次调整各个单元色块的当前采样像素,其中,所述预定的遍历方式包括以下至少一项:自左至右、自上至下遍历;由中间向两边按列遍历,其中对每列自上至下遍历;由中心向四周进行环状扩散遍历。
在一个实施例中,所述二维码图像中的单元色块包括第二单元色块,以及与所述第二单元色块相邻的第三单元色块;所述基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素包括:在调整所述第二单元色块的当前采样像素时,按照预先设定的联动规则,至少对所述第三单元色块的当前采样像素进行联动调整,其中,所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离正相关。
在一个进一步的实施例中,所述联动规则包括以下至少一项:第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离一致;第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离具有小于1的预定比例;第三单元色块的当前采样像素的调整距离,与第三单元色块和第二单元色块的间隔距离成线性关系。
根据第二方面,提供一种二维码的识别装置,所述装置包括:
获取模块,配置为获取待识别的二维码图像;
选择模块,配置为确定所述二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,所述排列密度指示出所述二维码图像中单元色块的数量以及排列方式;
调整模块,配置为基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素;
识别模块,配置为按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出所述二维码中包含的信息。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
通过本说明书实施例提供的二维码的识别方法和装置,获取待识别的二维码图像,确定所述维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,二维码的排列密度指示出二维码图像中单元色块的数量以及排列方式,然后基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素,接着按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出二维码中包含的信息。由于二维码识别过程中,将按照预定规则为各个单元色块选择出的各个当前采样像素作为初始的当前采样像素,并不断调整,最终获取更准确的采样像素,从而可以提高二维码识别的准确度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的二维码的识别方法流程图;
图3示出一个具体例子的二维码示意图;
图4a-图4c示出根据不同实施例为单元色块选择的当前采样像素示意图;
图5示出一个具体例子的当前采样像素调整示意图;
图6示出根据一个实施例的二维码的识别装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
为了便于说明,结合图1示出的本说明书实施例的一个具体适用场景进行描述。图1的实施场景中,用户可以通过终端上的各种与扫码相关的应用扫描任意的二维码图像,从而识别其中的信息,例如支付信息、推送的新闻信息、小程序信息、购物信息、APP信息,等等。
本领域技术人员可以理解,二维码是由多个大小一致的色块排列而成。每个色块对应的色块颜色对应着相应数值,例如黑、白两种颜色的最小色块,也就是单元色块,分别对应数字“1”、“0”。因此,通常的二维码识别过程中,用户打开终端上可以识别二维码的应用,将终端上的相机或扫描器等对准二维码来获取二维码图像,再根据二维码图像上的最小黑/白色块,识别二维码中的信息。
然而,如图1所示,在一些情形下,二维码图像可能附着于非平面结构上,此时二维码在图像上会发生非线性的变化,例如扭曲、被遮挡等。在这种情况下,终端在分割各个色块时,会出现误差,从而可能导致无法有效识别到二维码的信息。
在二维码识别过程中,可以先根据二维码的宽度和高度大致分割出二维码图像中的各个单元色块。其中,这里的单元色块是对应到一个数值的色块,在二维码生成时,单元色块内的颜色通常是一致的。多个连续的单元色块也可以具有相同的颜色,组成图形视觉上的更大的色块。然而,这种更大的色块在数据处理识别过程中通常不作为整体考虑。在二维码识别和生成过程中,都需要分割出最小色块。接着,可以从每个单元色块对应的至少一个像素中,按照预定规则确定出一个像素作为相应单元色块的采样像素。常规技术中,可以接着按照各个采样像素进行采样,也就是确定各个单元色块对应的数值。在本说明书实施例中,将预定规则确定出的各个采样像素作为相应色块的初始采样像素,并基于各个初始采样像素与相邻像素的颜色对比,对各个初始采样像素进行调整,从而得到各个单元色块分别对应的各个最终采样像素,再对各个最终采样像素进行采样,即,识别各个最终采样像素的颜色,以确定相应单元色块对应的数值。从而识别出二维码中包含的信息。如此,通过对采样像素的优化,可以更准确地识别二维码信息。
值得说明的是,本说明书提供的二维码的识别方法可以适用于任何二维码识别情形,尤其在对发生非线性变化的二维码识别情形中,通过对各个色块的采样像素的调整,提高色块采样准确率,从而可以提高二维码识别的有效性。
下面详细介绍二维码的识别方法。
图2示出根据一个实施例的二维码的识别方法流程图。该方法的执行主体可以是任何具有计算、处理能力的系统、设备、装置、平台或服务器。例如图1示出的终端。
如图2所示,该二维码的识别方法可以包括以下步骤:步骤201,获取待识别的二维码图像;步骤202,确定二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,上述排列密度指示出二维码图像中单元色块的数量以及排列方式;步骤203,基于各个初始采样像素与相邻像素的颜色对比,对各个初始采样像素进行调整;步骤204,按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出二维码中包含的信息。
首先,在步骤201中,获取待识别的二维码图像。顾名思义,待识别的二维码图像也就是包含了待识别的二维码的图像。通常,可以通过终端上的相机或扫描器等采集二维码图像。
在具体实践中,所采集的图像过程中可能不仅包含二维码,还可能包含其他干扰元素,例如二维码贴纸的背景等。在一个可能的实现中,还可以对所采集的图像在二维码的边缘区域进行剪切,只保留包含二维码部分的最小图像,作为二维码图像。
接着,通过步骤202,确定二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素。其中,单元色块是组成二维码的最小单元。每个单元色块仅对应一种颜色,即对应一个数字。可以理解,单元色块的数量通常少于二维码图像的像素数量,也就是说,一个单元色块往往可以对应至少一个像素。上述排列密度可以指示出二维码图像中单元色块的数量以及排列方式。
确定二维码的单元色块的排列密度时,首先要确定单元色块在二维码图像上的尺寸。可以理解的是,二维码图像中的单元色块尺寸和采集到的二维码图像的当前尺寸有关,而不是二维码图像生成时固有的尺寸。单元色块尺寸的确定方法可以有多种。
在一个实施例中,可以检测二维码图像中某个颜色的图形对应的最小宽度和最小长度,作为单元色块的尺寸。如图3所示,色块301具有图形中的最小宽度和最小长度,是二维码中的一个最小色块,色块301的长和宽在二维码标准坐标系中可以通过单位1表示,在二维码图像中,可以按照图像中的具体尺寸来表示,也可以通过对应的像素数来表示。
在另一个实施例中,还可以先检测二维码中的具有特殊尺寸和含义的图形,根据特殊尺寸和含义的图形确定单元色块的尺寸。例如,在QR Code中,通常包含有3个定位图形,每个图形如图3中的图形302所示。这三个图形分别可以位于二维码的左上角、右上角、左下角。定位图形中,各个色块的尺寸之间可以具有预先确定的第一比例关系。例如图形302在长度方向上黑、白、黑、白、黑颜色的长度比例为1:1:3;1:1。定位图形的尺寸与单元色块的尺寸还可以具有预定的第二比例关系。例如,图3中,图形302周边的黑色色块的长度与单元色块一致。换句话说,假如最小色块的长为单位1,图形302中在长度方向上黑、白、黑、白、黑颜色的长度分别为1、1、3、1、1。如此,在二维码图像中检测到到黑、白、黑、白、黑颜色的长度具有比例1:1:3;1:1(宽度也一样)的图像,就是定位图形,进一步就可以确定单元色块(最小色块)的尺寸。
在其他实施方式中,可以通过更多方式来确定单元色块的尺寸,在此不再赘述。
在得到二维码图像中的单元色块尺寸后,就可以进一步确定二维码图像中各个单元色块的排列密度。其中,排列密度可以通过单元色块的阵列布局来表示。例如,21×21表示长度方向有21个单元色块,宽度方向有21个单元色块。
在一个可选的实现方式中,该排列密度可以通过二维码图像的尺寸和单元色块的尺寸做除法来确定,具体地,二维码图像的长度除以单元色块的长度,作为长度方向上的色块数量,二维码图像的宽度除以单元色块的宽度,作为宽度方向上的色块数量。通常,本说明书提及的长度方向,可以是图3中的横向,宽度方向可以是图3中的竖向。
在另一个可选的实现方式中,还可以按照单元色块的尺寸分别沿长度方向和宽度方向对二维码图像进行分割,每经过一个单元色块的长度尺寸,在长度方向上分割出一个单元色块。同理,从宽度方向分割单元色块,从而得到二维码图像中的单元色块数量,以及单元色块的排列密度。
确定出二维码图像中的单元色块的排列密度之后,就可以进一步对单元色块上的颜色进行采样,以确定所对应的数值。可以理解,在二维码中,每个单元色块对应一个颜色,并对应一个数值。通常,可以按照预定规则从各个单元色块对应的像素中选择一个像素作为采样像素。
根据一个可能的设计,可以直观地通过各个单元色块对应的像素确定各个单元色块对应的当前采样像素。该预定规则例如是,各个单元色块左上角的像素、各个单元色块中心的像素,等等。
其中,当单元色块对应的像素较少(如2×2个)时,无法取到中心的像素,预定规则可以是取左上角、右上角、左下角或右下角的一个像素。如图4a所示,示出了4个相邻排列的色块,以右上角的白色色块为例,对应4个像素,可以取左上角通过加粗虚线框标出的像素作为右上角的白色色块的当前采样像素。
当单元色块对应像素较多(如3×3个以上)时,可以取单元色块中心位置的像素作为当前采样像素。如果一个单元色块对应的像素是奇数×奇数(如3×3、5×5等)个,预定规则可以是取单元色块中心的一个像素。如图4b所示,示出了4个相邻排列的色块,以右上角的白色色块为例,对应3×3个像素,可以取中心通过加粗虚线框标出的像素作为右上角的白色色块的当前采样像素。如果一个单元色块对应的像素是偶数×偶数(如4×4、6×6等)个,预定规则可以是从单元色块中心的四个像素中任取一个像素。如图4b所示,示出了4个相邻排列的色块,以右上角的白色色块为例,对应4×4个像素,可以取中心通过加粗虚线框标出的像素作为右上角的白色色块的当前采样像素。
在实际的二维码图像进行二维码识别时,可能存在获取图片的角度倾斜、二维码所附着的表面弯曲等因素。此时,可能存在二维码图像的对边长度不一致、单元色块被遮挡一部分,等等现象。这种情况下,是无法通过简单分割方法准确分割出单元色块的。此时,可以按照单元色块的排列密度对二维码图像进行一个大概的分割,分割出各个单元区域,每个单元区域对应一个单元色块。这样,单元区域和单元色块并不严格对应,但是每个单元色块都能在二维码图像上找到一个对应的单元区域。其中,单元区域的划分方式可以采用等分的方式。即,假设二维码的排列密度为n×m,则二维码图像的长度等分成n份,宽度等分成m份,划分出n×m个单元区域。
此时,前述的单元色块的当前采样像素方法中,每个单元色块对应的像素,就转换成了每个单元区域对应的像素。亦即,以对应第一单元区域的第一单元色块为例,确定各个单元色块的当前采样像素的预定规则可以相应变成:
将第一单元区域的左上角像素作为第一单元色块的当前采样像素;以及/或者
将第一单元区域的中心位置的一个像素作为第一单元色块的当前采样像素;以及/或者
将第一单元区域的中心位置的四个像素中的一个像素作为第一单元色块的当前采样像素。
其中具体的确定方式和使用情况和前述的直接按照单元色块对应的像素一致,在此不再赘述。由于每个单元色块都对应到一个大概的单元区域,每个单元色块都能确定出一个初始的当前采样像素。
根据另一个可能的设计,预设规则还可以是:按照二维码图像中的至少一个定位图形的位置,确定二维码标准坐标系,并建立二维码标准坐标系与二维码图像的图像坐标系的映射关系;根据单元色块的排列密度在二维码标准坐标系中确定各个单元色块的中心点;按照上述映射关系将各个中心点分别映射到图像坐标系,得到各个映射点;将各个映射中心点对应的像素作为相应单元色块的当前采样像素。
其中,二维码标准坐标系可以是以二维码本身包含的参考点建立的坐标系,例如是以二维码所包含的定位图形为参考点建立的坐标系,如图3示出的二维码图像中,以图形301的左上角为原点、长度方向为横轴、宽度方向为纵轴建立的坐标系等。二维码图像对应的图像坐标系则可以是采集二维码图像的采集框中的预定点作为参考点建立的坐标系。例如,二维码图像的右上角为原点,二维码采集框的横向为横轴、纵向为纵轴建立的坐标系。图像坐标系可以是设备在采集二维码图像前预先设定的。二维码的图像在图像坐标系中可以具有倾斜角度、弯曲等。二维码标准坐标系和图像坐标系可以存在确定的映射关系,该映射关系用于表示其中一个坐标系中的点与另一个坐标系中的相应点的坐标变换方式。该映射关系可以通过已知点分别在两个坐标系中的坐标来确定。两个二维坐标系的映射关系例如可以具有以下形式:
x=x'cosθ+y'sinθ+r;
y=y'cosθ+x'sinθ+t;
其中,(x,y)可以是二维码标准坐标系中的的第一坐标,(x',y')可以是图像坐标系中与(x,y)对应的点的第二坐标,当(x,y)对应各个点有不同取值时,相应地,(x',y')也有相应的不同取值。θ为二维码图像坐标系相对于二维码标准坐标系的旋转角度,r为两个坐标系间横轴的平移参数,t为两个坐标系间纵轴的平移参数。在映射关系确定之前,θ、r、t为待定参数,上述映射关系表达式也可以称为映射关系模型。通过容易识别的特殊点分别在两个坐标系中的坐标,可以求解以上待定参数。以QR Code为例,首先可以确定的是具有特殊尺寸和含义的三个定位图形的中心点,这三个中心点分别在二维码标准坐标系和图像坐标系中的第一坐标和第二坐标都容易确定。将三个点的坐标对应代入上述公式,求解其中的参数r、t、θ,就得到了两个坐标系的映射关系。在一些情况下,还需要借助二维码最右下角的辅助定位图形(如图3中的图形302)确定映射关系,在此不再赘述。
可以理解,在单元色块的排列密度已知的情况下,在二维码标准坐标系中,相邻单元色块中心之间的距离为1个单位,各个单元色块中心的标准坐标也是容易确定的。根据各个单元色块的中心点在二维码标准坐标系中的坐标,以及确定的映射关系,便可以得到各个单元色块的中心点在图像坐标系中相应的映射点的坐标,以及对应的像素,从而在二维码图像中确定出各个单元色块的当前采样像素。
由于在实际的二维码图像进行二维码识别时,获取图片的角度、二维码所附着的表面弯曲等因素的影响,所确定的单元色块的当前采样像素可能有所偏差,例如,单元区域所对应的多个像素可能对应不同的颜色等。举例而言,在二维码图像中的二维码发生非线性畸变(如图1示出的二维码)的情况下,可能划分出一个对应3×3个像素的单元色块,其中左侧一列3个像素对应白色,右侧两列6个像素对应黑色。此时,按照不同预定规则取得的当前采样像素可能结果不同,例如取单元色块左上角的像素和中心的像素,会得到不同颜色的像素。也就是说,在步骤202中通过二维码图像中单元色块的排列密度,可以估计出各个单元色块的大致位置,并初步确定相应的当前采样像素。在本说明书中,为了采样结果的准确性,可以将按照预定规则选择出的像素作为相应单元色块的当前采样像素作为初始的采样像素,并通过接下来的步骤203进行修正。
在步骤203中,基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素。可以理解,根据步骤202中预定规则所包含的当前采样像素的选择方式不同,本步骤中对比的相邻色块也可以不同。
在一个实施例中,一个单元色块(或相应单元区域)对应四个像素,预定规则为选择左上角的像素作为当前采样像素(如图4a所示),则此时,针对一个第一单元色块,可以将当前采样像素与右侧相邻、下方相邻、右下角相邻的三个像素的颜色分别与该当前采样像素的颜色进行对比。可以理解:如果该当前采样像素的颜色与其他三个像素的颜色都相同,则对当前采样像素不做调整;如果该当前采样像素的颜色与右侧相邻像素的颜色不相同,表示当前采样像素向右偏差,则可以将当前采样像素向左调整一个像素;如果该当前采样像素的颜色与下方相邻像素的颜色不相同,表示当前采样像素向下偏差,则可以将当前采样像素向上调整一个像素;如果该当前采样像素的颜色与右下角相邻像素的颜色不相同,表示当前采样像素向右下偏差,可以将当前采样像素向左上角调整一个像素。其中,由于上述各个调整方式中,当前采样像素依次与各个相邻像素进行颜色对比,因此上述与不同相邻像素对比的调整方式可以叠加。例如,基于与右侧相邻像素对比向左调整当前采样像素后,还可以基于与下方相邻像素的对比向上调整当前采样像素。
在另一个实施例中,单元色块(或单元区域)对应像素较多(如3×3个以上)时,初始时取单元色块中心位置的像素作为当前采样像素,如图4b、图4c所示,则可以将当前采样像素分别与上方相邻像素、左侧相邻像素、右侧相邻像素、下方相邻像素之间进行颜色对比。可以理解,如果当前采样像素与各个相邻像素颜色一致时,可以不调整当前采样像素;如果当前采样像素与上方相邻像素的颜色不一致,表示当前采样像素向上方偏差,则可以将当前采样像素向下调整预定个数的像素;同理,如果当前采样像素与左侧相邻像素、右侧相邻像素、下方相邻像素之一的颜色不一致,表示当前采样像素向相应方向偏差,则可以将当前采样像素向相反方向调整预定个数的像素。
其中,当前采样像素在某个方向上的相邻像素可以是当前采样像素沿该方向移动一个像素、两个像素或更多像素所对应的像素。例如,图4b中,加粗虚线框选定的像素的上方相邻像素,可以是加粗虚线框正上方的像素,以及该正上方的像素的正上方的像素。预定个数是和单元色块对应的像素数量、初始时的当前采样像素的确定方法,以及相邻像素与当前采样像素的距离相关的。举例而言,单元像素对应的像素数量为a×a个,其中a为大于或等于3的奇数,初始时的当前采样像素是中心像素,该预定个数最大可以是从边缘像素到中心像素所移动的像素数,例如a=3时预定个数最大为1,a=5时预定个数最大为2,等等。举例而言,当a=5时,如果当前采样像素与右侧相邻像素的颜色不一致,则可以将当前采样像素向左调整2个像素,如果当前采样像素与右侧相邻像素右侧的相邻像素的颜色不一致,则可以将当前采样像素向左调整1个像素。
可以理解,二维码图像的形变是连续的,也就是说,当前的单元色块的形变,和其周边的单元色块的形变是相关的。因此,根据一个可能的设计,在调整当前单元色块的当前采样像素时,还可以对当前单元色块周边(上、下、左、右)的相邻色块的当前采样像素进行联动的调整。假设二维码图像中的单元色块包括第二单元色块,以及与第二单元色块相邻的第三单元色块,在调整第二单元色块的当前采样像素时,按照预先设定的联动规则,至少对第三单元色块的当前采样像素进行联动调整,其中,第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离正相关。
在一个实施例中,联动规则包括,第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离一致。例如,当前单元色块的当前采样像素向上调整2个像素,则当前单元色块上、下、左、右相邻的单元色块也随之向上调整2个像素。
在另一个实施例中,联动规则包括,第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离具有小于1的预定比例。该预订比例也可以称为衰减系数。假设述案件系数为0.8,则当第二单元色块的当前采样像素向右调整2个像素时,第三单元色块的当前采样像素向右调整2×0.8=1.6个像素(实际调整时可以取整,如调整1个或2个像素)。
在又一个实施例中,联动规则包括,第三单元色块的当前采样像素的调整距离,与所述第三单元色块和所述第二单元色块的间隔距离成线性关系。例如,当前单元色块的当前采样像素向上调整3个像素,则当前单元色块相邻的单元色块随之向上调整2个像素,次相邻的单元色块(与相邻单元色块相邻的单元色块)随之向上调整1个像素……该衰减还可以通过预先确定的衰减模型确定,例如线性衰减模型为y=-mx+b,x为单元色块s与当前单元色块的距离(可以通过像素数表示),b与当前单元色块的当前采样像素向某个方向调整的像素数正相关,m为大于0的常数,y为单元色块s的当前采样像素理论上向某个方向调整的像素数。实际调整时可以将y四舍五入后的整数,作为单元色块s的当前采样像素向某个方向调整的像素数,例如,y为1.8,则单元色块s的当前采样像素向某个方向调整2个像素。当y小于预定值(如0.8或0.5等)时,还可以放弃对单元色块s的当前采样像素的调整。
在更多实施例中,联动规则还可以是其他合理的各种规则,在此不再赘述。
可以理解,如果因为二维码所附着的表面弯曲等导致的该单元色块的当前采样像素为相邻单元色块中的像素,将一个单元色块的当前采样像素单独进行调整时,很难发现这种错误。然而通过在调整过程中,对某个单元色块的当前采样像素调整时,对周边单元色块的当前采样像素联动调整,可以对周边单元色块的当前采样像素进行修正,更大概率落入相应单元色块内的像素上。这样,再对周边单元色块的当前采样像素进行修正时,其可能已经落入了正确的单元色块内,从而提高当前采样像素的准确性。
为了更清楚理解以上调整过程的优点,请参考图5所示的一个具体例子。白色色块51初始的当前采样像素为511,黑色色块52初始时的当前采样像素为521。可以看出,黑色色块512初始时的当前采样像素521落入右侧的白色色块内,单独对黑色色块52的当前采样像素进行调整时,可能会向右调整,造成更大的偏差。假设在对白色色块51进行当前像素调整过程中,向左侧调整了一个像素,调整为像素512,那么黑色色块52的当前采样像素联动调整为像素522,则落入黑色色块52内,在后续对黑色色块52的当前采样像素调整时,再进一步向上、向左调整,从而得到准确的黑色像素。
值得说明的是,在像素调整过程中,可以依次针对每个单元色块进行调整。也就是遍历各个单元色块(或者单元区域)。每次遍历各个单元色块(或者单元区域)的方法可以是从左至右、从上至下遍历,也可以是从中心向两边(按列遍历,每列中从上至下进行)遍历,还可以是按照环形从中心向四周遍历,等等,在此不作限定。当遍历各个单元色块(或者单元区域)后,为了避免单次调整造成的误差,提高调整的有效性,还可以多次(预定次数)遍历各个单元色块(或者单元区域)。如此,通过多次迭代调整,可以得到更准确的采样像素。
将调整后各个单元色块的当前采样像素确定为相应的待采样像素。然后,在步骤204中,按照调整后各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出二维码中包含的信息。可以理解,调整后的各个单元色块对应的当前采样像素,也是最终为各个单元色块确定的采样像素,它们分别对应的颜色,也就是相应单元色块对应的颜色,并对应到相应数值。以二进制数为例,假设黑色色块对应“1”、白色色块对应“0”,则如果采样像素为黑色,对应单元色块取“1”,如果采样像素为白色,对应单元色块取“0”。进一步地,将各个单元色块对应的数值组合起来,就可以识别出二维码所包含的信息。
回顾以上过程,在二维码识别过程中,对于待识别的二维码图像,首先确定所述二维码图像中的单元色块的排列密度,进一步基于单元色块的排列密度,按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,然后基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素,再按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出所述二维码中包含的信息。由于二维码识别过程中,将按照预定规则为各个单元色块选择出的各个当前采样像素作为初始的当前采样像素,并不断调整,最终获取更准确的采样像素,从而可以提高二维码识别的准确度。
根据另一方面的实施例,还提供一种二维码的识别装置。图6示出根据一个实施例的二维码的识别装置的示意性框图。如图6所示,用于二维码的识别装置600包括:获取模块61,配置为获取待识别的二维码图像;选择模块62,配置为确定所述二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,排列密度指示出二维码图像中单元色块的数量以及排列方式;调整模块63,配置为基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素;识别模块64,配置为按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出二维码中包含的信息。
根据一个实施方式,选择模块62还配置为:
根据定位图形中各个色块的尺寸之间的第一比例关系,检测二维码图像中的定位图形,其中,定位图形的尺寸与单元色块的尺寸具有第二比例关系;
按照第一比例关系、第二比例关系,以及定位图形在二维码图像中的尺寸,确定单元色块在二维码图像中的尺寸;
基于二维码图像的尺寸以及单元色块在二维码图像中的尺寸,确定单元色块的排列密度。
在一个实施例中,选择模块62还配置为,按照排列密度分割分割出二维码图像中的各个单元区域,各个单元区域分别对应各个单元色块,所分割出的单元区域包括第一单元区域,所述第一单元区域对应第一单元色块;
上述预定规则包括以下至少一项:
将第一单元区域的左上角像素作为第一单元色块的当前采样像素;
将第一单元区域的中心位置的一个像素作为第一单元色块的当前采样像素;
将第一单元区域的中心位置的四个像素中的一个像素作为第一单元色块的当前采样像素。
在一个实施例中,上述预定规则包括:
按照二维码图像中的至少一个定位图形的位置,确定二维码标准坐标系,其中,定位图形中各个色块的尺寸满足第一比例关系;
建立所述二维码标准坐标系与二维码图像的图像坐标系的映射关系;
根据所述排列密度在所述二维码标准坐标系中确定各个单元色块的中心点;
按照上述映射关系将各个中心点分别映射到图像坐标系,得到相应的各个映射点;
将各个映射点对应的像素作为相应单元色块的当前采样像素。
在进一步的实施例中,上述映射关系通过以下方式确定:
获取各个定位图形的中心点分别在二维码标准坐标系与图像坐标系中的各个第一坐标和各个第二坐标;
将各个第一坐标和分别对应的各个第二坐标中的坐标值输入包含待定参数的映射关系模型;
求解待定参数,从而确定上述映射关系。
根据一个可能的设计,二维码图像中的单元色块包括第一单元色块,第一单元色块的当前采样像素的相邻像素包括,沿第一单元色块的当前采样像素的第一方向的第一相邻像素;
调整模块63还配置为:
在第一单元色块的当前采样像素的颜色与第一相邻像素的颜色不一致的情况下,将第一单元色块的当前采样像素向第一方向的相反方向调整预定个像素。
根据另一个可能的设计,调整模块63还配置为:
按照预定的遍历方式,依次调整各个单元色块的当前采样像素,其中,预定的遍历方式包括以下至少一项:
自左至右、自上至下遍历;
由中间向两边按列遍历,其中对每列自上至下遍历;
由中心向四周进行环状扩散遍历。
根据又一个可能的设计,二维码图像中的单元色块包括第二单元色块,以及与第二单元色块相邻的第三单元色块;调整模块63还配置为:
在调整第二单元色块的当前采样像素时,按照预先设定的联动规则,至少对第三单元色块的当前采样像素进行联动调整,其中,第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离正相关。
其中,上述联动规则可以包括以下至少一项:
第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离一致;
第三单元色块的当前采样像素的调整距离与第二单元色块的当前采样像素的调整距离具有小于1的预定比例;
第三单元色块的当前采样像素的调整距离,与第三单元色块和第二单元色块的间隔距离成线性关系。
值得说明的是,图6所示的装置60是与图2示出的方法实施例相对应的装置实施例,图2示出的方法实施例中的相应描述同样适用于装置600,在此不再赘述。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本说明书的技术构思的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的技术构思的具体实施方式而已,并不用于限定本说明书的技术构思的保护范围,凡在本说明书实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的技术构思的保护范围之内。

Claims (20)

1.一种二维码的识别方法,所述方法包括:
获取待识别的二维码图像;
确定所述二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,所述排列密度指示出所述二维码图像中单元色块的数量以及排列方式;
基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素;
按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出所述二维码中包含的信息。
2.根据权利要求1所述的方法,其中,所述确定所述二维码图像中的单元色块的排列密度包括:
根据定位图形中各个色块的尺寸之间的第一比例关系,检测所述二维码图像中的定位图形,其中,定位图形的尺寸与单元色块的尺寸具有第二比例关系;
按照所述第一比例关系、所述第二比例关系,以及定位图形在所述二维码图像中的尺寸,确定单元色块在所述二维码图像中的尺寸;
基于所述二维码图像的尺寸以及单元色块在所述二维码图像中的尺寸,确定所述排列密度。
3.根据权利要求1所述的方法,其中,所述确定所述二维码图像中的单元色块的排列密度之后,还包括,按照所述排列密度分割出所述二维码图像中的各个单元区域,各个单元区域分别对应各个单元色块,所分割出的单元区域包括第一单元区域,所述第一单元区域对应第一单元色块;
所述预定规则包括以下至少一项:
将所述第一单元区域的左上角像素作为所述第一单元色块的当前采样像素;
将所述第一单元区域的中心位置的一个像素作为所述第一单元色块的当前采样像素;
将所述第一单元区域的中心位置的四个像素中的一个像素作为所述第一单元色块的当前采样像素。
4.根据权利要求1所述的方法,其中,所述预定规则包括:
按照所述二维码图像中的至少一个定位图形的位置,确定二维码标准坐标系,其中,定位图形中各个色块的尺寸满足第一比例关系;
建立所述二维码标准坐标系与所述二维码图像的图像坐标系的映射关系;
根据所述排列密度在所述二维码标准坐标系中确定各个单元色块的中心点;
按照所述映射关系将各个中心点分别映射到所述图像坐标系,得到相应的各个映射点;
将各个映射点对应的像素作为相应单元色块的当前采样像素。
5.根据权利要求4所述的方法,其中,所述建立所述二维码标准坐标系与所述二维码图像的图像坐标系的映射关系包括:
获取各个定位图形的中心点分别在所述二维码标准坐标系与所述图像坐标系中的各个第一坐标和各个第二坐标;
将所述第一坐标和第二坐标中的坐标值输入包含待定参数的映射关系模型;
求解所述待定参数,从而确定所述映射关系。
6.根据权利要求1所述的方法,其中,所述单元色块包括第一单元色块,所述第一单元色块的当前采样像素的相邻像素包括,沿所述第一单元色块的当前采样像素的第一方向的第一相邻像素;
所述基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素包括:
在所述第一单元色块的当前采样像素的颜色与所述第一相邻像素的颜色不一致的情况下,将所述第一单元色块的当前采样像素向所述第一方向的相反方向调整预定个像素。
7.根据权利要求1所述的方法,其中,所述基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素包括:
按照预定的遍历方式,依次调整各个单元色块的当前采样像素,其中,所述预定的遍历方式包括以下至少一项:
自左至右、自上至下遍历;
由中间向两边按列遍历,其中对各个列自上至下遍历;
由中心向四周进行环状扩散遍历。
8.根据权利要求1所述的方法,其中,所述二维码图像中的单元色块包括第二单元色块,以及与所述第二单元色块相邻的第三单元色块;所述基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素包括:
在调整所述第二单元色块的当前采样像素时,按照预先设定的联动规则,至少对所述第三单元色块的当前采样像素进行联动调整,其中,所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离正相关。
9.根据权利要求8所述的方法,其中,所述联动规则包括以下至少一项:
所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离一致;
所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离具有小于1的预定比例;
所述第三单元色块的当前采样像素的调整距离,与所述第三单元色块和所述第二单元色块的间隔距离成线性关系。
10.一种二维码的识别装置,所述装置包括:
获取模块,配置为获取待识别的二维码图像;
选择模块,配置为确定所述二维码图像中的单元色块的排列密度,并按照预定规则为各个单元色块分别选择出相应的各个当前采样像素,其中,所述排列密度指示出所述二维码图像中单元色块的数量以及排列方式;
调整模块,配置为基于各个当前采样像素与相邻像素的颜色对比,调整各个单元色块的当前采样像素;
识别模块,配置为按照调整后的各个单元色块的当前采样像素的颜色,确定相应单元色块对应的数值,从而识别出所述二维码中包含的信息。
11.根据权利要求10所述的装置,其中,所述选择模块还配置为:
根据定位图形中各个色块的尺寸之间的第一比例关系,检测所述二维码图像中的定位图形,其中,定位图形的尺寸与单元色块的尺寸具有第二比例关系;
按照所述第一比例关系、所述第二比例关系,以及定位图形在所述二维码图像中的尺寸,确定单元色块在所述二维码图像中的尺寸;
基于所述二维码图像的尺寸以及单元色块在所述二维码图像中的尺寸,确定所述排列密度。
12.根据权利要求10所述的装置,其中,所述选择模块还配置为,按照所述排列密度分割出所述二维码图像中的各个单元区域,各个单元区域分别对应各个单元色块,所分割出的单元区域包括第一单元区域,所述第一单元区域对应第一单元色块;
所述预定规则包括以下至少一项:
将所述第一单元区域的左上角像素作为所述第一单元色块的当前采样像素;
将所述第一单元区域的中心位置的一个像素作为所述第一单元色块的当前采样像素;
将所述第一单元区域的中心位置的四个像素中的一个像素作为所述第一单元色块的当前采样像素。
13.根据权利要求10所述的装置,其中,所述预定规则包括:
按照所述二维码图像中的至少一个定位图形的位置,确定二维码标准坐标系,其中,定位图形中各个色块的尺寸满足第一比例关系;
建立所述二维码标准坐标系与所述二维码图像的图像坐标系的映射关系;
根据所述排列密度在所述二维码标准坐标系中确定各个单元色块的中心点;
按照所述映射关系将各个中心点分别映射到所述图像坐标系,得到相应的各个映射点;
将各个映射点对应的像素作为相应单元色块的当前采样像素。
14.根据权利要求13所述的装置,其中,所述映射关系通过以下方式确定:
获取各个定位图形的中心点分别在所述二维码标准坐标系与所述二图像坐标系中的各个第一坐标和各个第二坐标;
将各个第一坐标和分别对应的各个第二坐标中的坐标值输入包含待定参数的映射关系模型;
求解所述待定参数,从而确定所述映射关系。
15.根据权利要求10所述的装置,其中,所述单元色块包括第一单元色块,所述第一单元色块的当前采样像素的相邻像素包括,沿所述第一单元色块的当前采样像素的第一方向的第一相邻像素;
所述调整模块还配置为:
在所述第一单元色块的当前采样像素的颜色与所述第一相邻像素的颜色不一致的情况下,将所述第一单元色块的当前采样像素向所述第一方向的相反方向调整预定个像素。
16.根据权利要求10所述的装置,其中,所述调整模块还配置为:
按照预定的遍历方式,依次调整各个单元色块的当前采样像素,其中,所述预定的遍历方式包括以下至少一项:
自左至右、自上至下遍历;
由中间向两边按列遍历,其中对各个列自上至下遍历;
由中心向四周进行环状扩散遍历。
17.根据权利要求10所述的装置,其中,所述二维码图像中的单元色块包括第二单元色块,以及与所述第二单元色块相邻的第三单元色块;所述调整模块还配置为:
在调整所述第二单元色块的当前采样像素时,按照预先设定的联动规则,至少对所述第三单元色块的当前采样像素进行联动调整,其中,所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离正相关。
18.根据权利要求17所述的装置,其中,所述联动规则包括以下至少一项:
所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离一致;
所述第三单元色块的当前采样像素的调整距离与所述第二单元色块的当前采样像素的调整距离具有小于1的预定比例;
所述第三单元色块的当前采样像素的调整距离,与所述第三单元色块和所述第二单元色块的间隔距离成线性关系。
19.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-9中任一项的所述的方法。
20.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。
CN201910738952.6A 2019-08-12 2019-08-12 二维码的识别方法及装置 Active CN110543798B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910738952.6A CN110543798B (zh) 2019-08-12 2019-08-12 二维码的识别方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910738952.6A CN110543798B (zh) 2019-08-12 2019-08-12 二维码的识别方法及装置

Publications (2)

Publication Number Publication Date
CN110543798A true CN110543798A (zh) 2019-12-06
CN110543798B CN110543798B (zh) 2023-06-20

Family

ID=68710632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910738952.6A Active CN110543798B (zh) 2019-08-12 2019-08-12 二维码的识别方法及装置

Country Status (1)

Country Link
CN (1) CN110543798B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113385826A (zh) * 2021-07-06 2021-09-14 深圳青钿信息科技有限公司 一种基于高速振镜激光的赋码识别系统及方法
CN113449534A (zh) * 2021-06-28 2021-09-28 歌尔股份有限公司 二维码图像处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004362053A (ja) * 2003-06-02 2004-12-24 Hitachi Information Technology Co Ltd 二次元コード読取装置
JP2007052471A (ja) * 2005-08-12 2007-03-01 Ricoh Co Ltd 2次元パターン読み取り装置、2次元パターン読み取り方法
CN103164702A (zh) * 2011-12-13 2013-06-19 李卫伟 标记中心点提取方法、装置及图像处理系统
WO2014092193A1 (ja) * 2012-12-14 2014-06-19 株式会社コンセプト 画像処理装置、画像処理方法、画像処理プログラム、プログラム及びカメラ付き移動端末装置
US20150090792A1 (en) * 2013-09-29 2015-04-02 Founder Mobile Media Technology (Beijing) Co., Ltd. System for decoding two dimensional code and method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004362053A (ja) * 2003-06-02 2004-12-24 Hitachi Information Technology Co Ltd 二次元コード読取装置
JP2007052471A (ja) * 2005-08-12 2007-03-01 Ricoh Co Ltd 2次元パターン読み取り装置、2次元パターン読み取り方法
CN103164702A (zh) * 2011-12-13 2013-06-19 李卫伟 标记中心点提取方法、装置及图像处理系统
WO2014092193A1 (ja) * 2012-12-14 2014-06-19 株式会社コンセプト 画像処理装置、画像処理方法、画像処理プログラム、プログラム及びカメラ付き移動端末装置
US20150090792A1 (en) * 2013-09-29 2015-04-02 Founder Mobile Media Technology (Beijing) Co., Ltd. System for decoding two dimensional code and method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113449534A (zh) * 2021-06-28 2021-09-28 歌尔股份有限公司 二维码图像处理方法和装置
CN113385826A (zh) * 2021-07-06 2021-09-14 深圳青钿信息科技有限公司 一种基于高速振镜激光的赋码识别系统及方法

Also Published As

Publication number Publication date
CN110543798B (zh) 2023-06-20

Similar Documents

Publication Publication Date Title
EP3309704B1 (en) Two-dimensional code partitioning and decoding method and system
US8254683B2 (en) Code image processing method
JP3515199B2 (ja) 欠陥検査装置
US8155448B2 (en) Image processing apparatus and method thereof
CA2592596C (en) Information input output method using dot pattern
CN108550113A (zh) 图像扫描输出方法、装置、计算机设备和存储介质
CN110569845A (zh) 一种试卷图像的校正方法及相关装置
CN110543798A (zh) 二维码的识别方法及装置
CN114638824B (zh) 基于aoi设备采集图像的融合方法、装置、设备和介质
JP6665595B2 (ja) 文字認識装置、方法およびプログラム
JP2011175523A (ja) 計器読み取り装置、方法、プログラム、および該ソフトウェアを格納したコンピュータ可読媒体
JP5600524B2 (ja) 画像処理装置、画像処理方法、プログラム、および記憶媒体
CN114332237A (zh) 一种计算相机坐标系和激光器坐标系转换关系的方法
WO2022021687A1 (zh) 快速响应码区域定位方法、电子设备及存储介质
EP2853089B1 (en) Pattern processing apparatus, pattern processing method, and pattern processing program
US20180061061A1 (en) Image Analyzing Apparatus that Corrects Isolated Pixels in Target Image Data
JP4335229B2 (ja) Qrコード認識装置、qrコード認識装置の制御方法、qrコード認識装置制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
CN110689586B (zh) 中医智能舌诊中的舌像识别方法和用于该方法的便携式校正色卡
CN202267974U (zh) 用于二维码的定位系统及二维码的识别设备
CN113536822B (zh) 二维码校正方法、装置及计算机可读存储介质
JP4760362B2 (ja) 文字読取装置
CN111753832B (zh) 图像处理方法、图像处理装置、电子设备和存储介质
JP2019012424A (ja) 画像処理装置、および、コンピュータプログラム
CN112767472B (zh) 定位显示屏图像中灯珠的方法、计算设备及存储介质
CN112733567B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40018657

Country of ref document: HK

TA01 Transfer of patent application right

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant