#python #opencv #computer-vision
#python #opencv #компьютерное зрение
Вопрос:
прежде чем спросить, я хочу сказать, что я знаю, что такое фильтр Габора, и я использовал его пару раз.
Но у меня есть кое-что, чего я теоретически не понимаю. (например, я получил этот python OpenCV numpy-код)
for filter in filters:
filtered = cv.filter2D(img, cv.CV_8UC3, filter)
filtered = np.reshape(filtered, img.shape)
np.maximum(accumulator, filtered, accumulator)
«фильтры» — это набор фильтров Габора.
Как я знаю, «фильтрованный» является результатом свертки в пространственной области.
np.maximum принимает все значения filtered и сравнивает их со значениями аккумулятора и сохраняет только максимальные значения в аккумуляторе.
Чего я не понимаю, и мой главный вопрос: «Что означают максимальные значения результата свертки с помощью фильтра Габора?
Ответ №1:
Максимальные значения свертки с фильтрами Габора означают, что в той пространственной точке, в которой они появляются, есть шаблон, соответствующий конкретному фильтру Габора, который вы использовали. Фильтры Габора — это функция ядра Гаусса, модулируемая синусоидальной плоской волной, поэтому это означает, что соответствующая частота, связанная с фильтром Габора, присутствует в определенном месте, где она получила максимальное значение.
Комментарии:
1. Включает ли это также минимальные значения или только максимальные значения представляют собой соответствие конкретному фильтру Габора?
2. Вообще говоря, минимальные значения будут соответствовать отсутствию частоты, связанной с фильтром Габора, в соответствующей пространственной точке изображения.