Найдите оптимальный способ свертки

На основе моего кода на фильтре Габора, этот Габор, как следует из его названия, используется для фильтрации изображения и выделения всего, что оно ориентировано в том же направлении фильтрации.

Кстати, существует несколько способов свертки изображения с этим Габором:

  • Изображение может быть свернуто непосредственно с помощью Gabor с помощью двухмерной свертки. Но все мы знаем, что двумерная свертка требует много вычислений. Итак, если мы рассмотрим изображение размера MxN и размер фильтра PxQ, то для достижения двумерной свертки нам потребуется MN X PQ умножений и сложений. Таким образом, свертка 2D очень затратна для выполнения операции умножения и накопления.

  • с другой стороны, мы используем преимущество разделяемой свертки. Таким образом, фильтр может быть сначала разделяемым, тогда мы могли бы заменить точечную 2D-свертку двумя одномерными свертками, соответствующими свертке в направлении x и в направлении y. В этом случае мы уменьшаем сложность вычислений до MNP+MNQ = (MN(P+Q)) умножения и сложения.

  • Но основная проблема с разделяемым фильтром Габора — свертка в комплексной области. Таким образом, мы можем рассматривать этот Габор как двумерную матрицу низкого ранга. Поэтому можно использовать декомпозицию по отдельным значениям (SVD).

Существуют ли другие способы свертки изображения с помощью Габора, чтобы еще больше снизить сложность вычислений? можно ли найти другой метод, более оптимальный, чем СВД? Может применить какие-то операции к изображению перед фильтрацией? Пожалуйста, мне нужны все ваши ценные мнения.

Могу ли я вместо этого использовать, например, вейвлеты Габора? Является ли вейвлет Габора более оптимальным, чем обычный вейвлет Габора?


person Christina    schedule 12.01.2014    source источник


Ответы (1)


Насколько мне известно, отдельный фильтр Габора может иметь как наименьшую пространственную сложность (O(2N^2)), так и временную сложность (O(6MN^2)), где M и N — ширина маски фильтра и изображения соответственно. Это достигается путем отделения экспоненциальной части только с u2 от исходной функции с u1 и u2. В этой статье автор сравнил различные реализации фильтров Габора. .

Я не думаю, что SVD - хороший выбор в сочетании с фильтром Габора. Если размер маски мал, SVD не сильно поможет, но ухудшит производительность; если размер маски большой, SVD также отнимает много времени.

person lennon310    schedule 13.01.2014
comment
Благодарю за ваш ответ. Статья мне кажется очень важной, так что буду читать ее слово в слово :) - person Christina; 13.01.2014
comment
Задал вопрос про разборность фильтров Габора, если можете мне помочь, буду очень признателен за вашу помощь! :) - person Christina; 19.01.2014