CN115375625B - 一种二维码检测解码方法、系统、电子设备及介质 - Google Patents
一种二维码检测解码方法、系统、电子设备及介质 Download PDFInfo
- Publication number
- CN115375625B CN115375625B CN202210877897.0A CN202210877897A CN115375625B CN 115375625 B CN115375625 B CN 115375625B CN 202210877897 A CN202210877897 A CN 202210877897A CN 115375625 B CN115375625 B CN 115375625B
- Authority
- CN
- China
- Prior art keywords
- image
- value
- detected
- dimensional code
- crop
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000001514 detection method Methods 0.000 title claims abstract description 36
- 238000010586 diagram Methods 0.000 claims description 16
- 230000009286 beneficial effect Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20132—Image cropping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种二维码检测解码方法、系统、电子设备及介质,包括以下步骤:获取待检测图像;根据待检测图像,确定待检测图像中是否包含二维码;若待检测图像中包含二维码,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置;根据二维码在目标待检测图像中的位置和预设的第一系数,对目标待检测图像进行裁剪,得到包含二维码的目标图像区域;根据目标图像区域,确定二维码对应的解码信息。解决了现有待检测图像中二维码解码成功率低的问题。
Description
背景技术
二维码因其简单的使用方式和广泛的使用范围,在我们日常生活中出现的频率越来越高,但是因为二维码并不能被人类直接读取,需要使用特定的解码程序才能解读,因此需要提供清晰的带二维码的待检测图像,否则二维码的解码成功率很低,但是现有待检测图像中并非只包含了二维码,还包含了其他无用的部分,例如各种装饰图像等,妨碍了解码程序对二维码进行解读,导致二维码的解码成功率低。
发明内容
为了克服现有待检测图像中二维码解码成功率低的问题,本发明提供了一种二维码检测解码方法、系统、电子设备及介质。
第一方面,为了解决上述技术问题,本发明提供了一种二维码检测解码方法,包括以下步骤:
获取待检测图像;
根据待检测图像,确定待检测图像中是否包含二维码;
若待检测图像中包含二维码,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置;
根据二维码在目标待检测图像中的位置和预设的第一系数,对目标待检测图像进行裁剪,得到包含二维码的目标图像区域;
根据目标图像区域,确定二维码对应的解码信息。
本发明提供的一种二维码检测解码方法的有益效果是:首先确定待检测图像中是否包含二维码,如果包含二维码,则表明待检测图像为目标待检测图像,并确定二维码在目标待检测图像中的位置,根据二维码在目标待检测图像中的位置以及第一系数,对目标待检测图像进行裁剪,得到二维码的目标图像区域,最后根据目标图像区域得到解码信息,由于将目标待检测图像中二维码所在的区域裁剪下来,得到二维码的目标图像区域,因此避免了裁剪前目标待检测图像中存在其他干扰图像的问题,解决了目标待检测图像中存在干扰图像,妨碍了解码程序对二维码进行解读,导致二维码的解码成功率低。
在上述技术方案的基础上,本发明的一种二维码检测解码方法还可以做如下改进。
进一步,上述根据待检测图像,确定待检测图像中是否包含二维码,包括:
根据待检测图像,确定待检测图像对应的第一类别,第一类别表征了待检测图像中是否包含二维码;
根据待检测图像,确定待检测图像对应的第一类别,以及若待检测图像中包含二维码,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置是通过二维码检测模型实现的;
二维码检测模型包括依次连接的backbone层、head层和输出层,根据待检测图像,确定待检测图像对应的第一类别,以及若第一类别中包含二维码图像,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置,包括:
S21,将待检测图像输入backbone层,通过backbone层提取待检测图像的图像特征,得到分辨率各不相同的第一特征图、第二特征图和第三特征图;
S22,将第一特征图、第二特征图和第三特征图输入head层,通过head层分别对第一特征图、第二特征图和第三特征图进行分类,得到第一特征图对应的第二类别、第二特征图对应的第三类别和第三特征图对应的第四类别,第二类别表征了第一特征图中是否包含二维码,第三类别表征了第二特征图中是否包含二维码,第四类别表征了第三特征图中是否包含二维码;
S23,根据第二类别、第三类别和第四类别,确定第一类别;
S24,若待检测图像中包含二维码,将目标待检测图像输入输出层,通过输出层进行结果预测,得到第一向量,第一向量中包含第一元素值、第二元素值、第三元素值、第四元素值和第五元素值,第一元素值表征了第一类别,第二元素值表征了二维码左上角横坐标的数值,第三元素值表征了二维码左上角纵坐标的数值,第四元素值表征了二维码右下角横坐标的数值,第五元素值表征了二维码右下角纵坐标的数值,二维码在目标待检测图像中的位置包含第二元素值、第三元素值、第四元素值和第五元素值。
采用上述进一步方案的有益效果是:二维码检测模型通过待检测图像的第一类别判断待检测图像中是否包含二维码,当判断为包含二维码后,则输出二维码在目标待检测图像中的位置。
进一步,上述根据二维码在待检测图像中的位置和预设的第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,包括:
根据二维码在目标待检测图像中的位置,确定待检测图像中包含二维码的初始图像区域;
根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域。
采用上述进一步方案的有益效果是:先确定待检测图像中二维码的初始图像区域,再结合第一系数对待检测图像进行裁剪,得到二维码的目标图像区域。
进一步,该方法还包括:
获取待检测图像的宽对应的第一宽度值和高对应的第一高度值;
根据二维码在目标待检测图像中的位置,确定待检测图像中包含二维码的初始图像区域,包括:
根据第二元素值和第四元素值,通过第一公式,得到初始图像区域的第二宽度值,其中,第一公式为:
crop_w1=x2-x1;
其中,crop_w1表示第二宽度值,x2表示第四元素,x1表示第二元素值;
根据第三元素值和第五元素值,通过第二公式,得到初始图像区域的第二高度值,其中,第二公式为:
crop_h1=y2-y1;
其中,crop_h1表示第二高度值,y2表示第五元素值,y1表示第三元素值;
根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,包括:
根据第二宽度值和第一系数,通过第三公式,得到目标图像区域的左上角的第一横坐标值,其中,第三公式为:
xstart=max(x1-(crop_w1*margin/2),0);
其中,xstart表示第一横坐标值,margin表示第一系数,max(x1-(crop_w1*margin/2),0)表示比较x1-(crop_w1*margin/2)和0,取数值更大的作为xstart的结果;
根据第一横坐标值、第一宽度值和第一系数,通过第四公式,得到目标图像区域的第三宽度值,其中,第四公式为:
crop_w2=min((crop_w1*(1+margin)),ori_w-xstart);
其中,crop_w2表示第三宽度值,ori_w表示第一宽度值,min((crop_w1*(1+margin)),ori_w-xstart)表示比较crop_w1*(1+margin)和ori_w-xstart,取数值更小的作为crop_w2的结果;
根据第二高度值和第一系数,通过第五公式,得到目标图像区域的左上角的第一纵坐标值,其中,第五公式为:
ystart=max(y1-(crop_h1*margin/2),0);
其中,xstart表示第一纵坐标值,margin表示第一系数,max(y1-(crop_h1*margin/2),0)表示比较y1-(crop_h1*margin/2)和0,取数值更大的作为ystart的结果;
根据第一纵坐标值、第一高度值和第一系数,通过第六公式,得到目标图像区域的第三高度值,其中,第六公式为:
crop_h2=min((crop_h1*(1+margin)),ori_h-ystart);
其中,crop_h2表示第三高度值,ori_h-表示第一高度值,min((crop_h1*(1+margin)),ori_h-ystart)表示比较crop_h1*(1+margin)和ori_h-ystart,取数值更小的作为crop_w2的结果;
根据第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域。
采用上述进一步方案的有益效果是:通过第一公式和第二公式,得到初始图像的第二宽度值和第二高度值,通过第三公式和第五公式,得到目标图像区域左上角的第一横坐标值和第一纵坐标值,通过第四公式和第六公式,得到目标图像区域的第三宽度值和第三高度值,最后通过获取到的第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域。
进一步,第一系数包括第二系数和第三系数;根据第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域,包括:
将第二系数代入第一公式至第六公式,得到第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,根据第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,对待检测图像进行裁剪,得到第一待解码图像;
将第三系数代入第一公式至第六公式,得到第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,根据第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,对待检测图像进行裁剪,得到第二待解码图像,目标图像区域包含第一待解码图像和第二待解码图像;
根据目标图像区域,确定二维码对应的解码信息,包括:
将第一待解码图像或第二待解码图像作为当前图像;
确定当前图像是否存在对应的解码信息,若当前图像存在对应的解码信息,则将当前图像对应的解码信息作为二维码对应的解码信息;
若第一待解码图像和第二待解码图像均不存在对应的解码信息,还包括:
确定待检测图像中的二维码无对应的解码信息。
采用上述进一步方案的有益效果是:采用两种不同系数(第二系数和第三系数)分别裁剪待检测图像得到两个目标图像区域(第一待解码图像和第二待解码图像),避免只采用一种系数(第二系数或第三系数)时对目标图像区域裁剪过度,造成待检测图像中二维码部分被裁剪掉,导致无法识别二维码信息。
进一步,确定当前图像是否存在对应的解码信息,包括:
S51,使用ZXing解码库处理当前图像,确定当前图像是否有对应的解码信息输出,若无输出,则执行S52,若输出,则结束,其中,ZXing解码库为解析二维码图像中是否包含解码信息;
S52,使用ZBar解码库处理当前图像,确定当前图像是否有对应的解码信息输出,若无输出,则执行S53,若输出,则结束,其中,ZBar解码库为解析二维码图像中是否包含解码信息;
S53,对当前图像进行二值化处理,得到第三待解码图像,将第三待解码图像作为新的当前图像,重复S51-S52,确定是否存在新的当前图像对应的解码信息,若不存在,执行S54,若存在,则结束;
S54,对第三待解码图像进行去噪处理,得到第四待解码图像,确定ZBar解码库解析第四待解码图像后是否有对应解码信息输出,若输出,则结束。
采用上述进一步方案的有益效果是:采用ZXing解码库和ZBar解码库对当前图像进行解码,得到解码信息,如果未获得解码信息,则采用二值化处理当前图像,得到第三待解码图像,再通过ZXing解码库和ZBar解码库对第三待解码图像进行解码,如果还未获得解码信息,则通过去噪处理第三待解码图像,得到第四待解码图像,最后通过ZBar解码库对第四待解码图像进行解码。
第二方面,本发明提供了一种二维码检测解码系统,包括:
获取模块,用于获取待检测图像;
第一确定模块,用于根据待检测图像,确定待检测图像中是否包含二维码;
第二确定模块,用于若待检测图像中包含二维码,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置;
第三确定模块,用于根据二维码在目标待检测图像中的位置和预设的第一系数,对目标待检测图像进行裁剪,得到包含二维码的目标图像区域;
第四确定模块,用于根据目标图像区域,确定二维码对应的解码信息。
本发明提供的一种二维码检测解码系统的有益效果是:首先确定待检测图像中是否包含二维码,如果包含二维码,则表明待检测图像为目标待检测图像,并确定二维码在目标待检测图像中的位置,根据二维码在目标待检测图像中的位置以及第一系数,对目标待检测图像进行裁剪,得到二维码的目标图像区域,最后根据目标图像区域得到解码信息,由于将目标待检测图像中二维码所在的区域裁剪下来,得到二维码的目标图像区域,因此避免了裁剪前目标待检测图像中存在其他干扰图像的问题,解决了目标待检测图像中存在干扰图像,妨碍了解码程序对二维码进行解读,导致二维码的解码成功率低。
第三方面,本发明还提供了一种电子设备,包括存储器、处理器及存储在存储器上并在处理器上运行的程序,处理器执行程序时实现如上述的一种二维码检测解码方法的步骤。
第四方面,本发明还提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在终端设备上运行时,使得终端设备执行如上述的一种二维码检测解码方法的步骤。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面结合附图和实施例对本发明作进一步说明。
图1为本发明实施例的一种二维码检测解码方法的流程示意图;
图2为本发明实施例的一种二维码检测解码系统的结构示意图;
图3为待检测图像;
图4为第二系数下的第一待解码图像;
图5为第三系数下的第二待解码图像。
具体实施方式
下列实施例是对本发明的进一步解释和补充,对本发明不构成任何限制。
以下结合附图描述本发明实施例的一种二维码检测解码系统。
如图1所示,本发明实施例的一种二维码检测解码方法,包括以下步骤:
S1,获取待检测图像。
S2,根据待检测图像,确定待检测图像中是否包含二维码。
S3,若待检测图像中包含二维码,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置。
可选的,上述S2-S3是通过二维码检测模型实现的。
可选的,根据待检测图像,确定待检测图像中是否包含二维码,包括:
根据待检测图像,确定待检测图像对应的第一类别,第一类别表征了待检测图像中是否包含二维码。
本实施例中,第一类别为二维码检测模型输出的分类结果,若分类结果为1,则表明待检测图像中包含二维码,若分类结果为0,则表明待检测图像中不包含二维码。
另外,若二维码检测模型通过分类结果判断待检测图像中是否包含二维码,若包含二维码即分类结果为1,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置。
可选的,二维码检测模型包括依次连接的backbone层、head层和输出层,根据待检测图像,确定待检测图像对应的第一类别,以及若第一类别中包含二维码图像,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置,包括:
S21,将待检测图像输入backbone层,通过backbone层提取待检测图像的图像特征,得到分辨率各不相同的第一特征图、第二特征图和第三特征图;
其中,从待检测图像中提取出分辨率各不相同的第一特征图、第二特征图和第三特征图的目的在于提高二维码的识别率,具体过程参考S23。
S22,将第一特征图、第二特征图和第三特征图输入head层,通过head层分别对第一特征图、第二特征图和第三特征图进行分类,得到第一特征图对应的第二类别、第二特征图对应的第三类别和第三特征图对应的第四类别,第二类别表征了第一特征图中是否包含二维码,第三类别表征了第二特征图中是否包含二维码,第四类别表征了第三特征图中是否包含二维码;
S23,根据第二类别、第三类别和第四类别,确定第一类别;
其中,第二类别、第三类别和第四类别的分类结果与第一类别相同,分为1和0,若分类结果为1,则表明待检测图像中包含二维码,若分类结果为0,则表明待检测图像中不包含二维码,只要其中一个类别(第二类别、第三类别和第四类别)的分类结果是1,则表明待检测图像中包含了二维码,则二维码检测模型输出的第一类别的分类结果为1。
S24,若待检测图像中包含二维码,将目标待检测图像输入输出层,通过输出层进行结果预测,得到第一向量,第一向量中包含第一元素值、第二元素值、第三元素值、第四元素值和第五元素值,第一元素值表征了第一类别,第二元素值表征了二维码左上角横坐标的数值,第三元素值表征了二维码左上角纵坐标的数值,第四元素值表征了二维码右下角横坐标的数值,第五元素值表征了二维码右下角纵坐标的数值,二维码在目标待检测图像中的位置包含第二元素值、第三元素值、第四元素值和第五元素值;
其中,第一向量中还可能包含冗余信息,为了去除冗余信息,可以在输出层中增加NMS非极大值抑制算法,从而去掉第一向量中的冗余信息。
S4,根据二维码在目标待检测图像中的位置和预设的第一系数,对目标待检测图像进行裁剪,得到包含二维码的目标图像区域。
其中,第一系数的作用是将二维码区域扩大,将除二维码之外的无用图案从待检测图像中去除。
可选的,根据二维码在待检测图像中的位置和预设的第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,包括:
根据二维码在目标待检测图像中的位置,确定待检测图像中包含二维码的初始图像区域;
根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域。
可选的,该方法还包括:
获取待检测图像的宽对应的第一宽度值和高对应的第一高度值;
根据二维码在目标待检测图像中的位置,确定待检测图像中包含二维码的初始图像区域,包括:
根据第二元素值和第四元素值,通过第一公式,得到初始图像区域的第二宽度值,其中,第一公式为:
crop_w1=x2-x1;
其中,crop_w1表示第二宽度值,x2表示第四元素,x1表示第二元素值;
根据第三元素值和第五元素值,通过第二公式,得到初始图像区域的第二高度值,其中,第二公式为:
crop_h1=y2-y1;
其中,crop_h1表示第二高度值,y2表示第五元素值,y1表示第三元素值;
根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,包括:
根据第二宽度值和第一系数,通过第三公式,得到目标图像区域的左上角的第一横坐标值,其中,第三公式为:
xstart=max(x1-(crop_w1*margin/2),0);
其中,xstart表示第一横坐标值,margin表示第一系数,max(x1-(crop_w1*margin/2),0)表示比较x1-(crop_w1*margin/2)和0,取数值更大的作为xstart的结果;
根据第一横坐标值、第一宽度值和第一系数,通过第四公式,得到目标图像区域的第三宽度值,其中,第四公式为:
crop_w2=min((crop_w1*(1+margin)),ori_w-xstart);
其中,crop_w2表示第三宽度值,ori_w表示第一宽度值,min((crop_w1*(1+margin)),ori_w-xstart)表示比较crop_w1*(1+margin)和ori_w-xstart,取数值更小的作为crop_w2的结果;
根据第二高度值和第一系数,通过第五公式,得到目标图像区域的左上角的第一纵坐标值,其中,第五公式为:
ystart=max(y1-(crop_h1*margin/2),0);
其中,xstart表示第一纵坐标值,margin表示第一系数,max(y1-(crop_h1*margin/2),0)表示比较y1一(crop_h1*margin/2)和0,取数值更大的作为ystart的结果;
根据第一纵坐标值、第一高度值和第一系数,通过第六公式,得到目标图像区域的第三高度值,其中,第六公式为:
crop_h2=min((crop_h1*(1+margin)),ori_h-ystart);
其中,crop_h2表示第三高度值,ori_h-表示第一高度值,min((crop_h1*(1+margin)),ori_h-ystart)表示比较crop_h1*(1+margin)和ori_h-ystart,取数值更小的作为crop_w2的结果;
根据第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域。
可选的,对待检测图像进行裁剪的过程如下:
将第一横坐标值和第一纵坐标值作为待检测图像在左上角的起始端点,然后根据第三宽度值和第三高度值,从起始端点开始向待检测图像的右下角形成一个矩形,将待检测图像上矩形之外的区域裁剪掉即为目标图像区域。
可选的,第一系数包括第二系数和第三系数;根据第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域,包括:
将第二系数代入第一公式至第六公式,得到第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,根据第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,对待检测图像进行裁剪,得到第一待解码图像;
将第三系数代入第一公式至第六公式,得到第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,根据第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,对待检测图像进行裁剪,得到第二待解码图像,目标图像区域包含第一待解码图像和第二待解码图像。
需说明的是,第一系数包含但不限于第二系数和第三系数,本实施例可选用其他的第四系数、第五系数等得到更多的待解码图像,以提高待检测图像的二维码解码准确性,为了提高效率,本实施例只采用第二系数和第三系数。
S5,根据目标图像区域,确定二维码对应的解码信息。
可选的,将第一待解码图像或第二待解码图像作为当前图像;
确定当前图像是否存在对应的解码信息,若当前图像存在对应的解码信息,则将当前图像对应的解码信息作为二维码对应的解码信息;
可选的,可先将第一待解码图像作为当前图像,如果当前图像对应不存在解码信息,则再将第二待解码图像作为当前图像。
若第一待解码图像和第二待解码图像均不存在对应的解码信息,还包括:
确定待检测图像中的二维码无对应的解码信息。
可选的,确定当前图像是否存在对应的解码信息,包括:
S51,使用ZXing解码库处理所述当前图像,确定所述当前图像是否有对应的解码信息输出,若无输出,则执行S52,若输出,则结束,其中,所述ZXing解码库为解析二维码图像中是否包含解码信息;
S52,使用ZBar解码库处理所述当前图像,确定所述当前图像是否有对应的解码信息输出,若无输出,则执行S53,若输出,则结束,其中,所述ZBar解码库为解析二维码图像中是否包含解码信息;
S53,对当前图像进行二值化处理,得到第三待解码图像,将第三待解码图像作为新的当前图像,重复S51-S52,确定是否存在新的当前图像对应的解码信息,若不存在,执行S54,若存在,则结束;
S54,对第三待解码图像进行去噪处理,得到第四待解码图像,确定ZBar解码库解析第四待解码图像后是否有对应的解码信息输出,若输出,则结束。
本实施例中,对当前图像进行二值化处理可采用自适应二值化OTSU算法。
本实施例中,对第三待解码图像进行去噪处理可采用图像的开运算,其中,开运算的算子选择3*3。
如图2所示,本发明实施例的一种二维码检测解码系统,包括:
获取模块202,用于获取待检测图像;
第一确定模块203,用于根据待检测图像,确定待检测图像中是否包含二维码;
第二确定模块204,用于若待检测图像中包含二维码,则将待检测图像确定为目标待检测图像,并确定二维码在目标待检测图像中的位置;
第三确定模块205,用于根据二维码在目标待检测图像中的位置和预设的第一系数,对目标待检测图像进行裁剪,得到包含二维码的目标图像区域;
第四确定模块206,用于根据目标图像区域,确定二维码对应的解码信息。
可选的,第二确定模块204通过第一单元获得确定待检测图像中是否包含二维码,并确定二维码在目标待检测图像中的位置,其中,第一单元具体用于:
S21,将待检测图像输入backbone层,通过backbone层提取待检测图像的图像特征,得到分辨率各不相同的第一特征图、第二特征图和第三特征图;
S22,将第一特征图、第二特征图和第三特征图输入head层,通过head层分别对第一特征图、第二特征图和第三特征图进行分类,得到第一特征图对应的第二类别、第二特征图对应的第三类别和第三特征图对应的第四类别,第二类别表征了第一特征图中是否包含二维码,第三类别表征了第二特征图中是否包含二维码,第四类别表征了第三特征图中是否包含二维码;
S23,根据第二类别、第三类别和第四类别,确定第一类别;
S24,若待检测图像中包含二维码,将目标待检测图像输入输出层,通过输出层进行结果预测,得到第一向量,第一向量中包含第一元素值、第二元素值、第三元素值、第四元素值和第五元素值,第一元素值表征了第一类别,第二元素值表征了二维码左上角横坐标的数值,第三元素值表征了二维码左上角纵坐标的数值,第四元素值表征了二维码右下角横坐标的数值,第五元素值表征了二维码右下角纵坐标的数值,二维码在目标待检测图像中的位置包含第二元素值、第三元素值、第四元素值和第五元素值。
可选的,第三确定模块205包括:
裁剪模块,用于根据二维码在目标待检测图像中的位置,确定待检测图像中包含二维码的初始图像区域,并根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域。
可选的,裁剪模块通过第二单元确定待检测图像中包含二维码的初始图像区域,并根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,其中,第二单元,具体用于:
获取待检测图像的宽对应的第一宽度值和高对应的第一高度值;
根据第二元素值和第四元素值,通过第一公式,得到初始图像区域的第二宽度值,其中,第一公式为:
crop_w1=x2-x1;
其中,crop_w1表示第二宽度值,x2表示第四元素,x1表示第二元素值;
根据第三元素值和第五元素值,通过第二公式,得到初始图像区域的第二高度值,其中,第二公式为:
crop_h1=y2-y1;
其中,crop_h1表示第二高度值,y2表示第五元素值,y1表示第三元素值;
根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,包括:
根据第二宽度值和第一系数,通过第三公式,得到目标图像区域的左上角的第一横坐标值,其中,第三公式为:
xstart=max(x1-(crop_w1*margin/2),0);
其中,xstart表示第一横坐标值,margin表示第一系数,max(x1-(crop_w1*margin/2),0)表示比较x1-(crop_w1*margin/2)和0,取数值更大的作为xstart的结果;
根据第一横坐标值、第一宽度值和第一系数,通过第四公式,得到目标图像区域的第三宽度值,其中,第四公式为:
crop_w2=min((crop_w1*(1+margin)),ori_w-xstart);
其中,crop_w2表示第三宽度值,ori_w表示第一宽度值,min((crop_w1*(1+margin)),ori_w-xstart)表示比较crop_w1*(1+margin)和ori_w-xstart,取数值更小的作为crop_w2的结果;
根据第二高度值和第一系数,通过第五公式,得到目标图像区域的左上角的第一纵坐标值,其中,第五公式为:
ystart=max(y1-(crop_h1*margin/2),0);
其中,xstart表示第一纵坐标值,margin表示第一系数,max(y1-(crop_h1*margin/2),0)表示比较y1-(crop_h1*margin/2)和0,取数值更大的作为ystart的结果;
根据第一纵坐标值、第一高度值和第一系数,通过第六公式,得到目标图像区域的第三高度值,其中,第六公式为:
crop_h2=min((crop_h1*(1+margin)),ori_h-ystart);
其中,crop_h2表示第三高度值,ori_h-表示第一高度值,min((crop_h1*(1+margin)),ori_h-ystart)表示比较crop_h1*(1+margin)和ori_h-ystart,取数值更小的作为crop_w2的结果;
根据第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域。
可选的,裁剪模块还包括第二系数模块和第三系数模块,其中:
第一系数模块,用于将第二系数代入第一公式至第六公式,得到第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,根据第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,对待检测图像进行裁剪,得到第一待解码图像。
第二系数模块,用于将第三系数代入第一公式至第六公式,得到第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,根据第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,对待检测图像进行裁剪,得到第二待解码图像,目标图像区域包含第一待解码图像和第二待解码图像。
可选的,第四确定模块206通过第三单元确定二维码对应的解码信息,其中,第三单元,具体用于:
将第一待解码图像或第二待解码图像作为当前图像;
确定当前图像是否存在对应的解码信息,若当前图像存在对应的解码信息,则将当前图像对应的解码信息作为二维码对应的解码信息;
若第一待解码图像和第二待解码图像均不存在对应的解码信息,还包括:
确定待检测图像中的二维码无对应的解码信息。
可选的,第四确定模块206还包括:
解码模块,用于通过第四单元,确定当前图像是否存在对应的解码信息,其中,第四单元,具体用于:
S51,使用ZXing解码库处理所述当前图像,确定所述当前图像是否有对应的解码信息输出,若无输出,则执行S52,若输出,则结束,其中,所述ZXing解码库为解析二维码图像中是否包含解码信息;
S52,使用ZBar解码库处理所述当前图像,确定所述当前图像是否有对应的解码信息输出,若无输出,则执行S53,若输出,则结束,其中,所述ZBar解码库为解析二维码图像中是否包含解码信息;
S53,对当前图像进行二值化处理,得到第三待解码图像,将第三待解码图像作为新的当前图像,重复S51-S52,确定是否存在新的当前图像对应的解码信息,若不存在,执行S54,若存在,则结束;
S54,对第三待解码图像进行去噪处理,得到第四待解码图像,确定ZBar解码库解析第四待解码图像后是否有对应的解码信息输出,若输出,则结束。
本实施例的一个具体应用:
如图3所示,获取待检测图像;
将待检测图像输入二维码检测模型,输出第一向量,其中,第一元素值为1,第二元素值为x1,第三元素值为y1,第四元素值为x2,第五元素值为y2;
预设第二系数为0.1,并获取到待检测图像的第一宽度值为ori_w,第一高度值为ori_h,通过第一公式至第六公式,得到第二系数下的第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,根据第二系数下的第三宽度值、第三高度值、第一横坐标值和第一纵坐标值对待检测图像进行裁剪,得到如图4所示的第一待解码图像;
预设第三系数为0.25,并获取到待检测图像的第一宽度值为ori_w,第一高度值为ori_h,通过第一公式至第六公式,得到第三系数下的第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,根据第三系数下的第三宽度值、第三高度值、第一横坐标值和第一纵坐标值对待检测图像进行裁剪,得到如图5所示的第二待解码图像;
对第一待解码图像作为当前图像,若当前图像存在对应的解码信息,则将当前图像对应的解码信息作为二维码对应的解码信息,若不存在对应的解码信息,则将第二待解码图像作为当前图像,若当前图像存在对应的解码信息,则将当前图像对应的解码信息作为二维码对应的解码信息,若不存在对应的解码信息,则确定待检测图像中的二维码无对应的解码信息。
本发明实施例的一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的程序,所述处理器执行所述程序时实现上述一种二维码检测解码方法的部分或全部步骤。
其中,电子设备可以选用电脑,相对应地,其程序为电脑软件,且上述关于本发明的一种电子设备中的各参数和步骤,可参考上文中一种二维码检测解码方法的实施例中的各参数和步骤,在此不做赘述。
所属技术领域的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。计算机可读存储介质例如可以是但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (6)
1.一种二维码检测解码方法,其特征在于,包括以下步骤:
获取待检测图像;
根据待检测图像,确定所述待检测图像中是否包含二维码;
若所述待检测图像中包含二维码,则将所述待检测图像确定为目标待检测图像,并确定所述二维码在所述目标待检测图像中的位置;
根据所述二维码在所述目标待检测图像中的位置和预设的第一系数,对所述目标待检测图像进行裁剪,得到包含所述二维码的目标图像区域;
根据所述目标图像区域,确定所述二维码对应的解码信息;
所述根据待检测图像,确定所述待检测图像中是否包含二维码,包括:
根据所述待检测图像,确定所述待检测图像对应的第一类别,所述第一类别表征了所述待检测图像中是否包含二维码;
所述根据所述待检测图像,确定所述待检测图像对应的第一类别,以及若所述待检测图像中包含二维码,则将所述待检测图像确定为目标待检测图像,并确定所述二维码在所述目标待检测图像中的位置是通过二维码检测模型实现的;
所述二维码检测模型包括依次连接的backbone层、head层和输出层,所述若所述待检测图像中包含二维码,则将所述待检测图像确定为目标待检测图像,并确定所述二维码在所述目标待检测图像中的位置,包括:
S21,将所述待检测图像输入backbone层,通过backbone层提取所述待检测图像的图像特征,得到分辨率各不相同的第一特征图、第二特征图和第三特征图;
S22,将所述第一特征图、所述第二特征图和所述第三特征图输入head层,通过所述head层分别对所述第一特征图、所述第二特征图和所述第三特征图进行分类,得到所述第一特征图对应的第二类别、所述第二特征图对应的第三类别和所述第三特征图对应的第四类别,所述第二类别表征了所述第一特征图中是否包含二维码,所述第三类别表征了所述第二特征图中是否包含二维码,所述第四类别表征了所述第三特征图中是否包含二维码;
S23,根据所述第二类别、所述第三类别和所述第四类别,确定所述第一类别;
S24,若所述待检测图像中包含二维码,将所述目标待检测图像输入输出层,通过所述输出层进行结果预测,得到第一向量,所述第一向量中包含第一元素值、第二元素值、第三元素值、第四元素值和第五元素值,所述第一元素值表征了所述第一类别,所述第二元素值表征了所述二维码左上角横坐标的数值,所述第三元素值表征了所述二维码左上角纵坐标的数值,所述第四元素值表征了所述二维码右下角横坐标的数值,所述第五元素值表征了所述二维码右下角纵坐标的数值,所述二维码在所述目标待检测图像中的位置包含所述第二元素值、第三元素值、第四元素值和第五元素值;
所述根据所述二维码在所述目标待检测图像中的位置和预设的第一系数,对所述目标待检测图像进行裁剪,得到包含所述二维码的目标图像区域,包括:
根据所述二维码在所述目标待检测图像中的位置,确定所述待检测图像中包含所述二维码的初始图像区域;
根据所述初始图像区域和所述第一系数,对所述待检测图像进行裁剪,得到包含所述二维码的目标图像区域;
该方法还包括:
获取所述待检测图像的宽对应的第一宽度值和高对应的第一高度值;
所述根据所述二维码在所述目标待检测图像中的位置,确定所述待检测图像中包含所述二维码的初始图像区域,包括:
根据所述第二元素值和所述第四元素值,通过第一公式,得到所述初始图像区域的第二宽度值,其中,所述第一公式为:
crop_w1=x2-x1;
其中,crop_w1表示第二宽度值,x2表示第四元素,x1表示第二元素值;
根据所述第三元素值和所述第五元素值,通过第二公式,得到所述初始图像区域的第二高度值,其中,所述第二公式为:
crop_h1=y2-y1;
其中,crop_h1表示第二高度值,y2表示第五元素值,y1表示第三元素值;
所述根据所述初始图像区域和所述第一系数,对所述待检测图像进行裁剪,得到包含所述二维码的目标图像区域,包括:
根据所述第二宽度值和所述第一系数,通过第三公式,得到所述目标图像区域的左上角的第一横坐标值,其中,所述第三公式为:
xstart=max(x1-(crop_w1*margin/2),0);
其中,xstart表示第一横坐标值,margin表示第一系数,max(x1-(crop_w1*margin/2),0)表示比较x1-(crop_w1*margin/2)和0,取数值更大的作为xstart的结果;
根据所述第一横坐标值、所述第一宽度值和所述第一系数,通过第四公式,得到所述目标图像区域的第三宽度值,其中,所述第四公式为:
crop_w2=min((crop_w1*(1+margin)),ori_w-xstart);
其中,crop_w2表示第三宽度值,ori_w表示第一宽度值,min((crop_w1*(1+margin)),ori_w-xstart)表示比较crop_w1*(1+margin)和ori_w-xstart,取数值更小的作为crop_w2的结果;
根据所述第二高度值和所述第一系数,通过第五公式,得到所述目标图像区域的左上角的第一纵坐标值,其中,所述第五公式为:
ystart=max(y1-(crop_h1*margin/2),0);
其中,ystart表示第一纵坐标值,margin表示第一系数,max(y1-(crop_h1*margin/2),0)表示比较y1-(crop_h1*margin/2)和0,取数值更大的作为ystart的结果;
根据所述第一纵坐标值、所述第一高度值和所述第一系数,通过第六公式,得到所述目标图像区域的第三高度值,其中,所述第六公式为:
crop_h2=min((crop_h1*(1+margin)),ori_h-ystart);
其中,crop_h2表示第三高度值,ori_h表示第一高度值,min((crop_h1*(1+margin)),ori_h-ystart)表示比较crop_h1*(1+margin)和ori_h-ystart,取数值更小的作为crop_h2的结果;
根据所述第三宽度值、所述第三高度值、所述第一横坐标值和所述第一纵坐标值,对所述待检测图像进行裁剪,得到所述目标图像区域。
2.根据权利要求1所述的方法,其特征在于,所述第一系数包括第二系数和第三系数;所述根据所述第三宽度值、所述第三高度值、所述第一横坐标值和所述第一纵坐标值,对所述待检测图像进行裁剪,得到所述目标图像区域,包括:
将所述第二系数代入第一公式至第六公式,得到第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,根据所述第四宽度值、第四高度值、第二横坐标值和第二纵坐标值,对所述待检测图像进行裁剪,得到第一待解码图像;
将所述第三系数代入第一公式至第六公式,得到第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,根据所述第五宽度值、第五高度值、第三横坐标值和第三纵坐标值,对所述待检测图像进行裁剪,得到第二待解码图像,所述目标图像区域包含所述第一待解码图像和所述第二待解码图像;
所述根据所述目标图像区域,确定所述二维码对应的解码信息,包括:
将所述第一待解码图像或所述第二待解码图像作为当前图像;
确定所述当前图像是否存在对应的解码信息,若所述当前图像存在对应的解码信息,则将所述当前图像对应的解码信息作为所述二维码对应的解码信息;
若所述第一待解码图像和所述第二待解码图像均不存在对应的解码信息,还包括:
确定所述待检测图像中的二维码无对应的解码信息。
3.根据权利要求2所述的方法,其特征在于,所述确定所述当前图像是否存在对应的解码信息,包括:
S51,使用ZXing解码库处理所述当前图像,确定所述当前图像是否有对应的解码信息输出,若无输出,则执行S52,若输出,则结束,其中,所述ZXing解码库为解析二维码图像中是否包含解码信息;
S52,使用ZBar解码库处理所述当前图像,确定所述当前图像是否有对应的解码信息输出,若无输出,则执行S53,若输出,则结束,其中,所述ZBar解码库为解析二维码图像中是否包含解码信息;
S53,对所述当前图像进行二值化处理,得到第三待解码图像,将所述第三待解码图像作为新的当前图像,重复S51-S52,确定是否存在所述新的当前图像对应的解码信息,若不存在,执行S54,若存在,则结束;
S54,对所述第三待解码图像进行去噪处理,得到第四待解码图像,确定ZBar解码库解析第四待解码图像后是否有对应解码信息输出,若输出,则结束。
4.一种二维码检测解码系统,其特征在于,包括:
获取模块,用于获取待检测图像;
第一确定模块,用于根据待检测图像,确定所述待检测图像中是否包含二维码;
第二确定模块,用于若所述待检测图像中包含二维码,则将所述待检测图像确定为目标待检测图像,并确定所述二维码在所述目标待检测图像中的位置;
第三确定模块,用于根据所述二维码在所述目标待检测图像中的位置和预设的第一系数,对所述目标待检测图像进行裁剪,得到包含所述二维码的目标图像区域;
第四确定模块,用于根据所述目标图像区域,确定所述二维码对应的解码信息;
所述第一确定模块具体用于:
根据所述待检测图像,确定所述待检测图像对应的第一类别,所述第一类别表征了所述待检测图像中是否包含二维码;
所述第二确定模块是通过第一单元确定二维码在目标待检测图像中的位置,其中,所述第一单元具体用于:
S21,将所述待检测图像输入backbone层,通过backbone层提取所述待检测图像的图像特征,得到分辨率各不相同的第一特征图、第二特征图和第三特征图;
S22,将所述第一特征图、所述第二特征图和所述第三特征图输入head层,通过所述head层分别对所述第一特征图、所述第二特征图和所述第三特征图进行分类,得到所述第一特征图对应的第二类别、所述第二特征图对应的第三类别和所述第三特征图对应的第四类别,所述第二类别表征了所述第一特征图中是否包含二维码,所述第三类别表征了所述第二特征图中是否包含二维码,所述第四类别表征了所述第三特征图中是否包含二维码;
S23,根据所述第二类别、所述第三类别和所述第四类别,确定所述第一类别;
S24,若所述待检测图像中包含二维码,将所述目标待检测图像输入输出层,通过所述输出层进行结果预测,得到第一向量,所述第一向量中包含第一元素值、第二元素值、第三元素值、第四元素值和第五元素值,所述第一元素值表征了所述第一类别,所述第二元素值表征了所述二维码左上角横坐标的数值,所述第三元素值表征了所述二维码左上角纵坐标的数值,所述第四元素值表征了所述二维码右下角横坐标的数值,所述第五元素值表征了所述二维码右下角纵坐标的数值,所述二维码在所述目标待检测图像中的位置包含所述第二元素值、第三元素值、第四元素值和第五元素值;
所述第三确定模块包括:
裁剪模块,用于根据所述二维码在所述目标待检测图像中的位置,确定所述待检测图像中包含所述二维码的初始图像区域,并根据所述初始图像区域和所述第一系数,对所述待检测图像进行裁剪,得到包含所述二维码的目标图像区域;
所述裁剪模块通过第二单元确定待检测图像中包含二维码的初始图像区域,并根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,其中,第二单元,具体用于:
获取待检测图像的宽对应的第一宽度值和高对应的第一高度值;
根据第二元素值和第四元素值,通过第一公式,得到初始图像区域的第二宽度值,其中,第一公式为:
crop_w1=x2-x1:
其中,crop_w1表示第二宽度值,x2表示第四元素,x1表示第二元素值;
根据第三元素值和第五元素值,通过第二公式,得到初始图像区域的第二高度值,其中,第二公式为:
crop_h1=y2-y1;
其中,crop_h1表示第二高度值,y2表示第五元素值,y1表示第三元素值;
根据初始图像区域和第一系数,对待检测图像进行裁剪,得到包含二维码的目标图像区域,包括:
根据第二宽度值和第一系数,通过第三公式,得到目标图像区域的左上角的第一横坐标值,其中,第三公式为:
xstart=max(x1-(crop_w1*margin/2),0);
其中,xstart表示第一横坐标值,margin表示第一系数,max(x1-(crop_w1*margin/2),0)表示比较x1-(crop_w1*margin/2)和0,取数值更大的作为xstart的结果;
根据第一横坐标值、第一宽度值和第一系数,通过第四公式,得到目标图像区域的第三宽度值,其中,第四公式为:
crop_w2=min((crop_w1*(1+margin)),ori_w-xstart);
其中,crop_w2表示第三宽度值,ori_w表示第一宽度值,min((crop_w1*(1+margin)),ori_w-xstart)表示比较crop_w1*(1+margin)和ori_w-xstart,取数值更小的作为crop_w2的结果;
根据第二高度值和第一系数,通过第五公式,得到目标图像区域的左上角的第一纵坐标值,其中,第五公式为:
ystart=max(y1-(crop_h1*margin/2),0);
其中,ystart表示第一纵坐标值,margin表示第一系数,max(y1-(crop_h1*margin/2),0)表示比较y1-(crop_h1*margin/2)和0,取数值更大的作为ystart的结果;
根据第一纵坐标值、第一高度值和第一系数,通过第六公式,得到目标图像区域的第三高度值,其中,第六公式为:
crop_h2=min((crop_h1*(1+margin)),ori_h-ystart);
其中,crop_h2表示第三高度值,ori_h表示第一高度值,min((crop_h1*(1+margin)),ori_h-ystart)表示比较crop_h1*(1+margin)和ori_h-ystart,取数值更小的作为crop_h2的结果;
根据第三宽度值、第三高度值、第一横坐标值和第一纵坐标值,对待检测图像进行裁剪,得到目标图像区域。
5.一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述的一种二维码检测解码方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1至3任一项所述的一种二维码检测解码方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210877897.0A CN115375625B (zh) | 2022-07-25 | 2022-07-25 | 一种二维码检测解码方法、系统、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210877897.0A CN115375625B (zh) | 2022-07-25 | 2022-07-25 | 一种二维码检测解码方法、系统、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115375625A CN115375625A (zh) | 2022-11-22 |
CN115375625B true CN115375625B (zh) | 2023-04-18 |
Family
ID=84064459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210877897.0A Active CN115375625B (zh) | 2022-07-25 | 2022-07-25 | 一种二维码检测解码方法、系统、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115375625B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229232B (zh) * | 2016-12-21 | 2021-02-19 | 腾讯科技(深圳)有限公司 | 批量扫描二维码的方法和批量扫描二维码的装置 |
CN112651256A (zh) * | 2019-10-12 | 2021-04-13 | 大族激光科技产业集团股份有限公司 | 二维码识别方法、装置、计算机设备及存储介质 |
CN111652011B (zh) * | 2020-02-20 | 2023-08-04 | 中国银联股份有限公司 | 一种读取二维码的方法和装置 |
CN111950318A (zh) * | 2020-08-12 | 2020-11-17 | 上海连尚网络科技有限公司 | 一种二维码图像的识别方法、设备及存储介质 |
EP3961477B1 (en) * | 2020-08-24 | 2023-06-07 | Saint-Gobain Glass France | Method for detecting and reading a matrix code marked on a glass substrate |
CN113449535A (zh) * | 2021-07-15 | 2021-09-28 | 中国银行股份有限公司 | 一种二维码扫描识别的优化处理方法及系统 |
-
2022
- 2022-07-25 CN CN202210877897.0A patent/CN115375625B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115375625A (zh) | 2022-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9940719B2 (en) | Alignment of an ordered stack of images from a specimen | |
US8463029B2 (en) | Face and head detection | |
US8189946B2 (en) | Image processing apparatus and method thereof for detecting and removing noise in decoded images | |
CN109583299B (zh) | 电子装置、证件识别方法及存储介质 | |
CN103400099A (zh) | 终端和二维码识别方法 | |
CN1822027A (zh) | 灰度字符的精确分割装置及方法 | |
JP2003030672A (ja) | 帳票認識装置、方法、プログラムおよび記憶媒体 | |
US7506817B2 (en) | Location of machine readable codes in compressed representations | |
CN115375625B (zh) | 一种二维码检测解码方法、系统、电子设备及介质 | |
CN111652011B (zh) | 一种读取二维码的方法和装置 | |
CN111080665B (zh) | 图像边框识别方法、装置、设备和计算机存储介质 | |
US20120144304A1 (en) | System and method for reducing artifacts in images | |
JP4931215B2 (ja) | 画像処理装置及びその方法 | |
JP3215163B2 (ja) | 罫線識別方法及び領域識別方法 | |
JP6782825B1 (ja) | 通知判定装置、通知判定方法及び通知判定プログラム | |
CN112364835A (zh) | 视频信息取帧方法、装置、设备及存储介质 | |
JPH07129778A (ja) | 画像監視装置 | |
JP3417635B2 (ja) | 侵入物体認識方法 | |
CN112215783A (zh) | 一种图像噪点识别方法、装置、存储介质及设备 | |
CN112581549A (zh) | 图片溯源方法、存储介质、电子设备和主机设备 | |
CN112712021A (zh) | 基于感知哈希与连通域分析算法的粮面异常状态识别方法 | |
JP2003123023A (ja) | 文字認識方法及び文字認識装置、文字認識プログラム並びにそのプログラムを記録した記録媒体 | |
JP5180911B2 (ja) | ノイズ除去制御装置及びノイズ除去制御方法 | |
JP2723075B2 (ja) | 表認識装置及び表枠線の途切れ補間方法 | |
JP2023168636A (ja) | コンピュータプログラム、および、訓練装置 |
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 |