原标题:用 Matlab GUI搭建一个简单的CBIR图像检索系统(一)简约而不简单
基于内容的图像检索过程如下,系统包括图像内容的特征提取、相似度比较、人机接口以及相关反馈等组成部分。CBIR系统的工作过程如下:
(1)首先通过对图像数据库这种图像的图像数据进行特征提取,构成图像特征数据库,其中特征提取是系统的核心部分。
(2)通过人机接口交互实例图像或者图像特征进行特征的相似度比较,然后按照相似度从大到小显示检索结果。
(3)用户对检索结果进行相关反馈,检索根据反馈信息调整特征权重,优化检索结果。
根据上述步骤,先确定需要提取的图像特征,本文以图像的灰度直方图特征为例。提取所有图像的灰度直方图特征,然后储存在一个.mat数据文件中,形成图像的特征库。
function [ DataBaseFeatures ] = HistFeatureExtraction( NumOfImg,FileName )
%UNTITLED2 此处显示有关此函数的摘要
% 此处显示详细说明
for n =1:NumOfImg
ImagePath = [FileName num2str(n) '.BMP']; %生成图像的URL
% ImagePath = [FileName num2str(n,'%03d') '.tif'];
ImageRead=imread(ImagePath);
ImageRead = ImageRead(:,:,1:3); %读取图像RGB值
ImageRead = rgb2gray(ImageRead); %灰度化图像
[Count,x]=imhist(ImageRead); %提取直方图
DataBaseFeatures{n,1}=ImagePath;
DataBaseFeatures{n,2}=Count; %用元胞数组储存特征
end
save('HistFeature.mat',DataBaseFeatures) ; %保存特征为数据文件
end
留言与评论(共有 0 条评论) |