Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Растояние до объекта на фотографии


Автор: 56illusion 5.1.2011, 13:06
Всем привет. 
Передомной стоит задача получить фотографию из потока веб камеры и полагаясь на фотографию определить растояние до определённого объкта.
Как уже и стало понятно это касаеться компьютерного зрения. пользуюсь библиотекой openCV. Сначало думал о том чтобы вычислять растояние до объектов при помощи ПАРАЛАКСА но для этого мне придёться использовать две веб камеры. Затем я подумал о том что должен быть способ ( алгоритм ) который сможет задействовать всеголишь одну веб камеру

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

Есть идеи?? это возможно??

Автор: Pavia 5.1.2011, 13:42
56illusion, Это практически не возможно. Хотя работы есть. Из разной дальности объекты по разному фокусируются.  Вот вычисляя в точках размытость можно оценить длину до объекта. 

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

Автор: Bitter 5.1.2011, 14:50
56illusion, да это практически невозможно, если Вы напишете таку программу, то заработаете уйму денег только на преобразовании 2D фильмов в 3D

Автор: 56illusion 5.1.2011, 14:57
а используя паралакс можно вычеслить растояние в плоть до каждого пикселя на фотографии?? ( с условием что снимок только один с каждой камеры )

Автор: Pavia 5.1.2011, 15:03
56illusion
Нет там тоже нету 100% Дело в том что 3 объекта на 2 снимках могут оказаться в разных положениях, в разных порядках. Что затруднят анализ.  Но в основном работает.

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

Автор: 56illusion 5.1.2011, 15:15
Разработка алгоритма для такого анализа без соомненно будет интересной...Вить зная растояние до объекта ( человека ) можно вычислить его рост. ширину...а фокусируясь только на лице можно узнать состояние его зрачков ( расширенные или нет ) и т.д
Школьного уровня математике достаточно для такой работы?

Добавлено через 11 минут и 45 секунд
Цитата

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


Допустим прочитал получил массив пикселей, как определить уровень размытости.. есть ли фунция для этого?? 

Автор: Bitter 5.1.2011, 17:15
Цитата(56illusion @  5.1.2011,  15:15 Найти цитируемый пост)
Допустим прочитал получил массив пикселей, как определить уровень размытости.. есть ли фунция для этого?

Это всё не будет работать! Так как в интервале резкости камеры нет размытых пикселей, и в этом интервале вы не сможете получить значение глубины, коме того некоторые объекты имеют градиентные переходы цветов, то приведет к ложной размытости при вычислении степени размытости пикселя.

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

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

Автор: 56illusion 5.1.2011, 17:23
Спасибо большое. Я примерно понял за что именно нужно цепляться, если пользоваться одной камерой..Уверен за такое уже брались многие программисты и если это возможно, пусть даже сложно то должен существовать гдето алгоритм или статья на эту тему.. продолжу поиски в сети.

Автор: миг 10.1.2011, 15:58
Цитата(56illusion @ 5.1.2011,  13:06)
Всем привет. 
Передомной стоит задача получить фотографию из потока веб камеры и полагаясь на фотографию определить растояние до определённого объкта.
Как уже и стало понятно это касаеться компьютерного зрения. пользуюсь библиотекой openCV. Сначало думал о том чтобы вычислять растояние до объектов при помощи ПАРАЛАКСА но для этого мне придёться использовать две веб камеры. Затем я подумал о том что должен быть способ ( алгоритм ) который сможет задействовать всеголишь одну веб камеру

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

Есть идеи?? это возможно??

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

Автор: zloyMolo4nik 13.9.2011, 15:06
Уважаемый 56illusion, я тоже начал заниматся этим вопросом, вот моя почта [email protected], обращайтесь может поделимся опытом

Автор: mrgloom 15.9.2011, 09:11
depth map 
но надо знать освещение иначе ничего не выйдет.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)