Фитнес-функция для сравнения изображений opencv, генетическое программирование

Я пишу генетическую программу для извлечения объекта на изображении. На данный момент у меня есть две фитнес-функции: расстояние Хэмминга и Хаусдорфа.

Hausdorff хорош, но слишком медленен для больших изображений. Хэмминг быстрее, но не всегда работает (например, иногда белое изображение является лучшим в популяции). Знаете ли вы какую-либо другую фитнес-функцию, которая содержит преимущества этих двух функций.

Это бинарные изображения. Третий способ - сначала найти края или изменить размер изображения, а затем использовать расстояние Хэмминга для оценки решения, и на данный момент это лучший способ.


person Community    schedule 17.09.2015    source источник
comment
Какие образы вы сравниваете? Исходное изображение объекта на фоне и..? Область-кандидат на сплошном/градиентном фоне, заполненная средним цветом остальной части изображения? Или размытая остальная часть изображения?   -  person Yuri Gor    schedule 07.10.2017
comment
@YuriGor Я использовал функцию Хэмминга, которая подсчитывает пиксели в diff (xor) двух изображений, и функции Хаусдорфа, которые измеряют, насколько далеко друг от друга находятся два подмножества метрического пространства. Подробнее об этом можно прочитать в википедии. Мои изображения имеют только черные и белые пиксели. Не могли бы вы сказать мне, где я могу прочитать о других методах, которые вы упомянули? Не только для бинарных изображений, но и для изображений в оттенках серого.   -  person    schedule 12.10.2017


Ответы (1)


NORM_L1 очень быстр в OpenCV и хорошо работает для GA. (Я использовал его для изображений в градациях серого, но думаю, что он подойдет и для 3 каналов)

person Yuri Gor    schedule 07.10.2017
comment
Спасибо, я проверю это после того, как закончу свое новое приложение. - person ; 12.10.2017