how to find Euclidean distance in matlab?

3 ビュー (過去 30 日間)
ganesh s
ganesh s 2011 年 12 月 2 日
編集済み: Walter Roberson 2017 年 10 月 11 日
hi i have extracted the feature of the 1000 images by using color Correlogram & saved it in a .mat file, now i want to match some query image(consist of .mat file) with this data base by using Euclidean distance for image retrieval.but i don't know how to find the Euclidean distance between 1000 data base images & one query image. thanks
  1 件のコメント
ganesh s
ganesh s 2011 年 12 月 2 日
want to find Euclidean distance between 1000 images(.mat file)& one query image (.mat file) in MATLAB

サインインしてコメントする。

採用された回答

Junaid
Junaid 2011 年 12 月 2 日
Dear what is the size of your feature vector, if it is column vector then let say your have 1000 feature vector of 1000 images. I denote it by D, where each column is feature vector of each image, in short column represent single image. and your Query image is Q is single column vector.
it can be computed as simple as;
Q= repmat(Q,1,size(D,2));
E_distance = sqrt(sum((Q-D).^2));
now E_distance is euclidean matrix distance. where each cell is distance of Query with database image.
  3 件のコメント
Junaid
Junaid 2011 年 12 月 2 日
I assume for Each image you have 1000 x 1 vector. one possible way way is that you concatenate all images to one matrix. Let say you have 100 images then you get D 1000 x 100. Where each column is feature of single image. and then you query Q is 10000x1. then simply
Q = Q';
once you can do it, then above code will give you Euclidean distance Q with all images. You can plot E_distance to see the result.
ganesh s
ganesh s 2011 年 12 月 2 日
thanks again junaid
i already concatenate the all 1000 images in two one column matrix of size(1000x1)with each row represent the extracted image of size(4096x48)now i want to take one query image of size 4096x48(my original image is of size 384x256 after extracting feature by correlogram method it become 4096x48 ) and want to find it's euclidean distance for image retrieval

サインインしてコメントする。

その他の回答 (2 件)

divya r
divya r 2012 年 6 月 15 日
How did you concatenate data from multiple matfiles into one? I have done it fr only 2 .mat files, but i am stuck in the logic for multiple .mat files. Could you please help me out with the logic?
  2 件のコメント
Walter Roberson
Walter Roberson 2012 年 6 月 15 日
Please start a new Question for this matter.
Htet Yamin Ko Ko
Htet Yamin Ko Ko 2017 年 10 月 11 日
編集済み: Walter Roberson 2017 年 10 月 11 日
if exist('feat.mat')
load feat.mat
else feat= [];
end
feat = [feat,featVec]; % you should use ; for row vectors and , for column vectors
save feat.mat feat
feat.mat is my existing .mat file and featVec is my current extracted feature vector. I hope it helps you.

サインインしてコメントする。


Dodo Dodda
Dodo Dodda 2016 年 5 月 18 日
I have a data set of 160 images, and i extracted features of these images and saved them in .mat file, now i want to match between features of another image and all features that i saved in the .mat file. How i can do this using eulidean distance algorithm?
  1 件のコメント
Walter Roberson
Walter Roberson 2016 年 5 月 18 日
pdist2()

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeImage Segmentation and Analysis についてさらに検索

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by