2016-05-30 2 views
0

Если мы хотим захватить изображение тела, используя четыре (4) веб-камеры с 16-мегапиксельной (1 спереди, 1 сзади и 2 стороны (влево и вправо)). Можно ли сделать 3D из него с помощью обработки изображений?C# Обработка 3D-изображений

+0

Я рекомендую вам задать свой вопрос здесь: http://dsp.stackexchange.com/ – CCamilo

+0

спасибо за это – cydi

ответ

0

Да, вы можете получить 3D-данные только для Google 3D-реконструкция с использованием стереоскопической фотографии.

  1. Вы должны знать некоторые свойства ваших камер

    как положения и ориентации в 3D пространстве, FOV углы обзора. Для их получения вам необходимо выполнить калибровку камер. Обычно некоторые маркеры добавляются в представление, чтобы сделать этот процесс более простым и точным.

  2. Создать список всех значимых точек (SIFT/SURF)

  3. Match их между изображениями (RANSAC)
  4. Triangulate найдено соответствие пар/тройни/quadlets, чтобы получить их 3D-координаты

    Позиция пикселя внутри изображения и положение/ориентация камеры/FOV дает вам точку начала луча и directio n светового луча от вашего 3D пункт. Поэтому, если у вас есть как минимум 2 луча для одной и той же точки, их пересечение даст вам координаты 3D. Не забудьте преобразовать все лучи в общую систему координат перед вычислением пересечения.

    img

1

Нет, вы не смогли бы построить 3D-данные из конфигурации камеры с углами обзора, разделенных на 90 градусов. Полученные изображения не будут обладать перекрывающимися областями, поэтому соответствующие точки не доступны. Было бы разумно, если у вас есть две камеры (стереопары) для каждой передней/задней/боковых сторон. Или, если вы можете повернуть объект в центре, вы можете иметь только одну стереопару и объединить все 3D-данные в одном глобальном пространстве.

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