В качестве альтернативы, если вы хотите работать со всеми цветовыми каналами, вы можете растянуть изображения в векторы, прежде чем делать imhist, то есть просто сделать

у найти гистограмму двух изображений и найти сходство, используя евклидово расстояние. Я пытаюсь использоватьimhist команда, но она дает следующую ошибку:

Error using ==> iptcheckinput
Function IMHIST expected its first input, I or X, to be two-dimensional.

мой код выглядит следующим образом:

% read two images
Im1 = imread('1.jpg');
Im2 = imread('2.jpg');

%  convert images to type double (range from from 0 to 1 instead of from 0 to 255)
Im1 = im2double(Im1);
Im2 = im2double(Im2);

% Calculate the Normalized Histogram of Image 1 and Image 2
hn1 = imhist(Im1)./numel(Im1);
hn2 = imhist(Im2)./numel(Im2);

% Calculate the histogram error
f = sum((hn1 - hn2).^2);
f; %display the result to console

Ответы на вопрос(2)

Ваш ответ на вопрос