基于投影的图像连通域单次扫描方法及装置制造方法及图纸

技术编号:14641197 阅读:58 留言:0更新日期:2017-02-15 15:34
本发明专利技术提出了一种基于投影的图像连通域单次扫描方法及装置。该方法包括:步骤一:初始化扫描第一行,将此行的连通段进行标号,输出到标号行缓存,并将标号状态数据输入数据表队列缓存;步骤二:将上一行的标号投影到当前行,进行连通段的连通判断、分析和计算;步骤三:在当前像素点位置,进行当前标号是否有效的第一判断,以及上一行投影到当前行的标号是否有效的第二判断;并根据判断结果返回步骤二,或执行不同的步骤四、步骤五和步骤六。本发明专利技术不需要存储整幅的图像,大大节省了存储空间,并且只需进行单次扫描就能将连通的区域合并,极大的提高了算法在硬件中的运行效率,并能达到实时处理的效果。

【技术实现步骤摘要】

本专利技术主要涉及车载智能辅助驾驶和工业视觉表面检测领域,具体地说,涉及车载智能辅助驾驶视觉传感器和工业视觉表面检测相机硬件化的一种基于投影的图像连通域单次扫描方法及装置
技术介绍
在车载智能辅助驾驶和工业视觉表面检测领域,都需要实现目标物跟踪检测算法,而连通区域标记CCL(ConnetedComponentLabeling)是该算法的核心技术。常见的CCL包括Two-Pass(两次扫描)和One-Pass(单次扫描)的方法。Two-Pass方法常见于基于PC进行图像处理的软件实现算法中,对处理的实时性有一定的影响,具体是指先扫描一遍图像找到连通区域并标号,第二次扫描利用并查集算法合并不同的标号区域。One-Pass方法有“基于区域生长”的方法和“基于轮廓跟踪”的方法。“基于区域生长”的方法是指基于与扫描尺寸一致的标记矩阵、缓存队列以及标记计数机制,扫描一遍图像,基于八邻域像素点按照连通长度进行区域标记,最终得到标记矩阵和连通区域的个数。该方法只需要扫描一次图像,但需要标记矩阵,从而占用较大的存储区域,且没有很好的考虑线扫描方式获取的连续图像情况。“基于轮廓跟踪”是指从种子点p开始对内轮廓和外轮廓进行搜寻,对轮廓进行跟踪标记,最终找到连通区域。该方法也只需要扫描一次图像,但进行轮廓搜寻过程中同样需要占用较大的存储空间,且采用硬件加速的方式比较困难。由于算法处理实时性和有限存储的要求,如何找到能有效采用硬件加速实现流水化连通区域算法,已成为本领域技术人员亟待解决的技术问题。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种基于投影的图像连通域单次扫描方法,只需要对图像进行单次扫描就能完成连通域的标记和计算,将单个像素的所有处理步骤在一个时钟周期内完成,非常适合采用硬件环境的流水线实现。本专利技术基于投影的图像连通域单次扫描方法,包括如下步骤:步骤一:初始化扫描第一行,将此行的连通段进行标号,输出到标号行缓存,并将标号状态数据输入数据表队列缓存;步骤二:将上一行的标号投影到当前行,进行连通段的连通判断、分析和计算;步骤三:在当前像素点位置,进行当前标号是否有效的第一判断,以及上一行投影到当前行的标号是否有效的第二判断;若第一判断为无效,且第二判断也为无效,则返回步骤二;若第一判断为无效,第二判断为有效,则执行步骤四;若第一判断为有效,且第二判断也为有效,则执行步骤五;若第一判断为有效,第二判断为无效,则执行步骤六;步骤四:取出上一行投影到当前行标号的数据表队列数据,将其作为当前标号,并扫描下一个像素;步骤五:取出当前标号的数据表队列数据和上一行投影到当前行标号的数据表队列数据,将两个标号所代表的连通段进行合并,将合并后的状态数据存储到当前标号指示的数据表队列,并将上一行投影的标号状态设置为无效状态;步骤六:判断当前标号的连通状态是否结束,若结束则将当前标号置为无效,重新开始新的像素点扫描;若没有结束则保持当前标号的状态数据,扫描下一个像素。进一步地,所述步骤二还包括:如果所述图像的最后一行已经被扫描,则结束流程;所述步骤四、步骤五和步骤六中,在结束当前行的扫描处理后,返回步骤二。进一步地,所述步骤二具体包括:将上一行的标号投影到当前行,采用标号行缓存存储上一行的标号投影,根据投影标号从数据表队列中读出标号数据状态。进一步地,在所述步骤五和步骤六中,还包括:将设置为无效状态的标号,写入用于循环利用的标号空闲循环队列中。进一步地,存储标号状态数据的数据表队列数据,与标号空闲循环队列设置的大小一致。进一步地,所述数据表队列根据标号来存储和读取连通段的状态数据,根据图像的分辨率大小和连通长度来预设队列的长度。进一步地,在标号循环队列中,由空闲标号的读出指针和失效标号的写回指针控制整个队列的运转;当连通段需要建立新的标号时,从读出指针读出空闲标号,而当连通段连通状态结束时或合并时,则将失效的标号从写回指针写回到循环队列中,用于循环利用。进一步地,在所述步骤六中,当x方向连通长度达到设定要求时,当前标号的连通状态设置为结束;当x方向和y方向连通长度同时达到设定要求时,当前标号的连通状态设置为结束,并根据当前标号取出数据表中连通区域状态数据作为该连通段的最终状态数据。进一步地,该方法还包括以下步骤:设定x方向和y方向的连通长度,控制连通域的连通范围。本专利技术的另一个目的,还提供一种基于投影的图像连通域单次扫描装置,该装置包括:初始化模块,用于初始化扫描第一行,将此行的连通段进行标号,输出到标号行缓存,并将标号状态数据输入数据表队列缓存;投影模块,用于将上一行的标号投影到当前行,进行连通段的连通判断、分析和计算;判断模块,用于在当前像素点位置,进行当前标号是否有效的第一判断,以及上一行投影到当前行的标号是否有效的第二判断;若第一判断为无效,且第二判断也为无效,则触发投影模块;若第一判断为无效,第二判断为有效,则触发第一执行模块;若第一判断为有效,且第二判断也为有效,则触发第二执行模块;若第一判断为有效,第二判断为无效,则触发第三执行模块;第一执行模块,用于取出上一行投影到当前行标号的数据表队列数据,将其作为当前标号,并扫描下一个像素;第二执行模块,用于取出当前标号的数据表队列数据和上一行投影到当前行标号的数据表队列数据,将两个标号所代表的连通段进行合并,将合并后的状态数据存储到当前标号指示的数据表队列,并将上一行投影的标号状态设置为无效状态;第三执行模块,用于判断当前标号的连通状态是否结束,若结束则将当前标号置为无效,重新开始新的像素点扫描;若没有结束则保持当前标号的状态数据,扫描下一个像素。本专利技术基于投影的图像连通域单次扫描方法及装置,只需要单次扫描就能够完成图像的连通处理,并且不需要存储完整的图像,也不需要对图像进行随机访问;此外,本专利技术可通过设置x、y方向的连通长度,控制连通域的连通范围,而不仅仅只适应于4连通或8连通域(即连通长度为1的情况);而且,在硬件环境中,由于采用了投影技术,本专利技术非常适合采用流水线方式实现,达到实时处理的效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为专利技术实施例提供的单次扫描方法的标号判定方法示意图;图2为专利技术实施例提供的单次扫描连通方法的数据流图;图3为专利技术一实施例基于投影的图像连通域单次扫描方法的流程图;图4为本专利技术另一实施例基于投影的图像连通域单次扫描方法的流程图;图5a和图5b为专利技术实施例提供的扫描连通长度示意图;图6a和图6b为专利技术实施例提供的标号循环队列和数据表队列示意图;图7为专利技术实施例提供的扫描过程的示意图;图8为本专利技术一实施例基于投影的图像连通域单次扫描装置的结构框图。具体实施方式下面对本专利技术的具体实施方式作进一步的详细说明。对于所属
的技术人员而言,从对本专利技术的详细说明中,本专利技术的上述和其他目的、特征和优点将显而易见。本专利技术实现了一种可以在硬件环境中进行流水线设计运行的图像连通域单次扫描方法及装置。该方法及装置采用基于投影的技术,在本文档来自技高网
...
基于投影的图像连通域单次扫描方法及装置

【技术保护点】
一种基于投影的图像连通域单次扫描方法,其特征在于,包括如下步骤:步骤一:初始化扫描第一行,将此行的连通段进行标号,输出到标号行缓存,并将标号状态数据输入数据表队列缓存;步骤二:将上一行的标号投影到当前行,进行连通段的连通判断、分析和计算;步骤三:在当前像素点位置,进行当前标号是否有效的第一判断,以及上一行投影到当前行的标号是否有效的第二判断;若第一判断为无效,且第二判断也为无效,则返回步骤二;若第一判断为无效,第二判断为有效,则执行步骤四;若第一判断为有效,且第二判断也为有效,则执行步骤五;若第一判断为有效,第二判断为无效,则执行步骤六;步骤四:取出上一行投影到当前行标号的数据表队列数据,将其作为当前标号,并扫描下一个像素;步骤五:取出当前标号的数据表队列数据和上一行投影到当前行标号的数据表队列数据,将两个标号所代表的连通段进行合并,将合并后的状态数据存 储到当前标号指示的数据表队列,并将上一行投影的标号状态设置为无效状态;步骤六:判断当前标号的连通状态是否结束,若结束则将当前标号置为无效,重新开始新的像素点扫描;若没有结束则保持当前标号的状态数据,扫描下一个像素。

【技术特征摘要】
1.一种基于投影的图像连通域单次扫描方法,其特征在于,包括如下步骤:步骤一:初始化扫描第一行,将此行的连通段进行标号,输出到标号行缓存,并将标号状态数据输入数据表队列缓存;步骤二:将上一行的标号投影到当前行,进行连通段的连通判断、分析和计算;步骤三:在当前像素点位置,进行当前标号是否有效的第一判断,以及上一行投影到当前行的标号是否有效的第二判断;若第一判断为无效,且第二判断也为无效,则返回步骤二;若第一判断为无效,第二判断为有效,则执行步骤四;若第一判断为有效,且第二判断也为有效,则执行步骤五;若第一判断为有效,第二判断为无效,则执行步骤六;步骤四:取出上一行投影到当前行标号的数据表队列数据,将其作为当前标号,并扫描下一个像素;步骤五:取出当前标号的数据表队列数据和上一行投影到当前行标号的数据表队列数据,将两个标号所代表的连通段进行合并,将合并后的状态数据存储到当前标号指示的数据表队列,并将上一行投影的标号状态设置为无效状态;步骤六:判断当前标号的连通状态是否结束,若结束则将当前标号置为无效,重新开始新的像素点扫描;若没有结束则保持当前标号的状态数据,扫描下一个像素。2.根据权利要求1所述的基于投影的图像连通域单次扫描方法,其特征在于,所述步骤二还包括:如果所述图像的最后一行已经被扫描,则结束流程;所述步骤四、步骤五和步骤六中,在结束当前行的扫描处理后,返回步骤二。3.根据权利要求1所述的基于投影的图像连通域单次扫描方法,其特征在于,所述步骤二具体包括:将上一行的标号投影到当前行,采用标号行缓存存储上一行的标号投影,根据投影标号从数据表队列中读出标号数据状态。4.根据权利要求1所述的基于投影的图像连通域单次扫描方法,其特征在于,在所述步骤五和步骤六中,还包括:将设置为无效状态的标号,写入用于循环利用的标号空闲循环队列中。5.根据权利要求4所述的基于投影的图像连通域单次扫描方法,其特征在于,存储标号状态数据的数据表队列数据,与标号空闲循环队列设置的大小一致。6.根据权利要求5所述的基于投影的图像连通域单次扫描方法,其特征在于,所述数据表队列根据标号来存储和读取连通段的状态数据,根据图像的分辨...

【专利技术属性】
技术研发人员:王罡
申请(专利权)人:长沙麦斯森信息科技有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1