Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_3D-mod.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
10.94 Mб
Скачать

12.5. Алгоритм разбиения области

Алгоритм разбиения области относится к алгоритмам, работающим в пространстве изображения.

В основе лежит гипотеза о способе обработки информации глазом и мозгом. Области, более насыщенные информацией, дольше приковывают к себе взгляд.

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

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

Обычно достаточно около 10 разбиений.

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

Вариант 1:

Область разбивается последовательно на четыре равные прямоугольные части (рис.12.6). Критерий простоты — объекты не попадают в область.

Рис. 12.6 Разбиение области

Первоначальное разбиение делит область на 4 части, не удовлетворяющие критерию простоты (в каждую часть попадают объекты). Поэтому необходимо деление дальше (на примере показано деление нижней левой четверти). Из вновь полученных новых четырех частей нижняя левая удовлетворяет критерию простоты. Далее она не рассматривается. А оставшиеся три делятся еще.

Вариант 2:

Существует четыре способа расположения объекта по отношению к части (рис. 12.7).

а б в г

Рис. 12.7 Способы расположения объекта по отношению к части

а – охватывающий, б – внутренний, в – пересекающий, г – внешний.

Область разбивается последовательно на четыре равные прямоугольные части. Критерий простоты — одна из четырех ситуаций:

  1. Не один многоугольник не пересекает область. Цвет части равен цвету фона.

  2. Есть один внутренний или пересекающий многоугольник. Цвет части складывается из двух цветов - цвета фона и цвета многоугольник

  3. Есть один охватывающий многоугольник. Цвет части равен цвету этого многоугольника.

  4. Есть несколько внутренних, пересекающих многоугольников и, как минимум, один охватывающий, расположенный ближе всех. Цвет части равен цвету охватывающего многоугольника.

Результат разбиения представлен на рис. 12.8.

Рис. 12.8 Разбиение области

Части, не требующие дальнейшего деления, помечены номером, соответствующим номеру ситуации критерия простоты. Разбиений становится меньше, но расчетов больше.

Вариант 3: область разбивается относительно вершин многоугольника (рис. 12.9).

Рис. 12.9 Разбиение области

В этом случае разбиений становится меньше, хотя и сами они реализуются медленнее.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]