Заключительный отчет GSoC ’17
Этим летом мне посчастливилось поработать над проектом ViSP-Unity Augmented Reality Demonstration с моими замечательными наставниками Marc Poliquen и Fabien Spindler в рамках Программы Google Summer of Code. Я работал над обеспечением функциональности ViSP в движке Unity3D, и теперь, когда программа завершена, я хотел бы воспользоваться моментом, чтобы обобщить то, что я сделал, вспомнить многие вещи, которые я узнал из множества успехов и неудач, и поговорить о будущая работа в космосе.
Этот пост направлен на то, чтобы связать и перечислить все вехи, разработанные во время моего проекта, и соответствующие коммиты, а также пропущенные цели и работу, которую предстоит выполнить в будущем.
Достигнутые вехи
- Плагин веб-камеры
Вот коммиты, демонстрирующие работу, которую я проделал для фазы I проекта, которая заключалась в написании плагина, передающего веб-камеру из Unity в разделяемую библиотеку ViSP C++: https://github.com/aryamihirsingh/visp_unity/commits /webcam_plugin
2. Плагин отслеживания больших двоичных объектов ViSP
Следующая ссылка коммитов представляет собой работу, которую я проделал для фазы II проекта, который должен был обеспечить функциональность отслеживания отдельных BLOB-объектов: https://github.com/aryamihirsingh/visp_unity/commits/blob_tracker.
3. Обнаружение четырех пятен ViSP и оценка положения.
Наконец, переходим к части проекта с дополненной реальностью (фаза III), для которой код написан с целью симуляции оценки позы в Unity с использованием четырех BLOB-объектов. Вот коммиты, показывающие мою работу: https://github.com/aryamihirsingh/visp_unity/commits/four_blob_track
Некоторые ссылки
Вот несколько ссылок на демонстрацию дополненной реальности, предоставленных ViSP. Написание разделяемых библиотек в значительной степени было получено из следующего кода.
Вот ссылка на репозиторий Github для ViSP Unity:
Вот лайк моему форку, посвящённому всей моей работе GSoC’17
Уроки выучены
В то время как я узнал о таких инструментах, как Unity и различных типах приложений дополненной реальности в целом, я также получил несколько общих советов от своих наставников, которые обязательно буду использовать в будущем.
Всегда просите о помощи, если вам это нужно
Мне повезло, что у меня был легкий доступ к моим наставникам через слабый канал, разговоры Google Hangouts, и поэтому мы часто обсуждали различные приемы, о которых мы думали для приложения дополненной реальности и других аспектов кода. Кроме того, у нас было несколько видеозвонков, чтобы обсудить все, что было трудно передать через Интернет. Их постоянная доступность в огромной степени способствовала моему прогрессу, и я очень рад, что обращался за помощью всякий раз, когда мне это было нужно.
Никогда не думайте, что что-то легко
Когда я писал свое предложение, я предполагал, что внедрение приложения дополненной реальности в Unity будет простым делом. Действительно, написать несколько первых версий для начала работы было довольно просто. Однако более поздние части (отслеживание больших двоичных объектов) были гораздо более сложными. В результате я потратил на два последних этапа проекта гораздо больше времени, чем планировалось изначально, что ограничило количество времени, которое я должен был поработать над другими вещами, изначально изложенными в предложении.
Таким образом, важно быть быть гибким и быть готовым изменить свои рабочие приоритеты, когда возникают препятствия.
Пропущенные вехи / Будущая работа
- Одна из вещей, которая изначально планировалась в предложении и не могла быть реализована, заключалась в размещении GameObject в Unity в центре четырех BLOB-объектов, изображая правильную ориентацию GameObj, показывающую положение BLOB-объектов.
- Android-приложение для демонстрации дополненной реальности. Приложение для Android, которое может использоваться устройствами для предоставления функций дополненной реальности, предлагаемых ViSP.
Я собираюсь продолжать вносить свой вклад в ViSP и работать над улучшением функциональных возможностей ViSP в движке Unity. :)
Спасибо.