Michael_K писал(а):Речь ведь в ней не идет об беспроводной камере и мощном компе за стенкой. Беспроводные и USB камеры продаются в магазинах. Компы - тоже. А законченного решения для простого роботостроителя - нет.
И это не удивительно. Потому что, как правильно заметил Виталий. Заменить ПК на текущем уровне не возможно(даже больше, для обработки видео нужен ещё и мощный ПК). Включая и проблему с отсутствием вменяемых алгоритмов.
Добавлено спустя 1 минуту 55 секунд: Ещё хочется добавить, что такой модуль скоро легко будет сделать из будущих коммуникаторов. Которые быстро наращивают свои характеристики. И тратить время на создание такого автономного модуля, да ещё одному человеку - бесполезно.
Vorral писал(а):Ещё хочется добавить, что такой модуль скоро легко будет сделать из будущих коммуникаторов. Которые быстро наращивают свои характеристики. И тратить время на создание такого автономного модуля, да ещё одному человеку - бесполезно.
Оптика + камера - я уже 5 лет жду, что станут наконец доступны недорогие компактные камеры не мажущие изображение, например вебки эволюционируют. Как бы не так. Воз и ныне там.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
А меня устраивает скорость их работы. Но даже если не так, кто мешает не ждать, а разрабатывать алгоритм? Стравливая ему изображение с профессиональной камеры или просто видео из инета?
Виталий, вы очертили ну ОЧЕНЬ общий круг задач. Можно чуть поконкретнее?
Я отвечал на вопрос "Но... есть ли реально другие применения видеокамер?". Ответ - есть применения, но нет готовых решений, поэтому делать аппаратный модуль - бессмысленно. Для всего остального есть CMUCam3(http://www.cmucam.org/).
Я рассказал о том, что было бы интересно мне лично и, на мой взгляд, широкому кругу исследователей.
Давайте предположим, что модуль обработки видео сигнала - это отдельный аппаратный модуль, который знать ничего не знает о сервах, моторах, энкодерах и занимается только исключительно видеокамерой.
К примеру в задачах по управлению движением это будет недостатком. Робот, как мне кажется, по своей сути сильно связанная система в которой достаточно сложно выделить "отдельные блоки".
Хорошо бы с примерами использования и краткими, если не описаниями, то хотя бы оценками параметров.
Далее только про вычисления (без захвата видео и т.д.), и при известных методах решения таких задач: п.1.1. Простые объекты которые выделяются по яркости, цвету: достаточно АРМ контроллера п.1.2. Сложные объекты с известными алгоритмами распознавания (например лица): 320x240, ~15fps, комп. уровня PIII-700MHz п.1.3. Сложные объекты с неизвестными алгоритмами распознавания: не имеет смысла реализовывать аппаратно
п.2.1. Распознавание различных штрих-кодов: успешно работает на любых мобильниках п.2.2. Распознавание "естественных маяков" и поиск по базе: опять же это уже уровень ПК
п.3.1. Определение препятствий по внешней подсветке: думаю, что-то типа ARM9 справится, но с низким fps п.3.2. Пассивное стереозрение: ПК п.3.3. Методы группы SLAM: ПК
Вот примерно так.
Я не сомневаюсь, что для решения многих задач есть эффективные алгоритмы, и в будущем достаточно будет небольшого контроллера чтобы их решать, но такие алгоритмы до сих пор не найдены.
Добавлено спустя 3 минуты 59 секунд: Michael_K, мне кажется надо немного переформулировать задачу. Какой уровень вычислителя ты мог бы обеспечить по доступной цене (до 1000$)?
Вообще если говорить о внешнем вычислителе, то в топку отдельный блок, потому что вычислили карту глубины локальную, ну и что? Как и кто будет дальше всё это в единую карту собирать? А строить по ней маршрут?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
+1 Я тоже хотел это заметить. Что если будут вменяемые данные из "блока" навигации/зрения. Например описывающие трёхмерную обстановку вокруг робота. То дальше всё сложнее и сложнее всё это разобрать, сделать выводы, проложить маршруты и сохранить. И это не говоря про обработку звука и хоть какие то зачатки ИИ. А если не задаваться серьёзными целями, то и камера не нужна...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!» В этом мире меня подводит доброта и порядочность... "двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
На самом деле такие решения есть (попадались по крайней мере). Как в виде более-менее независимых модулей, так и встроенные (ну во всяких айбо, например - ну не будут в айбо комп пихать... Поисследовать, конечно, на компе правильно, но конечные задачи, а тем более конкретно определенные пользовательские задачи как правило решаются проще... имхо.)
Duhas писал(а):это конечно жоска
ну это да, слишком...
Хочу заметить, что тупо лопатить данные как правило не нужно. Стереозрение "само по себе" нафиг не упало. Стереозрение нужно для решения какой-то задачи! Точно так же и СЛАМ. СЛАМ вообще к зрению, строго говоря, отношения никакого не имеет. СЛАМ и на радарах успешно делают. А вот например данные для СЛАМ (в виде набора видимых фич, например) могут приходить и от камеры... Выделение фич вполне укладывается в концепцию "выделенного модуля видеообработки"... причем само количество фич-то может быть и небольшим (тут работает принцип "лучше меньше да лучше" - зачем заставлять кого-то лопатить лишние данные).
Michael_K, я имел ввиду чтобы лопатить данные вообще.. притом никто не отменяет по сути подключение моей задумки каким-нить 1000BASE Ethernet-ом к ПК на роботе..
про модуль выделяющий фичи я тоже думал.. тот же робофутбол мона будет соорудить.. в т.. и на базе лего..
просто надо определиться. что нужно.. ну а так, хоть линь под АРМ9 к камере цеплять да работать.. в принципе мона и в 1к$ уложиться я думаю...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!» В этом мире меня подводит доброта и порядочность... "двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
=DeaD= писал(а):лично у меня в существенной степени всё уперлось в тот момент, что вебкамера мажет изображение при движении робота, что не позволяет осуществлять навигацию в движении, приходится останавливаться и оглядываться.
мажет потому что светосила объектива мала мала она для того чтобы у вебки был гиперфокал. раз светосила мала то процессор с матрицы светочувствительной реже считывает заряд выдержка длинная, картинка успевает "смазаться" и процессор считывает смазанную картинку.
вебки с автофокусом имеют более светосильные объективы и показывают лучше, но в них приходится встраивать автофокус потому что там не гиперфокал и есть реальная ГРИП которая портит всю малину. тоесть автофокус это вынужденная мера после улучшения качества картинки за счёт светосилы.
Michael_K писал(а): Выделение фич вполне укладывается в концепцию "выделенного модуля видеообработки"... причем само количество фич-то может быть и небольшим (тут работает принцип "лучше меньше да лучше" - зачем заставлять кого-то лопатить лишние данные).
Так а не проще и надёжнее делать это средствами ПК, ну или на крайняк mini2040? Там хоть без проблем можно разные алгоритмы выделения фич прописывать, включая которые появятся и в будущем. Тем более нет надёжного способа выделения таких точек, это снова возврат к теме - нет однозначно надёжно работающего алгоритма. Поэтому без постоянного "креатива" и метода проб и ошибок не обойтись. Плюс положение робота в любом случаи не будет однозначным, при движении объектов перед камерой.
К чему это всё. Да к тому, что пока рано говорить о железных вариантах в области зрения. Должен быть динамичный подход. А вот если делать модуль с возможностью без проблем добавлять/изменять код, то это уже и получается ПК
P.S. На мой взгляд на сегодняшний день востребованы такие средства как RoboRealm, только более мощное и понятное пользователю. Вот где есть спрос, а железа для любительской робототехники полно, любых размеров, цен и мощностей.