2016-03-30 15 views
1

Wie kann ich in OpenCV einen verlorenen Frame erkennen? Im Moment mache ich eine Überprüfung wie die folgende:Frame-Drop in OpenCV erkennen

Aber ich bekomme immer noch Nachrichten sagen "Kamera-Rahmen fallen gelassen!" ohne meine Meldung "No captured frame". Welche Bedingungen führen dazu, dass der Kamerarahmen abfällt/wie kann ich nach diesen Bedingungen suchen?

+0

vielleicht stammt diese Nachricht vom Treiber oder einer darunterliegenden Bibliothek? Vielleicht ist deine Verarbeitung langsamer als die fps deiner Kamera? Dies kann zu verlorenen Frames führen (die angeforderten Frames sind zu alt), wobei die Kamera stattdessen nur einen neueren Frame liefert. – Micka

Antwort

0

Sie können diese opencv-Funktion cap.get (CV_CAP_PROP_POS_MSEC) verwenden, um den Präsentationszeitstempel eines Videoframes zu erhalten. Diese Funktion gibt eine ganze Zahl in Vielfachen des Zeitintervalls zurück. Wenn ein Frame gelöscht wird, wäre der Zeitstempel zu (N + 2) * time_interval statt (N + 1) * time_interval übersprungen worden, wobei N die aktuelle Frame-Nummer ist.

Verwandte Themen