Para los detalles técnicos de varios estándares HDR, es suficiente leer este artículo

Nota del autor: Recientemente, tengo que hacer contenido relacionado con la conversión HDR/SDR a nivel de algoritmo, pero realmente no tengo una comprensión completa del contenido relacionado con HDR. HDR a SDR está bien, ambas son imágenes de 8 bits de 0 a 255; pero si SDR se convierte a HDR, la imagen convertida tendrá una gran diferencia en la percepción en diferentes monitores. Así que estoy bastante confundido acerca de esto. Esta imagen trata de averiguar cómo son estos estándares HDR en términos de detalles técnicos, qué contenido se incluye y cuáles son las diferencias. Además, para algunos conocimientos comunes, también se darán explicaciones aquí.

Tabla de contenido

1. Información general

2 Pre-conocimiento

Gama

espacio de color

sRGB

DCI-P3

Adobe RGB

Rec. 709/601 (BT 709/601)

Rec. 2020 (BT 2020)

Rec 2100 (BT 2100)

Funciones de transferencia Funciones de transferencia

TF lineal

Gama TF

TF logarítmico

HDR TF

BT.1886

Rec. 709/2020

PQ,cuantificador perceptual

HLG, logaritmo híbrido-gamma

metadatos metadatos

metadatos estáticos

metadatos dinámicos

análisis del significado de las palabras

3 HDR estándar

HDR10

PQ10

HDR10+

Estándares de contenido

Codificación y Streaming

compatibilidad

Metadatos dinámicos SMPTE ST 2094-40 (HDR10+)

Visión Dolby Visión Dolby

Estándares de contenido/requisitos de visualización

Metadatos dinámicos SMPTE ST 2094-10 (Dolby Vision)

ejemplo de conversión

HLG/HLG10

apéndice

Cálculo de FractionBrightPixels



1. Información general

HDR es la abreviatura de alto rango dinámico. Breve comprensión: la imagen habitual contiene 0~255 8 bits, es decir, solo hay 256 niveles en cada canal de color, pero la diferencia de brillo en la escena real es mucho mayor que estos 8 bits, por lo que hay 10 bits o incluso 12 requisitos HDR de bits.

2 Pre-conocimiento

Gama

Por definición, se refiere al subconjunto de colores que se pueden representar con precisión en la reproducción del color.

La gama de colores generalmente se expresa como regiones en el diagrama de cromaticidad CIE 1931, con bordes curvos que representan colores monocromáticos (longitud de onda única) o espectrales.

De hecho, este modelo de gama de colores debería ser un cono 3D, pero el eje Z representa el brillo. La figura que vemos es en realidad una proyección de la misma en el plano xy. Además del área envolvente en el eje xy, la gama de colores a la que se puede acceder también incluye la cantidad de brillo que se puede alcanzar.

La imagen de arriba es una representación tridimensional del espacio de color sRGB. Tenga en cuenta que cuanto mayor sea el brillo, menor será realmente el área de la sección transversal.

Los espacios de color que discutiremos a continuación están todos definidos en este espacio de gama de colores 3D.

espacio de color

sRGB

De hecho, es la abreviatura de RGB estándar. En ausencia de un perfil de color, sRGB se usa generalmente como un espacio de color estándar.

sRGB usa los mismos colores primarios y puntos blancos que ITU-R BT.709, pero no usa la función de transferencia no lineal BT.709, que es la famosa función de transferencia gamma.

Sus parámetros de espacio de gama de colores son:

La mayor parte de su función de transferencia es gamma2.2, pero hay un pequeño ajuste lineal en la parte cercana a 0 para evitar gamma con pendiente infinita

DCI-P3

DCI-PC también se divide en tres tipos, con ligeras diferencias entre ellos. Sus parámetros espaciales se definen como:

Además, hay algunas gamas de colores, como DCI-P3+ y Cinema Gamut, todas configuradas en base a DCI-P3.

Algunos de ellos usan Gamma 2.2, otros usan 2.6, pero básicamente usan gamma como función de transferencia.

Esta gama de colores se utiliza principalmente en la industria de creación de cine y televisión.

Adobe RGB

En el espacio Adobe RGB, para mostrar colores precisos, el brillo de la pantalla debe ser de 160,00 cd/m2 en el punto blanco y de 0,5557 cd/m2 en el punto negro, lo que significa una relación de contraste de 287,9. Además, el punto negro debe tener el mismo croma que el punto blanco, pero una luminancia igual al 0,34731% de la luminancia del punto blanco. La iluminación ambiental en el panel del monitor debe ser de 32 lx cuando el monitor está apagado.

Al igual que sRGB, el valor del componente RGB y el valor de brillo de Adobe RGB no son linealmente proporcionales, sino también una función gamma de 2,2.

Sus parámetros espaciales son los siguientes:

 Su comparación con sRGB:

Rec. 709/601 (BT 709/601)

Para ser precisos, Rex XXXX es un estándar, que no solo incluye el espacio de color, sino también la velocidad de fotogramas, la resolución, etc., pero aquí solo analizamos el contenido del espacio de color. (lo mismo abajo)

Sus parámetros de espacio de color son:

Rec 709 también especifica OETF, pero no EOTF (ver más abajo para estas dos abreviaturas)

Rec. 2020 (BT 2020)

Sus parámetros de espacio de color son:

El OETF especificado por Rec 2020 es el mismo que la función de 709, pero los parámetros proporcionados son más precisos

Rec 2020 se puede expresar en el espacio YCbCr, Y′ = KR⋅R′ + KG⋅G′ + KB⋅B′

donde KR = 0,2627, KG = 1−KR−KB = 0,678 y KB = 0,0593

Cb y Cr se calculan como

C′B = 0,5⋅(B′−Y′)/(1−KB) = (B'−Y′)/1,8814

C′R = 0,5⋅(R′−Y′)/(1−KR) = (R′−Y′)/1,4746

También hay una conversión de YcCbcCrc, que es similar, pero los valores RGB utilizados son RGB lineales (valores RGB en imágenes RAW)

no lo repetiré aquí

Rec 2100 (BT 2100)

La gama de colores es la misma que la 2100.

Rec.2100 especifica el formato de la señal utilizando RGB, YCbCr e ICtCp. ICtCp proporciona una representación de color mejorada, diseñada para señales de alto rango dinámico (HDR) y amplia gama de colores (WCG).

El método de cálculo del brillo es el mismo que en 2020.

Funciones de transferencia Funciones de transferencia

La función de transferencia optoelectrónica (  OETF) es una función de transferencia que toma la luz de la escena como entrada y la convierte en una señal de imagen o video como salida. Esto generalmente se hace en la cámara. 

La función de transferencia electroóptica ( EOTF) es una función de transferencia que toma una señal de imagen o video como entrada y la convierte en una salida de luz lineal para una pantalla. Esto se hace dentro del dispositivo de visualización.

La función de transferencia  opto-óptica  ( OOTF ) (OOTF) es una función de transferencia en la que se ingresa la luz de la escena y se emite la luz de la pantalla. OOTF es el resultado de OETF y EOTF y normalmente no es lineal.

TF lineal

Habrá algunos archivos RAW al tomar fotografías, y el TF de estos archivos RAW es una función lineal.

Gama TF

  • Rec.601/709/2020 respectivamente dan algunas referencias OETF en estándares de TV, todas basadas en GAMMA TF
  • BT.1886 proporciona la referencia EOTF para imágenes SDR
  • La función gamma de sRGB también tiene su definición, principalmente teniendo un valor lineal cercano a 0.

TF logarítmico

Las empresas de cámaras han desarrollado algunos OETF para sus propias cámaras, por lo que no los repetiré aquí.

HDR TF

  • PQ Perceptual Quantizer: PQ es una función de transferencia desarrollada por Dolby para HDR que permite niveles de brillo de hasta 10.000 cd/m2. Se convirtió en estándar en Rec.2100 y SMPTE ST 2084.
  • HLG, Hybrid log-gamma: HLG es una función de transferencia desarrollada por NHK y BBC para HDR para proporcionar cierta compatibilidad con versiones anteriores en pantallas SDR. HLG es una función de transferencia híbrida que utiliza una curva gamma para la mitad inferior de los valores de la señal y una curva logarítmica para la mitad superior de los valores de la señal. Se convirtió en un estándar en Rec 2100

Hablemos de BT1886, Rec709/2020, PQ y HLG por separado.

BT.1886

Este EOTF se usa especialmente para contenido SDR y es una función de transferencia de gamma2.4.

L es el brillo de la pantalla

V es el valor de la señal de entrada, 0~1

γ=2.4

 

 

Lw es el brillo blanco de la pantalla

Lb es el brillo negro de la pantalla

Rec. 709/2020

PQ,cuantificador perceptual

EOTF de PQ

MI'Es un valor de señal no lineal (entendido como un valor RGB), y el valor es 0~1

F_{D}es el brillo de la pantalla

Luego, también tiene EOTF inverso, es decir, restaura los datos mostrados a su propio valor, que no se muestra aquí. 

HLG, logaritmo híbrido-gamma

La ventaja de esta función es que es retrocompatible con la función de transferencia de la curva gamma SDR.

Esta función generalmente se usa en contenido HLG HDR (este formato usa la función de transferencia HLG, color primario BT.2020 y profundidad de color de 10 bits, el contenido específico se mencionará más adelante).

El EOTF de HLG se define como

(Así es como está escrito en la wiki... Preocupante) 

MI'Es un valor de señal no lineal (entendido como un valor RGB), y el valor es 0~1

F_{D}es el brillo de la pantalla

Lw y Lb son similares a las definiciones anteriores.

Por lo tanto, el OETF y OOTF de HLD se publicarán aquí

El OETF de HLG tiene dos definiciones:

Definido en ARIB STD-B67 como

 

Definido en la Rec. 2100 como:

 

En general, use Rec 2100 más

E se refiere a la intensidad de la luz 0~1

E' se refiere a la intensidad de la señal (RGB

a  = 0,17883277,  b  = 1 - 4 a  = 0,28466892,   c  = 0,5 -  a  ln(4 a ) = 0,55991073

El OOTF de HLG es:

Ys es la luminancia de la escena lineal normalizada

α es el brillo máximo de la pantalla

γ=1.2 (cuando α=1000 cd/m2

metadatos metadatos

metadatos estáticos

Los metadatos estáticos definidos por SMPTE ST 2086 se utilizan en HDR10, incluido el brillo máximo y mínimo, tres coordenadas de colores primarios, el brillo máximo del contenido MaxCLL y el brillo promedio máximo del contenido MaxFALL. Las definiciones específicas son las siguientes:

  • Conjunto de metadatos

El grupo que consiste en el color primario de la pantalla, el croma de punto blanco, el brillo maestro máximo de la pantalla y el brillo maestro mínimo de la pantalla definirán la cantidad de color que muestra el maestro.

  • Rangos de valores

Rango de valores para coordenadas de luminancia y cromaticidad

  • Coordenadas de cromaticidad xy

coordenadas de cromaticidad xy, las coordenadas x deben estar en el rango de [0.0001, 0.7400], las coordenadas y deben estar en el rango de [0.0001, 0.8400], cuatro lugares decimales

  • Mostrar primarias

Cualquier color debe expresarse como la suma de los tres colores primarios, por lo que debe expresarse como xr, yr, xg, yg, xb, yb cuando se muestra

  • Cromaticidad del Punto Blanco

El color del punto blanco en la cinta maestra, que se utiliza para el balance de blancos, generalmente se establece una temperatura de color de 6500k como punto blanco.

  • Luminancia máxima de masterización de pantalla

El brillo máximo máximo en la cinta maestra, que va de 5 a 10000 cd/m2 (nit), número entero

  • Luminancia mínima de masterización de pantalla

El brillo máximo mínimo en la cinta maestra, que va de 0,0001 a 5,0000 cd/m2 (nit), en múltiplos de 0,0001

metadatos dinámicos

SMPTE ST 2094 define metadatos dinámicos, entre los que se suelen utilizar SMPTE ST 2094-10 y SMPTE ST 2094-40, el primero corresponde a Dolby Vision y el segundo corresponde a HDR10+. Se basan nuevamente en SMPTE ST 2094-1. Esta parte del contenido se describirá en detalle cuando se presente el formato HDR correspondiente más adelante.

análisis del significado de las palabras

Ver ST 2084/86-PQ-HLG, estoy tratando de resolverlo - Zhihu (zhihu.com)

El SMPTE ST 2084/2086/2094/BT 601/709/2020/2100 mencionado anteriormente y otras cosas pueden marear fácilmente a las personas. Analicémoslo aquí:

SMPTE ST 2084 es un estándar especial, que es diferente de 2086/2094, define principalmente la curva PQ, que es la EOTF mencionada anteriormente.

Aunque SMPTE ST 2086/2094 se parece a 2084, en realidad es diferente. 2086/2094 agregó contenido de metadatos sobre la base de PQ.

2086 define metadatos estáticos, mientras que 2094 define metadatos dinámicos, y hay dos variantes:

SMPTE ST 2094-10=Dolby Vision

SMPTE ST 2094-40=HDR10+

En los parámetros de compresión ffmpeg, HDR10's transfer=smpte2084, HLG's transfer=arib-std-b67

El estándar BT.2100 proporciona dos curvas gamma como estándares para diferentes tipos de trabajo de producción.
Para películas y transmisión por Internet:
PQ (cuantificación perceptual)
Para transmisión de televisión:
HLG (gamma logarítmica híbrida)
La curva gamma PQ se basa en las características de la percepción visual humana y es más adecuada para hacer películas o transmitir contenido de video a través de Internet, donde la precisión de la reproducción es clave.
La curva gamma HLG, por otro lado, está diseñada para permitir la visualización en televisores SDR existentes sin pérdida de posición, y es más adecuada para transmisión de TV y transmisiones de video en vivo.

3 HDR estándar

Con las reservas de conocimiento relevantes anteriores, puede comprender la diferencia entre varios HDR

HDR10

La definición de HDR10 incluye:

  • EOTF: PQ
  • Profundidad de bits: 10 bits
  • Colores primarios: definidos por BT.2020/2100
  • Metadatos estáticos: SMPTE ST 2086 (volumen de color de la pantalla de masterización), MaxFALL (luminancia media máxima de fotogramas) y MaxCLL (luminancia máxima de contenido)
  • Muestras de croma: 420

HDR10 está técnicamente limitado a un brillo máximo máximo de 10 000 nits, pero el contenido normal de HDR10 tiene un brillo máximo de 1000 a 4000 nits.

HDR10 no es compatible con versiones anteriores de monitores SDR (es decir, los monitores SDR no pueden mostrar contenido HDR10)

Además, los metadatos estáticos pueden ayudar a ajustar el contenido de la pantalla en diferentes pantallas, como las pantallas HDR10 con un volumen de color más bajo o un brillo máximo. Sin embargo, los metadatos de HDR10 son estáticos, es decir, son los mismos para todo el video, y no hay un ajuste especial para cada cuadro/escena diferente, por lo que puede haber algunos problemas para restaurar la intención creativa.

PQ10

PQ10 es, por definición, idéntico a HDR, excepto por una cosa: no tiene metadatos estáticos.

HDR10+

Estándares de contenido

  • EOTF: PQ
  • Profundidad de bits: 10 bits ~ 16 bits
  • Colores primarios: definidos por BT.2020/2100
  • Muestras de croma: 420
  • Valor máximo de píxel lineal: 10 000 cd/m2 por color R/G/B (contenido)
  • metadatos dinámicos

HDR10+ se puede lograr agregando metadatos dinámicos al archivo fuente HDR10.

Codificación y Streaming

HDR10+ puede usar cualquier códec compatible con ITU-T T.35 como HEVC y VP9

En términos generales, los formatos HDR10+ y Dolby Vision son más adecuados para la transmisión de medios, es decir, la reproducción en línea de videos almacenados; pero, de hecho, también se pueden usar para la transmisión en vivo, solo se necesita un codificador HEVC para generar e inyectar metadatos en el contenido en vivo. , teléfono móvil que graba video y crea metadatos HDR10+ en tiempo real durante la grabación.

compatibilidad

Los metadatos HDR10+ siguen ITU-T T.35 y pueden coexistir con otros metadatos HDR, como los metadatos estáticos HDR10, lo que hace que el contenido HDR10+ sea retrocompatible con televisores que no sean HDR10+. Los dispositivos que no admiten el formato ignoran los metadatos de HDR10+ y reproducen el video en HDR10.

Metadatos dinámicos  SMPTE ST 2094-40 (HDR10+)

Su formato de metadatos dinámicos es una variante del formato de metadatos definido en SMPTE ST 2094, SMPTE ST 2094-40.

HDR10+ señala el rango dinámico y las características de la escena escena por escena o incluso cuadro por cuadro. Luego, el dispositivo de visualización aplica el mapeo de tonos apropiado a través de un proceso de mapeo de tonos dinámico utilizando los metadatos dinámicos. El mapeo de tonos dinámico difiere del mapeo de tonos estático al aplicar una curva de tono diferente de una escena a otra, en lugar de usar una sola curva de tono para todo el video.

  • Identificador de aplicación (= 1), Versión de aplicación (= 0)

Formato de ID para HDR10+

  • Intervalo de tiempo
    • TimeIntervalStart
    • TiempoIntervaloDuración

Este elemento indica el intervalo de tiempo durante el cual se aplican los metadatos, a partir de cuándo es apropiado y cuánto tiempo dura.

  • Ventana de procesamiento
    • Esquina superior izquierda
    • Esquina InferiorDerecha
    • Número de ventana
    • EllipsePixelSelector (opcional)
      • CentroDeElipse
      • Ángulo de rotación
      • SemiEje MayorElipse Interna
      • Semieje menorExternoElipse
      • SemiEje MayorExternoElipse
      • SuperposiciónProcesoOpción

Este elemento indica el rango de espacio donde se aplican los metadatos y qué parche se aplica. WindowNumber es un identificador, por lo general el valor predeterminado es 0. Si se definen varios conjuntos de metadatos para el mismo píxel de una imagen y tienen el mismo valor de metadatos TargetedSystemDisplay, el conjunto con el WindowNumber más alto determina el resultado final.

El significado de la última elipse es definir una ventana de elipse además de la ventana cuadrada, y luego hay una zona de transición entre las elipses interior y exterior para evitar artefactos.

Para cada sistema de destino, debe haber un máximo de 3 ventanas de procesamiento dentro de una imagen. La ventana de procesamiento 0 siempre debe existir y debe cubrir todos los píxeles de la imagen y no debe extenderse con selectores de píxeles elípticos. Las ventanas de procesamiento 1 y 2 (si están presentes) deben expandirse usando el selector de píxeles de elipse

  • Pantalla de sistema de destino
    • TargetedSystemDisplayMaximumLuminance
    • TargetedSystemDisplayActualPeakLuminance (opcional)

El primero es más fácil de entender.

El segundo parámetro es una función de muestreo de dos entradas.

Su primera entrada es: FractionBrightPixels. FractionBrightPixels debe ser un número que represente la fracción de píxeles seleccionados en la imagen que contienen el píxel más brillante de la escena. FractionBrightPixels debe estar en el rango [0,1] y en múltiplos de 0,001. Su cálculo se encuentra en el apéndice.

 La segunda entrada es: AverageMaxRGB. Linealizar la media de maxRGB.

  • ColorVolumeTransform
    • MaxSCL
    • PromedioMaxRGB
    • DistribuciónMaxRGB
    • FracciónBrillantePíxeles
    • MasteringDisplayActualPeakLuminance(opcional)
    • BezierCurveToneMapper (opcional)
      • punto de rodilla
      • BezierCurvaAnclas
    • ColorSaturaciónPeso (opcional)

La transformación de volumen de color HDR10+ se basa en el mapeo de volumen de color basado en escenas. Los parámetros definidos son los anteriores.

MaxSCL, Niveles máximos de componentes de color de la escena, se refiere al valor máximo de cada componente que se debe linealizar con los valores RGB en la escena. AverageMaxRGB debe ser el promedio de los valores maxRGB linealizados en la escena.

DistributionMaxRGB debe ser un conjunto de dos vectores de igual longitud. Cada elemento en el primer vector debe ser un valor entero en el rango [0,100]. Los valores en el segundo vector deben estar en el rango [0,1] y en múltiplos de 0.00001. El elemento en la posición i en el segundo vector será el valor que esté un porcentaje por debajo del valor maxRGB linealizado en la escena.

FractionBrightPixels debe ser un número que represente la fracción de píxeles seleccionados en la imagen que contienen el píxel más brillante de la escena. FractionBrightPixels debe estar en el rango [0,1] y en múltiplos de 0,001. El cálculo de FractionBrightPixels se encuentra en el apéndice.

Los tres parámetros opcionales se saltan primero.

ejemplo de conversión

Componentes de entrada lineal para un RGB dado

Trate de calcular la salida de salida.

Primero calcule la luminancia máxima real normalizada de la fuente, comprenda personalmente que este valor se refiere al brillo de la imagen actual (normalizado de acuerdo con la escena

en

Luego calcule la luminancia máxima real normalizada del objetivo, el valor de la comprensión personal es el brillo de la imagen actual (normalizado de acuerdo con la pantalla

en

Luego, calcule los valores RGB normalizados

en

Luego realice el mapeo de tonos de acuerdo con la escena y los parámetros:

en

De nuevo donde Fn es:

otra vez en eso 

Cuando un componente de color en una escena es significativamente más grande que los demás, la escena de mapa de tonos resultante se vuelve más oscura que la intención creativa (o la naturaleza de la imagen). Esto se puede ajustar utilizando el factor de ajuste de atenuación:

 En la figura anterior, Δ = 2 y T = 16,

 Además, hay una manera de hacer un mapeo de tonos con curvas bezier.

Corresponde a metadatos en

  • BezierCurveToneMapper (opcional)
    • punto de rodilla
    • BezierCurvaAnclas

 en

 Los tres parámetros P1~P3 controlan la forma de la curva Bezier

También hay un parámetro de control de saturación para el mapeo de tonos de saturación:

Primero convierta la imagen a YCBCR, luego vuelva a convertirla después del mapeo de saturación, el proceso de conversión:

en:

 Luego realice la conversión de saturación en el espacio YCbCr:

en

 Los dos fSCSM y η en el interior se publican aquí:

en

 

η se resuelve mediante las siguientes fórmulas:

donde M se da a continuación.

Después del mapeo de saturación, vuelva a convertir a RGB:

 

 en

Como se mencionó anteriormente, también hay una ventana elíptica en HDR10+, y hay una transición entre esta ventana y el exterior, por lo que el peso de esta transición debe calcularse aquí.

En la elipse, podemos calcular la suma normalizada de las distancias desde un píxel hasta el foco de la elipse exterior como:

 Los pesos se pueden calcular de la siguiente manera:

 Después del cálculo del peso, también se deben considerar los métodos de ponderación, uno de los cuales es la mezcla alfa:

 en

 Otro método es ponderar según la prioridad de la capa, lo cual es adecuado para el caso en que varias elipses cubren el mismo píxel. Entonces, en este momento, la ventana 1 tiene prioridad sobre la ventana 2 y solo se considera la ventana 1. Si el peso de la ventana 1 es 0, entonces considere la ventana 2

 

 

Visión Dolby Visión Dolby

Estándares de contenido/requisitos de visualización

  • EOTF: PQ
  • Profundidad de bits: hasta 12 bits
  • Brillo máximo: 10 000 nit (los monitores de referencia profesionales, como los monitores de referencia, están actualmente limitados a un brillo máximo de 4000 nit) y un requisito de brillo máximo mínimo de 1000 nit
  • Nivel de negro: no más de 0.005nit
  • Relación de contraste: Al menos: 200000:1
  • Gama de colores: al menos el 99 % de DCI-P3
  • Colores primarios: definidos por BT.2020/2100
  • Muestras de croma: 420
  • Valor máximo de píxel lineal: 10 000 cd/m2 por color R/G/B (contenido)
  • Metadatos estáticos (SMPTE ST 2086)/dinámicos (SMPTE ST 2094-10, formato Dolby)

Pero de forma similar a HDR10+, cuando el rendimiento de la pantalla es relativamente bajo, asignará el contenido al rango de visualización correcto de acuerdo con los metadatos dinámicos.

Metadatos dinámicos  SMPTE ST 2094-10 (Dolby Vision)

  • Identificador de aplicación (= 1), Versión de aplicación (= 0)

Estos dos son los códigos de identificación de Dolby Vision, que se distinguen de otros formatos.

  • Intervalo de tiempo
    • TimeIntervalStart
    • TiempoIntervaloDuración

Este elemento indica el intervalo de tiempo durante el cual se aplican los metadatos, a partir de cuándo es apropiado y cuánto tiempo dura.

  • Ventana de procesamiento
    • Esquina superior izquierda
    • Esquina InferiorDerecha
    • Número de ventana

Este elemento indica el rango de espacio donde se aplican los metadatos y qué parche se aplica. WindowNumber es un identificador, por lo general el valor predeterminado es 0. Si se definen varios conjuntos de metadatos para el mismo píxel de una imagen y tienen el mismo valor de metadatos TargetedSystemDisplay, el conjunto con el WindowNumber más alto determina el resultado final.

  • Pantalla de sistema de destino
    • TargetedSystemDisplayPrimarys
    • ObjetivoSistemaPantallaBlancoPuntoCromaticidad
    • TargetedSystemDisplayMaximumLuminance
    • TargetedSystemDisplayMinimumLuminance

Correspondientes a los elementos de respuesta en los metadatos estáticos, son las coordenadas xy de los tres colores primarios de la pantalla, las coordenadas del punto blanco, el brillo máximo y el brillo mínimo

  • ColorVolumeTransform
    • ImagenCaracterísticasCapa
      • MínimoPqencodedMaxrgb
      • PromedioPqcodificadoMaxrgb
      • MaximumPqencodedMaxrgb
    • Capa de ajuste manual
      • MínimoPqencodedMaxrgbOffset
      • PromedioPqencodedMaxrgbOffset
      • MaximumPqencodedMaxrgbOffset
      • Desplazamiento de mapeo de tonos
      • Ganancia de mapeo de tonos
      • Asignación de tonosGamma
      • ChromaCompensationWeight
      • Ganancia de saturación
      • TonoDetalleFactor

Esta parte no está definida en SMPTE ST 2094-1 y son metadatos dinámicos específicos de Dolby Vision

La transformación del volumen de color de Dolby Vision se basa en el mapeo de tonos, donde ImageCharacteristicsLayer calcula algunas características de la imagen en función de la imagen, como (valores maxRGB codificados PQ mínimo, máximo y promedio)

Esto implica el concepto de Conjunto de píxeles reducido, lo que significa que al calcular estos valores, se calcula sobre el Conjunto de píxeles reducido. Este conjunto se calcula de la siguiente manera: a partir de la esquina superior izquierda de ProcessingWindow, ProcessingWindow se divide en áreas de muestra que no se superponen, cada área contiene 2x2 píxeles y se calcula un valor promedio cada cuatro píxeles, y se calcula la mitad de la resolución. calculado de esta manera Imagen. (Cuando se trata de cruzar el límite, solo se calculan los píxeles dentro del límite)

Aquellos que tienen una comprensión del aprendizaje profundo pueden usarse como una capa de agrupación promedio.

Entonces, los tres PQencodedMAXRGB contenidos en él son los valores de codificación MAXRGB codificados con PQ correspondientes (mínimo, promedio, máximo) calculados en este Conjunto de píxeles reducido. Su valor debe ser un número en el rango [0, 1] en múltiplos de 0.00001.

Al igual que su nombre, la parte ManualAdjustmentLayer es un parámetro que se configura manualmente. Los tres primeros son una compensación añadida a la cantidad correspondiente anterior. debe estar satisfecho

Los siguientes tres parámetros de ToneMapping se aplicarán a la ecuación:

en

Los siguientes parámetros ChromaCompensationWeight y SaturationGain controlan el tono y la saturación respectivamente.

El último parámetro ToneDetailFactor controla el detalle.

ejemplo de conversión

Supongamos que tengo una imagen RGB lineal (imagen RAW sin transformación gamma, o la imagen diaria después de la transformación gamma inversa), primero convierta Di∈R,G,B al dominio de brillo:

Donde Ei es el brillo del componente de color después del mapeo, Di es el brillo lineal de la entrada y c1~c3 son los siguientes

Donde x1~x3, y1~y3 son

Aquí x1~x3 e y2 son desconocidos, entonces

en

 Después de encontrar Ei, ajuste el contenido mostrado de acuerdo con el contenido relevante de ToneMapping:

en:

 Multiplicar un y3 aquí completa el mapeo de rendimiento de la pantalla.

 Después de obtener el Fi (RGB) después del mapeo de color, se convierte al dominio de brillo, como el que se usa comúnmente en las películas:

 Luego ajusta el tono y la saturación:

en

 

 Luego proceda al control de detalle:

en

HLG/HLG10

cavar un agujero

apéndice

Cálculo de FractionBrightPixels

 

en

  

 

Supongo que te gusta

Origin blog.csdn.net/q274488181/article/details/123363809
Recomendado
Clasificación