基于不变矩与颜色特征的图像检索及小波边缘检测系统
项目简介
本项目是一个集成化的图像处理与检索系统,旨在通过混合特征提取技术实现高精度的图像检索,并集成了先进的边缘检测功能。系统结合了图像的几何形状特征(不变矩)与颜色统计特征(HSV直方图),通过加权融合算法计算图像间的相似度,从而在复杂的图像数据库中检索出最相似的目标。此外,系统还内嵌了基于小波变换模极大值原理的边缘检测算法,为用户提供除检索结果外的图像结构分析视图。
功能特性
- 混合特征检索:融合了形状特征与颜色特征,解决了单一特征在面对旋转、缩放或颜色变化时的局限性。
- 几何不变性:基于10个不变矩(7个Hu矩 + 3个扩展几何特征),确保检索对图像的平移、旋转和缩放具有鲁棒性。
- 颜色特征分析:利用HSV色彩空间的颜色直方图,捕捉图像的全局颜色分布。
- 小波边缘检测:利用小波变换的多尺度特性,通过模极大值法提取图像边缘,提供比传统算子更精细的边缘视图。
- 可视化交互:提供图形化界面流程,包括查询图像选择、数据库路径选择、过程进度显示及Top-5检索结果的排序展示。
系统要求
- 运行环境:MATLAB
- 工具箱依赖:Image Processing Toolbox (图像处理工具箱) - 用于图像读取、色彩空间转换、形态学操作及小波变换支持。
使用方法
- 运行主脚本启动系统。
- 系统将弹出文件选择对话框,请选择一张 查询图像(支持 .jpg, .png, .bmp 格式)。
- 系统将弹出文件夹选择对话框,请选择包含待检索图像的 数据库文件夹。
- 系统将自动执行以下操作:
* 在界面上显示查询原图及对其进行的小波模极大值边缘检测结果。
* 计算查询图像的特征向量。
* 遍历数据库中所有支持的图像文件,逐一计算相似度。
- 处理完成后,系统将在命令行输出Top 5相似图片的列表,并在图形窗口中按相似度降序展示检索结果图片。
技术实现细节
本项目核心逻辑基于混合特征加权距离计算,以下是各模块的详细实现原理:
1. 特征提取机制
系统采用 extract_features 函数对输入图像进行标准化(统一缩放至256x256)并提取两类特征:
* 实现逻辑是将图像从RGB空间转换至HSV空间。
* 对H、S、V三个分量进行非均匀量化,量化级数分别为 H:8, S:4, V:4。
* 构建一维特征向量(共 8x4x4 = 128 维),并进行归一化处理,形成具有尺度不变性的颜色描述符。
* 图像首先经过灰度化和二值化处理(采用Otsu大津法确定阈值),并使用形态学开运算去除噪点。
* 计算图像的几何矩(原始矩与中心矩)。
*
归一化:利用零阶矩对中心矩进行归一化,消除图像缩放带来的影响。
*
特征构造:
*
1-7号特征:经典的Hu七个不变矩,具有平移、旋转、缩放不变性。
*
8-10号特征:扩展的自定义几何不变量。包括基于二阶矩构造的仿射不变量(近似偏心率/长宽比特性)、基于回转半径的紧凑度特征,以及利用三阶矩构造的偏斜不变量。
*
数值处理:为了压缩特征值的动态范围,所有矩特征均经过对数变换(Log10),并保留符号信息。
2. 相似度度量与检索算法
系统遍历数据库图像,通过加权融合的方式计算查询图像与库图像的距离:
- 形状距离:计算两个图像的10维不变矩向量之间的欧氏距离。
- 颜色距离:近似使用卡方距离公式计算颜色直方图的差异。针对通过Log处理后的数值量级,算法对颜色差异项进行了分母平滑处理。
- 加权融合:
* 形状特征权重:0.6
* 颜色特征权重:0.4 (并在计算中对颜色距离进行了系数量级调整)。
* 最终相似度得分由
1 / (1 + 总距离) 转化而来,分值越高表示越相似。
3. 小波模极大值边缘检测
该功能模块通过 wavelet_modulus_maxima 函数实现:
- 算法首先将图像转换为灰度双精度矩阵。
- 利用离散小波变换(代码逻辑暗示使用类似Haar小波的机制),提取图像的水平细节分量(HL)和垂直细节分量(LH)。
- 这两个分量反映了图像在垂直方向和水平方向的灰度突变程度(即梯度信息)。
- 通过结合这两个方向的分量计算梯度的模,并检测局部极大值点,从而生成抗噪性强且定位精准的边缘图像。
4. 排序与展示
- 检索过程中自动跳过损坏的图像文件。
- 计算完成后,根据相似度得分对结果进行降序排列。
- 选取前5个(Top-K)结果,在图形窗口中并排展示,同时在标题栏显示排名与具体的相似度分值,方便用户直观评估算法效果。