Ich schreibe eine App, um jeden Frame von einem Video zu erfassen, so dass ich einige CV-Verarbeitung machen kann. Laut der Beschreibung des Android APIs sollte ich die Oberfläche des Mediaplayers als ImageReader.getSurface() einstellen. so dass ich jeden Video-Frame auf dem Callback OnImageAvailableListener bekommen kann. Und es funktioniert wirklich auf einigen Geräten und einigen Videos. Allerdings, auf meinem Nexus5 (API24-25) .Ich habe fast grüne Pixel wenn ImageAvailable. Ich habe das Byte [] in den Yuv-Ebenen des Bildes überprüft, und ich stelle fest, dass die Bytes, die ich aus dem Video gelesen habe, falsch sind! Die meisten Bytes sind Y = 0, UV = 0, was zu einem merkwürdigen Bild führt von grünem Pixel. Ich habe sichergestellt, dass das Video YUV420sp.Could jemand mir helfen kann? Oder empfehlen Sie eine andere Möglichkeit für mich Frame zu greifen? (Ich habe versucht javacv aber der Grabber ist zu langsam)Hat ImageReader beim Lesen von einem Video falsche Daten erhalten?
0
A
Antwort
0
Ich repariere meine Frage !! Wenn wir Image verwenden, sollten wir getCropRect verwenden, um den gültigen Bereich des Image zu erhalten. Beispiel, ich bekomme image.width == 1088, wenn ich einen 1920 * 1080 Rahmen decodiere, sollte ich image.getCropImage() verwenden, um die richtige Größe des Bildes zu erhalten, das 1920,1080
sein wirdVerwandte Themen
- 1. Erhalten NaN beim Lesen von Daten von der Website Python
- 2. QSerialPort: Falsche Werte lesen
- 3. Video von ALAsset erhalten
- 4. Java Imagereader lieferte keine Bilder
- 5. XHR-Antwort hat falsche Daten im Rückruf
- 6. Erhalten Sie GPS-Daten aus einem Bild von Java-Code
- 7. AVMutableComposition - Exportieren falsche Video
- 8. falsche Daten von einer Federdatei über Pandas erhalten
- 9. Falsche Ausgabe beim Lesen von Datei in Java
- 10. Lesen Daten senden von einem anderen Server
- 11. UnrecognizedPropertyException beim Lesen von Daten aus Firebase
- 12. Syntaxfehler beim Lesen von Daten mit Eingabe()
- 13. erhalten YouTube-Video-ID von iframe Video
- 14. Excon :: Errors :: SocketError beim Lesen von Bildern von einem S3 erhalten und zu einem anderen schreiben?
- 15. Retrofit Antwort falsche Daten geben
- 16. CASE WANN falsche Ergebnisse erhalten
- 17. TypeError beim Teilen von Json-Daten erhalten?
- 18. TableLayoutPanel hat falsche Zeilenhöhe
- 19. Postgresql löst 'Data-Verzeichnis hat falsche Eigentumsrechte' beim Versuch, Volumen
- 20. Problem beim Lesen von Daten von einer Website
- 21. Falsche widget.size() beim Überprüfen vor einem Signal
- 22. Startabbild von xcassets Datei hat falsche Größe
- 23. Char hat falsche Anzahl von Bits
- 24. habe "ClassNotFoundException" beim Lesen von Binlog-Daten von Kafka mit Spark Streaming erhalten
- 25. Best Practice beim Lesen aller Sensoren Daten
- 26. Camera2 Imagereader Änderung vor Aufnahme
- 27. UIView hat falsche Ausrichtung
- 28. Index hat falsche Seitennummern
- 29. HTML5 Video Tag falsche Größe auf Chrome
- 30. Lesen von Daten aus Excel