CN112069851A - 一种dm码区域的获取方法及装置 - Google Patents
一种dm码区域的获取方法及装置 Download PDFInfo
- Publication number
- CN112069851A CN112069851A CN202010930352.2A CN202010930352A CN112069851A CN 112069851 A CN112069851 A CN 112069851A CN 202010930352 A CN202010930352 A CN 202010930352A CN 112069851 A CN112069851 A CN 112069851A
- Authority
- CN
- China
- Prior art keywords
- ray
- edge
- code
- area
- clock
- 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
- 238000000034 method Methods 0.000 title claims abstract description 41
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 22
- 238000000605 extraction Methods 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 19
- 239000011159 matrix material Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000003708 edge detection Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
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
本申请涉及图像处理与识别技术领域,尤其涉及一种DM码区域的获取方法及装置。一定程度上可以解决获取DM码区域过程中存在包含无效区域、漏掉有效区域、定位不准确的问题。所述方法包括:获取DM码的模块边长;基于所述模块边长,在第一L边的远端设置第一时钟边投影区域、在第二L边的远端设置第二时钟边投影区域;在所述第一时钟边投影区域、第二时钟边投影区域分别进行不同角度射线投影,将像素灰度值之和最大的射线作为第一时钟边所在射线、第二时钟边所在射线;基于所述第一时钟边所在射线、第二时钟边所在射线、第一L边、第二L边构建四边形,得到四边形DM码区域。
Description
技术领域
本申请涉及图像处理与识别技术领域,尤其涉及一种DM码区域的获取方法及装置。
背景技术
DM(Data Matrix:数据矩阵)码是一种矩阵式二维条码,具有密度高、尺寸小、纠错能力强的特点,且DM码己成为应用于工业二维条码的主流技术。在进行DM码信号提取和解码之前,需要确定DM码的区域。
在一些DM码区域的获取实现中,首先通过Hough(霍夫变换)、或LSD(Line SegmentDetector:直线段检测算法)等检测直线的方法,确定DM码的固定L边;然后根据固定L边获取其最小外接仿射矩形作为DM码区域。
但是,光学镜头在一定条件下会导致DM码图像发生透视畸变现象,DM码的四条边会产生一定的角度倾斜,直接使用上述最小外接仿射矩形,会导致DM码区域包含无效区域、或漏掉有效区域。
发明内容
为了解决DM码图像获取区域过程中存在包含无效区域、漏掉有效区域、定位不准确的问题,本申请提供了一种DM码区域的获取方法及装置。
本申请的实施例是这样实现的:
本申请实施例第一方面提供一种DM码区域的获取方法,所述方法包括:获取DM码的模块边长;
基于所述模块边长,在第一L边的远端设置第一时钟边投影区域、在第二L边的远端设置第二时钟边投影区域;
在所述第一时钟边投影区域、第二时钟边投影区域分别进行不同角度射线投影,将像素灰度值之和最大的射线作为第一时钟边所在射线、第二时钟边所在射线;
基于所述第一时钟边所在射线、第二时钟边所在射线、第一L边、第二L边构建四边形,得到四边形DM码区域。
本申请实施例第二方面提供一种DM码区域的获取装置,包括:
图像采集装置,被配置为用于获取DM码的图像;
第一控制器,被配置为基于所述图像,在DM码表面根据检测到的L边确定四边形DM码区域。
本申请实施例的第三方面提供一种计算机可读存储介质,所述存储介质内存储有计算机指令,所述计算机指令中的至少部分指令被处理器执行时执行如本申请实施例第一方面提供的发明内容中任一所述方法。
本申请提供的技术方案包括以下有益效果:通过计算边缘点的平均间隔距离,可得到模块边长;进一步通过滤除无效间隔距离,可提高模块边长的精度;进一步通过模块边长的值,可以实现对时钟边投影区域的配置;进一步通过对多角度投影、计算各条投影射线上像素灰度值之和,可以实现时钟边所在直线位置的确认;进一步通过构建四边形,可实现区域的获取,更加精确地定位、获取DM码区域。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例DM码结构示意图;
图2示出了本申请实施例一种DM码区域获取方法的流程示意图;
图3示出了本申请实施例DM码最小外接仿射矩形示意图;
图4示出了本申请实施例DM码采样后的区域小图;
图5示出了本申请实施例DM码中放置卡尺工具位置示意图;
图6示出了本申请实施例DM码中边缘点示意图;
图7示出了本申请实施例第一时钟边投影区域示意图;
图8示出了本申请实施例第二时钟边投影区域示意图;
图9示出了本申请实施例时钟边所在射线获取流程示意图;
图10A/B示出了本申请实施例含有第二时钟边、第一时钟边投影区域的投影区域小图示意图
图11A/B示出了本申请实施例射线投影示意图;
图12示出了本申请实施例时钟边所在射线示意图;
图13示出了本申请实施例DM码的四边形区域示意图;
图14A/B/C示出了本申请一些实施例中DM码区域效果示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本说明书通篇提及的″多个实施例″、″一些实施例″、″一个实施例″或″实施例″等,意味着结合该实施例描述的具体特征、结构或特性包括在至少一个实施例中。因此,本说明书通篇出现的短语″在多个实施例中″、″在一些实施例中″、″在至少另一个实施例中″或″在实施例中″等并不一定都指相同的实施例。此外,在一个或多个实施例中,具体特征、结构或特性可以任何合适的方式进行组合。因此,在无限制的情形下,结合一个实施例示出或描述的具体特征、结构或特性可全部或部分地与一个或多个其他实施例的特征、结构或特性进行组合。这种修改和变型旨在包括在本申请的范围之内。
本申请中使用的术语″近端″和″远端″在本文中是相对于阅读附图的人员来使用的。术语″近端″是指DM码第一L边和第二L边的交点、术语″远端″是指DM码第一L边、第二L边上远离2条L边交点的另一端的端点。还应当理解,为简洁和清楚起见,本文可以结合附图使用空间术语诸如″垂直″、″水平″、″上″和″下″。
本申请中使用的术语″控制器″,是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
图1示出了本申请实施例DM码结构示意图。
DM(DataMatrix:数据矩阵)码是二维矩阵图像,DM码组成方式如图所示,包括2条相交的L边101、2条相交的时钟边102、数据区103和静音区104。数据区103是由边长基本一致的模块105所组成的区域,信息储存方式是深浅不同的模块5的不同排列组合,以二进制码方式来编码数据,计算机可直接读取。
其中,L边101和时钟边102构成DM码的定位模式。同一版本DM码定位模式相同,但数据区随着表达数据不同而变化。
图2示出了本申请实施例一种DM码区域获取方法的流程示意图。
在步骤201中,获取DM码的模块边长。
在一些实施例中,DM码以白色为背景,以黑色为前景在另一些实施例中,DM码以黑色为背景,以白色为前景。
需要说明的是,每个DM码都是由数个黑模块和白模块组成,其中白模块以及黑模块的边长均相等,且所述模块均为正方形。
首先,根据DM码的第一L边、第二L对应的最小外接仿射矩形,执行仿射采样,得到DM码区域小图。
图3示出了本申请实施例DM码最小外接仿射矩形示意图。
DM码图像的第一L边、第二L边分别获取外接仿射矩形,并取最小的外接仿射矩形作为DM码的最终的外接仿射矩形,如图所示。
在一些实施例中,通过采用线段检测算法识别DM码的第一L边和第二L边,并基于L边取其对应的最小外接仿射矩形。
例如,LSD(Line Segment Detector:直线段检测)算法,提取出图像中所有的线段,并将方向相同、并处于近似同一直线上的相邻短线段合并为长线段,得到各个长线段;最后,从各个长线段中,选取出对比度符合预设对比度要求、长度符合预设长度要求、角度符合预设角度要求的长线段,以作为DM码区域的第一L边、以及第二L边。在一些实施例中,所述预设角度可实施为[60°~120°],例如具体实施为接近90°的夹角。
可以发现,在本实施例中,最小外接仿射矩形内包含部分无效区域。
图4示出了本申请实施例DM码采样后的区域小图。
基于图3中的最小外接仿射矩形进行采样得到DM码区域小图。
在一些实施例中,在根据DM码的第一L边、第二L对应的最小外接仿射矩形,执行仿射采样,得到DM码区域小图之前,还可以对DM图像进行预处理。
例如,可实施为对待定位的DM码图像进行平滑处理,以降低DM码图像噪声、平滑DM码图像。
然后,在DM码区域小图的中心区域执行卡尺工具,搜索方向为X,投影方向为Y,得到边缘点,图5示出了本申请实施例DM码中放置卡尺工具位置示意图。
对卡尺所在射线经过的异色模块边缘位置进行标注,所述异色模块边缘位置是指白模块和黑模块的边缘,在一些实施例中,将上述异色模块边缘位置边标注为圆点。
在一些实施例中,所述边缘点位于通过DM码中心、且平行于第一L边或第二L边的射线上。
卡尺工具所在射线可实施为通过所述DM码中心位置的射线,并且所述射线为近似于水平方向的射线,或近似于竖直方向的射线,即所述射线平行于DM码的任意一条L边,所述L边包括第一L边和第二L边。
其次,按边缘点X坐标从大到小进行排序,并进行X坐标差分,得到每个边缘点X方向的距离。
图6示出了本申请实施例DM码中边缘点示意图。
如图所示,通过上述步骤中得到DM的边缘点,在一些实施例中,通过卡尺工具的软件算法获取相邻边缘点之间的间隔距离。
将图中的水平方向设为X轴,竖直方向设为Y轴,并且将按边缘点的X坐标从大到小进行排序,计算X坐标的差分,得到每个边缘点在X轴方向的间隔距离。
在一些实施例中,在计算DM码内相邻模块边缘点之间的平均间隔距离前,还可以滤除大于第一预设长度、以及小于第二预设长度的间隔距离。
如图6所示,可以看到边缘点的间隔距离有过大或过小的情况,在后续取平均值的情况下,会降低平均间隔距离的精度,因此将大于第一预设长度、以及小于第二预设长度的间隔距离都移除,以增加平均间隔距离的精度。例如,所述第一预设长度可配置为DM码第一L边、或第二L边的1/8,所示第二预设长度配置为5个像素。
需要说明的是,所述第一预设长度、第二预设长度可根据实际情况进行配置,本申请不做具体的限制。
最后,将剩余的间隔距离取均值,作为DM码的模块边长。
在一些实施例中,对经过筛选的诸多间隔距离求取算术平均值,得到DM码内相邻模块边缘点之间的平均间隔距离,即DM码的模块边长。
在一些实施例中,当区域中的每行或每列的深色像素或者白色像素太少时,可以将该行或列删除,因为深色像素或者白色像素太少时可能为静音区或静音区外大片背景区域。
在一些实施例中,区域的每行或每列的深色或浅色的像素有效变化次数不能太少每次有效持续像素至少有一个模块长度,一个模块长度可设置为5个像素,并且连续多行或多列都必须满足这一条件,这样可以滤除文字和静音区的干扰,如果模块边长过低,很可能定位不到。继续参考图2,在步骤202中,基于所述模块边长,在第一L边的远端设置第一时钟边投影区域、在第二L边的远端设置第二时钟边投影区域。
本申请中第一L边的远端是指远离DM码第一L边、第二L边交点的另一端的端点,第二L边的远端是指远离DM码第一L边、第二L边交点的另一端的端点。
在一些实施例中,所述第一L边可实施为近似水平方向的L边,所述第二L边可实施为近似竖直方向的L边;第一时钟边可实施为近似水平方向的时钟边,第二时钟边可实施为近似竖直方向的时钟边。
在一些实施例中,在设置第一时钟边投影区域时,可在水平方向第一时钟边邻近竖直第二L边的远端附近进行搜索,根据上述步骤中得到的DM码模块边边长计算待投影仿射矩形区域的长和宽。
例如,DM码的模块边长为Module,则可设置第一时钟边投影区域,即待投影仿射矩形区域为:
长=5*Module,宽=1.5*Module,如图7所示,所述第一时钟边投影区域近似水平方向,其一端与第二L边的远端重合。
同理,可设置第二时钟边投影区域,即待投影仿射矩形区域为:
长=1.5*Module,宽=5*Module,如图8所示,所述第二时钟边投影区域近似竖直方向,其一端与第一L边的远端重合。
继续参考图2,在步骤203中,在所述第一时钟边投影区域、第二时钟边投影区域分别进行不同角度射线投影,将像素灰度值和最大的射线作为第一时钟边所在射线、第二时钟边所在射线。
图9示出了本申请实施例时钟边所在射线获取流程示意图。
在步骤901中,对投影区域进行仿射采样,得到投影区域小图。
分别对步骤202中得到的含有第一时钟边投影区域、第二时钟边投影区域图像进行仿射采样,得到对应的投影区域小图,如图10A、图10B所示。
其中,图10A示出了含有第二时钟边投影区域的投影区域小图,图10B示出了含有第一时钟边投影区域的投影区域小图,所述投影区域小图用于在后续步骤中设置用于检测的投影射线。
继续参考图9,在步骤902中,对所述投影区域小图进行边缘提取、二值化,得到含有边缘的投影区域小图。
通过对上述步骤中得到的投影区域小图进行边缘提取、二值化,可去除无效图像元素,得到含有边缘的投影区域二值化小图。
在一些实施例中,对投影区域小图进行边缘提取,可实施为利用Sobel(边缘检测算子)进行边缘提取,然后对得到的边缘图像进行二值化,得到只含有边缘的投影区域二值化小图,其中所述边缘为白模块与黑模块之间的边缘,如图11A、11B所示。
在一些实施例中,利用Sobel边缘检测算子,计算图像的边缘梯度幅值从而实现对投影区域小图中的边缘进行提取。例如,可实施为采用3x3大小的Sobel边缘检测算子。在一些实施例中,对上述步骤中得到的边缘图像进行二值化,得到只含有边缘的投影区域小图。对上述经过边缘提取的二维码图像区域进行二值化处理,得到所述区域的二值化小图。
例如,对经过边缘提取后的二维码图像进行二值化处理,从而实现对待选线段对应的二维码区域(即以待选线段为边界所涉及的二维码区域)进行二值化处理,得到待选线段对应的二维码区域的二值化小图。其中,二值化小图,是指以待选线段为边界所涉及的二维码区域,进行二值化处理后对应的区域图像。
进行二值化处理的目的是为了方便统计边缘像素点个数。其中,二值化后的具体数值可以根据具体需求而设置。例如,将待检测图像二值化为(0,225),或者待检测图像二值化为(2,225)。
继续参考图9,在步骤903中,对含有边缘的投影区域小图进行不同角度范围内射线投影,获取每一条射线上的像素灰度值之和。
图11A/B示出了本申请实施例射线投影示意图。
在一些实施例中,在图示区域内实施多个角度范围内射线投影,并且统计每一条射线所经过像素的灰度值之和,对多个角度的射线投影重复上述操作,可得到最终的投影结果。
在一些实施例中,预设角度的取值范围配置为与DM码透视畸变角度的取值范围相同。例如,透视畸变角度范围为[-30°~30°]范围内的DM码,其对应的投影射线与其所在投影区域长长轴的角度范围也为[-30°~30°]。
需要说明的是,所述不同角度射线投影中的角度,为射线与投影区域长轴的夹角。在一些实施例中,所述角度包括正负,其中,顺时针为正方向,逆时针为负方向。
继续参考图9,在步骤904中,将像素灰度值之和最大的射线作为投影区域小图上的时钟边所在射线。
在投影结果中将经过DM码中像素灰度值之和的最大的射线,作为时钟边所在直线,因为像素灰度值之和最大的射线所经过的边缘点最多,因此应为时钟边所在直线,如图11A/B中所示深色射线,即时钟边所在射线。
继续参考图9,在步骤905中,将上述时钟边所在射线变换至原DM码图像,得到第一时钟边所在射线、第二时钟边所在射线。
将上述投影区域小图中时钟边所在射线变换至原DM码图像,可以得到包含第一时钟边所在射线、第二时钟边所在射线的DM码图像,如图12所示。其中,第一时钟边所在射线为近似水平方向的射线,与所述DM码近似水平方向的时钟边边界线重合;第二时钟边所在射线为近似竖直方向的射线,与所述DM码近似竖直方向的时钟边边界线重合。
继续参考图2,在步骤204中,基于所述第一时钟边所在射线、第二时钟边所在射线、第一模式边、第二模式边构建四边形,得到四边形DM码区域。
如图12所示,第一时钟边所在射线与第二时钟边所在射线相交、第一L边与第二时钟边所所在射线相交、第二L边与第一时钟边所在射线相交,通过上述4条线构建四边形,可以得到四个顶点,从而构成四边形,实现精确确定DM码的区域,如图13所示。
图14A/B/C示出了本申请一些实施例中DM码区域效果示意图。
可以发现,通过本申请提供的DM码区域获取方法,具有透视畸变特点DM码图像的区域获取较为精确,其时钟边均有效的位于DM码时钟边边界线位置,即没有包含无效区域、也没有漏掉有效区域,定位较为准确。
本申请还提供了一种DM码区域的获取装置,包括:图像采集装置,被配置为用于获取DM码的图像;第一控制器,被配置为基于所述图像,在DM码表面根据检测到的L边确定四边形DM码区域。
其中,所述第一控制器,执行如下:基于所述DM码的图像获取DM码的模块边长;基于所述模块边长,在第一L边的远端设置第一时钟边投影区域、在第二L边的远端设置第二时钟边投影区域;在所述第一时钟边投影区域、第二时钟边投影区域分别进行不同角度射线投影,将像素灰度值之和最大的射线作为第一时钟边所在直线、第二时钟边所在直线;基于所述第一时钟边所在直线、第二时钟边所在直线、第一L边、第二L边构建四边形,得到四边形DM码区域。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中,通过计算DM码内相邻模块边缘点之间的平均间隔距离,得到所述模块边长。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中,所述边缘点位于通过DM码中心、且平行于第一L边或第二L边的射线上。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中在计算DM码内相邻模块边缘点之间的平均间隔距离前,还包括步骤:滤除大于第一预设长度、以及小于第二预设长度的间隔距离。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中,得到所述第一时钟边所在直线、第二时钟边所在直线,具体如下:对投影区域进行仿射采样,得到投影区域小图;对所述投影区域小图进行边缘提取、二值化,得到含有边缘的投影区域小图;对含有边缘的投影区域小图进行不同角度射线投影,获取每一条射线上的像素灰度值之和;将像素灰度值之和最大的射线作为投影区域小图上的时钟边所在直线;将上述时钟边所在直线变换至原DM码图像,得到第一时钟边所在直线、第二时钟边所在直线。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中,所述像素灰度值之和与射线经过投影区域边缘像素点的个数和成线性关系,像素灰度值之和等于射线经过的边缘点个数和乘以255。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中,所述角度,为射线与投影区域长轴的夹角。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
在一些实施例中,所述角度的取值范围配置为与DM码透视畸变角度的取值范围相同。所述第一控制器涉及的具体操作已在上文对应方法步骤中进行阐述,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令中的至少部分指令被处理器执行时,实现如本申请DM码区域的获取方法的内容。
本申请提供的技术方案的有益效果在于,通过计算边缘点的平均间隔距离,可得到模块边长;进一步通过滤除无效间隔距离,可提高模块边长的精度;进一步通过模块边长的值,可以实现对时钟边投影区域的配置;进一步通过对多角度投影、计算各投影射线经过的像素灰度值之和,可以实现时钟边所在直线位置的确认;进一步通过构建四边形,更加精确地定位、获取DM码区域。
此外要意识到,本申请所述的各种组件、控制器能够包括(一个或多个)电路,其能够包括适当值的组件和电路元件,以便实现本创新的方面。此外能够意识到,各种组件的许多组件能够在一个或多个集成电路(IC)芯片上实现。在一个示范实现中,组件集合能够在单个IC芯片上实现。在其它示范实现中,相应组件的一个或多个在单独IC芯片上制作或实现。
以上已经描述的包括本发明的实现的示例。为了描述要求保护主题的目的,当然不可能描述组件或方法的每一个可设想组合,但是要意识到,本创新的许多另外组合和置换是可能的。相应地,要求保护主题打算包含全部这类改变、修改和变化,其落入所附权利要求的精神和范围之内。此外,包括″摘要″中所述的事物的本申请的所示实现的以上描述并不是要详细列举或者将所公开实现局限于所公开的精确形式。虽然本申请中为了说明目的而描述具体实现和示例,但是如相关领域的技术人员能够认识的,被认为在这类实现和示例的范围之内的各种修改是可能的。
具体来说并且关于由上述组件、装置、电路、系统等所执行的各种功能,除非另加指示,否则用来描述这类组件的术语打算对应于执行所述组件的所指定功能(例如,功能等效)的任何组件,即使不是在结构上等效于所公开结构(其执行要求保护主题的本申请所示示范方面的功能)。在这方面,还将会认识到,创新包括系统以及计算机可读存储介质,其具有计算机可执行指令,以用于执行要求保护主题的各种方法的动作和/或事件。
已经针对若干组件/块之间的交互描述了上述系统/电路/模块。能够意识到,这类系统/电路和组件/块能够包括那些组件或者所指定子组件、所指定组件或者子组件的一些和/或附加组件,并且按照以上述各种置换和组合。子组件还能够实现为通信地耦合到其它组件而不是包括在父组件(分级)内的组件。另外,应当注意,一个或多个组件可组合为提供聚合功能性的单个组件或者分为若干单独子组件,以及可提供任何一个或多个中间层(例如管理层),以通信地耦合到这类子组件,以便提供综合功能性。本申请所述的任何组件还可与本申请中没有具体描述但是本领域的技术人员已知的一个或多个其它组件进行交互。
虽然阐明本发明的广义范围的数值范围和参数是近似值,但是具体示例中阐明的数值尽可能准确地报导。但是,任何数值固有地含有必然产生于其相应测试测量中找到的标准偏差的某些误差。此外,本申请所公开的全部范围要被理解为包含其中所包含的任何和全部子范围。例如,″小于或等于11″的范围能够包括零的最小值与11的最大值之间(并且包含该最小值与最大值)的任何和全部子范围,即,任何和全部子范围具有等于或大于零的最小值以及等于或小于11的最大值(例如1至5)。在某些情况下,如对参数所述的数值能够具有负值。
另外,虽然可能已经仅针对若干实现之一公开了本创新的特定特征,但是这种特征可如对任何给定或特定应用可预期和有利的与其它实现的一个或多个其它特征相组合。此外,在详细描述或者权利要求中使用术语″包括(include、including)″、″具有″、″含有″及其变体和其它类似词语的意义上,这些术语打算采用与作为开放过渡词语的术语″包含″相似的方式是包含的,而没有排除任何附加或其它元件。
遍及本说明书中提到″一个实现″或″一实现″表示结合该实现所述的特定特征、结构或特性包含在至少一个实现中。因此,短语″在一个实现中″或者″在一实现中″在遍及本说明书中的各个位置的出现不一定全部指相同实现。此外,具体特征、结构或特性可采用任何适当方式结合在一个或多个实现中。
此外,遍及本说明书中提到″项″或″文件″意味着结合实现所述的特定结构、特征或对象不一定指相同对象。此外,″文件″或″项″能够指各种格式的对象。
如本申请中使用的术语″组件″、″模块″、″系统″等一般打算指作为硬件(例如电路)、硬件和软件的组合的计算机相关实体或者与具有一个或多个特定功能性的操作机器相关的实体。例如,组件可以是(但不限于)在处理器(例如数字信号处理器)上运行的进程、处理器、对象、可执行、执行线程、程序和/或计算机。作为说明,在控制器上运行的应用和控制器两者均能够是组件。一个或多个组件可驻留在进程和/或执行线程中,以及组件可定位在一个计算机上和/或分布在两个或更多计算机之间。虽然在各个实现中描绘单独组件,但是要意识到,组件可采用一个或多个公共组件来表示。此外,各个实现的设计能够包括不同组件放置、组件选择等,以实现最佳性能。此外,″装置″能够采取专门设计硬件;通过其上的软件(其使硬件能够执行特定功能)的执行被专门化的一般化硬件;计算机可读介质上存储的软件;或者其组合的形式。
此外,词语″示例″或″示范″在本申请中用来表示″用作示例、实例或说明″。本申请中描述为″示范″的任何方面或设计不一定被理解为相对其它方面或设计是优选或有利的。相反,词语″示例″或″示范″的使用打算以具体方式呈现概念。如本申请所使用的,术语″或者″打算表示包含″或″而不是互斥″或″。即,除非另加说明或者从上下文清楚地知道,否则″X采用A或B″打算表示自然包含置换的任一个。即,如果X采用A;X采用B;或者X采用A和B两者,则在上述实例的任何实例下均满足″X采用A或B″。另外,如本申请和所附权利要求中所使用的冠词″一(a和an)″应当一般地理解为表示″一个或多个″,除非另加说明或者从上下文清楚地知道针对单数形式。
Claims (18)
1.一种DM码区域的获取方法,其特征在于,所述方法包括:
获取DM码的模块边长;
基于所述模块边长,在第一L边的远端设置第一时钟边投影区域、在第二L边的远端设置第二时钟边投影区域;
在所述第一时钟边投影区域、第二时钟边投影区域分别进行不同角度射线投影,将像素灰度值之和最大的射线作为第一时钟边所在射线、第二时钟边所在射线;
基于所述第一时钟边所在射线、第二时钟边所在射线、第一L边、第二L边构建四边形,得到四边形DM码区域。
2.根据权利要求1所述DM码区域的获取方法,其特征在于,通过计算DM码内相邻模块边缘点之间的平均间隔距离,得到所述模块边长。
3.根据权利要求2所述DM码区域的获取方法,其特征在于,所述边缘点位于通过DM码中心、且平行于第一L边或第二L边的射线上。
4.根据权利要求3所述DM码区域的获取方法,其特征在于,在计算DM码内相邻模块边缘点之间的平均间隔距离前,还包括步骤:
滤除大于第一预设长度、以及小于第二预设长度的间隔距离。
5.根据权利要求1或2所述DM码区域的获取方法,其特征在于,得到所述第一时钟边所在射线、第二时钟边所在射线,具体包括如下:
对投影区域进行仿射采样,得到投影区域小图;
对所述投影区域小图进行边缘提取、二值化,得到含有边缘的投影区域二值化小图;
对含有边缘的投影区域二值化小图进行不同角度射线投影,获取每一条射线的像素灰度值之和;
将像素灰度值之和最大的射线作为投影区域小图上的时钟边所在射线;
将上述时钟边所在射线变换至原DM码图像,得到第一时钟边所在射线、第二时钟边所在射线。
6.根据权利要求1所述DM码区域的获取方法,其特征在于,所述像素灰度值之和与射线经过投影区域边缘像素点个数的和成线性关系,像素灰度值之和为射线经过的边缘点个数和×255。
7.根据权利要求6所述DM码区域的获取方法,其特征在于,所述角度,为射线与投影区域长轴的夹角。
8.根据权利要求7所述DM码区域的获取方法,其特征在于,所述角度的取值范围配置为与DM码透视畸变角度的取值范围相同。
9.一种DM码区域的获取装置,其特征在于,包括:
图像采集装置,被配置为用于获取DM码的图像;
第一控制器,被配置为基于所述图像,在DM码表面根据检测到的L边确定四边形DM码区域。
10.根据权利要求9所述DM码区域的获取装置,其特征在于,所述第一控制器,执行如下:
基于所述DM码的图像获取DM码的模块边长;
基于所述模块边长,在第一L边的远端设置第一时钟边投影区域、在第二L边的远端设置第二时钟边投影区域;
在所述第一时钟边投影区域、第二时钟边投影区域分别进行不同角度射线投影,将像素灰度值之和最大的射线作为第一时钟边所在射线、第二时钟边所在射线;
基于所述第一时钟边所在射线、第二时钟边所在射线、第一L边、第二L边构建四边形,得到四边形DM码区域。
11.根据权利要求10所述DM码区域的获取装置,其特征在于,通过计算DM码内相邻模块边缘点之间的平均间隔距离,得到所述模块边长。
12.根据权利要求10所述DM码区域的获取装置,其特征在于,所述边缘点位于通过DM码中心、且平行于第一L边或第二L边的射线上。
13.根据权利要求12所述DM码区域的获取装置,其特征在于,在计算DM码内相邻模块边缘点之间的平均间隔距离前,还包括步骤:
滤除大于第一预设长度、以及小于第二预设长度的间隔距离。
14.根据权利要求10或11所述DM码区域的获取装置,其特征在于,得到所述第一时钟边所在射线、第二时钟边所在射线,具体包括如下:
对投影区域进行仿射采样,得到投影区域小图;
对所述投影区域小图进行边缘提取、二值化,得到含有边缘的投影区域二值化小图;
对含有边缘的投影区域小图进行不同角度射线投影,获取每一条射线的像素灰度值之和;
将像素灰度值之和最大的射线作为投影区域小图上的时钟边所在射线;
将上述时钟边所在射线变换至原DM码图像,得到第一时钟边所在射线、第二时钟边所在射线。
15.根据权利要求10所述DM码区域的获取装置,其特征在于,所述像素灰度值之和与射线经过投影区域边缘像素点个数的和成线性关系,像素灰度值之和为射线经过的边缘点个数和×255。
16.根据权利要求15所述DM码区域的获取装置其特征在于,所述角度,为射线与投影区域长轴的夹角。
17.根据权利要求16所述DM码区域的获取装置,其特征在于,所述角度的取值范围配置为与DM码透视畸变角度的取值范围相同。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令中的至少部分指令被处理器执行时,实现如权利要求1~8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010930352.2A CN112069851B (zh) | 2020-09-07 | 2020-09-07 | 一种dm码区域的获取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010930352.2A CN112069851B (zh) | 2020-09-07 | 2020-09-07 | 一种dm码区域的获取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112069851A true CN112069851A (zh) | 2020-12-11 |
CN112069851B CN112069851B (zh) | 2023-12-22 |
Family
ID=73663953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010930352.2A Active CN112069851B (zh) | 2020-09-07 | 2020-09-07 | 一种dm码区域的获取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112069851B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05290197A (ja) * | 1992-04-06 | 1993-11-05 | Teiriyou Sangyo Kk | 二次元コ−ドシンボルマ−クの解読方法 |
JP2001250079A (ja) * | 2001-03-23 | 2001-09-14 | Matsushita Electric Ind Co Ltd | 2次元コード読み取り装置 |
JP2002329163A (ja) * | 2001-02-27 | 2002-11-15 | Asahi Glass Co Ltd | 多値画像2値化装置、多値画像2値化方法および多値画像2値化プログラム、並びに、2次元コード読取装置、2次元コード読取方法および2次元コード読取プログラム |
WO2004066186A2 (de) * | 2003-01-23 | 2004-08-05 | Siemens Aktiengesellschaft | Verfahren und vorrichtung zur identifikation und kompensation einer perspektivischen verzerrung |
KR20060123999A (ko) * | 2005-05-30 | 2006-12-05 | 노틸러스효성 주식회사 | 2차원 바코드 검출 방법 |
CN1924899A (zh) * | 2006-09-26 | 2007-03-07 | 福建榕基软件开发有限公司 | 复杂背景下qr码图像符号区域的精确定位方法 |
US20090001165A1 (en) * | 2007-06-29 | 2009-01-01 | Microsoft Corporation | 2-D Barcode Recognition |
CN101398895A (zh) * | 2007-09-26 | 2009-04-01 | 杨高波 | 一种数据矩阵(dm)二维条形码识别的图像预处理方法 |
US20150302236A1 (en) * | 2012-10-23 | 2015-10-22 | Sicpa Holding Sa | Method and device for identifying a two-dimensional barcode |
CN107944324A (zh) * | 2017-11-16 | 2018-04-20 | 凌云光技术集团有限责任公司 | 一种二维码畸变校正方法及装置 |
CN109522767A (zh) * | 2017-09-18 | 2019-03-26 | 北京星河泰视特科技有限公司 | 一维码断码视觉检测算法 |
-
2020
- 2020-09-07 CN CN202010930352.2A patent/CN112069851B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05290197A (ja) * | 1992-04-06 | 1993-11-05 | Teiriyou Sangyo Kk | 二次元コ−ドシンボルマ−クの解読方法 |
JP2002329163A (ja) * | 2001-02-27 | 2002-11-15 | Asahi Glass Co Ltd | 多値画像2値化装置、多値画像2値化方法および多値画像2値化プログラム、並びに、2次元コード読取装置、2次元コード読取方法および2次元コード読取プログラム |
JP2001250079A (ja) * | 2001-03-23 | 2001-09-14 | Matsushita Electric Ind Co Ltd | 2次元コード読み取り装置 |
WO2004066186A2 (de) * | 2003-01-23 | 2004-08-05 | Siemens Aktiengesellschaft | Verfahren und vorrichtung zur identifikation und kompensation einer perspektivischen verzerrung |
EP1586070A2 (de) * | 2003-01-23 | 2005-10-19 | Siemens Aktiengesellschaft | Verfahren und vorrichtung zur identifikation und kompensation einer perspektivischen verzerrung |
KR20060123999A (ko) * | 2005-05-30 | 2006-12-05 | 노틸러스효성 주식회사 | 2차원 바코드 검출 방법 |
CN1924899A (zh) * | 2006-09-26 | 2007-03-07 | 福建榕基软件开发有限公司 | 复杂背景下qr码图像符号区域的精确定位方法 |
US20090001165A1 (en) * | 2007-06-29 | 2009-01-01 | Microsoft Corporation | 2-D Barcode Recognition |
CN101398895A (zh) * | 2007-09-26 | 2009-04-01 | 杨高波 | 一种数据矩阵(dm)二维条形码识别的图像预处理方法 |
US20150302236A1 (en) * | 2012-10-23 | 2015-10-22 | Sicpa Holding Sa | Method and device for identifying a two-dimensional barcode |
CN109522767A (zh) * | 2017-09-18 | 2019-03-26 | 北京星河泰视特科技有限公司 | 一维码断码视觉检测算法 |
CN107944324A (zh) * | 2017-11-16 | 2018-04-20 | 凌云光技术集团有限责任公司 | 一种二维码畸变校正方法及装置 |
Non-Patent Citations (1)
Title |
---|
王伟;何卫平;雷蕾;郭改放;牛晋波;: "污染及多视角下DataMatrix码精确定位", 计算机辅助设计与图形学学报, no. 09 * |
Also Published As
Publication number | Publication date |
---|---|
CN112069851B (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106960208B (zh) | 一种仪表液晶数字自动切分和识别的方法及系统 | |
EP0669593B1 (en) | Two-dimensional code recognition method | |
US10438036B1 (en) | System and method for reading and decoding ID codes on a curved, sloped and/or annular object | |
Hirzer | Marker detection for augmented reality applications | |
CN107609451A (zh) | 一种基于二维码的高精度视觉定位方法及系统 | |
JP6667065B2 (ja) | 位置推定装置および位置推定方法 | |
JPH1063772A (ja) | データマトリックスシンボルを有する機械読取り可能なシンボルを探し、デコードするための方法及び装置 | |
EP3462372B1 (en) | System and method for detecting optical codes with damaged or incomplete finder patterns | |
CN110569857B (zh) | 一种基于质心距离计算的图像轮廓角点检测方法 | |
WO2017041600A1 (zh) | 一种汉信码特征图形检测方法及系统 | |
CN103824275B (zh) | 在图像中搜寻鞍点状结构并测定其信息的系统和方法 | |
US6941026B1 (en) | Method and apparatus using intensity gradients for visual identification of 2D matrix symbols | |
CN113177959B (zh) | 一种快速运动过程中qr码实时提取方法 | |
CN113256729A (zh) | 激光雷达与相机的外参标定方法、装置、设备及存储介质 | |
CN110969612B (zh) | 二维码印刷缺陷检测方法 | |
CN112069851B (zh) | 一种dm码区域的获取方法及装置 | |
CN103235951B (zh) | 一种矩阵式二维条码的初步定位方法 | |
CN112990192A (zh) | 一种数字水准仪的条码标尺图像定位和识别检测方法 | |
KR20060056223A (ko) | 비대칭 패턴을 갖는 체크보드 및 이를 이용한영상획득장치의 캘리브레이션 방법 및 장치 | |
CN115018735A (zh) | 基于霍夫变换校正二维码图像的裂缝宽度识别方法及系统 | |
CN114972531A (zh) | 一种标定板、角点检测方法、设备及可读存储介质 | |
CN100465586C (zh) | 机器视觉数字化标尺系统 | |
US20200286248A1 (en) | Structured light subpixel accuracy isp pipeline/fast super resolution structured light | |
US20190369633A1 (en) | Target Direction Estimation Using Centroid Follower | |
JP2020027000A (ja) | レンズマーカ画像の補正方法、補正装置、プログラム、および記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |