Современные геоинформационные системы хранят и обрабатывают огромное количество информации. Данный аспект позволяет применять их для решения достаточно большого круга задач, в том числе и не в традиционном для них виде. Например, геоинформационные системы могут найти широкое применение в системах автоматического управления крупными площадными объектами, такими как заводы, угольные разрезы и строительство дорог.
В ряде случаев пользователям достаточно сравнительно простого интерфейса для выполнения целого ряда задач (например, навигационные системы). В случае же их использования для сложных систем, таких как системы управления техникой, оператор должен видеть не только основную, но и вспомогательную информацию. При этом информация должна отображаться разных типов [4, 6]:
- план работ;
- 3d карта местности;
- табличные и атрибутивные данные;
- интерактивные пометки и сообщения системы управления;
- аварийные сообщения и рекомендации.
Все означенные выше данные разного типа, но при их выводе используется один усредненный метод отображения. Это приводит к неэффективному использованию ресурсов компьютера. Например, что 3d карта местности максимально информативна в трехмерном (он же стереорежим), который позволяет получать эффект присутствия оператора на месте проведения работ (см. рис. 1).
Рис. 1. Пример стереоизображения 3d ГИС
Существует два основных варианта отображения стерео изображения на сегодняшний день:
- на мониторах и проекторах (некоторое время назад для этого требовались специализированные мониторы, сейчас есть технологии отображения 3d изображения посредством видеокарты на любом мониторе);
- на шлемах виртуальной реальности (в настоящий момент их достаточно большое разнообразие).
На сегодняшний день стандартные геоинформационные системы и фотограмметрические станции, при работе в стереорежиме имеют однооконный интерфейс, что не позволяет совмещать обработку основной информации с использованием других окон как источника вспомогательной информации. Для понижения расходования ресурсов на такое отображение возможно использовать системы, контролирующие направление взгляда пользователя [10]. В качестве первого шага в направлении разработки такого рода систем был разработан способ создания стереоскопического интерфейса пользователя в многооконной среде Windows (патент RU 2380763, ИПУ РАН) [1, 3]. Тем не менее такого рода метод несет в себе недостаток, связанный с необходимостью подготовки высококачественного стереоскопического интерфейса во всем окне программного средства (в нашем случае ГИС), безотносительно к тому, какая часть этого интерфейса закрыта другими окнами, что приводит к неэффективному расходованию вычислительных ресурсов (см. рис. 2). Такой недостаток особенно остро ощущается при визуализации сложных динамических сцен. Согласно мнению некоторых исследователей, этот недостаток приводит к неоправданному расходованию вычислительных ресурсов в те промежутки времени, когда внимание оператора направлено на другие окна [2].
Рис. 2. Пример перекрывания атрибутивной информацией части стереоизображения
В данном случае используется подход применения многооконного стереоскопического интерфейса, в котором качество стереоскопической визуализации зависит от текущей конфигурации окон и от направления взгляда пользователя, что должно обеспечивать экономию вычислительных ресурсов за счет подготовки упрощенного варианта отображения в областях, удаленных от области пристального взгляда пользователя. Такая задача включает в себя решение следующих задач [3, 5]:
- подготовка стереоскопического контента низкого и высокого качества отображения с учетом конфигурации окон для отображения;
- определение трехмерных координат направления взгляда пользователя на экране;
- преобразование качества отображения стереоскопической информации в реальном времени для улучшения восприятия пользователем с учетом конфигурации окон.
На основе проведенных исследований, для нахождения направления вектора взгляда, подходы на основе трехмерных моделей, моделирующих общие физические структуры человеческого глаза геометрически, признаны наиболее эффективными. Экспериментальные данные показали, что при удалении пользователя на 90–110 см от экрана, и при частоте распознавания 25 Герц в секунду, точность распознавания области пристального взгляда составляет 10–15 мм [1].
Следует отметить, что существует два диаметрально противоположных варианта действий с многооконным интерфейсом пользователя:
- метод искусственного повышения качества изображения в местах (окнах) системы, куда устремлен взгляд человека;
- метод понижения качества изображения в местах (окнах) системы, куда устремлен взгляд человека.
Разработки ведутся параллельно в обоих данных направлениях.
Для целей повышения эффективности использования ресурсов ПК (в означенной выше технологии) при отображении стереоскопических изображений целесообразно использовать метод тесселяции применительно к месту пристального взгляда оператора. Разработанный Институтом проблем управления РАН алгоритм тесселяции предлагает использование ресурсов пакета Direct 3D 11 [7, 8]. Согласно пакету Direct 3D 11 стадия тесселяции традиционно производится между вершинным и геометрическим шейдерами с целью сглаживания, вызываемой дискретностью сетки трехмерной модели визуализируемого объекта [8, 9]. В проведенных тестах стадия тессилятора использовала параметр для подразбиения патча на несколько квадратов и треугольников. При этом решения о разбиении делаются на основе тесселяционных и конфигурационных параметров, передаваемых из оболочного шейдера. Координаты параметризации каждой вершины после стадии тесселяции передаются в шейдер областей. Все это позволяет ликвидировать мозаичность изображения, вызываемую дискретностью сетки трехмерной модели визуализируемого объекта путем сглаживания изображения в области тесселяции.
Проведенные эксперименты показали, что метод тесселяции для повышения качества изображения доказал свою состоятельность при опросах операторов, задействованных в тестировании такого рода систем.
Кроме того, повышение производительности в окнах, куда не устремлен взгляд человека, возможно за счет изменения детализации элементов интерфейса посредством использования метода LOD (Level of Details), при котором помимо основной трехмерной модели элемента интерфейса создаются аппроксимированные копии такой модели (см. рис. 3). Соответственно данные копии могут создаваться как в режиме реального времени, так и заранее. Данные модели могут подставляться в зависимости от направления взгляда пользователя или от нагрузки на видеоподсистему компьютера. Теоретически при таком подходе должно достигаться существенное ускорение процесса визуализации трехмерной сцены без потери информативности ее элементов. И в игровых системах это так. Но ГИС сцены зачастую намного более громоздкие, чем игры, и данный подход несет в себе кучу других недостатков. Рассмотрим это далее.
Рис. 3. Пример отображения разного количества треугольников одной поверхности при тесселяции
Отображение на одном мониторе и стерео и нестереоизображения достаточно затратно с точки зрения ресурсов системы так как монитор все равно будет работать в стерео режиме, а соответственно, видеокарта будет изготавливать картинку под оба глаза наблюдателя отдельно. Кроме того, на хранение двух копий одной сцены в памяти видеокарты необходимо выделять большее количество места. А параллельные вычисления вершин для пересчета качества отображения «на лету» могут вообще достигать нескольких десятков секунд. Все это обуславливает поиски других вариантов решения данного вопроса.
Самым простым решением вопроса на сегодняшний день служит решение растягивания ПО на несколько мониторов, в этом случае вспомогательную информацию можно перемещать на второй, третий и прочие мониторы без параллельной стереообработки и стереоотображении данных окон. При этом систему улавливания направления вектора взгляда оператора имеет смысл оставить, только у нее несколько упрощается функция. Это связано с тем, что системе необходимо понимать, смотрит ли оператор в монитор со стереоэффектом или нет. В случае, если оператор будет смотреть в другую сторону, система просто будет отключать стереорежим.
Тем не менее такого рода системы становятся бесполезными при использовании в работе операторами шлемов виртуальной реальности. Конечно, данная технология еще не до конца отработана в полной мере и в современных фотограмметрических станциях и ГИС системах не применяется. Главным образом это связано с тем, что шлемы или приспособления для крепления мобильных телефонов не имеют высокого разрешения. Но, если быть объективными, она достаточно перспективна, и повышение качества отображения а следовательно, и их применение в ГИС различного уровня не за горами. У шлемов нет датчиков, отслеживающих взгляд пользователей, а следовательно, и означенные в первой части нашей статьи технологии применить нельзя. Но понижения требовательности ресурсов можно добиться за счет разного качества генерирования картинки для 3d данных и вспомогательной информации. На сегодняшний день работа таких систем построена по принципу программного рендеринга. При этом система полностью воспроизводит картинку самостоятельно, на первоначальном этапе программисты располагают полную картину 3d мира в систему и программно расставляют камеры для каждого глаза. При этом вся атрибутивная информация, при ее наличии, располагается на пластинах. Исходя из этого можно сказать, что вопросы оптимизации изображения на шлемах виртуальной реальности еще в начале своего пути и стандартные методы, применимые к отображению на персональных компьютерах, тут не работают.
Выводы
На сегодняшний день, теоретически, имеется два основных вида представления 3d данных с максимальным погружением, и возможностью обработки стереоскопических данных в ГИС системах:
- стереоотображение на мониторах;
- стереоотображение на шлемах виртуальной реальности.
Следует отметить, что текущее программное обеспечение шлемов виртуальной реальности не позволяет их использовать по данному назначению. Тем не менее это направление активно исследуется и, при учете данных из статьи, может быть использовано в ближайшее время.
Что касается отображения на мониторах, то тут все отработано в большей мере. Тем не менее существующие ГИС отображают стереоизображение в однооконном интерфейсе, что затрудняет оператору использовать атрибутивные данные в той же информационной системе.
Наиболее эффективный способ повышения эффективности работы системы отображения 3d и стереосистем сейчас видится в применении многооконных (многоинтерфейсных) ГИС. В этом случае их было бы возможно разворачивать сразу на несколько мониторов и отображать стереоокно на одном, а атрибутивные и вспомогательные данные на остальных. Данный способ существенно экономил бы ресурсы системы на отображение стереоэффекта на нескольких мониторах одновременно. В этом случае также нет необходимости использовать системы слежения на взглядом наблюдателя для отображения разного качества изображений на одном мониторе. В случае использования такого рода систем можно просто отключать режим стереоотображения в окне, когда пользователь в него не смотрит. Это позволит существеннее экономить ресурсы системы за счет отсутствия необходимости хранить и отображать изображение ухудшенного качества.
Кроме того, в настоящее время ведутся работы по изысканию менее затратных с точки зрения ресурсов способов вывода атрибутивной информации на экран. Согласно исследованию, использование существующих ресурсов по отображению окон даже с простой текстовой информацией потребляет до 30 % вычислительных ресурсов видеоподсистемы. Связано это с тем, что существующие технологии отображения стереоинтерфейсов были разработаны преимущественно для игр, где нет необходимости в постоянном отображении большого количества атрибутивной информации.
Следует отметить, что решения по многооконному интерфейсу применимы не только касательно ГИС управления чем-либо, но и на фотограмметрических станциях и прочих системах обработки стереоинформации. Кроме того, тестирование показало эффективность такого рода систем в таких задачах, как горнодобывающая промышленность, строительство и эксплуатация дорог и площадных сооружений, фотограмметрические обработки аэро- и космосъемки.