Напоминание

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


Авторы: Жармухамбет Миржан Ерланулы, Таныкпаева Балауса Ерденовна
Должность: магистр естественных наук, старший преподаватель
Учебное заведение: Костанайсий Государственный Университет им. А. Байтурсынова
Населённый пункт: Костанай
Наименование материала: Статья
Тема: Сегментация цветных изображений на основе кластеризации по методу k - средних.
Раздел: высшее образование





Назад




Сегментация цветных изображений на основе кластеризации по

методу k-средних.

Сегментация изображения представляет собой разделение или разбиение

изображения

на

области

по

сходству

свойств

их

точек.

Наиболее

часто

сегментацию проводят по яркости для одноцветного изображения и цветовым

координатам для цветного изображения. Применяется также сегментация,

основанная

на

контурах,

сегментация,

при

которой

в

каче стве

разделительного признака используется текстура и сегментация по форме.

Существует возможность просмотра шести основных цветов изображения:

фоновый

цвет,

красный,

зеленый,

пурпурный

(фиолетовый),

желтый

и

красно-фиолетовый. Визуально эти цвета очень легко различаются между

собой. Цветовое пространство L*a*b* (еще известное как CIELAB или CIE

L*a*b*) позволяет четко отмечать эти визуальные различия.

Цветовое пространство L*a*b* получено на основе трехцветных значений

CIE

XYZ.

Пространство

L*a*b*

включает

информацию

о

значении

интенсивности 'L*', значении цветности 'a*' (показывает какой цвет выбран

на красно-зеленой оси) и значении цветности 'b*' (показывает какой цвет

выбран на голубо-желтой оси).

При анализе цветов используются окрестности небольших размеров и при

их вычислении берется усреднение в пространстве L*a*b*. Эти цветовые

метки можно использовать при классификации каждого пикселя.

Каждый цветовой маркер представляется некоторыми значениями 'a*' и 'b*'.

Поэтому

существует

возможность

классификации

каждого

пикселя

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

и цветовым маркером. Минимальное евклидовое расстояние соответствует

минимальному расстоянию между рассматриваемыми пикселями и маркером.

Например, если дистанция между двумя пикселями и красным цветовым

маркером является минимальной, то пиксели будут отмечены как красные.

Сегментация объектов

Д л я

н а ч а л а

н е м н о г о

т е о р и и :

Сегментация

это

процесс

разделения

цифрового

изображения

на

несколько сегментов (множеств пикселей). Проще говоря, это вещь, которая

позволяет

определить

какие

пиксели

из

данного

множества

относятся

к

F e r r a r i ,

а

к а к и е

к

P e u g e o t .

Очень

эффективным

с

точки

зрения

вычислительных

ресурсов

является

использование

для

сегментации

методов

кластерного

анализа.

Суть

кластеризации состоит в том, что все исходные объекты (в данном случае

пиксели

)

разбиваются

на

несколько

не

пересекающихся

групп

таким

образом,

чтобы

объекты,

попавшие

в

одну

группу,

имели

сходные

характеристики,

в

то

время

как

у

объектов

из

разных

групп

эти

характеристики

должны

значительно

отличаться.

Полученные

группы

называются кластерами. Исходными значениями в простейшем способе для

кластеризации являются координаты пикселя (x, y), в более сложных случаях,

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

( x ,

y ,

I ( x ,

y )

) ,

г д е

I ( x ,

y )

г р а д а ц и и

с е р о г о

и пятимерный вектор если используется RGB.

Метод к-средних

Центроид — точка которая является центром кластера.

k-средних (k-means) — наиболее популярный метод кластеризации.

Алгоритму широко отдается предпочтение из-за его простоты реализации,

большой скорости (а это очень важно при работе с видео).

Действие алгоритма таково, что он стремится минимизировать суммарное

квадратичное отклонение точек кластеров от центров этих кластеров. В

простонародье говоря, это итеративный алгоритм, который делит данное

множество пикселей на k кластеров точки, которых являются максимально

приближенными к их центрам, а сама кластеризация происходит за счет

смещения этих же центров. Такой себе принцип разделяй и властвуй.

Также следует оговорить то, что метод к-средних очень чувствительный к

шуму, который может существенно исказить результаты кластеризации.Так

что в идеале, перед кластеризацией, нужно прогнать кадры через фильтры

предназначиные для его уменьшения.

Вот собственно сам принцип простейшей кластеризации методом к-средних:

1.

Надо выбрать из множества k пикселей те пиксели, которые будут

центроидами соответствующих k кластеров.

Выборка начальных центроидов может быть как рандомной так и по

определенному алгоритму.

2.

Входим в цикл, который продолжается до тех пор, пока центроиды

кластеров не перестанут изменять свое положение.

3.

Обходим каждый пиксель и смотрим, к какому центроиду какого

кластера он является близлежащим.

4.

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

центроида.

5.

Перебрали все пиксели? Теперь нужно высчитать новые координаты

центроидов k кластеров.

6.

Теперь проверяем координаты новых центроидов. Если они

соответственно равны предыдущим центроидам — выходим из цикла,

если нет возвращаемся к пункту 3.

Преобразование изображения из цветовой системы RGB в цветовую

систему L*a*b*.

Какое количество цветов видно на изображении, когда не принимать во

внимание возможность комбинации яркостей? На самом деле их три: белый,

голубой и розовый. Следует отметить различия этих цветов между собой.

Цветовое пространство L*a*b* (оно еще известно как CIELAB или CIE

L*a*b*) дает возможность различать эти визуальные различия.

Цветовое пространство L*a*b* получено на основе трехцветных значений

CIE XYZ. Пространство L*a*b* включает информацию о значении

интенсивности 'L*', значении цветности 'a*', которое показывает какой цвет

выбран на красно-зеленой оси и значение цветности 'b*' показывает какой

цвет выбран на голубо-желтой оси. Вся информация о цветах содержится в

значениях 'a*' и 'b*'. Оценить разницу между двумя цветами можно с

использованием евклидового расстояния.

Преобразуем изображение в цветовое пространство L*a*b* с использованием

функций makecform и applycform.

Классификация цветов в пространстве 'a*b*' с использованием

кластеризации (метод k-средних).

Кластеризация приводит до разделения объектов на группы. Кластеризация

методом k-средних приводит также к локализации объектов в пространстве.

Поиск разделения, т.е. какой объект к какому классу принадлежит,

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

Далее на основании информации о цветах в пространстве 'a*b*', каждому

пикселю объекта присваивается значение 'a*' и 'b*'. Используем

кластеризацию методом k-средних для разделения объектов на три кластера.

Для этого используем евклидовую метрику.

Присвоение меток каждому пикселю изображения на основе метода k-

средних.

Для каждого объекта на исходном изображении метод k-средних возвращает

индекс соответствующего кластера. Значение параметра cluster_center,

которое получено в результате применения метода k-средних будет

использовано при дальнейшей демонстрации метода.



В раздел образования