Я работаю с проектом CBIR (Content-image Image Retrieval), который будет рисовать гистограмму RGB изображений, а также рассчитывать расстояние между другими изображениями с помощью изображения запроса.
Я использую VS 2008 - MFC и OpenCV Library. Метод, который я хотел использовать для расчета расстояния, - это Евклидово расстояние (ED), но мне почему-то не удалось его определить.
Я нашел функцию - cvCalcEMD2 (), которая может помочь мне вычислить расстояние между двумя гистограммами.
Чтобы использовать эту функцию, мне нужно создать подпись для моей гистограммы.
Вот пример для создания подписи , который я нашел
в цикле For есть строка, которую мне нужно передать в моей гистограмме:
float bin_val = cvQueryHistValue_2D (hist1, h, s);
и в моей функции для гистограммы нет ничего похожего на переменную h_bins и s_bins
В моей программе я вычисляю / рисую свою гистограмму в R, G и B.
значит, у каждого изображения есть 3 гистограммы.
Например: CvHistogram * hist_red, * hist_green, * hist_blue;
Как мне использовать мою гистограмму для создания подписи?
* ссылка на мою функцию drawHistogram находится на моем комментарии ниже