一种基于广度优先搜索的二值图标记方法与流程

文档序号:21699852发布日期:2020-07-31 23:03阅读:435来源:国知局
一种基于广度优先搜索的二值图标记方法与流程

本发明属于图像分析处理领域的研究,涉及的是一种基于广度优先搜索的二值图标记方法,可以有效提升图像处理中二值图标记的速度。



背景技术:

二值图连通区域标记是指将一幅彩色图像经过灰度图像处理后,对其中属于同一区块的像素给定同一标记,不属于同一区块的像素附上不同标记的处理过程。连通区域标记是计算机视觉领域、图像处理领域最常见的预处理操作,对其他图像处理过程如图像分割、边缘检测、特征提取等,具有很好的铺垫作用。因此,选择一种高效的二值图连通区域标记算法,能提升图像处理某些过程的速度。

而广度优先搜索搜索是人工智能中一项非常普遍使用的算法策略,能够解决许许多多的常见问题,在某些情况下我们很难想到高效的解法时,搜索往往是可选的唯一选择。因此,搜索算法是利用计算机的高性能来有目的的穷举一个问题的部分或所有的可能情况,首先选取种子点,再采取基于广度优先搜索的方法进行二值图标记,是解决该类问题的一种高效方法。



技术实现要素:

为了克服现有技术的不足,本发明提供一种基于深度优先搜索的二值图标记方法,连通区域标记是计算机视觉领域、图像处理领域最常见的预处理操作。提升连通区域标的算法可以提升图像处理的速度。

本发明解决其技术问题所采用的技术方案是:

一种基于广度优先搜索的二值图标记方法,所述方法包括以下步骤:

步骤1:基于区域生长的连通域标记,基于区域生长是采取广度优先搜索算法的基本操作,过程如下:

步骤1.1:确定区域生长的种子点

首先对彩色图像进行灰度处理后,得到二值图像,预设图像宽度为m个像素、图像长度为n个像素,所以选取种子点需要遍历的像素共有mn个,用符号hmn(m=0,…,m-1;n=0,…,n-1)表示其中的某个像素点,操作如下:

像素值为0是像素点呈黑色,因此首先剔除hmn=0的非种子节点,初步将hmn=255的图像像素默认为种子节点,因为是二值图像,直接将hmn≠0的像素点默认为区域生长的种子点;

步骤2:采取广度优先搜索算法进行标记,过程如下:

步骤2.1:对像素间的连通性进行定义:

先对连通性进行定义,假设gij为对应图像像素(i,j)处的区域生长点,定义gij的如4邻域连通结构如下:

定义gij的如8邻域连通结构如下:

步骤2.2:构建映射表

假设gij、gpq分别为对应图像像素,(i,j)和(p,q)的两个图像像素位置,为gij的第k,k∈{0,...,m-1}个种子节点,那么其中k,k∈{0,…,n-1}是gij为种子节点下同名标记下的区域像素点,如构建映射关系表,用一个队列存储同名标记区域,用一个堆栈存储种子节点;

选取种子节点,分别按照4邻域连通结构规则以及8邻域连通结构规则进行连通域判断;

步骤2.3:基于广度优先搜索算法进行标记

针对4邻域连通结构规则以及8邻域连通结构规则分别构建种子节点区域生长的map模型,4邻域连通结构规则下全局遍历像素时,首先剔除非种子节点,遇到种子节点时,首先对种子节点的4邻域采取广度优先搜索,生成同名标记区域;其次再对新生成的孩子节点同样进行4邻域的广度优先搜索,直至无法遍历到空白像素点,并将同名标记区域进行计数,将已经遍历区域放入新的队列;

同理,8邻域连通结构规则下全局遍历像素时,首先剔除非种子节点,遇到种子节点时,首先对种子节点的8邻域采取广度优先搜索,生成同名标记区域;其次再对新生成的孩子节点同样进行8邻域的广度优先搜索,直至无法遍历到空白像素点,并将同名标记区域进行计数,将已经遍历区域放入新的队列;

步骤3:标记效果评估标准,为了对标记效果进行评估,作了如下定义:

提取同名标记准确率precision定义为:

precision=np/min(nr,nu)(3)

其中,np表示准确标记的同名区域数,nr、nu分别表示参考图像和二值图像连通标记后的同名标记区块数。

本发明的有益效果主要表现在:连通区域标记是计算机视觉领域、图像处理领域最常见的预处理操作。针对这个问题,我们提出了一种基于广度优先搜索的二值图标记算法,改进的连通区域标的算法可以大大提升图像处理的速度。

附图说明

图1为本发明选择的连通域结构图,(a)是4邻域关系图,(b)是8邻域关系图。

图2为本发明中广度优先遍历的流程图。

图3为本发明基于广度优先搜索的二值图标记方法的流程图。

具体实施方式

下面结合附图对本发明作进一步描述。

参照图1~图3,一种基于广度优先搜索的二值图标记方法,所述方法包括以下步骤:

步骤1:基于区域生长的连通域标记,基于区域生长是采取广度优先搜索算法的基本操作,过程如下:

步骤1.1:确定区域生长的种子点

首先对彩色图像进行灰度处理后,得到二值图像,选取了一些特征比较明显可分的彩色图像进行处理,预设图像宽度为m个像素、图像长度为n个像素,所以选取种子点需要遍历的像素共有mn个,用符号hmn(m=0,…,m-1;n=0,…,n-1)表示其中的某个像素点,操作如下:

像素值为0是像素点呈黑色,因此首先剔除hmn=0的非种子节点。初步将hmn=255的图像像素默认为种子节点,因为是二值图像,为了避免不必要的计算,可直接将hmn≠0的像素点默认为区域生长的种子点;

步骤2:采取广度优先搜索算法进行标记,过程如下:

步骤2.1:对像素间的连通性进行定义:

为了提高二值图连通域标记的鉴别力,进一步选择了两种连通域确定性的计算方法,先对连通性进行定义:

假设gij为对应图像像素(i,j)处的区域生长点,定义gij的如4邻域连通结构如下:

定义gij的如8邻域连通结构如下:

为了更直观的表示,我们绘制了两种连通域关系的示意图,如图1。

步骤2.2:构建映射表

假设gij、gpq分别为对应图像像素,(i,j)和(p,q)的两个图像像素位置,为gij的第k,k∈{0,...,m-1}个种子节点,那么其中k,k∈{0,...,n-1}是gij为种子节点下同名标记下的区域像素点,构建映射关系表,用一个队列存储同名标记区域,用一个堆栈存储种子节点。

选取种子节点,分别按照4邻域连通结构规则以及8邻域连通结构规则进行连通域判断。

步骤2.3:基于广度优先搜索算法进行标记

广度优先搜索是人工智能中一种经典的搜索策略,在种子节点区域生长时采用了广度优先搜索的策略,不同于一般的广度优先搜索,根据二值图标记的特性,构建了新的广度优先搜索模型,算法原理如图2所示。

具体是针对4邻域连通结构规则以及8邻域连通结构规则分别构建种子节点区域生长的map模型,4邻域连通结构规则下全局遍历像素时,首先剔除非种子节点,遇到种子节点时,首先对种子节点的4邻域采取广度优先搜索,生成同名标记区域;其次再对新生成的孩子节点同样进行4邻域的广度优先搜索,直至无法遍历到空白像素点,并将同名标记区域进行计数,将已经遍历区域放入新的队列;

同理,8邻域连通结构规则下全局遍历像素时,首先剔除非种子节点,遇到种子节点时,首先对种子节点的8邻域采取广度优先搜索,生成同名标记区域;其次再对新生成的孩子节点同样进行8邻域的广度优先搜索,直至无法遍历到空白像素点,并将同名标记区域进行计数,将已经遍历区域放入新的队列。

步骤3:标记效果评估标准,为了对标记效果进行评估,作了如下定义:

提取同名标记准确率precision定义为:

precision=np/min(nr,nu)(3)

其中,np表示准确标记的同名区域数,nr、nu分别表示参考图像和二值图像连通标记后的同名标记区块数。

连通区域标记是计算机视觉领域、图像处理领域最常见的预处理操作。针对这个问题,我们提出了一种基于广度优先搜索的二值图标记算法,改进的连通区域标的算法可以大大提升图像处理的速度。整体流程在图3中有详细展示。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1