Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции Максимова.doc
Скачиваний:
10
Добавлен:
01.04.2025
Размер:
20.86 Mб
Скачать

6.1.4. Алгоритмы слияния-расщепления

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

Будем считать, что поле зрения D является растром размером mm, причем m= 2k (на рис. 6.8 k = 4). Отдельные точки растра (пиксели) назовем областями нулевого уровня и обозначим их , i, j = 1, ..., 2k. Определим теперь области первого уровня как объединения четырех смежных областей нулевого уровня, а именно:

S1i,I = S02i-1,2j-1 U S02i-1,2j U S02i,2j-1 U S02i,2j ,

причем i, j= 1, 2, ..., 2k-1.

При произвольном р k определим теперь области р-го уровня в виде объединения областей (р – 1)-го уровня:

Spi,I = Sp-12i-1,2j-1 U Sp-12i-1,2j U Sp-12i,2j-1 U Sp-12i,2j ,

i, j = 1,..., 2k-p. Последний уровень имеет номер k. Для k-го уровня есть только одна область, совпадающая с растром D.

Рис. 6.8. Разбиение растра размером 16  16 на области различных уровней:

а0-го; б 1-го; в – 2-го; г – 3-го

Отметим основные свойства указанных разбиений:

  • число областей уровня р, 0 р k, равно 22(k-p);

  • объединение областей любого уровня есть растр D;

  • каждая область уровня р состоит из 2 точек растра;

  • каждая область уровня (р + 1) есть объединение четырех смежных областей уровня р.

Первый шаг алгоритма состоит в анализе всех областей 1-го уровня и выделении среди них однородных областей, разброс яркости точек которых не превосходит фиксированного порога. Однородные области при дальнейшем анализе следующих уровней интерпретируются как один элемент изображения с яркостью, равной средней яркости точек соответствующей области. Таким образом, при выполнении критерия однородности для области S1i,I области S02i-1,2j-1 , S02i-1,2j, S02i,2j-1, S02i,2j отдельно не рассматриваются – происходит их слияние.

На следующем шаге рассматриваются области 2-го уровня, но не все, а только такие области S2i,I, для которых соблюдается условие: для каждой из областей S12i-1,2j-1 , S12i-1,2j, S12i,2j-1, S12i,2j выполнен критерий однородности (это проверяется на предыдущем шаге), т. е. они уже представляют собой один элемент изображения. Теперь критерий однородности проверяется для набора

S12i-1,2j-1 , …, S12i,2j , т. е. вычисляется разброс четырех значений яркости, соответствующих этим областям (теперь уже – элементам изображения). При выполнении условия однородности указанные области сливаются в единый элемент изображения с усредненной яркостью.

Такая процедура осуществляется последовательно на 1-, 2-, ..., l-м уровнях. Заканчивается она на некотором уровне l, когда выполнено следующее условие: для любой области Sli,I, либо ни одна из областей Sl-12i-1,2j-1 , …, Sl-12i,2j не является единым элементом изображения (информация об этом имеется после анализа (l – 1)-го уровня), либо те из этих областей, которые являются едиными элементами изображения, не удовлетворяют условию однородности, т. е. не могут быть слиты.

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

Для иллюстрации алгоритма разбиения растра на однородные области рассмотрим бинарное изображение на растре размером 16  16 (рис. 6.9). В случае бинарных изображений критерий однородности области формализуется весьма просто: область считается однородной, если все ее элементы либо «черные» либо «белые».

В результате приведенного правила разбиения растра на однородные области получаем разбиение, состоящее из двух областей З-го уровня размером 8  8, трех областей 2-го уровня размером 4  4, 14 областей 1-го уровня размером 2  2 и 24 оставшихся областей 0-го уровня, состоящих из одной точки.

Рис. 6.9. Разбиение бинарного изображения на однородные области:

а – исходное изображение; б – однороднне области;

1 – «черные» элементы; 0 – «белые»

Указанная процедура разбиения растра на однородные области связана только со слиянием областей – осуществляется движением от нулевого уровня «вверх». В некоторых случаях для оптимизации количества вычислений следует начать с некоторого q-го уровня (q  2). В этом случае кроме движения «вверх» возможно и движение «вниз», т. е. расщепление областей. А именно, если область некоторого уровня предварительно рассматривается как один элемент изображения, а соответствующие ей четыре части не удовлетворяют критерию однородности, происходит ее расщепление на четыре элемента изображения более низкого уровня.

Полученное разбиение растра используется для разметки точек изображения следующим образом. Пусть получено разбиение D = U1 U … U Ur. Вначале используется r меток, причем всем точкам множества Ui ставится в соответствие одна и та же метка с номером i. После этого осуществляется еще одна процедура слияния областей по следующему правилу: области Ui и Uj сливаются, т. е. идентифицируются одной меткой с номером min(i, j), если они являются смежными и если для объединения Ui U Uj выполнено условие однородности.

В результате второй процедуры слияния число меток обычно существенно уменьшается. Например, сегментация изображения на рис. 6.9 означает просто его раскраску, и число меток совпадает с числом компонент связности области, состоящей из 1. Итак, окончательное число меток равно двум.

Трудность реализации алгоритмов слияния-расщепления заключается, в первую очередь, в необходимости большого объема памяти ЭВМ для хранения промежуточных результатов (пирамидальных структур). Такие алгоритмы следует использовать для сегментации в тех случаях, когда в поле зрения необходимо выделить объекты существенно различных размеров. Такая ситуация в робототехнике встречается редко, поэтому метод слияния-расщепления используется чаще для получения промежуточного результата – выделения максимально большой области, соответствующей фону. Информация о такой области позволяет во многих случаях найти порог яркости, разделяющей фон и объекты.