ТЕХНОЛОГИЯ СОЗДАНИЯ ВИРТУАЛЬНЫХ ИНТЕРАКТИВНЫХ ТУРОВ RUBIUS 3DTourKit

Работа выполнялась в рамках сотрудничества с Центром инноваций «Майкрософт» при Национальном исследовательском Томском политехническом университете. По результатам VII Всероссийской научно-практической конференции

студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования» проект был награждён дипломом 1 степени в секции «Геоинформационные системы». Поддержан грантом «У.М.Н.И.К.».

СПИСОК ЛИТЕРАТУРЫ

1. Зайцева М.А., Дорофеев С.Ю., Кошевой С.Е. Визуально-интерактивная технология интеграции САПР и ГИС // Технологии Microsoft в теории и практике программирования: Сб. трудов VII Всеросс. научно-практ. конф. студентов, аспирантов и молодых ученых. - Томск: Изд-во ТПУ, 2010. - C. 52—54.

2. Зайцева М.А., Дорофеев С.Ю. CADGIS Integrator — комплексная технология интеграции САПР и ГИС // Студент и научнотехнический прогресс. Информационные технологии: Матер. XLVIII Междунар. научной студенч. конф. — Новосибирск: НГУ, 2010. — С. 31.

3. Зайцева М.А., Кошевой С.Е., Лысак А.П. Технология обмена данными между ГИС и САПР CADGIS Integrator // Современные техника и технологии: Сб. матер. XVI Междунар. научно-

практ. конф. студентов, аспирантов и молодых ученых. — Томск: Изд-во ТПУ, 2010. — C. 318—320.

4. Обзор формата GML. 2010. URL: http://www.opengeospati-al.org/standards/gml (дата обращения: 10.05.2010).

5. Обзор технологии FDO. 2010. URL: http://fdo.osgeo.org/ (дата обращения: 16.05.2010).

6. Челядинов Е.А. Feature Data Objects — комплекс решений для

доступа к пространственным данным // Географические информационные системы и дистанционное зондирование, 2009. URL: http://gis-lab.info/qa/fdo.html (дата обращения:

22.05.2010).

Поступила 05.09.2010 г.

УДК 004.42:771.347.5

ТЕХНОЛОГИЯ СОЗДАНИЯ ВИРТУАЛЬНЫХ ИНТЕРАКТИВНЫХ ТУРОВ RUBIUS 3DTourKit

М.А. Зайцева1-2, А.П. Лысак1, С.Ю. Дорофеев1-2

Томский университет систем управления и радиоэлектроники 2ООО «Рубиус» г. Томск E-mail: Maria.Zaitseva@rubius.com

Кратко описаны основные типы проекций для Эй-панорам. Сформулированы проблемы, возникающие при создании интерактивных виртуальных туров. Описывается комплектация и основные возможности технологии Rubius 3DTourKit. Описываются структура и основные возможности программной системы Rubius 3DTourKit Studio для создания виртуальных туров на основе 3й-панорам, а также использованные методики и технологии.

Ключевые слова:

3D-панорама, виртуальный тур, Rubius 3DToarKit Studio, эквидистантная и кубическая проекции, XML, C#, Action Script, высотный штатив, панорамная головка.

Key words:

3D-pаnorаmа, virtual tour, Rubius 3DTourKit Studio, equirectangular and cubic projections, XML, C#, Action Script, high tripod, panorama head.

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

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

увеличивая его (вплоть до гигапиксельных разрешений High Definition, HD-панорамы) [1].

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

В свою очередь, виртуальный 3Б-тур — это набор таких панорам, перемещение между которыми происходит посредством специальных участков на панораме. Достаточно только щёлкнуть мышью

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

Наиболее известной реализацией технологии создания интерактивных виртуальных туров на основе 3D-панорам является Google Street View, позволяющая пользователям осуществлять прогулки по целым городам.

Рассмотрим основные способы представления панорамы в виде 2D-изображения, хранимого на компьютере: эквидистантную и кубическую проекции [1].

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

После получения проекций 3D-панорамы её необходимо программным образом преобразовывать обратно для представления в виде сферы. Для этого существуют специальные программы — панорамные плееры. Именно на уровне визуализации в панорамных плеерах происходит внедрение различных интерактивных эффектов.

Таким образом, весь процесс создания виртуального тура сводится к следующим действиям:

1. Осуществление фотосъемки объектов, которые войдут в виртуальный тур.

2. Обработка полученных результатов, создание из ряда отдельных фотоснимков набора 3D-m-норам.

3. Программирование эффектов интерактивности и изготовление виртуального тура (программирование переходов).

Опишем трудности, которые возникают на каждом из этапов изготовления виртуального 3D-тура:

1. Подготовка фото-материала (фотосъёмка).

Существуют различные технические ограничения на оборудование, с применением которого производится съёмка. Ни один из объективов не в состоянии передать все пространство целиком, за один кадр. Единовременно можно сфотографировать лишь часть окружающего пространства. Для этого лучше всего подходят широкоугольные объективы, которые позволяют отснять окружающую сферу за минимальное количество кадров. Однако у таких объективов присутствуют сильные геометрические искажения - дисторсия [2]. В результате искажений дальнейшая обработка материала значительно усложняется, а качество будущей панорамы заметно снижается. Таким образом, приходится искать некоторый компромисс между простотой изготовления и качеством результата.

Кроме проблемы с выбором фотоаппарата и объектива возникает также проблема динамики съёмки: фотоаппарат не должен дрожать при съёмке и должен вращаться максимально близко к но-дальной точке объектива. Нодальная точка - это точка внутри объектива камеры, где пересекаются лучи света, идущие к пленке или матрице. Эта мера позволяет значительно снизить негативное влияние «паразитного» параллакса [3] между отснятыми кадрами. Параллакс - это смещение объектов переднего плана относительно объектов заднего плана при повороте камеры. Для вращения вокруг нодальной точки обычно используются специальные панорамные головки.

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

2. Обработка фотоматериала.

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

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

3. Добавление интерактивности.

Панорама воспроизводится панорамными плеерами, созданными на основе Java, QuickTime или Adobe Flash (ActionScript) технологий, позволяя задействовать все их богатые возможности для реализации различных интерактивных эффектов. Так как Java и QuickTime технологии требуют загрузку специальных надстроек для браузера, которые могут достигать десятков мегабайт, а технология Adobe Flash является стандартом де-факто и присутствует на компьютерах большинства пользователей, поддерживает аппаратное ускорение, то именно она получает значительное преимущество при реализации интерактивных 3D-туров.

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

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

Перечисленные выше проблемы явились предпосылками для создания собственной технологии Rubius 3DTourKit, ориентированной на неподготовленного пользователя, реализующей все этапы создания интерактивных виртуальных туров за короткий срок и с высоким качеством. Эта технология будет состоять из «полуфабрикатов», созданных высококвалифицированными специалистами в необходимых сферах (программисты ActionScript, фотографы, конструкторы и т. п.), которые можно очень легко использовать и настраивать для создания виртуальной панорамы для каждого конкретного случая. Таким образом, покупатель данной технологии получает полный набор оборудования, программных средств и инструкций, необходимых для создания качественных интерактивных виртуальных туров.

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

ственных преимуществ перед рассмотренными аналогами. Рассмотрим каждый из разработанных компонентов в отдельности.

1. Панорамная головка КиЫш ЗБТоигКй Ра-поНеаё 3.

После анализа процесса съёмки панорам выяснилось, что важнейшими факторами для выполнения качественной фотосъёмки являются:

• поворот оптической системы вокруг нодальной точки, расположенной на главной оси объектива и находящейся внутри системы линз;

• постоянство угла наклона камеры и постоянство угла поворота, а также сохранение плоскостей поворота;

• сохранение положения нодальной точки объектива относительно точки съёмки.

Рис. 2. Вид панорамной головки и высотного штатива в процессе съёмки

При анализе характеристик аналогов (Manfrotto 303SPH, Nodal Ninja 3, серия 360 Precision) выяснилось, что они обладают следующими основными недостатками: недостаточная прочность конструкции, большие вес и габариты, высокая стоимость, возможность повреждения фотоаппарата или объектива при использовании (у 360 Precision Atome).

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

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

• поворотная пластина- осуществляет смещение фотокамеры в вертикальной плоскости на 90°, для съемки зенита и надира;

• подставка под камеру - необходима непосредственно для крепления фотоаппарата.

Таким образом, была получена лёгкая разборная панорамная головка, имеющая достаточную прочность для того, чтобы выдержать фотоаппарат с объективом (рис. 2). Реализована возможность настройки геометрических параметров для различных моделей фотоаппаратов и объективов. При этом стоимость панорамной головки ниже стоимости аналогов со схожими характеристиками в 3...5 раз.

2. Высотный штатив Rubius 3DTourKit Sky 2. Из опыта съёмки различных объектов выяснилось, что панорамы, снятые с высоты, значительно превышающей рост человека, оказываются гораздо более эффектными, чем панорамы, снятые с обычной высоты. В результате эффекта, возникающего у наблюдателя при просмотре 3D-панорамы, возникает ощущение «парения», «свободного полёта» над наблюдаемой сценой, что очень необычно и поэтому приносит особенно яркие эмоции. Особенно это касается уличных панорам и панорам больших залов - конференц-залов, театров, клубов, например, 3D-тур элитного клуба-ресторана «TEATRO» [4].

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

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

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

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

Начальным положением является направленность фотоаппарата объективом вниз под углом в 45° относительно горизонта. Сделав серию снимков по периметру в данном положении фотоаппарата, нужно прокрутить катушку с числом щелчков, равным 5 для изменения угла обзора на 45°. После съёмки камеры по периметру в данном положении процедура повторяется ещё раз. Отсчитывается ещё 5 щелчков, после чего камера достигает последнего положения.

Таким образом, была создана модель высотного штатива, которая позволяет быстро и удобно выполнять непрерывную съёмку на высоте до 4,3 м. Помимо этого модель удобна в монтаже и демонтаже, имеет небольшой вес (около 5 кг), что значительно облегчает транспортировку и эксплуатацию.

3. Программа для создания интерактивных туров Rubius 3DTourKit Studio.

Разрабатываемое программное обеспечение ориентировано, прежде всего, на неподготовленного пользователя. Она реализует все этапы создания интерактивных виртуальных туров за короткий срок и с высоким качеством [5].

В качестве языка написания программного обеспечения был выбран язык программирования .NET C# и среда разработки Visual Studio.

Процесс разработки состоял из следующих этапов:

1. Анализ существующих аналогов, формулирование требований.

2. Проектирование UML-моделей диаграмм деятельности, вариантов использования, диаграмм классов, поиск уже существующих компонентов и механизмов их взаимодействия.

3. Генерация по UML-диаграммам каркасного кода и его последующее заполнение функциональным кодом.

4. Тестирование программы при выполнении реальных задач.

При выборе способа реализации графического интерфейса пользователя в качестве прототипа был взят интерфейс Visual Studio 2008. Внешний вид интерфейса Rubius 3DTourKit Studio показан на рис. 3.

Интерфейс можно условно разделить на следующие части [6]:

1. Главное меню.

2. Панель инструментов «Стандартная» - содержит кнопки быстрого доступа ко всем основным действиям программы (открытие тура, сохранение, и т. д.).

3. «Инструменты» - предназначено для внедрения интерактивности в разрабатываемый вир-

Рис. 3. Главное окно программы

туальный тур. Она включает в себя перечень всех интерактивных эффектов.

4. «Обозреватель проекта» - содержит в себе дерево элементов тура.

5. «Свойства» - отображает значения свойств объекта, выделенного в дереве элементов виртуального тура.

6. «Редактора виртуального тура» - интегрированный панорамный Flash-плеер.

7. «XML-редактор» - интегрированный редактор XML-кода с подсветкой синтаксиса.

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

Во избежание данных недочетов, при реализации редактора панорам был использован ActiveX Shockwave Flash Object компонент. Первым слоем в данный компонент загружается плеер для просмотра панорам, вторым слоем - реализованная в Action Script в виде Flash компонента система визуального добавления эффектов интерактивности. Данная система и плеер связанны через Action Script интерфейс, что позволяет разделить функциональность между элементами и оставить за плеером функции отображения панорамы и элементов интерактивности, а методы рисования, создания активных областей, выделения, перемещения и редактирования отнести к системе визуального добавления эффектов интерактивности. Таким образом, пользователь располагает эффекты поверх загруженной в плеер панорамы и видит, как они выглядят на самом деле.

XML - сообщение

’

Пользовательский Подключенный

интерфейс Flash-плеер

Система визуального добавления эффектов интерактивности

Рис. 4. Схема взаимодействия между элементами программной части технологии Rubius 3DTourKit Studio

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

Взаимодействие между частями программы, написанными на C# и Action Script, было организовано через обмен сообщений в формате XML (рис. 4).

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

1. Стандартные механизмы сериализации идесе-риализации.

2. Поддержка панорамным плеером скриптов в формате XML.

3. Метод взаимодействия C# и Action Script, по средствам XML сообщений.

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

В результате работы создана технология Rubius 3DTourKit, охватывающая все этапы создания виртуальных туров на основе 3D-панорам, начиная

со съёмки и заканчивая добавлением интерактивных эффектов на панораму. Были созданы такие компоненты технологии, как панорамная головка, высотный штатив, программная система Rubius 3DTourKit Studio для создания виртуальных туров и добавления интерактивных эффектов, разработан модуль редактирования панорам посредством XML, а также карта тура для просмотра связей и переходов между отдельными панорамами.

При дальнейшей разработке программы планируется увеличить базу эффектов интерактивности, встроить в редактор синтаксиса технологию «Intel-liSense» (всплывающее окно с возможностью вы-

бора элемента синтаксиса), разрабатывать специализированные редакторы для сложных эффектов интерактивности. Получено свидетельство о регистрации ПО № 2009610539 [7].

Работа профинансирована грантами: «У.М.Н.И.К.», «Бизнес-СТАРТ», выполнена при поддержке Центра инноваций Microsoft при Национальном исследовательском Томском политехническом университете. По результатам VIIВсероссийской научно-практической конференции студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования» проект был награждён дипломом 1 степени в секции «Технологииразработки и проектирования информационных систем».

СПИСОК ЛИТЕРАТУРЫ

1. Панорамный мир. 2010. ИЯЬ: http://panoworld.narod.ru (дата обращения: 08.07.2010).

2. Дорофеев С.Ю., Тюгаев Д.Н. Создание аппаратно-программного комплекса для изготовления виртуальных туров на основе интерактивных 3Б-панорам // Инновационные технологии кафедры КСУП: Научно-практическая конференция. -Томск, 2008.

3. Дорофеев С.Ю., Тюгаев Д.Н. Интерактивные виртуальные 3Б-Туры // Научная сессия ТУСУР-2009: Матер. докладов Все-росс. научно-техн. конф. студентов, аспирантов и молодых учёных. - Томск: В-Спектр, 2009. - С. 338-341.

4. Панорама, снятая высотным штативом. 2010. ИЯЬ: http://www.teatro.tomsk.ru (дата обращения: 08.07.2010).

5. Лысак А.П., Зайцева М.А., Сидоренко В.В. Проектирование системы для создания виртуальных туров Rubius 3DTourKit Studio // Научная сессия ТУСУР-2010: Матер. докл. Всеросс. научно-техн. конф. студентов, аспирантов и молодых учёных. - Томск: В-Спектр, 2010. - С. 347-349.

6. Лысак А.П., Зайцева М.А., Дорофеев С.Ю. Программа для создания виртуальных туров Rubius 3DTourKit Studio // Технологии Microsoft в теории и практике программирования: Сб. трудов VII Всеросс. научно-практ. конф. студентов, аспирантов и молодых ученых. - Томск: Изд-во ТПУ, 2010. - С.158-160.

7. Сайт компании-производителя Rubius 3DTourKit. 2010. URL: http://www.rubius.com (дата обращения 08.07.2010).

Поступила 05.09.2010 г.

УДК 681.5

СИНТЕЗ ПИД-РЕГУЛЯТОРА С УЧЕТОМ РАСПОЛОЖЕНИЯ НУЛЕЙ И ПОЛЮСОВ СИСТЕМЫ АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ

С.В. Ефимов, С.В. Замятин, С.А. Гайворонский

Томский политехнический университет E-mail: efimov@tpu.ru

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

Ключевые слова:

Система автоматического регулирования, перерегулирование, время регулирования, нули и полюсы системы, корневой подход, синтез.

Key words:

Automatic control system, overshoot, settling time, zeros and poles of system, root approach, synthesis.

По различным оценкам, более 90 % реально используемых в системах автоматического регулирования (САР) регуляторов - это классические ПИД-регуляторы, синтезированные на основе традиционных инженерных методов [1]. Согласно проведенным на 350 предприятиях исследованиям ста тысяч контуров регулирования установлено, что 49...63 % контуров работают со «слабыми» (приближенными к размыканию контура) на-

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

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

Рассмотрим САР со структурой, представленной на рис. 1, где X - задающее воздействие, У -выходной сигнал, е - ошибка регулирования.