¿Por qué el espacio de color xvYCC no capta la fotografía fija?

23

Durante los últimos quince años, sRGB ha sido el estándar principal para los monitores de computadora (y para la impresión a nivel del consumidor). Eso está cambiando ahora, a medida que los monitores con retroiluminación LED de gama más amplia se vuelven comunes. Por lo general, los fotógrafos los usan con un espacio de color como aRGB, que es semi-estándar: mi cámara puede guardar archivos JPEG en ese espacio de forma nativa, por ejemplo.

Pero hay un nuevo estándar ampliamente impulsado en la industria audiovisual para reemplazar el sRGB. Esto es IEC 61966-2-4 - xvYCC (o "xvColor", para fines de marketing). Este espacio de color tiene una gama 1.8 × más grande que sRGB, cubriendo el 90% del rango de color de la visión humana (en lugar del 50% poco inspirador cubierto por nuestro común denominador actual). Lea mucho más en el sitio web de Sony en xvYCC .

Sin embargo, el punto importante es que esto no es teórico. Es parte del estándar HDMI 1.3, junto con una especificación de profundidad de color de 10 a 16 bits por color ("Color profundo", que se llama). A diferencia de aRGB, que es básicamente un nicho profesional, hay un amplio soporte en equipos de nivel de consumidor.

Ese es el trasfondo. La pregunta es: dado que este es ampliamente imponiendo, y que todos estamos propensos a tener ordenador (y la televisión!) De hardware capaz de soportar en los próximos años, ¿por qué esta siendo vendido como básicamente solamente una cosa de vídeo? Parece que la industria de las cámaras estaría feliz de participar.

A Sony le encanta la idea y lanzó cámaras de video que la admiten hace cuatro años. ¡Playstation 3 lo admite, por el amor de Dios! ¿Por qué no ponerlo también en las Sony Alpha dSLR? Y Sony no está solo: Canon también tiene cámaras de video compatibles.

Por supuesto, si está disparando en RAW, la compatibilidad con la cámara no es importante. Son las personas del software de conversión las que tendrían que estar a bordo. ¿Por qué no hay un impulso para esto? Según tengo entendido, xvYCC es una extensión de YCbCr, que ya se usa en archivos JPEG . Pero a medida que leo la literatura, encuentro muchas menciones de estándares MPEG actualizados, pero nada sobre imágenes fotográficas fijas.

¿Por qué no podemos tener cosas buenas?

mattdm
fuente

Respuestas:

11

xvYCC es una forma inteligente de codificar datos de color: abusa de la representación YCC mediante el uso de combinaciones de valores previamente prohibidas para representar colores fuera de la gama del espacio RGB utilizado en el esquema YCC. Es decir, algunas tuplas YCC se decodifican en colores con valores RG o B negativos. Anteriormente, estos eran simplemente ilegales; en xvYCC están permitidos, y las pantallas con gamas más grandes que el sistema RGB son bienvenidas para presentarlas lo mejor que puedan. Entonces, realmente es un truco inteligente, en su mayoría compatible, para obtener una gama extra sin cambiar mucho el formato.

¿Tiene sentido usarlo en fotografía fija? Realmente no lo creo. Realmente no es necesario ser compatible con YCC, entonces, ¿por qué no usar un espacio de amplia gama como ProPhoto RGB? O mejor aún, dado que usar profundidad de bits adicional no es costoso para imágenes fijas, ¿por qué no optar por algo como CIELAB que puede cubrir toda la gama perceptible humana? Tiene suficientes bits para que la capacidad de codificar todos esos colores imaginarios no le cueste una cantidad apreciable de resolución de color.

Por supuesto, la cuestión del soporte de la cámara es un poco irrelevante: si realmente le importa el color, debe extraer los valores del detector sin procesar de la cámara y comenzar desde ellos. E incluso si haces esto, todavía estarás atrapado en la gama perceptible de la cámara. Y la precisión de su representación de color también dependerá de qué tan bien los filtros de su cámara se aproximen a la respuesta espectral de los conos humanos: si se equivoca, los colores que se ven idénticos al ojo se verán diferentes a su cámara. Ninguna codificación lo arreglará. De hecho, esto sucedió con una cámara digital barata que tenía, en este caso su sensibilidad IR hizo que las brasas se vieran moradas. Incluso si apaga el IR, las cosas con espectros puntiagudos como arcoíris y luces fluorescentes o minerales (y tal vez algunos tintes) mostrarán este efecto cuando los espectros continuos se vean bien.

Ana
fuente
20

Para comenzar simplemente, la respuesta es "¡Se usa para fotografía fija!" Explicaré un poco más en un momento, y su uso es bastante específico en este momento.

Las raíces de xvYCC

La codificación xvYCC es, por lo que puedo decir, una mejora moderna a la codificación YCC, o en su forma larga, Y'CbCr (o YCbCr, que es ligeramente diferente). La codificación YCC es parte de una familia de luminancia / crominancia espacios de color, que están enraizados en gran medida en el espacio de color L a b * ('Lab' para abreviar) formulado por CIE en la década de 1930. El espacio de color Lab también es un espacio de color de Luminancia / Crominancia, en el que la luminancia de un color está codificada en el valor L * , mientras que dos ejes de crominancia de un color están codificados en los valores a * y b * . El valor a * codifica la mitad de la crominancia a lo largo del eje verde / magenta , mientras que el valor b * codifica la otra mitad de la crominancia a lo largo del azul / amarilloeje. Se eligieron estos dos ejes de color para imitar y representar las sensibilidades primarias de cuatro colores del ojo humano, que también se encuentran a lo largo de un par de ejes rojo / verde y azul / amarillo (aunque la verdadera vista humana implica una curva roja de doble pico, con el pico más pequeño que ocurre en el medio de la curva azul, lo que en realidad significa que el ojo humano es directamente sensible al magenta, no al rojo ... de ahí el eje verde / magenta en el laboratorio).

La codificación YUV

Probablemente, Y'CbCr se reconozca más prominentemente en forma de codificación de video YUV. La codificación YUV fue diseñada específicamente para reducir la cantidad de espacio necesario para codificar el color para la transmisión de video, en los días en que el ancho de banda era un bien escaso. Transmitir información de color como tripletes RGB es un desperdicio, ya que los tripletes R, G, B codifican el color con una buena cantidad de redundancia: los tres componentes incluyen información de luminancia e información de crominancia, y la luminancia se pondera en los tres componentes. YUV es una forma de bajo ancho de banda de codificación de color de luminancia / crominancia Y'CbCr que no tiene la redundancia innecesaria de la codificación RGB. YUV puede consumir desde 2/3 hasta 1/4 de ancho de banda de una señal RGB completa según el formato de submuestreo (y, además, almacenó la imagen de detalle completo en el canal de luminancia distintivo Y, que también era conveniente para ambos B & W) como señales de TV en color con un único formato de codificación.) Debe notarse claramente que YCC no es realmente un espacio de color, más bien es una forma de codificar información de color RGB. Creo que un término más preciso sería unmodelo de color que un espacio de color, y el término modelo de color se puede aplicar tanto a RGB como a YUV.

De la referencia vinculada en la pregunta original, parece que xvYCC es una forma mejorada de codificación Y'CbCr que almacena información codificada de color de luminancia / crominancia con más bits que YUV. En lugar de codificar luminancia y crominancia en conjuntos intercalados de 2-4 bits, xvYCC codifica el color en valores modernos de 10 bits.

Uso en fotografía fija

Curiosamente, hay una marca de cámaras DSLR que usa algo muy similar. Canon agregó un nuevo formato RAW a sus cámaras en los últimos años, llamado sRAW. Mientras que una imagen RAW normal contiene un volcado directo de datos completos del sensor, sRAW en realidad no es un verdadero formato de imagen RAW. El formato sRAW no contiene datos bayer, contiene contenido procesado Y'CbCr interpolado de los datos de píxeles bayer RGBG subyacentes. Similar a los días de TV, sRAW tiene como objetivo utilizar más información de señal original para codificar datos de luminancia y crominancia en un formato de imagen de alta precisión (14 bpc), pero que ahorra espacio. Una imagen RAW puede tener entre 40 y 60% del tamaño de una imagen RAW,

El beneficio de sRAW es que mantiene una alta precisión de color perceptiva humana en un formato de archivo compacto y hace un mejor uso de los píxeles RGBG en el sensor bayer (en lugar de un muestreo superpuesto que produce muaré de color desagradable, sRAW realiza un muestreo de crominancia no superpuesto y muestreo de luminancia superpuesto / distribuido.) El inconveniente es que no es un formato RAW verdadero, y la información de color se interpola y se muestrea desde el sensor bayer completo. Si no necesita la resolución RAW completa de la cámara (es decir, solo tiene la intención de imprimir a 8x10 o 11x16), entonces sRAW puede ser un beneficio real, ya que puede ahorrar mucho espacio (hasta un 60% de ahorro sobre RAW ), ahorra más rápido que en bruto, lo que proporciona una velocidad de fotogramas más alta y hace un mejor uso de la información de color capturada por el sensor que la RAW de resolución completa.

jrista
fuente
Muy interesante e informativo, ¡gracias! Pero todavía me sorprende que este uso de nicho sea lo único hasta ahora.
mattdm
1
Supongo que, técnicamente hablando, podría considerar que JPEG es otro formato de imagen que codifica los datos de una manera compatible con YCC. Parte del ahorro de espacio JPEG se debe al hecho de que codifica datos RGB en un formato de luminancia / crominancia, sobre el cual los datos se comprimen aún más mediante la compresión de bloques con pérdida. Si bien la codificación específica xvYCC no es común en la fotografía fija, cuando lo piensa, la codificación de luminancia / crominancia es en realidad el formato más frecuente.
jrista
7

Tienes cosas casi completamente al revés. Este no es un caso en el que la fotografía fija pueda / deba "ponerse al día" con el video; todo lo contrario, se trata de que el video finalmente haya alcanzado (aproximadamente) las capacidades que TIFF (por ejemplo) proporciona un par de décadas Hace (más o menos).

Aunque es cierto que no se ve muy muchos archivos TIFF de 16 bits / canal hace 20 años, la capacidad ya estaba allí, y 16 bits / canal (en formato TIFF y otros formatos) ahora es bastante común. Al mismo tiempo, me siento obligado a señalar que la mayoría de las personas parecen encontrar 8 bits / canal completamente adecuados. Solo por un ejemplo obvio, JPEG2000 admite 16 bits / canal y una mejor compresión que el JPEG original, pero no tiene nada que ver con el uso de la especificación JPEG original.

Casi al mismo tiempo (en realidad, un poco antes) xvYCC estaba trabajando (aproximadamente) para ponerse al día con las capacidades de TIFF, se estaba desarrollando el formato de archivo openEXR. Admite hasta 32 bits / canal. Si bien aún no está en uso, espero que sea un poco como TIFF, y eventualmente tendrá un uso más amplio.

En cuanto al espacio de color, es cierto que la mayor cantidad de bits / píxel si xvYCC admite una gama más grande que sRGB. Sin embargo, una vez más, ProPhotoRGB (por ejemplo) proporciona una gama mucho más amplia, y (con toda honestidad) está abierto a la duda de si hay mucha necesidad de un espacio de color más grande que el que ProPhotoRGB ya proporciona (aproximadamente el 13% de los colores que puede representar en ProPhotoRGB son básicamente imaginarios: van más allá de lo que la mayoría de la gente puede percibir).

La ventaja de xvYCC es que reduce la cantidad de datos necesarios / utilizados para representar un nivel de calidad dado. Para video HD (en particular), minimizar el ancho de banda es extremadamente importante. Sin embargo, para las cámaras fotográficas digitales, el ancho de banda es una preocupación mucho menor, aunque ciertamente sería bueno si (por ejemplo) pudiera colocar el doble de imágenes en un tamaño particular de tarjeta CF, no es un problema particularmente grave. Relativamente pocas personas usan la mayor capacidad de tarjetas CF disponibles, ni el costo de las tarjetas CF es una parte sustancial del presupuesto de un fotógrafo típico.

En pocas palabras: en términos de capacidades técnicas, xvYCC proporciona poco que aún no esté disponible.

Editar: probablemente debería agregar un punto más. Los LCD comenzaron a reemplazar a los CRT para la mayoría de los monitores en el momento en que las cámaras digitales entraron en uso, pero los monitores LCD de nivel de consumidor solo ahora están comenzando a exceder (o incluso aproximarse) a la resolución de color de 8 bits / canal. Era difícil preocuparse mucho por tener 10 o 12 bits / canal cuando un monitor típico solo podía mostrar alrededor de 6.

También está el pequeño detalle de que a muchas personas simplemente no les importa. Para ellos, la calidad fotográfica cae bajo un criterio de aprobación / reprobación. Todo lo que la mayoría de la gente realmente pide es que una imagen sea razonablemente reconocible. Sospecho que la gente lentamente comienza a esperar algo mejor, pero después de años de que Walgreens (o quien sea) convierta a su hija pelirroja en rubia (etc.) lleva un tiempo acostumbrarse a la idea de que el color puede ser exacto en absoluto.

Editar: en realidad hay otro paso más allá de JPEG 2000: JPEG XR . Esto admite HDR de hasta 32 bits / canal (punto flotante). También especifica un formato de archivo que puede incluir todos los datos habituales de tipo EXIF ​​/ IPTC, perfil de color incrustado, etc. Relevante para la pregunta aquí, que incluye un valor para especificar que un archivo debe usar el espacio de color xvYCC (un valor de 11en el TRANSFER_CHARACTERISTICSelemento de sintaxis, tabla A.9, en caso de que a alguien le importe). Esto no parece estar en uso generalizado (al menos todavía) pero admite directamente el espacio de color xvYCC para imágenes fijas.

Jerry Coffin
fuente
Gracias; esa es definitivamente una forma de verlo. Sé que existen esos formatos de archivo y espacios de color más amplios. Supongo que lo que realmente me interesa es por qué hay un impulso para una mayor profundidad de color en el mundo audiovisual, pero no en la fotografía a nivel del consumidor.
mattdm
1
@mattdm: Creo que la razón por la que hay un impulso es que no estaba allí antes. La gama amplia / alta profundidad de color ha estado disponible para fotografía fija durante al menos una década, y hasta donde yo sé, las cámaras digitales han admitido Adobe RGB (que tiene una gama más amplia que sRGB, aunque no es compatible con el 98% de la gama de Lab) durante algunos años. La sRAW de Canon ha estado disponible en sus réflex digitales de nivel medio y de entrada durante al menos un par de años. Estoy de acuerdo con Jerry ... el video es el dominio que está "poniéndose al día".
jrista
4

Entonces, para responder a mi propia pregunta un poco después de un poco de investigación:

Si bien no es xvYCC, por razones que realmente todavía me escapan (ya que la codificación JPEG utiliza un esquema de más edad similar), hay qué parece haber algunos movimientos alentadores en el "nosotros podemos tener cosas bonitas!" frontal, porque parece que al menos a Microsoft le importa una gama de colores más amplia y una mejor profundidad de bits en la fotografía fija, al menos un poco.

Han estado, lenta pero seguramente, presionando por un nuevo estándar de formato de archivo llamado JPEG XR (anteriormente llamado Windows Media Photo y luego HD Photo). Es un avance interesante desde el JPEG "tradicional", que ofrece una mejor compresión con la misma calidad de imagen y (hasta el punto de esta discusión) un mayor soporte de profundidad de bits.

JPEG 2000 también hace esto, pero ha sido en gran medida un fracaso, posiblemente debido a las preocupaciones con las patentes que cubren la compresión wavelet que usa, o tal vez algo más. El punto importante es: Microsoft está promoviendo JPEG XR ahora, ofreciéndolo en muchos de sus programas, incluido Internet Explorer 9 . A partir de 2009, es un estándar internacional real oficial y está cubierto por la "Promesa de la comunidad" de Microsoft de no hacer cumplir sus patentes de manera hostil contra las implementaciones. Así que eso es bastante bueno para la absorción futura.

Y, junto con ello, que están empujando la idea de más bits por canal como " color de alta densidad ", (que es divertido para mí, ya que en mi mente que sigue siendo la edad de 16 bits-por- todas -channels modo de tarjeta de video). Como parte de esto, tienen un espacio de color "intermedio" posiblemente ridículamente grande llamado scRGB, lea aquí una buena descripción detallada , que es compatible con JPEG XR, si lo desea. Puede que no sea particularmente útil como espacio de color final , ya que la mayoría de sus colores están en el área "imaginaria" fuera de la percepción humana . Pero de todos modos, el punto es que Microsoft está integrando estándares de mayor profundidad de bits en el sistema operativo Windows, y la fotografía sigue siendoparte de eso. De una entrevista un poco antigua de CNET : "Espero absolutamente que el soporte de scRGB en las cámaras acompañe a JPEG XR".

Pero eso fue en 2007. Cuatro años y medio después, todavía no vemos cámaras que admitan JPEG XR, y mucho menos espacios de color de gran profundidad y gran variedad. Pero, tal vez solo estoy siendo impaciente. Como señalan las otras respuestas aquí, el hardware de pantalla que admite una amplia gama apenas está disponible, el soporte en el sistema operativo más popular del mundo es bastante reciente y el primer navegador web que lo admitió se lanzó este mes . A medida que eso se ponga al día, y con suerte eventualmente sea recogido por Chrome y Firefox , los programas de procesamiento de imágenes (incluidos los convertidores RAW) obtendrán soporte, y seguirá la salida directa real de las cámaras.

O todo fracasará. El tiempo dirá. :)

mattdm
fuente
2
Una buena característica de JPEG XR es que es computacionalmente barato, por lo que sería factible implementarlo para la codificación en la cámara, por ejemplo. JPEG 2000 es costoso. Esto es ciertamente un factor, aunque quizás con la marcha hacia adelante de la potencia de cálculo no sea tan importante.
PeterT
3

Agregaré un par de notas sobre Jon's ...

  1. El espacio de color es significativo en el contexto de una cámara solo cuando se habla de archivos JPEG porque, para las imágenes RAW, el espacio de color es una opción en la fase de "desarrollo". Algunas cámaras (Pentax semi-profesionales para ciertos) permiten la elección de sRGB o aRGB para el desarrollo de JPEG, por lo que tal vez puedan agregar un tercero (o cuarto para ProPhoto). Por otra parte, para la mayoría de los profesionales, extraerán la imagen en el espacio de color deseado para su medio de salida previsto.

  2. El espectador (y / o dispositivo) también debe conocer el espacio de color y poder manejarlo. Si bien los monitores de amplia gama se están volviendo más comunes, es probable que sigan siendo una minoría masiva y tomará un tiempo ponerse al día. Diablos, conozco a algunas personas que todavía tienen monitores CRT viejos conectados a computadoras decentes.

John Cavan
fuente
Quiero recalcar nuevamente que xvYCC no es un 'espacio de color', es realmente, en el mejor de los casos, un formato de codificación para la información de color RGB. Admite una gama más amplia no porque sea un espacio de color, sino porque almacena información de color utilizando más bits de información, y los almacena en un formato más cercano a la forma en que los humanos perciben la luminosidad y el color.
jrista
@jrista, el estándar IEC lo llama específicamente "espacio de color YCC de gama extendida para aplicaciones de video - xvYCC", lo que implica que en realidad es un espacio de color. Después de leer sobre YCC, veo de dónde vienes en esto, y no quiero pagar cien dólares para leer el estándar, no puedo estar seguro, pero mi suposición actual es que especifica tanto una forma extendida de especificar información de color en YCC y un espacio de color RGB más amplio real.
mattdm
1
Tendré que leer más en la especificación. Todavía no estoy exactamente seguro de lo que significa xv, así que tal vez eso realmente se refiere a algún tipo de espacio de color de amplia gama. Sin embargo, YCC, incluso si usan más bits, ciertamente no es una "gama", es solo un encoding. Sería como decir que RGB es un espacio de color ... no lo es, es solo una forma de codificar datos de color. A color spacedefine los valores de luminancia y crominancia de cada color a través de un conjunto de asignaciones de colores primarios, una tecla gamma, un punto blanco y negro y algunas curvas.
jrista
1
Supongo que "xv" es "valor extendido", pero puede significar "soudns cool".
mattdm
1

El espacio de color xvYCC probablemente no está viendo una aceptación para la fotografía fija porque se han desarrollado nuevos estándares que son una mejora de los estándares más antiguos, y ningún fabricante quiere invertir en un estándar que pueda depreciarse antes de que sea reemplazado por el 'próximo gran logro '. Aprendieron de VHS vs. Beta.

El formato de imagen de alta eficiencia (HEIF), MPEG-H Parte 12, es un formato de archivo que especifica un formato estructural, del que se pueden derivar formatos de imagen específicos de códec.

HEIF también incluye la especificación para encapsular imágenes y secuencias de imágenes de acuerdo con la codificación de video de alta eficiencia (HEVC, ISO / IEC 23008-2 | Rec. UIT-T H.265 o MPEG-H Parte 2).

Se menciona en el video de Keynote WWDC 2017 de Apple: https://youtu.be/oaqHdULqet0?t=58m49s .

El iPhone 7 y posterior de Apple toma lo que se fotografió y lo guarda en formato JPEG o HEIF. El uso de HEIF puede proporcionar una solución impecable de cámara a almacenamiento a pantalla: una infraestructura completa sin pérdida o conversión de entrada a salida (cuando se usa HEIF sin comprimir).

No es que sean totalmente compatibles con todas las funciones (ya que MPEG rara vez es "totalmente compatible") o como si no fuera lo suficientemente fácil para que nadie más lo hiciera, es solo que parecen ser los primeros con una solución completa para Imágenes (para Video hemos tenido un subconjunto de HEVC H.264, H.265 y recientemente H.2V + de HikVision durante años).

Si conoce otras cámaras compatibles con HEIF, por favor comente o edite, gracias.

Las cámaras que registran imágenes y videos en un rango dinámico particularmente alto (el sensor tiene más de 16 bits por color) a menudo no procesan los datos (hacen un archivo comprimido), sino que generan los datos sin procesar directamente, por ejemplo: http: // www .jai.com / es / products / at-200ge : esa cámara genera de 24 a 30 bits por píxel o http://www.jai.com/en/products/at-140cl : esa cámara genera de 24 a 36 bits por píxel .

Es posible obtener una cámara de espacio de color CIE 1931 (y probablemente otros espacios de color) si busca sin cesar o está dispuesto a pagarle a un proveedor de cámaras especializadas para que haga exactamente lo que desea, probablemente estará escribiendo el software para Convierta su espacio de color a uno utilizado por otros programas.

Aquí hay un enlace a la cámara Condor3 CIE 1931 de Quest Innovations: http://www.quest-innovations.com/cameras/C3-CIE-285-USB .

Las cámaras con 3,4,5 o 6 sensores pueden dividir el espectro en piezas más pequeñas y proporcionar más bits por canal, resolviendo el color exacto y la intensidad con mayor precisión: http://www.optec.eu/en/telecamere_multicanale/telecamere_multicanale.asp .


Prisma para una cámara de 3 canales 3CCD o 3MOS

Prisma para una cámara de 4 canales 4CCD o 4MOS

Prisma para una cámara de 5 canales 5CCD o 5MOS


Referencias

https://developer.apple.com/videos/play/wwdc2017/503/

https://nokiatech.github.io/heif/technical.html

https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format

Robar
fuente