資源簡介
使用KMeans算法與BOF 算法實現(xiàn)圖像檢索,Matlab編碼
代碼片段和文件信息
%待檢索圖片
testImg_file?=?‘./testPictures‘;
testImg_name?=?‘/motianlun3.jpg‘;
image?=?imread([testImg_file?testImg_name]);
figure(1);
imshow(image);
%提取帶檢索圖片SIFT特征
[~descr~~?]?=?do_sift([testImg_file?testImg_name]?‘Verbosity‘?1?‘NumOctaves‘?4?‘Threshold‘??0.1/3/2?)?;
%選擇聚類個數(shù)
K=500;
%?提取圖片庫中所有圖片的SIFT特征
[img_pathsFeats]?=?get_sifts(‘./img_paths.txt‘);
%?隨機生成K個初始類心
initMeans?=?Feats(randi(size(Feats1)1K):);
%?根據(jù)生成的初始類心對所有SIFT特征進行聚類
[KMeans]?=?K_Means(FeatsKinitMeans);
%?統(tǒng)計圖片庫每張圖片每個聚類中特征點個數(shù),每張圖片對應(yīng)一個K維向量
[countVectors]?=?get_countVectors(KMeansK,size(img_paths1));
%?統(tǒng)計帶檢索圖片每個聚類中特征點個數(shù),得到一個K維向量
[cosVector]?=?get_singleVector(KMeansKdescr‘);
%?根據(jù)余弦相似定理,求帶檢索圖片與圖片庫中所有圖片的余弦夾角
cosValues?=?zeros(1size(img_paths1));
for?N?=1:size(img_paths1);
????????dotprod?=?sum(cosVector?.*?countVectors(N:));
????????dis?=?sqrt(sum(cosVector.^2))*sqrt(sum(countVectors(N:).^2));
????????cosin?=?dotprod/dis;
????????cosValues(N)?=?cosin;
end;
%?對結(jié)果排序
[valsindex]?=?sort(acos(cosValues));
%?輸出匹配度最高的36張圖片
figure(2);
c=0;
%?show?picture?at?host
for?id?=?1:36
????path?=?img_paths{index(id)};
????image?=?imread(path);
????if?(mod(id-112)?==?0&&id~=1)
????????c=c+1;
????????figure(c+2);
????end
????subplot(43id-12*c);
????imshow(image);
end
????????
????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????82998??2008-12-31?09:44??harris\00.bmp
?????文件??????82998??2011-01-10?16:00??harris\01.bmp
?????文件??????82998??2011-01-10?16:00??harris\02.bmp
?????文件??????82998??2008-12-31?10:22??harris\03.bmp
?????文件??????82998??2008-12-31?09:48??harris\11.bmp
?????文件??????82998??2008-12-31?10:19??harris\12.bmp
?????文件??????82998??2010-12-27?16:10??harris\21.bmp
?????文件??????82998??2010-12-27?16:10??harris\22.bmp
?????文件????????740??2011-01-26?14:16??harris\checkargs.m
?????文件????????548??2010-12-30?15:43??harris\check_collineation.m
?????文件???????2279??2011-08-21?22:55??harris\funddist.m
?????文件???????3399??2011-08-21?18:51??harris\fundmatrix.m
?????文件????????655??2011-01-21?16:47??harris\get_consensus_set.m
?????文件???????4016??2011-01-25?17:05??harris\harris.m
?????文件???????2537??2011-01-19?21:41??harris\harris2.m
?????文件??????50651??2002-02-04?16:03??harris\High2.jpg
?????文件??????55455??2002-02-04?16:04??harris\High3.jpg
?????文件????????343??2011-08-21?19:05??harris\isdegenerate.m
?????文件???????2489??2011-09-14?21:34??harris\jiaodianjiance2.m
?????文件???????2499??2011-02-22?14:21??harris\match.m
?????文件???????2780??2011-01-24?16:53??harris\match_ransac.m
?????文件???????2525??2011-08-21?18:44??harris\normalise2dpts.m
?????文件????????251??2011-01-24?17:04??harris\projectivematrix.m
?????文件???????9674??2011-08-21?22:52??harris\ransac.m
?????文件???????3491??2011-08-21?18:46??harris\ransacfitfundmatrix.m
?????目錄??????????0??2011-09-14?21:30??harris
-----------?---------??----------?-----??----
???????????????808316????????????????????26
評論
共有 條評論