Открыть сервис

Лапласиан гауссиана

Лапласиан гауссиана (также известный как LoG, от англ. Laplacian of Gaussian) — это оператор в области компьютерного зрения и обработки изображений, представляющий собой комбинацию фильтра Гаусса (сглаживания) и оператора Лапласа (выделения границ). Используется для обнаружения резких перепадов яркости (границ, линий, точек) на изображении, при этом предварительное размытие подавляет влияние шума.

Математическое определение

Лапласиан гауссиана является результатом применения оператора Лапласа (∇²) к двумерной функции Гаусса G(x, y, σ). Функция Гаусса в двумерном пространстве определяется как:

\[ G(x, y, \sigma) = \frac{1}{2\pi\sigma^2} e^{-\frac{x^2 + y^2}{2\sigma^2}} \]

где σ — стандартное отклонение (масштаб), определяющее степень размытия. Оператор Лапласа — это сумма вторых частных производных:

\[ \nabla^2 = \frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y^2} \]

Применяя оператор Лапласа к функции Гаусса, получаем выражение для LoG:

\[ \text{LoG}(x, y, \sigma) = \nabla^2 G(x, y, \sigma) = \frac{\partial^2 G}{\partial x^2} + \frac{\partial^2 G}{\partial y^2} \]

В явном виде формула Лапласиана гауссиана записывается как:

\[ \text{LoG}(x, y, \sigma) = -\frac{1}{\pi\sigma^4} \left(1 - \frac{x^2 + y^2}{2\sigma^2}\right) e^{-\frac{x^2 + y^2}{2\sigma^2}} \]

Эта функция имеет центральную положительную область (для малых значений r² = x² + y²) и отрицательную периферию, что придаёт ей характерную форму «мексиканской шляпы» (или «сомбреро»). Нулевое значение функции достигается на окружности радиусом r = σ√2.

Свойства

  • Изотропность: LoG симметричен относительно поворота, то есть одинаково реагирует на границы любой ориентации.
  • Масштабная зависимость: параметр σ определяет размер выявляемых деталей. Малые σ позволяют находить тонкие линии и мелкие объекты, большие σ — крупные структуры.
  • Подавление шума: предварительное гауссово размытие (встроенное в оператор) уменьшает влияние высокочастотных шумов, которые усиливаются при дифференцировании.
  • Нулевой интеграл: сумма всех элементов ядра LoG равна нулю (с точностью до дискретизации), что обеспечивает нулевую реакцию на однородные области.

Применение в компьютерном зрении

Обнаружение границ

Одним из классических применений LoG является алгоритм Марра — Хилдрета (Marr-Hildreth edge detection), предложенный в 1980 году. Алгоритм включает следующие шаги:

  1. Свёртка изображения с ядром LoG заданного масштаба.
  2. Поиск точек, в которых результат свёртки пересекает ноль (zero-crossing). Эти точки соответствуют резким перепадам яркости, то есть границам объектов.

Метод Марра — Хилдрета отличается от детектора Кэнни тем, что не требует пороговой обработки для выделения границ, а использует пересечение нуля. Однако на практике LoG часто применяется в комбинации с пороговыми методами.

Обнаружение «пятен» (blob detection)

LoG используется в детекторе «пятен» (blob detector), который ищет области на изображении, отличающиеся по яркости от окружения. Для этого изображение свёртывается с LoG при различных значениях σ. Локальные максимумы модуля отклика LoG в пространстве (x, y, σ) соответствуют центрам «пятен» определённого размера. Этот подход лежит в основе масштабно-инвариантного детектора, известного как SIFT (Scale-Invariant Feature Transform), хотя в SIFT используется разность гауссианов (DoG) как аппроксимация LoG.

Улучшение изображений

LoG применяется для повышения резкости изображений (unsharp masking). Вычитание результата свёртки с LoG (или добавление с противоположным знаком) из исходного изображения усиливает высокочастотные детали, делая границы более чёткими.

Связь с разностью гауссианов (DoG)

На практике Лапласиан гауссиана часто аппроксимируется разностью двух гауссианов (Difference of Gaussians, DoG) с различными σ:

\[ \text{DoG}(x, y, \sigma_1, \sigma_2) = G(x, y, \sigma_1) - G(x, y, \sigma_2) \]

При отношении σ₁ / σ₂ ≈ 1,6 DoG хорошо приближает LoG. Это свойство используется в алгоритме SIFT, где DoG вычисляется быстрее и проще, чем точный LoG. DoG также применяется в нейрофизиологии для моделирования рецептивных полей ганглиозных клеток сетчатки.

Реализация в цифровой обработке изображений

В компьютерных программах LoG реализуется в виде дискретного ядра свёртки (матрицы) размером, обычно кратным 6σ (например, для σ = 1,5 ядро может быть 9×9). Значения ядра вычисляются по формуле LoG, затем нормализуются так, чтобы сумма положительных элементов равнялась сумме отрицательных по модулю. Для ускорения вычислений часто применяют разделение фильтра: сначала выполняют гауссово размытие, а затем применяют оператор Лапласа (например, с помощью ядра Лапласа 3×3). Однако такой подход менее точен, чем прямое применение LoG.

Критика и ограничения

  • Чувствительность к масштабу: LoG требует выбора подходящего σ для конкретного изображения. Неправильный выбор может привести к пропуску границ или к ложным срабатываниям.
  • Вычислительная сложность: прямое вычисление LoG для больших σ требует больших ядер свёртки, что замедляет обработку. Использование DoG или пирамиды масштабов частично решает эту проблему.
  • Неустойчивость к текстурам: на изображениях с мелкой текстурой LoG может давать множество ложных пересечений нуля, что затрудняет выделение значимых границ.

Источники

  • Marr, D., & Hildreth, E. (1980). Theory of edge detection. Proceedings of the Royal Society of London. Series B. Biological Sciences, 207(1167), 187–217.
  • Lowe, D. G. (2004). Distinctive image features from scale-invariant keypoints. International Journal of Computer Vision, 60(2), 91–110.
  • Gonzalez, R. C., & Woods, R. E. (2018). Digital Image Processing (4th ed.). Pearson.
  • Lindeberg, T. (1998). Edge detection and ridge detection with automatic scale selection. International Journal of Computer Vision, 30(2), 117–156.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →