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

1 visualizzazione (ultimi 30 giorni)
how do i compare my test image with the one in my database using euclidean distance?

Risposte (2)

Akihumi
Akihumi il 8 Mag 2020
Modificato: Akihumi il 8 Mag 2020
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 Commenti
Akihumi
Akihumi il 9 Mag 2020
It is ok to ask here also, so others can also check my answer and suggest/comment on it
Afiqah Zafrullah
Afiqah Zafrullah il 9 Mag 2020
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

Accedi per commentare.


Image Analyst
Image Analyst il 9 Mag 2020
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

Community Treasure Hunt

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

Start Hunting!

Translated by