连通域分析算法

连通域分析算法

连通区域分析算法

【摘要】

本文主要介绍在CVPR和图像处理领域中较为常用的一种图像区域(Blob)提取的方法——连通性分析法(连通区域标记法)。文中介绍了一种常见的连通性分析的算法:Seed-Filling种子填充,并给出了其基于OpenCV的C++实现代码。

一、连通区域分析

连通区域(Connected Component)一般是指图像中具有相同像素值且位置相邻的前景像素点组成的图像区域(Region,Blob)。连通区域分析(Connected Component Analysis,Connected Component Labeling)是指将图像中的各个连通区域找出并标记。

连通区域分析是一种在CVPR和图像分析处理的众多应用领域中较为常用和基本的方法。例如:OCR识别中字符分割提取(车牌识别、文本识别、字幕识别等)、视觉跟踪中的运动前景目标分割与提取(行人入侵检测、遗留物体检测、基于视觉的车辆检测与跟踪等)、医学图像处理(感兴趣目标区域提取)、等等。也就是说,在需要将前景目标提取出来以便后续进行处理的应用场景中都能够用到连通区域分析方法,通常连通区域分析处理的对象是一张二值化后的图像。

二、连通区域分析的算法

从连通区域的定义可以知道,一个连通区域是由具有相同像素值的相邻像素组成像素集合,因此,我们就可以通过这两个条件在图像中寻找连通区域,对于找到的每个连通区域,我们赋予其一个唯一的标识(Label),以区别其他连通区域。

连通区域分析有基本的算法,也有其改进算法,本文介绍其中的一种常见算法:

l Seed-Filling种子填充法;

Note:

a、这里的扫描指的是按行或按列访问以便图像的所有像素,本文算法采用的是按行扫描方式;

b、图像记为B,为二值图像:前景像素(pixel value = 1),背景像素(pixel value = 0)

c、label从2开始计数;

d、像素相邻关系:4-领域、8-领域,本文算法采用8-邻域;

Seed Filling(种子填充法)

种子填充方法来源于计算机图形学,常用于对某个图形进行填充。思路:选取一个前景像素点作为种子,然后根据连通区域的两个基本条件(像素值相同、位置相邻)将与种子相邻的前景像素合并到同一个像素集合中,最后得到的该像素集合则为一个连通区域。

下面给出基于种子填充法的连通区域分析方法:

(1)扫描图像,直到当前像素点B(x,y) == 1:

a、将B(x,y)作为种子(像素位置),并赋予其一个label,然后将该种子相邻的所有前景像素都压入栈中;

b、弹出栈顶像素,赋予其相同的label,然后再将与该栈顶像素相邻的所有前景像素都压入栈中;

c、重复b步骤,直到栈为空;

此时,便找到了图像B中的一个连通区域,该区域内的像素值被标记为label;

(2)重复第(1)步,直到扫描结束;

扫描结束后,就可以得到图像B中所有的连通区域;

动态图参看:https://img-blog.csdn.net/20130825153228078

拓展:其原理与机器学习中的一种聚类算法DBSCAN在原理上相似。

---------------------------------------------------------------------------------------------------------------------------

附另外一种常用的连通域分析算法:two pass-算法:

在Two-pass连通域标记中,

第一次标记(first pass)时从左向右,从上向下扫描,会将各个有效像素置一个label值,判断规则如下(以4邻域为例):

当该像素的左邻像素和上邻像素为无效值时,给该像素置一个新的label值,label ++;

当该像素的左邻像素或者上邻像素有一个为有效值时,将有效值像素的label赋给该像素的label值;

当该像素的左邻像素和上邻像素都为有效值时,选取其中较小的label值赋给该像素的label值。

第二次标记进行label整合,把归属于同一连通域内的几个label值,赋予其中较小的label。

动态图参看:https://img-blog.csdn.net/20130825153036000

相关推荐

私募投资基金备案业务办理
365bet资讯

私募投资基金备案业务办理

📅 07-20 👁️ 6503
姜夔《暗香》原文、译文、赏析
365batapp

姜夔《暗香》原文、译文、赏析

📅 07-07 👁️ 4287
禆益的意思
365batapp

禆益的意思

📅 06-30 👁️ 9511
王自如近照曝光!从格力离职后,更瘦更精神了
365网站打不开了

王自如近照曝光!从格力离职后,更瘦更精神了

📅 06-29 👁️ 6343
CF秒杀游戏攻略:如何快速抢购,秒杀技巧大公开!
下架快半年,这款“游戏”为何不敢回归?创作者都想跑了