资源简介

使用KMeans算法与BOF 算法实现图像检索,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 ) ;

%选择聚类个数
K=500;

% 提取图片库中所有图片的SIFT特征
[img_pathsFeats] = get_sifts(‘./img_paths.txt‘);

% 随机生成K个初始类心
initMeans = Feats(randi(size(Feats1)1K):);

% 根据生成的初始类心对所有SIFT特征进行聚类
[KMeans] = K_Means(FeatsKinitMeans);


% 统计图片库每张图片每个聚类中特征点个数,每张图片对应一个K维向量
[countVectors] = get_countVectors(KMeansK,size(img_paths1));

% 统计带检索图片每个聚类中特征点个数,得到一个K维向量
[cosVector] = get_singleVector(KMeansKdescr‘);

% 根据余弦相似定理,求带检索图片与图片库中所有图片的余弦夹角
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;

% 对结果排序
[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


评论

共有 条评论