Não é possível capturar vídeo usando o OpenCv

9

Instalei o OpenCv 2.3.1 no meu raspberry pi (Debian Wheezy) seguindo este tutorial.

Mas não consigo gravar vídeos usando minha webcam USB. O Gstreamer mostra este erro:

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

O que eu posso fazer a seguir?

cume
fonte
Qual webcam você está usando?
Alex Chamberlain
Olá, estou usando o módulo e-CAM30_USB. Eu posso tirar fotos com esta câmera. Estou usando o raspberry pi com o Debian Wheezy. O FFMPEG está ativado. Ainda estou enfrentando problemas. Por favor me ajude.
sumith 18/09/12

Respostas:

7

O gstreamer informa que o fluxo não é suportado. O FFMPEG está ativado como você disse.

Eu dei uma olhada nas especificações da câmera - ela sai do laptop e se destina a trabalhar com o Microsoft Windows principalmente e não é realmente compatível com o Linux, mas eles dizem que funcionará no Redhat 2.

Essa câmera retorna o vídeo desses codecs

  • YUY2 (FFMPEG OFF?)
  • MJPEG (FFMPEG ON?)

As imagens estáticas são um JPG padrão codificado pelo codificador MJPEG, é por isso que você pode vê-lo. Tenho certeza que o gstreamer suporta MJPEG e não tenho certeza sobre o YUV2. Mas! É possível que a implementação do MJPEG para a arquitetura ARM (Pi) ainda não tenha sido suportada.

Possivelmente o gstreamer precisa pedir MJPEG à câmera diretamente ou algo mais precisa pedir. Duvido que o YUY2 funcione bem no Pi. (Pelo menos, não está listado em nenhum codecs suportado - mas o MJPG está)

É possível que você use algo diferente do gstreamer. Dê uma olhada aqui. ou neste post.

EDITAR

O OP resolveu o problema usando image 2012-09-18-wheezy-raspbiane instalando OpenCV 2.4.2usando este guia extenso e longo .

Piotr Kula
fonte
O que vocês querem dizer com FFMPEG está ativado / desativado?
Alex Chamberlain
11
A câmera possui uma configuração em algum lugar para escolher o formato de vídeo. YUY2 é descomprimido, mais rápido e com melhor qualidade. Ativando esse recurso MPEG, o mais provável é tentar transportar o vídeo usando o MJPEG (que são séries de arquivos JPG que não são realmente um formato de vídeo sofisticado). Talvez usar o gstreamer não seja a solução!
Piotr Kula
Olá, tenho muito prazer em informar que o problema acabou. O que fiz foi: 1. Instalei a nova imagem 2012-09-18-wheezy-raspbian.img no meu raspberry pi. Ref: elinux.org/RPi_Easy_SD_Card_Setup 2. Em seguida, instalei o OpenCV 2.4.2 seguindo o site Ref: mitchtech.net/raspberry-pi-opencv Agora posso gravar vídeos com a webcam usb da logitech hd720p. Graças ao seu apoio. Mas estou interessado em saber por que essa tarefa mostra problemas no opencv 2.3.1.
sumith 29/09/12
Olá, Sr. ppumkin, tentei capturar imagens com a Webcam econ Ecam-32 usando o mjpg-streamer como você disse, mas ainda assim obtive imagens ruins enquanto a Logitech Cam está funcionando bem. Ref: tanzilli.com/video_streaming. Podemos fazer outra coisa?
Sumith
1

O Raspberry pi está trabalhando com a webcam e-con ECAM 32 agora. Eu mudei o regulador de tensão que entrega 3,3v para a câmera e conectei o regulador de tensão TPS736xx da Texas Instruments e agora a câmera captura imagens e vídeos de 320x240 pixels ...

Muito obrigado por seus apoios ...

cume
fonte