Mit OpenCv können keine Videos aufgenommen werden


9

Ich habe OpenCv 2.3.1 in meinem Himbeer-Pi (Debian Wheezy) nach diesem Tutorial installiert .

Ich kann jedoch keine Videos mit meiner USB-Webcam aufnehmen. Gstreamer zeigt diesen Fehler:

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

Was kann ich als nächstes tun?


Welche Webcam benutzt du?
Alex Chamberlain

Hallo, ich verwende das Modul e-CAM30_USB. Ich kann mit dieser Kamera Bilder aufnehmen. Ich benutze Himbeer-Pi mit Debian Wheezy. FFMPEG ist eingeschaltet. Trotzdem stehe ich vor einem Problem. Bitte hilf mir.
Sumith

Antworten:


7

Der gstreamer teilt Ihnen mit, dass der Stream nicht unterstützt wird. FFMPEG ist eingeschaltet, wie Sie gesagt haben.

Ich habe mir die Kameraspezifikationen angesehen - sie stammen aus einem Laptop und sollen hauptsächlich mit Microsoft Windows funktionieren und werden unter Linux nicht wirklich unterstützt, aber sie sagen, dass sie unter Redhat 2. + funktionieren werden

Diese Kamera gibt Videos in einen dieser Codecs zurück

  • YUY2 (FFMPEG AUS?)
  • MJPEG (FFMPEG EIN?)

Bei den Standbildern handelt es sich um ein Standard-JPG, das vom MJPEG-Encoder codiert wurde. Deshalb können Sie es sehen. Ich bin sicher, dass gstreamer MJPEG unterstützt und nicht sicher über YUV2. Aber! Möglicherweise wurde die MJPEG-Implementierung für die ARM (Pi) -Architektur immer noch nicht unterstützt.

Möglicherweise muss gstreamer die Kamera direkt nach MJPEG fragen oder etwas anderes muss danach fragen. Ich bezweifle, dass YUY2 auf dem Pi gut funktioniert. (Zumindest ist es in keinem unterstützten Codec aufgeführt - MJPG jedoch)

Es ist möglich, dass Sie etwas anderes als gstreamer verwenden sollten. Schauen Sie hier. oder in diesem Beitrag.

BEARBEITEN

OP hat das Problem mithilfe dieser umfangreichen und langen Anleitung behoben image 2012-09-18-wheezy-raspbianund installiert .OpenCV 2.4.2


Was meint ihr mit FFMPEG ist ein / aus?
Alex Chamberlain

1
Die Kamera hat irgendwo eine Einstellung, um das Videoformat auszuwählen. YUY2 ist unkomprimiert, schneller und von besserer Qualität. Wenn Sie diese MPEG-Funktion aktivieren, versuchen die meisten Likley, das Video mit MJPEG zu transportieren (eine Reihe von JPG-Dateien, die nicht wirklich ein ausgeklügeltes Videoformat sind). Vielleicht ist die Verwendung von gstreamer also nicht die Lösung!
Piotr Kula

Hallo, ich freue mich sehr, Ihnen mitteilen zu können, dass das Problem vorbei ist. Was ich getan habe ist, 1. Ich habe ein neues Image 2012-09-18-wheezy-raspbian.img auf meinem Himbeer-Pi installiert. Ref: elinux.org/RPi_Easy_SD_Card_Setup 2. Dann installierte OpenCV 2.4.2 auf der Website Ref: mitchtech.net/raspberry-pi-opencv Jetzt kann ich Videos mit der logitech hd720p USB-Webcam aufnehmen. Vielen Dank für Ihre Unterstützung. Aber ich bin interessiert zu wissen, warum diese Aufgabe Probleme in opencv 2.3.1 zeigt.
Sumith

Hallo, Herr ppumkin, ich habe versucht, Bilder mit der econ Ecam-32-Webkamera mit mjpg-streamer aufzunehmen, wie Sie sagten, aber ich habe immer noch schlechte Bilder, während die logitech-Kamera gut funktioniert. Ref: tanzilli.com/video_streaming.Können wir noch etwas tun?
Sumith

1

Raspberry pi arbeitet jetzt mit der e-con ECAM 32 Webcam. Ich habe den Spannungsregler geändert, der 3,3 V an die Kamera liefert, und den Spannungsregler TPS736xx von Texas Instruments angeschlossen. Jetzt nimmt die Kamera Bilder und Videos mit 320 x 240 Pixel auf ...

Vielen Dank für Ihre Unterstützung ...

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.