基于MATLAB内容的图像检索系统

2023-11-21 18:50

本文主要是介绍基于MATLAB内容的图像检索系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基于MATLAB内容的图像检索系统

摘要

关键词:图像检索,颜色矩,不变矩,傅立叶描述子

1 课题意义

基于内容的图像检索(CBIR)是一个非常热门的研究领域。本文在对颜色特征、形状特征和纹理特征的研究基础上,将三种特征结合在一起,实现了可以自定义权重的综合特征的图像检索系统,并在

v2-a2eaa231e77ab71138ea9a3b9412811b_b.jpg

平台上实现了这一系统。

图像特征的提取和相似性度量是CBIR的两个关键技术。对于颜色特征,本文采用HSV空间中的颜色矩表示颜色特征;对于形状特征,本文采用图像的

v2-a43bbcd32feba53012fb5f9f38128276_b.jpg

不变矩作为形状特征;对于纹理特征,为减少计算量,本文首先对图像进行预分割,提取分割后区域基于傅立叶描述子的纹理特征作为整个图像的纹理特征。在相似性度量方面,采用曼哈顿距离作为度量标准,得到各个特征的相似度向量。

本文在

v2-a2eaa231e77ab71138ea9a3b9412811b_b.jpg

平台上实现了这一图像检索系统,实现自定义权重以及综合特征下的图像检索,并在655副图像的大数据库中随机抽取24副图像进行检索实验,得到了较好的效果。

2 基于内容的图像检索

2.1 基于内容的图像检索的概念

基于内容的图像检索根据图像、图像的内容语义以及上下文联系进行查找,以图像语义特征为线索从图像数据库中检出具有相似特性的其它图像。因为图像的规模一般要大于纯粹的文本信息,因此,基于内容的图像检索在检索的速度和效率上要求更高。 

2.2 CBIR的研究现状

在上世纪90年代,随着计算机和网络技术得到广泛应用之后,基于内容的图像检索技术取才得了较大的突破,人们也逐渐地将对基于内容的图像检索技术的研究成果应用到实际的工作和生活中,而对这种技术的需求的日益增长也驱动人们对基于内容的图像检索的技术向更高的层次进行研究。

从当前的CBIR的研究的热点和未来的发展趋势的来看,可大致将其研究分为三层[3]:

1. 最低层次的检索,在这个层次主要是利用全局特征(例如:颜色、纹理、形状等底层特征)去描述图像的内容,进行检索,这也是最直接的层面;

2.较高层次的检索,该层次主要是利用图像对象语义来描述图像的内容,进行检索,这种技术是底层特征的基础上加入了图像语义特征(例如:对象与对象之间的空间关系等);

3.最高层次的检索,该层次是利用图像概念级语义来描述图像的内容,进行检索,该技术是建立在图像对象语义特征提取的基础上加入了图像的概念级语义(例如:用户对图像的理解、情感等高层语义)。

尽管对CBIR技术的研究已经经过了很长时间,但目前较为常用的CBIR技术基本上都是基于底层特征的检索。现有的CBIR底层特征的检索系统主要包括基于颜色的图像检索系统、基于纹理的图像检索系统和基于形状的图像检索系统,下面就对上述三种检索系统进行一下简单的概述。

2.2.1 基于颜色特征的图像检索

颜色是描述图像内容最直接的视觉特性。颜色特征是一种定义比较明确和简单的特征,人的视觉对它的敏感度最大,人眼可以很直观地利用颜色特征区分出两幅图像的不同之处,因此颜色特征成为在CBIR研究中最早被用到的图像特征。

颜色特征的表示方法主要包括颜色索引、颜色矩等。颜色索引是一种以颜色直方图和直方图相交算法为基础的颜色特征表示方法,该方法在上述基础上,首先,将颜色空间划分为多个固定的子空间;其次,统计每个固定的子空间中像素的数目;最后,用直方图相交算法计算图像之间的相似度,按照相似度的大小对检索结果进行输出。

该方法除了具有颜色特征通用的优点外,还有个突出优点是计算简单。但也存在两个不足之处:一是它没有办法反映出颜色的空间分布信息,例如两幅图像中对象空间分布的位置不同时,这两幅图像可能具有几乎完全一致的颜色直方图。二是量化方法的不一样也可能对检索结果也可能产生很大的影响,比如原来两幅图像的颜色直方图很相似,但是由于量化过大,使得某些颜色消失,最终得到的两幅图像的颜色直方图大相径庭,这样造成了图像检索的准确度大大折扣。

由于颜色直方图在空间信息方面的缺失,后来又出现了颜色矩的概念来表示颜色特征,该方法先将图像按照一定的规则进行分块,然后对每一块提取颜色直方图。随后,出现了按物体对象的空间分割法,将图像按照图像中对象的分布进行分割,然后提取每个对象的颜色特征和对象之间的空间信息。上述两种方法都是在颜色整体特征的信息中加入了图像的空间分布信息,但是这两种方法存在的共同的缺陷是对于任意图像,如何对图像进行合适的分割。

除了上述颜色特征的表示方法外,还有颜色相关向量法和颜色聚类法,这两种方法也在颜色的特征中添加了空间信息,在实际的应用中不常见,还处于研究阶段。

2.2.2 基于纹理特征的图像检索

和颜色一样,纹理是也是图像中一种不可或缺的视觉特性。纹理没有统一的定义,一般可以用图像的某种局部性质来对纹理下定义,纹理描述了局部区域中像素之间的关系,同时也描述了图像中的空间分布信息。对纹理可以通过粗糙度、方向性、对比度和规则性四个方面来描述。应用较为广泛的基于纹理特征的图像检索技术包括采用共生矩阵,和基于数学模型如小波变换的纹理特征检索。

2.2.3 基于形状特征的图像检索

形状描述的是图像中各种物体的外在特征,所以基于形状的检索系统中最关键的技术是如何表示图像中物体的特有的外在特征和如何对提取出的形状特征进行特征匹配,目前常用的描述形状特征的方法主要包括:矩描述法、边界描述法和几何参数法。

以前表示形状特征的常用方法有链码、曲线、傅里叶描述子和B样条曲线等[6]。后来又出现了小波描述逼近法和超二次曲线法。

形状特征的提取需要人工对图像进行分割、提取目标,就目前的发展状况,还没有实现对形状特征的自动提取。而人眼对颜色和纹理特征比较敏感,提取方法也相对比较简单,所以在目前的检索系统中使用最多的底层特征是颜色和纹理特征。

3.基于综合特征的CBIR

为了结合各个底层特征的优点,本文同时提取图像的颜色、形状和纹理三种特征结合为一个综合特征,并实现结合权重的自定义。

3.1 颜色特征

在颜色特征方面,为减小运算量,采用颜色矩作为检索的特征,分别提取被检测图像和数据库中图像的一、二、三阶矩。由于HSV颜色空间的色调、饱和度、明度与人眼对颜色的主观认识相对比较符合,与其他颜色空间相比HSV空间能更好的反映人类对颜色的感知,所以本文采用HSV颜色空间下的颜色矩作为颜色特征。使用曼哈顿距离进行颜色矩相似度度量。

颜色信息集中在图像颜色的低阶矩中,主要是每种颜色分量的一阶矩(均值)、二阶矩(方差)、三阶矩(斜度),可以有效地表示图像中的颜色分布。三个颜色矩的数学定义如下:


v2-2f6554ef94b2f6f295b69b1dccce4081_b.jpg



v2-a925f4af3f23e5c3c4150af8532c4dc4_b.jpg



v2-3724af5cca31b965a99c93dc74ee75f3_b.jpg


其中

v2-23aba6e9679501f1fa4b22a964d1844c_b.jpg

表示像素

v2-c4a0926ca73614f5409b02f8e5ffc23b_b.jpg

的颜色值为

v2-1cdc3f50d1c92d009cfd1eff25b56177_b.jpg

的概率,

v2-8d0061558c4e8d68e66c184e3679dbc8_b.jpg

为图像中像素点的个数。

若用

v2-b9489020c3a0e53fcd6ad97a1b55066e_b.jpg

表示两幅图像,则它们的矩的距离公式为:


v2-391e160eedc45a403ab38f4e9a3c5049_b.jpg


其中,

v2-58b0f19d19a81aad7507c6f8b2d8c118_b.jpg

是指定的加权洗漱,一般要设置为

v2-4480456328da2294d8d5f0631f35a2d5_b.jpg

v2-f746571461f71a891c11165d139888cc_b.jpg

,提高了平均颜色的比重。提取到待匹配图和数据库图的颜色矩后,利用曼哈顿特征进行度量,即可得到颜色特征的相似性向量。

3.2 形状特征

本文利用形状不变矩作为图像检索的形状特征。利用目标区域所占的区域的矩作为形状描述参数是常用的形状描述方法。

v2-25511a61c88f18ab411c76093c4e57fd_b.jpg

矩不变量由于具有不随图像的位置、大小和方向而变化的特点,对于提取图像中的形态特征来说,是一个非常有效的工具。区域

v2-7e6b18a74649c92f7d1cb8af74a841dc_b.jpg

v2-21e20d57d56046d235e0e26e204ae5a8_b.jpg

阶矩定义为:


v2-09335a9a1938d2ad68f96c54d9982f54_b.jpg

v2-97a2a3274ed4dd572707ea3c1ba12228_b.jpg


其相应的中心距定义为:


v2-549fae769f33d6b8a861e25d4afaa2f8_b.jpg

v2-97a2a3274ed4dd572707ea3c1ba12228_b.jpg


其中,

v2-94170e504da6eeebd632b5598875e0d5_b.jpg

v2-8085043de2ecb51824b701e668ef13f4_b.jpg

, 即重心坐标。

v2-fe846685a0dbb5edd33a335f4449f8f2_b.jpg

是目标区域灰度质心。

v2-7e6b18a74649c92f7d1cb8af74a841dc_b.jpg

的归一化

v2-21e20d57d56046d235e0e26e204ae5a8_b.jpg

阶中心矩定义为:


v2-53fb2de469c5d1db0d02e43fbdd62a9d_b.jpg

v2-97a2a3274ed4dd572707ea3c1ba12228_b.jpg


其中


v2-ce5b5b3a45febcfe2221f835b8cf8849_b.jpg

v2-91ff8c972aba74507f33e8d8c35f13c9_b.jpg


下列7个二维不变

v2-695eb9b590ce7bf1f4a381d4ec1c18ed_b.jpg

矩是由归一化的二阶和三阶中心矩得到的。它们对平移、旋转、镜面以及尺度变换具有不变性:


v2-1444434664ba5c1da85eddf53f37eaa1_b.jpg



v2-befe84e980a0c181b612725f2650a720_b.jpg



v2-8cb3e7d4a92266d7f2049c2a4d1ce9b0_b.jpg



v2-bb0c1f55c1730d7c598cfca9a78d01ee_b.jpg



v2-f2731558263219eb4d0254c544d0448a_b.jpg



v2-b3e8afce4711fc98e86768a7741d657a_b.jpg



v2-d8c386030edcc2476144ee61818a1f40_b.jpg


此组不变矩不受平移、旋转以及大小比例改变的影响。

提取待匹配图片和数据库图片的

v2-c2ad5143305b0e11ccbcb32c1edd8046_b.jpg

不变矩特征后,再利用曼哈顿距离进行相似性度量,即可得到形状特征的相似性向量。

3.3 纹理特征

由于图像检索的数据库一般比较大,如果直接对整幅图的纹理特征进行提取和分析,运算量将会非常大。所以本文先对图像进行分割,然后再对分割后的图像进行基于傅立叶描述子的纹理检测和纹理特征提取,以减少运算量。

3.3.1 图像预分割

为了减小运算量,突出图像的主要部分,我们在进行纹理特征提取之前对图像进行预分割。通常认为,图像特征主要体现在大连通域处,我们基于这个原理进行分割。首先将RGB图像二值化,进行形态学处理包括开运算和闭运算后,进行连通域分析,取最大的连通域作为目标区域进行纹理特征的检测。

3.3.2 傅里叶子

在离散情况下,设边界上的点组成的有序点集可表示为一个复数序列

v2-a693ecb40db05a853760a43cd5213568_b.jpg

对其进行离散傅里叶变换为:


v2-22e62867188e493fdb375792a300acb0_b.jpg


傅立叶描述子

v2-cae836d34daede499562164bce0ca4a8_b.jpg

的反变换为:


v2-3a7abc0ab806c1f6c44155299880b841_b.jpg


从上式可以看出离散傅立叶变换是一个可逆的线性变换,所以在这个过程中信息既没有增加也没有减少。

傅立叶描述子将目标放在频域进行分析,得到的目标频谱中低频分量代表物体的宏观形状属性,而高频分量则可以代表物体的细节特征,某些情况下即纹理特征。

3.3.3 纹理特征提取与检索

我们取图像中最大连通区域作为傅立叶描述子处理的目标区域,但是由于二值化后连通域内部的点已经没有频率分析的意义。所以,我们提取最大连通域的边界,只对边界的有序复坐标做傅立叶描述子分析,得到图像的纹理特征。


v2-36c8d8721d77ebb9e3522551878ba97c_b.jpg

v2-5da7b2434192f6d92f451eedfd322355_b.jpg


v2-6714f8fe7652e1e040c991aa02da456b_b.jpg

v2-f0e44343b02cd5f7901d3351a511080e_b.jpg

图1 图像预分割边界纹理

分别对图1的边界进行长度为256点的傅立叶描述后,得到其频谱图如图2。


v2-775d5db83de980a05710c14c7ae774a5_b.jpg

v2-c38fa30f21118a3ab0531aeee767b6f5_b.jpg

图2 两纹理图傅立叶描述子比较

可以看出代表形状的低频分量占据了很大的能量,利用这样的特征向量在进行相似度度量时,纹理特征所占的比重会远小于形状特征,而且直观上看,两者的特征很难进行区分。所以我们去除频谱中的低频分量(去掉前15个点),只保留频谱中的高频分量,得到如下图所示的频谱图:


v2-71f235337e45d533e6b10ecfbba09ba8_b.jpg

v2-d72d4f6e9d9715a8d9b6d04601532de4_b.jpg

图3两纹理图傅立叶描述子高频分量部分

可见两者的高频纹理特征具有较大的区别性。

同样利用度量,即得到纹理特征的相似性向量。

3.4 综合特征

我们综合颜色特征、形状特征、纹理特征三种特征进行检索,设三种特征的相似性向量分别为:

v2-0ee278f64f4f513490418eb849e8fc80_b.jpg

v2-151777b6ab798cec8157943dd6381af4_b.jpg

v2-71bdc390ec547e29742e7e7aec4181a3_b.jpg

,且在检索时分别赋予权重

v2-70821102a6aa3ab293a4a399c8b598fd_b.jpg

v2-56d2fc563048dadaf3feee241d4d8fde_b.jpg

v2-f141190773d3676b5a7f44e434518d8e_b.jpg

,综合相似性向量

v2-86e9ec48a14e8ea1cac3eb431f2b0144_b.jpg

为:


v2-f6540be588af8de010e036377893cd4e_b.jpg


利用

v2-3ef99a8b105d7fa9c1a831061c3cd71c_b.jpg

作为相似度的判据,即可得到图像相似度检索的结果。

4 图像检索系统设计

本文在Matlab平台上设计了基于三种特征综合的图像检索系统,设计界面如图4所示。


v2-f60b6eecdcf38ef3f3da1bcd7ee9928e_b.jpg

图4 检索系统界面

由于采用了三种特征进行综合的图像检索,运算时间较长,所以在655副图像的大数据库中随机抽取了24副图片作为小数据库,存放在程序目录下的Pic文件夹中,

4.1 检索示例

以下是几个在此系统上进行图像检索的示例。


v2-20ab2345eb8063421f795a6dce9e39e4_b.jpg

图15 检索结果示意图1


5 参考文献

[1] 王向阳. 一种基于彩色边缘综合特征的图像检索算法[J]. 模式识别与人工智能, 2010

[2] 纪敏.MPEG-7颜色、纹理和形状描述子[J].计算机工程与应用,2004,40(26):44-47

[3] 李向阳.基于内容的图像检索技术与系统[J].计算机研究与发展2001,3

[4] Rafael C.Gonzalez 阮秋琦译. 数字图像处理(MATLAB版)[M]. 电子工业出版社,2005

[5] Dunlop M.D..Multimedia Information for Retrieval, Ph.D. Thesis. Computing Science Department, University of Glasgow, Report 199l

[6] Ellen M. Voorhees, Yuan-Wang Hou."Vector Expansion in a Large Collection”, First Text REtrieval Conference [TREC-1], 1993.

[7] Frisse M.E.Searching for information in a hypertext medical handbook. Communications of the ACM, 3 I[7], pp.880-886.

[8] R.Price, T.S Chua, and S.Al-Hawamdeh, Applying relevance feedback on a photo archival system. Journal of Information Science, 18:203-215, 1992

[9] 梁艳.基于内容的图像检索技术及应用[J].科技信息(科学教研),2008年,20期.

[10] 田靓.基于颜色内容的图像检索方法的比较[J].包装工程,2009,4.

[11] Petrou.M(英)著.赖剑辉译.数字图像处理疑难解析[M].机械工业出版社,2005.4

[12] 章毓晋.基于内容的视觉信息检索[M].图像图形科学丛书,2003

这篇关于基于MATLAB内容的图像检索系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/404353

相关文章

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

STL经典案例(四)——实验室预约综合管理系统(项目涉及知识点很全面,内容有点多,耐心看完会有收获的!)

项目干货满满,内容有点过多,看起来可能会有点卡。系统提示读完超过俩小时,建议分多篇发布,我觉得分篇就不完整了,失去了这个项目的灵魂 一、需求分析 高校实验室预约管理系统包括三种不同身份:管理员、实验室教师、学生 管理员:给学生和实验室教师创建账号并分发 实验室教师:审核学生的预约申请 学生:申请使用实验室 高校实验室包括:超景深实验室(可容纳10人)、大数据实验室(可容纳20人)、物联网实验

C# double[] 和Matlab数组MWArray[]转换

C# double[] 转换成MWArray[], 直接赋值就行             MWNumericArray[] ma = new MWNumericArray[4];             double[] dT = new double[] { 0 };             double[] dT1 = new double[] { 0,2 };

Verybot之OpenCV应用一:安装与图像采集测试

在Verybot上安装OpenCV是很简单的,只需要执行:         sudo apt-get update         sudo apt-get install libopencv-dev         sudo apt-get install python-opencv         下面就对安装好的OpenCV进行一下测试,编写一个通过USB摄像头采

libsvm在matlab中的使用方法

原文地址:libsvm在matlab中的使用方法 作者: lwenqu_8lbsk 前段时间,gyp326曾在论坛里问libsvm如何在matlab中使用,我还奇怪,认为libsvm是C的程序,应该不能。没想到今天又有人问道,难道matlab真的能运行libsvm。我到官方网站看了下,原来,真的提供了matlab的使用接口。 接口下载在: http://www.csie.ntu.edu.

【python计算机视觉编程——7.图像搜索】

python计算机视觉编程——7.图像搜索 7.图像搜索7.1 基于内容的图像检索(CBIR)从文本挖掘中获取灵感——矢量空间模型(BOW表示模型)7.2 视觉单词**思想****特征提取**: 创建词汇7.3 图像索引7.3.1 建立数据库7.3.2 添加图像 7.4 在数据库中搜索图像7.4.1 利用索引获取获选图像7.4.2 用一幅图像进行查询7.4.3 确定对比基准并绘制结果 7.

【python计算机视觉编程——8.图像内容分类】

python计算机视觉编程——8.图像内容分类 8.图像内容分类8.1 K邻近分类法(KNN)8.1.1 一个简单的二维示例8.1.2 用稠密SIFT作为图像特征8.1.3 图像分类:手势识别 8.2贝叶斯分类器用PCA降维 8.3 支持向量机8.3.2 再论手势识别 8.4 光学字符识别8.4.2 选取特征8.4.3 多类支持向量机8.4.4 提取单元格并识别字符8.4.5 图像校正