¿Cómo puedo convertir un formato de imagen sin procesar patentado a Adobe DNG?

Tengo un formato de imagen de cámara sin procesar patentado tomado de una cámara Aptina.

Su formato de archivo sin formato es de 16 bits por canal de color, modo 'GRBG' con extensión de archivo .raw. Sin encabezados, nada, solo planifique muestras crudas de bayer. Quiero convertir este formato a DNG, ya que ninguno de los decodificadores de imágenes en bruto (dcraw, gimp, …) parece admitirlo.

  1. ¿Hay alguna herramienta/convertidor que pueda manejar el formato raw bayer del sensor de cámara Aptina y me permita convertirlo a formato DNG?

  2. Si no, quiero escribir un pequeño código C para convertirlo yo mismo. ¿Dónde puedo encontrar las especificaciones detalladas sobre el formato DNG, su estructura, etc.? ¿Algún documento que explique todo este formato DNG?

Otra alternativa, si está escribiendo código C, sería extender dcraw para admitir el formato sin procesar simple de Aptina. Eso le ahorraría la molestia del paso intermedio, y si contribuye con el parche de nuevo en sentido ascendente, después de un tiempo, todos los programas que basan su código de entrada sin procesar en dcraw también funcionarán mágicamente.

Respuestas (4)

Los archivos DNG se basan en el estándar TIFF/EP, ISO 12234-2 (esencialmente, son mapas de bits con metadatos adicionales), por lo que si comienza con una biblioteca de E/S TIFF adecuada que lo llevará a una parte, pero necesita completar los datos adicionales requeridos por DNG, lo que podría ser complicado.

Los convertidores sin procesar necesitan saber más que solo las intensidades de píxeles. Otra información relevante incluye la forma y la orientación de los píxeles, o las propiedades de los tintes (no basta con saber que son GRBG, es posible que necesite saber el tono preciso (o más exactamente, la respuesta de frecuencia) de cada tinte para crear la representación de color como esto varía entre los fabricantes). Creo que los DNG manejan esto por medio de un "perfil de cámara" incrustado.

editar:

Hay una aplicación de gestión de fotos de código abierto llamada digiKam que puede escribir archivos DNG, por lo que su mejor opción probablemente sea mirar a través de su fuente e intentar extraer las funciones de codificación DNG.

Pero Digikam no admite la apertura de este archivo sin procesar en particular. Intenté eso.
Lo que quise decir fue modificar el código de digiKam e insertar sus propios datos sin procesar antes de escribir un DNG, no intentar cargar sus Raws directamente. De todos modos, esto fue antes de que supiera que había un SDK de Adobe, esta será su mejor apuesta.

La documentación de DNG está disponible gratuitamente en Adobe e incluye un SDK, aunque no he comprobado las opciones de idioma del SDK, muy probablemente algo como C o C++, pero nunca se sabe en estos días... :)

En cualquier caso, la especificación es abierta y de libre uso.

¡Adobe DNG SDK es claramente la mejor manera de hacerlo!
Sí, he leído las especificaciones varias veces porque hay mucha información errónea sobre el formato, pero no he tocado el SDK para estar seguro. También me gusta la idea, afortunadamente mi cámara es una de las que lo hace de forma nativa, así que leerlo por interés es todo lo que necesitaba hacer. :)
¿Simplemente tiene curiosidad sobre qué marca de cámara tiene que admita el formato DNG?
@goldenmean: fotografío Pentax, han tenido soporte DNG en la cámara desde el K10D.

Si está preparado, Aptina proporciona documentación de muchos aspectos de los productos, (creo) destinados a los fabricantes de complementos. Pero si firma un NDA, puede obtener acceso a la biblioteca de documentación, donde presumiblemente puede aprender lo que necesita para escribir el código usted mismo. Consulte sus preguntas frecuentes .

Adobe tiene una utilidad gratuita que convierte alrededor de 350 formatos de archivo RAW diferentes a DNG.

Enlace para la versión de Windows

Enlace para la versión de Mac

¿Puede valer la pena darle una oportunidad?