《Visual C++数字图像模式识别技术详解(第2版)》一3.4 形状特征-阿里云开发者社区

开发者社区> 华章出版社> 正文

《Visual C++数字图像模式识别技术详解(第2版)》一3.4 形状特征

简介: 本节书摘来自华章出版社《Visual C++数字图像模式识别技术详解(第2版)》一 书中的第3章,第3.4节,作者:冯伟兴 贺波 王臣业,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.4 形状特征

物体的形状特征也是物体的一个重要模式特征,本节将介绍对物体形状的描述及其计算方法。

3.4.1 多边形描述

一个图像区域边界可以用多边形来近似表示。对于一个闭合的曲线,当多边形的边数与边界中顶点数相等时,边界中的每对点都定义了多边形中的一个边,在这种情况下,以上近似是精确的。在实际应用场合中,多边形近似的目的就是要用边数最少的多边形来近似地描绘出图像边界的形状。但要实现上述近似并非是一件简单的事情。例如,用简单的迭代搜索算法来实现上述方法时,计算量是相当大的。然而,在图像边界描述要求不是很高时,采用一些具有中等复杂度的多边形近似技术进行图像边界描述还是很适用的。
有两种方法被应用于多边形近似,一种是合并方法;另一种是分裂方法。
1.合并方法的计算步骤
[1] 计算物体边界点;
[2] 沿着边界合并边界上的点,直到所有合并点的线性拟合(基于最小平方误差)的误差超过一个预先设定的阈值;
[3] 记录下该拟合直线的参数,误差置为零;
[4] 重复以上步骤。当这一过程结束时,相邻线段间的交点就构成了多边形的顶点,而整个边界点也被这些线段拟合。
但是,这一方法找到的顶点并不一定对应于边界的变形点(如边界的拐角等)。例如,如果我们跟踪了一条很长的直线,接着它拐了一个弯,那么,在误差超过给定的阈值前,很多位于拐角以后的点都被吸收了。为此,在合并过程结束后,需要结合分裂法进一步分析。
2.分裂方法的计算步骤
[1] 任取合并得到的一段边界;
[2] 计算被该段边界合并的边界点到该段边界的垂直距离;
[3] 如果有边界点到边界的距离超过一个预定的阈值,则以该点为中间顶点将边界分成两部分。
分裂法对于找出边界中比较显著的转折点来说是相当有效的。
对于一个闭合的边界,上述方法计算的起始点通常选择为边界上相距最远的两点。

3.4.2 曲线描述

在图像分析中,可用边界点拟合的曲线来描述物体的边界特征。曲线拟合是数值分析中重要的内容,通常使用最小均方误差准则来找出一定参数形式下的最佳拟合函数。具体选择什么参数形式与问题有关,通常采用多项式的形式特别是二次多项式的形式,而对于更为一般的情况也可采用样条函数形式。
对于有些边界可用一条曲线来描述,而有些边界却不能用一条曲线完成拟合,因此边界分段拟合是解决这个问题较常用的方法之一。

3.4.3 标记

标记(Signature)是边界的一维函数表达方式,它与边界的曲线拟合有所不同,其基本思想是把一个二维的边界用一个较容易的一维函数形式来描述。产生标记的方法很多,最简单的是先对给定的区域求出重心,然后把边界点与重心的距离作为角度的函数就得到一种标记。不管标记是怎么生成的,其主要的思想就是要把区域的表示退化成一个一维的函数,它比二维边界容易描述。如果对二维边界的形状感兴趣,通过这种方法就可把二维形状描述的问题转化为对一维波形进行分析的问题。
上面所述方法产生的标记不受区域平移的影响,但与区域的尺度变换和旋转(可等价为角度测量的起点变化)有关。尺度变换造成的影响是标记的幅度值发生变化,这个问题可用把最大幅度值归一化到单位值来解决。解决旋转影响可有多种方法,常用的一种方法是选离重心最远的点作为标记起点;另一种方法是求出边界主轴,以主轴上离重心最远的点作为标记起点。后一种方法考虑了边界上所有的点,所以计算量较大但也比较可靠。
从更广泛的意义上说,标记可由广义的投影产生。这里的投影可以是水平的、垂直的、对角线的、放射的和旋转的等。但需要注意的是投影不是一种能保持信息的变换,将二维平面上的区域边界变换为一维的曲线有可能丢失一些信息。标记方法较适用于对一些已知的特定物体图像的标记和识别。

3.4.4 矩形度

矩形度体现物体对其外接矩形的充满程度,反映一个物体矩形度的一个参数是矩形拟合因子。

    (3-21)

其中,S0是该物体的面积,而SMER是其最小外接矩形的曲积。R反映了一个物体对其的充满程度。对于矩形物体R取得最大值1,对于圆形物体R取值为,对于纤细、弯曲的物体R取值变小。矩形拟合因子的值为0~1。
另一个与形状有关的特征是长宽比:

    (3-22)

它是最小外接矩形的宽与长的比值。这个特征可以把较纤细的物体与方形或圆形物体区分开。
3.4.5 圆形度
圆形度是用来表示物体圆形程度的指标,有多种圆形度指标,最常用的圆形度指标之一如下:

    (3-23)

它是周长的平方与面积的比。这个特征对于圆形形状取最小值。物体形状越细长,其取值越大。
一个相关的圆形度指标是边界能量。假定一个物体的周长为P。在物体边界上任一点都有一个瞬时曲率半径,它是在该点与边界相切的圆的半径。设在点存在以下函数:

    (3-24)

则函数是P周期函数。可以用下式计算单位边界长度的平均能量:

    (3-25)

在面积相同的条件下,圆具有最小边界能量,即:

    (3-26)

这里R是该圆的半径。
第三个圆形度指标利用了从边界上的点到物体内部某点的平均距离。这个距离如下:

    (3-27)

式中,di是从具有N个点的物体中的第i个点到与其最近的边界点的距离。由此有相应的形状指标,其为:

    (3-28)

3.4.6 不变矩
在前述中介绍过距的概念,当时是从图像幅值特征分布角度来介绍的。但是当图像为二值图像时,可用矩来描述图像中一些区域的形状特征,则区域R的(i, j)阶如下:

    (3-29)

式中参加运算的点(x, y)都是区域R的内点或边界点。因此,区域的M00即是区域的像素点数。
由于用上式描述区域的形状对区域的平移、旋转、尺度变换不具有不变性,因此需要对该矩进行变化处理。首先将坐标点移到区域的形心,重新计算区域的中心矩,即:

    (3-30)

其中,为区域R的形心,由下式求得:

    (3-31)

中心矩虽然对区域平移具有不变性,但对旋转和尺度变化依然敏感,可通过对进行归一化得到尺度的不变性。归一化中心矩定义如下:

    (3-32)

由上式可求出一组归一化的中心矩,同时将中心归一化进行组合,可获得如下7个不变的矩组合:

screenshot

当区域进行平移、旋转、尺度变换时,这些不变矩是不变的。不变矩具备了良好的形状特征,已经用于印刷体字符的识别、飞机形状区分、景物匹配和染色体分析中。但它们并不能确保在任意情况下都具有这些不变性质,这是由于图像量化对矩不变性特征计算还是有影响的。通常离散几何变换(包括旋转和比例变换(尺度))不是一一对应的,因为图像经过采样和量化后导致了图像灰度层次和离散化图像边缘的不精确。只有当区域大小和采样间隔的比趋于无穷大时,才能消除量化对矩不变性特征计算的影响。合理设置采样间隔可使计算误差减小。

3.4.7 偏心率

偏心率E也叫伸长度。它在一定程度上描述了区域的紧凑性。偏心率E有多种计算公式,其中一种常用的简单方法是区域主轴(长轴)长度(A)与辅轴(短轴)长度(B)的比值。另一种方法是计算惯性主轴比,它基于边界线上的点或整个区域来计算质量。根据中心矩计算任意点集偏心率的近似计算公式如下:
screenshot

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

华章出版社

官方博客
官网链接