¿Cómo puedo cambiar los datos de píxeles en un DNG manteniendo todos los metadatos?

Estoy buscando algunas herramientas gratuitas que me permitan procesar fácilmente los datos de píxeles en un archivo RAW (DNG o NEF) mientras mantengo intactos los metadatos. ¿Existen tales herramientas?


Caso de uso: estoy experimentando con la reducción del ruido de bandas. Puedo obtener los datos no demostrados del archivo RAW usando dcraw y escribirlos en un TIFF de 16 bits: dcraw -o 0 -D -T -4. Luego puedo procesar estos datos usando varias herramientas (por ejemplo, Mathematica/MATLAB) y tratar de reducir el ruido. Ahora, ¿cómo puedo volver a colocar los datos procesados ​​en un archivo sin procesar (estoy pensando en DNG) y mantener todos los metadatos originales (cámara, configuración, lente) para poder enviarlos a un procesador sin formato como ACR y hacer uso de automático? correcciones de lentes y perfiles de cámara?

Las soluciones basadas en NEF y DNG están bien, pero no espero encontrar una solución para NEF, así que pregunté por DNG. Estoy buscando una solución simple que no implique leer la especificación DNG y hacerlo desde cero. Eso de repente haría que la programación (aburrida y tediosa) fuera la mayor parte de la tarea.

Respuestas (1)

¿Qué tan serio eres? Adobe tiene una biblioteca que puede hacer precisamente esto, pero es una biblioteca CPP, por lo que tendrá que escribir algo de código para que esto suceda. Deberá usar algo como libtiff para obtener el búfer de píxeles de la imagen y luego introducirlo en un dng_pixel_buffer y construir el DNG insertando todos los metadatos (puede importar desde un sidecar XMP si está disponible o extraerlo de CR2 usando libraw .

Gracias Patricio, le echaré un vistazo. Estoy bien con C ++, pero si la mayor parte del tiempo se dedica a estos detalles de codificación de formato de archivo (en lugar de poder experimentar con la reducción de ruido en sí), probablemente lo dejaré.
Como la mayoría de las cosas, descubrir exactamente cómo hacerlo llevará mucho más tiempo que la codificación real. Por supuesto, una vez hecho esto, puede empaquetar una buena utilidad XMP/TIFF a DNG.