¿Por qué las DSLR modernas admiten JPEG pero no formatos sin pérdidas distintos de RAW?

Soy programador y muy nuevo en fotografía. Mientras trabajaba con el SDK para la Canon Rebel T3i, me di cuenta de que los únicos formatos de imagen compatibles de forma nativa con la cámara son RAW (CR2) o JPEG.

Entiendo que el estándar JPEG tiene pérdidas y, aunque los parámetros de mayor calidad pueden producir muy buenos resultados, no se pueden comparar con, por ejemplo, un mapa de bits de PNG a nivel binario.

El CR2 es un formato propietario de Canon, pero contiene solo los datos del sensor sin ningún procesamiento que forme parte del archivo JPEG producido.

La pregunta es, ¿por qué las DSLR modernas usarían JPEG como el único formato no RAW? ¿No sería útil tener un formato RGB de 24 bits (aprovechando los modos de procesamiento automático de la cámara)?

"¿No sería útil [...]" Útil para qué clase de fotógrafos?
@PhilipKendall: En realidad, quise decir útil para los desarrolladores que crean aplicaciones que no quieren lidiar con formatos con pérdida como entrada.
¿Y cuál es el tamaño del mercado para esos desarrolladores? Diminuto. Por lo tanto, su pregunta está respondida :-)
@PhilipKendall: Claro. Aunque esto es una mala noticia para las aplicaciones automatizadas. En un software de procesamiento de imágenes reciente, me sorprendió que una imagen de un tablero de ajedrez en blanco y negro tuviera artefactos binarios. Incluso una simple cámara web pudo obtener mejores resultados para el procesamiento. :(
Acabo de darme cuenta de una razón sólida. El formato JPEG admite la incrustación de datos EXIF ​​de forma estandarizada, mientras que PNG admite fragmentos (no estandarizados). Esto sería una pesadilla para los fabricantes de cámaras hasta que se formalizara un estándar.
El tamaño del archivo es una buena razón. Mi 5DII escupe archivos sin procesar de alrededor de 24 MB cada uno y, cuando se convierten a TIFF de 16 bits, pesan alrededor de 126 MB, sin comprimir. Con la compresión, aún pueden alcanzar alrededor de 70 MB, lo que no es tan compatible con la tarjeta de memoria como los 24 MB iniciales. Su pregunta menciona archivos .PNG: el equivalente .PNG de 16 bits sin comprimir sigue siendo de 115 MB, por lo que nuevamente es un uso ineficiente del almacenamiento flash. Por cierto, "sin procesar" es solo eso, datos de sensor sin procesar; no es un acrónimo como sugiere "RAW" ;-)
Espera... ¿hay un SDK para estas cámaras? ¿Estás hablando de algo además de CHDK?
@SailorCire: El CHDK parece ser una biblioteca escrita por la comunidad para la serie Power Shot y probablemente no sea compatible con Canon. Podría estar equivocado aquí. Y sí, Canon proporciona un SDK oficial llamado EDSDK para su línea de cámaras EOS.
@Darkhausen: Gracias. La mayoría de las respuestas apuntan al tamaño del archivo, pero su comentario incluye cifras reales. Deberías considerar publicar esto como una respuesta.
"¿No sería útil tener un formato RGB de 24 bits?" Jpg es un formato rgb de 24 bits. En mi opinión... No, no usaría otro formato en lugar de raw o jpg en la cámara .

Respuestas (5)

¿No sería útil tener un formato RGB de 24 bits (aprovechando los modos de procesamiento automático de la cámara)?

Realmente no. Los archivos sin formato son en realidad muy eficientes en el espacio, ya que solo almacenan un canal en escala de grises, en 12 o 14 bits por píxel. Un formato de 24 bits sin pérdidas inevitablemente creará archivos más grandes, mientras que perderá 4 o 6 bits de rango dinámico. Por supuesto, un formato de 48 bits sería incluso el doble de grande.

Mientras tanto, el procesamiento de la cámara se puede reproducir en la computadora utilizando el software patentado del fabricante desde el archivo sin procesar, por lo que en los casos marginales en los que un fotógrafo desearía, por un lado, una ausencia total de pérdidas, pero por otro lado estaría satisfecho con el procesamiento predeterminado. , esa opción existe.

De lo contrario, el JPEG de la cámara con máx. la calidad es "suficientemente buena" para la mayoría de los casos de uso que simplemente no hay mercado para implementar otro formato.

(Pero apoyaría mucho que los fabricantes dejen de usar sus formatos sin procesar patentados, simplemente no veo ninguna razón para eso).

El formato JPEG es muy bueno para la salida final, los archivos de archivo son pequeños y con la configuración de la más alta calidad, los artefactos son prácticamente invisibles.

Solo si comienza a editar un JPEG verá artefactos y el rango dinámico limitado. Por lo tanto, es un mal formato si planea editar imágenes más tarde.

Si planea editar imágenes más tarde, RAW es mucho mejor que incluso un archivo procesado sin pérdidas. En resumen, no hay mercado para una versión sin pérdidas del JPEG en la cámara, si desea procesar más, use RAW, si no, use JPEG.

Algunos lo hacen, por ejemplo, la mayoría o todos los modelos de Pentax y Nikon de gama alta admiten TIFF (que, como señala Raheel Khan en un comentario anterior, es mejor para los metadatos que PNG). Ahí vas. Si esto es importante para usted, puede elegir una cámara que lo tenga. Sin embargo, parece que no es lo suficientemente importante para la mayoría de los consumidores como para que sea algo que la gente decida. Creo que los modelos anteriores de Canon también admitían la salida TIFF, pero Canon lo dejó. Entonces, como con tantos "¿por qué las cámaras no hacen esto?" preguntas, la respuesta se reduce a la falta de interés del consumidor .

Y esa falta de interés no es difícil de explicar. Con relaciones de compresión bajas (es decir, configuraciones de la más alta calidad), los artefactos JPEG son difíciles de encontrar y, como vemos en nuestras preguntas sin formato frente a jpeg , la ventaja real está en la flexibilidad, no en la ausencia de pérdidas. Los formatos "horneados" sin comprimir ofrecen básicamente las mismas desventajas y ventajas que JPEG, requieren mucho más espacio de almacenamiento, lo que los convierte en una característica poco convincente.

Si realmente desea replicar los modos de procesamiento automático de la cámara, generalmente el convertidor RAW que se ofrece con la cámara hace un trabajo decente al ofrecer curvas de tono similares y un procesamiento casi igual, por lo que si eso es importante para usted, puede usarlo. software y exportar a un formato sin pérdidas.

Sí, esa es la clave. La creación de una imagen rgb sin pérdidas generará curvas de tono y no es reversible. Los archivos RAW le permiten ajustar cosas como la exposición y el punto blanco en el espacio lineal antes de que se apliquen las curvas de tono.

El tamaño del archivo es una buena razón. Mi 5DII escupe archivos sin procesar de alrededor de 24 MB cada uno y, cuando se convierten a TIFF de 16 bits, pesan alrededor de 126 MB, sin comprimir. Con la compresión, aún pueden alcanzar alrededor de 70 MB, lo que no es tan compatible con la tarjeta de memoria como los 24 MB iniciales.

Su pregunta menciona archivos .PNG: el equivalente .PNG de 16 bits sin comprimir sigue siendo de 115 MB, por lo que nuevamente este es un uso ineficiente del almacenamiento flash.

@Raheel, gracias por sugerir publicar esto como respuesta :-)

No existe un formato RGB "sin pérdidas" que represente una fotografía en color. La única información sin pérdidas disponible es la salida del sensor. Una vez que comienza a procesar, se pierde información que podría conservarse utilizando diferentes métodos de procesamiento.

En contraste con un formato RGB "sin pérdidas", la salida de la cámara no es RGB (sino que está modelada con la máscara de color de Bayer que todavía requiere demostración para la cual existen varios algoritmos con varias especificaciones de rendimiento para varias aplicaciones), no es rectilínea (pero bastante distorsionado con distorsión geométrica que tiende a enderezarse en el curso del procesamiento), es ruidoso (para el cual existen varios métodos de eliminación de ruido paramétricos dependiendo de los niveles de ruido esperados para varias características de la cámara), su representación de color requiere corrección del balance de blancos ( lo que puede justificar diferentes opciones según lo que desee que aparezca como tema), etc.

Con las primeras cámaras que ofrecían formatos TIFF (TIFF en realidad es solo un formato contenedor y, de hecho, varios formatos sin procesar también usan archivos estructurados como TIFF aunque se llaman de otra manera), la salida (también la salida JPEG) no se procesaba tan minuciosamente como con las cámaras modernas y el El archivo TIFF era una representación más cercana a los datos del sensor de lo que es en estos días.

Tal como está, ofrecer un formato "RGB sin pérdida" en lugar de JPEG sería una cortina de humo: una de las estrategias de compresión con pérdida efectiva de JPEG es el submuestreo de croma, pero el sensor de Bayer ya provoca el submuestreo de croma de todos modos, por lo que la representación RGB "sin pérdida" muestra los datos. eso se ha perdido en buena medida de todos modos.