用 Matlab GUI搭建一個簡單的CBIR圖像檢索系統(一)
02-02
基於內容的圖像檢索過程如下,系統包括圖像內容的特徵提取、相似度比較、人機介面以及相關反饋等組成部分。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推薦閱讀:
※有哪些利用高維空間及特性解決低維空間的問題的方法和例子?
※在機器學習的項目中,特徵是如何被找出來的?
※圖像底層特徵提取--顏色特徵(1)
※用語音mfcc參數作為特徵,利用SVM來進行分類判斷聲音是否是嬰兒哭聲?
※Controllable Invariance through Adversarial Feature Learning