用 Matlab GUI搭建一个简单的CBIR图像检索系统(一)

原标题:用 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 条评论)
   
验证码:

相关文章

推荐文章

'); })();