Frage

Ich konnte Python-Bindings für eine Kamera-Bibliothek erzeugen, mit SWIG und ich bin in der Lage zu erfassen und zu speichern Bild der Bibliothek eingebaute Funktionen. Ich versuche, Daten von der Kamera in Python Bild-Bibliothek-Format zu erhalten, stellen die Bibliotheksfunktionen Kameradaten als unsigned char zurück *. Wer weiß, wie unsigned char * Bilddaten in eine Datenformat konvertieren, dass ich in Python verwenden kann? Grundsätzlich versuchen unsigned char * Bilddaten in Python Bildbibliothek Format zu konvertieren.

Danke.

War es hilfreich?

Lösung 2

Okay, Jungs, so schließlich nach einem langen Kampf (vielleicht sind da ein Neuling in Python), löste ich es.

Ich schrieb eine Datenstruktur, die von Python und konvertierte das unsigned char * Bild zu dieser Struktur verstanden werden konnte. Nach dem Schreiben, die Schnittstelle für die benutzerdefinierte Datenstruktur war ich in der Lage, das Bild in Python Bildbibliothek Bildformat zu erhalten. Ich wollte den Code hier einfügen, aber es wird nicht mehr tha 500 Zeichen ermöglichen. Hier ist ein Link zu meinem Code

http://www.optionsbender.com/technologybending/python/unsignedcharimagedatatopilimage

Ich habe auch Dateien angehängt, so dass Sie es verwenden können.

Andere Tipps

Ich glaube, Sie fromstring Methode verwenden sollen, wie hier beschrieben:

Wie ein rohes Bild lesen PIL mit?

Außerdem gibt es einen guten Artikel auf Daten von der Kamera mit Python und opencv erfassen, die lesenswert ist: http://www.jperla.com/blog/post/capturing-frames-from-a-webcam-on-linux

Ich würde davon ausgehen, diese unsigned chars ist das eigentliche Bild Bytes, so dass Sie diese direkt über speichern können:

with open('filename', mode='wb') as file:
    file.write(image_bytes)

(Solange Sie bereits eine Datei filename im aktuellen Arbeitsverzeichnis genannt hat.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top