В рубриці DOU Labsми запрошуємо IT-компанії ділитись досвідом власних цікавих розробок та внутрішніх технологічних ініціатив. Питання і заявки на участь надсилайте на editors@dou.ua.
R&D-підрозділ компанії SoftServe розробив мобільний додаток Tustan AR, який за допомогою технології доповненої реальності показує, як виглядала середньовічна наскельна дерев’яна фортеця ІХ—ХVІ сторіччя Тустань, залишки якої розташовані в Українських Карпатах.
Ідея
Ідея реконструкції прийшла до Михайла Рожка, українського вченого та краєзнавця, близько 50 років тому, коли він вперше приїхав до фортеці. Зараз його мрію втілює син Василь Рожко. Саме він поділився ідеєю з SoftServe.
До нас звернулися з пропозицією вирішити цікаву унікальну проблему, яка збігалася з технологічними дослідженнями R&D-відділу SoftServe в 2017 році. Рівень складності завдання ми зрозуміли вже пізніше. Познайомившись з Василем Рожко, засновником заповідника та фестивалю «Ту Стань!», ініціатором проекту, ми зарядилися його ентузіазмом і вирішили допомогти незважаючи на складність. Розроблене нами рішення можна в подальшому використовувати для реконструкції інших пам’яток в Україні. Ми готові ділитися нашими напрацюваннями задля збереження історичної спадщини.
Реалізація
Тустанська фортеця виявилася одним із найскладніших завдань у цьому напрямку, адже нам критично не вистачало основної інформації для розпізнавання і узгодження в доповненій реальності, а також в загальній архітектурній та історичній цифровій реконструкції. На сьогоднішній день самої фортеці не існує — відоме лише точне місце на скелі, де розміщувалися дерев’яні дошки. Крім того, місцевість не схожа на ту, де зазвичай будувалися традиційні історичні пам’ятки. Також виявилося, що скелі з часом теж руйнуються та змінюють вигляд.
Робота над проектом тривала упродовж року за участі двох фахівців R&D-відділу. Ми почали реконструкцію з детальних замірів локації з використанням дронів, вивчення існуючих матеріалів та планів. Проаналізувавши вже доступні технології, ми зупинилися на Vuforia, що вважалася на час розробки найпоширенішою у світі платформою доповненої реальності. Вона працює з наперед визначеними маркерами, що мають точне розташування. На цьому етапі використання вже існуючих технологій майже вичерпалося. Протестувавши декілька технологій як з відкритим, так і закритим кодом, ми зрозуміли, що вирішення задачі потрібно починати з найнижчого рівня базової математики.
Завдання полягало в тому, щоб скелі, зображені на фотографіях (із синім виділенням), збігалися зі скелями в реальному середовищі (на початковому етапі даних не існувало) та скелями на розробленій 3D-моделі (з помаранчевим виділенням). 3D-модель повинна збігатися з реальним ландшафтом, враховуючи глибину і відсікання.
Камера і модель мають багато параметрів, таких як фокальна відстань та фізичний розмір сенсора, спотворення лінзи, масштабування і обертання. Відповідно, підібрати ці параметри швидко і точно — непросте завдання. Саме тому ми використали декілька алгоритмів для математичного моделювання реконструкції.
Для визначення параметрів камери був використаний плагін BLAM для Blender. Це спрацювало бездоганно, але не вирішило завдання, оскільки на території колишньої фортеці і навколо неї не було довгих прямих ліній. Щоб уникнути пошуку фактичного розташування точок для візуальних маркерів в ручному режимі, ми додатково проаналізували такі технології, як OpenCV для реконструкції параметрів камер, пакет програм для роботи із лазерним скануванням LAStools і техніку фотограмметрії та MeshLab.
Ми вирішили використати алгоритми отримання структури з руху SFM (structure from motion) і MVS (multi view stereo), на яких базується проект Photo Tourism та Google Street View, щоб отримати цифрову модель, яка показує параметри камери, позицію фотографії у просторі і трансформацію 3D-моделі.
Під час експериментів з’явилася ідея відмовитися від жорстких друкованих маркерів. За допомогою Google Tango вдалося побудувати функціональність, яка надає можливість розташувати замок у доповненій реальності відповідно до будь-якої пласкої поверхні у кімнаті для тих, у кого є Tango-сумісний телефон або планшет. На сьогодні Tango-сумісні пристрої не дуже розповсюджені, але ми працюємо над тим, щоб у найближчому майбутньому запропонувати набагато більше інтерактивних функцій для додатку Tustan AR за допомогою новішої AR технології від Google ARCore.
Результат
Зараз додаток Tustan AR доступний в режимі реального часу на місці знаходження історичної пам’ятки за будь-яких погодних умов. Крім того, зображення можна побачити дистанційно, завантаживши безкоштовний додаток в App Storeчи Play Market. Код і моделі можна знайти у відкритому доступі.Наразі наша команда працює над наступним логічним кроком розробки додатку — Tustan VR.
Завдяки розробці AR-додатку для телефонів, нам вдалося завчасно підготуватися до приходу нового масового технологічного тренду, як це було з VR декілька років тому. Ми плануємо і надалі активно розвиватися в обох напрямках — з використанням додаткових гаджетів та взагалі без них.
Проектна команда Tustan AR
Ми довго обговорювали термінологію AR/VR/MR і з набутим досвідом пішли глибше і ширше. У структурі R&D-відділу з’явився новий напрямок «Interactive», який займається проектами з використанням цих технологій, а також computer vision та потенційно digital twins.