roboforum.ru

Технический форум по робототехнике.
Текущее время: 17 фев 2025, 09:00

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 14:33 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
В архиве StereoVision 1.0beta.rar содержится пример использования библиотеки deepmeter.dll. Пример написан на Дельфи 7. В библиотеку подаётся два изображения 320х240(точнее указатели на него), а на выходе получаем КГ 320х240 для левого ракурса, никаких других данных вводить не требуется. Но без труда библиотеку можно запустить из любого языка программирования.

На входе в библиотеку нужно подать две матрицы 320x240хRGB(24бита) с левой и правой камеры.
На выходе будет матрица 320х240, где каждое значение будет равно либо 0(не найденно), либо от 1 до 50. Эти значения и будут говорить об удалённости каждого пикселя изображения от камеры. Перевести их в физические величины измерения нужно будет самостоятельно. Проще всего замерить опытным путём, т.к. оно зависит от стереобазы съёмки.


Требование к стереопарам:
1. Разрешение должно быть 320х240
2. Правильная последовательность ввода изображений в библиотеку(типа левую в левый, правую в правый).
3. Убрать дисторсию и любые другие геометрические искажения картинок.
4. Оси камер при съёмке должны быть параллельны.

Стереопары для тестов я брал в основном с http://vision.middlebury.edu/stereo/. Там у них убрали искажения и есть проверочные карты глубины, построенные с помощью структруированного света. А так же случайные из интернета.

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

Представлена картинка иллюстрирующая зависимость параллакса от расстояния. Т.е. градация измерения меняется с ростом расстояния.

Отредактирую "шапку" с более точным описанием и целями чуть позже. Ещё позже выложу теорию стереозрения. Появляющиеся проблемы/вопросы давайте писать в этой теме.


Вложения:
12.jpg
12.jpg [ 103.1 КиБ | Просмотров: 2944 ]
stereo.JPG
stereo.JPG [ 25.68 КиБ | Просмотров: 2944 ]
disparity.JPG
disparity.JPG [ 8.42 КиБ | Просмотров: 3180 ]
test8.JPG
test8.JPG [ 71.13 КиБ | Просмотров: 3121 ]
test7.JPG
test7.JPG [ 80.28 КиБ | Просмотров: 3099 ]
test6.JPG
test6.JPG [ 76.24 КиБ | Просмотров: 3136 ]
test5.JPG
test5.JPG [ 49.31 КиБ | Просмотров: 3123 ]
test4.JPG
test4.JPG [ 54.36 КиБ | Просмотров: 3102 ]
test3.JPG
test3.JPG [ 66.64 КиБ | Просмотров: 3101 ]
test2.JPG
test2.JPG [ 80.53 КиБ | Просмотров: 3115 ]
test1.JPG
test1.JPG [ 65.5 КиБ | Просмотров: 3113 ]
StereoVision 1.0beta.rar [2.61 МиБ]
Скачиваний: 0


Последний раз редактировалось Vorral 12 ноя 2010, 16:24, всего редактировалось 12 раз(а).
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 15:49 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
А пробовали на других изображениях? Или только на этих?

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 15:58 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Само собой пробовал на большем числе(для теста у меня порядка 30 стереопар), алгоритм максимально универсален.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 16:13 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
А какие требования к стереопарам?
Что за коллекция изображений для теста?

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 16:38 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Требование к стереопарам:
1. Разрешение должно быть 320х240
2. Правильная последовательность ввода изображений в библиотеку(типа левую в левый, правую в правый).
3. Убрать дисторсию и любые другие геометрические искажения картинок.
4. Оси камер при съёмке должны быть параллельны.

Всё, на основе этого библиотека построит КГ 320х240, каждый пиксель которой либо будет равен 0(не найдено) либо от 1 до 50. 50 при этом это максимальная близость объекта к камерам.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 17:03 
Не в сети
Аватара пользователя

Зарегистрирован: 30 сен 2008, 18:49
Сообщения: 2683
Откуда: Где-то в Латинской Америке
А расстояние между камерами никак не учитывается? Здорово работает. Снимки на глаз почти не отличаются.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 17:12 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
От расстояния между камерами зависит многое. В первую очередь коэффициент, который нужно будет разделить на значение каждого пикселя КГ, для того чтобы получить расстояние в физической величине(типа см, метры и т.д.).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 17:20 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
А меня что-то не впечатлило :pardon:
По-моему, решена задача слишком "в лоб", и как мне кажется, еще есть, куда улучшать...
Качественно улучшать...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 14 сен 2010, 17:26 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Улучшать можно до бесконечности. Я так дальше и собираюсь делать. Но это лишь компонент, из системы. Сначала я планирую собрать мало мальски рабочую навигацию. А дальше, в зависимости от полученного опыта улучшать отдельные компоненты. Кстати, что значит решена в лоб? Если вы посмотрите остальные решения в этой области(кроме NASA'овских, но и у них есть существенные минусы) то быстро поймёте, что такой результат более чем приемлемый для данной задачи. :D Недостатки будут компенсироваться потоком таких КГ. Из этого потока и нужно будет устанавливать наиболее "устойчевые зоны", которые и пойдут на составление карты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 15 сен 2010, 00:14 
Не в сети
Аватара пользователя

Зарегистрирован: 30 сен 2008, 18:49
Сообщения: 2683
Откуда: Где-то в Латинской Америке
Увлекательная тема. Такую камерку думаю прикупить для экспериментов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 15 сен 2010, 11:33 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Да, Minoru 3D хорошо подойдёт для стереозрения. Я уже где то писал про эту камеру. Стоить правда могла бы и поменьше. Но с текущими темпами "пропихивания" 3D на рынки развлечений(игры, кино), скоро должны появиться и альтернативные модели. Я пока сделал голову робота из двух одинаковых вебкамер chicony.


Вложения:
18042010109.jpg
18042010109.jpg [ 185.15 КиБ | Просмотров: 3014 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 01 ноя 2011, 13:29 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Написал свой алгоритм OpticalFlow. На примерах квадраты одного и того же цвета на разных изображениях считаются равными. Алгоритм универсален, поддерживает масштабирование, поворот, изменение освещённости. Работает в пять раз быстрее, чем стереозрение, о котором идёт речь выше :)


Вложения:
aba05.JPG
aba05.JPG [ 81.09 КиБ | Просмотров: 2795 ]
aba04.JPG
aba04.JPG [ 77.99 КиБ | Просмотров: 2792 ]
aba03.JPG
aba03.JPG [ 86.19 КиБ | Просмотров: 2798 ]
aba02.JPG
aba02.JPG [ 58.27 КиБ | Просмотров: 2785 ]
aba01.JPG
aba01.JPG [ 79.84 КиБ | Просмотров: 2793 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 01 ноя 2011, 13:51 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
А что на выходе-то?
И еще не очень понятно, откуда эти квадраты берутся, что означает их цвет (или это просто "от балды"?) и т.п.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 01 ноя 2011, 14:00 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Всё просто. В алгоритм помещается два изображения 320х240. Цель алгоритма стандартна для OpticalFlow найти перемещение, особенных точек. Так вот центр каждого квадрата и есть особенная точка. Если квадраты на обоих изображениях одинакового цвета, значит они равны. Т.е. таким образом можно понять откуда и куда переместилась особенная точка. А если анализировать две стереопары, то и на каком расстояние она была в первом кадре и стала в следующем. Я и планирую использовать этот алгоритм как для стереозрения, так и для прослеживания изменений между кадрами, разнесёнными временем. Если сказать иначе отрисовывать внешний мир и положение робота на нём в реальном режиме времени, т.е. сделать навигацию для робота.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Библиотека стереозрения
СообщениеДобавлено: 11 ноя 2011, 16:10 
Не в сети

Зарегистрирован: 11 сен 2008, 17:18
Сообщения: 873
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав
Объединил точки со схожими векторами движения в опорные зоны. Теперь возможно по таким зонам узнать такие характеристики как масштаб, угол поворота, смещение. В общем наконец началась геометрия :) .


Вложения:
aba09.JPG
aba09.JPG [ 65.31 КиБ | Просмотров: 2743 ]
aba08.JPG
aba08.JPG [ 56.91 КиБ | Просмотров: 2736 ]
aba07.JPG
aba07.JPG [ 75.15 КиБ | Просмотров: 2751 ]
aba06.JPG
aba06.JPG [ 76.41 КиБ | Просмотров: 2750 ]


Последний раз редактировалось Vorral 10 мар 2022, 17:30, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO