Научная статья на тему 'Классификационное описание динамических объектов в задачах синтеза изображения для системы визуализации'

Классификационное описание динамических объектов в задачах синтеза изображения для системы визуализации Текст научной статьи по специальности «Математика»

CC BY
84
30
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Гусятин Владимир Михайлович, Филимончук Михаил Анатольевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The classification description of dynamic objects in the tasks of image synthesis for the visualization system

The compilation method of the classification description is offered. The relations for build-up of the compilation algorithm of the classification description are reduced. The conditions of hit of the dynamic object primitives in the classification domain are defined. The classification description allows reducing visualization time of the dynamic object by a ray-tracing method.

Текст научной работы на тему «Классификационное описание динамических объектов в задачах синтеза изображения для системы визуализации»

УДК 681.323

КЛАССИФИКАЦИОННОЕ ОПИСАНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ В ЗАДАЧАХ СИНТЕЗА ИЗОБРАЖЕНИЯ ДЛЯ СИСТЕМЫ ВИЗУАЛИЗАЦИИ

ГУСЯТИНВ.М., ФИЛИМОНЧУК М.А.___________

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

При подготовке базы данных для синтеза изображений динамических объектов (ДО) методом обратного трассирования обычно используется стандартный перечень типов описаний: геометрическое, кинематическое, динамическое и текстурное. Типы и способы описания ДО являются неотъемлемой составной частью общего процесса отображения и в значительной мере определяют производительность алгоритма синтеза изображений (АСИ) [1]. Поэтому разработка новых типов и способов описания ДО, которые повышают производительность алгоритма синтеза изображения, является актуальной задачей.

1. Постановка задачи

Обычно ДО составляются (“конструируются”) из графических примитивов (ГП), причем чем сложнее форма и степень детализации объекта, тем больше ГП требуется для реалистичного отображения. В процессе синтеза изображений методом обратного трассирования проекционных лучей (ПЛ) много времени затрачивается на ГП (назовем их “лишние” примитивы), с которыми не пересекаются ПЛ, что снижает производительность АСИ. При визуализации достаточно сложных ДО, состоящих из сотен и более ГП, уменьшение количества “лишних” примитивов, попавших в обработку в процессе отображения ДО, позволяет существенно повысить производительность АСИ.

Пространство, занимаемое ДО и ограниченное его оболочкой [1], предлагается разделить на подпространства-домены, которые нумеруются (рис.1). Геометрическая форма доменов и оболочки определяется в основном формой Д О. На этапе составления описания ДО формируется список, где для каждого номера домена перечислены ГП, поверхность которых находится в данном домене. Этот список определим как классификационное описание. Здесь важно отметить, что оно должно быть инвариантно в случае изменения положения и ориентации ДО в пространстве.

Рассмотрим случай, когда подвижный объект состоит из ГП, которые являются поверхностями второго порядка или плоскостями. Каждый i-й ГП

задан уравнением в неявной форме F;(x,y,z) = 0 , причем таким образом, что для всех точек, принадлежащих объему ДО, выполняется условие

Fi(x,y,z)<0 . (1)

В общем случае каждый i-й ГП может быть ограничен в пространстве n плоскостями, также заданными уравнениями в неявной форме

Fnj(x,y,z) = 0 , где j = 1, n — номер ограничивающей

плоскости Fn. Условимся, что отображается та часть поверхности i-го ГП, которая находится в отрицательном полупространстве каждой ограничивающей плоскости. Тогда для каждой точки P(x,y,z) отображаемой поверхности i-го ГП справедлива система отношений

Fi(x,y,z) = 0 , (2)

[Fnj(x,y,z)]i ^ 0 для всех j = 1, n.

Ограничимся случаем ортогональной классификации, когда оболочкой ДО является куб или параллелепипед [1]. Полагаем, что домены, на которые подразделяется пространство оболочки, есть кубы с длиной ребра 1. Будем также исходить из того, что в общем случае в процессе классификации всегда может существовать ситуация, при которой длина ребра куба соотносится с наибольшим размером сечения классифицируемой поверхности какой-либо гранью куба следующим образом:

l > ls, (3)

где l s — наибольший размер сечения.

2. Алгоритм составления классификационного описания

С учетом (1), (2) и (3) рассмотрим условия принад -лежности i-го ГП k-му домену, где k = 1,K . Возможны следующие случаи, при которых это условие может выполняться.

РИ, 2002, № 2

75

Случай 1. Поверхность i-ro ГП не отсечена ограничивающими плоскостями и полностью (либо некоторая ее часть) находится внутри объема k-го домена.

Случай 2. Поверхность i-го ГП отсечена ограничивающими плоскостями и некоторая ее часть, либо вся поверхность, находится внутри объема k-го домена.

Введем предикатное описание случаев 1, 2. Обозна-

чим предикат Pc , где с є {1,2,3...} соответственно для каждого случая. При этом

Pc =

1, если условие принадлежности для

данного случая выполняется,

0 — в противном случае

Введем также двоичную переменную а. Если i-й ГП имеет ограничивающие плоскости, то а=1, в противном случае а=0. Используя (4), запишем уравнение переключательной функции, позволяющее вычислить условие принадлежности:

f = a • P1 v a • P2 . (5)

Из (4) и (5) следует, что f=1, если условие принадлежности выполняется, и f=0 — в противном случае.

необходимо и достаточно не более трех проходов ITA для установления принадлежности i-го ГП k-му домену.

Доказательство. На рис.2 представлено возможное взаимное положение i-го ГП и k-го домена, соответствующее случаю 1. Поскольку предполагается произвольный выбор ребра, по которому выполняется первый проход итерационного алгоритма — ITA1, то рассмотрим все возможные варианты. Пусть это будет ребро DE (вариант 1). Тогда после выполнения ITA1 будет найдена точка M, наиболее близко расположенная к поверхности

F (x,y,z) = 0 (свойство 2).

Вычисление предикатов Pi , P2 будем выполнять с помощью итерационного алгоритма ITA, изложенного в [2]. Ниже покажем применимость ITA для решения подобных задач. Для этого отметим ряд свойств ITA.

Свойство 1. Если существует точка пересечения некоторой прямой, в общем случае векторной,

rp(x,y,z) (p — точка пересечения) с поверхностью

F(x, y, z) = 0 , то ITA позволяет на каждом шаге итераций установить выполнение условия (1) для точки, находящейся на этой прямой и соответствующей этому шагу итераций.

Свойство 2. Если отсутствует точка пересечения некоторой прямой ф с поверхностью F(x, y, z) = 0 , то ITA по завершении итерационного процесса позволяет найти на этой прямой точку, наиболее близко расположенную к этой поверхности.

Следует подчеркнуть, что рассмотренные свойства ITA, естественно, имеют место и для случая двухмерного пространства, т.е. для Гр(х,у) и F(x,y) = 0 .

В дальнейшем, для упрощения изложения алгоритма составления классификационного описания, определим итерационный процесс ITA как проход с указанием нумерации и введем обозначения: проход 1 — ITA1 и т.д. Используя свойства (1) и (2), докажем ряд утверждений, позволяющих вычислить предикаты Pi, P2 с помощью проходов ITA.

Утверждение 1. Если в процессе классификации встречается ситуация, когда i-й ГП и k-й домен находятся в таком взаимном пространственном положении, которое соответствует случаю 1, то

Второй проход-ITA2 выполняется по прямой MN, лежащей на грани DBHE и перпендикулярной к ребру DE. В соответствии со свойством 2 на прямой MN находим точку K. Третий проход-ПЛЗ выполняется по прямой KL, перпендикулярной к граням D BHE и ACFG, на которой расположена точка L. Прямая KL, как видно из геометрических построений, обязательно пересекает поверхность

F (x, y,z) = 0 и, следовательно, ITA3 позволяет (свойство 1) проверить выполнение условия (1), т.е. найти хотя бы одну точку, принадлежащую прямой KL и объему либо поверхности ГП F; (x, y,z) = 0 . Из этого следует, что поверхность F (x, y,z) = 0 принадлежит домену.

Рассмотрим вариант 2, когда первый проход ITA1 начинает с ребра CD. Тогда на этой прямой будет найдена точка C — наиболее близкая к поверхности

F (x, y,z) = 0 (свойство 2). Далее ITA2 на ребрах CF или AC найдет соответственно точку K’ или K’’ (свойство 2). Затем ITA3 на прямой K’L’ или K’’L’’, которые лежат на грани ACFG и перпендикулярны соответственно к ребрам CF и AC, найдет точки (свойство 1), удовлетворяющие условию (1). Так

как эти точки принадлежат ГП F;(x,y,z) = 0 и одновременно грани ACFG, то, следовательно, поверхность F (x,y,z) = 0 принадлежит домену.

Вариант 3, в котором ITA1 начинает с ребра AC, требует всего 2 прохода ITA (ITA2 и ITA3 из варианта 2). Из рис. 1 следует, что выполнение ITA1 по другим ребрам фактически повторяет рассмотренные варианты 1-3. При этом ITA позволяет найти точку в пространстве (в дальнейшем — общая точка), которая одновременно принадлежит i-му

76

РИ, 2002, № 2

гп и k-му домену. Таким образом, максимальное число проходов ITA, которое необходимо выполнить для установления факта принадлежности і-го ГП k-му домену при взаимном пространственном положении, соответствующему случаю 1, равно трем, что и требовалось доказать. Аналогично доказывается случай, когда поверхность і-го ГП полностью находится внутри k-го домена.

Утверждение 2. Если в процессе классификации имеем случай 2, то для него выполнимость утверждения 1 (нахождение общей точки) является необходимым условием принадлежности і-го ГП k-му домену, а достаточным—удовлетворение системы неравенств (2) для найденной общей точки.

Доказательство. На рис.2 представлены два варианта второго случая. По первому варианту ограничивающие плоскости (в данном случае П1 и П2) не проходят через объем k-го домена. По второму варианту хотя бы одна ограничивающая плоскость проходит через объем k-го домена. На рис.3 ограничивающая плоскость П2 проходит через объем (k+ 1)-го домена. Рассмотрим оба варианта.

Рис. 3

Вариант 1. В качестве і-го ГП представлен цилиндр, что не снижает общность доказательства. Цилиндр

отсечен ограничивающими плоскостями Щ и П2 . Полагаем, что k-й домен находится в отрицательном полупространстве этих плоскостей, т.е. для всех вершин домена выполняется система неравенств (2). Таким образом, любая общая точка, найденная ITA в этом домене, будет также удовлетворять системе неравенств (2). Из геометрических построений следует, что цилиндр, являясь незамкнутой фигурой, кроме k-го домена пересекает и другие домены, которые могут находиться в положительном полупространстве плоскостей П и П2 . Однако общие точки, найденные ITA для таких доменов и і-го гп, не будут удовлетворять системе неравенств (2) и, следовательно, поверхность і-го ГП не принадлежит таким доменам, что и требовалось доказать.

Запишем в виде предиката P3 условие выполнения системы неравенств (2) для общей точки, найденной в k-м домене. Здесь P3 = 1, если система неравенств выполняется, и P3 = 0, если (2) не выполняется для найденной общей точки. Тогда в соответствии с утверждениями 1 и 2 имеем:

P2 = Pi A P3 . (6)

Вариант 2. На рис.3 в качестве примера ограничивающая плоскостьП2 проходит через (k+Ц-й домен, т.е. пересекает его. Тогда одни вершины этого домена находятся в отрицательном полупространстве этой плоскости, а другие — в положительном. Обозначим координаты d-й вершины k-го домена

(xd, Yd, zd), где d = 1,8 . Условие пересечения запишем в виде системы неравенств:

Fnj(xdAd,zd) <> 0 (7)

для всех d = 1,8 и всех j = 1,n.

Условие (7) следует понимать так, что среди всех неравенств есть хотя бы одно противоположного знака. Здесь важно отметить, что ограничивающая плоскость может пройти через объем k-го домена различным образом. При этом сечение і-го ГП j-й плоскостью или хотя бы некоторая его часть могут быть в этом домене либо нет. Очевидно, что в первом случае і-й ГП принадлежит k-му домену, а во втором — не принадлежит. Точный анализ этого варианта приводит к усложнению алгоритма классификации. Если вообще не анализировать вариант 2, то можно пропустить факт принадлежности і-го ГП k-му домену, что недопустимо. Поэтому будем считать, что если выполняется условие (7) и общая точка существует, то і-й ГП принадлежит k-му домену. При таком подходе к составлению списка в классификационном описании могут появиться некоторые k-е домены, назовем их - избыточные, которым не принадлежит і-й ГП, но при этом не будут потеряны ГП в процессе классификации. Запишем в виде предиката P4 условие (7). При этом P4 = 1, если условие (7) выполняется, и P4 = 0 , если не выполняется. Тогда, с учетом второго варианта, скорректируем уравнение (6):

P2 = P1P3 v P1P4 = P1(P3 v P4). (8)

Окончательно, с учетом (5) и (8), имеем условие принадлежности в виде

f = a • P1 v a • P2 = a • P1 v a • P1 (P3 v P4) =

= P1[a v a(P v P4)]. (9)

Для дальнейшего упрощения алгоритма классификации рассмотрим условие отсутствия принадлежности і-го ГП k-му домену. Сформулируем утверждение.

Утверждение 3. Если і-й ГП имеет ограничивающие плоскости Fnj (x, y,z) = 0 и при этом для всех вершин

(т.е. всех d = 1,8 ) k-го домена выполняется хотя бы одна система неравенств

[Fnj(xd,yd,zd)]i > 0 , (10)

т.е. хотя бы для одной j-й плоскости, где j = 1, n , то поверхность і-го ГП не принадлежит k-му домену.

Доказательство. Действительно, если все вершины k-го домена не удовлетворяют системе нера-

РИ, 2002, № 2

77

венств (2), то и общая точка, найденная в этом домене, не будет удовлетворять (2) и, следовательно, все точки отображаемой поверхности i-го ГП не принадлежат k-му домену, что и требовалось доказать.

Запишем в виде предиката P5 условие (10), причем P5 = 1, если условие (7) выполняется, и P5 = 0 , если не выполняется. Тогда, с учетом утверждения 3, окончательно функция принадлежности бприн будет иметь вид

{прин = f • P5 = P1 • P5 • [a v a (p3 V P4>]. (11)

Утверждения 1, 2, 3 и соотношение (11) являются основой для построения алгоритма классификации, состоящего из следующих этапов.

Этап 1. Из исходного количества доменов Nd выбирается k-й домен.

Этап 2. Для i-го ГП вычисляется соотношение (11) и устанавливается принадлежность ГП k-му домену. Соотношение (11) рекомендуется вычислять в следующем порядке. Устанавливается значение двоичной переменной а. Если а= 1, то вычисляется P5, затем Pi и далее P3 или P4. Если а=0, то вычисляется только Pi. Этап 2 повторяется для всех ГП.

Этапы 1 и 2 выполняются поочередно для всех К доменов, и в процессе вычислений заполняется список — классификационное описание. На этом работа алгоритма завершается.

UDC 519.714.5

CONCURRENT CONTROLLER DESIGN BY MEANS OF HIGH-LEVEL PETRI NETS

WEGRZYN AGNIESZKA__________________________

Concurrent controllers can be modelled using Petri net. Petri net is a graphical and mathematical modelling tool. It can describe processing systems, characterized as being concurrent, asynchronous, distributed, nondeterministic [5]. Wide theory of Petri nets is a powerful tool for modelling and analysis of the behaviour of logic controllers. In the paper, a system for modelling, simulation and analysis of logic controllers described by Petri nets is presented. The new tool (XML language) for modelling Petri net and new possibility connected with it is presented, too.

1. Introduction

Design of concurrent controllers consists of a few steps. The first step is modelling. A large majority of logic controllers perform parallel actions. By reason of it, very useful tools for modelling of such circuits are the Petri nets. Petri nets are the mathematical objects that exist independently of any physical representation. The nets can effectively describe parallelism.

3. Результаты и рекомендации

Выполнено моделирование предложенного алгоритма при составлении классификационного описания ДО, представленного на рис.1. Данный объект имеет графических примитивов N га = 85 , доменов Nd = 3840 . Классификация всех ГП выполнена без их потерь.

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

Литература: 1. Foley J.D., van Dam A., Feiner S.K., Hughes J.F. Computer Graphics (principles and practice) by Addison-Wesley Publishing Company, Inc. 1996. 1175 p. 2.Гусятин B.M. Итерационный алгоритм синтеза изображения в растровой графике реального масштаба времени // Радиоэлектроника и информатика. 1998. №3. С.81-83.

Поступила в редколлегию 05.02.2002

Рецензент: д-р техн. наук, проф. Кривуля Г.Ф.

Гусятин Владимир Михайлович, канд. техн. наук, доцент кафедры электронных вычислительных машин ХНУРЭ. Научные интересы: теория и практика построения спецпроцессоров растровых графических систем реального времени. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 40-93-54, 66-61-22.

Филимончук Михаил Анатольевич, аспирант кафедры электронных вычислительных машин ХНУРЭ. Научные интересы: теория и практика построения спецпроцессоров растровых графических систем реального времени. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 40-93-54._______________________

The most important design stage is analysis. In the paper, two methods of formal analysis and one method of simulation are described.

In presented design system PeNCAD (section 3), Petri nets are modelled using XML. Because of this fact, it is possible to simulate using SVG graphics. For large Petri net models, such method of analysis is very inconvenient.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

As Petri nets have well-defined semantics, their formal analysis is possible. The analysis of Petri net is based on checking some properties of Petri net called liveness and boundedness. Liveness is one of the most important properties in Petri net analysis.

In section 3.3, two methods of analysis are presented. Both methods use special expressions called Horn formulae as the representation of Petri nets. In the first case, Horn formulae are solved using Thelen’s tree and the second algorithm is based on ROBDD diagram. These methods are suitable for Extended Free Choice (EFC) Petri net.

Analysis techniques can be grouped into three classes:

1) analysis of interpreted Petri net;

2) analysis based on testing a net depending on initial marking;

3) structural analysis based on testing a net independent on initial marking.

78

РИ, 2002, № 2

i Надоели баннеры? Вы всегда можете отключить рекламу.