¿Cuál es la diferencia entre el espacio de color y la profundidad de bits?


13

Sé que hay diferentes tipos de espacio de color y que sRGB es el más común. La profundidad de bits define las variaciones de un canal de color, donde (creo) 8 y / o 16 bits son los más comunes.

Algunos podrían decir que son totalmente diferentes y otros podrían decir que no son mutuamente excluyentes.

¿Alguien puede explicar las diferencias? Si aumenta la profundidad de bits, ¿por qué no aumenta también el espacio de color?

Respuestas:


15

Básicamente, la información del color de la vida es como una caja de crayones de chocolates ...

La información de color se almacena en enteros, no en valores analógicos: hay un número de colores discreto y contable que se puede describir a una profundidad de bits determinada.

Piense en el espacio de color como una caja de crayones de diferentes colores. Un espacio de color describe los tipos de crayones disponibles. Piense en "colores llamativos", "pasteles" o similares. La profundidad de bits describe la cantidad de crayones.

Aquí hay un ejemplo de dos cajas diferentes de crayones:

lápices de colores

Ambos tienen 16 lápices de colores, pero tienen una gama diferente de colores, específicamente, el conjunto inferior no se extiende hasta el rojo. Como hay 16 colores, son 4 bits de profundidad de color (2⁴ = 16).

Un espacio de color "real" es tridimensional, y esto solo tiene una dimensión. (Es decir, el tono). Pero hace un modelo que espero ayude. La "caja" superior tiene un espacio de color que tiene un color "primario" muy rojo en los bordes extremos, mientras que el inferior solo se extiende a un naranja rojizo.

Al principio, el espacio de color superior parece ser obviamente superior (¡ni siquiera puede dibujar algo rojo con el inferior!), Pero considere la situación en la que está dibujando un paisaje con cielo, agua y árboles. El conjunto inferior de lápices de colores en realidad puede ser mucho mejor, porque usa más de sus "bits" para representar sutiles tonos de verde y azul.

Si, en cambio. si compró los mismos rangos de color en juegos de 64 crayones, habría tres crayones nuevos entre cada uno existente. El conjunto inferior aún tendría más opciones para el azul y el verde, pero debido a los nuevos crayones, el conjunto superior también tendría muchas más opciones en ese rango que el conjunto de 16 crayones. Dado que el conjunto superior también cubre el rojo, con suficientes crayones sería objetivamente mejor.

Sin embargo, uno puede imaginar una opción donde ambas cajas tienen algo que falta. Es un poco más fácil ver cómo podría ser eso si vamos a una visualización un poco más complicada, aquí de sRGB real (como un televisor o monitor de computadora de nivel de consumidor) y tintas CMYK estándar "SWOP":

CMYK SWOP vs RGB - imagen mía, y las líneas son aproximadas

Aquí, puede ver que el espacio de color CMYK SWOP¹ se extiende más allá de los cian, magenta / morados y amarillos que se pueden representar en sRGB. Incluso si agregamos más bits para distinguir entre los pasos distinguibles disponibles, el espacio de color determina el borde . Del mismo modo, agregar más bits a la representación CMYK no ayuda a representar las esquinas lejanas de rojo, verde y azul cubiertas por sRGB. (Y, por supuesto, todos ellos son una representación pobre de la gama de la visión humana, representada por la forma externa; si alguna vez se ha preguntado por qué es tan difícil hacer que las fotos digitales de la vegetación se vean naturales, esto es parte de la historia !)

En la vida real, espacios de color de 24 bits (8 bits por canal), tiene 16,8 millones de colores para trabajar. Eso generalmente está bien, y se considera ampliamente que tiene más colores de los que el ojo humano puede distinguir, pero si su espacio de color es realmente grande, en realidad puede tener el mismo efecto donde el salto entre colores individuales en el medio es más grande que lo ideal, y es posible que sería notable en ciertas situaciones.

De hecho, algunos espacios de color "amplios" como ProPhoto RGB tienen colores en el borde del espacio que no corresponden a nada en la visión humana . Son colores teóricos, "imaginarios" que hacen que el espacio de color funcione, pero se desperdician de manera efectiva. Cuando usa un espacio de color como ese con una pequeña cantidad de crayones (poca profundidad de bits), tiene menos opciones para colores realmente útiles, lo que hace que la posibilidad de que falten pasos sea un problema. Algo así como sRGB no puede cubrir los cian y los verdes lejanos (al igual que el rojo que falta en el conjunto anterior), pero a cambio, obtienes una distinción más fina entre los azules y púrpuras y rojos (y los verdes que están allí).

Si vamos a 16 bits por canal (48 bits en total), hay 16,8 millones de "crayones" adicionales entre cada tono en la caja. Esto es una exageración completa (tanto en lo que los humanos podrían distinguir como en la realidad práctica de representar esa sutil diferencia en la pantalla o en la impresión), pero esa exageración garantiza que las transiciones suaves siempre estén disponibles. Y dado que en la vida real, los espacios de color están diseñados aproximadamente para cubrir la visión humana (incluso si no se alinean exactamente), realmente no se encuentra con la situación en la que su espacio de color no tiene rojo en absoluto , simplemente podría No seas tan profundo o sutil.

La otra cosa que vale la pena considerar es que sRGB está diseñado no solo para ser una combinación decente para la visión humana, sino para ser representable en la mayoría de los dispositivos de consumo , y es la suposición predeterminada para una pantalla no administrada en color. Eso significa que cuando usa sRGB, tiene la mejor posibilidad de que los "crayones" que está usando correspondan a los "crayones" que usan los dispositivos de sus espectadores. Es por eso que recomiendo guardar en sRGB para ver y compartir en la web- Las profundidades de bits más altas no son una opción generalizada, y la mayoría de las personas no tienen la capacidad de cambiar por un conjunto de crayones de su elección. (Esperemos que esto mejore en el futuro, pero en realidad no parece ser una prioridad para los fabricantes de dispositivos de consumo. Tal vez cuando se establezca el aro 3D y 4K podemos hacer más hincapié en el "color profundo" - mayores profundidades de bits para pantallas de consumo.

(Algo de esto se tomó de mi respuesta anterior a ¿Cómo se superponen los espacios de color como sRGB y Adobe RGB? )


Nota

1. Este ejemplo particular es una simplificación excesiva y pasa por alto la representación real de las imágenes CMYK y algunos otros detalles; Sin embargo, es un buen ejemplo, porque la mayoría de los espacios de color reales están diseñados para superponerse tanto como sea posible y esto muestra algo que no coincide.


OKAY. Entonces, digamos que el espacio de color superior (fila superior de crayones) tiene el doble de profundidad de bits que el inferior, en teoría, ¿podría cubrir todos los colores / sombras como el inferior? Sin embargo, si ambos son iguales en profundidad de bits, entonces no. No puede cubrir los mismos colores / sombras. Entonces, aunque no esté cambiando el espacio de color, ¿aumentar la profundidad de bits (de un espacio de color) tiene el potencial de cubrir los mismos colores que un espacio de color diferente?
BBking

@BBking Bueno, es tridimensional en lugar de la línea unidimensional que da el ejemplo de crayón, pero en cualquier caso la cuestión de la cobertura básicamente tiene que ver con los extremos. Mire la segunda fila: agregar más bits no va a agregar en los extremos rojos. Pero yendo hacia el otro lado, sí, debido a la forma en que lo construí, suficientes bits más en la parte superior harán que cubra más colores: no será exactamente el mismo, pero seguirá siendo un gradiente más suave. Si va a más de 2 ×, la fila superior será un superconjunto de la inferior.
Lea el perfil

1
Sin embargo, podría haber construido la fila inferior para que se extienda en una dirección que la fila superior no cubra; podría ser que los extremos no se superpongan, y ninguna cantidad de bits añadidos cambiará eso. (Consulte la [pregunta de superposición para obtener más información).
Lea el perfil

Veo. Ahora no sé si debería cambiar la suya por la respuesta ...: /
BBking

@BBking Bueno, ¡hágame saber qué más podría ser más claro! :)
Lea el perfil

11

La profundidad de bits y el espacio de color no son lo mismo, y tampoco son mutuamente excluyentes. Son cosas diferentes que existen simultáneamente. Para una explicación particularmente simple:

  • La profundidad de bits determina la finura con la que se clasifica cada color distinto .

  • El espacio de color determina la extensión dentro de la cual se distribuyen esos colores .

Tomemos sRGB y AdobeRGB como espacios de color, y colores de 8 y 16 bits como profundidades de bits. sRGB es un espacio de color pequeño, mientras que AdobeRGB es un espacio de color más grande. Los espacios de color, o gamas, definen la extensión con la que se pueden elegir los colores de toda la gama de colores visibles para el ojo humano (o, incluso, más allá de ese rango, como sería el caso con ProPhotoRGB o algunos de los nuevos 10 bpc Gamas de TV). Si asigna el color "Verde puro" en sRGB, ese color será de hecho un verde numéricamente puro ... sin embargo, puede que no sea el verde puro más perceptualmente preciso. Mapear el mismo color "Pure Green" es AdobeRGB, y aunque numéricamente es el mismo verde, cuando se mapea en AdobeRGB es más saturado y vibrante. (Además, asigne el mismo color en ProPhotoRGB, y nuevamente estará aún más saturado que en AdobeRGB ... suponiendo, por supuesto,

Ahora, viene poco profundidad. La diferencia entre Pure Green en 8 bits y 16 bits es 0,255,0 frente a 0,65535,0. Se utiliza un número mucho mayor para describir el canal verde en verde puro en color de 16 bits que en color de 8 bits. Si traemos un verde medio, el valor en 8 bits podría ser 0,128,0 mientras que en 16 bits sería 0,32768,0. Mismo color, pero la cantidad de colores distintos en el grado entre Verde puro y Verde medio es mucho mayor con el color de 16 bits. Tiene un total de 32768 niveles distintos de verde entre esos dos niveles en 16 bits, frente a solo 128 niveles distintos en 8 bits. Digamos que elegimos un verde más claro, digamos 0,192,0 en 8 bits. Ese mismo color sería 0,49152,0 en 16 bits. Este aumento en potenciales colores distintos significa que los gradientes se vuelven considerablemente más suaves y más delineados cuando se usa una profundidad de bits más alta.

Finalmente, ¿cómo funcionan juntas las profundidades de bits y los espacios de color? Con una gama estrecha, como sRGB, tiene un espacio de color restringido para mapear colores distintos. Con sRGB y color de 8 bits, cada color será realmente distinto a medida que recorra todos los verdes desde 0,1,0 hasta 0,128,0 a 0,255,0. ¿Qué sucede si tienes una imagen de 16 bits en el espacio sRGB? Numéricamente, su imagen tiene la capacidad de representar más de 280 billones de colores distintos (16 + 16 + 16 bits son 48 bits en total, 2 ^ 48 es 281.5 billones). Perceptualmente ... cuando los valores numéricos RGB se asignan a colores con una gama restringida, una cantidad significativa de esos 280 billones de colores terminará siendo asignada exactamente a la misma "coordenada de color" dentro del espacio de color. Su archivo de imagen todavía contiene datos de color de precisión completa, sin embargo, cuando se procesa en la pantalla (o se imprime para imprimir),

Si pasamos a AdobeRGB, la gama crece, es un espacio de color más grande y, por lo tanto, puede abarcar una mayor cantidad de asignaciones de color distintas. Con una profundidad de color de 8 bits, efectivamente se asignará escasamente a esta gama más grande. Técnicamente hablando, la gama es capaz de describir más colores de los que su profundidad de bits le permite hacer referencia. Sus factores limitantes ahora han cambiado ... en lugar de que la gama sea restrictiva, la profundidad de bits es restrictiva. Si optamos por el color de 16 bits en el espacio de color AdobeRGB, hay más espacio para que nuestros 280 billones de colores potenciales hagan referencia a colores distintos. Es probable que varios colores sigan asignándose a las mismas coordenadas reales en el espacio AdobeRGB, sin embargo, habrá muchas menos colisiones en este espacio más grande que con sRGB.

Entonces, aunque el espacio de color / gama y la profundidad de bits son cosas distintas, están interrelacionadas. No es necesario que use una gama más grande cuando usa una profundidad de bits más alta para almacenar sus datos de imagen, sin embargo, es recomendable aprovechar al máximo esa profundidad de bits más alta. Por el contrario, si está guardando imágenes con una profundidad de bits más baja, a menudo tiene menos valor renderizar esas imágenes con algo más que sRGB.

Para aprovechar al máximo la información de color de alta profundidad de bits en un archivo de imagen, se vuelven valiosas gamas más grandes y, al mismo tiempo, mejores pantallas que realmente pueden mostrar esas gamas. Para renderizar color de 10, 12 y 16 bits en televisores o pantallas de computadora, a menudo son necesarias gamas más grandes que AdobeRGB e incluso más grandes que ProPhotoRGB para aprovechar al máximo la percepción visual humana. Nuestros ojos son dispositivos increíbles y capaces de un rango dinámico increíble y una sensibilidad al color extremadamente amplia. Las pantallas modernas de 10 bits con LUT de hardware de 12, 14 y 16 bits (tablas de búsqueda de color 3D) son capaces de mostrar 1.07 mil millones de colores concurrentes, seleccionados de un total de 68.7 mil millones (12 bits), 4.4 trillones (14 bits) o 281,5 billones (16 bits) de colores que la LUT describe con mucha precisión.


2
"La diferencia entre Pure Green en 8 bits y 16 bits es 0,255,0 frente a 0,65535,0". ¡Perfecto! Eso me hizo entender mucho mejor.
BBking

1
El espacio de color no es solo "extensión" (gama); abarca toda la topología de los colores en el espacio. Considere espacios de color no RGB como YUV, HSL (a menudo representado como un cilindro en lugar de un cubo), CMYK (un espacio de 4 dimensiones), etc.
Jason C

@Jason: El término "extensión" funciona para objetos espaciales tridimensionales. No significa solo una extensión bidimensional, como un triángulo superpuesto en la parte superior de la gráfica de brillo / saturación completa del espacio Lab. Extensión significa la extensión completa del espacio de color, en las tres dimensiones, independientemente de la forma real que tome esa extensión. También afirmaría que sRGB, AdobeRGB, etc. son espacios de color, mientras que RGB, YUV, HSL, CMYK, etc. son modelos de color, no espacios de color. Los espacios de color SON 3D, pero por lo general tienen formas de diamante deshilachadas, nunca son cilíndricos o cúbicos.
jrista

1
Desde un punto de vista numérico, sí. Desde el punto de vista de la representación, depende del espacio de color. ;)
jrista

1
Usando los colores de ejemplo de Matt, probablemente terminaría en amarillo brillante (255,255,0), ya que esa es la opción viable más cercana. Si te refieres a (255,0,0), terminaría en naranja. Existen varios intentos de representación que se pueden utilizar al asignar valores numéricos de color a coordenadas de espacio de color: absoluto, relativo, saturación, perceptual. Dependiendo de la intención, el resultado de color exacto (el color "renderizado") será ligeramente diferente (o tal vez enormemente, realmente depende del espacio de color y del perfil ICC).
jrista

3

Estas son cosas independientes. El espacio de color representa todos los colores posibles y es un espacio continuo. Los dispositivos digitales requieren una discretización del espacio. Esto significa que los pasos en cada uno pueden representar colores que están dentro del espacio de color.

Aquí hay una analogía simple: la cosa sobre la altura entre dos pisos como un espacio de color. Ese es el espacio entre los pisos. Ahora, ¿cuántos pasos necesita para construir una escalera desde el piso inferior al superior? La respuesta depende del tamaño del paso. Esa es la profundidad de bits.

Ahora, cuando habla de profundidades de bits utilizadas en formatos de archivo, la situación es más compleja porque no todos los pasos son del tamaño debido a que la profundidad de bits no está distribuida uniformemente en sentido lineal. A veces, los pasos siguen una curva basada en preceptos, una curva gamma o una curva logarítmica.

En general, si aumenta la profundidad de bits, obtiene más gradación dentro de un espacio de color, pero sus límites siguen siendo los mismos. Sin embargo, existen formatos de archivo HDR que utilizan valores de coma flotante o de punto fijo que incluso pueden ser negativos para representar colores fuera del espacio de color especial.


Creo que todavía estoy en el mismo nivel de comprensión. Tu analogía de construcción me confundió aún más. Si hubiera dicho que Color Space es como la cantidad de niveles en un edificio (cada nivel representa un color) mientras que los pasos en el edificio pueden ser la profundidad de bits. Por lo tanto, dentro del mismo espacio de color puede tener diferentes profundidades de bits. Si un edificio es sRGB con pasos de 8 bits, tendrá menos detalles de color que un edificio sRGB de 16 bits. Sin embargo, aumentar la profundidad de bits aumenta el tamaño del edificio. Por lo tanto, ¿cambiar (pero no mucho) el espacio de color?
BBking

2
@BBking: Eso no es del todo correcto. Los dos no están vinculados de esa manera. El tamaño del edificio no tiene que cambiar si se mueve a 16 pasos, porque puede hacer que los pasos estén más juntos que cuando solo tiene 8 pasos. La profundidad de bits es la cercanía de los escalones, mientras que el espacio de color es el tamaño del edificio. He agregado una respuesta que puede ayudar.
jrista

1
Tenga en cuenta que un espacio de color no representa intrínsecamente todos los colores posibles, la mayoría no. ¿O quisiste decir algo como "el espacio de color de X describe el conjunto de colores posibles en X"?
phresnel

2

Probemos un ejemplo simple. Digamos que tenemos un espacio de color llamado "arcoiris". Contiene los colores de un arco iris, por lo que está compuesto de rojo, naranja, amarillo, verde, azul y violeta. El espacio de color describe una gama de colores cubiertos por la gama.

La profundidad de bits, por otro lado, define cuántos colores distintos podemos hacer dentro de ese espacio. Si solo tuviéramos un par de bits, solo podríamos representar los colores básicos del arco iris, pero si tuviéramos un montón de bits, podríamos hacer rojos oscuros y rojos brillantes y rojos medios, etc. Con más bits, podemos definir valores más únicos y, por lo tanto, tener más colores, pero todavía son todos tonos de rojo, naranja, amarillo, verde, azul y violeta.

Es por eso que en realidad es posible que una profundidad de bits más alta represente un rango de color más pequeño, simplemente termina con mucha más precisión dentro de los colores que están cubiertos.

Más técnicamente, la velocidad de bits define la granularidad de los colores dentro del espacio de color y el espacio de color define los valores mínimo y máximo del color (y posiblemente algunas otras cosas también, dependiendo del espacio), pero podría tener cualquier cantidad de pasos entre esos valores.

Los bits adicionales para expandir el espacio de color que cubre, le dan un control más fino de los colores dentro del espacio de color o hacen una combinación de los dos.


1

Una manera fácil de pensar en esas cosas es que los espacios de color son contenedores. Contienen los valores de color del espacio de color para el que fueron creados. Si son espacios de color RGB, los valores son RGB- 0-255 en cada canal. Si CMYK 0-100 valores.

Esos valores no cambian si el volumen del espacio de color sí lo hace. Lo que cambia el volumen de un espacio de color son los valores CIEXYZ que definen ese espacio. Un espacio de color de mayor volumen generalmente puede contener colores más saturados. Un ejemplo de esto es sRGB, un pequeño espacio de color por volumen, y ProPhoto, un gran espacio de color por volumen. Abrir una imagen sRGB en Photoshop produce un resultado esperado, pero luego asignar el perfil ProPhoto ICC cambia drásticamente el color de la imagen y la hace más saturada, pero los valores RGB no han cambiado. Solo su relación con CIELab. Los valores CIEXYZ que definen el volumen del espacio de color se convierten a CIELab y luego al espacio de destino.

La profundidad de bits es la cantidad de información de color disponible en un píxel. Eso se explica muy bien aquíLa mayor profundidad de bits aplicada a la fotografía y las imágenes digitales permite más información de la imagen en cada píxel. Esta mayor profundidad de bits proporciona una mayor capacidad de ajuste al abrir sombras o recuperar detalles resaltados. Recuerde que se representa la profundidad de bits en píxeles, no la profundidad de bits capturada. Recuerde que una vez que se reducen los bits o el espacio de color, no se puede expandir. Tomar una imagen de 8 bits a 16 bits no crea más bits por píxel, simplemente duplica los bits en el píxel de 8 bits. Lo mismo con los espacios de color. Si la imagen se procesó en sRGB y ahora desea todos esos colores brillantes de la imagen original impresa en su impresora de gama grande, lo siento, esos colores ya no existen en esa imagen sRGB. Comience de nuevo y renderice esos píxeles en el espacio de color más grande.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.