[发明专利]一种二维码检测解码方法、系统、电子设备及介质有效
申请号: | 202210877897.0 | 申请日: | 2022-07-25 |
公开(公告)号: | CN115375625B | 公开(公告)日: | 2023-04-18 |
发明(设计)人: | 程海峰 | 申请(专利权)人: | 北京数美时代科技有限公司;数美天下(北京)科技有限公司 |
主分类号: | G06T7/00 | 分类号: | G06T7/00;G06T7/10;G06T7/70;G06V10/40;G06V10/764;G06T5/00 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 孟仕杰 |
地址: | 100012 北京市朝阳区来广营西路*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 二维码 检测 解码 方法 系统 电子设备 介质 | ||
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的结果;
根据所述第三宽度值、所述第三高度值、所述第一横坐标值和所述第一纵坐标值,对所述待检测图像进行裁剪,得到所述目标图像区域。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京数美时代科技有限公司;数美天下(北京)科技有限公司,未经北京数美时代科技有限公司;数美天下(北京)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210877897.0/1.html,转载请声明来源钻瓜专利网。