Камера робота + обнаружение движения

У меня есть проект, в котором мы (я и мой ученик) разработаем систему для робота. В этом роботе у нас есть камера, которая захватывает.

Мой вопрос в том, как обнаружить движения, движения. Есть решение?? Какую технику и инструменты использовать ?? Какой язык использовать (можно для Java например) ??

Заранее спасибо.

С наилучшими пожеланиями. Али


person Ali Ben Messaoud    schedule 05.03.2011    source источник
comment
Тема [Moving camera_motion_detection][1] может быть полезна, так как решает аналогичную проблему. [1]: stackoverflow.com /вопросы/12986265/   -  person Lopa Mitra    schedule 13.01.2013


Ответы (4)


Рассмотрите возможность использования OpenCV:

http://opencv.org

Он имеет множество встроенных полезных алгоритмов машинного зрения и поддерживает C, C++ и Python, а также функции графического процессора.

person Nathan S.    schedule 05.03.2011

Я предлагаю вам Microsoft Visual Studio, которая представляет собой интегрированную среду разработки и язык программирования C#. Библиотека Emgu CV, которая представляет собой кросс-платформенную оболочку .Net для библиотеки обработки изображений OpenCV. Простой метод из статической позиции таков:

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

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

Один из способов добиться этого — выбрать подходящее пространство для цвета в виде пространства RGB. Имейте в виду, что это может быть слишком чувствительным даже к небольшой дисперсии освещенности. (Это действительно зависит от объектов, которые вы хотите отслеживать, и сценария отслеживания.)

person Apostolos    schedule 19.06.2014

Вы можете использовать OpenCV

Здесь вы можете найти учебник по C++: http://blog.cedric.ws/opencv-simple-motion-detection

person Cédric Verstraeten    schedule 03.03.2014

использование двух камер вместо одной может быть полезно в вашем проекте для определения глубины изображения и реального расстояния движения (в перспективе)

Воспроизведение стереоскопической глубины

Обнаружение независимого движения в режиме реального времени с использованием стерео

person Siamand    schedule 19.06.2014