how do i compare my test image with the one in my database using euclidean distance?

1 次查看(过去 30 天)
how do i compare my test image with the one in my database using euclidean distance?

回答(2 个)

Akihumi
Akihumi 2020-5-8
编辑:Akihumi 2020-5-8
I assume that you have RGB images.
Do you mean that you want to compute the euclidean distance of the pixes at same location on different images?
If yes, you may try the following
a = imread['image1']; % first image
b = imread['image2']; % second image
c = double(a-b); % difference of each pixel
d = sqrt(c(:,:,1)^2 + c(:,:,2)^2 + c(:,:,3)^2); % compute with formula of euclidean distance
  3 个评论
Afiqah Zafrullah
Afiqah Zafrullah 2020-5-9
i was asked to find the average of all array values n compare it with the average of the average value of the reference array then assign the character to the minimum value. i dont know how this work since im new to matlab and have no one else to refer

请先登录,再进行评论。


Image Analyst
Image Analyst 2020-5-9
Try this:
theMean = mean(allArrayValues) % Take the mean of all elements in variable allArrayValues
refMean = mean(yourReferenceArray(:)) % Get mean of reference values.
minValue = min([theMean, refMean]); % Get the minimum of the values.
% No idea what "assign the character to the minimum value" means, but maybe this:
theCharacterValue = minValue; % assign the character to the minimum value

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by