2012-10-03 7 views
7

Ich versuche, OpenCv für mein letztes Jahr Projekt und habe ein paar Probleme festgestellt. Ich habe es erfolgreich in Ubuntu nach this Tutorial eingerichtet.Wählen Sie Timeout Fehler in Ubuntu - Opencv

Das Problem, das ich jetzt habe, ist dieses sample Programm läuft zu halten. Das Programm ist Gesichtserkennung mit einer Webcam.

Es läuft gut für 3 oder 4 Sekunden und dann bleibt die Erfassung mit einem einzigen Rahmen im Fenster stecken. Die Konsole zeigt die folgende Ausgabe an.

Wenn jemand eine Idee davon hat, wohin man von hier geht, würde ich wirklich etwas Hilfe schätzen!

+0

Haben Sie jemals eine Lösung gefunden? – marshmallow

Antwort

11

Try this:

modprobe uvcvideo nodrop=1 timeout=6000 

und wenn das funktioniert, einfach die Änderungen und bearbeite /etc/modprobe.d/modprobe.conf

Versuchen Erhöhung der Timeout auf eine lächerlich große Zahl dauerhaft machen. Das sollte das Problem beheben, oder zumindest hat es für mich funktioniert. Es ist nur so, dass der Aufruf zum Auswählen keine Ready-Deskriptoren zurückgibt, und das kann durch den Videotreiber oder das Gerät verursacht werden. Wenn

das nicht funktioniert,

aktivieren Modul Spuren:

sudo echo 0xffff > /sys/module/uvcvideo/parameters/trace 

Führen Sie das Programm, bis der Fehler gefunden wird, und es so schnell wie möglich zu stoppen. Dann deaktivieren Sie die Spuren:

sudo echo 0 > /sys/module/uvcvideo/parameters/trace 

Suche mit dmesg für Fehlermeldungen.

+0

Habe es nicht gemacht, danke für den Vorschlag! – TomSelleck

+0

Aktualisiert mit mehr Infos, hoffe das hilft ein wenig. –

1

Ich hatte das gleiche Problem mit mein Logitech C920. Ich habe die folgenden Lösungen ohne Erfolg ausprobiert. Wie auch immer, es funktionierte wie ein Charme mit der C930e Webcam, also denke ich, dass die V4L API etwas damit zu tun hat.