CN105701434A - 二维码扭曲图像的图像校正方法 - Google Patents
二维码扭曲图像的图像校正方法 Download PDFInfo
- Publication number
- CN105701434A CN105701434A CN201511033772.6A CN201511033772A CN105701434A CN 105701434 A CN105701434 A CN 105701434A CN 201511033772 A CN201511033772 A CN 201511033772A CN 105701434 A CN105701434 A CN 105701434A
- Authority
- CN
- China
- Prior art keywords
- quick response
- response code
- image
- point
- position sensing
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1452—Methods for optical code recognition including a method step for retrieval of the optical code detecting bar code edges
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于二维码扭曲图像快速识别的二维码扭曲图像的图像校正方法,它包括:1)对二维码扭曲图像进行预处理,以得到清晰的二值图像;2)提取二维码扭曲图像的三个位置探测图形的位置;3)确定二维码扭曲图像的外部轮廓的四个角点A、B、C和D的位置;4)确定二维码扭曲图像的三个位置探测图形的外正方形位于边界上的另外六个角点E、F、G、H、I和J的位置;5)对二维码扭曲图像的四个边界进行边缘拟合处理;6)根据二维码扭曲图像上已经获取的十个角点的位置,利用映射关系获取二维码校正图像上对应的十个角点的位置。
Description
技术领域
本发明涉及一种图像识别技术,具体来说,涉及一种基于二维码扭曲图像快速识别的二维码扭曲图像的图像校正方法。
背景技术
随着经济和计算机技术的不断发展,人们对商品质量的要求越来越高,二维码技术在商品标识领域得到了越来越广泛的应用,然而,传统的二维码识别算法都是基于平面二维码的假设,对贴在非平面上的扭曲二维码没有相应的识别算法,无法满足日益增长的应用要求,因此提出一个能够快速校正扭曲二维码的识别算法。
发明内容
针对以上的不足,本发明提供了一种基于二维码扭曲图像快速识别的二维码扭曲图像的图像校正方法,它包括:1)对二维码扭曲图像进行预处理,以得到清晰的二值图像;2)提取二维码扭曲图像的三个位置探测图形的位置;3)确定二维码扭曲图像的外部轮廓的四个角点A、B、C和D的位置;4)确定二维码扭曲图像的三个位置探测图形的外正方形位于边界上的另外六个角点E、F、G、H、I和J的位置;5)对二维码扭曲图像的四个边界进行边缘拟合处理;6)根据二维码扭曲图像上已经获取的十个角点的位置,利用映射关系获取二维码校正图像上对应的十个角点的位置。
为了进一步实现本发明,所述步骤2)首先对二维码扭曲图像的位置探测图形进行估计操作处理,再对二维码扭曲图像的位置探测图形进行提炼操作处理。
为了进一步实现本发明,所述二维码扭曲图像的位置探测图形的估计操作处理包括:
211)首先,依次对二维码扭曲图像的二值图像的每一行进行扫描,如果像素值变化,记录上一像素区间的像素个数,得到一个个数矩阵;
212)接着,判断个数矩阵,如果一行中连续5个像素个数满足大约1:1:3:1:1的比例,将此区域对应的像素涂成白色,以此类推,直到处理完每一行,得到水平方向满足1:1:3:1:1比率的区域图;
213)然后,依次对二维码扭曲图像的二值图像的每一列进行扫描,如果像素值变化,记录上一像素区间的像素个数,得到一个个数矩阵;
214)接着,判断个数矩阵,如果一行中连续5个像素个数满足大约1:1:3:1:1的比例,将此区域对应的像素涂成白色,以此类推,直到处理完每一列,得到垂直方向满足1:1:3:1:1比率的区域图;
215)最后,对两幅区域图进行与操作,得到的就是在水平垂直方向都满足1:1:3:1:1比率的图像估计区域。
为了进一步实现本发明,所述二维码扭曲图像的位置探测图形提炼操作处理包括:
221)定义i=1,其中,i为将要执行以下判断的区域号;
222)判断步骤215)中得到的图像估计区域的区域i的重心Ci的像素值是否为黑色,如果是继续执行,否则跳到226);
223)将重心Ci作为种子点,并与邻近像素进行比较,如果邻近像素与种子点像素值相同,将邻近像素点加入到种子区域,继续生长,直到区域i生长结束,把得到的连通区域标记为Xi,如果该连通区域在位置探测图形内;
224)将上一步得到的连通区域Xi设为白色,以Ci为种子点,结合区域增长,得到包含区域Xi的连通区域Yi,如果该连通区域在位置探测图形内;
225)将上一步得到的连通区域Yi设为黑色,以Ci为种子点,结合区域增长,得到包含区域Yi的连通区域Zi,如果该连通区域在位置探测图形内;
226)将i加1跳到222),
找到了满足以上条件的区域,显然区域i就是位置探测图形之一,计算区域Zi的重心W,重心W即为位置探测图形中心点之一。
为了进一步实现本发明,所述步骤3)包括:
31)根据上述步骤确定的二维码扭曲图像的三个位置探测图形的图形区域确定三个位置探测图形中心点O1、O2和O3的位置;
32)找出距离最远的两个位置探测图形中心点,并计算出距离最远的两个位置探测图形中心点组成的线段L0对应所在直线的斜率K;
33)用与线段L0平行的两条直线,以及与线段L0垂直的两条直线分别从四个方向逼近二维码扭曲图像区域,直到四条直线分别与二维码扭曲图像的轮廓相切,记下各条直线的切点,四个切点即为二维码扭曲图像的轮廓的四个角点A、B、C和D。
为了进一步实现本发明,所述步骤33)中,如果其中一条直线与二维码图像轮廓的切点为一个,则该切点为二维码扭曲图像的一个角点;如果其中一条直线与二维码扭曲图像的轮廓的切点不只一个,则计算这组切点的重心,将计算的重心作为二维码扭曲图像的轮廓的角点。
为了进一步实现本发明,所述步骤4)包括:
41)根据上述步骤确定的二维码扭曲图像的三个位置探测图形的图形区域确定三个位置探测图形中心点O1、O2和O3的位置;
42)找出距离最远的两个位置探测图形中心点,并计算出距离最远的两个位置探测图形中心点组成的线段L0对应所在直线的斜率K;
43)根据三个位置探测图形中心点O1、O2和O3的位置,结合三次区域增长算法,分别求出三个位置探测图形的最内、中、外三个正方形区域;
44)针对每一个位置探测图形,采用两组直线逼近法,确定三个位置探测图形的外正方形区域的六个角点E、F、G、H、I和J的位置。
为了进一步实现本发明,所述步骤5)中上边界的曲线拟合步骤包括:
51)设置二维码扭曲图像的板桥P;
52)以二维码扭曲图像左上角的角点为起点,以起点为圆心,长为P的线段顺时针旋转,直到该线段的另一个端部与二维码扭曲图像的上边界接触;
53)如果接触点的个数大于一个,选择离二维码扭曲图像左上角的角点距离最近的接触点记录其坐标,并在下次迭代时以此接触点为起点;如果接触点的个数为一个,记录其坐标,并在下次迭代时以此接触点为起点;
54)直到起点的坐标与二维码扭曲图像右上角的角点的距离小于P,迭代结束,所有的起点,即为我们求得的上边界上的所有边界关键点;
55)根据二维码扭曲图像上边界的两个角点和所有边界关键点拟合上边界的边缘曲线。
为了进一步实现本发明,所述步骤6)包括:
61)利用积分的方法,求出拟合曲线上AE、FC、CG、HD、DI和JA之间曲线长度,
62)利用积分的方法,分别求出四条拟合曲线LAB、LBC、LCD和LDA的分别对应的长度L1、L2、L3和L4;
63)根据校正图像的大小n,求出扭曲二维码图像每条边的伸缩系数
64)根据二维码的边缘曲线求出扭曲图像上的对应点在拟合曲线上的对应长度,再求出相应的校正图形上的对应点
LA′E’=ki*LAE
65)利用映射关系完成扭曲图像的校正
本发明的有益效果:
本发明首先根据改进的直线逼近及位置探测图形区域增长获得二维码扭曲图像的轮廓的四个角点及位置探测图形的位于边界上的另外六个角点作为对应点,然后通过搭桥法求出代表二维码边缘轮廓上的边界关键点,结合曲线拟合得到四条边缘的拟合曲线,再运用微积分知识计算出扭曲二维码上的对应点在校正图形上的坐标,最后通过非线性变换关系得到校正图像。
附图说明
图1为本发明的二维码扭曲图像的角点分布示意图;
图2为本发明的二维码扭曲图像的图像校正的流程图;
图3为本发明的二维码扭曲图像的位置探测图形的示意图;
图4为本发明的二维码扭曲图像的位置探测图形的中心点的分布示意图;
图5为本发明的扭曲图像与校正图像的对比示意图。
具体实施方式
下面结合附图对本发明进行进一步阐述。
如图1所示,由于同时受扭曲和拍摄角度等原因的影响,二维码在图像上表现的扭曲为非线性,二维码扭曲图像的四个角点A、B、C和D四组对应点(复杂背景下四组对应点就不够了)不足以求出映射关系,因此我们需要在用二维码扭曲图像的四个角点A、B、C和D作为关键点的同时,还要寻找二维码扭曲图像三个位置探测图形的外正方形(变形)的另外六个角点E、F、G、H、I和J作为关键点,再求出二维码扭曲图像上述十个关键点在校正图形上的对应关系,通过映射函数求出校正图像。
如图2,本发明的二维码扭曲图像的图像校正方法包括以下步骤:
一、对二维码扭曲图像进行预处理
对二维码扭曲图像依次进行灰度化处理、二值化处理和图像去噪处理,以获得边界清晰的二维码扭曲图像的二值图像。
11)图像灰度化处理
在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫灰度值,因此灰度图像每个像素只需一个字节存放灰度值,灰度范围为0-255。以R、G、B为轴建立空间直角坐标系,则彩色图的每个象素的颜色可以用该三维空间的一个点来表示,而灰度图的每个象素的颜色可以用直线R=G=B上的一个点来表示。彩色转灰度图的本质就是寻找一个三维空间到一维空间的映射,最容易想到的就是射影(即过彩色空间的一个点向直线R=G=B做垂线,灰度可以说是亮度的量化值,而RGB的定义是客观的三个波长值,转换时需要考虑人眼对不同波长的灵敏度曲线,所以系数不相等。
根据重要性及其它指标,将三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此按下式对RGB三分量进行加权平均能得到较合理的灰度图像。
Gray=0.29900*R+0.58700*G+0.11400*B
12)图像二值化处理
为了获得高质量的图像,我们将灰度图像转化为二值图像,图像二值化就是将图像上的像素点的灰度值设置为或,也就是将整个图像呈现出明显的黑白效果。
这里我们选择效果最好的大津律法(又称最大类间方差法,OTSU),它是按图像的灰度特性,将图像分成背景和目标两部分,背景和目标之间的类间方差越大,说明构成图像的两部分的差别越大,当部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小,因此,使类间方差最大的分割意味着错分概率最小。对于图像I(大小为M*N)前景与背景的分割阈值为T,图像中像素的灰度值小于阈值T的像素个数记作N0(属于前景像素点)占整幅图像比例记为W0,其平均灰度为U0;像素灰度大于阈值T的像素个数记作N1(属于背景像素点)占整幅图像比例为W1,其平均灰度为U1,图像的平均灰度u为类间方差记为g,因方差是灰度分布均匆性的一种度量,方差值越大,说明构成图像的两部分差别越大,当部分目标错位背景或者部分背景分为目标都会导致两部分差别变小,因此使类间方差最大的分割意味着错分概率最小,则有:
N0+N1=M×N(1-3)
W0+W1=1(1-4)
u=W0×U0+W1×U1(1-5)
g=W0×(U0-u)2+W1×(U1-u)2(1-6)
将式(1-5)代入式(1-6),得到等价公式:
g=W0×W1×(μ0-μ1)2(1-7)
采用遍历的方法得到使类间方差最大的阈值T,即为最佳阔值,将大于阈值T的像素设为白色,小于阈值T的像素设为黑色。
13)图像去噪处理
本发明采用形态学噪声滤波器,将开运算和闭运算结合起来可用来滤除噪声,首先,对有含有噪声的图像进行开运算,可选择结构要素矩阵比噪声的尺寸大,因而开运算的结果是将背景上的噪声去除;然后,是对得到的图像进行闭运算,将图像上的噪声去掉。根据此方法的特点可以知道,此方法适用的图像类型是图像中的对象尺寸都比较大,且没有细小的细节,对这种类型的图像除噪的效果会比较好,这种方法保留了大部分包含信号的小波系数,因此可以较好地保持图像细节。
开运算:先腐烛后膨胀的过程称为开运算,用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。
闭运算:先膨胀后腐蚀的过程称为闭运算,用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。
腐蚀操作会去掉物体的边缘点,细小物体所有的点都会被认为是边缘点,因此会整个被删去,再做膨胀时,留下来的大物体会变回原来的大小,而被删除的小物体则永远消失了。
膨胀操作会使物体的边界向外扩张,如果物体内部存在小空洞的话,经过膨胀操作这些洞将被补上,因而不再是边界了,再进行腐蚀操作时,外部边界将变回原来的样子,而这些内部空洞则永远消失了。
连续的开和闭运算可以有效地改善这种情况,有时需要经过多次腐蚀之后再加上相同次数的膨胀,才可以产生比较好的效果。
二、二维码扭曲图像的三个位置探测图形的提取处理
21)二维码扭曲图像的位置探测图形的估计操作处理
前面已经对二维码扭曲图像进行了预处理,得到了边界较为清晰的二维码扭曲图像的二值图像,现要确定三个位置探测图形的图形区域。
每一个二维码图像上均有三个位置探测图形,寻找位置探测图形是二维码图像提取的关键,如图3所示,位置探测图形由三个大小不同的黑、白、黑同心正方形组成,每个箭头方向上的黑白比率都大致为1:1:3:1:1,无论从什么方向扫描,位置探测图形的颜色都满足黑白黑白黑,黑白比率大致为1:1:3:1:1,与扫描角度无关。
位置探测图形的估计操作处理的具体步骤如下:
211)首先,依次对二维码扭曲图像的二值图像的每一行从左到右扫描,如果像素值变化,记录上一像素区间的像素个数,得到一个个数矩阵;
212)接着,从左到右判断个数矩阵,如果一行中连续5个像素个数满足大约1:1:3:1:1的比例,将此区域对应的像素涂成白色,以此类推,直到处理完每一行,得到水平方向满足1:1:3:1:1比率的区域图;
213)然后,依次对二维码扭曲图像的二值图像的每一列从上到下扫描,如果像素值变化,记录上一像素区间的像素个数,得到一个个数矩阵;
214)接着,从上到下判断个数矩阵,如果一行中连续5个像素个数满足大约1:1:3:1:1的比例,将此区域对应的像素涂成白色,以此类推,直到处理完每一列,得到垂直方向满足1:1:3:1:1比率的区域图;
215)最后,对两幅区域图进行与操作,得到的就是在水平垂直方向都满足1:1:3:1:1比率的图像估计区域,但是不是所有的图像估计区域都是位置探测图形,其中的一部分是背景。
同理,位置探测图形的估计操作处理的操作步骤也可以是先进行行扫描,再进行列扫描,其扫描的方向也是相对的。
22)二维码扭曲图像的位置探测图形的提炼操作处理
通过观察二维码图像的位置探测图形,我们可以发现,位置探测图形由3个同心正方形组成,并且这些正方形的面积满足9:25:49。通过判断每个区域是否满足以上条件可以排除背景干扰,找到真正的位置探测图形。
位置探测图形的提炼操作具体步骤如下:
221)定义i=1,其中,i为将要执行以下判断的区域号;
222)判断图像估计区域的区域i的重心Ci的像素值是否为黑色,如果是继续执行,否则跳到226);
223)将重心Ci作为种子点,并与邻近像素进行比较,如果邻近像素与种子点像素值相同,将邻近像素点加入到种子区域,继续生长,直到区域i生长结束,把得到的连通区域标记为Xi,如果该连通区域在位置探测图形内;
224)将上一步得到的连通区域Xi设为白色,以Ci为种子点,结合区域增长,得到包含区域Xi的连通区域Yi,如果该连通区域在位置探测图形内;
225)将上一步得到的连通区域Yi设为黑色,以Ci为种子点,结合区域增长,得到包含区域Yi的连通区域Zi,如果该连通区域在位置探测图形内;
226)将i加1跳到222)。
通过以上处理,找到了满足以上条件的区域,显然区域i就是位置探测图形之一,计算区域Zi的重心W,重心W即为位置探测图形中心点之一,这样就可以确定二维码扭曲图像的三个位置探测图形的图形区域。
三、利用自适应角点检测的方法确定二维码扭曲图像的外部轮廓的四个角点的位置
正常未扭曲情况下,二维码图像的三个位置探测图形中心点O1、O2和O3的连线为一个等腰直角三角形,但是,在扭曲情况下,二维码扭曲图像原本应为直线的四条边界发生了形变,三个位置探测图形中心点O1、O2和O3组成的三角形可能不是直角三角形,如图1和图4所示。图像扭曲及拍摄角度等原因使得二维码扭曲图像各部分的伸缩比例有变化,三个位置探测图形中心点O1、O2和O3之间的距离变化比例也会不相同,最长的距离变化之后的稳定性最高,因此我们需要找出间距最长的两个位置探测图形中心所对应的线段L0,其中,L0=Lmax(O1O2,O2O3,O2O3),并求出该线段L0的斜率K。
31)根据上述步骤确定的二维码扭曲图像的三个位置探测图形的图形区域确定三个位置探测图形中心点O1、O2和O3的位置;
32)找出距离最远的两个位置探测图形中心点,并计算出距离最远的两个位置探测图形中心点组成的线段L0对应所在直线的斜率K;
33)用与线段L0平行的两条直线,以及与线段L0垂直的两条直线分别从四个方向逼近二维码扭曲图像区域,直到四条直线分别与二维码扭曲图像的轮廓相切,记下各条直线的切点,四个切点即为二维码扭曲图像的外部轮廓的四个角点A、B、C和D。如果其中一条直线与二维码图像轮廓的切点为一个,则该切点为二维码扭曲图像的一个角点;如果其中一条直线与二维码扭曲图像的轮廓的切点不只一个,则计算这组切点的重心,将计算的重心作为二维码扭曲图像的轮廓的角点。
四、利用位置探测图形角点检测算法确定二维码扭曲图像的三个位置探测图形的外正方形的角点E、F、G、H、I和J的位置
同理如图1和图2所示,三个位置探测图形的外正方形的角点位置的确定步骤具体如下:
41)根据上述步骤确定的二维码扭曲图像的三个位置探测图形的图形区域确定三个位置探测图形中心点O1、O2和O3的位置;
42)找出距离最远的两个位置探测图形中心点,并计算出距离最远的两个位置探测图形中心点组成的线段L0对应所在直线的斜率K;
43)根据三个位置探测图形中心点O1、O2和O3的位置,结合三次区域增长算法,分别求出三个位置探测图形的最内、中、外三个正方形区域;
44)针对每一个位置探测图形,采用两组直线逼近法,确定三个位置探测图形的外正方形区域的六个角点E、F、G、H、I和J的位置。
五、二维码扭曲图像的边缘拟合
根据前面求得的二维码扭曲图像的外部轮廓的四个角点,我们分别采用搭桥法得到二维码扭曲图像的轮廓的四条边缘的拟合曲线,以求出二维码扭曲图像上基准点在校正图像上的对应坐标。
采用搭桥法,以二维码扭曲图像的轮廓上边界为例:
51)设置二维码扭曲图像的板桥P:首先,根据已经提取的二维码扭曲图像的位置探测图形的图像区域确定三个位置探测图形的横向宽度P1、P2和P3,然后,根据三个位置探测图形的横向宽度P1、P2和P3求取板桥P的值,P=(P1+P2+P3)/3;
52)以二维码扭曲图像左上角的角点为起点,以起点为圆心,长为P的线段顺时针旋转,直到该线段的另一个端部与二维码扭曲图像的上边界接触;
53)如果接触点的个数大于一个,选择离二维码扭曲图像左上角的角点距离最近的接触点记录其坐标,并在下次迭代时以此接触点为起点;如果接触点的个数为一个,记录其坐标,并在下次迭代时以此接触点为起点;
54)直到起点的坐标与二维码扭曲图像右上角的角点的距离小于P,迭代结束,所有的起点,即为我们求得的上边界上的所有边界关键点;
55)根据二维码扭曲图像上边界的两个角点和所有边界关键点拟合上边界的边缘曲线LAB;
同理,按照上述方法求取下边界、左边界和右边界上所有的边界关键点,根据二维码扭曲图像的四个角点和各边界的边界关键点拟合其它三条边缘曲线LBC、LCD和LDA。
六、根据二维码扭曲图像上的A、B、C、D、E、F、G、H、I和J十个角点的位置,利用映射关系获取二维码校正图像上对应的A’、B’、C’、D’、E’、F’、G’、H’、I’和J’十个角点的位置。
通过上述的步骤我们求出二维码扭曲图像上的十个角点A、B、C、D、E、F、G、H、I和J的位置,以及四条边的边缘曲线LAB、LBC、LCD和LDA,需要求出这些角点在校正图像上的对应点,如果校正图像的边长为n,则二维码角点在校正图像上的对应点为(0,0)(0,n)(n,0)(n,n),因此我们只需要求部分位置探测图形的角点在校正图像上的对应点。观察图像可知,位置探测图形的部分角点(E、F、G、H、I和J)与最近的二维码角点之间的曲线距离应该是位置探测图形的边长,由于扭曲形变,曲线距离有所变化。
用积分的方法,求出拟合曲线上AE、FC、CG、HD、DI和JA之间曲线长度:
同样用积分的方法,分别求出四条拟合曲线LAB、LBC、LCD和LDA的分别对应的长度L1、L2、L3和L4,每条拟合曲线的长度采用该拟合曲线上任意两点(包括二维码扭曲图像的两个角点和对应两个角点间的所有边界关键点)的距离累加得到。由于二维码发生非线性形变,每条边的形变大小不相同。根据校正图像的大小n,求出扭曲二维码图像每条边的伸缩系数
接下来找出与上述十个角点位置最近的拟合曲线上点的坐标,作为扭曲图像的对应点,
求出二维码的边缘曲线
LA′E’=ki*LAE
求出扭曲图像上的对应点在拟合曲线上的对应长度,再求出相应的校正图形上的对应点,如图5所示。
物体按照理想针孔模型成像,所得的图像为理想图,记为f(x,y),由于实际拍摄的二维码与理想二维码不完全一致,因此所成的图像有扭曲成为扭曲图,记为g(x,y)。假定理想图中的点(x’,y’)在扭曲图中的对应坐标为(x,y),则(x,y)与(x’,y’)的映射关系为:
为了确定多项式系数,在扭曲图中找n个点(xn,yn),以及在理想图像中的对应坐标为(x’n,y’n),这些点称为约束点。基于这n对约束点数据用最小二乘法可以辨识出式中的参数u和v,从而确定坐标映射关系。
对于理想图像中的一点,利用上式可得到它在扭曲图中对应的位置,然后使用灰度插值的方法即可得到该点的灰度。对校正图像中的每一点做这样的处理,完成图像的扭曲校正。
以上所述仅为本发明的较佳实施方式,本发明并不局限于上述实施方式,在实施过程中可能存在局部微小的结构改动,如果对本发明的各种改动或变型不脱离本发明的精神和范围,且属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变型。
Claims (9)
1.一种二维码扭曲图像的图像校正方法,其特征在于,它包括,它包括:
1)对二维码扭曲图像进行预处理,以得到清晰的二值图像;
2)提取二维码扭曲图像的三个位置探测图形的位置;
3)确定二维码扭曲图像的外部轮廓的四个角点A、B、C和D的位置;
4)确定二维码扭曲图像的三个位置探测图形的外正方形位于边界上的另外六个角点E、F、G、H、I和J的位置;
5)对二维码扭曲图像的四个边界进行边缘拟合处理;
6)根据二维码扭曲图像上已经获取的十个角点的位置,利用映射关系获取二维码校正图像上对应的十个角点的位置。
2.根据权利要求1所述的二维码扭曲图像的图像校正方法,其特征在于,所述步骤2)首先对二维码扭曲图像的位置探测图形进行估计操作处理,再对二维码扭曲图像的位置探测图形进行提炼操作处理。
3.根据权利要求2所述的二维码扭曲图像的图像校正方法,其特征在于,所述二维码扭曲图像的位置探测图形的估计操作处理包括:
211)首先,依次对二维码扭曲图像的二值图像的每一行进行扫描,如果像素值变化,记录上一像素区间的像素个数,得到一个个数矩阵;
212)接着,判断个数矩阵,如果一行中连续5个像素个数满足大约1:1:3:1:1的比例,将此区域对应的像素涂成白色,以此类推,直到处理完每一行,得到水平方向满足1:1:3:1:1比率的区域图;
213)然后,依次对二维码扭曲图像的二值图像的每一列进行扫描,如果像素值变化,记录上一像素区间的像素个数,得到一个个数矩阵;
214)接着,判断个数矩阵,如果一行中连续5个像素个数满足大约1:1:3:1:1的比例,将此区域对应的像素涂成白色,以此类推,直到处理完每一列,得到垂直方向满足1:1:3:1:1比率的区域图;
215)最后,对两幅区域图进行与操作,得到的就是在水平垂直方向都满足1:1:3:1:1比率的图像估计区域。
4.根据权利要求3所述的二维码扭曲图像的图像校正方法,其特征在于,所述二维码扭曲图像的位置探测图形提炼操作处理包括:
221)定义i=1,其中,i为将要执行以下判断的区域号;
222)判断步骤215)中得到的图像估计区域的区域i的重心Ci的像素值是否为黑色,如果是继续执行,否则跳到226);
223)将重心Ci作为种子点,并与邻近像素进行比较,如果邻近像素与种子点像素值相同,将邻近像素点加入到种子区域,继续生长,直到区域i生长结束,把得到的连通区域标记为Xi,如果该连通区域在位置探测图形内;
224)将上一步得到的连通区域Xi设为白色,以Ci为种子点,结合区域增长,得到包含区域Xi的连通区域Yi,如果该连通区域在位置探测图形内;
225)将上一步得到的连通区域Yi设为黑色,以Ci为种子点,结合区域增长,得到包含区域Yi的连通区域Zi,如果该连通区域在位置探测图形内;
226)将i加1跳到222),
找到了满足以上条件的区域,显然区域i就是位置探测图形之一,计算区域Zi的重心W,重心W即为位置探测图形中心点之一。
5.根据权利要求4所述的二维码扭曲图像的图像校正方法,其特征在于,所述步骤3)包括:
31)根据上述步骤确定的二维码扭曲图像的三个位置探测图形的图形区域确定三个位置探测图形中心点O1、O2和O3的位置;
32)找出距离最远的两个位置探测图形中心点,并计算出距离最远的两个位置探测图形中心点组成的线段L0对应所在直线的斜率K;
33)用与线段L0平行的两条直线,以及与线段L0垂直的两条直线分别从四个方向逼近二维码扭曲图像区域,直到四条直线分别与二维码扭曲图像的轮廓相切,记下各条直线的切点,四个切点即为二维码扭曲图像的轮廓的四个角点A、B、C和D。
6.根据权利要求5所述的二维码扭曲图像的图像校正方法,其特征在于,所述步骤33)中,如果其中一条直线与二维码图像轮廓的切点为一个,则该切点为二维码扭曲图像的一个角点;如果其中一条直线与二维码扭曲图像的轮廓的切点不只一个,则计算这组切点的重心,将计算的重心作为二维码扭曲图像的轮廓的角点。
7.根据权利要求4所述的二维码扭曲图像的图像校正方法,其特征在于,所述步骤4)包括:
41)根据上述步骤确定的二维码扭曲图像的三个位置探测图形的图形区域确定三个位置探测图形中心点O1、O2和O3的位置;
42)找出距离最远的两个位置探测图形中心点,并计算出距离最远的两个位置探测图形中心点组成的线段L0对应所在直线的斜率K;
43)根据三个位置探测图形中心点O1、O2和O3的位置,结合三次区域增长算法,分别求出三个位置探测图形的最内、中、外三个正方形区域;
44)针对每一个位置探测图形,采用两组直线逼近法,确定三个位置探测图形的外正方形区域的六个角点E、F、G、H、I和J的位置。
8.根据权利要求1所述的二维码扭曲图像的图像校正方法,其特征在于,所述步骤5)中上边界的曲线拟合步骤包括:
51)设置二维码扭曲图像的板桥P;
52)以二维码扭曲图像左上角的角点为起点,以起点为圆心,长为P的线段顺时针旋转,直到该线段的另一个端部与二维码扭曲图像的上边界接触;
53)如果接触点的个数大于一个,选择离二维码扭曲图像左上角的角点距离最近的接触点记录其坐标,并在下次迭代时以此接触点为起点;如果接触点的个数为一个,记录其坐标,并在下次迭代时以此接触点为起点;
54)直到起点的坐标与二维码扭曲图像右上角的角点的距离小于P,迭代结束,所有的起点,即为我们求得的上边界上的所有边界关键点;
55)根据二维码扭曲图像上边界的两个角点和所有边界关键点拟合上边界的边缘曲线。
9.根据权利要求1所述的二维码扭曲图像的图像校正方法,其特征在于,所述步骤6)包括:
61)利用积分的方法,求出拟合曲线上AE、FC、CG、HD、DI和JA之间曲线长度,
62)利用积分的方法,分别求出四条拟合曲线LAB、LBC、LCD和LDA的分别对应的长度L1、L2、L3和L4;
63)根据校正图像的大小n,求出扭曲二维码图像每条边的伸缩系数
64)根据二维码的边缘曲线求出扭曲图像上的对应点在拟合曲线上的对应长度,再求出相应的校正图形上的对应点
LA′E,=ki*LAE
65)利用映射关系完成扭曲图像的校正
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511033772.6A CN105701434A (zh) | 2015-12-30 | 2015-12-30 | 二维码扭曲图像的图像校正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511033772.6A CN105701434A (zh) | 2015-12-30 | 2015-12-30 | 二维码扭曲图像的图像校正方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105701434A true CN105701434A (zh) | 2016-06-22 |
Family
ID=56226875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511033772.6A Pending CN105701434A (zh) | 2015-12-30 | 2015-12-30 | 二维码扭曲图像的图像校正方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105701434A (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127097A (zh) * | 2016-06-23 | 2016-11-16 | 北京印刷学院 | 一种棱柱体表面的二维码的生成和采集方法 |
CN106156684A (zh) * | 2016-06-30 | 2016-11-23 | 南京理工大学 | 一种二维码识别方法及装置 |
CN106682560A (zh) * | 2016-12-28 | 2017-05-17 | 深圳市共进电子股份有限公司 | 二维码识别方法、装置和系统 |
CN107679436A (zh) * | 2017-09-04 | 2018-02-09 | 华南理工大学 | 一种适用于弯曲形变二维码的图像修正方法 |
CN108009460A (zh) * | 2017-12-29 | 2018-05-08 | 姚佑霖 | 复杂背景下多种字符和数字混合的叠加二维码的识别方法 |
CN108038406A (zh) * | 2017-12-07 | 2018-05-15 | 王群 | 电表显示图像的投影校正方法和系统 |
CN108345816A (zh) * | 2018-01-29 | 2018-07-31 | 广州中大微电子有限公司 | 一种在光照不均匀下的二维码提取方法及系统 |
CN108921804A (zh) * | 2018-07-04 | 2018-11-30 | 苏州大学 | 扭曲文档图像的校正方法 |
CN109584239A (zh) * | 2018-12-13 | 2019-04-05 | 华南理工大学 | 一种基于反射光的高光物体表面缺陷检测系统及方法 |
CN109934038A (zh) * | 2019-03-18 | 2019-06-25 | 阿里巴巴集团控股有限公司 | 二维码校正方法、装置及设备 |
CN110349111A (zh) * | 2019-07-16 | 2019-10-18 | 济南浪潮高新科技投资发展有限公司 | 一种包含二维码图像的矫正方法和装置 |
CN110399956A (zh) * | 2019-07-31 | 2019-11-01 | 中国工商银行股份有限公司 | 用于识别二维码的方法、装置、电子设备以及介质 |
CN110443089A (zh) * | 2019-07-31 | 2019-11-12 | 中国工商银行股份有限公司 | 用于识别二维码的方法、装置、电子设备以及介质 |
CN110705329A (zh) * | 2019-09-30 | 2020-01-17 | 联想(北京)有限公司 | 一种处理方法、装置及电子设备 |
CN110769221A (zh) * | 2018-12-21 | 2020-02-07 | 成都极米科技股份有限公司 | 在拍摄图像中检测投影图像的角点的方法和投影仪 |
WO2020119301A1 (zh) * | 2018-12-11 | 2020-06-18 | 阿里巴巴集团控股有限公司 | 二维码识别方法、装置及设备 |
CN111337011A (zh) * | 2019-12-10 | 2020-06-26 | 亿嘉和科技股份有限公司 | 一种基于激光和二维码融合的室内定位方法 |
CN111429516A (zh) * | 2020-03-23 | 2020-07-17 | 上海眼控科技股份有限公司 | 车架号的角点定位方法、装置、计算机设备及存储介质 |
CN111428707A (zh) * | 2020-06-08 | 2020-07-17 | 北京三快在线科技有限公司 | 图形识别码的识别方法、装置、存储介质及电子设备 |
CN111681284A (zh) * | 2020-06-09 | 2020-09-18 | 商汤集团有限公司 | 一种角点检测方法、装置、电子设备及存储介质 |
CN113723136A (zh) * | 2021-08-31 | 2021-11-30 | 杭州海康威视数字技术股份有限公司 | 条码矫正方法、装置、设备及存储介质 |
CN113947097A (zh) * | 2020-07-15 | 2022-01-18 | 华为技术有限公司 | 一种二维码识别的方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050121520A1 (en) * | 2003-12-05 | 2005-06-09 | Fujitsu Limited | Code type determining method and code boundary detecting method |
CN1924899A (zh) * | 2006-09-26 | 2007-03-07 | 福建榕基软件开发有限公司 | 复杂背景下qr码图像符号区域的精确定位方法 |
CN102096795A (zh) * | 2010-11-25 | 2011-06-15 | 西北工业大学 | 磨损二维条码图像识别方法 |
CN102902945A (zh) * | 2012-09-28 | 2013-01-30 | 南京汇兴博业数字设备有限公司 | 基于快速响应矩阵码外轮廓的畸变校正方法 |
-
2015
- 2015-12-30 CN CN201511033772.6A patent/CN105701434A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050121520A1 (en) * | 2003-12-05 | 2005-06-09 | Fujitsu Limited | Code type determining method and code boundary detecting method |
CN1924899A (zh) * | 2006-09-26 | 2007-03-07 | 福建榕基软件开发有限公司 | 复杂背景下qr码图像符号区域的精确定位方法 |
CN102096795A (zh) * | 2010-11-25 | 2011-06-15 | 西北工业大学 | 磨损二维条码图像识别方法 |
CN102902945A (zh) * | 2012-09-28 | 2013-01-30 | 南京汇兴博业数字设备有限公司 | 基于快速响应矩阵码外轮廓的畸变校正方法 |
Non-Patent Citations (1)
Title |
---|
李絮: "扭曲二维码的识别算法研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127097A (zh) * | 2016-06-23 | 2016-11-16 | 北京印刷学院 | 一种棱柱体表面的二维码的生成和采集方法 |
CN106127097B (zh) * | 2016-06-23 | 2019-03-12 | 北京印刷学院 | 一种棱柱体表面的二维码的生成和采集方法 |
CN106156684B (zh) * | 2016-06-30 | 2019-01-18 | 南京理工大学 | 一种二维码识别方法及装置 |
CN106156684A (zh) * | 2016-06-30 | 2016-11-23 | 南京理工大学 | 一种二维码识别方法及装置 |
CN106682560B (zh) * | 2016-12-28 | 2020-01-31 | 深圳市共进电子股份有限公司 | 二维码识别方法、装置和系统 |
CN106682560A (zh) * | 2016-12-28 | 2017-05-17 | 深圳市共进电子股份有限公司 | 二维码识别方法、装置和系统 |
CN107679436A (zh) * | 2017-09-04 | 2018-02-09 | 华南理工大学 | 一种适用于弯曲形变二维码的图像修正方法 |
CN107679436B (zh) * | 2017-09-04 | 2020-04-28 | 华南理工大学 | 一种适用于弯曲形变二维码的图像修正方法 |
CN108038406A (zh) * | 2017-12-07 | 2018-05-15 | 王群 | 电表显示图像的投影校正方法和系统 |
CN108009460A (zh) * | 2017-12-29 | 2018-05-08 | 姚佑霖 | 复杂背景下多种字符和数字混合的叠加二维码的识别方法 |
CN108345816A (zh) * | 2018-01-29 | 2018-07-31 | 广州中大微电子有限公司 | 一种在光照不均匀下的二维码提取方法及系统 |
CN108921804A (zh) * | 2018-07-04 | 2018-11-30 | 苏州大学 | 扭曲文档图像的校正方法 |
TWI726422B (zh) * | 2018-12-11 | 2021-05-01 | 開曼群島商創新先進技術有限公司 | 二維碼識別方法、裝置及設備 |
WO2020119301A1 (zh) * | 2018-12-11 | 2020-06-18 | 阿里巴巴集团控股有限公司 | 二维码识别方法、装置及设备 |
CN109584239A (zh) * | 2018-12-13 | 2019-04-05 | 华南理工大学 | 一种基于反射光的高光物体表面缺陷检测系统及方法 |
CN109584239B (zh) * | 2018-12-13 | 2024-02-06 | 华南理工大学 | 一种基于反射光的高光物体表面缺陷检测系统及方法 |
CN110769221B (zh) * | 2018-12-21 | 2021-09-28 | 成都极米科技股份有限公司 | 在拍摄图像中检测投影图像的角点的方法和投影仪 |
CN110769221A (zh) * | 2018-12-21 | 2020-02-07 | 成都极米科技股份有限公司 | 在拍摄图像中检测投影图像的角点的方法和投影仪 |
CN109934038A (zh) * | 2019-03-18 | 2019-06-25 | 阿里巴巴集团控股有限公司 | 二维码校正方法、装置及设备 |
CN109934038B (zh) * | 2019-03-18 | 2021-12-07 | 创新先进技术有限公司 | 二维码校正方法、装置及设备 |
CN110349111B (zh) * | 2019-07-16 | 2021-10-22 | 山东浪潮科学研究院有限公司 | 一种包含二维码图像的矫正方法和装置 |
CN110349111A (zh) * | 2019-07-16 | 2019-10-18 | 济南浪潮高新科技投资发展有限公司 | 一种包含二维码图像的矫正方法和装置 |
CN110399956A (zh) * | 2019-07-31 | 2019-11-01 | 中国工商银行股份有限公司 | 用于识别二维码的方法、装置、电子设备以及介质 |
CN110443089A (zh) * | 2019-07-31 | 2019-11-12 | 中国工商银行股份有限公司 | 用于识别二维码的方法、装置、电子设备以及介质 |
CN110705329B (zh) * | 2019-09-30 | 2021-09-14 | 联想(北京)有限公司 | 一种处理方法、装置及电子设备 |
CN110705329A (zh) * | 2019-09-30 | 2020-01-17 | 联想(北京)有限公司 | 一种处理方法、装置及电子设备 |
CN111337011A (zh) * | 2019-12-10 | 2020-06-26 | 亿嘉和科技股份有限公司 | 一种基于激光和二维码融合的室内定位方法 |
CN111429516A (zh) * | 2020-03-23 | 2020-07-17 | 上海眼控科技股份有限公司 | 车架号的角点定位方法、装置、计算机设备及存储介质 |
CN111428707A (zh) * | 2020-06-08 | 2020-07-17 | 北京三快在线科技有限公司 | 图形识别码的识别方法、装置、存储介质及电子设备 |
CN111681284A (zh) * | 2020-06-09 | 2020-09-18 | 商汤集团有限公司 | 一种角点检测方法、装置、电子设备及存储介质 |
CN113947097A (zh) * | 2020-07-15 | 2022-01-18 | 华为技术有限公司 | 一种二维码识别的方法及电子设备 |
CN113947097B (zh) * | 2020-07-15 | 2024-04-09 | 花瓣云科技有限公司 | 一种二维码识别的方法及电子设备 |
CN113723136A (zh) * | 2021-08-31 | 2021-11-30 | 杭州海康威视数字技术股份有限公司 | 条码矫正方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105701434A (zh) | 二维码扭曲图像的图像校正方法 | |
CN105069394B (zh) | 二维码加权平均灰度法解码方法及系统 | |
CN107230202B (zh) | 路面病害图像的自动识别方法和系统 | |
CN103226820B (zh) | 改进的二维最大熵分割夜视图像融合目标检测算法 | |
CN103218605B (zh) | 一种基于积分投影与边缘检测的快速人眼定位方法 | |
CN103679677B (zh) | 一种基于模型互更新的双模图像决策级融合跟踪方法 | |
CN104424457A (zh) | 一种非线性扭曲情况下的二维码识别方法 | |
CN107038416B (zh) | 一种基于二值图像改进型hog特征的行人检测方法 | |
CN103578084A (zh) | 基于亮通道滤波的彩色图像增强方法 | |
CN103310453A (zh) | 一种基于子图像角点特征的快速图像配准方法 | |
CN109308713B (zh) | 一种基于前视声纳的改进核相关滤波水下目标跟踪方法 | |
CN105182350A (zh) | 一种应用特征跟踪的多波束声呐目标探测方法 | |
CN109961416B (zh) | 一种基于形态学梯度多尺度融合的营业执照信息提取方法 | |
CN103093203A (zh) | 一种人体再识别方法以及人体再识别系统 | |
CN110246154B (zh) | 一种基于ica-r多特征融合与自适应更新的视觉目标跟踪方法 | |
CN107578039A (zh) | 基于数字图像处理技术的字迹轮廓比对方法 | |
CN102147867A (zh) | 一种基于主体的国画图像和书法图像的识别方法 | |
CN108229247A (zh) | 一种移动车辆检测方法 | |
CN108319961B (zh) | 一种基于局部特征点的图像roi快速检测方法 | |
CN101976347A (zh) | 基于Mean Shift分割的遥感图像中水上桥梁识别方法 | |
CN113673384A (zh) | Lm滤波器组引导纹理特征自主学习的甲骨文字检测方法 | |
CN109784216A (zh) | 基于概率图的车载热成像行人检测RoIs提取方法 | |
CN111476723A (zh) | 一种Landsat-7扫描线纠正器失效的遥感图像丢失像素恢复方法 | |
CN116883588A (zh) | 一种大场景下的三维点云快速稠密重建方法及系统 | |
CN109858484B (zh) | 一种基于偏斜评价的多类别变换车牌校正方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160622 |
|
RJ01 | Rejection of invention patent application after publication |