immagine unsigned char * a Python
-
01-10-2019 - |
Domanda
Sono stato in grado di generare Python per una biblioteca fotocamera utilizzando SWIG e sono in grado di catturare e salvare immagini utilizzando le funzioni inbuilt della biblioteca. Sto cercando di ottenere i dati dalla fotocamera in formato libreria Python immagine, la libreria fornisce funzioni per restituire i dati della fotocamera come unsigned char *. Qualcuno sa come convertire char * i dati delle immagini senza segno in qualche formato di dati che posso usare in Python? Fondamentalmente sto cercando di convertire unsigned char * dati di immagine a Python immagine in formato libreria.
Grazie.
Soluzione 2
Va bene ragazzi, così finalmente, dopo una lunga lotta (forse perché sono un novizio in python), ho risolto.
ho scritto una struttura di dati che potrebbe essere compreso da python e trasformato l'immagine unsigned char * a quella struttura. Dopo aver scritto l'interfaccia per la struttura di dati personalizzata, sono stato in grado di ottenere l'immagine in Python immagine formato immagine biblioteca. Ho voluto incollare il codice qui, ma non permetterà più tha 500 caratteri. Ecco un link al mio codice
http://www.optionsbender.com/technologybending/python/unsignedcharimagedatatopilimage
Inoltre ho attaccato i file in modo che si può utilizzare.
Altri suggerimenti
Credo che si dovrebbe utilizzare il metodo fromstring
, come descritto qui:
Come leggere un'immagine raw utilizzando PIL?
Inoltre, c'è un buon articolo sulla cattura i dati della telecamera con pitone e OpenCV, che vale la pena di leggere: http://www.jperla.com/blog/post/capturing-frames-from-a-webcam-on-linux
mi piacerebbe assumere quei unsigned char
s sono i byte di immagini reali, in modo è possibile memorizzare quelle direttamente tramite:
with open('filename', mode='wb') as file:
file.write(image_bytes)
(Fino a quando si dispone già di un file di nome filename
nella directory di lavoro corrente.)