一种二维码解码系统及其方法技术方案

技术编号:11304099 阅读:102 留言:0更新日期:2015-04-15 22:22
本发明专利技术所述的一种二维码解码系统及其方法,在对码图像进行二值化处理时,通过对码图像进行分块操作,每一个分块区域的灰度阈值都不相同,因此对于每一个分块区域内的像素点在码图像被还原的过程中是判定为黑还是判定为白,并不是单纯由其自身的灰度值来决定的,而是考虑到该像素点所在分块区域的预定范围的平均灰度值。即当一个分块区域所在的预定范围的灰度值整体偏大时,那么该分块区域中所对应的灰度阈值就会偏大,反之亦然。即每一个分块区域的灰度阈值是根据其所在区域的背景灰度密切相关的,因此得到的二值化结果可以排除外界环境的干扰,可以清晰呈现出二值化图像。从而为码的解码提供了一个准确的基础,保证了解码的准确性。

【技术实现步骤摘要】
一种二维码解码系统及其方法
本专利技术属于二维码
,具体地说是一种二维码解码系统及其方法。
技术介绍
基于图像处理的二维码解码算法大体上可以分为五个步骤:图像预处理、定位与校正、读取数据、纠错以及译码。图像预处理基本步骤是灰度变换、图像滤波、阈值分割、边缘检测,二值化是包括在阈值分割里的。将获得的灰度图像经过对比度适应、亮度调节等增强算法后,利用二值化算法实现图像中背景和目标物的分割,将图片转化为只有黑白两种颜色的图像,以备解码使用。但是,由于二维码依附的介质不同,所处的光照环境不同,以及成像系统不同等因素,会导致通过二维码识读设备抓取到的二维码图像千差万别,噪声的影响、图像光照不均、对比度过大过小等都会使得二维码图像转化为二值化图像变得很复杂,而图像的二值化过程的效果优劣又直接关乎二维码的识读效果。现有技术中的二值化方法应对复杂背景时有些不足,无法很好的处理较暗、光照不均、对比度过大或过小等问题,也就无法获得良好的二值化效果。获得的二值化图像的效果不好,便加大了后续解码的难度,或需要加大运算量,或者降低解码的准确性,甚者有可能导致解码步骤无法顺利进行。并且随着技术的进步,现有的解码技术恐无法满足用户对二维码解码速度以及准确性等各方面越来越高的需求。
技术实现思路
为此,本专利技术所要解决的技术问题在于现有技术中,从而提出一种二维码解码系统及其方法。为解决上述技术问题,本专利技术是通过以下技术方案实现的:一种二维码解码方法,包括如下步骤:对二维码图像进行二值化处理得到二值化图像,所述二值化处理包括:将二维码图像进行切割得到若干分块区域;获取每一分块区域的所有像素点的灰度值,并根据所述所有像素点的灰度值获得每一分块区域的灰度值;根据每一分块区域所在的预定范围的平均灰度值,确定该分块区域的灰度阈值;根据每一分块区域对应的灰度阈值对该分块区域中的像素点进行二值化处理,得到二值化图像;对所述二值化图像进行解码,得到二维码所包含的信息内容。所述的二维码解码方法,所述二值化处理还包括如下步骤:根据二维码图像中像素点灰度值的关系构建对比度因子,所述对比度因子与二维码图像中最大灰度值和最小灰度值的差值呈正比关系;所述获取每一分块区域的所有像素点的灰度值,并根据所述所有像素点的灰度值的获得每一分块区域的灰度值的处理包括:根据某一分块区域中最大灰度值和最小灰度值的差值与所述对比度因子的关系并结合与该分块区域相邻的其他分块区域的灰度值,确定该分块区域的灰度值。所述的二维码解码方法,所述根据某一分块区域中最大灰度值和最小灰度值的差值与所述对比度因子的关系并结合与该分块区域相邻的其他分块区域的灰度值,确定该分块区域的灰度值的处理中利用以下公式获得分块区域(i,j)的灰度值其中,i表示分块区域所在行的编号,j表示分块区域所在列的编号,Sij表示该分块区域中所有像素点的灰度值的总和,C表示对比度因子,maxij表示该分块区域中的最大灰度值,minij表示该分块区域中最小灰度值,m表示分块区域中包含m*m个像素点,其中m为大于1的整数。所述的二维码解码方法,利用以下公式构建所述对比度因子C:其中C0、C1、C2均为0-255的常数,Y0和Y1均为亮度差常数,且Y0和Y1均为0-255的常数。所述的二维码解码方法,所述根据每一分块区域所在的预定范围的平均灰度值,确定该分块区域的灰度阈值的处理中:所述预定范围中包括n*n个分块区域,其中n为大于1的整数。所述的二维码解码方法,所述对所述二值化图像进行解码,得到二维码所包含的解码信息的处理包括:确定原图坐标系和校正后图像所在的校正坐标系,所述校正坐标系中的每一点均对应着原图坐标系中的一个点;并分别确定探测图形的中心点以及校正图形的中心点在原图坐标系下的坐标和在校正坐标系下的坐标;所述探测图形包括第一探测图形,第二探测图形和第三探测图形;根据每一探测图形中心点和校正图形中心点在所述原图坐标系下的坐标及与其在校正坐标系下对二值化图像进行校正,获得校正后图形;获取所述校正后图形中包含的信息内容。所述的二维码解码方法,确定探测图形的中心点在原图坐标系下的坐标的处理中,确定每一个探测图形的中心点坐标的步骤包括:沿第一方向对所述二值化图像进行检测,检测黑:白:黑:白:黑的长度比例满足第一预设比例的第一线段,确定所述第一线段的中心点;沿第二方向对经过所述第一线段的中心点的直线进行检测,得到黑:白:黑:白:黑的长度比例满足第一预设比例的第二线段,所述第二线段的中心点为探测图形的中心点。所述的二维码解码方法,所述确定每一个探测图形的中心点坐标的步骤还包括:设置沿第一方向对所述二值化图像进行检测时的检测步长,所述检测步长小于或等于二值化图像中单个模块在第一方向上包含的像素数。所述的二维码解码方法,所述设置沿第一方向对二值化图像进行检测时的检测步长的步骤中,根据二值化图像在第一方向上包含的像素数与单个模块在第一方向上包含的像素数来获得所述检测步长。所述的二维码解码方法,所述设置沿第一方向对二值化图像进行检测时的检测步长的步骤中,利用以下公式得到所述检测步长:L=Max(M×N/Mod,Min),其中M为二值化图像在第一方向上包含的像素数,N为调整系数且0<N≤1,Mod为预设的二值化图像在第一方向上包含的模块数,Min为二值化图像单个模块在第一方向上的像素数。所述的二维码解码方法,确定校正图形的中心点在原图坐标系下的坐标的处理包括:根据校正图形的中心点与探测图形的中心点的相对位置关系获取参考坐标;在所述参考坐标的预定范围内精确定位校正图形,获取校正图形的中心点的坐标。所述的二维码解码方法,所述根据校正图形的中心点与探测图形的中心点的相对位置关系获取参考坐标的处理包括:根据所述校正图形的中心点与所述第一探测图形的中心点的横向距离获取参考横坐标;根据所述校正图形的中心点与所述第一探测图形的中心点的纵向距离获取参考纵坐标;利用下述公式确定所述横向距离和所述纵向距离:所述横向距离为:εh=ε(XR-XA);所述纵向距离为:εz=ε(YR-YA);其中XR=XB-XA+XC,YR=YB-YA+YC;(XB,YB)为第二探测图形的中心点的坐标;(XC,YC)为第三探测图形的中心点的坐标;ε为校正图形偏离因子,且ε=(N-3)/K,K为二值化图像第一方向上包含的模块的数量。所述的二维码解码方法,所述在所述参考坐标的预定范围内精确定位校正图形,获取校正图形的中心点的坐标的处理中:所述预定范围为包含所述参考坐标的正方形区域,所述正方形区域包含至少64个模块。所述的二维码解码方法,在所述参考坐标的预定范围内精确定位校正图形,获取校正图形的中心点的坐标的步骤包括:沿第一方向对所述预定范围检测,检测白:黑:白的长度比例满足第二预设比例的第三线段,确定所述第三线段中黑色部分的中心点;以所述第三线段中黑色部分的中心点作为基准位置,得到垂直于所述第三线段的直线,在该直线上检测白:黑:白的长度比例满足第二预设比例的第四线段,所述第四线段中黑色部分的中心点为校正图形的中心点。所述的二维码解码方法,所述根据每一探测图形中心点和校正图形中心点在所述原图坐标系下的坐标及与其在校正坐标系下对二值化图像进行校正,获得校正后图形的处理包括:根据每一探测本文档来自技高网...
一种二维码解码系统及其方法

【技术保护点】
一种二维码解码方法,其特征在于,包括如下步骤:对二维码图像进行二值化处理得到二值化图像,所述二值化处理包括:将二维码图像进行切割得到若干分块区域;获取每一分块区域的所有像素点的灰度值,并根据所述所有像素点的灰度值获得每一分块区域的灰度值;根据每一分块区域所在的预定范围的平均灰度值,确定该分块区域的灰度阈值;根据每一分块区域对应的灰度阈值对该分块区域中的像素点进行二值化处理,得到二值化图像;对所述二值化图像进行解码,得到二维码所包含的信息内容。

【技术特征摘要】
1.一种二维码解码方法,其特征在于,包括如下步骤:对二维码图像进行二值化处理得到二值化图像,所述二值化处理包括:将二维码图像进行切割得到若干分块区域;获取每一分块区域的所有像素点的灰度值,并根据所述所有像素点的灰度值获得每一分块区域的灰度值;根据每一分块区域所在的预定范围的平均灰度值,确定该分块区域的灰度阈值;根据每一分块区域对应的灰度阈值对该分块区域中的像素点进行二值化处理,得到二值化图像;对所述二值化图像进行解码,得到二维码所包含的信息内容;所述二值化处理还包括如下步骤:根据二维码图像中像素点灰度值的关系构建对比度因子,所述对比度因子与二维码图像中最大灰度值和最小灰度值的差值呈正比关系;所述获取每一分块区域的所有像素点的灰度值,并根据所述所有像素点的灰度值的获得每一分块区域的灰度值的处理包括:根据某一分块区域中最大灰度值和最小灰度值的差值与所述对比度因子的关系并结合与该分块区域相邻的其他分块区域的灰度值,确定该分块区域的灰度值;所述根据某一分块区域中最大灰度值和最小灰度值的差值与所述对比度因子的关系并结合与该分块区域相邻的其他分块区域的灰度值,确定该分块区域的灰度值的处理中利用以下公式获得分块区域(i,j)的灰度值其中,i表示分块区域所在行的编号,j表示分块区域所在列的编号,Sij表示该分块区域中所有像素点的灰度值的总和,C表示对比度因子,maxij表示该分块区域中的最大灰度值,minij表示该分块区域中最小灰度值,m表示分块区域中包含m*m个像素点,其中m为大于1的整数。2.根据权利要求1所述的二维码解码方法,其特征在于,利用以下公式构建所述对比度因子C:其中C0、C1、C2均为0-255的常数,Y0和Y1均为亮度差常数,且Y0和Y1均为0-255的常数。3.根据权利要求1所述的二维码解码方法,其特征在于,所述根据每一分块区域所在的预定范围的平均灰度值,确定该分块区域的灰度阈值的处理中:所述预定范围中包括n*n个分块区域,其中n为大于1的整数。4.根据权利要求1所述的二维码解码方法,其特征在于,所述对所述二值化图像进行解码,得到二维码所包含的解码信息的处理包括:确定原图坐标系和校正后图像所在的校正坐标系,所述校正坐标系中的每一点均对应着原图坐标系中的一个点;并分别确定探测图形的中心点以及校正图形的中心点在原图坐标系下的坐标和在校正坐标系下的坐标;所述探测图形包括第一探测图形,第二探测图形和第三探测图形;根据每一探测图形中心点和校正图形中心点在所述原图坐标系下的坐标及与其在校正坐标系下对二值化图像进行校正,获得校正后图形;获取所述校正后图形中包含的信息内容。5.根据权利要求4所述的二维码解码方法,其特征在于,确定探测图形的中心点在原图坐标系下的坐标的处理中,确定每一个探测图形的中心点坐标的步骤包括:沿第一方向对所述二值化图像进行检测,检测黑:白:黑:白:黑的长度比例满足第一预设比例的第一线段,确定所述第一线段的中心点;沿第二方向对经过所述第一线段的中心点的直线进行检测,得到黑:白:黑:白:黑的长度比例满足第一预设比例的第二线段,所述第二线段的中心点为探测图形的中心点。6.根据权利要求5所述的二维码解码方法,其特征在于,所述确定每一个探测图形的中心点坐标的步骤还包括:设置沿第一方向对所述二值化图像进行检测时的检测步长,所述检测步长小于或等于二值化图像中单个模块在第一方向上包含的像素数。7.根据权利要求6所述的二维码解码方法,其特征在于,所述设置沿第一方向对二值化图像进行检测时的检测步长的步骤中,根据二值化图像在第一方向上包含的像素数与单个模块在第一方向上包含的像素数来获得所述检测步长。8.根据权利要求6或7所述的二维码解码方法,其特征在于,所述设置沿第一方向对二值化图像进行检测时的检测步长的步骤中,利用以下公式得到所述检测步长:L=Max(M×N/Mod,Min),其中M为二值化图像在第一方向上包含的像素数,N为调整系数且0<N≤1,Mod为预设的二值化图像在第一方向上包含的模块数,Min为二值化图像单个模块在第一方向上的像素数。9.根据权利要求4-7任一所述的二维码解码方法,其特征在于,确定校正图形的中心点在原图坐标系下的坐标的处理包括:根据校正图形的中心点与探测图形的中心点的相对位置关系获取参考坐标;在所述参考坐标的预定范围内精确定位校正图形,获取校正图形的中心点的坐标。10.根据权利要求9所述的二维码解码方法,其特征在于,所述根据校正图形的中心点与探测图形的中心点的相对位置关系获取参考坐标的处理包括:根据所述校正图形的中心点与所述第一探测图形的中心点的横向距离获取参考横坐标;根据所述校正图形的中心点与所述第一探测图形的中心点的纵向距离获取参考纵坐标;利用下述公式确定所述横向距离和所述纵向距离:所述横向距离为:εh=ε(XR-XA);所述纵向距离为:εz=ε(YR-YA);其中XR=XB-XA+XC,YR=YB-YA+YC;(XB,YB)为第二探测图形的中心点的坐标;(XC,YC)为第三探测图形的中心点的坐标;ε为校正图形偏离因子,且ε=(N-3)/K,K为二值化图像第一方向上包含的模块的数量。11.根据权利要求9所述的二维码解码方法,其特征在于,所述在所述参考坐标的预定范围内精确定位校正图形,获取校正图形的中心点的坐标的处理中:所述预定范围为包含所述参考坐标的正方形区域,所述正方形区域包含至少64个模块。12.根据权利要求9所述的二维码解码方法,其特征在于,在所述参考坐标的预定范围内精确定位校正图形,获取校正图形的中心点的坐标的步骤包括:沿第一方向对所述预定范围检测,检测白:黑:白的长度比例满足第二预设比例的第三线段,确定所述第三线段中黑色部分的中心点;以所述第三线段中黑色部分的中心点作为基准位置,得到垂直于所述第三线段的直线,在该直线上检测白:黑:白的长度比例满足第二预设比例的第四线段,所述第四线段中黑色部分的中心点为校正图形的中心点。13.根据权利要求4所述的二维码解码方法,其特征在于,所述根据每一探测图形中心点和校正图形中心点在所述原图坐标系下的坐标及与其在校正坐标系下对二值化图像进行校正,获得校正后图形的处理包括:根据每一探测图形中心点和校正图形中心点在所述原图坐标系下的坐标及与其在校正坐标系下的坐标获取转换参数;根据所述转换参数,对所述校正坐标系中的每一点,查找到所述原图坐标系中与之对应的点所在的二值化图像中的模块,并且将该模块的灰度值赋予该点,完成二值化图像的校正过程。14.根据权利要求13所述的二维码解码方法,其特征在于,所述根据所述转换参数,对所述校正坐标系中的每一点,查找到所述原图坐标系中与之对应的点所在的二值化图像中的模块,...

【专利技术属性】
技术研发人员:张玲关超刘振华刘革章车万毅
申请(专利权)人:北大方正集团有限公司方正移动传媒技术北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1