`

图像检索:基于形状特征的算法

 
阅读更多

本文节选自《基于形状特征的图像检索算法研究》

 

基于形状特征的图像检索算法相对于颜色特征和纹理特征来说,使用的稍微少一些。摘录了其中的几种算法,不做深入剖析了。

 

形状通常与图像中的特定目标对象有关,是人们的视觉系统对目标的最初认识,有一定的语义信息,被认为是比颜色特征和纹理特征更高一层的特征。形状描述的准确与否是决定图像检索算法优劣的重要因素,一个好的形状描述符应具备独特性、完备性、几何不变性、灵活性以及抽象性。形状的描述符大体可以分为两大类:第一类是描述形状目标区域边界轮廓的像素集合,称为基于轮廓的形状描述符;第二类称为基于区域的形状描述符,是对形状目标区域内所有像素集合的描述;具体分类如图2-2所示。

2.3.1 基于轮廓的形状描述符

1.链码

Freeman于1961年将链码的概念引入到图像检索中,并推广其定义提出了广义链码。链码已经成为形状描述符中最常用的方法之一。Freeman通过链码提取图像的关键点产生了一种相对于平移、旋转与尺度不变的表示方法,并总结了与链码有关的各种算法,确定了链码在第二代图像编码中的地位,使其得到了广泛的应用。

链码是通过一个给定的方向上的单位尺寸的直线片段的序列来描述一条曲线或一个二维形状的边界。根据连通定义的不同可分为4方向链码(0到3)和8方向链码(0到8),如图2-3所示。

链码可以有效的描述轮廓形状而且可以大大减少边界所需要的数据量,但是链码对起始点要求很高,对噪声和边界线段的缺陷也很敏感,而且链码本身不具有旋转不变性。

2.傅里叶描述子

傅立叶描述子是物体形状边界的傅立叶变换系数,它是物体边界信号频域分析的结果。假设一个物体的轮廓是由一系列坐标的像素组成,通过边界点的坐标可以获得形状的复坐标函数、曲率函数以及质心距离三种表达方式。应用傅里叶变换于这三种函数将得到一系列复数形式的系数,这些系数是直接与边界曲线的形状有关的,其中,高频分量表示形状的细节,而低频分量则表示形状的总体。

傅立叶描述子仅用一些低频分量就可以近似的描述轮廓形状,具有易于计算、容易归一化、匹配简单及易获得全局和局部特征等许多优点;而它的主要缺点是对轮廓上感兴趣的部分,如有无遮挡,由于映射到全部系数中而看不到了。对于轮廓有较锐的变化或被区分对象仅有微小差别的识别问题来说,这种方法就不理想了。

 

3.小波描述符

小波变换在时域和频域上有突出信号局部特征和进行多分辨率分析的能力,因此被广泛应用于形状描述中。小波描述符定量描述边界的基础是将边界坐标看作一个复数序列,并对该复数序列做小波变换。

小波描述子对轮廓的畸变具有较强的鲁棒性,而且,可以在较少系数的情况下获取较高的轮廓描述精度,并支持多层次的分析,通过多层次的分析,达到轮廓由粗糙到精细的多个层次的描述。但是小波变换的最大缺点是过于依赖目标轮廓的起始点,也就是说,同一目标的两个轮廓的小波描述符可能因为起始点的不同而有很大的不同。

 

4.曲率尺度空间描述符

曲率尺度空间描述符是将经典CSS(Curvature scale space,曲率尺度空间)算法应用到形状描述符中,由F.Mokhtarian和Mackworth首先提出。其具体方法是沿着形状的轮廓,用不同带宽的Gaussian核来平滑轮廓,然后计算采样点的曲率并找出曲率过零点。重复上述平滑过程直到找不到曲率过零点,最后根据高斯函数标准差及其对应的曲率过零点建立一个CSS二值图像作为描述该形状的特征。

基于曲率/凹凸度的形状描述法是目前比较新的研究方法,吸引了很多学者的注意,文献[36]在经典CSS描述法的基础上提出了一种使用所有采样点曲率与形状描述的方法。文献[37]提出了使用形状的凹凸度表示形状特征的多尺度空间描述方法。这种以曲率或凸凹度为特征的形状描述符,在多尺度空间逐层描述形状轮廓的变化规律,与人类感知形状的机理类似, 可以细致地区分形状边界的差异。曲率/凸凹度是作为几何变化的描述,具有平移和缩放不变性,而且由于多尺度空间的构建同时也是逐次滤波的过程,因此,对噪声也具有较好的鲁棒性。总的来说,基于曲率/凸凹度的形状描述符能够很好的描述轮廓的形状,但是作为一个局部特性,它不能反应形状的内部结构及层次关系,不适用于多层次的复杂形状描述。

 

5.多边形逼近

多边形逼近方法的基本思想是通过与对象区域近似的多边形的顶点来表示该区域。这个近似的多边形则是由顶点连接顶点的直线段序列组成。如果多边形的线段数与边界上的点数相等,即每对相邻点定义多边形的一个边,则多边形可以完全准确的表达边界。

多边形逼近最常用的方法是分裂和合并法,在这个方法中,曲线首先分裂成由几个线段来表示,直到误差达到可以接受。被分裂的线段在合并后的逼近误差范围内仍可以继续合并。文献[39]提出的用直线段的长度和相邻直线段的夹角作为形状描述的特征是在原始多边形逼近的方法上做出的改进。Pavlidis使用平方和误差函数的偏导数来引导牛顿法搜索最佳断点。Bengtsson和Eklundh提出了一种层次化的多边形逼近方法。Chung等开发了一种基于Hopfield神经网络的形状的多边形逼近方法。

利用多边形逼近进行形状描述具有抗干扰性好以及表达形状所需要的数据量小等优点,然而多边形逼近对尺度变化不具有自适应性,而且逼近的精度没有固定的标准,很容易造成精度过大或过小,会影响形状描述(精度过小,会有很多的顶点,得到的多边形过于复杂;精度过大,容易丢失边界中的细节信息)。

 

2.3.2 基于区域的形状描述符

 

1.几何不变矩

Hu于1962年提出了图像识别的不变矩理论,并且首次提出了基于代数不变量的矩不变量。所谓的不变矩是图像的一种统计特征,主要是利用图像灰度分布的各阶矩来描述图像灰度分布的特性。

 

2.正交矩

正交矩相对几何矩有两个优点:首先,正交矩具有最小的信息冗余,用很小的数据集合就可以描述图像;其次正交矩是可逆的,可以用正交矩的运算重建图像。

目前常用的正交矩有:Legendre Moments, Zernike Moments以及pseudo-ZernikeMoments等。在区域形状的矩描述符中,Zernike Moments的性能是最优的。

 

3.通用傅里叶描述符

通用傅里叶描述符(Generic Fourier Descriptor)采用了修正的平面极坐标傅里叶变换,其基本思想是:首先对图像进行采样,将采样的信息重新绘制在直角坐标系下,然后对改直角坐标系下的图像做傅里叶变换。

 

4.角半径变换(Angular RadialTransformation ART)

ART是另一个MPEG-7推荐的基于矩的图像描述符,是定义在极坐标下的一个单位圆内的二维复变换,ART的主要思路是通过使用一组半径变换系数,描述单个连通区域或者不连通区域,对旋转和噪声具有鲁棒性。

 

 

示例:形状描述符的构造

对基于轮廓的图像检索技术来说,目标的形状可以通过轮廓的提取或图像分割的方法获得,如轮廓跟踪。为了形成具有较强鲁棒性的形状描述符,本章首先对跟踪后的轮廓进行平滑操作,得到一个光滑的曲线;然后详细介绍了均匀采样点和尖点以及特征向量集的定义;最后统计特征向量集的距离和方向得出极坐标直方图,再根据这个直方图来描述目标形状。

 

3.2.1 曲线平滑

 

3.2.2 特征点提取

定义 1 把轮廓线上局部曲率极大值的点定义为尖点。

定义 2 把轮廓线作定数等分采样得到的点定义为均匀采样点。

定义 3 把尖点和均匀采样点的集合称为特征点。

尖点是形状识别中的重要特征,它能够很好地描述轮廓的形状。但是其它轮廓点同样也含有丰富的信息,对描述轮廓的形状也具有很重要的作用,因此本文在提取尖点的同时又提取了均匀采样点作为描述轮廓形状的特征点。

3.2.2.1 均匀采样点的提取

在提取均匀采样前,首先要确定轮廓起始点(xq, yq)。本文将轮廓线上曲率最大的像素点确定为均匀采样的起始点。如果轮廓有不止一个曲率最大的像素点,则比较曲率最大的像素点的相邻像素点的曲率,然后取相邻像素点的曲率也较大的像素点所对应的曲率最大点作为起轮廓始点,如果相邻像素点的曲率也相同则再比较相邻点的相邻点曲率,直到找出较大的相邻像素点为止。

 

3.2.2.2 尖点的提取

3.2.3 特征向量集

把由特征点向轮廓线质心所引向量定义为特征向量。所有特征向量集合称为特征向量集。

 

分享到:
评论

相关推荐

    基于内容的图像检索技术——基于颜色、形状、纹理三种方式.zip

    1、基于颜色的图像检索:用的是二分K-means算法实现的 2、基于纹理的图像检索:用的是灰度共生矩阵实现的 3、基于形状的图像检索:用的是形状不变矩法实现的 语言:python 工具:VS code 数据库:没用数据库,图像...

    基于内容(颜色和形状特征)的图像检索

    综上所述,"基于内容(颜色和形状特征)的图像检索"是一个涉及图像处理、特征提取、相似度计算等多个方面的重要技术。通过对颜色和形状的有效利用,我们可以构建出能够适应多种应用场景的图像检索系统。

    图像检索图库(形状特征明显)

    总之,"图像检索图库(形状特征明显)"是一个专注于形状特征的图像数据集,对于研究和开发基于形状的图像检索算法至关重要。通过对排气管图像的分析,可以深入理解形状特征提取方法,提升图像识别的准确性和效率。

    matlab环境下的,基于图像颜色特征的图像检索源代码

    本项目是基于MATLAB环境实现的,利用图像的颜色特征进行图像检索。MATLAB是一种强大的数值计算和编程平台,非常适合进行图像处理和分析。 首先,我们来看"image_search1.fig"文件,这通常是一个MATLAB图形用户界面...

    【图像检索】基于Hu不变矩图像检索含Matlab源码.zip

    5. 图像检索:基于相似度分数对数据库图像排序,并返回最相似的图像。 6. 可视化结果:可能包括绘制相似度热力图或展示检索结果的代码。 压缩包中的"【图像检索】基于Hu不变矩图像检索含Matlab源码.pdf"文件很可能...

    【图像检索】基于综合特征的图像检索含Matlab源码.zip

    【图像检索】基于综合特征的图像检索是一种在大量图像数据中快速找到与查询图像相似或匹配的图像的技术。这项技术广泛应用于数字图书馆、社交媒体、安全监控等多个领域。本压缩包包含了一个具体的图像检索系统实现,...

    论文研究-基于形状不变矩的图像检索算法的研究.pdf

    实验部分的结果表明,使用基于Hu形状不变矩的图像检索算法IMS提取的形状特征向量能够在很大程度上满足对平移、旋转和尺度变化的不变性要求,从而有效地支持基于形状的图像检索。而且,使用这种方法可以应用于不同...

    基于形状特征图像检索技术

    ### 基于形状特征图像检索技术的知识点详解 #### 一、引言 随着信息技术的发展,基于内容的图像检索(Content-Based Image Retrieval, CBIR)成为了一个热门研究领域。相较于传统的文本检索方法,CBIR能够更加有效地...

    基于内容的图像检索

    在计算机视觉领域,基于内容的图像检索(Content-Based Image Retrieval,CBIR)是一种重要...通过学习和理解这个压缩包中的内容,我们可以深入了解CBIR的工作原理,优化特征提取算法,并应用于实际的图像检索应用中。

    基于颜色特征、基于形状特征或者基于颜色和形状综合特征图像检索

    在图像检索领域,基于颜色特征、形状特征以及它们的综合应用是重要的技术手段。这些方法在数字图像处理、计算机视觉和模式识别等IT领域中扮演着核心角色,尤其是在大规模图像数据库的管理和搜索方面。 首先,**基于...

    基于颜色特征、基于形状特征或者基于颜色,形状综合特征图像检索

    在图像检索领域,基于颜色特征、形状特征以及它们的综合应用是重要的技术手段。这些方法主要目的是通过分析图像的颜色和形状信息,有效地找到与查询图像相似的图像,从而实现高效、准确的图像搜索。 首先,**基于...

    一个Java实现的基于内容的图像检索工具包

    综上所述,这个基于内容的图像检索工具包运用了多种图像特征提取技术,结合 Java 语言的优势,为图像搜索提供了有效的解决方案。理解并实践这个工具包的原理和实现,不仅可以提升图像处理技能,也能为开发自己的图像...

    基于三元组卷积神经网络的图像检索.pdf

    知识点2:基于内容的图像检索 基于内容的图像检索是一种图像检索方法,该方法使用图像的视觉特征来检索图像。在基于内容的图像检索中,图像的视觉特征可以是颜色、纹理、形状等。 知识点3:卷积神经网络 卷积神经...

    基于特征融合的图像检索方法

    基于特征融合的图像检索方法 本文主要介绍了基于特征融合的图像检索方法,旨在提高图像检索的准确性和效率。特征提取是图像检索的重要步骤,特征提取的好坏对检索结果至关重要。本文融合颜色和纹理特征来表示图像,...

    基于形状与颜色特征融合的图像检索程序

    本项目"基于形状与颜色特征融合的图像检索程序"聚焦于利用形状和颜色这两个基本的视觉特性来实现高效的图像检索。 形状特征是描述图像中物体轮廓或边界的重要线索,它反映了物体的结构和几何属性。在图像检索中,...

    基于颜色、形状的图像检索

    《基于形状图像检索系统的设计与实现.pdf》、《基于内容的图像检索技术.pdf》、《基于颜色与形状图像检索的研究.pdf》和《基于颜色和形状特征的图像检索方法.pdf》这些文献深入探讨了颜色和形状特征在图像检索中的...

    matlab检索相似图像 - 基于颜色、纹理和形状特征相似性分数融合的遗传算法图像检索

    基于颜色、纹理和形状特征相似性分数融合的遗传算法图像检索 本资源摘要信息主要介绍了一种基于颜色、纹理和形状特征相似性分数融合的遗传算法图像检索方法。这种方法通过融合颜色、纹理和形状特征的相似性分数来...

    图像检索——形状特征提取

    本篇文章将深入探讨“图像检索中的形状特征提取”,特别是使用HU不变矩的方法。 形状特征提取的目标是捕获图像中的几何形状信息,使得形状相似的物体在特征空间中的距离较近。在众多形状特征中,HU不变矩是一种常用...

Global site tag (gtag.js) - Google Analytics