Как делать стереоизображения с помощью одной камеры?

Я хочу найти карту глубины для стереоизображений. В настоящее время я работаю над изображением в Интернете, я хочу делать стереоизображения, чтобы я мог работать над ним самостоятельно. Как получить лучшие стереоизображения без большого шума. У меня есть одиночная камера. Нужно ли делать выпрямление? Какое расстояние должно быть между камерами?

3 ответа

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

  • Соотношение между расстоянием до объекта z (мм) и диспаратностью в пикселях D является обратным: z=fb/D, где f - фокусное расстояние в пикселях, а b - расстояние между камерами в мм. Выберите b так, чтобы у вас было как минимум несколько пикселей несоответствия;
  • Если вы знаете внутреннюю матрицу камеры и скомпенсировали радиальные искажения, вам все равно придется исправить свои изображения, чтобы убедиться, что совпадения расположены в одном ряду. Для этого вам нужно найти основную матрицу, восстановить существенную матрицу, применить выпрямительные гомографии и обновить параметры встроенной камеры... или использовать стереопары из Интернета.
  • Низкий уровень шума на изображении с камеры обеспечивается ярко освещенными сценами, большой апертурой, большим размером пикселя и т. Д.; однако, в зависимости от вашей настройки, вы все равно можете получить очень шумную карту диспаратности. Способ уменьшить этот шум - это найти компромисс с точностью и использовать большие окна корреляции. Другой способ очистить карту несоответствия - использовать различные методы проверки, такие как
  • проверка ошибок;
  • валидация уникальности или валидация
  • подавление блоб-шума и т. д.

По моему опыту:
-Я выполнил исправление, поэтому мне пришлось получить основную матрицу, и это может быть неправильно с некоторыми парами изображений.
- Лучшее разрешение вашей камеры лучше для соответствия, я использую OpenCV, и он имеет реализацию дескриптора BRISK, это было полезно для меня.
-Попробуйте охватить одну и ту же область и постарайтесь не делать ненужных поворотов.
-После того, как вы понимаете Теорию, OpenCV - хороший друг. Вот некоторый результат, но я все еще работаю над этим:

Карта глубины:

Исправленные изображения:

Не уверен, что понял вашу проблему правильно - все равно попробую

Полагаю, вы сейчас работаете с изображениями из Мидлбери или чем-то подобным. Если вы хотите использовать похожие алгоритмы, вы должны исправить свои изображения, потому что они основаны на предположении, что соответствующие пиксели находятся на одной линии на всех изображениях. Если вам действительно нужны глубинные изображения (!= Несоответствие изображений), вам также необходимо получить внешние характеристики камеры.

Ваша установка должна иметь две камеры, и вы должны убедиться, что они не меняют относительное положение / ориентацию - в противном случае ваше выпрямление развалится. На первом этапе вы должны откалибровать свою систему, чтобы получить внутренние и внешние параметры камеры. Для этого вы можете использовать какой-либо инструмент или свернуть свой собственный с (например) OpenCV ( калибровочный модуль). Распечатайте калибровочную доску для калибровки вашей системы. После этого вы можете делать снимки и использовать калибровку для их исправления.

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

Другие вопросы по тегам