CN110414649B - Dm码的定位方法、装置、终端及存储介质 - Google Patents
Dm码的定位方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN110414649B CN110414649B CN201910689914.6A CN201910689914A CN110414649B CN 110414649 B CN110414649 B CN 110414649B CN 201910689914 A CN201910689914 A CN 201910689914A CN 110414649 B CN110414649 B CN 110414649B
- Authority
- CN
- China
- Prior art keywords
- code
- line segment
- code area
- image
- area
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06037—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/06009—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
- G06K19/06046—Constructional details
- G06K19/06131—Constructional details the marking comprising a target pattern, e.g. for indicating the center of the bar code or for helping a bar code reader to properly orient the scanner or to retrieve the bar code inside of an image
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种DM码的定位方法,通过从待定位的DM码图像中,提取出符合预设条件的各个待选线段;根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段;根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数。本发明还公开了一种DM码的定位装置、终端以及存储介质。本发明使得在光线不好、采集设备性能较低的情况下,也能精准、快速地定位出DM码。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种DM码的定位方法、装置、终端及存储介质。
背景技术
随着科技的快速发展,二维码的应用普及到了生活、工作、生产等各方面。DM(DataMatrix,数据矩阵)码是一种矩阵式二维条码,其最大特点就是密度高,其最小尺寸是目前所有条码中最小的码。由于DM码优秀的纠错能力,DM码己成为工业二维条码的主流技术。
但是,在实际工业生产中采集到的二维条码常常由于采集设备、光照条件等问题给条码的识别带来了很大的障碍。因此,如何快速准确地定位至二维码区域,是亟待解决的技术问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种DM码的定位方法,旨在解决在复杂环境下,DM码识别困难的技术问题。
为实现上述目的,本发明提供一种DM码的定位方法,包括:
从待定位的DM码图像中,提取出符合预设条件的各个待选线段;
根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段;
根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数。
可选地,所述从待定位的DM码图像中,提取出符合预设条件的各个待选线段的步骤包括:
对所述DM码图像作预处理,得到待检测图像;
采用预设检测算法,从所述待检测图像中提取出符合第一预设条件的各个初始线段;
将所述初始线段进行进行合并,得到各个长线段,并从所述长线段中筛选出符合第二预设条件的各个待选线段。
可选地,所述根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段的步骤包括:
获取各个以所述待选线段为边界所涉及的二维码区域;
计算每个所述二维码区域的离散度;
根据所述离散度,从各个所述待选线段中选取出目标线段。
可选地,所述根据所述离散度,从各个所述待选线段中选取出目标线段的步骤包括:
从所述二维码区域中,查找出所述离散度最大的目标二维码区域;
从所述待选线段中,获取所述目标二维码区域对应的待选线段,以作为待调整线段;
根据所述DM码图像的对比度,调整所述待调整线段的长度,得到目标线段。
可选地,所述计算每个所述二维码区域的离散度的步骤包括:
对每个所述二维码区域进行二值化处理,得到所述二维码区域的二值化图;
获取所述二值化图的黑白分布均匀程度;
根据所述黑白均匀程度,确定所述二维码区域的离散度;
其中,所述黑白均匀程度越大,所述离散度越大。
可选地,所述根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数的步骤包括:
根据所述目标线段,确定所述DM码图像的DM码区域;
获取所述DM码区域的顶点坐标;
识别出所述DM码区域的虚边,并检测出所述虚边的黑模块数。
可选地,所述根据所述目标线段,确定所述DM码图像的DM码区域的步骤包括:
根据所述目标线段,确定所述DM码图像的初步矩形区域;
检测所述初步矩形区域内的亚像素边缘点,并将在同一直线上的所述亚像素边缘点进行拟合,得到所述DM码区域的各个边界线;
将所述边界线形成的矩形区域作为所述DM码图像的DM码区域。
此外,为实现上述目的,本发明还提供一种DM码的定位装置,所述DM码的定位装置包括:
图像线段提取模块,用于从待定位的DM码图像中,提取出符合预设条件的各个待选线段;
目标线段选取模块,用于根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段;
定位模块,用于根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数。
此外,为实现上述目的,本发明还提供一种DM码的定位终端,所述DM码的定位终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的DM码的定位程序,所述DM码的定位程序被所述处理器执行时实现如上所述的DM码的定位方法的步骤。
此外,为实现上述目的,本发明还提供一种存储介质,所述存储介质上存储有DM码的定位程序,所述DM码的定位程序被处理器执行时实现如上所述的DM码的定位方法的步骤。
本发明实施例提出的一种DM码的定位方法、装置、终端及存储介质,通过从待定位的DM码图像中,提取出符合预设条件的各个待选线段;并根据以待选线段为边界所涉及的二维码区域,从各个待选线段中选取出目标线段;使得即使在光线不好、采集设备性能较低的情况,也能根据待定位的DM码图像确定目标线段。并由目标线段确定出DM码图像的DM码区域、DM码区域的顶点坐标、DM码区域的虚边所在位置以及DM码区域的虚边的黑模块数,以完成DM码图像的定位;使得在光线不好、采集设备性能较低的情况下,也能精准、快速地定位出DM码。避免了因光线不好、采集设备性能较低,而导致无法定位出DM码,致使无法识别DM码的问题。
附图说明
图1为本发明DM码的定位方法第一实施例的流程示意图;
图2为本发明DM码的定位方法第一实施例DM码图像的一场景示意图;
图3为本发明DM码的定位方法第二实施例的流程示意图;
图4为本发明DM码的定位方法第三实施例的流程示意图;
图5为本发明DM码的定位方法第三实施例待选线段的一场景示意图;
图6为本发明DM码的定位方法第六实施例的流程示意图;
图7为本发明DM码的定位装置优选实施例的功能模块示意图;
图8为本发明实施例方案涉及的DM码的定位终端的硬件运行环境的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种DM码的定位方法,参照图1,图1为本发明DM码的定位方法较佳实施例的流程示意图。
本发明实施例提供了DM码的定位方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
DM码的定位方法应用于DM码的定位终端或服务器中,DM码的定位终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)等移动终端,以及诸如数字TV、台式计算机等固定终端。在DM码的定位方法的各个实施例中,为了便于描述,以DM码的定位终端为执行主体进行阐述各个实施例。在本发明DM码的定位方法第一实施例中,所述DM码的定位方法包括:
步骤S10,从待定位的DM码图像中,提取出符合预设条件的各个待选线段;
具体地,获取待定位的DM码图像,然后对待定位的DM码图像进行平滑处理,以降低DM码图像噪声、平滑DM码图像。然后采用线段检测算法,如LSD(Line Segment Detector,直线段检测)算法,提取出图像中所有的线段,并将方向相同、并处于近似同一直线上的相邻短线段合并为长线段,得到各个长线段。最后,从各个长线段中,选取出对比度符合预设对比度要求、长度符合预设长度要求的长线段,以作为待选线段。
其中,预设条件,包括线段的对比度符合的预设对比度区间、线段的长度符合的预设长度区间,等等。预设对比度区间、预设长度区间等可以根据具体需求而设置,在本发明实施例中对预设对比度区间、预设长度区间的取值不作限制。
DM码图像,是指待定位出DM码区域、DM码区域的实边、DM码区域的虚边、DM码区域的虚边的黑模块数等信息的图像。
步骤S20,根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段;
参照图2,图2为DM码图像的一场景示意图,DM码的基本特性为:DM码区域为矩形,存在两条实边,并且两条实边呈“L”型、两条虚边也呈“L”型;一般来说,DM码以白色为背景,以黑色为文字。为了方便理解,后续以黑模块表示单位长度的文字内容、以白模块表示单位长度的背景。
具体地,一种实施方式为,将DM码图像进行二值化,确定每个待选线段构成的矩形区域,即以待选线段为边界所涉及的二维码区域,并将待选线段构成的矩形区域作为待选线段对应的二维码区域,并计算每个待选线段对应的二维码区域的黑模块与白模块的分布均匀程度。基于DM码内部编码规则:黑模块与白模块近似均匀分布在二维码区域内,从各个待选线段对应的二维码区域中,查找出黑模块与白模块的分布均匀程度最大的二维码区域,并将黑模块与白模块分布均匀程度最大的二维码区域对应的待选线段,作为目标线段。
一种实施方式为,将DM码图像进行二值化,确定每个待选线段构成的矩形区域,即以待选线段为边界所涉及的二维码区域,并将待选线段构成的矩形区域作为待选线段对应的二维码区域,并计算每个待选线段对应的二维码区域的黑模块与白模块的分布均匀程度。基于DM码内部编码规则:黑模块与白模块近似均匀分布在二维码区域内,从各个待选线段对应的二维码区域中,查找出黑模块与白模块的分布均匀程度最大的二维码区域。并将黑模块与白模块分布均匀程度最大的二维码区域对应的待选线段,作为待调整线段。基于DM码图像的对比度,对待调整线段进行延长或缩短调整,使待调整线段长度与DM码的“L”边近似等长,并将调整后的待调整线段作为目标线段。
其中,待选线段对应的二维码区域,是指由待选线段构成的矩形区域。
目标线段,是指从各个待选线段中选取并确定为DM码区域的矩形的一条边。
步骤S30,根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数。
其中,顶点坐标,是指DM码区域的四个顶点的坐标。
黑模块数,是指DM码表示文字部分的模块数,在本发明实施例中,以黑模块表示单位长度的文字内容,故简称为黑模块数。
具体地,一种实施方式为,确定目标线段构成的矩形区域,由于由一个线段不能唯一确定一个矩形,从目标线段构成的矩形区域中,查找出黑模块与白模块的分布均匀程度最大的矩形区域,以作为DM码图像的DM码区域。并获取由DM码区域构成的矩形的四个顶点坐标,以作为DM码图像的DM码区域的顶点坐标。
基于DM码的虚边黑模块与白模块均匀分布的特性,识别出DM码区域的虚边,并检测出每条虚边的黑模块数。以供后续获取目标线段的长度,并根据目标线段的长度与每条虚边的黑模块数,确定出DM码的模块单位长度。至此,DM码图像的DM码区域的四个顶点坐标、DM码区域的虚边、以及虚边中每个黑模块的单位长度均确定,DM码图像的定位完成。
一种实施方式为,确定目标线段构成的矩形区域,由于由一个线段不能唯一确定一个矩形,从目标线段构成的矩形区域中,查找出黑模块与白模块的分布均匀程度最大的矩形区域,以作为DM码图像的初步矩形区域。并在初步矩形区域内检测亚像素边缘点,根据亚像素边缘点拟合出DM码区域的四条边缘线,并获取由四条边缘线的形成的矩形区域,以作为DM码图像的DM码区域。获取四条边缘线的四个交点坐标,以作为DM码图像的DM码区域的顶点坐标。
基于DM码的虚边黑模块与白模块均匀分布的特性,识别出DM码区域的虚边,并检测出每条虚边的黑模块数。以供后续获取目标线段的长度,并根据目标线段的长度与每条虚边的黑模块数,确定出DM码的模块单位长度。至此,DM码图像的DM码区域的四个顶点坐标、DM码区域的虚边、以及虚边中每个黑模块的单位长度均确定,DM码图像的定位完成。
本发明实施例中,通过从待定位的DM码图像中,提取出符合预设条件的各个待选线段;并根据以待选线段为边界所涉及的二维码区域,从各个待选线段中选取出目标线段;使得即使在光线不好、采集设备性能较低的情况,也能根据待定位的DM码图像确定目标线段。并由目标线段确定出DM码图像的DM码区域、DM码区域的顶点坐标、DM码区域的虚边所在位置以及DM码区域的虚边的黑模块数,以完成DM码图像的定位;使得光线不好、采集设备性能较低的情况,也能精准、快速地定位出DM码。避免了因光线不好、采集设备性能较低,而导致无法定位出DM码,致使无法识别DM码的问题。
进一步地,参照图3,基于上述第一实施例,提出本发明DM码的定位方法的第二实施例,步骤S10包括:
步骤S11,对所述DM码图像作预处理,得到待检测图像;
具体地,获取待定位的DM码图像,然后采用平滑处理方法对待定位的DM码图像进行平滑、降噪处理,得到待检测图像。如采用高斯滤波对待定位的DM码图像进行平滑处理,以降低DM码图像噪声、平滑DM码图像。
其中,预处理,是指对待定位的DM码图像作平滑、降噪处理等。
待检测图像,是指待定位的DM码图像作平滑、降噪处理后得到的图像。
步骤S12,采用预设检测算法,从所述待检测图像中提取出符合第一预设条件的各个初始线段;
其中,预设检测算法,是指线段检测算法,如LSD算法等。预设检测算法的具体算法可以根据具体需求设置,在本实施例中对预设检测算法的具体算法不作限制。
对比度,是指图像中明暗区域最亮的白和最暗的黑之间不同亮度层级的测量,差异范围越大代表对比越大,差异范围越小代表对比越小。线段的长度,是指线段的像素点。
初始线段,是指待检测图像的所有线段中,对比度大于第一预设对比度且长度大于第一预设长度的线段。
第一预设条件,是指对比度大于第一预设对比度且长度大于第一预设长度。
采用预设检测算法,检测出待检测图像中的所有短线段,然后检测每个短线段的对比度是否大于第一预设对比度,以及每个短线段的长度是否大于第一预设长度。从待检测图像中的所有短线段,提取出对比度大于第一预设对比度且长度大于第一预设长度的短线段,以作为初始线段。至此,完成从待检测图像中提取出符合第一预设条件的各个初始线段。
其中,第一预设对比度的具体取值、第一预设长度的具体取值可以根据具体需求而设置,在本实施例中对第一预设对比度和第一预设长度的具体取值不作限制。
步骤S13,将所述初始线段进行进行合并,得到各个长线段,并从所述长线段中筛选出符合第二预设条件的各个待选线段。
其中,长线段,是指方向相同、并处于近似同一直线上的相邻初始线段进行合并得到的线段。
其中,第二预设条件,是指对比度大于第二预设对比度且长度大于第二预设长度。第一预设条件和第二预设条件的不同点在于:第一预设条件针对的是待检测图像中的所有短线段,第二预设条件针对的是长线段。
具体地,一种实施方式为,检测出所有初始线段的方向,并将方向相同、并处于近似同一直线上的相邻初始线段进行合并,得到各个长线段。然后,检测每个长线段的对比度是否大于第二预设对比度,以及每个长线段的长度是否大于第二预设长度。从各个长线段,提取出对比度大于第二预设对比度且长度大于第二预设长度的长线段,以作为待选线段。至此,完成从各个长线段中筛选出符合第二预设条件的各个待选线段。
一种实施方式为,检测出所有初始线段的方向,并从所有初始线段中筛选出方向相同的初始线段。例如,筛选出方向向上的线段、筛选出方向向下的线段、筛选出方向向左的线段或者筛选出方向向右的线段。然后,将方向相同的各个初始线段中,近似在同一直线上的相邻初始线段进行合并,,得到各个长线段。最后,检测每个长线段的对比度是否大于第二预设对比度,以及每个长线段的长度是否大于第二预设长度。从各个长线段,提取出对比度大于第二预设对比度且长度大于第二预设长度的长线段,以作为待选线段。至此,完成从各个长线段中筛选出符合第二预设条件的各个待选线段。
其中,第二预设对比度的具体取值、第二预设长度的具体取值可以根据具体需求而设置,在本实施例中对第二预设对比度和第二预设长度的具体取值不作限制。第二预设对比度大于第一预设对比度、第二预设长度大于第一预设长度。
本发明实施例中,通过从待检测图像中提取出符合第一预设条件的各个初始线段,粗略删除明显属于干扰的线段,从而减少后续筛选待选线段时需要进行处理的线段数量,达到减少的数据处理量的目的,进而加快DM码定位的速度。通过从长线段中筛选出符合第二预设条件的各个待选线段,删除明显不是DM码边缘线的长线段,从而减少后续筛选目标线段时需要进行处理的线段数量,达到减少的数据处理量的目的,进而加快DM码定位的速度。通过从待定位的DM码图像中,提取出符合预设条件的各个待选线段,为后续精准地确定目标线段提供了准确的数据,从而保证后续可以精准快速地定位DM码图像的DM码。
进一步地,参照图4,基于上述第一实施例,提出本发明DM码的定位方法的第三实施例,步骤S20包括:
步骤S21,获取各个以所述待选线段为边界所涉及的二维码区域;
具体地,一种实施方式为,将DM码图像进行二值化,确定每个待选线段构成的矩形区域,即以待选线段为边界所涉及的二维码区域,并将待选线段构成的矩形区域作为待选线段对应的二维码区域。其中,由于一个线段不能唯一确定一个矩形,故每个待选线段将确定得出两个矩形区域,将待选线段构成的两个矩形区域作为待选线段对应的二维码区域。
一种实施方式为,参照图5,图5为待选线段的一场景示意图。将DM码图像进行二值化,将待选线段视为DM码“L”型实边的一边。然后,根据待选线段的方向,确定与待选线段构成“L”的另一条实边。最后,基于待选线段以及与待选线段呈“L”型的实边,确定唯一的矩形区域,即以待选线段为边界所涉及的二维码区域,以作为待选线段对应的二维码区域。这里所指的实边,并非DM码实际的实边,而是将待选线段假设的实边,以便查找出贴近DM码实际的实边(目标线段)。
步骤S22,计算每个所述二维码区域的离散度;
其中,离散度,是指以待选线段为边界所涉及的二维码区域的黑模块与白模块分布的均匀程度。
检测出待选线段对应的二维码区域内黑模块与白模块的数量、以及黑模块与白模块分布情况,并根据黑模块与白模块的数量和分布情况,计算每个待选线段对应的二维码区域的黑模块与白模块的分布均匀程度(即离散度)。
步骤S23,根据所述离散度,从各个所述待选线段中选取出目标线段。
基于DM码内部编码规则:黑模块与白模块近似均匀分布在二维码区域内,从各个待选线段对应的二维码区域中,查找出黑模块与白模块的分布均匀程度(即离散度)最大的二维码区域。并将黑模块与白模块分布均匀程度(即离散度)最大的二维码区域对应的待选线段,作为待调整线段。
基于DM码图像的对比度,对待调整线段进行延长或缩短调整,使待调整线段长度与DM码的“L”边近似等长,并将调整后的待调整线段作为目标线段。
本发明实施例中,基于DM码内部编码规则:黑模块与白模块近似均匀分布在二维码区域内,检测待选线段对应的二维码区域的离散度,查找出离散度最大的二维码区域对应的待选线段;并根据DM码图像的对比度,将离散度最大的二维码区域对应的待选线段进行延长或缩短调整后,得到目标线段;从而使得查找出的目标线段更贴近实际DM码的实际实边长度,为后续根据目标线段确定DM码图像的DM码区域提供了精准的数据,保证了后续可以精准地定位出DM码图像的DM码。
进一步地,基于上述第三实施例,提出本发明DM码的定位方法的第四实施例,步骤S23包括:
步骤A1,从所述二维码区域中,查找出所述离散度最大的目标二维码区域;
基于DM码内部编码规则:黑模块与白模块近似均匀分布在二维码区域内,从各个待选线段对应的二维码区域(即以待选线段为边界所涉及的二维码区域)中,查找出黑模块与白模块的分布均匀程度(即离散度)最大的二维码区域,以作为目标二维码区域。其中,目标二维码区域,是指各个待选线段对应的二维码区域中,黑模块与白模块的分布均匀程度(即离散度)最大的二维码区域。
步骤A2,从所述待选线段中,获取所述目标二维码区域对应的待选线段,以作为待调整线段;
从待选线段中,获取黑模块与白模块分布均匀程度(即离散度)最大的二维码区域(即目标二维码区域)对应的待选线段,以作为待调整线段。其中,待调整线段,是指黑模块与白模块的分布均匀程度(即离散度)最大的二维码区域对应的待选线段。
例如,所有待选线段为:待选线段A、待选线段B、待选线段C,待选线段A的离散度为10、待选线段B的离散度为15、待选线段C的离散度为20,则从所有待选线段获取待选线段C作为待调整线段。
步骤A3,根据所述DM码图像的对比度,调整所述待调整线段的长度,得到目标线段。
具体地,由于DM码图像存在DM码,故DM码图像存在一定的对比度。检测待调整线段两个端点处在待调整线段方向两侧的对比度是否等于预设数值,若待调整线段方向两侧的对比度大于预设数值,则延长待调整线段;若待调整线段方向两侧的对比度等于预设数值,则缩短待调整线段;直至再延长待调整线段时,在待调整线段方向两侧的对比度等于预设数值,且再缩短待调整线段时,待调整线段端点处在待调整线段方向两侧的对比度大于预设数值,停止调整待调整线段,并此时调整后的待调整线段作为目标线段。
本发明实施例中,通过从待选线段中,获取离散度最大的目标二维码区域对应的待选线段,作为待调整线段;并对待调整线段进行调整后得到目标线段,从而使得目标线段的长度更贴近DM码的实边实际长度,为后续根据目标线段确定DM码图像的DM码提供了精准的数据,保证了后续可以精准地定位出DM码图像的DM码。
进一步地,基于上述第三实施例,提出本发明DM码的定位方法的第五实施例,步骤S22包括:
步骤B1,对每个所述二维码区域进行二值化处理,得到所述二维码区域的二值化图;
具体地,对DM码图像作预处理,得到待检测图像;然后对待检测图像进行二值化处理,从而实现对待选线段对应的二维码区域(即以待选线段为边界所涉及的二维码区域)进行二值化处理,得到待选线段对应的二维码区域的二值化图。
其中,二值化图,是指以待选线段为边界所涉及的二维码区域,进行二值化处理后对应的区域图像。
在本实施例中对待检测图像进行二值化处理的目的是:便于精准地查找出黑模块与白模块,以便精准确定待选线段对应的二维码区域(即以待选线段为边界所涉及的二维码区域)的黑模块与白模块分布均匀程度。其中,对待检测图像进行二值化的具体数值可以根据具体需求而设置。例如,将待检测图像二值化为(0,225),或者待检测图像二值化为(2,225)。
步骤B2,获取所述二值化图的黑白分布均匀程度;
具体地,检测二值化图的黑模块数与白模块数,并检测二值化图的黑模块数与白模块数的比例、连续拼接黑模块数量是否小于第一预设阈值以及连续拼接白模块数量是否小于第二预设阈值。然后根据二值化图的黑模块数与白模块数的比例、连续拼接黑模块数量是否小于第一预设阈值以及连续拼接白模块数量是否小于第二预设阈值,确定二值化图的黑白分布均匀程度。其中,黑模块数与白模块数的比例约接近于1,二值化图的黑白分布均匀程度越大。连续拼接黑模块数量越小于第一预设阈值,二值化图的黑白分布均匀程度越大。连续拼接白模块数量越小于第一预设阈值,二值化图的黑白分布均匀程度越大。
例如,二值化图A:黑模块数为6、白模块数为6,则黑模块与白模块的比例为1:1;二值化图B:黑模块数为10、白模块数为2,则黑模块与白模块的比例为5:1;在其他条件均相同情况下,二值化图A的黑白分布均匀程度高于二值化图B的黑白分布均匀程度。
步骤B3,根据所述黑白均匀程度,确定所述二维码区域的离散度;
其中,所述黑白均匀程度越大,所述离散度越大。
一种实施方式为,将二值化图的黑白均匀程度作为对应二维码区域的离散度。一种实施方式为,根据二值化图的黑白均匀程度的取值区间,将二维码区域的离散度划分等级。其中,二值化图的黑白均匀程度越大,对应二维码区域的离散度越大。
本发明实施例中,通过对以选线段为边界所涉及的二维码区域进行二值化处理,便于精准地查找出黑模块与白模块,以便精准地确定待选线段对应的二维码区域(即以待选线段为边界所涉及的二维码区域)的黑模块与白模块分布均匀程度,进而精准地确定待选线段对应的二维码区域的离散度,为后续根据离散度从各个待选线段中选取出目标线段提供了精准的数据。
进一步地,参照图6,基于上述第一实施例、第二实施例、第三实施例、第四实施例或第五实施例,提出本发明DM码的定位方法的第六实施例,步骤S30包括:
步骤S31,根据所述目标线段,确定所述DM码图像的DM码区域;
一种实施方式为,确定目标线段构成的矩形区域,由于由一个线段不能唯一确定一个矩形,从目标线段构成的矩形区域中,查找出黑模块与白模块的分布均匀程度最大的矩形区域,以作为DM码图像的DM码区域。
一种实施方式为,获取目标线段的方向,将目标线段视为DM码的一条实边;基于DM码呈“L”型的两条实边线垂直且相等的性质,根据目标线段的方向以及DM码图像的对比度,查找出与目标线段呈“L”型的另一实边。进而根据已经确定的“L”型实边,确定唯一确定的一个矩形区域,并将该矩形区域作为DM码图像的DM码区域。
步骤S32,获取所述DM码区域的顶点坐标;
具体地,获取由DM码区域构成的矩形的四个顶点坐标,以作为DM码图像的DM码区域的顶点坐标。
步骤S33,识别出所述DM码区域的虚边,并检测出所述虚边的黑模块数。
基于DM码的虚边黑模块与白模块均匀分布的特性,识别出DM码区域的虚边,并检测出每条虚边的黑模块数。以供后续获取目标线段的长度,并根据目标线段的长度与每条虚边的黑模块数,确定出DM码的模块单位长度。至此,DM码图像的DM码区域的四个顶点坐标、DM码区域的虚边、以及虚边中每个黑模块的单位长度均确定,DM码图像的定位完成。
本发明实施例中,根据目标线段确定出DM码图像的DM码区域、DM码区域的顶点坐标、DM码区域的虚边所在位置以及DM码区域的虚边的黑模块数,实现了DM码图像的DM码定位,保证了在复杂条件也能精准识别出DM码。
进一步地,基于上述第六实施例,提出本发明DM码的定位方法的第七实施例,步骤S31包括:
步骤C1,根据所述目标线段,确定所述DM码图像的初步矩形区域;
其中,初步矩形区域,是指由目标线段构成的矩形区域,初步矩形区域可能会存在比DM码构成的矩形区域略大。
一种实施方式为,确定目标线段构成的矩形区域,由于由一个线段不能唯一确定一个矩形,从目标线段构成的矩形区域中,查找出黑模块与白模块的分布均匀程度最大的矩形区域,以作为DM码图像的初步矩形区域。
步骤C2,检测所述初步矩形区域内的亚像素边缘点,并将在同一直线上的所述亚像素边缘点进行拟合,得到所述DM码区域的各个边界线;
为了精准地定位出DM码图像的DM码区域,通过检测由目标线段构成的初步矩形区域内的亚像素边缘点,并将在同一直线上亚像素边缘点进行拟合,得到一个矩形,并将该矩形的四条边作为DM码区域的四条边界线。
步骤C3,将所述边界线形成的矩形区域作为所述DM码图像的DM码区域。
最后,将DM码区域的四条边界线构成的矩形区域作为DM码图像的DM码区域。至此,实现根据目标线段,精准定位DM码图像的DM码区域。
本发明实施例中,通过从由目标线段构成的矩形区域内,识别出亚像素点边缘点,并将在同一直线上亚像素边缘点进行拟合,得到DM码区域的四条边界线,从而精准地定位出DM码图像的DM码区域。
此外,本发明实施例还提出一种DM码的定位装置。
参照图7,图7为本发明DM码的定位装置优选实施例的功能模块示意图。
本实施例中,DM码的定位装置包括:
图像线段提取模块10,用于从待定位的DM码图像中,提取出符合预设条件的各个待选线段;
目标线段选取模块20,用于根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段;
定位模块30,用于根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数
进一步的,所述图像线段提取模块10包括:
图像处理单元,用于对所述DM码图像作预处理,得到待检测图像;
第一线段提取单元,用于采用预设检测算法,从所述待检测图像中提取出符合第一预设条件的各个初始线段;
第二线段提取单元,用于将所述初始线段进行进行合并,得到各个长线段,并从所述长线段中筛选出符合第二预设条件的各个待选线段。
进一步的,所述目标线段选取模块20包括:
二维码区域获取单元,用于获取各个以所述待选线段为边界所涉及的二维码区域;
离散度计算单元,用于计算每个所述二维码区域的离散度;
目标线段选取单元,用于根据所述离散度,从各个所述待选线段中选取出目标线段。
进一步的,所述目标线段选取单元包括:
目标二维码区域确定子单元,用于从所述二维码区域中,查找出所述离散度最大的目标二维码区域;
待调整线段获取子单元,用于从所述待选线段中,获取所述目标二维码区域对应的待选线段,以作为待调整线段;
调整子单元,用于根据所述DM码图像的对比度,调整所述待调整线段的长度,得到目标线段。
进一步的,所述离散度计算单元包括:
二值化子单元,用于对每个所述二维码区域进行二值化处理,得到所述二维码区域的二值化图;
均匀程度确定子单元,用于获取所述二值化图的黑白分布均匀程度;
离散度确定子单元,用于根据所述黑白均匀程度,确定所述二维码区域的离散度;
其中,所述黑白均匀程度越大,所述离散度越大。
进一步的,所述定位模块30包括:
DM码区域定位单元,用于根据所述目标线段,确定所述DM码图像的DM码区域;
坐标确定单元,用于获取所述DM码区域的顶点坐标;
识别单元,用于识别出所述DM码区域的虚边,并检测出所述虚边的黑模块数。
进一步的,所述DM码区域定位单元包括:
区域确定子单元,用于根据所述目标线段,确定所述DM码图像的初步矩形区域;
边界确定子单元,用于检测所述初步矩形区域内的亚像素边缘点,并将在同一直线上的所述亚像素边缘点进行拟合,得到所述DM码区域的各个边界线;
DM码区域定位子单元,用于将所述边界线形成的矩形区域作为所述DM码图像的DM码区域。
如图8所示,图8是本发明实施例方案涉及的硬件运行环境的DM码的定位终端结构示意图。
本发明实施例DM码的定位终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、便携计算机等可移动式终端设备。
如图8所示,该DM码的定位终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,DM码的定位终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。
本领域技术人员可以理解,图8中示出的DM码的定位终端结构并不构成对DM码的定位终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图8所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及DM码的定位程序。
在图8所示的DM码的定位终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的DM码的定位程序,并执行如上所述DM码的定位方法的方法的步骤。
本发明DM码的定位终端具体实施方式与上述DM码的定位方法各实施例基本相同,在此不再赘述。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有DM码的定位程序,所述DM码的定位程序被处理器执行时实现如上所述的DM码的定位方法的步骤。
本发明存储介质具体实施方式可以参照上述DM码的定位方法各实施例,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种数据矩阵DM码的定位方法,其特征在于,所述DM码的定位方法包括:
从待定位的DM码图像中,提取出符合预设条件的各个待选线段;
获取各个以所述待选线段为边界所涉及的二维码区域;
计算每个所述二维码区域的离散度;
根据所述离散度,从各个所述待选线段中选取出目标线段;
所述根据所述离散度,从各个所述待选线段中选取出目标线段的步骤包括:
从所述二维码区域中,查找出所述离散度最大的目标二维码区域;
从所述待选线段中,获取所述目标二维码区域对应的待选线段,以作为待调整线段;
根据所述DM码图像的对比度,调整所述待调整线段的长度,得到目标线段;
根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数。
2.如权利要求1所述的DM码的定位方法,其特征在于,所述从待定位的DM码图像中,提取出符合预设条件的各个待选线段的步骤包括:
对所述DM码图像作预处理,得到待检测图像;
采用预设检测算法,从所述待检测图像中提取出符合第一预设条件的各个初始线段;
将所述初始线段进行合并,得到各个长线段,并从所述长线段中筛选出符合第二预设条件的各个待选线段。
3.如权利要求1所述的DM码的定位方法,其特征在于,所述计算每个所述二维码区域的离散度的步骤包括:
对每个所述二维码区域进行二值化处理,得到所述二维码区域的二值化图;
获取所述二值化图的黑白分布均匀程度;
根据所述黑白分布均匀程度,确定所述二维码区域的离散度;
其中,所述黑白分布均匀程度越大,所述离散度越大。
4.如权利要求1-3中任一项所述的DM码的定位方法,其特征在于,所述根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数的步骤包括:
根据所述目标线段,确定所述DM码图像的DM码区域;
获取所述DM码区域的顶点坐标;
识别出所述DM码区域的虚边,并检测出所述虚边的黑模块数。
5.如权利要求3所述的DM码的定位方法,其特征在于,所述根据所述目标线段,确定所述DM码图像的DM码区域的步骤包括:
根据所述目标线段,确定所述DM码图像的初步矩形区域;
检测所述初步矩形区域内的亚像素边缘点,并将在同一直线上的所述亚像素边缘点进行拟合,得到所述DM码区域的各个边界线;
将所述边界线形成的矩形区域作为所述DM码图像的DM码区域。
6.一种DM码的定位装置,其特征在于,所述DM码的定位装置包括:
图像线段提取模块,用于从待定位的DM码图像中,提取出符合预设条件的各个待选线段;
目标线段选取模块,用于根据以所述待选线段为边界所涉及的二维码区域,从各个所述待选线段中选取出目标线段;
定位模块,用于根据所述目标线段,确定所述DM码图像的DM码区域的顶点坐标,以及所述DM码区域的虚边的黑模块数;
所述目标线段选取模块,还用于获取各个以所述待选线段为边界所涉及的二维码区域;计算每个所述二维码区域的离散度;从所述二维码区域中,查找出所述离散度最大的目标二维码区域;从所述待选线段中,获取所述目标二维码区域对应的待选线段,以作为待调整线段;根据所述DM码图像的对比度,调整所述待调整线段的长度,得到目标线段。
7.一种DM码的定位终端,其特征在于,所述DM码的定位终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的DM码的定位程序,所述DM码的定位程序被所述处理器执行时实现如权利要求1至5中任一项所述的DM码的定位方法的步骤。
8.一种存储介质,其特征在于,所述存储介质上存储有DM码的定位程序,所述DM码的定位程序被处理器执行时实现如权利要求1至5中任一项所述的DM码的定位方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910689914.6A CN110414649B (zh) | 2019-07-29 | 2019-07-29 | Dm码的定位方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910689914.6A CN110414649B (zh) | 2019-07-29 | 2019-07-29 | Dm码的定位方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110414649A CN110414649A (zh) | 2019-11-05 |
CN110414649B true CN110414649B (zh) | 2023-06-06 |
Family
ID=68363843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910689914.6A Active CN110414649B (zh) | 2019-07-29 | 2019-07-29 | Dm码的定位方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110414649B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112329496B (zh) * | 2020-12-02 | 2023-12-19 | 库卡机器人(广东)有限公司 | 矩形二维码识别方法、装置及电子设备 |
CN112598100A (zh) * | 2020-12-23 | 2021-04-02 | 深兰人工智能芯片研究院(江苏)有限公司 | 点阵式dm二维码规格确定方法及相关装置 |
CN113705270B (zh) * | 2021-11-01 | 2022-02-18 | 深圳思谋信息科技有限公司 | 识别二维码定位码区的方法、装置、设备和存储介质 |
CN117218328B (zh) * | 2023-11-07 | 2024-03-08 | 深圳优艾智合机器人科技有限公司 | 二维码定位方法、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398895A (zh) * | 2007-09-26 | 2009-04-01 | 杨高波 | 一种数据矩阵(dm)二维条形码识别的图像预处理方法 |
CN106485255A (zh) * | 2016-09-29 | 2017-03-08 | 深圳元启智能技术有限公司 | 一种dm码定位及识别的方法与系统 |
CN106980851A (zh) * | 2017-03-21 | 2017-07-25 | 浙江华睿科技有限公司 | 一种数据矩阵dm码的定位方法及装置 |
CN107301368A (zh) * | 2017-06-28 | 2017-10-27 | 昂纳自动化技术(深圳)有限公司 | 一种DataMatrix二维码的识别方法 |
CN108037503A (zh) * | 2017-12-22 | 2018-05-15 | 杭州视熵科技有限公司 | 一种面向家居板材上下料的基于激光雷达的平面多板材定位方法 |
CN109086644A (zh) * | 2018-07-27 | 2018-12-25 | 广东奥普特科技股份有限公司 | 亚像素精度的DataMatrix二维码的定位方法 |
CN109711415A (zh) * | 2018-11-13 | 2019-05-03 | 平安科技(深圳)有限公司 | 证件轮廓确定方法、装置及存储介质、服务器 |
CN109977910A (zh) * | 2019-04-04 | 2019-07-05 | 厦门商集网络科技有限责任公司 | 基于彩色线段的票据快速定位方法及其系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095822B (zh) * | 2015-09-07 | 2018-07-06 | 福建联迪商用设备有限公司 | 一种汉信码特征图形检测方法及系统 |
-
2019
- 2019-07-29 CN CN201910689914.6A patent/CN110414649B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398895A (zh) * | 2007-09-26 | 2009-04-01 | 杨高波 | 一种数据矩阵(dm)二维条形码识别的图像预处理方法 |
CN106485255A (zh) * | 2016-09-29 | 2017-03-08 | 深圳元启智能技术有限公司 | 一种dm码定位及识别的方法与系统 |
CN106980851A (zh) * | 2017-03-21 | 2017-07-25 | 浙江华睿科技有限公司 | 一种数据矩阵dm码的定位方法及装置 |
CN107301368A (zh) * | 2017-06-28 | 2017-10-27 | 昂纳自动化技术(深圳)有限公司 | 一种DataMatrix二维码的识别方法 |
CN108037503A (zh) * | 2017-12-22 | 2018-05-15 | 杭州视熵科技有限公司 | 一种面向家居板材上下料的基于激光雷达的平面多板材定位方法 |
CN109086644A (zh) * | 2018-07-27 | 2018-12-25 | 广东奥普特科技股份有限公司 | 亚像素精度的DataMatrix二维码的定位方法 |
CN109711415A (zh) * | 2018-11-13 | 2019-05-03 | 平安科技(深圳)有限公司 | 证件轮廓确定方法、装置及存储介质、服务器 |
CN109977910A (zh) * | 2019-04-04 | 2019-07-05 | 厦门商集网络科技有限责任公司 | 基于彩色线段的票据快速定位方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110414649A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414649B (zh) | Dm码的定位方法、装置、终端及存储介质 | |
CN111275730A (zh) | 地图区域的确定方法、装置、设备及存储介质 | |
US20140286542A1 (en) | Methods and systems for determining image processing operations relevant to particular imagery | |
CN111507324B (zh) | 卡片边框识别方法、装置、设备和计算机存储介质 | |
CN107886026B (zh) | 图形码处理方法及装置 | |
US8965051B2 (en) | Method and apparatus for providing hand detection | |
CN104428792A (zh) | 用于最大稳定极值区域处理的兴趣区域的参数选择及粗略定位 | |
CN105046254A (zh) | 字符识别方法及装置 | |
CN111899270B (zh) | 卡片边框检测方法、装置、设备及可读存储介质 | |
CN110431563B (zh) | 图像校正的方法和装置 | |
CN111553302B (zh) | 关键帧选取方法、装置、设备及计算机可读存储介质 | |
CN111290684B (zh) | 图像显示方法、图像显示装置及终端设备 | |
CN111080665B (zh) | 图像边框识别方法、装置、设备和计算机存储介质 | |
CN111079730A (zh) | 一种在界面图中确定样图所在区域的方法和电子设备 | |
CN114298902A (zh) | 一种图像对齐方法、装置、电子设备和存储介质 | |
CN113781406A (zh) | 电子元器件的划痕检测方法、装置及计算机设备 | |
CN110827301A (zh) | 用于处理图像的方法和装置 | |
CN117115774B (zh) | 草坪边界的识别方法、装置、设备及存储介质 | |
CN111260564A (zh) | 一种图像处理方法和装置及计算机存储介质 | |
CN115880362B (zh) | 码区定位方法、装置、计算机设备及计算机可读存储介质 | |
CN111860687A (zh) | 一种图像识别方法、装置、电子设备和存储介质 | |
CN109213515B (zh) | 多平台下埋点归一方法及装置和电子设备 | |
CN114511862B (zh) | 表格识别方法、装置及电子设备 | |
CN111368572A (zh) | 一种二维码的识别方法及系统 | |
CN108121942B (zh) | 一种指纹识别的方法及装置 |
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 |