我正在努力比較多個圖像。我將這些圖像數據作爲稱爲「圖像」的矩陣的列向量。我想通過首先計算它們的Eucledian距離來評估圖像的相似性。然後我想創建一個矩陣,我可以執行多個隨機遊走。現在,我的代碼如下:如何在MATLAB中創建一個相似矩陣?
% clear
% clc
% close all
%
% load tea.mat;
images = Input.X;
M = zeros(size(images, 2), size (images, 2));
for i = 1:size(images, 2)
for j = 1:size(images, 2)
normImageTemp = sqrt((sum((images(:, i) - images(:, j))./256).^2));
%Need to accurately select the value of gamma_i
gamma_i = 1/10;
M(i, j) = exp(-gamma_i.*normImageTemp);
end
end
但是,我的矩陣M沿着它的主對角線和其他地方的零值結束。我期望每行的前幾個元素的「大」值和列索引> 4的元素的「小」值。有人可以解釋什麼是錯的?任何建議表示讚賞。
相關:http://stackoverflow.com/q/11059274/97160,http://stackoverflow.com/q/7696734/97160,http://stackoverflow.com/q/6989442/97160 – Amro 2013-07-07 07:15:46