Задание:

1) Реализуйте функцию которая по картинкам градиентов обеих осей строит гистаграмму градиентов: HoG buildHoG(cv::Mat grad_x, cv::Mat grad_y)

2) Реализуйте функцию которая красиво выводит в консоль наш объект “гистограмма градиентов” (HoG)

3) Реализуйте функцию distance которая позволит посчитать декартово расстояние между двумя гистограммами градиентов и тем самым оценить насколько картинки “похожи”

4) Поэкспериментируйте с этой функцией distance на картинках с буквами:

5) Проведите эксперимент 1:

Пробежав в цикле по каждой букве - посчитайте насколько сильно она отличается между своими пятью примерами? (NSAMPLES_PER_LETTER)

Для каждой буквы выведите:

  • Среднее попарное расстояние (среднюю похожесть) между всеми примерами этой буквы
  • Максимальное попарное расстояние между примерами этой буквы

А так же среди всех максимальных расстояний найдите максимальное и выведите его в конце.

6) Проведите эксперимент 2:

Для каждой буквы найдите среди остальных наиболее похожую и наименее похожую

А так же среди всех минимальных расстояний найдите среднее и выведите его в конце

  • Посмотрите и подумайте: как это число соотносится с максимальным расстоянием из прошлого эксперимента?
  • Какие буквы невозможно различить закодировав их в HoG?
  • Можно ли с этим что-то сделать?