本发明涉及一种尺寸调节方法,尤其是一种根据二维码的尺寸以自动调节识读区域尺寸的方法及装置。
背景技术:
目前,在通过二维码识读软件对二维码进行识读时,由于二维码识读软件中二维码识读区域的尺寸是固定、不可更改的,因此,如果当前所处的识读位置无法使完整的二维码全部置于二维码识读区域中,就需要对二维码与二维码识读区域之间的相对位置进行调整,直到完整的二维码能够全部置于二维码识读区域中。然而,如果二维码与二维码识读区域之间的相对位置有限,不便于对进行调整时,就无法对当前二维码进行识读,进而无法获取到与二维码相对应的内容信息。
技术实现要素:
针对上述问题中存在的不足之处,本发明提供一种无需手动调节二维码识读区域与二维码之间的相对位置,便可以获取到二维码的完整图像的根据二维码的尺寸以自动调节识读区域尺寸的方法及装置。
为实现上述目的,本发明提供一种根据二维码的尺寸以自动调节识读区域尺寸的方法,包括以下步骤:
步骤1、通过当前二维码识读区域对二维码进行识读,当判定当前二维码识读区域无法获取到完整的二维码图像时,则调用包含有当前二维码识读区域的全屏二维码识读区域对二维码进行扫描;
步骤2、经过扫描以获取到二维码的相关参数、以及二维码在全屏二维码识读区域中的位置后,根据相关参数以计算出完整二维码的尺寸数值;
步骤3、根据尺寸数值生成与二维码尺寸相同的当前二维码识读区域,以识读到完整的二维码图像。
上述的根据二维码的尺寸以自动调节识读区域尺寸的方法,其中,在步骤1中,包括以下子步骤:
步骤11、在通过二维码识读软件中的当前二维码识读区域对二维码进行识读,以判断当前二维码识读区域能够获取到完整的二维码图像;
步骤12、经判断后,若判定当前二维码识读区域无法获取到完整的二维码图像,则将安装有二维码识读软件的终端设备的全部屏幕作为用于对二维码进行识读的全屏二维码识读区域,并通过全屏二维码识读区域对二维码进行扫描。
上述的根据二维码的尺寸以自动调节识读区域尺寸的方法,其中,在步骤2中,包括以下子步骤:
步骤21、全屏二维码识读区域对二维码进行扫描后,以获得完整的二维码图像在全屏二维码识读区域中的当前位置参数;
步骤22、通过对完整的二维码图像进行解析,以得到二维码中横向边缘线a的长度数值与纵向边缘线b的长度数值;
步骤23、根据横向边缘线a的长度数值与纵向边缘线b的长度数值以计算出完整的二维码图像的尺寸数值。
上述的根据二维码的尺寸以自动调节识读区域尺寸的方法,其中,在步骤22中,在得到二维码中横向边缘线a的长度数值与纵向边缘线b的长度数值后,根据横向边缘线a的长度数值与纵向边缘线b的长度数值以得到二维码中对角线a的长度数值。
上述的根据二维码的尺寸以自动调节识读区域尺寸的方法,其中,在步骤3中,包括以下子步骤:
步骤31、根据横向边缘线a的长度数值与纵向边缘线b的长度数值以生成与二维码尺寸数值相同的当前二维码识读区域;
步骤32、根据当前位置参数以将生成的当前二维码识读区域设置在全屏二维码识读区域中与二维码吻合的位置上;
步骤33、通过当前二维码识读区域以识读到完整的二维码图像。
上述的根据二维码的尺寸以自动调节识读区域尺寸的方法,其中,在步骤31中,包括以下子步骤:
步骤311、通过对所生成的当前二维码识读区域的横向边缘线a`与纵向边缘线b`的长度进行计算,以得到根据横向边缘线a`的长度数值与纵向边缘线b`的长度数值,并根据横向边缘线a`的长度数值与纵向边缘线b`的长度数值以得到当前二维码识读区域中对角线a`的长度数值。
步骤312、在判定横向边缘线a`的长度数值与横向边缘线a的长度数值、纵向边缘线b的长度数值与纵向边缘线b`的长度数值、以及对角线a的长度数值与对角线a`的长度数值均是相同时,则判定所生成的当前二维码识读区域的尺寸数值与完整的二维码图像的尺寸数值相同。
本发明还提供一种根据二维码的尺寸以自动调节识读区域尺寸的装置,包括:调节尺寸前二维码识读区域、全屏二维码识读区域、二维码图像判定模块、位置获取模块、参数获取模块与二维码识读区域生成模块;
所述调节尺寸前二维码识读区域用于对当前二维码进行识读;
所述二维码图像判定模块用于判定所述调节尺寸前二维码识读区域以获取到的当前二维码图像是否为完整的二维码图像;
所述全屏二维码识读区域用于在判定所述调节尺寸前二维码识读区域没有获取到完整的二维码图像时,重新对当前二维码进行识读;
所述位置获取模块用于得出完整的二维码图像在所述全屏二维码识读区域中的位置;
所述参考获取模块用于对完整的二维码图像进行解析,以得到完整的二维码图像的横向边缘线a的长度数值与纵向边缘线b的长度数值;
所述二维码识读区域生成模块用于根据横向边缘线a的长度数值与纵向边缘线b的长度数值以生成与完整的二维码图像尺寸相吻合的调节尺寸后二维码识读区域,并根据完整的二维码图像在所述全屏二维码识读区域中的位置以将调节尺寸后二维码识读区域设置在所述全屏二维码识读区域中。
上述的装置,其中,所述参考获取模块还用于对调节尺寸后二维码识读区域进行解析,以得到完整的二维码图像的横向边缘线a`的长度数值与纵向边缘线b`的长度数值。
上述的装置,其中,还包括计算模块,用于根据横向边缘线a的长度数值与纵向边缘线b的长度数值以得到二维码中对角线a的长度数值;以及,
根据横向边缘线a`的长度数值与纵向边缘线b`的长度数值以得到当前二维码识读区域中对角线a`的长度数值。
上述的装置,其中,还包括比较模块,用于根据横向边缘线a`的长度数值与横向边缘线a的长度数值、纵向边缘线b的长度数值与纵向边缘线b`的长度数值、以及对角线a的长度数值与对角线a`的长度数值以判定调节尺寸后二维码识读区域的尺寸数值与完整的二维码图像的尺寸数值是否相同。
与现有技术相比,本发明具有以下优点:
本发明可根据当前所要识读的二维码的尺寸、以及当前二维码在全屏二维码识读区域中的位置,以生成与二维码完整图像的尺寸完全吻合的二维码识读区域,并将所生成的二维码识读区域的位置设置在全屏二维码识读区域中当前二维码的位置;
由于所生成的二维码识读区域的尺寸和位置可根据二维码的尺寸和位置进行自动调节,因此,无需手动调节二维码识读区域与二维码之间的相对位置,便可以获取到二维码的完整图像。
附图说明
图1为本发明中方法部分的流程图;
图2为本发明中装置部分的流程图。
具体实施方式
如图1所示,本发明提供一种根据二维码的尺寸以自动调节识读区域尺寸的方法,包括以下步骤:
步骤1、通过当前二维码识读区域对二维码进行识读,当判定当前二维码识读区域无法获取到完整的二维码图像时,则调用包含有当前二维码识读区域的全屏二维码识读区域对二维码进行扫描。
具体的,在步骤1中,包括以下子步骤:
步骤11、在通过二维码识读软件中的当前二维码识读区域对二维码进行识读,以判断当前二维码识读区域能够获取到完整的二维码图像;
步骤12、经判断后,若判定当前二维码识读区域无法获取到完整的二维码图像,则将安装有二维码识读软件的终端设备的全部屏幕作为用于对二维码进行识读的全屏二维码识读区域,并通过全屏二维码识读区域对二维码进行扫描。
步骤2、经过扫描以获取到二维码的相关参数、以及二维码在全屏二维码识读区域中的位置后,根据相关参数以计算出完整二维码的尺寸数值。
具体的,在步骤2中,包括以下子步骤:
步骤21、全屏二维码识读区域对二维码进行扫描后,以获得完整的二维码图像在全屏二维码识读区域中的当前位置参数。
步骤22、通过对完整的二维码图像进行解析,以得到二维码中横向边缘线a的长度数值与纵向边缘线b的长度数值。
其中,在步骤22中,在得到二维码中横向边缘线a的长度数值与纵向边缘线b的长度数值后,根据横向边缘线a的长度数值与纵向边缘线b的长度数值以得到二维码中对角线a的长度数值。
步骤23、根据横向边缘线a的长度数值与纵向边缘线b的长度数值以计算出完整的二维码图像的尺寸数值。
步骤3、根据尺寸数值生成与二维码尺寸相同的当前二维码识读区域,以识读到完整的二维码图像。
具体的,在步骤3中,包括以下子步骤:
步骤31、根据横向边缘线a的长度数值与纵向边缘线b的长度数值以生成与二维码尺寸数值相同的当前二维码识读区域。
其中,在步骤31中,包括以下子步骤:
步骤311、通过对所生成的当前二维码识读区域的横向边缘线a`与纵向边缘线b`的长度进行计算,以得到根据横向边缘线a`的长度数值与纵向边缘线b`的长度数值,并根据横向边缘线a`的长度数值与纵向边缘线b`的长度数值以得到当前二维码识读区域中对角线a`的长度数值。
步骤312、在判定横向边缘线a`的长度数值与横向边缘线a的长度数值、纵向边缘线b的长度数值与纵向边缘线b`的长度数值、以及对角线a的长度数值与对角线a`的长度数值均是相同时,则判定所生成的当前二维码识读区域的尺寸数值与完整的二维码图像的尺寸数值相同。
步骤32、根据当前位置参数以将生成的当前二维码识读区域设置在全屏二维码识读区域中与二维码吻合的位置上。
步骤33、通过当前二维码识读区域以识读到完整的二维码图像。
另外,在步骤1至步骤3中,当调用全屏二维码识读区域对二维码进行扫描时,若全屏二维码识读区域的当前最大尺寸也无法将完整的二维码图像置于其区域中,就只能对全屏二维码识读区域与二维码之间的相对位置进行调整,从而使完整的二维码图像能够全部置于全屏二维码识读区域中。
如图2所示,本发明还提供一种根据二维码的尺寸以自动调节识读区域尺寸的装置,包括:调节尺寸前二维码识读区域、全屏二维码识读区域、二维码图像判定模块、位置获取模块、参数获取模块、二维码识读区域生成模块、计算模块与比较模块。
调节尺寸前二维码识读区域用于对当前二维码进行识读。
二维码图像判定模块用于判定调节尺寸前二维码识读区域以获取到的当前二维码图像是否为完整的二维码图像。
全屏二维码识读区域用于在判定调节尺寸前二维码识读区域没有获取到完整的二维码图像时,重新对当前二维码进行识读。
位置获取模块用于得出完整的二维码图像在全屏二维码识读区域中的位置。
参考获取模块用于对完整的二维码图像进行解析,以得到完整的二维码图像的横向边缘线a的长度数值与纵向边缘线b的长度数值。
另外,参考获取模块还用于对调节尺寸后二维码识读区域进行解析,以得到完整的二维码图像的横向边缘线a`的长度数值与纵向边缘线b`的长度数值。
二维码识读区域生成模块用于根据横向边缘线a的长度数值与纵向边缘线b的长度数值以生成与完整的二维码图像尺寸相吻合的调节尺寸后二维码识读区域,并根据完整的二维码图像在全屏二维码识读区域中的位置以将调节尺寸后二维码识读区域设置在全屏二维码识读区域中。
计算模块用于根据横向边缘线a的长度数值与纵向边缘线b的长度数值以得到二维码中对角线a的长度数值。
另外,计算模块还根据横向边缘线a`的长度数值与纵向边缘线b`的长度数值以得到当前二维码识读区域中对角线a`的长度数值。
比较模块用于根据横向边缘线a`的长度数值与横向边缘线a的长度数值、纵向边缘线b的长度数值与纵向边缘线b`的长度数值、以及对角线a的长度数值与对角线a`的长度数值以判定调节尺寸后二维码识读区域的尺寸数值与完整的二维码图像的尺寸数值是否相同。
另外,在本装置中,当调用全屏二维码识读区域对二维码进行扫描时,若全屏二维码识读区域的当前最大尺寸也无法将完整的二维码图像置于其区域中,就只能对全屏二维码识读区域与二维码之间的相对位置进行调整,从而使完整的二维码图像能够全部置于全屏二维码识读区域中。
以上所述仅为本发明的较佳实施例,对发明而言仅仅是说明性的,而非限制性的。本专业技术人员理解,在发明权利要求所限定的精神和范围内可对其进行许多改变,修改,甚至等效,但都将落入本发明的保护范围内。