欢迎来到天天文库
浏览记录
ID:34776005
大小:444.25 KB
页数:13页
时间:2019-03-10
《机器视觉之二值图像算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、机器视觉之二值图像算法从背景中分离出物体是一个困难的问题,在此将不讨论这个问题。这里假设物体可以从背景中分离,并且使用某一谓词,可以对图像中属于物体的点进行标记。因此,问题就变为如何将一幅图像中所有被标记的点组合成物体图像。这里还假设物体点在空间上是非常接近的。利用空间接近概念可以严格定义,利用此定义研究的算法可以把空间上非常接近的点聚合在一起,构成图像的一个成分(component)。下面首先引进一些定义,然后讨论有关算法。3.5.1定义1.近邻在数字图像中,一个象素在空间上可能非常接近其它一些象素。在用网格表示的数字图像中,一个象素与其它四个象素有公共边
2、界,并与另外四个象素共享顶角。如果两个象素有公共边界,则称它们互为4邻点(4-neighbors).同样,如果两个象素至少共享一个顶角,则称它们互为8邻点。例如,位于[i,j]的象素有四个4邻点:[i-1,j],[i+1,j],[i,j-1],[i,j+1]。它的8邻点包括这四个4邻点,再加上[i-1,j-1],[i+1,j-1」,[i-1,j+1],[i+1,j+1]。一个象素被认为与它的4邻点是4连通(4-conneeted)关系,与它的8邻点是8连通关系(如图3.7)。2.路径3.前景图像中值为1的全部象素的集合称为前景(foreground),用S表
3、示。4.连通性5.连通成分一个象素集合,如果集合内的每一个象素与集合内其它象素连通,则称该集合为一个连通成分(connectedcomponent)。6.背景S(S的补集)中包含图像边界点的所有连通成份的集合称为背景(background)。S中所有其它元称为洞。考虑下面的两个图像。首先看左图中有几个洞和几个物体。如果从前景和背景来考虑4连通,有四个大小为一个象素的物体和一个洞。如果考虑8连通,那么有个物体而没有洞。直观地,在这两种情况下出现了不确定性情况。右图为另一个类似的不确定问题。其中如果1是连通的,那么0就应该是不连通的。为了避免这种难以处理的情况,
4、对物体和背景应使用不同的连通。如果对S使用8连通,那么对S就应用4连通。7.边界S的边界(boundary)是S中与中有4连通关系的象素集合。边界通常记为S'。8.内部内部(interior)是S中不属于它的边界的象素集合.S的内部等于S-S"。9.包围如果从S中任意一点到图像边界的4路径必须与区域T相交,则区域T包围(surrounds)区域S(或S在T内)。图3.9即为一幅简单二值图像和它的边界、内部、包围示意图。3.5.2连通成分标记在一幅图像中找出连通成分是机器视觉中最常见的运算之一。连通区域内的点构成表示物体的候选区域。机器视觉中的大多数物体都有表
5、面,显然,物体表面点投影到图像平面上会形成空间上密集的点集。这里应该指出,连通成分算法常常会在值视觉系统中形成瓶颈效应,原因是连通成分运算是一个全局性的运算,这种算法在本质上是序贯的。如果图像中仅有一个物体,那么找连通成分就没有必要;如果图像中有许多物体,且需要求出物体的特性与位置,则必须确定连通成分。连通标记算法可以找到图像中的所有连通成分,并对同连通成分中的所有点分配同一标记。图3.10表示的是一幅图像和已标记的连通成分。在很多应用中,要求在标记连通成分的同时算出连通成分的特征,如尺寸、位置、方向和外接矩形。下面介绍两种连通成分标记算法:递归算法和序惯算
6、法[Jain1995]。1.递归算法递归算法在串行处理器上的计算效率是很低的,因此,这一算法主要用于并行机上。算法3.1连通成分递归算法①扫描图像,找到没有标记的1点,给它分配一个新的标记L;②递归分配标记L给1点的邻点;③如果不存在没标记的点,则停止;④返回第①步。2.序贯算法序惯算法通常要求对图像进行二次处理。由于这一算法一次仅运算图像的两行,因此当图像以文件形式存贮且空间不允许把整幅图像载入内存时也能使用这一算法。这一算法(见算法3.2)可以查看某一点的邻点,并且可以给象素值为1的邻点分配个已经使用过的标记。如果图像的邻点有两种不同的标记,则叫一个等价
7、表(equivalenttable)来记录所有的等价标记。在第二次处理过程中,使用这一等价表來给某连通成分中所有象素点分配唯一的标记。本算法从左到右、从上到下扫描图像时,算法仅能查询到某象素点的4邻点中的两个邻点,即上点与左点。设算法已经查到了该象素的这两个邻点,此时出现三种情况:①如果这两个邻点中没有一点为1,则该象素需要一个新的标记。②如果这两个邻点中只有一点为1,且分配了标记为L,那么该象素点的标记也为L。③如果这两个邻点都为1,且已分配了标记L,则该象素点的标记还是L;但是当邻点被分配了不同标记M与N,则这两个标记被用于了同一组元,应该把它们合并。在
8、这种下,应把其中一个标记(一般选用最小的那个标记)分
此文档下载收益归作者所有