DOI: 10.7256/2585-7797.2020.4.34671
Received:
18-12-2020
Published:
29-12-2020
Abstract:
The article summarizes the results of a two-year study of the issues related to the virtual reality and augmented reality technologies use to virtually reconstruct Moscow Bely Gorod in the 16th-18th centuries. The authors describe mathematical methods, software and hardware which grant access to the historical reconstruction of historical urban landscapes. An important feature of the reconstruction is the source verification module which was used to construct three-dimensional models of the landscape, buildings and the general scenery. The article names the basic principles which the verification module and its interface are based on and considers some optimum problems solved when constructing the interface. The project uses a hybrid motion tracking system as a combination of optical and inertial data. The archival sources used in the reconstruction process are presented in the virtual environment by means of a 3D graphical user interface for the virtual reality. The information displayed is generated from the database of historical sources which includes information about the urban development and individual buildings of Bely Gorod, their parts, location, purpose, owners and construction date. The database contains both text and graphic historical sources. The results obtained also include new algorithms, software and hardware systems as well as the experiment results.
Keywords:
virtual reality, mixed reality, historical virtual reconstruction, 3D modeling, historical city landscape, verification, Belyi gorod, motion tracking, virtual interface, biomechanics
Виртуальные реконструкции объектов историко-культурного наследия требуют поиска универсальных решений для репрезентации результатов и источниковой базы реконструкции. В последние годы все более актуальным становится использование технологий виртуальной реальности для этих задач [1]. В данной статье предлагаются новые подходы к решению таких задач, разработанные в ходе исследовательского проекта [2] по виртуальной реконструкции Белого города – территории исторического центра Москвы между Кремлем и Китай-городом, с одной стороны, и современным Бульварным кольцом — с другой.
Развитие комплекса технологий виртуальной реальности (VR) началось с решения задач авиакосмической отрасли, связанных с созданием тренажерных комплексов для пилотов и космонавтов. Стоимость, громоздкость и сложность эксплуатации подобных комплексов существенно ограничивали их внедрение в другие отрасли, а закрытый характер большинства разработок ограничил возможности публикации результатов. Аналогичная ситуация возникла и с дополненной реальностью (AR), которая развивалась преимущественно в военных системах целеуказания. Как следствие, разработчикам современных массовых AR и VR решений зачастую приходится заново искать уже известные и апробированные технологические решения. Только начиная с появления шлема виртуальной реальности Oculus Rift узкоспециализированная технология стала доступной для широкого применения, в том числе в социально-гуманитарных науках, например, в диссертационных исторических исследованиях [3].
В статье представлен междисциплинарный проект сотрудников кафедры исторической информатики исторического факультета и лаборатории МОИДС механико-математического факультетов МГУ имени М.В. Ломоносова. Проект строится на основе использования технологий трехмерного моделирования, VR и AR в задачах отображения виртуального представления исторического ландшафта Белого города Москвы XVI-XVIII веков и памятников историко-культурного наследия. Развитие технологий VR требует решения задач из различных областей биомеханики, теории оценивания и решения задач оптимизации, а также разработки специальных подходов к работе с историческими данными.
Структура программного и аппаратного обеспечения
В данном исследовании было реализовано приложение для систем виртуальной реальности, в котором с использованием трёхмерных геоинформационных и архивных исторических данных созданы модели исторических зданий, монастырей, модель рельефа территории Белого города. Для создания приложения был использован игровой движок Unreal Engine 4 (UE4). Программный код для приложения написан на языках C, C++, Blueprint.
В созданной виртуальной среде пользователю предоставляются два способа отображения результатов реконструкции: схематичный («макетный») вариант и детальный вариант в масштабе 1 к 1, реализованный для отдельных областей реконструкции (рис. 1).
Для организации взаимодействия с виртуальной реконструкцией исторической застройки требуется отслеживать движения человека и переносить их в виртуальную среду [4]. Отслеживание движения человека должно выполняться с частотой не менее 60 Гц. Ультразвуковые и радиосистемы отслеживания движения не могут обеспечить необходимую частоту для более чем одного датчика, а магнитные работают некорректно при наличии стороннего оборудования. В рамках проекта было предложено использовать комбинацию оптических и инерциальных датчиков. Существующие оптические системы отслеживания движения имеют требуемую частоту, но они чувствительны к перекрытию оптических маркеров - в эти моменты данные от оптических систем отсутствуют или неверны. Инерциальные системы не подвержены перекрытию, однако имеют низкую точность при отслеживании линейного перемещения с ошибками, накопленными с течением времени. Использование гибридной системы слежения как комбинации оптических и инерциальных данных позволило получить решение без указанных проблем. Получены результаты, включающие в себя новые алгоритмы и программно-аппаратные комплексы.
Рис. 1. Сравнение режимов отображения виртуальной исторической реконструкции: «макетного» вида (сверху) и масштаба 1 к 1 (снизу)
Работа обновленного модуля верификации идентична в разных проектах реконструкции, поэтому демонстрировать его на примере каждого проектора излишне для данной статьи.
В качестве аппаратной части системы виртуальной реальности использовались два набора шлемов виртуальной реальности. В качестве исследовательской системы применялась российская разработка Total Vision (рис. 2), для которой в рамках нашего проекта велась работа над математическим обеспечением встроенного окулографа (комплекта для отслеживания движений глаз пользователя) [5]. Применение отслеживания движений глаз позволило сделать ряд выводов о требованиях к расположению отдельных элементов виртуальной реконструкции и реализовать подход, называемый “foveated rendering” (увеличение частоты кадров при отрисовке виртуальной сцены за счет уменьшения детализации за пределами зоны четкого видения человека) [6].
Широкое представление результатов проекта планируется проводить с применением платформы Steam VR и шлемов виртуальной реальности, поддерживающих данную технологию (в том числе HTC Vive и Valve Index). Некоторые результаты были представлены на научных конференциях [7], в том числе и в контексте применения в музейном деле.
Рис. 2. Шлем виртуальной реальности Total Vision со встроенной системой отслеживания движений глаз пользователя
Модуль верификации исторических источников
Пользователь, погруженный в виртуальную среду, получает возможность не только изучить непосредственно реконструкцию объекта культурного наследия, но и получить доступ к историческим источникам, на основе которых эта реконструкция создавалась. Для организации доступа разработан специализированный модуль верификации [8].
Архивные материалы, использованные в процессе реконструкции, представлены в виртуальной среде при помощи трёхмерного графического пользовательского интерфейса для виртуальной реальности. Отображаемая информация генерируется из базы данных (БД) исторических источников, положенных в основу данного проекта. Предоставленная участником проекта О.Г. Ким база данных была создана с использованием программного обеспечения Microsoft Access (Access). База данных включает в себя информацию об исторической застройке Белого города, отдельных строениях, их частях, местоположении, назначении, владельцах и дате строительства. В базе содержатся текстовые и графические источники. Источники отсортированы по их типу, разделение на типы сохраняется при генерации пользовательского интерфейса. Интерфейс создавался при непосредственной помощи архивиста – специалист давал комментарии, какие типы источников и какая информация будет наиболее интересна для изучения.
Для использования в виртуальной среде необходимая информация из базы данных в автоматическом режиме переносится из БД Access во внутренние ресурсы движка UE4. Таким образом, с одной стороны, есть возможность показать пользователям важную и релевантную информацию об объектах, а с другой - оптимизируется выдача, за счет исключения из демонстрации множественных технических данных, созданных только для процесса переноса из одного формата в другой. Кроме того, разработанная платформа позволяет быстро обновлять информацию в среде, не затрачивая на это человеческие ресурсы, как это было в предыдущей версии модуля верификации. Таким образом, интерфейс виртуальной реальности становится рабочим инструментом для специалиста-историка, который через него может получать доступ к наиболее достоверным и полным историческим данным, а также сравнивать реконструкцию с источниками.
Генерируемый графический интерфейс представляет собой набор интерактивных и информационных элементов. Информационные элементы содержат и иллюстрируют информацию из БД, интерактивные – позволяют получить доступ к информационным. Взаимодействие с интерактивными элементами происходит при помощи нажатия на них «виртуальными руками». Управляются виртуальные руки с помощью отслеживаемых в пространстве перчаток [9] или контроллеров, выдаваемых пользователю.
Сравнение графического интерфейса модулей верификации реконструкции Страстного монастыря и реконструкции ландшафта Белого города
Впервые модуль верификации исторических данных для виртуальной реконструкции был применен в нашем проекте реконструкции Страстного монастыря [10]. Пользовательский графический интерфейс модуля верификации Страстного монастыря работал следующим образом: когда модуль деактивирован, он представлял собой маячок, который виден при приближении на расстояние ближе 30 виртуальных метров. Чтобы активировать модуль, требуется подойти ближе, чем на 10 виртуальных метров и нажать на контроллере кнопку триггера («курок»). При активации модуля появляется уменьшенная модель здания, которому назначен данный модуль верификации, а над моделью здания – полукругом расположенные значки источников реконструкции. При нажатии на значок появляется источник – текст или изображение, причём некоторые изображения проецируются на модель здания и подстраиваются под ракурс, который присущ источнику. Для удобства сравнения с течением времени источники меняют свою прозрачность. Далее, следующим нажатием можно закрыть источник и вернуться к предыдущему меню.
Разработанный для Страстного монастыря пользовательский интерфейс не подходил для реконструкции исторического ландшафта Белого города. Источникового материала в данном случае требовалось значительно больше, в результате чего предыдущий интерфейс перестал удовлетворять предъявляемым требованиям удобству использования.
Разработка нового интерфейса и размещение его элементов в виртуальном пространстве велось согласно принципам, которые приведены в работе [8]. Элементы пользовательского интерфейса реконструкции были причислены к двум классам:
· Информационным элементам (предназначенным для чтения и визуального исследования, рис. 3);
· Интерактивным элементам (с которыми производится взаимодействие и которые позволяют получить доступ к информационным элементам, рис. 4).
Предполагается, что опытный пользователь систем виртуальной реальности не будет долго изучать интерактивные элементы интерфейса, а использует их для быстрого получения доступа к информационным элементам. Для этого требуется перейти по определенному количеству интерактивных элементов («нажать»).
Рис. 3. Пользователь, взаимодействующий с интерактивными элементами модуля верификации (правый нижний угол изображения)
Рис. 4. Пример информационного элемента модуля верификации
Относительно прежнего модуля верификации реконструкции Страстного монастыря, у нового решения есть важное преимущество – все источники добавляются в модуль верификации в автоматическом режиме. Ранее это делалось следующим образом: источники передавались в виде набора текстовых файлов и изображений. Далее всё вручную вставлялось в поля в редакторе (игровом движке Unity3D). Однако это требовало значительных временных затрат, а также некоторых навыков работы с графическим редактором. В новом интерфейсе данные изымаются из базы данных MS Access и преобразуются во внутренние ресурсы редактора Unreal Engine 4 автоматически, процедура занимает не более 15 минут. Таким образом, становится возможным не только добавлять большое количество данных в реконструкцию, но и довольно быстро обновлять их. Но, одновременно, это требует разработки и соблюдения специальных стандартов ведения такой базы данных, а также ее спецальной обработки для интеграции в модуль.
Увеличившееся количество источников потребовало создания алгоритма автоматического расположения элементов интерфейса в трехмерном пространстве. Предложенные алгоритмы и соответствующий математический аппарат даются в Приложении. Полученный интерфейс также учитывал то, что большинство пользователей являются праворукими и при взаимодействии им будет удобнее вести руку слева направо. Когда пользователь активирует модуль верификации, перед ним появляется окно с краткой информацией об объекте. При нажатии на это окно справа появляется набор иконок интерфейса, соответствующих разным типам источников. После выбора типа источника правее появляются значки конкретных источников. После выбора значка интерактивные элементы исчезают, а на их месте появляется сам источник.
Реализуются варианты взаимодействия пользователя с интерфейсом при помощи руки и при помощи указки. В отличие от предыдущего варианта, новый интерфейс располагается не в плоскости, а на выпуклой поверхности, частично совпадающей с границей множества допустимых положений руки человека. Такое решение вызвано необходимостью соблюсти баланс между комфортом для глаз пользователя и возможностью расположить больше интерактивных элементов в зоне, где пользователь может дотянуться до элемента перемещая в пространстве только свою руку, а не тело полностью [7].
Экспериментальное сравнение модулей верификации
Количество отображаемых источников для реконструкции ландшафта Белого города примерно на порядок превосходит количество источников в реконструкции Страстного монастыря. От нового интерфейса требовалось сохранить малое время доступа к информационным элементам при значительно возросшем количестве данных. Чтобы определить примерное время взаимодействия с графическим интерфейсом модуля верификации, был проведен эксперимент. Для корректности эксперимента взаимодействие с интерфейсом модуля верификации реконструкции ландшафта Белого города было реализовано при помощи указки, аналогично модулю реконструкции Страстного монастыря.
В предварительном эксперименте участвовали 8 человек. Все испытуемые были праворукими. Их попросили провести взаимодействие с модулями верификации Страстного монастыря и промежуточной версией модуля реконструкции ландшафта Белого Города. Сначала пользователям запускали реконструкцию Страстного монастыря, давали освоиться в виртуальном пространстве. В реконструированном пространстве они сначала взаимодействовали с модулем верификации определённого здания, затем делали небольшой перерыв, исследуя территорию Страстного монастыря. Далее запускалась локация с модулем верификации территории Белого Города, где пользователи работали с обновлённым интерфейсом.
Испытуемым были даны в руки контроллеры, при помощи которых они взаимодействовали с виртуальной средой. Также при помощи этих контроллеров мы отслеживали движения кисти испытуемого (запись велась с помощью Steam VR). Испытуемые должны были изучить все источники; порядок их изучения был случайным, однако для интерфейса Белого города было необходимо выбирать источник каждый раз из другой категории, нежели предыдущий.
Результаты эксперимента обрабатывались при помощи пакета MATLAB. Вычислялось время движения от момента поднятия руки до момента её опускания после открытия источника, затем для каждого испытуемого было определено среднее время движения. Итоговое время варьировалось от 2 секунд до 9 секунд на одно взаимодействие. Среднее время взаимодействия для реконструкции Страстного монастыря составило 4,85 секунд, а для реконструкции Белого города - 4,05 секунды. Таким образом, на небольшой выборке скорость взаимодействия пользователя с новым интерфейсом показала себя значительно лучше предыдущего, при возросшем количестве данных сократив время доступа к ним.
* * *
Таким образом, в данном исследовании апробированы технологии виртуальной реальности, применяемые для отображения результатов исторической реконструкции. Получены результаты, включающие в себя новые алгоритмы и программно-аппаратные комплексы.
Созданное программное обеспечение для систем виртуальной реальности может быть интересно как рядовому пользователю, так и специалисту-историку, использующим встроенный модуль верификации исторических данных.
Важно отметить масштабируемость и универсальность получившегося решения для отображения виртуальных исторических реконструкций: архитектура системы и интерфейс строятся так, чтобы имелась возможность отображать исторические ландшафты и связанные с ними объекты культурного наследия, также значительное количество соответствующих исторических данных в единой виртуальной среде.
В дальнейшем планируется последовательно расширять источниковую базу, доступную из виртуальной среды, а также расширять экспериментальную выборку за счет новых пользователей, чтобы точнее оценить практическую эффективность нового интерфейса обеспечения интерактивного режима в среде виртуальной реальности.
ПРИЛОЖЕНИЕ
Задача расположения элементов интерфейса в пространстве
Принципы создания интерфейса базируются на моделировании и изучении свойств множеств достижимости управляемых динамических систем, к которым относятся глазодвигательная, опорно-двигательная системы, руки человека [11-13].
1. Рассматривается упрощенная динамическая модель движения руки в форме где – вектор состояния, и моделируется переход от одного элемента интерфейса к другому. , здесь – ограничения на положения руки;
2. Задача пользователя – как можно быстрее, с наименьшим количеством шагов, получить доступ к искомому информационному элементу интерфейса. Для этого требуется перейти («нажать») по определенному количеству интерактивных элементов;
3. Взаимное расположение интерактивных элементов получается из решения задачи , где — все возможные местоположения элементов интерфейса, между которыми происходит переход, - множество ограничений на позиции элементов интерфейса, коэффициенты - вероятности каждого перехода между элементами интерфейса (полученные из эксперимента или экспертным образом), – функционал, получаемый из взаимного положения пары элементов интерфейса и совпадающий со временем перехода между ними.
При этом важно отметить, что несмотря на различия в количестве источников для каждого объекта реконструкции, общий вид интерфейса предполагается однотипным для всех объектов. Исходя из этого, для «привыкшего» к интерфейсу пользователя можно рассматривать набор переходов между элементами как программную траекторию: пользователь сперва планирует, какой информационный элемент требуется вывести, после чего осуществляет рукой несколько последовательных целенаправленных движений между интерактивными элементами интерфейса. Для упрощения поиска функционала в качестве модели целенаправленного движения кисти руки используется система с кинематическим управлением («машина Дубинса»[14]) с подобранными из эксперимента параметрами. Траектория и время движения получается из решения задачи быстродействия, описанной ниже.
Моделирование оптимального перехода между элементами интерфейса
Пусть кисть руки движется в плоскости. Введём систему координат Oxy, где ось Ox направлена вперёд, а Oy – вверх. Введём – угол между осью Ox и направлением скорости движения кисти, (x, y) – координаты кисти в системе координат Oxy. Линейная скорость – скорость изменения расстояния между кистью и началом координат имеет ограничения .. Скорость изменения направления радиус-вектора кисти также ограничена: .
Рассмотрим систему, которая задаёт такое движение кисти:
(1)
Начальное положение кисти:
(2)
Надо попасть на поверхность
(3)
свободно. Нужно найти управление, оптимальное по быстродействию: . После введения дополнительной переменной функционал может быть представлен в следующем виде: .
Для поиска управления применим принцип максимума Понтрягина. Пусть дана управляемая система . В конечный момент система должна попасть на некоторое гладкое и без особых точек многообразие , причём это первый момент, когда достигается многообразие . Пусть это многообразие достижимо и существует оптимальное управление , доставляющее локальный минимум функционалу . Если известна тройка и , то можно выписать функцию Понтрягина и сопряжённую систему
(4)
Запишем для системы (1) функцию Понтрягина
и сопряжённую систему уравнений
(5)
Из условия трансверсальности следует, что .
Ни на каком отрезке одновременно не равны нулю. Иначе, на всём отрезке времени. Из условия стационарности следует, что , значит и получается нулевая пара , что противоречит условию.
В силу однородности сопряжённой системы можно пронормировать . Пусть . Тогда
На регулярном участке траектории
(6)
Можно показать, что не существует особого режима по . Предположим, , следовательно , . Из условия Келли следует, что .
На особом участке по выполняется условие , иначе и получается нулевая пара. Значит . Следовательно, и полученный особый режим – это движение по прямой с углом .
Возможные режимы движения:
· изменение направления скорости возможного движения с максимальной при нахождении кисти на месте;
· движение по эллипсу с максимальной угловой и максимальной линейной скоростями;
· движение по прямой с максимальной линейной скоростью.
Таким образом программная траектория конца второго звена руки может быть задана траекторией машины Дубинса, состоящей из движения по эллипсу с максимальных угловой и линейной скоростями и перемещения по прямой с максимальной линейной скоростью. Форма траектории, смоделированной таким образом (рис. 5), оказалась схожа с данными эксперимента (рис. 6), описанного выше.
Рис. 5. Пример смоделированной траектории целенаправленного движения кисти руки
Рис. 6. Пример траектории целенаправленного движения кисти руки, полученная в эксперименте
References
1. Borodkin L. I. Tekhnologii 3D-modelirovaniya i virtual'noi real'nosti v proektakh rekonstruktsii istoricheskikh gorodskikh landshaftov // Elektronnyi nauchno-obrazovatel'nyi zhurnal Istoriya. — 2020. — T. 11, № 3.
2. Borodkin L. I. O virtual'noi rekonstruktsii istoricheskogo gorodskogo landshafta Belogo goroda // Istoricheskaya informatika. — 2019. — № 4. — S. 90–96.
3. Mironenko M. S. Modul' verifikatsii 3d-rekonstruktsii ob''ektov istoriko-kul'turnogo naslediya v virtual'noi i dopolnennoi real'nosti/ Problema sovmeshcheniya 2d i 3d-materialov // Istoricheskie issledovaniya v kontekste nauki o dannykh: informatsionnye resursy, analiticheskie metody i tsifrovye tekhnologii. Materialy mezhdunarodnoi konferentsii Moskva, 4–6 dekabrya 2020 g. — Moskva, 2020. — S. 366–371.
4. Kruchinina A. P., Latonov V. V., Chertopolokhov V. A. Obzor tekhnologii vizual'noi imitatsii v trenazhernykh sistemakh // Pilotiruemye polety v kosmos. — 2019. — № 3. — S. 89–107.
5. High-frequency optical solution for human motion tracking and eye-tracking / V. A. Chertopolokhov, E. V. Khinenzon, A. V. Pravdivtsev, G. L. Grigoryan // Journal of Physics: Conference Series. — 2020. — Vol. 1560.
6. Prediction of saccadic eye movement for foveated rendering / A. Kruchinina, V. Chertopolokhov, G. Grigoryan, V. Belyaev // SID's Digest of Technical Papers. — Vol. 51 of Book 2: Session 54: AR/VR Technologies. — Wiley, 2020. — P. 54‐4.
7. Otobrazhenie istoricheskikh istochnikov dlya zadach virtual'nykh rekonstruktsii: primenenie optimizirovannogo prostranstvennogo interfeisa / M. S. Mironenko, M. D. Belousova, V. A. Chertopolokhov // Sbornik tezisov mezhdunarodnoi nauchnoi konferentsii Primenenie tekhnologii virtual'noi real'nosti i smezhnykh informatsionnykh sistem v mezhdistsiplinarnykh zadachakh FIT-M 2020 17-19 dekabrya 2020 g. S 29-345
8. Applying numerical optimization to arrangement of elements in spatial interface for historical Moscow center virtual reconstruction / L. Borodkin, S. Lemak, M. Belousova et al. // Proceedings of the 11th Majorov International Conference on Software Engineering and Computer Systems (MICSECS 2019). Ed. by Sergei Bykovskii, Pavel Kustarev, Dmitry Mouromtsev. Saint Petersburg, December 12-13, 2019. — Vol. 2590 of CEUR Workshop Proceedings (CEUR-WS.org). — CEUR-WS, 2020.
9. Inertial sensor based solution for finger motion tracking / S. Lemak, V. Chertopolokhov, A. Kruchinina et al. // COMPUTERS. — 2020. — Vol. 9, no. 2. — P. 1–18.
10. Tekhnologii virtual'noi i dopolnennoi real'nosti (vr/ar) v zadachakh rekonstruktsii istoricheskoi gorodskoi zastroiki (na primere moskovskogo Strastnogo monastyrya) / L. I. Borodkin, M. S. Mironenko, V. A. Chertopolokhov i dr. // Istoricheskaya informatika. — 2018. — № 3. — S. 76–88.
11. Kruchinin P. A. Analiz rezul'tatov stabilometricheskikh testov so stupenchatym vozdeistviem c tochki zreniya mekhaniki upravlyaemykh sistem // Biofizika. — 2019. — T. 64, № — S. 1010–1020. Perevod na angliiskii yazyk: ISSN 0006-3509, Biophysics, 2019, Vol. 64, No. 5, pp. 818–827. © Pleiades Publishing, Inc., 2019.
12. Kruchinina A. P., Yakushev A. G. Statisticheskoe issledovanie form odinochnogo sakkadicheskogo dvizheniya glaza // Fundamental'naya i prikladnaya matematika. — 2018. — T. 22, № 2. — S. 195–207.
13. Bugrov D. I., Formal'skii A. M. O nekotorykh svoistvakh granits oblastei dostizhimosti // XII Vserossiiskii s''ezd po fundamental'nym problemam teoreticheskoi i prikladnoi mekhaniki: sbornik trudov v 4 tomakh. — T. 1. — RITs BashGU Ufa, 2019. — S. 187–189.
14. L.E. Dubins. On curves of minimal length with a constraint on average curvature and with prescribed initial and terminal positions and tangents. American Journal of Mathematics, 79: 497−516, 1957.
|