vesnat.ru страница 1
скачать файл

Оглавление


Линейные фильтры. 2

Mean фильтр. 2

Фильтр Гаусса. 2

Фильтр LoG. 3

Motion blur. 4

Стохастические фильтры. 7

Медианный фильтр. 7

Медианный фильтр – это нелинейное преобразование изображения, в большинстве случаев применяющееся для удаления (или подавления) шумов. 7

Сегментация. 8

k-means (k средних). 8

Mean shift 14

Фильтры зашумления. 15

Белый шум. 15

Пыль. 15


Соль и перец. 15

Морфологический анализ изображения. 15

Эрозия. 15

Дилатация. 15

Преобразования по изменению цветности. 15

Инверсия. 15



Линейные фильтры.


Линейным фильтром называется такое преобразование изображения , что для любых двух изображений и любых констант выполняется:

Линейный фильтр можно представить через интеграл свертки:








(1)

где - ядро преобразования. Обычно ядро отлично от нуля на небольшом ограниченном множестве, либо очень быстро убывает (например гауссиан).

Так как изображение является дискретным сигналом, вместо интеграла удобнее использовать сумму, а ядро представлять как матрицу, размерность которой будет невелика в силу того, что ядро отлично от нуля в небольшой области, , где – радиус ядра. Тогда формула (1) преобразуется в








(2)

Mean фильтр.


Простейшим примером линейного фильтра является mean-фильтр. Mean фильтр изменяет значения каждого пикселя на среднее от его соседей. Для mean фильтра радиуса матрица преобразования имеет вид

а формула (2) вычисляет среднее значение в квадрате .


Фильтр Гаусса.


Фильтр гаусса это линейный фильтр с ядром Гаусса

Гауссиан всегда больше нуля, но почти весь сосредоточен в области вокруг нуля (правило 3-х сигм), поэтому сильно удаленные пиксели почти не будут вносить вклада.

Для дискретных преобразований часто используются дискретные аппроксимации гауссина. Например для , можно считать, что , а матрица преобразования имеет вид:



gauss.jpg

Рисунок . График двумерного гауссиана.

Фильтр LoG.


Лапласиан изображения с интенсивностью пикселей :

Применение линейного фильтра с ядром выделяет на изображении области быстрого изменения интенсивности, благодаря чему облегчается определение краев отдельных объектов на изображении. Такой фильтр очень чувствителен к шуму, поэтому необходимо перед его применением произвести «сглаживание» изображения, например, фильтром Гаусса.

Так как операция свертки линейна, имеется возможность предварительно найти свертку фильтра гаусса и Лапласиана, и потом уже применять полученный фильтр к изображению.

Функция, получаемая в результате свертки двух фильтров, имеет вид:



Перед применением фильтра необходимо указать два параметра:



  • R – радиус (размер ядра фильтра)

  • – дисперсия в ядре Гаусса.

Пример:



Рисунок . Применение фильтра LoG (r = 3, = 1)

Motion blur.


Motion blur применяется для создания эффекта движения. В результате применения этого фильтра в каждый пиксель изображения заменяется на среднее тех пикселей, которые пришли в эту точку в результате движения.

nasa.jpg

Рисунок . Исходное изображение.

nasa-motion.jpg

Рисунок . Применение эффекта Motion blur c движением по прямой.

Рассмотрим Motion blur в случае прямолинейного движения.

Представлять фильтр в виде (2) неудобно потому что матрица будет очень большого размера, но сильно разреженной (там будут 1 только на траектории), поэтому будем действовать иначе.

Зададим величину сдвига и скорость движения и время наблюдение движения . В каждый момент времени к пикселю исходного изображения будем добавлять пиксель, который придет в него в данный момент времени. Когда пройдет время , закончим итерации и поделим значение в точке на количество пикселей, пришедших в нее.

Аналогично можно выполнить фильтр Zoom blur (движение от центра изображения к краям) и Spin blur (вращение изображения вокруг центра).

flower.jpgflower_motion_135_03_10.jpg

flower_zoom_2_30.jpgflower_spin_25_5.jpg

Рисунок . Применение Motion blur, Zoom blur и Spin blur.
Cлева направо, cверху вниз: 1-Исходное изображение; 2-Motion blur (сдвиг на 30% от размеров изображения под углом 135 градусов, 10 итераций); 3-Zoom blur (увеличение в 2 раза, 30 итераций); 4-Spin blur (поворот на 25 градусов, 5 итераций).


Стохастические фильтры.

Медианный фильтр.

Медианный фильтр – это нелинейное преобразование изображения, в большинстве случаев применяющееся для удаления (или подавления) шумов.


Основная идея этого фильтра состоит в том, чтобы заменить каждый пиксель медианой из набора его соседних элементов («шаблона»). Для этого необходимо отсортировать каждый такой набор и выбрать из него значение, стоящее на среднем месте (будем всегда брать шаблоны с нечетным числом элементов).

Параметр фильтра – r (радиус), т.е. размер шаблона.

Пример:



Рисунок . Применение медианного фильтра (r = 2) к зашумленному изображению


Сегментация.


Сегментация – это процесс разделения пикселей изображения на несколько множеств (сегментов) для упрощения анализа изображения. Пиксели сегментов могут быть закрашены одним цветом, а могут просто получать метки. 140px-vector_norms.svg.png

Сегментация, является частным случаем кластеризации данных (разбиение точек всего множества на некоторые подмножества по критерию близости в заданной метрике). Изображение можно представить как множество точек в пространстве , так каждый пиксель имеет две пространственные координаты и три цветовые. Так же можно использовать яркость и другие характеристики.

Метрикой в таком пространстве может быть взвешенная сумма пространственных и цветовых метрик, например


Рисунок . Разные виды метрик

где - пространственная и цветовая компоненты точки . Чаще всего применяются метрики с параметрами (Error: Reference source not found). Чем больше и , тем большее количество точек считаются близкими. На рисунке видно, что площадь единичного шара растет с ростом параметра. Иногда применяются метрики с параметрами меньше 1.

Сегментация изображения активно применяется в медицине, для определения по снимкам мест опухолей и патологий, в изучении объектов и местности спутниковым снимкам, в машинном зрении для распознавания объектов и человеческих лиц.

k-means (k средних).


Одним из наиболее популярных алгоритмов кластеризации является алгоритм k-means. Базовый алгоритм выглядит так:

  1. Выбрать k центров кластеров, случайно или на основании некоторой эвристики.

  2. Поместить каждый пиксель изображения в кластер, центр которого ближе всего к этому пикселю.

  3. Заново вычислить центры кластеров, усредняя все пиксели в кластере.

  4. Повторять шаги 2 и 3 до сходимости (например, когда пиксели будут оставаться в том же кластере).

Преимуществами это алгоритма является простота и гарантированная сходимость. Недостатки состоят в том, что необходимо знать заранее количество кластеров и их расположение и как следствие сильная зависимость алгоритма от начальных условий. Второй недостаток состоит в том, что алгоритм может сходиться не к оптимальному решению.

124px-k_means_example_step_1.svg.png139px-k_means_example_step_2.svg.png139px-k_means_example_step_3.svg.png139px-k_means_example_step_4.svg.png

Рисунок . Пример работы алгоритма для кластеризации точек в двумерном пространстве.

Для применения этого алгоритма к задаче сегментации изображения можно взять следующую метрику:



Выбирая различные можно определить что более важно: близость точек на картинке ( близко к 1) или близость точек по цвету ( близко к нулю).

Если , то координаты точек никак не влияют на процесс и кластеры определяются только цветами. Тогда изначально можно равномерно распределить кластеры по палитре и таким образом выполнить пункт 1, указанного выше алгоритма. Кластеризацию такого типа можно использовать для раскраски изображения в k цветов, но эффект не всегда получается хорошим из-за того, что в метрике не учитывается яркость, важная для человеческого восприятия.

Если считать метрику по цвету как:



то получаются более подходящие оттенки.



desert.jpg

Рисунок . Исходное изображение.

desert_16_color_bad.jpg

Рисунок . Изображение раскрашенное в 16 цветов методом k-means без учета яркости.



desert_16_color_good.jpg

Рисунок . Изображение раскрашенное в 16 цветов методом k-means с учетом яркости.

Попробуем раскрасить это изображение в 16 цветов, используя k-means кластеризацию, чтобы цвета были наиболее подходящие. В первом случае будем использовать обычную цветовую метрику (Рисунок ), а во втором с учетом яркости (Рисунок ).

Видно, что во втором случае оттенки и тени на холмах лучше повторяют исходное изображение.


При запуске алгоритма с необходимо определить пространственное положение кластеров. Для этого сделаем один шаг алгоритма с и разобьем все пиксели по цветам. Далее мы можем найти центр каждого кластера как среднее арифметическое положений входящих в него точек.

Рассмотрим как меняется результат кластеризации при увеличения влияния близости пикселей в пространстве.



small_test_2.jpg

Рисунок . Исходное изображение.

small_test_02_20.jpg

Рисунок . 20 кластеров, .

small_test_04_20.jpg

Рисунок . 20 кластеров, .

small_test_06_20.jpg

Рисунок . 20 кластеров,

small_test_08_20.jpg

Рисунок . 20 кластеров,

Mean shift



Фильтры зашумления.

Белый шум.

Пыль.

Соль и перец.




Морфологический анализ изображения.

Эрозия.

Дилатация.




Преобразования по изменению цветности.

Инверсия.

скачать файл



Смотрите также:
Линейные фильтры. 2 Mean фильт
77kb.
Юерматоглифищ. Эмбриология и анатомия Кожные гребешки (папиллярные линии) представляют собой линейные утолщения эпидермиса
937.16kb.
8 Цифровые фильтры
1607.72kb.
В зависимости от строения основной цепи полимеры делятся на линейные, разветвленные, и пространственные структуры
20.61kb.