ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Journal influence

Higher Attestation Commission (VAK) - К1 quartile
Russian Science Citation Index (RSCI)

Bookmark

Next issue

2
Publication date:
16 June 2024

The article was published in issue no. № 1, 1995
Abstract:
Аннотация:
Authors: (a.mishin@ntpdubna.ru) - , Ph.D, () - , () -
Ключевое слово:
Page views: 15563
Print version

Font size:       Font:

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

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

Термин когнитивная графика впервые был рассмотрен русским ученым А.А.Зенкиным в его работе по исследованию свойств различных понятий из теории чисел [5]. Используя зрительные образы абстрактных числовых понятий, он получил результаты, которые раньше получить было невозможно. Направление работ по когнитивной графике бурно развивается, и уже сейчас существует много подобных систем в различных предметных областях: в медицине [7], для поддержки принятия решений по управлению сложными технологическими системами [2, 4], в системах, базирующихся на естественном языке [8].

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

Термин "виртуальная реальность" ввел в обращение бывший компьютерный хэкер Джа-рон Леньер, создавший в 1984 году фирму "Ви-Пи-Эл Рисерч Корп." в г. Фостер штат Калифорния. Это первая компания по созданию ВР-систем [3]. С начала 90-х годов стали проводиться конференции по средствам моделирования виртуальной реальности и построению систем, позволяющих человеку действовать в условиях среды, которая может качественно отличаться от условий той реальности, в которой он живет.

Существуют два свойства, позволяющие отличить программу, создающую "виртуальный мир" (ВР-система), от традиционных систем компьютерной графики.

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

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

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

Рассмотрим задачу построения системы виртуальной реальности для обучения на основе парадигмы "воображаемого мира" физическим законам статики, кинематики и динамики. Будем рассматривать следующий динамический мир: трехмерное замкнутое пространство, совокупность объектов в нем, деятель в данном пространстве (он же обучаемый, назовем его Актором). Задача деятеля - понять законы, присущие миру, в котором он находится и действует, совершая некоторые физические действия с объктами во времени и пространстве.

Выделим основные типы понятий, с которыми будет сталкиваться Актор. Это - объекты, отношения, движения и физические действия. Поставим задачу построения воображаемого мира, отображающего эти категории; при этом состояния такой воображаемой реальности будем описывать в виде текстов на обычном естественном языке. Важным модулем такой ВР-системы является подсистема, строящая по тексту динамически изменяющийся графический образ. Для решения данной задачи используется система ТЕКРИС, разрабатываемая авторами [1, 6]. Ниже рассматриваются общее описание системы ТЕКРИС и графические средства для построения подобных систем.

Структурная схема системы ТЕКРИС

Система ТЕКРИС представляет собой набор программных средств, позволяющих по тексту на естественном языке построить динамически изменяющийся графический образ описанной ситуации. В качестве ограничений, налагаемых на исходное описание, следует отметить следующее: 1) в тексте обязательно присутствует описание начальной статической сцены; 2) все последующие изменения в сцене являются результатом действий, производимых некоторым субъектом (человеком, роботом). Типичным примером такого описания может служить следующее:

В комнате находится стол. На столе стоит лампа. Рядом со столом стоит стул. Позади стола недалеко слева находится книжный шкаф. Справа от стула стоит диван. Иван стоит рядом со шкафом. Иван подошел к столу. Взял лампу. Поставил ее на шкаф.

Структурная схема системы представлена на рисунке 1. На данной схеме программные компоненты представлены в виде прямоугольников, а исходный и промежуточные файлы - в виде овалов.

 

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

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

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

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

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

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

Рис. 2. Начальная сцена База графических объектов

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

Базисным элементом, из которого строятся все графические объекты, является прямоугольный параллелепипед (см. рис. 3). Для построения сложных объектов в качестве компонентов также могут использоваться ранее определенные другие объекты. Например, для построения такого сложного объекта как "Иван" вначале можно определить следующие более простые объекты: "голова", "рука", "нога", а затем построить "Ивана" из уже имеющихся "кирпичиков".

На рисунке 3 представлен объект "стол", состоящий из пяти базисных элементов. Для каждого объекта определяется прямоугольный параллелепипед, в который он может быть вписан (на рисунке обозначен пунктирной линией), и базисный угол, в котором находится начало координат объекта.

Кроме того, для каждого объекта определяется набор цветов, которыми раскрашиваются его составные части при отображении на экране компьютера:

количество цветов

цвет 1

цвети

Для задания одного цвета указываются три тройки чисел где тип закраски определяет порядок смешивания основных цветов:
тип закраски i

цветц

цвет12

тип закраски2

цвет21

цвет22

тип закраскиз

цветз!

цвет2з

При визуализации используется четыре типа закраски сплошным основным или комбинированным цветом, как это изображено на рисунке 4.

Три набора чисел позволяют задать три различных оттенка цвета для раскраски различ

компонент л

Каждый компонент объекта определяется своим положением (координатами относительно базисного угла), габаритами и цветом граней.

Компонент, являющийся базисным элементом, описывается следующим образом:

1)тип (=0);

2) координаты базового угла в системе

координат объекта;

3) углы поворотов вокруг осей системы

координат объекта до совпадения с осями координат элемента;

4)    габариты элемента (dx, dy, dz);

5)    номер цвета.

Компонент, являющийся в свою очередь объектом, задается следующим образом: 1)тип(=1);

2)    имя объекта;

3)    координаты базового угла;

4)    углы поворотов;

5)    габариты;

6)    номер цвета.

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

Грани прямоугольного параллелепипеда также упорядочиваются в порядке приближения к области проекции. Для каждой вершины грани осуществляется перевод трехмерных координат из системы координат сцены в двухмерные координаты экрана дисплея по формулам указанным ниже (см. рис. 5). Затем определяется направление вектора нормали и выбирается соответствующий тип закраски грани, после чего на экране дисплея вычерчивается соответствующий грани четырехугольник. Поскольку ближние к наблюдателю элементы выводятся в последнюю очередь, то они закроют собой невидимые грани.

Рис. 5. Проекция объекта на плоскость визуализации

Координаты точки, принадлежащей элементу, в системе координат объекта (х, у, z) вычисляются по следующим формулам:

где (х\ у', z1) - координаты точки в системе элемента;

(xq, уо', zq) - координаты базового угла; tij - направляющие косинусы, т.е. cos угла между осями / и j системы объекта.

Для вычисления направляющих косинусов используется следующая формула:

cosa-cosy

sina-sinp-cosy+cosa-sinp -cosa-sinp -cosy+sina-sinp

-cosp-siny

-sina-sinp-siny+cosa-cosy cosa-sinp-siny+sina-cosy

sinp

-sina-cosp cosa-cosp

Матрица М задает последовательное вращение вокруг оси х на ос, у на р, z на у. Координаты проекции точки на область экрана вычисляются аналогичным образом.

Библиотекарь графических объектов

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

Рис. 6. Рабочий экран библиотекаря графических объектов

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

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

Главное меню программы содержит следующие пункты:

База - создание новой базы объектов, сохранение и загрузка старой базы.

Вид - изменение изометрической проекции (вращение объекта).

Объекты - вывод списка всех объектов, имеющихся в базе, с возможностью перехода к выбранному объекту.

Компонент - задание значений параметров для компонента объекта (положение, габариты, цвет).

Цвета - задание набора цветов для объекта.

Комната - построение и просмотр комнаты из имеющихся объектов ( в рассматриваемой версии не реализовано ).

Выход - выход из программы.

Расположенные под главным меню кнопки выполняют следующие функции:

Рабочий экран программы приведен на рис. 6. В верхней части экрана расположено главное меню, в нижней - набор основных цветов (16 цветов) и четыре типа закраски. В левом верхнем (после меню) углу экрана расположены пять кнопок для создания и редактирования объекта. Непосредственно под ними расположено наименование объекта, список его состав-

-  добавить новый базовый или составной компонент к объекту

-  изменить размер ( габариты ) компонента

-  изменить местоположение компонента

Turn

- повернуть компонент

- удалить компонент

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

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

Перемещение компонента осуществляется аналогичным образом при нажатии кнопки "Move". Для поворота компонента следует нажать кнопку 'Turn". Добавление нового компонента осуществляется при нажатии кнопки "New". При выполнении любой операции с компонентом автоматически пересчитываются габариты объекта и координаты всех его компонентов.

При необходимости с помощью кнопки "Del" компонент объекта может быть удален, что также приводит к пересчету координат и габаритов. Помимо положения и размеров для каждого компонента объекта определяются три оттенка цвета его граней. Выбор того или иного оттенка зависит от положения плоскости грани (ее нормали) в пространстве. Если компонент в свою очередь является объектом, то происходит наследование цветов подобъекта с возможностью их замены на цвета редактируемого объекта.

Для задания цветов объекта или определения цвета компонента необходимо выбрать пункт "Цвета" из главного меню. На экран дисплея будет выведено окно (рис. 7).



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

Для задания закраски необходимо выбрать грань (А, В или С) и из нижней части экрана тип закраски, основной (левая клавиша "мыши") и дополнительный (правая клавиша) цвета. При нажатии кнопки "Сохранить" выбранный цвет присваивается компоненту. Кнопки "Добавить" и "Удалить" позволяют добавлять и удалять элементы списка цветов.

В случае отсутствия манипулятора "мышь" для задания значений параметров компонента можно использовать пункт главного меню "Компонент". В этом случае на экране появится окно, изображенное на рисунке 8. В верхней части этого окна задается имя компонента (на рис. "левая ручка" кресла), которое при необходимости можно изменить.

В левой половине окна задаются значения параметров компонента, в правой - набор кнопок для перебора компонентов, добавления и удаления, задания цвета и сохранения и отказа от сохранения изменений.

С помощью этого окна, используя одни лишь клавиши, можно полностью описать объект. Для задания значения параметра необходимо перейти к требуемой строке с помощью клавиш управления курсором ("Вверх", "Вниз") и напечатать новое значение. Отметим, что на рисунке 8 значения габаритов указаны серым цветом, т.е. являются недоступными для изменения, так как ручка кресла в свою очередь является объектом и наследует его размеры.

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

Визуализация трехмерных сцен

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

На вход программы подаются два файла - база графических объектов и последовательность сцен - в следующем виде:

Сцена

1

Сцена

2

. . .

 

Сцена

п

Одна сцена отделяется от другой с помощью специальной команды PAUSE (пауза между сценами).

Каждая сцена описывается в виде последовательности команд:

Команда 1

Команда т

Команды подразделяются на команды описания объектов и управляющие команды. Команда описания содержит следующие поля:

• уникальное имя объекта, используемое

в дальнейших сценах;

•  тип объекта (имя в базе);

•  координаты левого заднего нижнего

угла в системе координат комнаты;

• углы поворотов вокруг осей Координат

объекта;

• модификатор размера (L - большой, М -

средний, S - малый);

• цвет (от 0 до 8). Если цвет=0, то объект

изображается тем цветом, который используется в базе. В противном случае: 1 - черный, 2 - синий          8 - белый.

Среди множества объектов, описывающих начальную сцену обязательно должен присутствовать объект типа "сцена" (комната). Данный объект является встроенным (отсутствует в базе графических объектов). Он задает размеры комнаты, а также позицию наблюдателя. Задавая каждый раз заново новые углы поворотов, можно менять позицию наблюдателя для просмотра ранее не видимых объектов. Например, на рисунке 9 изображена вторая сцена рассмотренного в начале статьи текста под другим углом зрения.

Рис. 9. Вторая сцена под другим углом зрения

Для создания последовательности сцен используются следующие управляющие команды:

•   PAUSE - пауза между сценами;

•   MOVE - перемещение объекта в новую

позицию;» TRACE - показать траекторию перемещения объекта;

• DEL - удалить объект из сцены

(используется для визуализации понятия "взять").

В заключение можно отметить, что разрабатываемые графические средства ориентированы на использование в интеллектуальных САПРах, роботах, в системах обучения, построения компьютерных игр,'в системах виртуальной реальности. Программные средства системы позволяют представлять данные, выраженные в текстовой и графической формах и манипулировать ими.

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

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

Список литературы

5. Зенкин А А. Когнитивная компьютерная графика // М.: Наука, 1991.-С. 187.

7. Ракчеева Т.А. Когнитивное представление ритмической структуры ЭКГ // Программные продукты и системы. - 1992. -Л6 2.- С. 38-47.

4. Еремеев А.П., Короткое О.В., Попов А.В. Визуальный контролер для систем поддержки принятия решений // Труды / Ш конф. по искусственному интеллекту. Тверь.-1992. Т. 1.- С. 142-145.

2. Бахарев И.А., Ледер В.Е., Матекин М.П. Инструментальные средства интеллектуальной графики дня отоб-

ражения динамики сложного технологического процесса // Программные продукты и системы. -1992. - № 2.- С. 34-37.

8. V.Bajdoun, LXitvintseva. SJvfalitov et al. Tekris: The intelligent system for text animation // Proc. of East-West Conf. on Art. Intell. EWAIC93. September 7-9, Moscow, Russia. 1993.

3. Гамильтон Дж., СмитЭ., Мак Уильяме Г. и др. Виртуальная реальность // Бизнес уик. - 1993. - № 1.

6. Литвинцева Л.В. Концептуальная модель системы визуализации трехмерных динамических сцен // Программные продукты и системы. №2.1992.

1. Байдун В.В., Бунин А.И., Бунина О.Ю. Анализ текстовых описаний динамических пространственных сцен в системе ТЕКРИС // Программные продукты и системы. -1992. -№3. - С. 42-48.


Permanent link:
http://swsys.ru/index.php?page=article&id=1097&lang=en
Print version
The article was published in issue no. № 1, 1995

Perhaps, you might be interested in the following articles of similar topics: