roboforum.ru

Технический форум по робототехнике.
Текущее время: 21 апр 2025, 11:44

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: IP ethernet Camera+OpenCV
СообщениеДобавлено: 04 май 2012, 16:28 
Не в сети

Зарегистрирован: 24 авг 2010, 11:48
Сообщения: 135
Откуда: Минск
прог. языки: C++,C,Asm
Данная инструкция объясняет как подружить IP камеру и OpenCV. В моем случае я использовал камеру D-link DCS-910 и OpenCV 2.4 (можно любой).
Рассказываю по шагам.
1. Настраиваем IP камеру через web-интерфейс. Проверяем, работает ли она там. Запоминаем ее IP.
2. Качаем и устанавливаем IP Camera [JPEG/MJPEG] DirectShow Filter http://www.webcamxp.com/download.aspx
3. Качаем и запускаем GraphStudio http://blog.monogram.sk/janos/tools/monogram-graphstudio/
4. Собираем граф как указано ниже:
Вложение:
Ashampoo_Snap_2012.05.04_14h53m11s_001_ttt-grf - MONOGRAM GraphStudio.png
Ashampoo_Snap_2012.05.04_14h53m11s_001_ttt-grf - MONOGRAM GraphStudio.png [ 26.73 КиБ | Просмотров: 7738 ]

5. Правой кнопкой на IP Camera и выбрать Properties. Здесь нужно настроить под вашу камеру: брэнд, модель, IP адрес, порт,
авторизация. Пара скользких моментов:
- моя камера не запускалась, если не указаны были данные авторизации. Даже если нет пароля на вход в камеру.
- в конце настроек необходимо обязательно нажать Save, а только потом OK. В противном случае все Ваши настройки не сохранятся.
Вложение:
Ashampoo_Snap_2012.05.04_14h55m13s_002_IP Camera -JPEG-MJPEG- Properties.png
Ashampoo_Snap_2012.05.04_14h55m13s_002_IP Camera -JPEG-MJPEG- Properties.png [ 94.86 КиБ | Просмотров: 7570 ]

6. Запускаем наш граф кнопкой play и любуемся в отдельном окне видео, которое шлет нам камера. Если изображение не появляется, то проверяйте настройки фильтра IP Camera. Или, что особенно бесит, перезапустите программу.
7. После того как вы увидели картинку с вашей камеры. Закрываем GraphStudio. Это важно. Я пол дня потерял не понимая почему не работает камера. И дальше работаем в VS 2008. Тут можно использовать любой из двух стандартных выводов картинки на экран. Оба они прекрасно описаны на сайте http://robocraft.ru.
- стандартными средствами OpenCV; http://robocraft.ru/blog/computervision/275.html
- через дополнительную библиотеку videoInput. http://robocraft.ru/blog/computervision/420.html

Какой бы метод не выбрали, необходимо внести в код маленькие доработки.
В первом случае:
Код:
CvCapture* capture = cvCreateCameraCapture(1); //CV_CAP_ANY);

Во втором случае при запуске консоли вашего приложения в самом начале будут указаны все найденные на компьютере источники видеопотока. Находим нашу камеру и видоизменяем код:
Код:
        // получение списка доступных видеоустройств, возвращается число устройств
        int numDevices = VI.listDevices();
        int device1=1; // номер по порядку выбранного Вами устройства -1.

У меня было так:
    VIDEOINPUT SPY MODE!
    SETUP: Looking For Capture Devices
    SETUP: 0) 1.3M WebCam
    SETUP: 1) IP Camera [JPEG/MJPEG]
    SETUP: 2) PS3Eye Camera
    SETUP: 3 Device(s) found

Наш фильтр под номером 2. Значит мне в коде необходимо использовать коэффициент 1.
Обращаю ваше внимание, что в списке есть так же PS3Eye камера, дрова которой я ставил ранее. Очень хорошая камера с сумасшедшим fps!

На этом все. Дальше вы работаете с вашей IP камерой, как с обычной USB-камерой, которую, уверен, уже подключали ранее.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO