Не удается захватить видео с помощью OpenCv

9

Я установил OpenCv 2.3.1 в моем Raspberry Pi (Debian Wheezy), следуя этому руководству.

Но я не могу снимать видео с моей веб-камеры USB. Gstreamer показывает эту ошибку:

OpenCV Error: Unsupported format or combination of formats (Gstreamer Opencv backend doesn't support this codec acutally.) in CvVideoWriter_GStreamer::open, file /home/pi/OpenCV-2.3.1/modules/highgui/src/cap_gstreamer.cpp, line 483 terminate called after throwing an instance of 'cv::Exception' what(): /home/pi/OpenCV-2.3.1/modules/highgui/src/cap_gstreamer.cpp:483: error: (-210) Gstreamer Opencv backend doesn't support this codec acutally. in function CvVideoWriter_GStreamer::open Aborted

Что я могу сделать дальше?

sumith
источник
Какой веб-камерой вы пользуетесь?
Алекс Чемберлен
Привет, я использую модуль e-CAM30_USB. Я могу делать снимки с этой камерой. Я использую Raspberry Pi с Debian Wheezy. FFMPEG включен. Тем не менее я сталкиваюсь с проблемой. Пожалуйста, помогите мне.
sumith

Ответы:

7

Gstreamer сообщает, что поток не поддерживается. FFMPEG включен, как вы сказали.

Я посмотрел на спецификации камеры - она ​​поставляется с ноутбука и предназначена для работы с Microsoft Windows в основном и не очень поддерживается для Linux, но они говорят, что она будет работать на Redhat 2. +

Эта камера возвращает видео на одном из этих кодеков

  • YUY2 (FFMPEG ВЫКЛ?)
  • MJPEG (FFMPEG ON?)

Неподвижные изображения - это стандартный JPG, закодированный с помощью кодера MJPEG, поэтому вы можете его увидеть. Я уверен, что gstreamer поддерживает MJPEG и не уверен насчет YUV2. Но! Возможно, что реализация MJPEG для архитектуры ARM (Pi) все еще не будет поддерживаться.

Возможно, gstreamer должен запросить у камеры MJPEG напрямую или что-то еще нужно попросить об этом. Я сомневаюсь, что YUY2 будет хорошо работать на Pi. (По крайней мере, он не указан ни в одном из поддерживаемых кодеков - но MJPG есть)

Вполне возможно, что вы должны использовать что-то, кроме gstreamer. Посмотрите здесь. или на этом посту.

РЕДАКТИРОВАТЬ

OP решила проблему, используя image 2012-09-18-wheezy-raspbianи устанавливая OpenCV 2.4.2это обширное и длинное руководство .

Петр Кула
источник
Что вы, ребята, подразумеваете под включением / выключением FFMPEG?
Алекс Чемберлен
1
У камеры есть настройка где-то выбрать формат видео. YUY2 несжатый, быстрее и качественнее. Включив эту функцию MPEG, большинство likley пытается транспортировать видео с помощью MJPEG (которые представляют собой серию файлов JPG, которые на самом деле не являются сложным видеоформатом). Поэтому, возможно, использование gstreamer не является решением!
Петр Кула
Привет, я очень рад сообщить вам, что проблема решена. Я сделал следующее: 1. Я установил новый образ 2012-09-18-wheezy-raspbian.img на свой Raspberry Pi. Ссылка: elinux.org/RPi_Easy_SD_Card_Setup 2. Затем установил OpenCV 2.4.2, следуя сайту Ref: mitchtech.net/raspberry-pi-opencv Теперь я могу снимать видео с веб-камеры logitech hd720p usb. Спасибо за вашу поддержку. Но мне интересно знать, почему эта задача показывает проблемы в opencv 2.3.1.
sumith
Привет, мистер Ппумкин, я пытался сделать снимки с помощью веб-камеры econ Ecam-32, используя mjpg-streamer, как вы сказали, но тем не менее я получал плохие изображения, пока камера Logitech работает хорошо. Ссылка: tanzilli.com/video_streaming. Можем ли мы сделать что-то еще?
sumith
1

Raspberry pi теперь работает с веб-камерой e-con ECAM 32. Я изменил регулятор напряжения, который подает напряжение 3,3 В на камеру, и подключил регулятор напряжения TPS736xx от Texas Instruments, и теперь камера снимает 320x240 пикселей изображения и видео ...

Большое спасибо за поддержку ...

sumith
источник