Быстро-распознаваемые маяки для навигации в помещениях

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение Zeus » 13 авг 2010, 16:27

был бы читаем с максимального расстояния,


о каких величинах идет речь?
«Сон разума рождает чудовищ»
Аватара пользователя
Zeus
 
Сообщения: 862
Зарегистрирован: 28 июл 2009, 10:02
Откуда: Самара
ФИО: Павел Сергеевич

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 13 авг 2010, 16:59

Конкретные величины зависят от разрешения, четкости картинки, угла обзора камеры и т.п.
Я имею в виду "при заданной картинке 100х100 пикселей мы сможем найти и прочитать маяк меньших линейных размеров", но самое главное - в отличие от того же QCode здесь найти маяк будет проще, чем прочитать, а значит даже в некоторых кадрах где мы не смогли прочитать маяк мы сможем соотнести его с виденным только что маяком с номером рядом с этим местом, если рядом никаких других маяков не было.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 15 авг 2010, 11:18

Вот такое изображение маяка
mark0.jpg
mark0.jpg (12.45 КиБ) Просмотров: 2778


Вот таким фильтром ищем (если забить пока на возможность вращать маяк)
mark2.jpg
mark2.jpg (35.23 КиБ) Просмотров: 2773


Вот так выглядит картинка после обработки фильтром
mark1.jpg
mark1.jpg (11.72 КиБ) Просмотров: 2748


Только решил еще сдвинуть на полразряда сам код вокруг маяка, чтобы не создавать пересечения ключевого вида самим маяком и чтобы эффективно определять границы маяка.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 15 авг 2010, 20:17

Вот поправленный маяк:
Вложения
beacon1.jpg
beacon1.jpg (21.8 КиБ) Просмотров: 2755
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение Michael_K » 15 авг 2010, 22:43

ну да.
А чтобы сделать инвариантным к повороту, можно добавить фильтр повернутый на 45 градусов и брать от них сумму квадратов

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

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 15 авг 2010, 23:09

Да, это завтра займусь, причем поснимаю сразу через радиокамеру и через веб-камеру. Чтобы реального качества было :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение Виталий » 15 авг 2010, 23:11

А зачем инвариантность к повороту нужна? Робот обычно всегда горизонтально едет.
Я бы сделал проще, взял бы штрих-код и наклеил бы его на цилиндр так, чтобы полоски были горизонтально.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 15 авг 2010, 23:19

Инвариантность к повороту это опция в данном случае. Пока без неё обкатку проведу, т.к. пока не придумал как эффективно искать такие маяки под любым углом.

Вертикальный штрих-код плох по ряду причин:
1. Не ясно, как его быстро искать в кадре;
2. Требуется высокое разрешение, чтобы прочитать код;
3. Нет точного позиционирования по одной из осей;
4. Нет перспективы инвариантности к повороту :(;
5. Позиционирование по маяку возможно только при условии, что видимость позволяет прочитать код (в моём случае детекция изменившегося относительно нас положения маяка будет возможна в более тяжелых условиях, чем чтение его номера);
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение Виталий » 16 авг 2010, 00:07

1. Так же как и этот
2. Такое же как и здесь, сделай толстые линии и все
3. А зачем это?
4. Да, нет, а может и не надо?
5. Для штрихкода тоже можно изобрести такой механизм.

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

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение Michael_K » 16 авг 2010, 00:07

=DeaD= писал(а):как эффективно искать такие маяки под любым углом.

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

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение GraphD » 16 авг 2010, 01:24

2DeaD Про детектор седловой точки:
http://citeseerx.ist.psu.edu/viewdoc/do ... 1&type=pdf
GraphD
 
Сообщения: 157
Зарегистрирован: 01 окт 2005, 00:56
Откуда: С.-Петербург

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 16 авг 2010, 07:26

2GraphD: Благодарю, а они под углом тоже распознают, вы не в курсе? А то вчитаться пока не успел :oops:
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение Виталий » 16 авг 2010, 11:52

а они под углом тоже распознают?

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

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение =DeaD= » 16 авг 2010, 13:22

Виталий писал(а):1. Так же как и этот

Я же привёл фильтр простой, который это ищет.

Виталий писал(а):2. Такое же как и здесь, сделай толстые линии и все

Какой штрих-код можно уместить в 20х20 или 30х30 пикселей с учетом размытия и помех?

Виталий писал(а):3. А зачем это?

Для целей навигации.

Виталий писал(а):4. Да, нет, а может и не надо?

Где-то не надо, а где-то надо. Для летательных аппаратов 100% надо, для движения по пересеченке - надо;

Виталий писал(а):5. Для штрихкода тоже можно изобрести такой механизм.

А еще можно для штрихкодов изобрести механизм потом для более надежного считывания и минимизации линейных размеров обернуть штрихкод по кругу вокруг такого механизма :crazy:
(Типа - если в слове "хлеб" сделать 4 ошибки, то получится слово "пиво" :))
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Быстро-распознаваемые маяки для навигации в помещениях

Сообщение GraphD » 16 авг 2010, 14:58

=DeaD= писал(а):2GraphD: Благодарю, а они под углом тоже распознают, вы не в курсе? А то вчитаться пока не успел :oops:

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

разница для реал.изобр. в основном относится к уровню размытости чередующихся полей, в этом лучше всё-таки убедиться на маткаде, перед тем как забивать на с++.
GraphD
 
Сообщения: 157
Зарегистрирован: 01 окт 2005, 00:56
Откуда: С.-Петербург

Пред.След.

Вернуться в Компьютерное зрение

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

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