Подтвердить что ты не робот

Как создать 3D-модель из 2D-изображения

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

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

Какой язык вы объясняете, не имеет значения, поскольку я ищу наилучший подход.

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

Затем части должны будут отличаться по цвету, чтобы помочь разделить различные части модели, которые я ожидаю.

4b9b3361

Ответ 1

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

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

Эпиполярная геометрия

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

Если у вас есть:

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

Если вам нужен метод, который не нуждается в параметрах камеры и работает для неизвестных настроек камеры, вы должны, вероятно, изучить методы некалиброванная стереореконструкция.

Задача о переписке

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

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

В настоящее время до сих пор не существует идеальной методики решения проблемы соответствия, но в этих категориях могут входить следующие подходы:

  • Ручной выбор: выберите подходящие точки поиска человека.
  • Пользовательские маркеры: размещайте маркеры или используйте определенные шаблоны/цвета, которые вы можете легко идентифицировать.
  • Сумма квадратов различий: возьмите область вокруг точки и найдите ближайшую целостную область соответствия на другом изображении.
  • График: глобальный метод оптимизации, основанный на оптимизации с использованием теории графов.

Для конкретных реализаций вы можете использовать Google Scholar для поиска по текущей литературе. Вот один высоко цитируемый документ, в котором сравниваются различные методы: Таксономия и оценка плотных двухкамерных стереокорреспонденционных алгоритмов.

Многооконная реконструкция

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

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

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

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

Альтернативы

Если это связано с ограничениями того, что вы хотите сделать, я бы рекомендовал рассмотреть специализированные аппаратные датчики (например, XBox Kinect) вместо только с использованием обычных камер. Эти датчики используют структурированный свет, время пролета или какой-либо другой метод визуализации диапазона для создания изображения глубины, которое они также могут комбинировать с данными о цвете от своих собственных камер. Они практически решают проблему восстановления одного вида для вас и часто включают библиотеки и инструменты для сшивания/объединения нескольких видов.

Ссылки на эпиполярную геометрию

Мои знания на самом деле довольно тонкие в большинстве теорий, поэтому я могу лучше всего предоставить вам некоторые ссылки, которые, надеюсь, будут полезны (в порядке релевантности):

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

Ответ 2

Эта проблема называется Photogrammetry.

Google предоставит вам бесконечные ссылки, просто имейте в виду, что если вы хотите перевернуть свои собственные, это трудная проблема очень.

Ответ 3

Google Sketchup (бесплатно) имеет инструмент для сопоставления фотографий, что позволяет сделать фотографию и сопоставить ее перспективу для легкого моделирования.

EDIT: Кажется, что вы заинтересованы в разработке своего собственного решения. Я думал, вы пытаетесь получить 3D-модель изображения в одном экземпляре. Если этот ответ не поможет, прошу прощения.

Ответ 4

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

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