stringtranslate.com

фильтр Габора

Пример двумерного фильтра Габора

В обработке изображений фильтр Габора , названный в честь Денниса Габора , который первым предложил его как одномерный фильтр. [1] Фильтр Габора был впервые обобщен до 2D Гёстой Гранлундом, [2] путем добавления опорного направления. Фильтр Габора — это линейный фильтр , используемый для анализа текстур , что по сути означает, что он анализирует, есть ли какое-либо определенное частотное содержимое в изображении в определенных направлениях в локализованной области вокруг точки или области анализа. Многие современные ученые, изучающие зрение, утверждают, что представления частоты и ориентации фильтров Габора аналогичны представлениям зрительной системы человека . [3] Было обнаружено, что они особенно подходят для представления и различения текстур. В пространственной области двухмерный фильтр Габора представляет собой функцию ядра Гаусса, модулированную синусоидальной плоской волной (см. преобразование Габора ).

Некоторые авторы утверждают, что простые клетки зрительной коры головного мозга млекопитающих можно моделировать с помощью функций Габора. [4] [5] Таким образом, некоторые полагают, что анализ изображений с помощью фильтров Габора похож на восприятие в зрительной системе человека .

Определение

Его импульсный отклик определяется синусоидальной волной ( плоской волной для 2D-фильтров Габора), умноженной на гауссову функцию . [6] Из-за свойства умножения-свертки ( теорема о свертке ) преобразование Фурье импульсного отклика фильтра Габора является сверткой преобразования Фурье гармонической функции (синусоидальной функции) и преобразования Фурье гауссовой функции. Фильтр имеет действительный и мнимый компоненты, представляющие ортогональные направления. [7] Два компонента могут быть сформированы в комплексное число или использоваться по отдельности.

Сложный

Настоящий

Воображаемый

где и .

В этом уравнении представляет собой длину волны синусоидального фактора, представляет собой ориентацию нормали к параллельным полосам функции Габора , является смещением фазы, является сигма/стандартным отклонением гауссовой огибающей и является пространственным соотношением сторон, и определяет эллиптичность носителя функции Габора.

Вейвлет-пространство

Демонстрация фильтра Габора, примененного к китайскому OCR. Справа показаны четыре ориентации 0°, 45°, 90° и 135°. Исходное изображение символа и суперпозиция всех четырех ориентаций показаны слева.

Фильтры Габора напрямую связаны с вейвлетами Габора , поскольку их можно спроектировать для ряда расширений и вращений. Однако, в общем, расширение не применяется для вейвлетов Габора, поскольку это требует вычисления биортогональных вейвлетов, что может быть очень трудоемким. Поэтому, как правило, создается банк фильтров, состоящий из фильтров Габора с различными масштабами и вращениями. Фильтры свертываются с сигналом, в результате чего получается так называемое пространство Габора. Этот процесс тесно связан с процессами в первичной зрительной коре . [8] Джонс и Палмер показали, что действительная часть комплексной функции Габора хорошо подходит для весовых функций рецептивного поля, обнаруженных в простых клетках в стриарной коре кошки. [9]

Временно-причинный аналог фильтра Габора

При обработке временных сигналов данные из будущего не могут быть доступны, что приводит к проблемам при попытке использования функций Габора для обработки сигналов реального времени, которые зависят от временного измерения. Временно-каузальный аналог фильтра Габора был разработан в [10] на основе замены гауссовского ядра в функции Габора на временно-каузальное и рекурсивное во времени ядро, называемое временным-каузальным предельным ядром. Таким образом, частотно-временной анализ, основанный на полученном комплекснозначном расширении временного-каузального предельного ядра, позволяет захватывать по существу аналогичные преобразования временного сигнала, как это может делать фильтр Габора, и как может описывать группа Гейзенберга, см. [10] для получения дополнительных подробностей.

Извлечение признаков из изображений

Набор фильтров Габора с различными частотами и ориентациями может быть полезен для извлечения полезных признаков из изображения. [11] В дискретной области двумерные фильтры Габора задаются как,

где B и C — нормирующие коэффициенты, подлежащие определению.

Двумерные фильтры Габора имеют богатые приложения в обработке изображений, особенно при извлечении признаков для анализа и сегментации текстур. [12] определяет частоту, искомую в текстуре. Изменяя , мы можем искать текстуру, ориентированную в определенном направлении. Изменяя , мы изменяем поддержку базиса или размер анализируемой области изображения.

Применение 2D-фильтров Габора в обработке изображений

При обработке изображений документов функции Габора идеально подходят для определения написания слова в многоязычном документе. [13] Фильтры Габора с различными частотами и ориентацией в разных направлениях использовались для локализации и извлечения областей, содержащих только текст, из сложных изображений документов (как серых, так и цветных), поскольку текст богат высокочастотными компонентами, тогда как изображения по своей природе относительно гладкие. [14] [15] [16] Он также применялся для распознавания выражений лиц [17] Фильтры Габора также широко использовались в приложениях анализа образов. Например, он использовался для изучения распределения направленности внутри пористой губчатой ​​трабекулярной кости в позвоночнике . [18] Пространство Габора очень полезно в приложениях обработки изображений , таких как оптическое распознавание символов , распознавание радужной оболочки глаза и распознавание отпечатков пальцев . Отношения между активациями для определенного пространственного местоположения очень различимы между объектами на изображении. Кроме того, важные активации могут быть извлечены из пространства Габора для создания разреженного представления объекта.

Примеры реализации

Питон

Вот пример реализации на Python :

импортировать  numpy  как  npdef  gabor ( sigma ,  theta ,  Lambda ,  psi ,  gamma ): """Извлечение признаков Габора.""" sigma_x = sigma sigma_y = float ( sigma ) / gamma          # Ограничивающий прямоугольник  nstds  =  3  # Число стандартных отклонений сигма  xmax  =  max (  abs ( nstds  *  sigma_x  *  np . cos ( theta )),  abs ( nstds  *  sigma_y  *  np . sin ( theta ))  )  xmax  =  np . ceil ( max ( 1 ,  xmax ))  ymax  =  max (  abs ( nstds  *  sigma_x  *  np . sin ( theta )),  abs ( nstds  *  sigma_y  *  np . cos ( theta ))  )  ymax  =  np . ceil ( max ( 1 ,  ymax ))  xmin  =  - xmax  ymin  =  - ymax  ( y ,  x )  =  np . сеткасетка ( np.arange ( ymin , ymax + 1 ) , np.arange ( xmin , xmax + 1 ) )         # Вращение x_theta  =  x  *  np.cos ( theta ) + y * np.sin ( theta ) y_theta = - x * np.sin ( theta ) + y * np.cos ( theta )              gb  =  np . exp (  - 0,5  *  ( x_theta ** 2  /  sigma_x ** 2  +  y_theta ** 2  /  sigma_y ** 2 )  )  *  np . cos ( 2  *  np . pi  /  Lambda  *  x_theta  +  psi )  return  gb

Реализацию на изображениях см. в [1].

МАТЛАБ

Это пример реализации в MATLAB / Octave :

функция  gb = gabor_fn ( сигма, тета, лямбда, пси, гамма )  sigma_x = сигма ; sigma_y = сигма / гамма ;      % Ограничивающий прямоугольник nstds = 3 ; xmax = max ( abs ( nstds * sigma_x * cos ( theta )), abs ( nstds * sigma_y * sin ( theta ))); xmax = ceil ( max ( 1 , xmax )); ymax = max ( abs ( nstds * sigma_x * sin ( theta )), abs ( nstds * sigma_y * cos ( theta ))); ymax = ceil ( max ( 1 , ymax )); xmin = - xmax ; ymin = - ymax ; [ x , y ] = meshgrid ( xmin : xmax , ymin : ymax );                                      % Вращение x_theta = x * cos ( theta ) + y * sin ( theta ); y_theta = - x * sin ( theta ) + y * cos ( theta );                gb = exp ( - .5 * ( x_theta .^ 2 / sigma_x ^ 2 + y_theta .^ 2 / sigma_y ^ 2 )) .* cos ( 2 * pi / lambda * x_theta + psi );  

Код для извлечения признаков Габора из изображений в MATLAB можно найти по адресу http://www.mathworks.com/matlabcentral/fileexchange/44630.

Хаскелл

Вот еще один пример реализации на Haskell :

import Data.Complex gabor λ θ ψ σ γ x y = exp ( - ( x' ^ 2 + γ ^ 2 * y' ^ 2 ) / ( 2 * σ ^ 2 )) * exp ( i * ( 2 * pi * x' / λ + ψ )) где x' = x * cos θ + y * sin θ y' = - x * sin θ + y * cos θ i = 0 :+ 1                                                  

Смотрите также

Ссылки

  1. ^ Габор, Д. (1946). «Теория связи». J. Inst. Electr. Eng . 93 .
  2. ^ Гранлунд ГХ (1978). «В поисках оператора общей обработки изображений». Компьютерная графика и обработка изображений . 8 (2): 155–173. doi :10.1016/0146-664X(78)90047-3. ISSN  0146-664X.
  3. ^ Olshausen, BA & Field, DJ (1996). "Возникновение свойств рецептивного поля простых клеток путем обучения разреженному коду для естественных изображений". Nature . 381 (6583): 607–609. Bibcode :1996Natur.381..607O. doi :10.1038/381607a0. PMID  8637596. S2CID  4358477.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  4. ^ Марчеля, С. (1980). «Математическое описание ответов простых корковых клеток». Журнал оптического общества Америки . 70 (11): 1297–1300. Bibcode : 1980JOSA...70.1297M. doi : 10.1364/JOSA.70.001297. PMID  7463179.
  5. ^ Даугман, Джон Г. (1985-07-01). «Соотношение неопределенности для разрешения в пространстве, пространственной частоты и ориентации, оптимизированное двумерными визуальными кортикальными фильтрами». Журнал оптического общества Америки A . 2 (7): 1160–9. Bibcode :1985JOSAA...2.1160D. CiteSeerX 10.1.1.465.8506 . doi :10.1364/JOSAA.2.001160. ISSN  1084-7529. PMID  4020513. S2CID  9271650. 
  6. ^ Фогель, И.; Саги, Д. (июнь 1989 г.). «Фильтры Габора как дискриминатор текстуры». Биологическая кибернетика . 61 (2): 103–113. CiteSeerX 10.1.1.367.2700 . doi :10.1007/BF00204594. ISSN  0340-1200. OCLC  895625214. S2CID  14952808. 
  7. ^ Трехмерное отслеживание поверхности и аппроксимация с использованием фильтров Габора, Йеспер Юул Хенриксен, Университет Южной Дании, 28 марта 2007 г.
  8. ^ Даугман, Дж. Г. (1980), «Двумерный спектральный анализ профилей рецептивных полей коры», Vision Res. , 20 (10): 847–56, doi :10.1016/0042-6989(80)90065-6, PMID  7467139, S2CID  40518532
  9. ^ Джонс, Дж. П.; Палмер, ЛА (1987). «Оценка двумерной модели фильтра Габора простых рецептивных полей в полосатой коре головного мозга кошки» (PDF) . J. Neurophysiol . 58 (6): 1233–1258. doi :10.1152/jn.1987.58.6.1233. PMID  3437332. S2CID  16809045. Архивировано из оригинала (PDF) 28.02.2020.
  10. ^ ab Lindeberg, T. (23 января 2023 г.). «Причинно-следственное и рекурсивное по времени масштабно-ковариантное масштабно-пространственное представление временных сигналов и прошедшего времени». Биологическая кибернетика . 117 (1–2): 21–59. doi : 10.1007/s00422-022-00953-6 . PMC 10160219. PMID  36689001 .  
  11. ^ Хагигхат, М.; Зонуз, С.; Абдель-Мотталеб, М. (2013). «Идентификация с использованием зашифрованной биометрии». Компьютерный анализ изображений и шаблонов . Конспект лекций по информатике. Том 8048. С. 440–448. doi :10.1007/978-3-642-40246-3_55. ISBN 978-3-642-40245-6.
  12. ^ Рамакришнан, АГ; Кумар Раджа, С.; Рагху Рам, ХВ (2002). "Сегментация текстур на основе нейронных сетей с использованием признаков Габора" (PDF) . Труды 12-го семинара IEEE по нейронным сетям для обработки сигналов . Мартиньи, Швейцария: IEEE. стр. 365–374. doi :10.1109/NNSP.2002.1030048. ISBN 978-0-7803-7616-8. OCLC  812617471. S2CID  10994982.
  13. ^ Пати, Пита Баса; Рамакришнан, АГ (июль 2008 г.). «Многошрифтовая идентификация на уровне слов». Pattern Recognition Letters . 29 (9): 1218–1229. Bibcode : 2008PaReL..29.1218P. doi : 10.1016/j.patrec.2008.01.027. ISSN  0167-8655.
  14. ^ Raju S, S.; Pati, PB; Ramakrishnan, AG (2004). "Анализ энергии блоков на основе фильтра Габора для извлечения текста из цифровых изображений документов" (PDF) . Первый международный семинар по анализу изображений документов для библиотек, 2004. Труды . Пало-Альто, Калифорния, США: IEEE. стр. 233–243. doi :10.1109/DIAL.2004.1263252. ISBN 978-0-7695-2088-9. LCCN  2003116308. OL  8067708M. S2CID  21856192.
  15. ^ Раджу, С. Сабари; Пати, ПБ; Рамакришнан, АГ (2005). «Локализация и извлечение текста из сложных цветных изображений». Достижения в области визуальных вычислений. Конспект лекций по информатике. Том 3804. С. 486–493. doi :10.1007/11595755_59. ISBN 978-3-540-30750-1. ISSN  0302-9743. LCCN  2005936803. OL  9056158M.
  16. ^ S Sabari Raju, PB Pati и AG Ramakrishnan, «Локализация и извлечение текста из сложных цветных изображений», Труды Первой международной конференции по достижениям в области визуальных вычислений (ISVC05) , Невада, США, LNCS 3804, Springer Verlag, 5–7 декабря 2005 г., стр. 486–493.
  17. ^ Lyons, M.; Akamatsu, S.; Kamachi, M.; Gyoba, J. (1998). «Кодирование выражений лица с помощью вейвлетов Габора». Труды Третьей международной конференции IEEE по автоматическому распознаванию лиц и жестов. стр. 200–205. doi :10.1109/AFGR.1998.670949. ISBN 0-8186-8344-9. OL  11390549M. S2CID  1586662.
  18. ^ Gdyczynski, CM; Manbachi, A.; et al. (2014). «Оценка распределения направленности в трабекулярной кости ножки позвонка по изображениям микро-КТ». Physiological Measurement . 35 (12): 2415–2428. Bibcode : 2014PhyM...35.2415G. doi : 10.1088/0967-3334/35/12/2415. PMID  25391037. S2CID  206078730.

Внешние ссылки

Дальнейшее чтение