roboforum.ru

Технический форум по робототехнике.

Разработка RoboBrain: - модуль монокулярного зрения

Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 02 дек 2009, 16:09

Здесь начну разработку модуля монокулярного зрения. Вначале буду рассматривать информационную составляющую и чисто программную реализацию на PC с использованием USB Веб-камеры.
Назначение такого модуля - получение последовательности кадров с видеокамеры или синтезированных другими модулями изображений, первичная обработка и 2D распознавание, выдача результатов обработки в виде сообщения FIPA-ACL, в основе кот. древовидная структура (мысль), в формате OWL-SUMO.
Дополнительные информационные потоки:
От внешних модулей - управляющие параметры, внешним модулям - дополнительная служебная информация (статус и др.). Эти сообщения также в виде FIPA-ACL OWL-SUMO.
Результатом первичной обработки должно стать описание изображения в терминах инвариантных признаков с учетом 2D распознавания.

Re: Разработка RoboBrain: - модуль монокулярного зрения

AndreiSk » 02 дек 2009, 16:39

какую вебкамеру хотите использовать?

Re: Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 02 дек 2009, 16:48

Камеру - любую, лишь бы она стандартно подключалась в ОС Windows.

Вначале нужно определить параметры входного потока данных.
1. Предполагаем, что на вход последовательно по запросу от данного модуля поступают одинаковые изображения, у которых неизменные размеры пикселов и есть следующие характеристики:
1.1. W - размер изображения по горизонтали (кол. пикселов) (Integer).
1.2. H - размер изображения по вертикали (кол. пикселов)(Integer).
1.3. R - значение яркости пиксела по красному цвету(Integer).
1.4. G - значение яркости пиксела по зеленому цвету(Integer).
1.5. B - значение яркости пиксела по синему цвету(Integer).
1.6. T - момент времени записи кадра (DateTime).

2. Управляющие параметры, поступающие от др. модуля:
2.1. Количество изображений в пирамиде фокуса внимания.
2.2. FocusX - положение фокуса внимания на изображении по горизонтали (кол. пикселов от левого края изображения) (Integer).
2.3. FocusY - положение фокуса внимания на изображении по вертикали (кол. пикселов от верхнего/нижнего края изображения)(Integer).
2.4. FocusW - размер самого малого изображения в пирамиде фокуса внимания на изображении по горизонтали - ширина поля ясного видения (кол. пикселов) (Integer).
2.5. FocusH - размер самого малого изображения в пирамиде фокуса внимания на изображении по вертикали - высота поля ясного видения (кол. пикселов)(Integer).
2.6. FocusK - коэффициент, описывающий параметры фильтрования каждого изображения в пирамиде фокуса внимания(Integer).
Комментарии к п. 2.
1. Положение фокуса внимания позволяет организовать отслеживание интересующих объектов и удержание их в поле ясного видения.
2. Самым первым обрабатывается весь кадр но с наименьшей резкостью. Это позволяет роботу предельно быстро ориентироваться.
3. Размер поля ясного видения характеризует значени внимания к определенному участку изображения. Если размер большой, то обработка происходит медленно (внимание рассеяно). Если размер мал, то обработка происходит быстро и позволяет делать большое кол. саккад в единицу времени (перескока фокуса внимания с одного места изображения на другое) с целью подробного исследования части объекта.
Последний раз редактировалось Виктор Казаринов 02 дек 2009, 17:06, всего редактировалось 1 раз.

Re: Разработка RoboBrain: - модуль монокулярного зрения

Murderer » 02 дек 2009, 16:57

Цветное - что-бы изначально усложнить?
Не проще-ли обойтись всего одним параметром - яркость?

Re: Разработка RoboBrain: - модуль монокулярного зрения

AndreiSk » 02 дек 2009, 16:59

что такое пирамида фокуса внимания?
Вы хотите RGB цветовую модель? Не принимаете YUV?

Re: Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 02 дек 2009, 22:33

Спасибо за напоминания насчет цветности. Я предполагал это, поэтому нужно будет внести и параметр - какого типа изображение поступает - кол. цветов и глубину каждого из них. М.б. и систему RGB нужно поменять на др. Не знаю, я выбрал по привычке.

Кстати, напоминаю, что в схеме
wiki/%D0%9E%D0%B1%D1%89%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%BD%D0%B0%D1%8F_%D1%81%D1%85%D0%B5%D0%BC%D0%B0_RoboBrain
данный модуль соответствует блоку обработки моноизображения. Там кроме этого блока есть и 3D блоки, ответственные за сведение отдельных плоских образов в единое 3D представление а также 3D синтезатор мира.
На этой же схеме видно, что данный модуль не изолирован от общей онтологии. Это означает, что он может пользоваться результатами работы других модулей, например, другого такого же блока при стереовидении. И сам отдает в общее пользование новые знания, кот. необходимо запомнить в общей онтологии.

Добавлено спустя 2 часа 46 минут 51 секунду:
AndreiSk писал(а):что такое пирамида фокуса внимания?
1_Source.PNG - исходное изображение полного разрешения видеокамеры, 1_1.PNG - все изображение, но с малым кол. пикселов, 1_2.PNG - часть изображения, с почти таким же или точно таким же кол. пикселов, как 1_1.PNG, но отображающее части исходного изображения с центром в фокусе внимания (маленький крестик на изображении). 1_3.PNG - изображение с таким же как и предыдущие изображения кол. пикселов, но представляющее собой неискаженный фильтрами кусочек исходного изображения с центром в фокусе внимания.
Т.о. на основе одного исходного изображения вырабатывается набор изображений, у кот. центр общий - фокус внимания, пиксельный размер одинаковый или около того (нужно тут подумать как лучше), а охватываемое поле сужается по мере перехода от изображения к изображению.
Все изображения если они одинакового размера, позволяют обрабатывать их далее за сопоставимое время, начиная с 1_1.PNG и одновременно решать вышеуказанные задачи общая грубая обстановка - первой, точная но локальная - последней. И перемещать взгляд в требуемые места наблюдаемой сцены, меняя по мере необходимости концентрацию внимания.

Добавлено спустя 20 минут 32 секунды:
Распознавание на данном уровне весьма ограниченно, т.к. задачей 3D реконструкции будут заниматься др. модули. Если на объект падает сложная тень или на нем лежит другой объект, то данный уровень не сможет восстановить облик реальных объектов. Следовательно все, что под силу данному модулю - представить другим модулям в максимально сжатой форме описание изображения так, чтобы этим описанием можно было удобно пользоваться в дальнейшем.
Этот модуль должен выявлять не только пространственные, но и временнЫе структуры.

Добавлено спустя 2 часа 17 минут 1 секунду:
Как я уже писал выше, на вход модуля монокулярного зрения приходит последовательность изображений с видеокамеры и может приходить аналогичная последовательность с модуля синтеза 3D модели мира. При этом на вход управления должен подаваться специальный сигнал - кореллировать ли данные изображения. Если да, то модуль производит оценку рассогласования идеального изображения с 3D синтезатора и реального изображения от камеры с выдачей результата такого анализа.
Вложения
1_Source.PNG
1_Source.PNG (1.17 КиБ) Просмотров: 6464
1_1.PNG
1_1.PNG (3.33 КиБ) Просмотров: 6428
1_2.PNG
1_2.PNG (3.69 КиБ) Просмотров: 6456
1_3.PNG
1_3.PNG (2.95 КиБ) Просмотров: 6464

Re: Разработка RoboBrain: - модуль монокулярного зрения

contr » 03 дек 2009, 01:27

размер кадра, фокус/резкость и зона видимости в стандартной web-камере = const. И размерность byte а не integer. Так что управляющие сигналы подавать некому и незачем.
Монокуляр даст 2D и с его распознаванием еще придется основательно повозиться. Про 3D в такой ситуации говорить рано.

Re: Разработка RoboBrain: - модуль монокулярного зрения

AndreiSk » 03 дек 2009, 03:00

2contr, а как размерность в byte уложить?
byte это 0-255, ну максимум 256 :roll:
а 640x480 в byte не влезет :crazy:

Re: Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 03 дек 2009, 08:35

Байт - это по каждой составляющей цвета. Это я знаю и много раз этим пользовался. Спасибо за уточнение. Иногда просто я делаю запас, например на 16 битный цвет, где оставшиеся биты служат для гаммакоррекции или сама камера может выдать больше чем 8 разрядов, например, 10.

Добавлено спустя 7 минут 6 секунд:
contr писал(а):размер кадра, фокус/резкость и зона видимости в стандартной web-камере = const. Так что управляющие сигналы подавать некому и незачем.
Вы не поняли. Управляющие сигналы в камеру из этого модуля не подаются. Наоборот, данному модулю приходят некот. управляющие сигналы. Камерой будет управлять модуль эффекторов.
contr писал(а):Монокуляр даст 2D и с его распознаванием еще придется основательно повозиться. Про 3D в такой ситуации говорить рано.
Конечно рано. Для этого нужны модули 3D реконструкции, синтеза и др. а также в случае стереовидения модуль стереозрения, в кот. будут поступать сигналы из двух модулей монокулярного зрения.

Re: Разработка RoboBrain: - модуль монокулярного зрения

contr » 03 дек 2009, 12:01

Камерой будет управлять модуль эффекторов.

Я о том, что web-камера неуправляемая

Re: Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 03 дек 2009, 12:09

Положением веб-камеры в пространстве можно управлять, посылая сигнал на серву, а кроме того, еще и всякие защитные заслонки и стеклоомыватели могут быть. Фокус неуправляем? Не страшно. Вообще то обычную веб-камеру можно заменить на любую другую, но позже если нужно будет. Это непринципиально.

Re: Разработка RoboBrain: - модуль монокулярного зрения

contr » 03 дек 2009, 12:25

Вы заранее наделили web-камеру св-вами глаза - это принципиальная ошибка. Да и 3D реконструкцию на основе интеллекта просто объявили.

Re: Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 03 дек 2009, 12:29

2contr: укажите точнее, где я наделял камеру какими-то свойствами вообще. В любом проекте в т.ч. и реконструкции 3D нужно сначала объявить начальные условия, а затем уже проектировать.

Re: Разработка RoboBrain: - модуль монокулярного зрения

contr » 03 дек 2009, 12:42

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

Re: Разработка RoboBrain: - модуль монокулярного зрения

Виктор Казаринов » 03 дек 2009, 12:51

Вы по существу не ответили на мой последний вопрос


cron
Rambler\'s Top100 Mail.ru counter