Начало работы в OpenCV, рекомендации по использованию функций API - PullRequest
0 голосов
/ 01 октября 2011

Я только начинаю работать с OpenCV и планирую создать робота с компьютерным зрением. Я хочу, чтобы этот робот распознавал как классы объектов, так и отдельные экземпляры. В некотором смысле, возможность Haar-подобной функции для общих классов и BIGG для конкретных экземпляров. По сути, я хочу сделать что-то вроде этого: http://www.youtube.com/watch?v=fQ59dXOo63o в видео используется kinect, но я буду использовать только одну камеру. Если вы посмотрите видео, вы увидите, что кинект показан объект, и через несколько секунд он узнает, как распознать новый объект. Это по сути то, что я хочу сделать; вместо того, чтобы создавать тысячи шаблонов и обучать программное обеспечение одновременно, я хочу сделать этот процесс полуручным, когда робот изучает один объект за раз. У меня нет ограничений на тип изучаемого объекта, все в честной игре.

Поскольку я имею дело с потенциально большим количеством объектов, которые будут обучаться, я беспокоюсь о проблемах производительности. Если бы у меня было 10000 обученных объектов, я бы предположил, что мой ноутбук может подавиться некоторыми алгоритмами. В настоящее время я сильно поражен различными техниками, которые есть в документации, и я мало представляю, что использовать.

Как бы вы, ребята, решили эту проблему?

спасибо

1 Ответ

1 голос
/ 01 октября 2011

Вот вопросы, которые вы задали (понимаете ли вы это или нет):

  • Обнаружение объектов
  • Классификация объектов
  • Распознавание объектов
  • Сегментация
  • Нормализация
  • Машинное обучение

Каждый сам по себе является предметом, и нет «правильного» ответа для ваших нужд.Вам нужно поэкспериментировать и найти волшебную комбинацию алгоритмов, которая хорошо работает для вашей проблемной области.

Кроме того, у Kinect есть преимущество, которого нет у обычной камеры, то есть глубина.Простое старое 2D-распознавание смехотворно сложно.

Однако, в духе полезного ответа, посмотрите алгоритм V1 Николаса Пинто, который имитирует возможности обнаружения объектов людьми.

http://pinto.scripts.mit.edu/Code/Code

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...