CN1924898A - 畸变qr码图像的扭正方法 - Google Patents
畸变qr码图像的扭正方法 Download PDFInfo
- Publication number
- CN1924898A CN1924898A CN 200610113377 CN200610113377A CN1924898A CN 1924898 A CN1924898 A CN 1924898A CN 200610113377 CN200610113377 CN 200610113377 CN 200610113377 A CN200610113377 A CN 200610113377A CN 1924898 A CN1924898 A CN 1924898A
- Authority
- CN
- China
- Prior art keywords
- point
- indicating number
- sign indicating
- summit
- farthest
- 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.)
- Granted
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
一种畸变QR码图像的扭正方法,包括步骤:1)通过畸变QR码图像的三个已知顶点检测出该图像的旋转类型;2)利用最远双切线逼近法得到对应于正常QR码图像右下角的顶点;3)通过反透视变换扭正所述的QR码图像。该方法仅需指定QR码符号区域始终存在的三个顶点,即可实现图像的精确扭正。该方法采用的最远双切线逼近法实现了对未指定且可能实际不存在的第四顶点的精确逼近,因为如果选取的切点较近,交点位于线段的延长线上很远的地方,容易产生发散误差。而最远双切线逼近法最大限度地减小了这种发散误差。
Description
技术领域
本发明涉及一种二维条码的图像处理方法,尤其是一种针对QR码畸变图像的扭正方法,属于图像处理技术领域。
背景技术
QR码,又称快速响应码,是国家标准GB/T 18284-2000规定的用于自动识别和数据采集的快速响应矩阵码。如图1所示,QR码是由一系列深色和浅色的模块组成的矩形阵列符号,分为功能图形和编码区域两个部分。其中,功能图形包括:位置探测图形,也称为寻像图形,是三个分别位于矩阵符号的左上角、右上角和左下角的相同的正方形符号,每个位置探测图形的模块序列由一个深色-浅色-深色-浅色-深色次序构成,各元素的相对宽度的比例是1∶1∶3∶3∶1;用于确定矩阵符号位置的一个固定图形,即校正图形;用于确定符号中模块的坐标的定位图形。编码区域至少包括:数据和纠错字码;用于对编码区域的剩余部分进行译码的格式信息。
畸变QR码图像的扭正的一般方法是,在已知QR码符号区域(注:是一个四边形)的四个顶点的前提下,进行反透视变换。如图2所示,反透视变换的原理介绍如下:
透视变换是中心投影的射影变换,常用于图像的校正,例如在移动机器人视觉导航研究中,由于摄像机与地面之间有一倾斜角,而不是直接垂直朝下(正投影),有时希望将图像校正成正投影的形式,就需要利用透视变换。如图4所示,透视变换将(x;y)坐标系中的四个顶点(xi;yi)映射到(u;v)坐标系的四个顶点(ui;vi)(i=1,2,3,4):
其中,c22=1,其它系数c00>>c22可由下式计算得到:
透视变换是从源图映射到目的图,反透视变换就是设目的图的图像区域的所有内点坐标已知,然后去源图中找对应点。因为目的图的图像区域是正则的,那么其所有内点坐标很容易得到,这样通过反透视变换就规避了在源图中找内点这一复杂的计算和判断。设函数f(x;y)表示目的图位于坐标(x;y)的一个像素点的灰度值,函数g(u;v)表示源图中位于坐标(u;v)的一个像素点的灰度值。那么就可以使用如下等式进行反透视变换:
上述的习知技术的缺点是:
1、需要知道QR码符号区域的四个顶点;
2、根据QR码的编码规则,QR码符号区域的其中一个顶点不一定存在,如图2所示。即使指定的这个不存在点的定位偏差很小,也将很大地影响扭正的效果。
2、根据QR码的编码规则,QR码符号区域的其中一个顶点并非总是存在的,如图3所示,该点也可能是空白的。即使指定的这个不存在点的定位偏差很小,也将很大地影响扭正的效果。
发明内容
针对上述问题,本发明的目的在于提供一种畸变QR码图像的扭正方法。发明构思为:QR码符号区域有三个顶点始终存在,所以这三个顶点的精确指定是相对容易的。那么,可以从这三个顶点出发精确逼近另外一个顶点(即使该定点实际不存在),然后进行扭正。具体做法是:首先通过对旋转和畸变的QR码图像的旋转检测,找出三个位置探测图形分别在正则QR码图像中的位置;而后通过反透视变换实现图像的快速旋转纠正;再利用双切线逼近算法精确地查找出QR码图像的第四个顶点,在此基础上对QR码图像再次进行反透视变换,准确地将旋转畸变的QR码图像复原成正则图像。其中,所述的QR码图像的第四个顶点是指整个QR码符号区域的正方形顶点,该顶点在图像中实际上可能是一个模块的顶点,也可能是空白的,如图3所示。
根据上述发明构思,在已知QR码符号区域始终存在的三个顶点的前提下,本发明的技术方案介绍如下:
1.QR码图像符号区域的旋转检测:
通过三个已知的顶点我们可以由下述步骤得出QR码图像符号区域的旋转类型:
1)、将三个已知的顶点相连得到一个三角形;
2)、求该三角形边长最长的边,其相对的三角形顶点是对应于正常QR码符号区域左上角的顶点,设为P1;
3)、以该顶点P1为中心,逆时针方向观察该三角形另外的两个顶点,遇到的第一个顶点是对应于正常QR码符号区域左下角的顶点,设为P2。另外一个顶点则是对应于正常QR码符号区域右上角的顶点,设为P4。
这样我们就得到三个已知顶点在正常的QR码符号区域中对应的位置,即P1对应于正常QR码的符号区域左上角的顶点,P2是对应于正常QR码符号区域左下角的顶点,P4是对应于正常QR码符号区域右上角的顶点,如图4所示。
2.利用最远双切线逼近法得到对应于正常QR码图像符号区域的右下角的顶点:
下面我们根据步骤1确定的P1、P2、P1,利用最远双切线逼近的方法来得到对应于正常QR码图像符号区域的右下角的顶点,设该顶点为P3,P3可能是位于浅颜色模块顶点而实际上是一个虚拟的顶点。
1)如图5所示,过点P2、P4作一条直线,设为直线P2P4。直线P2P4将图像平面分为两个部分,设为A区和B区,其中,P1点所在的平面区域为A区,另一平面区域为B区;
2)在B区中找这样一点K2,定义K2为P2的最远切点,如图6所示,K2满足:
i)是位于QR码符号区域的深色模块中的一点;
ii)QR码符号区域的所有深色模块位于直线P2K2的一侧,可以形象地说直线P2K2与QR码符号区域“相切”;
iii)在同时满足条件i)和条件ii)的所有点中,K2是距离点P2最远的一点;
我们通过以下步骤得到K2:
(21)设置一个点的集合S,初始值为空集;
(22)在B区的QR码图像的符号区域的深色模块中得到一点K2’,K2’是未处理过的点;
(23)若QR码符号区域的所有深色模块位于直线P2K2’的一侧,则将点K2’加入集合S;
(24)若QR码图像的符号区域的深色模块中仍有未处理的点,则转到步骤(22),否则计算集合S中所有点到点P2的距离,其中距离P2最远的点即所求得最远切点K2。
3)在B区中找这样一点K4,定义K4为P4的最远切点,如图6所示,K4满足:
i)是位于QR码符号区域的深色模块中的一点;
ii)QR码符号区域的所有深色模块位于直线P4K4的一侧,可以形象地说直线P4K4与QR码符号区域“相切”;
iii)在同时满足条件i)和条件ii)的所有点中,K4是距离点P4最远的一点;
我们通过以下步骤得到K4:
(31)设置一个点的集合S,初始值为空集;
(32)在B区的QR码图像的符号区域的深色模块中得到一点K4’,K4’是未处理过的点;
(33)若QR码符号区域的所有深色模块位于直线P4K4’的一侧,则将点K4’加入集合S;
(34)若QR码图像的符号区域的深色模块中仍有未处理的点,则转到步骤(32),否则计算集合S中所有点到点P4的距离,其中距离P4最远的点即所求得最远切点K4。
4)过点P2、P4、K2、K4,分别作直线P2K2和直线P4K4,其交点即为我们所求的P3点,如图7所示。
3.使用反透视变换对图形进行扭正:
根据步骤1得到的点P1、P2、P4,以及步骤2得到的点P3,使用反透视变换对图像进行扭正。
本发明的技术效果是:
1、仅需指定QR码符号区域始终存在的三个顶点,即可实现图像的精确扭正;
2、最远双切线逼近法实现了对未指定且可能实际不存在的第四顶点的精确逼近,因为如果选取的切点较近,交点位于线段的延长线上很远的地方,容易产生发散误差。而最远双切线逼近法最大限度地减小了这种发散误差。
附图说明
图1是QR码的结构示意图;
图2是本发明所采用的透视变换方法的原理示意图;
图3是表示QR码图像区域的第四个顶点可能不存在的情形;
图4表示通过旋转检测出已知的三个定点的位置;
图5表示最远双切线算法的第一个步骤的示意图;
图6表示最远双切线算法的第二个步骤的示意图;
图7表示通过最远双切线逼近算法得到QR码图像区域第四个顶点的示意图;
图8是本发明实施例中使用的实际拍摄的QR码图像原图;
图9表示通过旋转检测确定的图8中三个顶点的位置;
图10表示通过最远双切线逼近方法得到图9中图像的第四个顶点;
图11表示对图10进行反透视变换的结果。
具体实施方式
下面针对一张实际拍摄的QR码图片进行精确扭正,原图如图8所示。
1.QR码图像符号区域的旋转检测:
1)、将三个已知的顶点相连得到一个三角形;
2)、求该三角形边长最长的边,其相对的三角形顶点是对应于正常QR码符号区域左上角的顶点,设为P1;
3)、以该顶点P1为中心,逆时针方向观察该三角形另外的两个顶点,遇到的第一个顶点是对应于正常QR码符号区域左下角的顶点,设为P2。另外一个顶点则是对应于正常QR码符号区域右上角的顶点,设为P4。
这样我们就得到三个已知的顶点在正常的QR码符号区域中对应的位置,即P1对应于正常QR码的符号区域左上角的顶点,P2是对应于正常QR码符号区域左下角的顶点,P4是对应于正常QR码符号区域右上角的顶点。如图9所示。
2.利用最远双切线逼近法得到对应于正常QR码图像符号区域的右下角的顶点:
1)过点P2、P4作一条直线,设为直线P2P4。直线P2P4将图像平面分为两个部分,设为A区和B区,其中,P1点所在的平面区域为A区,另一平面区域为B区;
2)在B区中通过下列步骤寻找点K2;
(21)设置一个点的集合S,初始值为空集;
(22)在B区的QR码图像的符号区域的深色模块中得到一点K2’,K2’是未处理过的点;
(23)若QR码符号区域的所有深色模块位于直线P2K2’的一侧,则将点K2’加入集合S;
(24)若QR码图像的符号区域的深色模块中仍有未处理的点,则转到步骤(22),否则计算集合S中所有点到点P2的距离,其中距离P2最远的点即所求得最远切点K2。
3)在B区通过下列步骤寻找点K4:
(31)设置一个点的集合S,初始值为空集;
(32)在B区的QR码图像的符号区域的深色模块中得到一点K4’,K4’是未处理过的点;
(33)若QR码符号区域的所有深色模块位于直线P4K4’的一侧,则将点K4’加入集合S;
(34)若QR码图像的符号区域的深色模块中仍有未处理的点,则转到步骤(32),否则计算集合S中所有点到点P4的距离,其中距离P4最远的点即所求得最远切点K4。
4)过点P2、P4、K2、K4,分别作直线P2K2和直线P4K4,其交点即为QR码区域的第四个顶点P3点,如图10所示。
3.使用反透视变换对图形进行扭正
根据步骤1得到的点P1、P2、P1,以及步骤2得到的点P3,使用反透视变换对图像进行扭正。扭正的效果见图11。
Claims (5)
1.一种畸变QR码图像的扭正方法,包括步骤:
1)通过畸变QR码图像的三个已知顶点检测出该图像的旋转类型;
2)利用最远双切线逼近法得到对应于正常QR码图像右下角的顶点;
3)通过反透视变换扭正所述的QR码图像。
2.如权利要求1所述的方法,其特征在于,所述的步骤1)还包括:
11)将三个已知的顶点相连得到一个三角形;
12)求该三角形边长最长的边,其相对的三角形顶点是对应于正常QR码符号区域左上角的顶点,设为P1;
13)以该顶点P1为中心,逆时针方向观察该三角形另外的两个顶点,遇到的第一个顶点是对应于正常QR码符号区域左下角的顶点,设为P2,另外一个顶点则是对应于正常QR码符号区域右上角的顶点,设为P4。
3.如权利要求2所述的方法,其特征在于,所述的步骤2)还包括:
21)过点P2、P4作一条直线,设为直线P2P4,直线P2P4将QR码图像平面分为两个部分,其中,P1点所在的平面区域为A区,另一平面区域为B区;
22)在B区中找这样一点K2,定义K2为P2的最远切点,K2满足:
A)是位于QR码符号区域的深色模块中的一点;
B)QR码符号区域的所有深色模块位于直线P2K2的一侧;
C)在同时满足条件A)和B)的所有点中,K2是距离点P2最远的一点;
23)在B区中找这样一点K4,定义K4为P4的最远切点,K4满足:
D)是位于QR码符号区域的深色模块中的一点;
E)QR码符号区域的所有深色模块位于直线P4K4的一侧;
F)在同时满足条件D)和E)的所有点中,K4是距离点P4最远的一点。
4.如权利要求3所述的方法,其特征在于,查找所述的点K2的具体步骤是:
a.设置一个点的集合S,初始值为空集;
b.在B区的QR码图像的符号区域的深色模块中得到一点K2’,K2’是未处理过的点;
c.若QR码图像区域的所有深色模块位于直线P2K2’的一侧,则将点K2’加入集合S;
d.若QR码图像区域的深色模块中仍有未处理的点,则转到步骤b,否则计算集合S中所有点到点P2的距离,其中距离P2最远的点即所求得最远切点K2。
5.如权利要求3所述的方法,其特征在于,查找所述的点K4的具体步骤是:
e.设置一个点的集合S,初始值为空集;
f.在B区的QR码图像的符号区域的深色模块中得到一点K4’,K4’是未处理过的点;
g.若QR码图像区域的所有深色模块位于直线P4K4’的一侧,则将点K4’加入集合S;
h.若QR码图像区域的深色模块中仍有未处理的点,则转到步骤b,否则计算集合S中所有点到点P2的距离,其中距离P2最远的点即所求得最远切点K4。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006101133773A CN100383810C (zh) | 2006-09-26 | 2006-09-26 | 畸变qr码图像的扭正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006101133773A CN100383810C (zh) | 2006-09-26 | 2006-09-26 | 畸变qr码图像的扭正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1924898A true CN1924898A (zh) | 2007-03-07 |
CN100383810C CN100383810C (zh) | 2008-04-23 |
Family
ID=37817526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101133773A Active CN100383810C (zh) | 2006-09-26 | 2006-09-26 | 畸变qr码图像的扭正方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100383810C (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100589116C (zh) * | 2007-06-14 | 2010-02-10 | 中兴通讯股份有限公司 | 一种透视快速响应矩阵二维码图案校正的方法及系统 |
CN104835184A (zh) * | 2014-02-10 | 2015-08-12 | 成都理想境界科技有限公司 | 图像中四边形区域的提取方法 |
CN105704374A (zh) * | 2016-01-29 | 2016-06-22 | 努比亚技术有限公司 | 一种图像转换装置、方法和终端 |
CN112529097A (zh) * | 2020-12-23 | 2021-03-19 | 北京百度网讯科技有限公司 | 样本图像生成方法、装置以及电子设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111222613B (zh) * | 2020-04-16 | 2020-07-28 | 上海商魁信息科技有限公司 | 一种处理二维码的方法、装置和计算机存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003248792A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | 2次元コードのデコード方法、2次元コードのデコード装置、コンピュータに2次元コードのデコード方法を実行させるためのプログラム、このプログラムを記録した記録媒体 |
CN1184582C (zh) * | 2003-03-25 | 2005-01-12 | 西安理工大学 | 基于通用办公设备的二维条码自动识读方法 |
SE0301143D0 (sv) * | 2003-04-17 | 2003-04-17 | C Technologies Ab | Sätt och anordning för inläsning av data |
CN1217290C (zh) * | 2003-07-07 | 2005-08-31 | 西安理工大学 | 二维条码身份证件防伪系统自动识读方法 |
WO2005121048A1 (ja) * | 2004-06-11 | 2005-12-22 | Masahiro Kubuki | 二次元コード付きタイルおよびその製造方法 |
-
2006
- 2006-09-26 CN CNB2006101133773A patent/CN100383810C/zh active Active
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100589116C (zh) * | 2007-06-14 | 2010-02-10 | 中兴通讯股份有限公司 | 一种透视快速响应矩阵二维码图案校正的方法及系统 |
CN104835184A (zh) * | 2014-02-10 | 2015-08-12 | 成都理想境界科技有限公司 | 图像中四边形区域的提取方法 |
CN104835184B (zh) * | 2014-02-10 | 2018-03-20 | 成都理想境界科技有限公司 | 图像中四边形区域的提取方法 |
CN105704374A (zh) * | 2016-01-29 | 2016-06-22 | 努比亚技术有限公司 | 一种图像转换装置、方法和终端 |
CN112529097A (zh) * | 2020-12-23 | 2021-03-19 | 北京百度网讯科技有限公司 | 样本图像生成方法、装置以及电子设备 |
CN112529097B (zh) * | 2020-12-23 | 2024-03-26 | 北京百度网讯科技有限公司 | 样本图像生成方法、装置以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN100383810C (zh) | 2008-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5905642B2 (ja) | マトリックス型2次元コードの復号化方法 | |
CN110570429B (zh) | 一种基于三维点云的轻量级实时语义分割方法 | |
CN110458898A (zh) | 相机标定板、标定数据采集方法、畸变校正方法及装置 | |
JP7088597B2 (ja) | 機械可読性物品のための耐遮蔽性光学コード | |
US10924729B2 (en) | Method and device for calibration | |
US9829309B2 (en) | Depth sensing method, device and system based on symbols array plane structured light | |
CN100347714C (zh) | 用于定位二维条形码的方法和设备 | |
CN1156758C (zh) | 校准计算机产生的投影图像的方法和装置 | |
CN107993263B (zh) | 环视系统自动标定方法、汽车、标定装置及存储介质 | |
CN1091270C (zh) | 零部件检测方法 | |
US9977981B2 (en) | Method and apparatus for calibrating a three-dimensional (3D) image in a tiled display | |
CN1908955A (zh) | 一种易于全方位识别的三边形多维条码及其识读方法 | |
CN1187962C (zh) | 经图形用户界面来外部校准摄象机的方法和装置 | |
CN103632181B (zh) | 一种三维图像码的生成和解析方法及其装置 | |
CN1734472A (zh) | 生成劣化字符图像的方法和装置 | |
CN112949633A (zh) | 一种基于改进YOLOv3的红外目标检测方法 | |
CN1924898A (zh) | 畸变qr码图像的扭正方法 | |
CN1853094A (zh) | 使用光学式触觉传感器的力矢量再构成法 | |
CN1566906A (zh) | 一种基于平面靶标的结构光视觉传感器标定方法 | |
CN106560835A (zh) | 一种路牌识别方法及装置 | |
CN1897715A (zh) | 立体视觉半实物仿真系统及方法 | |
CN105095937B (zh) | 一种基于直线聚类的圆形阵列图形码的视觉识别方法 | |
CN105139401A (zh) | 一种深度图中深度的可信度的评估方法 | |
CN106845314A (zh) | 一种二维码的快速定位方法 | |
JP3301030B2 (ja) | 円形状に配列された文字を直線状に配列された文字に変換する方法および装置、並びに、文字認識方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP01 | Change in the name or title of a patent holder |
Address after: No. 89, software Avenue, Gulou District, Fujian, Fuzhou Patentee after: Fujian Rongji Software Co., Ltd. Address before: No. 89, software Avenue, Gulou District, Fujian, Fuzhou Patentee before: Fujian Rongji Software Development Co., Ltd. |
|
C56 | Change in the name or address of the patentee |
Owner name: FUJIAN RONGJI SOFTWARE CO., LTD. Free format text: FORMER NAME: FUJIAN RONGJI SOFTWARE DEVELOPMENT CO., LTD. |