Гонсалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде Matlab (2006) (1246139), страница 74
Текст из файла (страница 74)
Для автоматического выбора порога в работе [Савва!ез, 'гзгоог1э, 20021 предложена следующая интерактивная процедура: 1. Выбрать некоторую начальную оценку для значения порога Т. (Предлагаемая величина равна среднему значению между максимумом и минимумом яркости изображения). 2. Совершить сегментацию с помощью порога Т. В результате образуются две группы пикселов: Сг и Сз. Область Сг состоит из пикселов, яркость которых больше или равно Т, а яркость пикселов из Сг меньше Т. 3. Вычислить среднюю яркость пикселов ггг и гзз по областям Сг и Сз.
4. Вычислить новое значение порога: 1 т = — (р, + д,). 2 5. Повторять шаги с 2-го по 4-ый до тех пор, пока разность порогов Т для соседних итераций не станет меньше наперед заданного значения Т,. В примере 10.7 эта процепура реализуется средствами МАТЬАВ. с. с сс с ~ се~3~ Р.(гд) = — ', с) = 0,1,2,...,7 — 1, и где п — это общее число пикселов изображения, пд обозначает число пикселов, яркость которых равна величине г, а Š— число различных уровней яркости изображения.
Пусть теперь порог /д выбран так, что Со обозначает множество пикселов с уровнями яркости из [О, 1,..., )д — Ц, а Со — это множество пикселов с уровнями яркости из [)д, 1+ 1,...,  — Ц. Метод Отсу заключается в выборе порога Й так, что он максимизирует меоссклассовую дисперсию в~в, которая равна он = ыо(до Рт) + ы1(Р1 Рт) где ыо = ~ Рд(гд), ы1 = ~Рд(гд) д=о д=1с 1с — 1 1с — 1 Ро = ~ УРд(гд)(исо, Р1 = ~ УРд(гд)(ог1, рт ~~' с)рд(гд)! ~о' д=.о д=о Функция ягауеЬгевЬ принимает входное изображение, вычисляет его гистограмму, а затем находит пороговую величину, которая максимизирует сгв. Функция г возвращает порог в нормализованном виде из интервала [О, Ц, поэтому его следует правильно масштабировать перед использованием. Форма вызова функции имеет вид Т = 8гауоЬгевЬ(Т), где 1 — это входное изображение, а Т результирующий порог.
При сегментации изображения мы используем порог Т в функции 1ш2Ья, введенной в 8 2.7.2. Поскольку величина порога отнормирована к диапазону от 0 до 1, ее следует преобразовать перед использованием. Например, если 1 — это изображение класса п1пе8, то нужно сначала умножить Т на 255, а потом применять для пороговой обработки.
Пример 10.7. Вычисление глобальных порогов. В этом примере иллюстрируется описанная вьппе итеративная процедура, а так- же метод Отсу применительно к полутоновому изображению 1 отсканированного текста на рис. 10.13. Итеративный метод реализуется следующим способом: » Т = О.бе(аопЬ1е(ш1пИ(:))) + аопЬ1е(шах(1(:)))); » доне = 1а1ве; » яЬ11е "доле 8=~ >=Т; Тпехо = О.бх(шеал(1(8)) + шеап(1( 8))); В пакете 1РТ имеется функция ягауеЬгевЬ, которая вычисляет пороги по методу Отсу из [Оозп, 1979[.
Чтобы проверить этот метод, основанный на анализе гистограмм, мы представим нормализованную гистограмму в виде дискретной функции распределения вероятностей (~~424 1;иава 10. Се~м<итацьм изо6ра и гн~~й слове = аЬв(Т - Трехс) ." 0.5, О.г с ы» б «»Ар' 10.4. Сегментация на отдельные области Конечной целью процесса сегаиентации является разбиение изображения на области. В 8 10.1 и 10.2 эта задача решалась путем обнаружения границ областей на основе разрывов яркости, а в Э 10.3 для этой цели совершались пороговые преобразования, которые используют распределение определенных характеристик пикселов, например, яркостей или цветов.
В этом параграфе рассматриваются методы сегментации, основанные на прямом поиске подходящих областей. 10.4.1. Постановка задачи Пусть В обозначает всю область изображения. Сегментацией называется процесс разбиения области В на и подобластей Вы Вз,..., В„таких, что а) () Л,=В; г=1 б) Л, является связной областью для любого 1 = 1, 2,..., и. в) Вг П В = и для всех 1 и у, 1 ф ~.
г) Р(Л,) = ТМ)Е при т = 1,2,..., п. д) Р(В, О Вт) = ГАЕРЕ для любых двух смежных областей В, и В 1. Здесь Р— это некоторый логический предикат~, определенный на точках множества В„а И обозначает пустое множество. Условие (а) означает, что сегментация должна быть полной, т. е: каждый пиксел изображения принадлежит какой-то области. Условие (б) говорит о том, что точки каждой области должны быть связными в некотором оговоренном смысле (например, они 4- или 8-связны). Условие (в) указывает на то, что области не должны пересекаться. Условие (г) относится к свойствам, которые должны соблюдаться для каждого пиксела нз одной области, например, Р(В,) = ТЕПЕ, если все пикселы в В, имеют одинаковую яркость. Наконец, условие (д) означает, что прилегающие области Л, и В различаются в смысле преднката Р.
10.4.2. Выращивание областей Как ясно из назнания, в»яращивание областей представляет собой процедуру, которая группирует пнкселы или подобласти в более крупные области по заранее заданным критериям роста. Основной подход состоит в том, что вначале берется множество точек, играющих роль «центров кристаллизации», а затем на них наращиваются области путем добавления к каждому центру тех соседних пикселов, которые по своим свойствам близки к центру кристаллизации (например, имеют яркость или цвет в определенном диапазоне).
Выбор множества, состоящего из одной или более начальных точек, часто зависит от природы задачи, как будет видно из примера 10.8. При отсутствии априорной информации процедура состоит в вычислении одного н того же набора свойств для каждого пиксела. В конечном счете, эти свойства будут использо- 1В контексте 1 9.4, две различные области Л, и Л называются примыкающими, если их объединение является комповентой связности.
Логическим предикатом называется функция, принимающая только два значения: истина (таВЕ) и ложь (РАЕЯЕ). (426» О. « ваться для отнесения пиксела к той или иной области в процессе выращивания. Если в результате вычислений обнаруживаются кластеры значений, то пикселы, близкие по своим свойствам к центроидам таких кластеров, могут выбираться в качестве центров кристаллизации. Выбор критериев сходства зависит не только от конкретной рассматриваемой задачи, но и от вида имеющихся данных, из которых состоит изображение. Например, анализ данных спутниковой съемки земной поверхности основан на цветовой информации, и он стал бы значительно затруднен или невозможен при отсутствии цветовых данных. Если изображения монох1юмные, анализ областей делается с использованием дескрипторов, которые основаны на значениях яркости и пространственных характеристиках (таких, как текстура или статистические моменты).
Дескрипторы, применяемые для описания областей изображения, обсуждаются в гл. 11. Использование при выращивании областей одних лишь дескрипторов может привести к ошибочным результатам, если это делается в отрыве от информации о смежности или связности областей. Например, представим себе случайную схему расположения пикселов, принимающих только три значения яркости. Если строить «области», группируя вместе пикселы с одинаковой яркостью и не обращая внимания на их связность, то это приведет к сегментации, лишенной смысла в контексте нашего обсуждения.
Другая проблема при выращивании областей состоит в том, чтобы сформулировать правило остановки этого процесса. По идее, выращивание некоторой области следует прекратить, когда в изображении больше нет пикселов, удовлетворяющих критериям присоединения к данной области. Такие критерии, квк яркость, текстура и цвет, являются по своей природе локальными и не учитывают «историю» выращивания области. Можно повысить производительность алгоритма выращивания областей за счет привлечения дополнительных критериев, использующих, например, такие понятия, как размеры и форма выращиваемой области, а также сходство между пикселом-кандядатом и пикселами, объединенными к данному моменту (скажем, путем сравнения значений яркости нового кандидата и средней яркости уже выращенной области). Использование дескрипторов такого типа основано на предположении, что имеется хотя бы грубая модель ожидаемых результатов.
Чтобы проиллюстрировать основные принципы сегментации областей в системс МАТТ АВ, мы напишем функцию гебьопбтоя, которая делает выращивание областей. Ее общий синтаксис имеет вид 1ех1~я, йй, Я1, Т13 = геяъопягояИ, Я, Т), где Х вЂ” это сегментируемое изображение, а параметр Я может быть массивом (с размерами как у 1) или скаляром.
Если Я вЂ” массив, то он должен содержать 1 в тех позициях, где расположены центры кристаллизации и Π— во всех остальных местах. Этот массив можно определить с помощью визуальной оценки изображения или применяя какую-то дополнительную внешнюю функцию построения центров кристаллизации. Если параметр Я является скаляром, то он задает значение яркости пикселов, которые становятся центрами кристаллизации. Аналогично, Т может быть массивом (с размерами, как у Х) илн скаляром. Если Т— О.~.
С д * 1 427) массив, то его элементы трактуются как локальные пороговые значения для 1. В противном случае, скаляр Т определяет глобальный порог. Значение(я) порога(ов) применяется для проверки соседних (8-связных) пикселов для центров кристаллизации на предмет того, достаточно ли они «похожи» на них.
Например, если 3 = а и Т = Ь, и мы сравниваем яркости, то пиксел называется похожим на а (в смысле прохождения данного теста), когда модуль разности их значений не больше Ь. Кроме того, если рассматриваемый пиксел является 8-связным с одним или несколькими центрами кристаллизации, то этот пиксел рассматривается как возможный элемент одного или нескольких областей.
Такой же подход применяется в случае, когда Я и Т являются массивами, и сравнение выполняется с привязкой центров кристаллизации и пороговых значений к конкретным положениям тестируемых пикселов. Выходом Е служит сегментированное изображение, причем элементы каждой области помечаются одним и тем же целым числом. Параметр МК равен числу выделенных областей. Параметр 31 является изображением, на котором отображены центры кристаллизации, а Т1 — это изображение, содержащее пикселы, которые прошли пороговый тест до их обработки на предмет связности. Оба изображения 31 и Т1 имеют размеры, как у 1. Текст программы ге31опЕгов следуюп)ий.