roboforum.ru

Технический форум по робототехнике.
Текущее время: 07 май 2025, 12:42

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




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Распознавание лестницы
СообщениеДобавлено: 18 янв 2012, 22:19 
Не в сети

Зарегистрирован: 18 янв 2012, 21:23
Сообщения: 2
Здравствуйте, уважаемые пользователи! У меня возникла проблема:

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

Вот мой вариант алгоритма:
1)Получаем кадр с камеры робота.
2)Накладываем на кадр свертку я ядром Щара(Тем самым выделяем горизонтальные линии и избавляемся от вертикальных)
3)Далее, используя преобразования Хафа, находим линии
4)Используя нейронную сеть, по расположению линий находим лестницу

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

Возможно кто-то уже сталкивался с подобными задачами. Подскажите какими альтернативными методами можно это реализовать? Или как избавится от описанных выше проблем, не меняя конструкцию робота?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Распознавание лестницы
СообщениеДобавлено: 19 янв 2012, 01:55 
Не в сети
Аватара пользователя

Зарегистрирован: 01 сен 2009, 14:58
Сообщения: 1142
Откуда: Чехия
прог. языки: C/С++, VHDL, Verilog, ASM, Python
Гусеницы что попадают в камеру можно программно вырезать - зарисовать белым например, или не анализировать их область.
Но с полосатыми обоями при таком примитиве проблемы будут :D

Размытые убрать - методом понижения разрешения, и увеличения контрастности изображения, либо выкидывать размытый кадр, либо принимать решение по серии кадров мажоритарным методом


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Распознавание лестницы
СообщениеДобавлено: 19 янв 2012, 11:43 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
А как на счет пары УЗ дальномеров? Или одного, с наведением по вертикали? Если снизу на 20 см ближе чем сверху, значить ступенька пошла?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Распознавание лестницы
СообщениеДобавлено: 19 янв 2012, 11:51 
Не в сети

Зарегистрирован: 18 янв 2012, 21:23
Сообщения: 2
Aseris писал(а):
Гусеницы что попадают в камеру можно программно вырезать - зарисовать белым например, или не анализировать их область.
Но с полосатыми обоями при таком примитиве проблемы будут :D

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

elmot писал(а):
А как на счет пары УЗ дальномеров? Или одного, с наведением по вертикали? Если снизу на 20 см ближе чем сверху, значить ступенька пошла?

Пара УЗ дальномеров это уже изменение конструкции робота, а в моем случае просто нет такой возможности.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Распознавание лестницы
СообщениеДобавлено: 19 янв 2012, 11:56 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
Akuma писал(а):
2)Накладываем на кадр свертку я ядром Щара(Тем самым выделяем горизонтальные линии и избавляемся от вертикальных)

:oops: а кто такой "Щара"?
зачем вам нейронки в данном случае?
п.с. в природе для растровых изображений алгоритмы векторизации есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Распознавание лестницы
СообщениеДобавлено: 19 янв 2012, 12:13 
Не в сети
Аватара пользователя

Зарегистрирован: 01 сен 2009, 14:58
Сообщения: 1142
Откуда: Чехия
прог. языки: C/С++, VHDL, Verilog, ASM, Python
Akuma писал(а):
Гусеницы вырезать не могу, положение камеры может изменятся, следовательно и положение гусениц в кадре будет разным.


Тогда распознавайте гусеницы по цвету, или у вас они под цвет лестници?

Можно банально камерой на них не смотреть..., как я понимаю робот не выше 2-х метров... так что посмотреть вверх не, и пройтись по алгоритму "ты ли лестница?" не проблема :D

Плюс ширина гусениц и лестници разная а найти длину линии это по моему задача банальная.

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

Решений море

...Или это какая то игрушка с веб камерой ? :no:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Распознавание лестницы
СообщениеДобавлено: 19 янв 2012, 12:47 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
дануна. :) как буд-то камера сама по себе колбасится, а тушка робота сама по себе. есть информация о положении камеры и куда она в данный момент направлена, немного школьной гео/стереометрии и намана.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

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


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

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


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

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