CN113673655B - 用于确定二维码解码方向的方法及装置、电子设备、介质 - Google Patents
用于确定二维码解码方向的方法及装置、电子设备、介质 Download PDFInfo
- Publication number
- CN113673655B CN113673655B CN202111230093.3A CN202111230093A CN113673655B CN 113673655 B CN113673655 B CN 113673655B CN 202111230093 A CN202111230093 A CN 202111230093A CN 113673655 B CN113673655 B CN 113673655B
- Authority
- CN
- China
- Prior art keywords
- dimensional code
- decoding
- determining
- boundary
- decoding direction
- 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
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 Analysis (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请涉及二维码识别技术领域,公开一种用于确定二维码解码方向的方法,包括:获取二维码图像;在所述二维码图像中获取若干段平行的扫描线段;分别确定各所述扫描线段的二维码边界点;对各所述二维码边界点进行拟合获得二维码边界线;根据所述二维码边界线确定解码方向。这样,通过获取若干扫描线段,分别确定各扫描线段上的二维码边界点,对边界点进行拟合形成二维码边界线,由二维码边界线确定二维码解码方向,不需要对二维码图像进行全图处理,能够降低确定二维码解码方向的运算量。本申请还公开一种装置、电子设备和存储介质。
Description
技术领域
本申请涉及二维码识别技术领域,例如涉及一种用于确定二维码解码方向的方法及装置、电子设备、存储介质。
背景技术
堆叠式二维条码,其编码原理是建立在一维条码基础之上,按需要堆积成二行或多行。对堆叠式二维码进行解码的前提是正确获取码字方向。现有的堆叠式二维码解码方向的确定是依赖码图定位来实现的,基于堆叠式二维码图像中丰富的边缘信息,结合数学、形态学等方法,利用梯度特征将堆叠式二维码从背景中分割出来,从而获得堆叠式二维码的解码方向。
在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:
需要对含有堆叠式二维码的图片进行全图处理以确定堆叠式二维码的解码方向,运算量大,导致对处理平台的算力要求高。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本公开实施例提供了一种用于确定二维码解码方向的方法及装置、电子设备、存储介质,以降低确定二维码解码方向的运算量。
在一些实施例中,所述用于确定二维码解码方向的方法,包括:获取二维码图像;在所述二维码图像中获取若干段平行的扫描线段;分别确定各所述扫描线段的二维码边界点;对各所述二维码边界点进行拟合获得二维码边界线;根据所述二维码边界线确定解码方向。
在一些实施例中,所述用于确定二维码解码方向的装置,包括:第一获取模块,被配置为获取二维码图像;第二获取模块,被配置为在所述二维码图像中获取若干段平行的扫描线段;二维码边界点确定模块,被配置为分别确定各所述扫描线段的二维码边界点;二维码边界线拟合模块,被配置为对各所述二维码边界点进行拟合获得二维码边界线;解码方向确定模块,被配置为根据所述二维码边界线确定解码方向。
在一些实施例中,电子设备,包括处理器和存储有程序指令的存储器,所述处理器被配置为在运行所述程序指令时,执行上述的用于确定二维码解码方向的方法。
在一些实施例中,存储介质,存储有程序指令,所述程序指令在运行时,执行上述的用于确定二维码解码方向的方法。
本公开实施例提供的用于确定二维码解码方向的方法及装置、电子设备、存储介质,可以实现以下技术效果:通过获取二维码图像;在二维码图像中获取若干段平行的扫描线段;分别确定各扫描线段的二维码边界点;对各二维码边界点进行拟合获得二维码边界线;根据二维码边界线确定解码方向。这样,通过获取若干扫描线段,分别确定各扫描线段上的二维码边界点,对边界点进行拟合形成二维码边界线,由二维码边界线确定二维码解码方向,不需要对二维码图像进行全图处理,能够降低确定二维码解码方向的运算量。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1是本公开实施例提供的一个用于确定二维码解码方向的方法的示意图;
图2是本公开实施例提供的一个二维码边界点的横纵坐标在平面直角坐标系的分布示意图;
图3是本公开实施例提供的一个边界线的示意图;
图4是本公开实施例的另一个用于确定二维码解码方向的方法的示意图;
图5是本公开实施例提供的一个PDF417条码的特有结构的示意图;
图6是本公开实施例提供的一个在特有结构上选取线段的示意图;
图7是本公开实施例提供的一个二值序列和数值序列的示意图;
图8是本公开实施例提供的一个用于确定二维码解码方向的装置的示意图;
图9是本公开实施例提供的一个电子设备的示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
术语“对应”可以指的是一种关联关系或绑定关系,A与B相对应指的是A与B之间是一种关联关系或绑定关系。
结合图1所示,本公开实施例提供的一种用于确定二维码解码方向的方法,包括:
步骤S101,获取二维码图像;
步骤S102,在二维码图像中获取若干段平行的扫描线段;
步骤S103,分别确定各扫描线段的二维码边界点;
步骤S104,对各二维码边界点进行拟合获得二维码边界线;
步骤S105,根据二维码边界线确定解码方向。
采用本公开实施例提供的用于确定二维码解码方向的方法,通过获取二维码图像;在二维码图像中获取若干段平行的扫描线段;分别确定各扫描线段的二维码边界点;对各二维码边界点进行拟合获得二维码边界线;根据二维码边界线确定解码方向。这样,通过获取若干扫描线段,分别确定各扫描线段上的二维码边界点,对二维码边界点进行拟合形成二维码边界线,由二维码边界线确定二维码解码方向,不需要对二维码图像进行全图处理,能够降低确定二维码解码方向的运算量。
在一些实施例中,若干段平行的扫描线段为预设的。
可选地,二维码图像为包括堆叠式二维条码的图像;可选地,堆叠式二维条码,包括:PDF417、Code16K或Code49等。
可选地,分别确定各扫描线段的二维码边界点,包括:分别获取各扫描线段对应的像素灰度值序列;根据各像素灰度值序列与预设的数值序列分别确定各扫描线段的二维码边界点。
可选地,获取扫描线段对应的像素灰度值序列,包括:沿预设的采集方向采集扫描线段各像素点的灰度值,获得扫描线段对应的像素灰度值序列。
在一些实施例中,通过光栅扫描获得扫描线段对应的像素灰度值序列。
可选地,根据像素灰度值序列与预设的数值序列确定扫描线段的二维码边界点,包括:从像素灰度值序列中获取若干候选序列,候选序列的数值个数与数值序列的数值个数相等;根据各候选序列与数值序列确定扫描线段的二维码边界点。
可选地,从像素灰度值序列中获取若干候选序列,包括:按照预设顺序从像素灰度值序列中依次选取预设个数的像素灰度值作为候选序列,预设个数为数值序列的数值个数。
在一些实施例中,获取扫描线段对应的像素灰度值序列为127,123,65,39,39,41,35,38,42,60,77,51,86,54,80,62,117,128,99,128,99,61,60,69,56,56,106,119,93,59,44,41,64,65,107,101,72,61;预设的数值序列为255,255,0,0,0,0,0,0,0,0,255,0,255,0,255,0,255,255,255;预设的数值序列的个数为19个,从像素灰度值序列中依次选取与数值序列的数值个数的个数相同的像素灰度值作为候选序列,例如,候选序列A为127,123,65,39,39,41,35,38,42,60,77,51,86,54,80,62,117,128,99;候选序列B为128,99,61,60,69,56,56,106,119,93,59,44,41,64,65,107,101,72,61。
可选地,根据各候选序列与数值序列确定扫描线段的二维码边界点,包括:分别计算各候选序列与数值序列之间的欧式距离,获得各欧式距离数值;根据各欧式距离数值确定扫描线段的二维码边界点。
可选地,根据各欧式距离数值确定扫描线段的二维码边界点,包括:将最小的欧式距离数值对应的候选序列所对应的线段确定为边界线段;将边界线段在设定侧的端点确定为扫描线段的二维码边界点。
可选地,边界线段在设定侧的端点为边界线段左侧端点或边界线段右侧端点。
在一些实施例中,从扫描线段对应的像素灰度值序列中获取候选序列A和候选序列B,候选序列A为127,123,65,39,39,41,35,38,42,60,77,51,86,54,80,62,117,128,99;候选序列B为128,99,61,60,69,56,56,106,119,93,59,44,41,64,65,107,101,72,61;预设的数值序列为255,255,0,0,0,0,0,0,0,0,255,0,255,0,255,0,255,255,255。
将最小的欧式距离数值458.83对应的候选序列A对应的线段确定为边界线段,将边界线段的右侧端点确定为二维码边界点。
可选地,对各二维码边界点进行拟合获得二维码边界线,包括:通过预设算法对各二维码边界点进行拟合获得二维码边界线。
可选地,预设算法为最小二乘法、霍夫变换或Ransac(Random Sample Consensus,随机抽样一致算法)。
在一些实施例中,预设算法为最小二乘法的情况下,获取各二维码边界点对应的坐标值,通过计算获取各二维码边界点的横坐标的均值,其中为二维码边界点的横坐标的均值,Xi为各二维码边界点的横坐标,n为二维码边界点的个数,i为第几个二维码边界点。通过计算获取各二维码边界点的纵坐标的均值,其中为二维码边界点的纵坐标的均值,Yi为各二维码边界点的纵坐标,n为二维码边界点的个数,i为第几个二维码边界点。通过计算获取协方差,其中,代表协方差。通过计算获取各二维码边界点的横坐标的方差,其中,代表各二维码边界点的横坐标的方差。通过计算获得拟合的边界线,其中,b0为第一常数,b1为第二常数,G为拟合的边界线的纵坐标,H为拟合的边界线的横坐标。可选地,通过计算获得第一常数b0,可选地,通过计算获得第二常数b1,表1为各二维码边界点的坐标示例表,表1中,为二维码边界点的横坐标与横坐标的均值之间的差值,可选地,通过计算获得;为二维码边界点的纵坐标与纵坐标的均值之间的差值,可选地,通过计算获得;为二维码边界点的横坐标与横坐标的均值之间的差值乘以二维码边界点的纵坐标与纵坐标的均值之间的差值,为二维码边界点的横坐标与横坐标的均值之间的差值乘以二维码边界点的横坐标与横坐标的均值之间的差值。如表1所示,i为5的二维码边界点的横坐标为600,纵坐标为244,对应的X5 *为-3.25,Y5 *为-5.5,为17.875,为10.5625。在各二维码边界点的横纵坐标如表1所示的情况下,为603.25,为249.5,为20.275,为12.4875,边界线为G=-729.9367+1.6236H。如图2所示,图2为表1中各二维码边界点的横纵坐标在平面直角坐标系的分布示意图;对图2中各二维码边界点进行拟合,获得如图3所示的边界线的示意图。
表1
可选地,根据二维码边界线确定解码方向,包括:将与二维码边界线垂直的方向确定为解码方向。
可选地,根据二维码边界线确定解码方向后,还包括:按照解码方向对二维码图像进行解码;在解码不成功的情况下,调整解码方向的角度并利用调整后的解码方向对二维码图像进行解码,直到解码成功或达到预设的解码次数。
可选地,按照解码方向对二维码图像进行解码,包括:按照解码方向对二维码图像的预设字符进行解码。
在一些实施例中,二维码图像为PDF417,预设字符为行号,对PDF417的行号进行解码。
在一些实施例中,结合图4所示,本公开实施例提供另一种用于确定二维码解码方向的方法,包括:
步骤S201,获取二维码图像;
步骤S202,在二维码图像中获取若干段平行的扫描线段;
步骤S203,分别确定各扫描线段的二维码边界点;
步骤S204,对各二维码边界点进行拟合获得二维码边界线;
步骤S205,根据二维码边界线确定解码方向;
步骤S206,按照解码方向对二维码图像进行解码;
步骤S207,判断是否解码成功;在解码不成功的情况下,执行步骤S208;在解码成功的情况下,执行步骤S211;
步骤S208,累加解码次数;
步骤S209,判断解码次数是否超过预设的解码次数;在超过预设的解码次数的情况下,执行步骤S211;在未超过解码次数的情况下,执行步骤S210;
步骤S210,调整解码方向的角度,并返回执行步骤S206;
步骤S211,退出解码。
可选地,按照解码方向对二维码图像进行解码,包括:在解码方向上按照预设顺序对二维码图像进行解码。可选地,预设顺序为从左到右或从右到左。
在一些实施例中,按照解码方向对二维码图像进行解码,解码成功,即该解码方向能够对二维码图像进行正确的解码。
在一些实施例中,初始的解码次数为0,按照解码方向对二维码图像进行解码,解码不成功,则解码次数加1。
在一些实施例中,将解码方向与边界线的任一夹角确定为待调整角,调整解码方向的角度即减小待调整角的角度,或者增加待调整角的角度。
在一些实施例中,堆叠式二维码为PDF417条码,如图5所示为PDF417条码的特有结构,其中a为起始符左侧留白,b为起始符,c为行号。依据PDF417条码的特有结构的黑白分布选取9个线段,分别为L1、L2、L3、L4、L5、L6、L7、L8、L9,如图6所示。这9条线段之间的长度比例是固定的比值为2:8:1:1:1:1:1:1:3;根据长度比例构建二值序列,即,用0代表黑色,用1代表白色,确定长度比例中的数值对应的颜色,将长度比例中的数值确定为该数值对应的颜色的个数。按照长度比例的顺序,获得二值序列,如图7(a)所示。将二值序列归一到0到255,获得预设的数值序列,如图7(b)所示。
结合图8所示,本公开实施例提供一种用于确定二维码解码方向的装置,包括:第一获取模块801、第二获取模块802、二维码边界点确定模块803、二维码边界线拟合模块804和解码方向确定模块805。第一获取模块801,被配置为获取二维码图像;第二获取模块802,被配置为在二维码图像中获取若干段平行的扫描线段;二维码边界点确定模块803,被配置为分别确定各扫描线段的二维码边界点;二维码边界线拟合模块804,被配置为对各二维码边界点进行拟合获得二维码边界线;解码方向确定模块805,被配置为根据二维码边界线确定解码方向。
采用本公开实施例提供的用于确定二维码解码方向的装置,通过第一获取模块获取二维码图像;第二获取模块在二维码图像中获取若干段平行的扫描线段;二维码边界点确定模块分别确定各扫描线段的二维码边界点;二维码边界线拟合模块对各二维码边界点进行拟合获得二维码边界线;解码方向确定模块根据二维码边界线确定解码方向。这样,通过获取若干扫描线段,分别确定各扫描线段上的二维码边界点,对边界点进行拟合形成二维码边界线,由二维码边界线确定二维码解码方向,不需要对二维码图像进行全图处理,能够降低确定二维码解码方向的运算量。
结合图9所示,本公开实施例提供一种电子设备,包括处理器(processor)900和存储器(memory)901。可选地,该电子设备还可以包括通信接口(Communication Interface)902和总线903。其中,处理器900、通信接口902、存储器901可以通过总线903完成相互间的通信。通信接口902可以用于信息传输。处理器900可以调用存储器901中的逻辑指令,以执行上述实施例的用于确定二维码解码方向的方法。
此外,上述的存储器901中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器901作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器900通过运行存储在存储器901中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于确定二维码解码方向的方法。
存储器901可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器901可以包括高速随机存取存储器,还可以包括非易失性存储器。
可选地,电子设备包括:计算机、服务器等。
采用本公开实施例提供的电子设备,通过获取二维码图像;在二维码图像中获取若干段平行的扫描线段;分别确定各扫描线段的二维码边界点;对各二维码边界点进行拟合获得二维码边界线;根据二维码边界线确定解码方向。这样,通过获取若干扫描线段,分别确定各扫描线段上的二维码边界点,对二维码边界点进行拟合形成二维码边界线,由二维码边界线确定二维码解码方向,不需要对二维码图像进行全图处理,能够降低确定二维码解码方向的运算量。
本公开实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于确定二维码解码方向的方法。
本公开实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述用于确定二维码解码方向的方法。
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (5)
1.一种用于确定二维码解码方向的方法,其特征在于,包括:
获取二维码图像;
在所述二维码图像中获取若干段平行的扫描线段;
分别确定各所述扫描线段的二维码边界点;
对各所述二维码边界点进行拟合获得二维码边界线;
根据所述二维码边界线确定解码方向;
分别确定各所述扫描线段的二维码边界点,包括:
分别获取各所述扫描线段对应的像素灰度值序列;
从所述像素灰度值序列中获取若干候选序列,所述候选序列的数值个数与预设的数值序列的数值个数相等;
分别计算各所述候选序列与所述数值序列之间的欧式距离,获得各欧式距离数值;
将最小的欧式距离数值对应的候选序列所对应的线段确定为边界线段;
将所述边界线段在设定侧的端点确定为扫描线段的二维码边界点;
根据所述二维码边界线确定解码方向后,还包括:按照所述解码方向对所述二维码图像进行解码;在解码不成功的情况下,调整所述解码方向的角度并利用调整后的解码方向对所述二维码图像进行解码,直到解码成功或达到预设的解码次数;
按照解码方向对二维码图像进行解码,包括:按照解码方向对二维码图像的预设字符进行解码;所述预设字符为行号;
二维码图像为PDF417条码;
依据PDF417条码选取9个线段;所述9个线段之间的长度比例为2:8:1:1:1:1:1:1:3;根据所述长度比例构建二值序列,将所述二值序列归一到0到255,获得预设的数值序列。
2.根据权利要求1所述的方法,其特征在于,根据所述二维码边界线确定解码方向,包括:
将与所述二维码边界线垂直的方向确定为解码方向。
3.一种用于确定二维码解码方向的装置,其特征在于,包括:
第一获取模块,被配置为获取二维码图像;
第二获取模块,被配置为在所述二维码图像中获取若干段平行的扫描线段;
二维码边界点确定模块,被配置为分别确定各所述扫描线段的二维码边界点;
二维码边界线拟合模块,被配置为对各所述二维码边界点进行拟合获得二维码边界线;
解码方向确定模块,被配置为根据所述二维码边界线确定解码方向;
分别确定各所述扫描线段的二维码边界点,包括:
分别获取各所述扫描线段对应的像素灰度值序列;
从所述像素灰度值序列中获取若干候选序列,所述候选序列的数值个数与预设的数值序列的数值个数相等;
分别计算各所述候选序列与所述数值序列之间的欧式距离,获得各欧式距离数值;
将最小的欧式距离数值对应的候选序列所对应的线段确定为边界线段;
将所述边界线段在设定侧的端点确定为扫描线段的二维码边界点;
根据所述二维码边界线确定解码方向后,还包括:按照所述解码方向对所述二维码图像进行解码;在解码不成功的情况下,调整所述解码方向的角度并利用调整后的解码方向对所述二维码图像进行解码,直到解码成功或达到预设的解码次数;
按照解码方向对二维码图像进行解码,包括:按照解码方向对二维码图像的预设字符进行解码;所述预设字符为行号;
二维码图像为PDF417条码;
依据PDF417条码选取9个线段;所述9个线段之间的长度比例为2:8:1:1:1:1:1:1:3;根据所述长度比例构建二值序列,将所述二值序列归一到0到255,获得预设的数值序列。
4.一种电子设备,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在运行所述程序指令时,执行如权利要求1或2任一项所述的用于确定二维码解码方向的方法。
5.一种存储介质,存储有程序指令,其特征在于,所述程序指令在运行时,执行如权利要求1或2任一项所述的用于确定二维码解码方向的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111230093.3A CN113673655B (zh) | 2021-10-22 | 2021-10-22 | 用于确定二维码解码方向的方法及装置、电子设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111230093.3A CN113673655B (zh) | 2021-10-22 | 2021-10-22 | 用于确定二维码解码方向的方法及装置、电子设备、介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113673655A CN113673655A (zh) | 2021-11-19 |
CN113673655B true CN113673655B (zh) | 2022-04-05 |
Family
ID=78550798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111230093.3A Active CN113673655B (zh) | 2021-10-22 | 2021-10-22 | 用于确定二维码解码方向的方法及装置、电子设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113673655B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114564978B (zh) * | 2022-04-27 | 2022-07-15 | 北京紫光青藤微系统有限公司 | 用于二维码解码的方法及装置、电子设备、存储介质 |
CN115438682B (zh) * | 2022-10-24 | 2023-01-31 | 北京紫光青藤微系统有限公司 | 用于确定解码方向的方法、装置及解码设备 |
CN115860034B (zh) * | 2023-02-14 | 2023-06-20 | 北京紫光青藤微系统有限公司 | 解码方法、解码装置、解码芯片及扫码设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101840496B (zh) * | 2010-06-01 | 2012-12-12 | 福建新大陆电脑股份有限公司 | 一维条码解码芯片 |
CN101908126B (zh) * | 2010-06-01 | 2015-10-07 | 福建新大陆电脑股份有限公司 | Pdf417条码解码芯片 |
CN101908122B (zh) * | 2010-06-01 | 2012-08-22 | 福建新大陆电脑股份有限公司 | 条空边界处理模块、条码识别装置及其方法 |
KR101770540B1 (ko) * | 2014-05-14 | 2017-08-22 | 교도 인사쯔 가부시키가이샤 | 이차원 코드, 이차원 코드의 해석 시스템 및 이차원 코드의 작성 시스템 |
CN107545289A (zh) * | 2017-09-19 | 2018-01-05 | 闫河 | 矩阵式二维码的编码方法及解码方法 |
CN109165538B (zh) * | 2018-07-18 | 2021-10-22 | 苏州飞搜科技有限公司 | 基于深度神经网络的条形码检测方法及装置 |
CN109948393B (zh) * | 2019-03-22 | 2022-04-26 | 凌云光技术股份有限公司 | 一种一维条码的定位方法及装置 |
-
2021
- 2021-10-22 CN CN202111230093.3A patent/CN113673655B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113673655A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113673655B (zh) | 用于确定二维码解码方向的方法及装置、电子设备、介质 | |
JP5262869B2 (ja) | 画像処理システム、画像処理サーバ、mfp及び画像処理方法 | |
CN113313226B (zh) | 用于确定dm码版本信息的方法及装置、设备、存储介质 | |
US9177188B2 (en) | Method and system for detecting detection patterns of QR code | |
CN111626293A (zh) | 图像文本识别方法、装置、电子设备及存储介质 | |
CN112712014A (zh) | 表格图片结构解析方法、系统、设备和可读存储介质 | |
CN109754044B (zh) | 条形码、条形码生成方法及识别方法 | |
CN111311497B (zh) | 一种条形码图像角度校正方法和装置 | |
CN115511031A (zh) | 一种扩容二维码、三维码解码方法、系统、设备和介质 | |
CN113420580B (zh) | 用于对二维码进行辅助定位符定位的方法及装置、二维码扫描设备、存储介质 | |
CN112733568A (zh) | 一维条码识别方法、装置、设备及存储介质 | |
CN101833644A (zh) | 一种基于动态模板的校正图形搜索方法 | |
CN111652011A (zh) | 一种读取二维码的方法和装置 | |
CN115438682B (zh) | 用于确定解码方向的方法、装置及解码设备 | |
CN104217189A (zh) | 一种用于试纸条的条形码的自学习识别方法 | |
CN101882202A (zh) | 符号字符提取模块及其提取方法 | |
CN113542617B (zh) | 用于获取扫码图像的方法及装置、扫码设备、存储介质 | |
CN113822092B (zh) | 用于定位位置探测图形的方法及装置、电子设备、介质 | |
CN107016317B (zh) | 一种条码解码方法及装置 | |
CN201927035U (zh) | 一种条码解码装置及其二值化装置 | |
CN116451721B (zh) | 用于进行解码的方法及装置、电子设备、存储介质 | |
CN114611540A (zh) | 基于数字图像处理的一维码图像区域识别方法、电子设备 | |
CN114943241B (zh) | 用于修复条码码图的方法、电子设备、存储介质 | |
CN112085030A (zh) | 相似图像确定方法及装置 | |
CN105718839B (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 |