una - python raw_input python 3
Procesamiento de imagen RAW en Python (6)
¿Hay alguna solución Pythonic para leer y procesar imágenes RAW? Incluso si es simplemente acceder a un archivo de foto sin formato (por ejemplo, cr2 o dng) y luego emitirlo como un jpeg.
Lo ideal sería uniones Dcraw para Python, pero cualquier otra cosa que pueda lograr el vino sería suficiente también.
Aquí hay una manera de convertir una imagen canon CR2 a un formato amigable con rawkit , que funciona con su implementación actual:
from rawphoto.cr2 import Cr2
blob = Cr2(filename="somefile.CR2").get_quarter_size_rgb()
# Do something with the JPEG here... eg. save it:
with open("output.jpeg", ''wb'' as f:
f.write(blob)
Usar una matriz numpy no es muy elegante aquí, pero al menos funciona, no pude entender cómo usar los constructores PIL para lograr lo mismo.
Encontré esto: https://gitorious.org/dcraw-thumbnailer/mainline/blobs/master/dcraw-thumbnailer
Llama a dcraw como un proceso de python y lo convierte en un objeto PIL.
Hace un tiempo escribí un contenedor libraw / dcraw llamado rawpy . Es muy fácil de usar:
import rawpy
import imageio
raw = rawpy.imread(''image.nef'')
rgb = raw.postprocess()
imageio.imsave(''default.tiff'', rgb)
Funciona de forma nativa con matrices numpy y admite muchas opciones, incluido el acceso directo a los datos de Bayer no procesados.
No estoy seguro de cuán extenso es el soporte RAW en Python Imaging Library (PIL http://www.pythonware.com/products/pil/ ), pero es posible que desee verificarlo.
De lo contrario, puede llamar a dcraw directamente, ya que resuelve este problema muy bien.
Pruebe http://libopenraw.freedesktop.org/wiki/GettingTheCode
Repo de Git: git: //anongit.freedesktop.org/git/libopenraw.git
Hay un directorio python en el árbol fuente. ;-)
ImageMagick compatible con la mayoría de los formatos RAW y proporciona enlaces de Python .
En cuanto a las vinculaciones dcraw para Python: dcraw está escrito en C, por lo que puedes acceder a él a través del módulo ctypes
.