2012-05-02 6 views
4

Мне было интересно, есть ли у кого-нибудь знания по перестройке трехмерных объектов из живой видеороликов. Есть ли какие-либо Java-примеры или документы JAVA, на которых я мог бы быть связан, поскольку я прочитал алгоритм, используемый для создания таких 3D-объектов. Если возможно, я хотел бы построить что-то вроде программы, представленной ниже в ссылке. В настоящее время моя программа записывает видео в реальном времени.3d Реконструкция из видео в реальном времени

http://www.youtube.com/watch?v=brkHE517vpo&feature=related

+0

Это невероятно трудная проблема. Весьма вероятно, что метод в видео не работает так хорошо в целом. – toto2

+0

Если вы управляете видеокамерой, вы можете использовать kinect. – danielbeard

+0

Хотя программы, которые видели в Интернете, похоже, были на C++, поэтому я уверен, что это si достижимо, в контролируемом envoirment, с Java. – user1371246

ответ

0

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

Эффективность таких методов также может быть значительно улучшена, если вы можете получить второе видео (стереовидение).

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

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

+0

Envoirment будет настроен на основе потребностей, вы будете сканировать только один объект за раз, так как этого я пытаюсь достичь на данный момент. – user1371246

3

3D-реконструкция объекта с одной точки зрения на самом деле невозможна. У вас есть две основные альтернативы: a) иметь систему стереофонической камеры, захватывающую объект, b) иметь только одну камеру, но вращая объект (так что у вас будут разные точки зрения объекта), например, тот, что в видео , Это базовая концепция, связанная с epipolar geometry.

Существуют и другие альтернативы, но более навязчивые. Некоторое время назад я работал над 3D-сканером на основе одной камеры и лазерного луча.

enter image description here

Для этого я использовал OpenCV который является C++ код, но теперь я думаю, что есть порты для Java. Имейте в виду, что 3D-реконструкция - непростая задача, и в результате приложение. должны быть в значительной степени параметризованы для достижения хороших результатов.

Смежные вопросы