uso una teclado raw_input print pedir leer examples ejemplo desde cadena python image dng dcraw

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.



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.