CN106600655A - 基于行程编码的任意结构元的快速区域腐蚀算法及装置 - Google Patents
基于行程编码的任意结构元的快速区域腐蚀算法及装置 Download PDFInfo
- Publication number
- CN106600655A CN106600655A CN201611033311.3A CN201611033311A CN106600655A CN 106600655 A CN106600655 A CN 106600655A CN 201611033311 A CN201611033311 A CN 201611033311A CN 106600655 A CN106600655 A CN 106600655A
- Authority
- CN
- China
- Prior art keywords
- area
- interest
- structural elements
- run
- length encoding
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
一种基于行程编码的任意结构元的快速区域腐蚀算法及装置,包括:对输入图像进行行程编码;以及用行程编码的结构元对编码后的感兴趣区域进行腐蚀。本发明能够有效地降低内存占用,并缩短耗时。
Description
技术领域
本发明涉及图像处理,尤其涉及到感兴趣区域腐蚀的实现。
背景技术
形态学腐蚀算法是图像处理领域中常用的预处理算法,应用主要有:1、图像分割除了得到感兴趣区域外,还会存在不同类型的干扰及毛刺等,图像腐蚀是去除这些干扰的有力手段之一,可简化后续处理;2、与其它形态学算子组合,例如:膨胀算子,求图像边缘、断开或连接两区域以及求感兴趣区域各种几何参数等。目前已有的感兴趣区域腐蚀算法中,主要特征为针对的是像素点进行操作。针对像素点操作的方法可分为两种:1)每个像素点采用八位表示,即像素值可取0到255;2)每个像素点采用1位表示,即像素值为0与1。这两种像素表示方法在进行腐蚀操作时原理基本一致,数学表达式为:表示用结构元B对感兴趣区域A进行腐蚀,表达式意思是结构元(为结构元B关于其原点的镜像)在感兴趣区域A所在的图像内平移,结构元完全包含于感兴趣区域A的所有位置的集合即为腐蚀所得结果。其中,方法1)比方法2)慢,因为计算机对一位的访问与计算的速度要快于八位;另外,方法1)的内存占用量是方法2)的八倍。
现有的这种针对像素点的操作方法存在速度慢、占用内存大、对感兴趣区域的操作受图像的宽高限制、需访问图像内所有像素点等缺点。也就是说,现有的感兴趣区域腐蚀算法耗时长且占用内存多,对处于图像边界的像素点腐蚀会受限制。另一方面,在实际工业应用中往往要求实时对图像进行处理,对算法的耗时要求严格,现有的这种算法难以满足实际应用的需要。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提出一种基于行程编码的任意结构元的快速区域腐蚀算法,能够有效地降低内存占用,并缩短耗时。
本发明解决其技术问题所采用的技术方案是:提供一种基于行程编码的任意结构元的快速区域腐蚀算法,包括:对输入图像进行行程编码;以及用行程编码的结构元对编码后的感兴趣区域进行腐蚀。
在一些实施例中,所述的对输入图像进行行程编码,具体包括:图像分割获得感兴趣区域;以及对感兴趣区域行程编码。
在一些实施例中,所述的用结构元对编码后的感兴趣区域进行腐蚀,包括:将采用结构元腐蚀感兴趣区域表示为结构元所有行程相对于其原点的向量对感兴趣区域的平移结果的交集。
在一些实施例中,所述的选择结构元对编码后的感兴趣区域进行腐蚀,具体包括:求结构元的单个行程对感兴趣区域的腐蚀结果;直至得到该结构元所有行程对感兴趣区域的腐蚀结果;对所有的腐蚀结果求交集。
在一些实施例中,所述的结构元的原点是指结构元的重心。
本发明解决其技术问题所采用的技术方案还是:提供一种基于行程编码的任意结构元的快速区域腐蚀装置,包括:第一模块,用于对输入图像进行行程编码;以及第二模块,用于用行程编码的结构元对编码后的感兴趣区域进行腐蚀。
在一些实施例中,所述的第一模块实现的功能具体包括:图像分割获得感兴趣区域;以及对感兴趣区域行程编码。
在一些实施例中,所述的第二模块实现的功能包括:将采用结构元腐蚀感兴趣区域表示为结构元所有行程相对于其原点的向量对感兴趣区域的平移结果的交集。
在一些实施例中,所述的第二模块具体实现的功能包括:求结构元的单个行程对感兴趣区域的腐蚀结果;直至得到该结构元所有行程对感兴趣区域的腐蚀结果;对所有的腐蚀结果求交集。
本发明的有益效果在于,通过对图像进行行程编码,并采用行程编码的结构元对图像的感兴趣区域进行腐蚀,能够有效地降低内存占用,并缩短耗时。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1为本发明的行程编码的示意图。
图2为本发明的行程编码的流程图。
图3为本发明的结构元的示意图。
图4为本发明算法的流程示意图。
图5为本发明对感兴趣区域进行腐蚀步骤的流程示意图。
图6为图3所示结构元中行程作用示意图。
图7为采用本发明算法用图3所示的结构元进行腐蚀的结果示意图。
图8为本发明装置的示意性框图。
具体实施方式
现结合附图,对本发明的较佳实施例作详细说明。
本发明提出一种基于行程编码的任意结构元的快速区域腐蚀算法,其对图像进行行程编码,并采用行程编码的结构元对图像的感兴趣区域进行腐蚀。虽然没有针对像素点操作的腐蚀算法直观,但是其速度与内存占用却优于针对像素点操作的算法,而且脱离了图像,例如:宽、高,与区域形状的限制。本发明算法适用的技术领域包括,但不限于:图像处理Blob分析时去除干扰,例如:感兴趣区域毛刺;与膨胀算法组合成开闭操作及求区域几何特征参数等。
本发明算法大致包括:对输入图像进行行程编码;以及用行程编码的结构元对编码后的感兴趣区域进行腐蚀。
关于对输入图像进行行程编码。不同灰度值的像素点组合在一起构成了图像,由于像素点灰度值的不同使得图像呈现出不同的图案,图像处理中常需要对图像进行分割以获得感兴趣的区域。现有算法中感兴趣区域通常直接用像素点表示,例如:开源库OpenCV的ROI,像素点表示感兴趣区域存在的一个弊端是内存占用大。以8位深度的灰度图来说,若一片感兴趣区域含30万个像素点,则其内存占用量MemoryUsage=300000bytes,约为292KB,若采用行程编码方式,内存占用量可能低至3KB,二者相差近100倍,可见行程编码图像对减少程序资源的占用是有效的。
行程编码可分为行行程与列行程两种,行行程结构包含行程所在行号Row、行程起始列Cb与行程终止列Ce;列行程包含行程所在列号Col、行程起始行Rb与行程终止行Re。
本发明的行程编码是基于行行程实现的。感兴趣区域的每一行中连续像素点组成的一段区域称为一个行程。唯一标示一个行程需提供行号,起始列与终止列。一个行程内包含的像素的点数没有限制。若一个行程的每个分量用两个字节表示,则一个行程占6个字节。每一片感兴趣区域由有限个行程组成。每一行也可能包含若干个行程。参见图1,图1为本发明的行程编码的示意图。作为一个例举,图1示出了一个像素101,两个行程103、105以及感兴趣区域107。
参见图2,图2为本发明的行程编码的流程图。感兴趣区域的行程编码过程具体包括以下步骤:
S201、图像分割获得感兴趣区域。即,通过阈值分割等图像分割方法获得感兴趣区域。
S202、申请内存。即,在计算设备中开辟一片内存用以保存行程。
S203、对感兴趣区域行程编码。即,从感兴趣区域最小行最小列像素点开始依次取行号Row、起始列Cb与终止列Ce,获得第一个行程并保存在开辟的内存中;逐行逐列将整个感兴趣区域编码为行程表示。
S204、判断前述步骤S202开辟的内存是否足够,够的话,转步骤S206,不够的话,转步骤S205。
S205、重新申请内存则需重新开辟一片大内存并将原有数据复制至此段内存中,释放原有内存。
S206、编码完成结束编码。
经过上述步骤后,感兴趣区域被编码为行程表示方式,并且所有行程按照行顺序依次保存,每行的所有行程又严格按照列顺序保存。
关于用行程编码的结构元对编码后的感兴趣区域进行腐蚀。参见图3,图3为本发明的结构元的示意图。结构元选取时需定义结构元的原点301(即为结构元的重心)。腐蚀算法采用的是将此结构元的像素点相对于原点301镜像后的结果。设结构元为B,镜像后的结果为感兴趣区域为A。直观理解腐蚀指的是在整个图像区域内平移结构元所有包含于感兴趣区域A的结构元原点位置z的集合即为腐蚀结果,数学表达式为第一公式:若感兴趣区域A所在图像含有m个像素点,结构元B含n个像素点,则算法的复杂度为Ο(mn)。
本发明在此巧妙地做一次变换:采用结构元B腐蚀感兴趣区域A还可表示为结构元所有像素点相对于其原点的向量对感兴趣区域A的平移结果的交集,数学表达式为第二公式:其中,向量如图3中的箭头所示。
若将像素点用行程替代,每个行程302的所有像素点平移向量可分解为一个行向量与两个列向量的集合。因为每一行中的向量存在重合,如向量与重合了部分,它们共同作用的结果与最大向量单独作用的结果相同,因此对于某一行程302而言,只需计算行程302的起始点与终止点向量对感兴趣区域A平移的交集即可。由此可知,不管某一行程含有多少个像素点,它最终只需计算两个像素点对腐蚀算法的影响,因此第二公式相较于第一公式的算法复杂度得到降低,在结构元B较大的情况尤为突出。
此外,由于感兴趣区域A也为行程表示,平移一个行程的计算量相当于平移1.5个像素点计算量。但一个行程可表示成百上千个像素点,因此第一公式所表示的算法复杂度得到进一步降低。以矩形结构元为例,假设:结构元的行数为RB、列数为CB,共n个像素点;感兴趣区域A的行数为RA、列数为CA,共m个像素点;则第一公式的复杂度为Ο(mn),采用第二公式的复杂度为Ο(3RARB),通常3RARB远小于mn,由此可见,本发明算法复杂度大大降低,时间消耗可以减少很多。
参见图4,图4为本发明算法的流程示意图。本发明算法大致包括以下步骤:S401、对目标图像进行图像分割,获得感兴趣区域。首先,选取一适当的阈值,然后遍历目标图像中所有像素点,满足阈值要求的则为感兴趣区域像素点,最后将所有感兴趣区域的像素点标记并保存即形成感兴趣区域。
S402、对感兴趣区域进行行程编码。以感兴趣区域最小行最小列为第一个行程的起始点,依次提取连续的像素点片段为一个行程,直至完成整个感兴趣区域的编码,编码步骤参见图1与图2。
S403、用结构元对感兴趣区域进行腐蚀。本发明算法可根据实际应用的需要,选取任意结构元对感兴趣区域进行腐蚀。若选取方形结构元,腐蚀结果将变得棱角清晰;若选取圆形结构元,则会使感兴趣区域边角变得圆润。
参见图5,图5为本发明对感兴趣区域进行腐蚀步骤的流程示意图。本发明的腐蚀过程具体包括:
S501、求结构元的单个行程对感兴趣区域的腐蚀结果。具体有,对结构元B的每个行程进行向量分解,求出行方向向量与两个最大列方向向量,如图3所示的一个行向量与两个列向量其中,行向量决定了感兴趣区域A的所有行程的行Row,两个列向量决定了感兴趣区域A的所有行程的起始列Cb与终止列Ce。参见图6,图6为图3所示结构元中行程作用示意图。其中,在背景600下,原始区域的标识为601,列向量使感兴趣区域A左移后区域的标识为603,列向量使感兴趣区域A右移后区域的标识为602,平移后的交集即为单个行程的列方向腐蚀结果的标识为604。新的起始列Cb与终止列Ce为如图6中交集部分604所示。结合行向量对感兴趣区域A的作用,即可得到结构元B的单个行程腐蚀结果。
上述单个行程腐蚀的数学表达式为:
Cb'=Cb-vcl;Ce'=Ce-vcr;Row'=Row+vr。
S502、重复执行上述步骤S501,直至得到结构元B所有行程对感兴趣区域A的腐蚀结果。
S503、将步骤S502得到的所有结果求交集,即为最终腐蚀结果。参见图7,图7为采用本发明算法用图3所示的结构元进行腐蚀的结果示意图。作为一个示例,图7示意出了在背景700下的原始区域701和腐蚀后结果702。
参见图8,图8为本发明装置的示意性框图。作为在一种例举,该装置800包括:第一模块801,用于对输入图像进行行程编码;以及第二模块802,用于用行程编码的结构元对编码后的感兴趣区域进行腐蚀。
该第一模块801实现的功能具体包括:图像分割获得感兴趣区域;以及对感兴趣区域行程编码。
该第二模块802实现的功能包括:将采用结构元腐蚀感兴趣区域表示为结构元所有行程相对于其原点的向量对感兴趣区域的平移结果的交集。具体而言,该第二模块802具体实现的功能包括:求结构元的单个行程对感兴趣区域的腐蚀结果;直至得到该结构元所有行程对感兴趣区域的腐蚀结果;对所有的腐蚀结果求交集。
可以理解的是,上述的两个模块801和802既可以对应于处理器上运行的程序的两个软件模块,也可以对应于专门构建的两个硬件模块。
本发明的有益效果包括:结构元与感兴趣区域采用行程编码后,算法内存占用少,特别适用于对资源有一定限制的嵌入式平台;图像经行程编码后表示图像的最小单位为行程,每个行程可包含的像素点数无限制,因此感兴趣区域的行程数必然比像素点数目少,与遍历像素点的算法相比遍历行程则变得简单,能够有效地降低内存占用,并缩短耗时;另外,采用行程编码后,对感兴趣区域的操作脱离了图像的宽度与高度的限制,直接保存任意形状任意大小的感兴趣区域,无数据冗余,适用性更广。
应当理解的是,以上实施例仅用以说明本发明的技术方案,而非对其限制,对本领域技术人员来说,可以对上述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改和替换,都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种基于行程编码的任意结构元的快速区域腐蚀算法,其特征在于,包括:对输入图像进行行程编码;以及用行程编码的结构元对编码后的感兴趣区域进行腐蚀。
2.根据权利要求1所述的算法,其特征在于:所述的对输入图像进行行程编码,具体包括:图像分割获得感兴趣区域;以及对感兴趣区域行程编码。
3.根据权利要求1所述的算法,其特征在于:所述的用结构元对编码后的感兴趣区域进行腐蚀,包括:将采用结构元腐蚀感兴趣区域表示为结构元所有行程相对于其原点的向量对感兴趣区域的平移结果的交集。
4.根据权利要求3所述的算法,其特征在于:所述的选择结构元对编码后的感兴趣区域进行腐蚀,具体包括:求结构元的单个行程对感兴趣区域的腐蚀结果;直至得到该结构元所有行程对感兴趣区域的腐蚀结果;对所有的腐蚀结果求交集。
5.根据权利要求2所述的算法,其特征在于:所述的结构元的原点是指结构元的重心。
6.一种基于行程编码的任意结构元的快速区域腐蚀装置,其特征在于:包括:第一模块,用于对输入图像进行行程编码;以及第二模块,用于用行程编码的结构元对编码后的感兴趣区域进行腐蚀。
7.根据权利要求6所述的装置,其特征在于:所述的第一模块实现的功能具体包括:图像分割获得感兴趣区域;以及对感兴趣区域行程编码。
8.根据权利要求6所述的装置,其特征在于:所述的第二模块实现的功能包括:将采用结构元腐蚀感兴趣区域表示为结构元所有行程相对于其原点的向量对感兴趣区域的平移结果的交集。
9.根据权利要求8所述的装置,其特征在于:所述的第二模块具体实现的功能包括:求结构元的单个行程对感兴趣区域的腐蚀结果;直至得到该结构元所有行程对感兴趣区域的腐蚀结果;对所有的腐蚀结果求交集。
10.根据权利要求8所述的装置,其特征在于:所述的结构元的原点是指结构元的重心。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611033311.3A CN106600655A (zh) | 2016-11-15 | 2016-11-15 | 基于行程编码的任意结构元的快速区域腐蚀算法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611033311.3A CN106600655A (zh) | 2016-11-15 | 2016-11-15 | 基于行程编码的任意结构元的快速区域腐蚀算法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106600655A true CN106600655A (zh) | 2017-04-26 |
Family
ID=58592598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611033311.3A Pending CN106600655A (zh) | 2016-11-15 | 2016-11-15 | 基于行程编码的任意结构元的快速区域腐蚀算法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106600655A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106875453A (zh) * | 2016-12-30 | 2017-06-20 | 昂纳自动化技术(深圳)有限公司 | 基于行程编码的快速区域腐蚀算法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5594815A (en) * | 1992-10-19 | 1997-01-14 | Fast; Bruce B. | OCR image preprocessing method for image enhancement of scanned documents |
CN101825581A (zh) * | 2010-04-16 | 2010-09-08 | 广东工业大学 | 一种基于模型的pcb缺陷检测方法 |
CN101976340A (zh) * | 2010-10-13 | 2011-02-16 | 重庆大学 | 基于压缩域的车牌定位方法 |
CN102129698A (zh) * | 2011-03-08 | 2011-07-20 | 华中科技大学 | 一种基于感兴趣区域的图像编码方法 |
CN105046632A (zh) * | 2015-06-29 | 2015-11-11 | 湖南大学 | 时空高效的二值图像二元逻辑运算方法 |
CN105469026A (zh) * | 2014-09-30 | 2016-04-06 | 柯尼卡美能达美国研究所有限公司 | 针对文档图像的水平和垂直线检测和移除 |
-
2016
- 2016-11-15 CN CN201611033311.3A patent/CN106600655A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5594815A (en) * | 1992-10-19 | 1997-01-14 | Fast; Bruce B. | OCR image preprocessing method for image enhancement of scanned documents |
CN101825581A (zh) * | 2010-04-16 | 2010-09-08 | 广东工业大学 | 一种基于模型的pcb缺陷检测方法 |
CN101976340A (zh) * | 2010-10-13 | 2011-02-16 | 重庆大学 | 基于压缩域的车牌定位方法 |
CN102129698A (zh) * | 2011-03-08 | 2011-07-20 | 华中科技大学 | 一种基于感兴趣区域的图像编码方法 |
CN105469026A (zh) * | 2014-09-30 | 2016-04-06 | 柯尼卡美能达美国研究所有限公司 | 针对文档图像的水平和垂直线检测和移除 |
CN105046632A (zh) * | 2015-06-29 | 2015-11-11 | 湖南大学 | 时空高效的二值图像二元逻辑运算方法 |
Non-Patent Citations (4)
Title |
---|
WOOK-JOONG KIM等: "Fast Algorithms for Binary Dilation and Erosion Using Run-Length Encoding", 《ETRI期刊》 * |
徐勇等: "基于游程和扩展指数哥伦布编码的任意形状感兴趣区域图像编码", 《光学精密工程》 * |
郭江鸿: "基于感兴趣区域的图像分割方法", 《嘉应学院学报(自然科学)》 * |
闵永智等: "轨道视觉检测系统中行程编码的应用研究", 《计算机工程与应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106875453A (zh) * | 2016-12-30 | 2017-06-20 | 昂纳自动化技术(深圳)有限公司 | 基于行程编码的快速区域腐蚀算法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102640237B1 (ko) | 이미지 프로세싱 방법, 장치, 전자 디바이스 및 컴퓨터 판독가능 저장 매체 | |
CN109934110B (zh) | 一种河道附近违建房屋识别方法 | |
CN111275034B (zh) | 从图像中提取文本区域的方法、装置、设备和存储介质 | |
AU2022202669B2 (en) | Method for extracting oil storage tank based on high-spatial resolution remote sensing image | |
CN110659664A (zh) | 一种基于ssd的高精度识别小物体的方法 | |
CN109886159B (zh) | 一种非限定条件下的人脸检测方法 | |
CN112884758B (zh) | 一种基于风格迁移方法的缺陷绝缘子样本生成方法及系统 | |
CN110399760A (zh) | 一种批量二维码定位方法、装置、电子设备及存储介质 | |
CN103455816B (zh) | 一种笔画宽度提取方法、装置及一种文字识别方法、系统 | |
CN115272691A (zh) | 一种钢筋绑扎状态检测模型的训练方法、识别方法及设备 | |
CN111414938A (zh) | 一种板式换热器内气泡的目标检测方法 | |
CN106600655A (zh) | 基于行程编码的任意结构元的快速区域腐蚀算法及装置 | |
CN111179289B (zh) | 一种适用于网页长图宽图的图像分割方法 | |
CN107871315A (zh) | 一种视频图像运动检测方法和装置 | |
CN117011658A (zh) | 图像处理方法、装置、设备、存储介质和计算机程序产品 | |
CN106709892A (zh) | 基于行程编码的任意结构元的快速区域膨胀算法及装置 | |
CN112861860B (zh) | 一种基于上下边界提取的自然场景下文字检测方法 | |
CN116977683A (zh) | 对象识别方法、装置、计算机设备、存储介质和程序产品 | |
CN115578721A (zh) | 一种基于注意力特征融合的街景文本实时检测方法 | |
CN112801102B (zh) | 一种道面块状病害检测的方法 | |
Chlumský et al. | Improved corners with multi‐channel signed distance fields | |
CN106875453A (zh) | 基于行程编码的快速区域腐蚀算法及装置 | |
CN111291763A (zh) | 大理石板图像分割方法、装置设备及存储介质 | |
CN106846424A (zh) | 基于行程编码的快速区域膨胀算法及装置 | |
Chen et al. | A propagation matting method based on the local sampling and knn classification with adaptive feature space |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200611 Address after: 518000 floor 1, building 604, building 3, workshop 1, auna group, Zhukeng community, Longtian street, Pingshan District, Shenzhen City, Guangdong Province Applicant after: Ona Industrial Technology (Shenzhen) Co., Ltd Address before: Cui Jing Road Shenzhen City, Guangdong province 518000 Pingshan New District No. 35 Applicant before: O-NET AUTOMATION TECHNOLOGY (SHENZHEN) Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170426 |
|
RJ01 | Rejection of invention patent application after publication |