CN104517108B - 一种确定qr码二值化图像边缘线的方法及系统 - Google Patents
一种确定qr码二值化图像边缘线的方法及系统 Download PDFInfo
- Publication number
- CN104517108B CN104517108B CN201310454909.XA CN201310454909A CN104517108B CN 104517108 B CN104517108 B CN 104517108B CN 201310454909 A CN201310454909 A CN 201310454909A CN 104517108 B CN104517108 B CN 104517108B
- Authority
- CN
- China
- Prior art keywords
- line
- point
- edge
- codes
- position line
- 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.)
- Expired - Fee Related
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/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
-
- 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
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)
- Image Processing (AREA)
Abstract
本发明所述的一种确定QR码二值化图像边缘线的方法及系统,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线,因为即使QR码图像发生了畸变,定位点到达QR码边缘的距离也不会改变,因此利用该距离获取QR码边缘所在的定位线,相对来说误差较小。而QR码图像在发生畸变时,基本上都是向外凸出,因此所确定的定位线的位置是在QR码图像的内部,QR码的实际的边缘应该是一部分与定位线重叠,一部分在定位线的外侧,所以沿定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线为QR码的边缘线,由此确定的边缘线不但具有较小的误差,而且在整个过程中运算量很小,能够快速检测到QR码的边缘。
Description
技术领域
本发明涉及一种图像处理技术,具体地说是一种确定QR码二值化图像边缘线的方法及系统。
背景技术
QR码,又称快速响应码,是一种矩阵二维码符号,QR码具有高容量、高密度、纠错能力强、安全强度高等特点,得到了广泛的应用。QR码图像识别过程的一般方法是首先对QR码图像进行二值化处理,然后对QR码二值化图像进行识别与解码。在QR码二值化图像解码过程中,需要确定QR码二值化图像的边缘所在位置,QR码图像如果是平面图形,则确定QR码边缘位置相对简单。可是在实际情况中,QR码经常是在一些比如瓶体等非平面物体上,这样拍摄得到的QR码图像中,QR码本身的畸变就比较严重,再加上环境噪声的影响,以及二值化过程的干扰都会使得获得的QR码二值化图像的边缘整清晰度较差,给确定QR码的边缘位置带来干扰。
现有技术中的确定QR码边缘位置均采用某种特定的数学算法,提取QR码图像和背景之间的交界线,得到QR码图像的轮廓。常规的方法,是通过对原始图像中像素点的某小邻域构造边缘位置确定算子来确定QR码的边缘所在的位置。一般采用Sobel算子、Prewitt算子、Roberts算子等。无论上述哪种算法,都对QR码边缘的整齐度要求较高,诸如瓶体上的QR码等畸变较严重的QR码来说,上述算法得到的边缘结果准确度较差。
发明内容
为此,本发明所要解决的技术问题在于现有技术中无法在各种复杂的情况下简单、准确的确定QR码边缘的位置,从而提出一种确定QR码二值化图像边缘线的方法及系统。
为解决上述技术问题,本发明是通过以下技术方案实现的:
一种确定QR码二值化图像边缘线的方法,包括如下步骤:
获取定位线,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线;
获取边缘线,沿所述定位线的方向检测在定位线外侧的边缘点,所述边缘点连接而成的线为QR码的边缘线。
进一步地还包括如下步骤:
图像分块,将QR码二值化图像进行分块处理,选择包含QR码边缘的分块为边界块,每一边界块中至少有两个定位点到QR码边缘的距离为固定值;
所述获取定位线的步骤中,根据边界块中每一定位点的位置信息及定位点到QR码边缘的距离,确定边界块中的QR码边缘所在的定位线;
所述获取边缘线的步骤,沿边界块的所述定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线作为边界块的边缘线,每一边界块的边缘线连接得到QR码的边缘线。
进一步地所述图像分块步骤中,所述边界块为矩形且每一边界块中有四个定位点到QR码边缘的距离为固定值。
进一步地所述图像分块步骤中,所述边界块中的所述定位点选择探测图形中心点和/或校正图形中心点。
进一步地所述获取边缘线的步骤包括:
获取像素点,获取与所述定位线相邻的所有像素点;
获取检测线,针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧;
获取边缘点,沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
进一步地所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,则查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。
进一步地所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,且与该检测线相邻的黑色像素点只有一个,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。
一种确定QR码二值化图像边缘线的系统,包括:
定位线获取单元,用于根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线;
边缘线获取单元,用于沿所述定位线的方向检测在定位线外侧的边缘点,将所述边缘点连接而成的线为QR码的边缘线。
进一步地还包括:
图像分块单元,用于将QR码二值化图像进行分块处理,选择包含QR码边缘的分块为边界块,每一边界块中至少有两个定位点到QR码边缘的距离为固定值;
所述定位线获取单元中,根据边界块中每一定位点的位置信息及定位点到QR码边缘的相对距离,确定边界块中的QR码边缘所在的定位线;
所述边缘线获取单元中,沿边界块的所述定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线作为边界块的边缘线,每一边界块的边缘线连接得到QR码的边缘线。
进一步地所述图像分块单元中,设定所述边界块为矩形且每一边界块中包含四个定位点。
进一步地所述图像分块单元中,选择所述边界块中包含的选择探测图形中心点和/或校正图形中心点作为定位点。
进一步地所述边缘线获取单元包括:
像素点获取模块,用于获取与所述定位线相邻的所有像素点;
检测线获取模块,用于针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧;
边缘点获取模块,用于沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
进一步地所述边缘点获取模块,还用于在检测线上不存在黑色像素点时,查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。
进一步地所述边缘点获取模块,还用于在检测线上不存在黑色像素点且与该检测线相邻的黑色像素点只有一个时,,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。
本发明的上述技术方案相比现有技术具有以下优点:
(1)本发明所述的确定QR码二值化图像边缘线的方法及系统,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线,因为定位点到达QR码边缘的距离是已知的,即使QR码图像发生了畸变,定位点到达QR码边缘的距离也不会改变或者改变的幅度非常小,因此利用该距离获取QR码边缘所在的定位线,相对来说误差较小。而QR码图像在发生畸变时,基本上都是向外凸出,因此所确定的定位线的位置是在QR码图像的内部,QR码的实际的边缘应该是一部分与定位线重叠,一部分在定位线的外侧,所以沿定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线为QR码的边缘线,由此确定的边缘线不但具有较小的误差,而且在整个过程中运算量很小,能够快速检测到QR码的边缘。
(2)本发明所述的确定QR码二值化图像边缘线的方法及系统,通过图像分块的方法将QR码二值化图像进行分块处理,并且针对每一个边界块来确定其边缘线,最后将每一边界块的边缘线连接后便得到了整个二值化图形的边缘线。通过分块处理后,每一个边界块的面积相对于整个二值化图像来说更小,根据定位点到边缘的距离获得边界块的定位线时,误差更小,进一步提高了确定边缘线的精度。
(3)本发明所述的确定QR码二值化图像边缘线的方法及系统,边界块为矩形且每一边界块中有四个定位点到QR码边缘的距离为固定值。当边界块为矩形时,其可能包括一条边缘线或两条边缘线或三条边缘线,此时可以根据已知的四个定位点到每一条边缘线的距离来确定边缘线所在的定位线。即当边界块中包含四个定位点时,能够准确的得出矩形边界块中的边界线。
(4)本发明所述的确定QR码二值化图像边缘线的方法及系统,所述边界块中的所述定位点选择探测图形中心点和/或校正图形中心点。由于在QR码图像中,探测图形和校正图形的位置都是已知的并且探测图形和校正图形到达与边缘线的距离也都是已知的,因此选择探测图形和校正图形的中心点作为定位点可以更加方便快捷的检测到边缘线,进一步提高了确定边缘线的效率。
(5)本发明所述的确定QR码二值化图像边缘线的方法及系统,在得到定位线之后,针对定位线附近的每一像素点,获取经过该像素点的垂直于定位线的检测线,检测线延伸至定位线外侧,沿检测线方向检测定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。因为QR码发生畸变时都是向外凸出但边缘点也是在定位线附近,因此当检测线上检测到白色像素点时,基本可以认定其前边检测到的最后一个黑色像素点为实际的边缘点了。这种判定方式,原理简单,也不需要复杂的算法和步骤,具有较高的检测效率和较准确的检测结果。
(6)本发明所述的确定QR码二值化图像边缘线的方法及系统,考虑到边缘点也可能是白色像素点,因此可能无法在检测线上检测到黑色像素点,但是与该检测线相邻的两个黑色像素点已经确定,因此白色像素点作为边缘应该是在两个黑色像素点组成的直线上,因此可以通过获取两个黑色像素点与定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。由此可以保证确定边缘线时白色像素点边缘不会被忽略,提高了确定边缘线的准确性,并且使边缘线更加平滑。
(7)本发明所述的确定QR码二值化图像边缘线的方法及系统,考虑到在二值化图形的边角附近,存在边缘点为白色像素点的情况,这时在该检测线上不能检测到黑色像素点,并且与该检测线相邻的黑色像素点也只有一个,则可以近似认为该白色像素点与定位线的距离与其相邻的黑色像素点与定位线的距离是相等的。采取该方法,可以避免边角附近的白色区域被忽略的情况,并且也能够保证最终获得的边缘线的平滑性。
附图说明
为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中
图1是一种实施例所述确定QR码二值化图像边缘线的方法流程图;
图2是一种QR码的二值化图形;
图3是图2所示二值化图形在坐标系中的示意图;
图4是一种实施例所述确定QR码二值化图像边缘线方法流程图;
图5是一种实施例的二值化图形分块后的示意图;
图6是图5所示二值化图形的左下角部分的放大示意图;
图7是一种实施例所述确定QR码二值化图像边缘线的系统原理框图;
图8是一种实施例所述确定QR码二值化图像边缘线的系统原理框图;
图9是一种实施例所述确定QR码二值化图像边缘线系统原理框图。
具体实施方式
实施例1
本实施例提供一种确定QR码二值化图像边缘线的方法,如图1所示,包括如下步骤:
获取定位线,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线。
获取边缘线,沿所述定位线的方向检测在定位线外侧的边缘点,将所述边缘点连接而成的线为QR码的边缘线。
所述定位点的位置信息可以为定位点在QR码图像所在坐标系下的坐标值,也可以为其在所述QR码图像中的相对位置,例如当定位点为一个像素点时,可以获得该定位点所在的模块在横向和纵向上的位置,并继续获得该定位点在模块中所处的相对的位置,该相对位置即可最为定位点的位置信息。
如图2所示,为一张QR码二值化图像,选择图中的第一探测图形A、第二探测图形B和第三探测图形C、B和C以及右下角位置处的校正图形D为定位点。如图2所示第一探测图形A位于QR码图像的左上角,第二探测图形B位于QR码图像的右上角,第三探测图形C位于QR码图像的左下角。对于QR码图像来说,其探测图形和右下角的校正图形与QR码边缘的距离是固定的。因为每一个探测图形最外侧的黑色正方形的大小为7X7个模块,其内的白色正方形为5X5个模块,最里边的黑色正方形为3X3个模块,因此探测图形上的每一个模块以及每一个像素点与QR码边缘的距离都是已知的。同样的道理,每一个校正图形最外侧的黑色正方形为5X5个模块,其内部的白色正方形为3X3个模块,最里边的黑色正方形为1个模块大小,每一个校正图形彼此之间的相对位置关系以及校正图形与探测图形的相对位置关系以及校正图形与QR码边缘的相对位置关系也是确定的值。例如,右下角的校正图形D的中心,相对于左下角的第三探测图形C的中心来说,在纵向上有三个模块的距离;同样的相对于右上角的第二探测图形B的中心,在横向上有三个模块的距离。而在QR码二值化图像中,每一个像素点与边缘的距离都是可以预先获取,因此理论上来说,每一个像素点都可以作为定位点。
本实施例中选择第一探测图形A、第二探测图形B和第三探测图形C以及校正图形D的中心点作为定位点,这种选择更容易理解且获取这四个点的位置信息时更为方便。针对图2所述的二值化图形,设其在一个坐标系中,设上述四个定位点的坐标分别为(XA,YA),(XB,YB),(XC,YC)以及(XD,YD),通过检测上述探测图形在坐标系中的位置可以获得上述坐标。并且,设第一探测图形A的中心点与上边缘和左边缘的距离均为3个模块长度,第二探测图形B的中心点与上边缘和右边缘的距离均为3个模块长度,第三探测图形C的中心点与左边缘和下边缘的距离为3个模块,校正图形D的中心点与右边缘和下边缘的距离为6个模块的长度。
则沿着水平方向和竖直方向,分别获得与上述定位点的距离满足条件的点,如图3所示。与第一探测图形A中心点在竖直方向上距离3个模块长度的点为E点,与第二探测图形B中心点在竖直方向上距离3个模块长度的点为F点,其中E点坐标应该为(XA,YA+3),F点坐标应该为(XB,YB+3)。由于(XA,YA),(XB,YB),均为已知,因此E点和F点的坐标也为已知。而根据两个点即可确定一条直线,因此根据E点和F点即可确定上边缘所在的定位线01的方程了。采用相似的方法可以获得其他三条定位线的方程。
从图3中可以看出,定位线02和定位线04基本上已经是二值化图像的边缘了。定位线01和定位线03是在QR码图像内部的,在这两条定位线的外侧依然有二值化图像的像素点存在。
针对这四条定位线,检测其外部是否还存在边缘点,可以通过检测黑色像素点来实现。检测到所有的黑色像素点之后,将所有的黑色像素点连接成线,即为QR码二值化图形的实际的边缘线。
本实施例所述的方法,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线,因为定位点到达QR码边缘的距离是已知的,即使QR码图像发生了畸变,定位点到达QR码边缘的距离也不会改变或者改变的幅度非常小,因此利用该距离获取QR码边缘所在的定位线,相对来说误差较小。而QR码图像在发生畸变时,基本上都是向外凸出,因此所确定的定位线的位置是在QR码图像的内部,QR码的实际的边缘应该是一部分与定位线重叠,一部分在定位线的外侧,所以沿定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线为QR码的边缘线,由此确定的边缘线不但具有较小的误差,而且在整个过程中运算量很小,能够快速检测到QR码的边缘。
实施例2
本实施例中的确定QR码二值化图像边缘线的方法,如图4所示,在实施例1的基础上还包括如下步骤:
图像分块,将QR码二值化图像进行分块处理,选择包含QR码边缘的分块为边界块,每一边界块中至少有两个定位点到QR码边缘的距离为固定值;
所述获取定位线的步骤中,根据边界块中每一定位点的位置信息及定位点到QR码边缘的距离,确定边界块中的QR码边缘所在的定位线;
所述获取边缘线的步骤,沿边界块的所述定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线作为边界块的边缘线,每一边界块的边缘线连接得到QR码的边缘线。
本实施例中所述的分块处理是将二值化图像分为至少两块。在进行分块操作时,可以按照平均分为两块、四块、六块甚至八块的方法,如图5所示给出了一种分为4块的方式。
从图中可以看出,每一个分块均是边界块,并且每一个边界块中均包含两条边缘线,得到每一条边缘线之后,将位于二值化图像同一面上的边缘线连接起来形成QR码的边缘线。例如,对于左上角的边界块来说,其边缘线在其图形的左侧和上方,因此左侧的边缘线一定是位于QR码的左侧,上方的边缘线一定是位于QR码的上方。同样的道理,右上角的分块其上方的边缘线一定是位于QR码的上方,将位于上方的边缘线相连便是QR码上方的边缘线。依次类推,可以得到QR码四个方位上的边缘线。
本实施例中的确定QR码二值化图像边缘线的方法,通过图像分块的方法将QR码二值化图像进行分块处理,并且针对每一个边界块来确定其边缘线,最后将每一边界块的边缘线连接后便得到了整个二值化图形的边缘线。通过分块处理后,每一个边界块的面积相对于整个二值化图像来说更小,根据定位点到边缘的距离获得边界块的定位线时,误差更小,进一步提高了确定边缘线的精度。
本实施例中,优选地,所述图像分块步骤中,所述边界块为矩形且每一边界块中有四个定位点到QR码边缘的距离为固定值。当边界块为矩形时,其可能包括一条边缘线或两条边缘线或三条边缘线,此时可以根据已知的四个定位点到每一条边缘线的距离来确定边缘线所在的定位线。即当边界块中包含四个定位点时,能够准确的得出矩形边界块中的边界线。
更为优选地,所述图像分块步骤中,所述边界块中的所述定位点选择探测图形中心点和/或校正图形中心点。由于在QR码图像中,探测图形和校正图形的位置都是已知的并且探测图形和校正图形到达与边缘线的距离也都是已知的,因此选择探测图形和校正图形的中心点作为定位点可以更加方便快捷的检测到边缘线,进一步提高了确定边缘线的效率。
实施例3
本实施例在实施例1或实施例2的基础上做如下改进,所述获取边缘线的步骤包括:
获取像素点,获取与所述定位线相邻的所有像素点。
获取检测线,针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧。
获取边缘点,沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
因为QR码发生畸变时都是向外凸出但边缘点也是在定位线附近,因此当检测线上检测到白色像素点时,基本可以认定其前边检测到的最后一个黑色像素点为实际的边缘点了。这种判定方式,原理简单,也不需要复杂的算法和步骤,具有较高的检测效率和较准确的检测结果。
本实施例中,优选地,所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,则查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。如图6给出的是图5所示二值化图形的左下角部分的放大图形。从图中可以看出,检测线05是垂直于定位线03的直线。从图中可以看出,05A和05B这两条检测线上,在定位线03的外侧不存在黑色像素点了。因此,获取与其相邻的两条检测线上检测到的黑色像素点,即05D和05D这两条检测线上的黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。
这种方式考虑到边缘点也可能是白色像素点,因此可能无法在检测线上检测到黑色像素点,但是与该检测线相邻的两个黑色像素点已经确定,因此白色像素点作为边缘应该是在两个黑色像素点组成的直线上,因此可以通过获取两个黑色像素点与定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。由此可以保证在确定边缘线时白色像素点边缘不会被忽略,提高了确定边缘线的准确性,并且使边缘线更加平滑。
更为优选地,所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,且与该检测线相邻的黑色像素点只有一个,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。这种方式考虑到在二值化图形的边角附近,存在边缘点为白色像素点的情况,这时在该检测线上不能检测到黑色像素点,并且与该检测线相邻的黑色像素点也只有一个,则可以近似认为该白色像素点与定位线的距离与其相邻的黑色像素点与定位线的距离是相等的。采取该方法,可以避免边角附近的白色区域被忽略的情况,并且也能够保证最终获得的边缘线的平滑性。
实施例4
本实施例提供一种确定QR码二值化图像边缘线的系统,如图7所示,包括定位线获取单元,用于根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线;边缘线获取单元,用于沿所述定位线的方向检测在定位线外侧的边缘点,将所述边缘点连接而成的线为QR码的边缘线。
本实施例所述的系统,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线,因为定位点到达QR码边缘的距离是已知的,即使QR码图像发生了畸变,定位点到达QR码边缘的距离也不会改变或者改变的幅度非常小,因此利用该距离获取QR码边缘所在的定位线,相对来说误差较小。而QR码图像在发生畸变时,基本上都是向外凸出,因此所确定的定位线的位置是在QR码图像的内部,QR码的实际的边缘应该是一部分与定位线重叠,一部分在定位线的外侧,所以沿定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线为QR码的边缘线,由此确定的边缘线不但具有较小的误差,而且在整个过程中运算量很小,能够快速检测到QR码的边缘。
实施例5
本实施例中的确定QR码二值化图像边缘线的系统,在实施例4的基础上,如图8所示,还包括:
图像分块单元,用于将QR码二值化图像进行分块处理,选择包含QR码边缘的分块为边界块,每一边界块中至少有两个定位点到QR码边缘的距离为固定值。
所述定位线获取单元中,根据边界块中每一定位点的位置信息及定位点到QR码边缘的相对距离,确定边界块中的QR码边缘所在的定位线。
所述边缘线获取单元中,沿边界块的所述定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线作为边界块的边缘线,每一边界块的边缘线连接得到QR码的边缘线。
本实施例中的确定QR码二值化图像边缘线的系统,通过图像分块的方法将QR码二值化图像进行分块处理,并且针对每一个边界块来确定其边缘线,最后将每一边界块的边缘线连接后便得到了整个二值化图形的边缘线。通过分块处理后,每一个边界块的面积相对于整个二值化图像来说更小,根据定位点到边缘的距离获得边界块的定位线时,误差更小,进一步提高了确定边缘线的精度。
本实施例中,优选地,所述图像分块单元中,设定所述边界块为矩形且每一边界块中包含四个定位点。当边界块为矩形时,其可能包括一条边缘线或两条边缘线或三条边缘线,此时可以根据已知的四个定位点到每一条边缘线的距离来确定边缘线所在的定位线。即当边界块中包含四个定位点时,能够准确的得出矩形边界块中的边界线。
更为优选地,所述图像分块单元中,选择所述边界块中包含的选择探测图形中心点和/或校正图形中心点作为定位点。由于在QR码图像中,探测图形和校正图形的位置都是已知的并且探测图形和校正图形到达与边缘线的距离也都是已知的,因此选择探测图形和校正图形的中心点作为定位点可以更加方便快捷的检测到边缘线,进一步提高了确定边缘线的效率。
实施例6
本实施例在实施例4或实施例5的基础上做如下改进,如图9所示,所述边缘线获取单元包括:
像素点获取模块,用于获取与所述定位线相邻的所有像素点。
检测线获取模块,用于针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧。
边缘点获取模块,用于沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
因为QR码发生畸变时都是向外凸出但边缘点也是在定位线附近,因此当检测线上检测到白色像素点时,基本可以认定其前边检测到的最后一个黑色像素点为实际的边缘点了。这种判定方式,原理简单,也不需要复杂的算法和步骤,具有较高的检测效率和较准确的检测结果。
本实施例中,优选地,所述边缘点获取模块,还用于在检测线上不存在黑色像素点时,查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。这种方式考虑到边缘点也可能是白色像素点,因此可能无法在检测线上检测到黑色像素点,但是与该检测线相邻的两个黑色像素点已经确定,因此白色像素点作为边缘应该是在两个黑色像素点组成的直线上,因此可以通过获取两个黑色像素点与定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。由此可以保证确定边缘线时白色像素点边缘不会被忽略,提高了确定边缘线的准确性,并且使边缘线更加平滑。
更为优选地,所述边缘点获取模块,还用于在检测线上不存在黑色像素点且与该检测线相邻的黑色像素点只有一个时,,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。这种方式考虑到在二值化图形的边角附近,存在边缘点为白色像素点的情况,这时在该检测线上不能检测到黑色像素点,并且与该检测线相邻的黑色像素点也只有一个,则可以近似认为该白色像素点与定位线的距离与其相邻的黑色像素点与定位线的距离是相等的。采取该方法,可以避免边角附近的白色区域被忽略的情况,并且也能够保证最终获得的边缘线的平滑性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
Claims (18)
1.一种确定QR码二值化图像边缘线的方法,其特征在于,包括如下步骤:
获取定位线,根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线;
获取边缘线,沿所述定位线的方向检测在定位线外侧的边缘点,所述边缘点连接而成的线为QR码的边缘线。
2.根据权利要求1所述的确定QR码二值化图像边缘线的方法,其特征在于,还包括如下步骤:
图像分块,将QR码二值化图像进行分块处理,选择包含QR码边缘的分块为边界块,每一边界块中至少有两个定位点到QR码边缘的距离为固定值;
所述获取定位线的步骤中,根据边界块中每一定位点的位置信息及定位点到QR码边缘的距离,确定边界块中的QR码边缘所在的定位线;
所述获取边缘线的步骤,沿边界块的所述定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线作为边界块的边缘线,每一边界块的边缘线连接得到QR码的边缘线。
3.根据权利要求2所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述图像分块步骤中,所述边界块为矩形且每一边界块中有四个定位点到QR码边缘的距离为固定值。
4.根据权利要求2-3任一所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述图像分块步骤中,所述边界块中的所述定位点选择探测图形中心点和/或校正图形中心点。
5.根据权利要求1-3任一所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述获取边缘线的步骤包括:
获取像素点,获取与所述定位线相邻的所有像素点;
获取检测线,针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧;
获取边缘点,沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
6.根据权利要求4所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述获取边缘线的步骤包括:
获取像素点,获取与所述定位线相邻的所有像素点;
获取检测线,针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧;
获取边缘点,沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
7.根据权利要求5所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,则查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。
8.根据权利要求6所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,则查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。
9.根据权利要求5所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,且与该检测线相邻的黑色像素点只有一个,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。
10.根据权利要求6所述的确定QR码二值化图像边缘线的方法,其特征在于:
所述获取边缘点的步骤中,若所述检测线上不存在黑色像素点,且与该检测线相邻的黑色像素点只有一个,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。
11.一种确定QR码二值化图像边缘线的系统,其特征在于,包括:
定位线获取单元,用于根据QR码图像中定位点的位置信息及定位点到QR码边缘的距离,确定QR码边缘所在的定位线;
边缘线获取单元,用于沿所述定位线的方向检测在定位线外侧的边缘点,将所述边缘点连接而成的线为QR码的边缘线。
12.根据权利要求11所述的确定QR码二值化图像边缘线的系统,其特征在于,还包括:
图像分块单元,用于将QR码二值化图像进行分块处理,选择包含QR码边缘的分块为边界块,每一边界块中至少有两个定位点到QR码边缘的距离为固定值;
所述定位线获取单元中,根据边界块中每一定位点的位置信息及定位点到QR码边缘的相对距离,确定边界块中的QR码边缘所在的定位线;
所述边缘线获取单元中,沿边界块的所述定位线的方向检测在定位线外侧的边缘点,将边缘点连接而成的线作为边界块的边缘线,每一边界块的边缘线连接得到QR码的边缘线。
13.根据权利要求12所述的确定QR码二值化图像边缘线的系统,其特征在于:
所述图像分块单元中,设定所述边界块为矩形且每一边界块中包含四个定位点。
14.根据权利要求12-13任一所述的确定QR码二值化图像边缘线的系统,其特征在于:
所述图像分块单元中,选择所述边界块中包含的选择探测图形中心点和/或校正图形中心点作为定位点。
15.根据权利要求11-13任一所述的确定QR码二值化图像边缘线的系统,其特征在于:
所述边缘线获取单元包括:
像素点获取模块,用于获取与所述定位线相邻的所有像素点;
检测线获取模块,用于针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧;
边缘点获取模块,用于沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
16.根据权利要求14所述的确定QR码二值化图像边缘线的系统,其特征在于:
所述边缘线获取单元包括:
像素点获取模块,用于获取与所述定位线相邻的所有像素点;
检测线获取模块,用于针对每一像素点,获取经过该像素点的垂直于所述定位线的检测线,所述检测线延伸至所述定位线外侧;
边缘点获取模块,用于沿所述检测线方向检测所述定位线外侧的像素点的灰度值,至检测到白色像素点停止,将检测到的最后一个黑色像素点作为该检测线上的边缘点。
17.根据权利要求15所述的确定QR码二值化图像边缘线的系统,其特征在于:
所述边缘点获取模块,还用于在检测线上不存在黑色像素点时,查找与该检测线相邻的两个黑色像素点,获取这两个黑色像素点与所述定位线的距离的平均值作为该检测线上边缘点与所述定位线的距离。
18.根据权利要求15所述的确定QR码二值化图像边缘线的系统,其特征在于:
所述边缘点获取模块,还用于在检测线上不存在黑色像素点且与该检测线相邻的黑色像素点只有一个时,获取该黑色像素点与所述定位线的距离作为该检测线上边缘点与所述定位线的距离。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310454909.XA CN104517108B (zh) | 2013-09-29 | 2013-09-29 | 一种确定qr码二值化图像边缘线的方法及系统 |
US14/101,947 US9087253B2 (en) | 2013-09-29 | 2013-12-10 | Method and system for determining edge line in QR code binary image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310454909.XA CN104517108B (zh) | 2013-09-29 | 2013-09-29 | 一种确定qr码二值化图像边缘线的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104517108A CN104517108A (zh) | 2015-04-15 |
CN104517108B true CN104517108B (zh) | 2017-12-22 |
Family
ID=52739107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310454909.XA Expired - Fee Related CN104517108B (zh) | 2013-09-29 | 2013-09-29 | 一种确定qr码二值化图像边缘线的方法及系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9087253B2 (zh) |
CN (1) | CN104517108B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9305342B2 (en) * | 2013-12-20 | 2016-04-05 | Shenzhen China Star Optoelectronics Technology Co., Ltd | Method for acquiring a boundary line of an alignment film and method for inspecting the alignment film |
CN105117677B (zh) * | 2015-07-30 | 2017-10-31 | 福建联迪商用设备有限公司 | 一种qr码特征检测方法及系统 |
CN107292826B (zh) * | 2016-03-31 | 2021-01-22 | 富士通株式会社 | 图像处理设备、图像处理方法以及图像处理装置 |
CN111291584B (zh) * | 2016-07-22 | 2023-05-02 | 创新先进技术有限公司 | 识别二维码位置的方法及其系统 |
CN108171098B (zh) * | 2016-12-07 | 2021-01-22 | 杭州海康威视数字技术股份有限公司 | 一种条码检测方法及设备 |
CN109448013B (zh) * | 2018-08-31 | 2021-09-10 | 广东技术师范大学 | 一种局部光照不均qr码图像二值化处理方法 |
US11790204B2 (en) | 2018-12-20 | 2023-10-17 | Hewlett-Packard Development Company, L.P. | Read curved visual marks |
CN111931538B (zh) * | 2020-07-07 | 2024-03-29 | 广东奥普特科技股份有限公司 | 一种Micro QR二维码的定位方法 |
CN113139400B (zh) * | 2021-06-21 | 2021-10-15 | 浙江华睿科技股份有限公司 | 一种qr码定位方法、装置及计算机可读介质 |
CN113467680A (zh) * | 2021-06-28 | 2021-10-01 | 网易(杭州)网络有限公司 | 绘图处理方法、装置、电子设备及存储介质 |
CN116689328B (zh) * | 2023-08-09 | 2023-10-31 | 成都新西旺自动化科技有限公司 | 一种手机后盖产品卡控分料装置及其卡控分料方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1746898A (zh) * | 2004-09-07 | 2006-03-15 | 佳能株式会社 | 用于定位二维条形码的方法、设备和存储介质 |
CN1801188A (zh) * | 2006-01-18 | 2006-07-12 | 冯文伦 | 一种矩阵式二维条码及其编码解码方法 |
CN1924899A (zh) * | 2006-09-26 | 2007-03-07 | 福建榕基软件开发有限公司 | 复杂背景下qr码图像符号区域的精确定位方法 |
CN101908122A (zh) * | 2010-06-01 | 2010-12-08 | 福建新大陆电脑股份有限公司 | 条空边界处理模块、条码识别装置及其方法 |
CN103198452A (zh) * | 2013-03-06 | 2013-07-10 | 东南大学 | 基于定位图形顶点的快速响应矩阵码第四顶点的定位方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8608074B2 (en) * | 2011-12-20 | 2013-12-17 | Seiko Epson Corporation | Method and apparatus for locating and decoding machine-readable symbols |
-
2013
- 2013-09-29 CN CN201310454909.XA patent/CN104517108B/zh not_active Expired - Fee Related
- 2013-12-10 US US14/101,947 patent/US9087253B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1746898A (zh) * | 2004-09-07 | 2006-03-15 | 佳能株式会社 | 用于定位二维条形码的方法、设备和存储介质 |
CN1801188A (zh) * | 2006-01-18 | 2006-07-12 | 冯文伦 | 一种矩阵式二维条码及其编码解码方法 |
CN1924899A (zh) * | 2006-09-26 | 2007-03-07 | 福建榕基软件开发有限公司 | 复杂背景下qr码图像符号区域的精确定位方法 |
CN101908122A (zh) * | 2010-06-01 | 2010-12-08 | 福建新大陆电脑股份有限公司 | 条空边界处理模块、条码识别装置及其方法 |
CN103198452A (zh) * | 2013-03-06 | 2013-07-10 | 东南大学 | 基于定位图形顶点的快速响应矩阵码第四顶点的定位方法 |
Non-Patent Citations (1)
Title |
---|
基于轮廓特征的快速响应码定位与提取方法;杜秀伟等;《电子技术应用》;20091231;48-50 * |
Also Published As
Publication number | Publication date |
---|---|
US9087253B2 (en) | 2015-07-21 |
CN104517108A (zh) | 2015-04-15 |
US20150090793A1 (en) | 2015-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104517108B (zh) | 一种确定qr码二值化图像边缘线的方法及系统 | |
Romero-Ramirez et al. | Speeded up detection of squared fiducial markers | |
US20200226762A1 (en) | Graphical fiducial marker identification suitable for augmented reality, virtual reality, and robotics | |
JP5699788B2 (ja) | スクリーン領域検知方法及びシステム | |
CN103942824B (zh) | 一种三维点云直线特征提取方法 | |
CN107192716A (zh) | 一种基于轮廓特征的工件缺陷快速检测方法 | |
WO2016032735A1 (en) | Systems and methods for determining a seam | |
CN108717709A (zh) | 图像处理系统及图像处理方法 | |
CN105095822B (zh) | 一种汉信码特征图形检测方法及系统 | |
CN107687855A (zh) | 机器人定位方法、装置及机器人 | |
CN104123529A (zh) | 人手检测方法及系统 | |
CN101211411A (zh) | 一种人体检测的方法和装置 | |
US20140119665A1 (en) | System and method for finding saddle point-like structures in an image and determining information from the same | |
CN109063703A (zh) | 基于标识识别和惯性测量单元融合的增强现实定位算法 | |
Zhang et al. | Automatic crack inspection for concrete bridge bottom surfaces based on machine vision | |
US9639763B2 (en) | Image target detecting apparatus and method | |
CN103914829A (zh) | 一种含噪图像边缘检测方法 | |
CN104766330B (zh) | 一种图像处理方法及电子设备 | |
JP3372419B2 (ja) | 物体認識方法 | |
JP2015045919A (ja) | 画像認識方法及びロボット | |
CN104156956B (zh) | 一种基于高斯小波一维峰值识别的多角度边缘检测方法 | |
Xu et al. | A deep neural network-based intelligent detection model for manufacturing defects of automobile parts | |
JP2007140729A (ja) | 物品の位置及び姿勢を検出する方法および装置 | |
Al-Eidan et al. | Line detection based on the basic masks and image rotation | |
Fujita et al. | Floor fingerprint verification using a gravity-aware smartphone |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171222 Termination date: 20180929 |