【发布时间】:2016-09-11 23:44:35
【问题描述】:
我想在 Matlab 中计算两个图像之间的欧几里得距离。我找到了一些例子,我已经尝试过了,但它们不正确。
这个欧几里得距离的结果应该在0 和1 之间,但是我通过两种不同的方式达到了不同的解决方案。
第一个算法给了我一个 4 位数字,例如 2000 和其他类似的数字,通过另一种方式,我得到了数字,例如 0.007
它有什么问题?
这是我提到的算法之一:
Im1 = imread('1.jpeg');
Im2 = imread('2.jpeg');
Im1 = rgb2gray(Im1);
Im2 = rgb2gray(Im2);
hn1 = imhist(Im1)./numel(Im1);
hn2 = imhist(Im2)./numel(Im2);
% Calculate the Euclidean distance
f = sum((hn1 - hn2).^2)
【问题讨论】:
-
非常相似的问题可以在这里找到:stackoverflow.com/questions/5475815/…