MX2014011418A - Aparatos basados en la region de brillo y metodos para la codificacion y decodificacion de imagenes de rango dinamico alto. - Google Patents
Aparatos basados en la region de brillo y metodos para la codificacion y decodificacion de imagenes de rango dinamico alto.Info
- Publication number
- MX2014011418A MX2014011418A MX2014011418A MX2014011418A MX2014011418A MX 2014011418 A MX2014011418 A MX 2014011418A MX 2014011418 A MX2014011418 A MX 2014011418A MX 2014011418 A MX2014011418 A MX 2014011418A MX 2014011418 A MX2014011418 A MX 2014011418A
- Authority
- MX
- Mexico
- Prior art keywords
- image
- gts
- region
- hdr
- luma
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20208—High dynamic range [HDR] image processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
El codificador de imágenes (549) para codificar una imagen de una escena de rango dinámico alto, comprende: una unidad de codificación de textura de pixel (552), dispuesta para codificar colores de pixeles de la imagen con una representación de imagen (Im_1) que comprende palabras código de N-bits; una unidad de análisis de imagen (550) dispuesta para determinar y enviar un valor de gris de diferenciador de región (gTS), el cual es un valor de luma que delimita debajo de éste lumas de todos los pixeles de un primer objeto en por lo menos un bloque de la imagen y arriba de éste lumas de todos los pixeles de un segundo objeto en por lo menos el bloque de la imagen; y un formateador (554) dispuesto para co-codificar en una señal de imagen de salida (S(Im_1, MET(gTS)) la representación de imagen (Im_1) y el valor de gris de diferenciador de región (gTS), hace posible el uso sumamente versátil de imágenes que codifican escenas de HDR, en particular que las codifican en formatos de imagen compatibles con los estándares de codificación de video MPEG existentes.
Description
APARATOS BASADOS EN LA REGION DE BRILLO Y METODOS PARA LA CODIFICACION Y DECODIFICACION DE IMAGENES DE RANGO DINAMICO
ALTO
Campo de la Invención
La invención se refiere a aparatos y métodos y productos resultantes como productos de almacenamiento de datos o señales codificadas para la codificación mejorada de por lo menos una imagen o un video, en particular para la codificación de imagen (es) con un rango dinámico incrementado en comparación con imágenes antiguas (llamadas imágenes de rango dinámico alto (HDR, por sus siglas en inglés) y las imágenes antiguas son llamadas imágenes de rango dinámico bajo (LDR, por sus siglas en inglés) ) y la codificación de información de imagen con una cantidad incrementada de información de luminosidad (también conocida como rango dinámico alto) a o de varias representaciones de imagen.
Antecedentes de la Invención
Recientemente han ocurrido nuevos desarrollos con respecto a la codificación de imágenes/video (ya sea de escenas capturadas o gráficos computarizados) , específicamente, es deseable capturar mejor el rango completo de luminancias y colores de objetos que ocurren en la naturaleza, hasta valores de luminancia grandes como por ejemplo 25000 nits (candela por metro cuadrado) (por ejemplo
Ref. 250552
nubes iluminadas por el sol) y frecuentemente también valores bajos como 0.01 nit, lo cual es llamado codificación de HDR (rango dinámico alto) . Hasta ahora, los sistemas de captura de imágenes clásicos (es decir la cadena que inicia en la cámara -e incluso la iluminación de escena apropiada la cual en la forma acostumbrada fue relativamente uniforme- seguida por la codificación para por ejemplo el almacenamiento o transmisión de imágenes, hasta la exhibición de la imagen) han manejado escenas de rango dinámico alto (es decir escenas en las cuales existen regiones oscuras simultáneamente importantes con bajas luminancias y objetos significativos en las mismas y regiones de brillo con luminancias altas, en particular si también existen varias regiones importantes de luminancias intermedias (varios grises) , en particular si varias de esas luminancias de escena pueden no mapear fácilmente lo que es utilizable por un componente en la cadena, tal como por ejemplo un mapeo lineal basado en la presentación en una pantalla) de una manera muy distorsionante. Por ejemplo si la acción estaba sucediendo dentro de un volumen encerrado de un primer nivel de luz ( iluminancia) , tal como un automóvil o una habitación, las regiones de iluminación más brillante, tal como el ambiente observado a través de la ventana pueden haber sido capturadas o por lo menos representadas en la señal con una calidad muy baja (específicamente colores pastel, deslavados o
recortados) . Esto es especialmente de esta manera para las cámaras basadas en CMOS más económicas, en comparación con el comportamiento más compasivo de por ejemplo una película de celuloide. En particular, solo algunos valores de códigos difícilmente representativos pueden haber sido asociados con los objetos en esas regiones brillantes, lo cual puede dar por resultado una mala representación de las texturas de los objetos o incluso un recorte rotundo al valor máximo del espacio de color utilizado para la codificación. Tener muy pocos datos en estas regiones del eje de luminancia de la imagen capturada, también significa que las funciones de procesamiento por ejemplo la optimización del contraste de imagen exhibido puede tener problemas para producir buenos datos de pixeles finales. Teniendo disponibles exhibiciones aún mejores hoy en día y en el futuro cercano (por ejemplo con un brillo máximo de varios miles de nits) , o por lo menos tecnologías de procesamiento de imágenes más inteligentes, uno puede desear mejorar con esa situación para ser capaz de crear imágenes presentadas de calidad más alta.
Por varias razones, por lo menos durante una cantidad de años en el futuro, uno puede desear alguna forma de compatibilidad con versiones anteriores, lo cual significa que los datos de una codificación comúnmente llamada de rango dinámico bajo (LDR) deben estar disponibles o por lo menos deben ser fácilmente determinables de la codificación
disponible, de modo que por ejemplo una caja de procesamiento de video mejorada, novedosa puede suministrar una señal de LDR a una pantalla de rango dinámico más bajo (por ejemplo, una pantalla móvil) . También desde un punto de vista del almacenamiento, puede ser muy útil almacenar una señal de imagen de una manera tan versátil como sea posible, es decir, no solo con la cantidad máxima de datos útiles acerca de la escena, sino también de una manera que estos datos servirán para muchas aplicaciones futuras potenciales, especialmente en caso de que sea de una manera simple. Típicamente, la filmación de una película por ejemplo toma mucho esfuerzo de modo que la señal sin procesar es sumamente valiosa y uno codifica mejor esto de la mejor manera posible que permite una tecnología. No se debe caer en la trampa que incluso la codificación maestra de un programa es para una generación posterior de sistemas de exhibición de mejor calidad debajo de lo que se habría podido lograr si los datos fueran codificados de manera diferente. Esto evita no únicamente tener que hacer una costosa maniobra en todos los aspectos, sino que el lector puede imaginar que algunos son eventos grabados como el matrimonio de una pareja real o un video de bodas de una pareja normal no se hará de nuevo. Y tratar de remasterizar este video para una nueva generación de tecnología de pantallas es, en caso de que no sea muy difícil, por lo menos engorroso. Es preferible que la
codificación permita la captura de la escena óptimamente en primer lugar e incluso permita fácilmente mejoramientos posteriores, por su estructura muy codificadora. Independientemente de cómo se presenta en una pantalla particular más el ambiente de observación, la información presente en las codificaciones de LDR actuales tal como JPEG (dependiendo ínter alia de la escena capturada particular y el sistema de cámaras utilizado) , se observa actualmente como (limitado a) aproximadamente 11 bits lineales o detenciones. Naturalmente en caso de que la codificación deba utilizarse directamente para la presentación (por ejemplo referida a la pantalla) algunos de los bits de información pueden no ser visibles. Por otra parte, un códec puede contener información de la escena original o composición de gráficos (referida a la escena) , la cual se puede volver relevante por ejemplo cuando una pantalla está cambiando su espectro visible para los humanos por medio del procesamiento de imágenes . De modo que es importante tener por lo menos los objetos de imagen más importantes bien representados en la imagen codificada.
Una cadena de captura de HDR es más que solo apuntar una cámara a una escena con una relación de contraste de luminancia grande entre el objeto más oscuro y el objeto más brillante y grabar linealmente lo que existe en la escena. Tiene que ver con lo que son exactamente los valores de grises intermedios para todos los objetos, puesto que
transmite por ejemplo el estado anímico de una película (el oscurecimiento en sí de algunos de los objetos en la escena puede transmitir un estado anímico oscuro) . Y este es un proceso psicológico complejo. Uno puede imaginar por ejemplo que psicológicamente que no es importante si una luz brillante se presenta sobre una pantalla exactamente en esta proporción con respecto al resto de los valores de grises prestados ya que la luminancia de la escena de esa luz fue para el resto de las luminancias de objetos de la escena. Preferiblemente, uno tendrá una impresión fiel de una lámpara real, si los pixeles se presentan con una luminancia de salida de la pantalla "algo" alta siempre que sea suficientemente más alta que el resto de la imagen. Pero esa distribución entre objetos auto-luminosos y reflectantes (en las diversas regiones de iluminación de la escena) también es una tarea dependiendo del espectro de la pantalla y las condiciones de observación típicas. También uno puede imaginar que la codificación de las regiones más oscuras se realiza preferiblemente de modo que puedan ser utilizadas fácilmente en diferentes escenarios de presentación tal como diferentes niveles de iluminación circundante promedio, que tienen diferentes niveles de visibilidad para el contenido de imagen más oscuro. En general, debido a que esta es una tarea psicológica difícil, los artistas se involucrarán en la creación de imágenes óptimas, lo cual es llamado graduación
de color. En particular, es muy práctico cuando los artistas hacen una graduación de LDR separada, incluso si eso se realiza en una "estrategia de codificación de HDR pura" . En otras palabras, en este escenario cuando se codifica una sola señal SIN PROCESAR de cámara de HDR, también se generará aún una imagen de LDR, no necesariamente a causa de que se deba utilizar para una fracción de LDR grande del mercado de consumo de video en el futuro, sino a causa de que transmite información importante acerca de la escena. Específicamente, siempre habrá regiones y objetos más importantes en la escena y al colocar éstos en una subestructura de LDR (la cual se puede observar conceptualmente como una contraparte artística de un algoritmo de exposición automático, todavía después de la captura completa y en relación con las luminancias capturadas fuera de ese rango) , esto facilita la realización de todas las clases de conversiones a representaciones de rango intermedio (MDR, por sus siglas en inglés) , adecuadas para accionar pantallas con características de presentación y observación particulares. Mediante el uso de esta estructura técnica, incluso con una imagen de codificación individual, se pueden adaptar al mismo tiempo por ejemplo pantallas de LDR como una pantalla móvil con un brillo máximo de 50 nits (en espacios cerrados, o un brillo más alto pero compitiendo contra la iluminancia alta en lugares abiertos) , una pantalla de MDR de brillo máximo de rango medio digamos de 1200 nits y
una pantalla de HDR de brillo máximo digamos de 8000 nits. En particular, uno puede adecuar esta parte de LDR de acuerdo con varios criterios, por ejemplo, que se presenta con buena calidad en una pantalla de LDR de referencia estándar (los colores parecen similares tanto como sea posible a aquellos en la pantalla de HDR) o transmite un cierto porcentaje de la información capturada total (por ejemplo una cierta cantidad de la imagen es visible), etcétera. En el siguiente implemento de códec propuesto se describe que esta pantalla receptora a partir de esa codificación de escena (o graduación) integral individual puede identificar fácilmente que son por ejemplo las regiones oscuras, de modo que puede adaptar óptimamente la visibilidad incorporada de las mismas dadas sus características conocidas del sistema de exhibición.
No hay muchas maneras de codificar una señal de HDR. Usualmente en la técnica anterior uno solo codifica de manera natural la señal de HDR, es decir uno mapea ( linealmente) los pixeles a por ejemplo palabras flotadoras de 16 bits y luego el valor de luminancia capturado, máximo es el blanco de HDR en una filosofía similar a la codificación de LDR (aunque psicovisualmente esto no es usualmente un blanco algo reflectante en la escena, sino preferiblemente un color brillante de una lámpara) . Esta es una codificación referida a la escena nativa de las
luminancias de objetos de escena originales como fueron capturadas por la cámara. Uno también podría mapear una señal de HDR de rango completo al rango de LDR de 8 bits por vía de una función de transformación de luminancia algo "óptima" , la cual sería típicamente una función gamma o similar. Esto puede involucrar la pérdida de precisión de color (en vista de la interrelación entre el intervalo y la precisión para estas codificaciones) con problemas correspondientes de calidad de presentación, especialmente si en el lado de recepción se puede esperar el procesamiento de imágenes tal como el abrillantamiento local, sin embargo la graduación de valores de grises dominantes de los objetos de imagen (por ejemplo el promedio sobre un objeto) se conserva en líneas generales (es decir sus relaciones de luminancia relativa/perceptual ) .
La técnica anterior también ha enseñado algunas técnicas de codificación de HDR utilizando dos conjuntos de datos de imagen para cada imagen de HDR, basadas típicamente en una clase de concepto de codificación escalable, el cual mediante alguna función de predicción, la precisión de una textura local codificada de LDR" se refina o establecido de manera más precisa, es decir se proyecta a una versión de HDR de esa textura, típicamente mediante el escalamiento de las luminancias de LDR (el LDR en esas tecnologías normalmente no es un grado de LDR de buena apariencia en sí adecuado para la
presentación óptima en una pantalla de LDR típica (de referencia) , sino que típicamente en un procesamiento simple en la entrada de HDR) . Entonces, la segunda imagen es una imagen de corrección para acercar la imagen de HDR predicha a la imagen de HDR original que es codificada. Existe alguna similitud con las codificaciones de imágenes de HDR individuales, a través de las funciones de predicción que sirven como algún criterio de definición de intervalo/precisión, solo en esas tecnologías la codificación se realiza con dos imágenes.
El escalamiento de las luminancias de una imagen de banda de base involucra la aplicación de una transformación y esta transformación de predicción se define frecuentemente por bloque para reducir la cantidad de datos que son codificados. Esto puede ser en sí a modo de datos inútiles, puesto que muchos bloques contendrán el mismo objeto y por lo tanto se necesita la misma transformación.
Como ya se mencionó, la diferencia de la imagen de HDR original con la predicción puede ser co-codificada como una imagen de mejoramiento al grado deseado, no obstante tanto como sea posible dado el intervalo y la definición de la imagen de mejoramiento. Por ejemplo, uno puede representar un valor de gris de HDR de 11168 con una división por 8 a un valor 146. Este valor de HDR podría ser recreado al multiplicar por 8 nuevamente, pero puesto que un valor 1169
cuantizaría al mismo valor de capa base 146, uno necesitaría un valor de mejoramiento igual a 1 para poder recrear una señal de HDR de alta calidad. Un ejemplo de esta tecnología se describe en la patente EP2009921 [Liu Shan et al. Mitsubishi Electric: Method for inverse tone mapping (by scaling and offset) ] . Una cuestión interesante acerca de estos métodos es que siempre el método de mejoramiento lleva realmente a un mejoramiento de información visual. Se aplica normalmente de manera ciega y por ejemplo para regiones texturizadas algunas veces puede no contribuir información adicional relevante, especialmente para el cambio rápido de video .
Otra codificación de dos imágenes se describe en la solicitud todavía no publicada actualmente US61/557461 de la cual todas las enseñanzas se incorporan por este acto a manera de referencia.
Ahora existen problemas con todas las codificaciones de HDR existentes. Solo aplicar transformaciones globales puede ser muy rústico de acuerdo con lo que el creador de contenido desea después de haber invertido mucho en por ejemplo una película (efectos especiales) . Otras aplicaciones pueden ser menos cruciales como la elaboración de un programa de televisión, pero aún es deseable un buen control sobre la apariencia final. Esto llegaría por lo menos al costo de necesitar muchos bits de
datos codificados. Por otra parte, la especificación de transformaciones intrincadas por pixel también involucra una gran cantidad de datos que son codificados. Esto aplica por ejemplo a la necesidad de codificar una segunda imagen que es un mapa de aumento de luminosidad, para reflexiones de textura de objeto que son codificadas en una primera imagen. También, en este documento uno codifica a ciegas cualquier cosa que ocurra posiblemente en la entrada, sin saber mucho acerca de lo que está realmente en la imagen (es decir sin permitir el uso versátil) , incluso sin realizar puede haber una gran cantidad de redundancia en la imagen de aumento. Se permite que estos datos ciegos sean fáciles de utilizar para algoritmos inteligentes como por ejemplo algoritmos de mejoramiento u optimización de imágenes en el lado de la pantalla.
El trabajo en una base de bloques reduce la cantidad de datos, pero aún no es óptimo. En particular, esta estructura de bloques que también es preferiblemente ciega para el contenido de imagen real, y de manera más molesta, que impone una nueva estructura geométrica que es una rejilla de bloques, la cual no tiene nada que hacer con la imagen subyacente, y por lo tanto puede coincidir más o menos convenientemente con las características de la imagen (en particular la geometría de la imagen) , significa que pueden ocurrir varios artefactos relacionados con la codificación de
bloques. De hecho, un bloque no es mucho más que solo un pixel grande y no es realmente una estructura relacionada con el contenido inteligente (ni referente al color-estructura geométrica de ese objeto o región, ni su significado semántico, tal como por ejemplo es un objeto el cual debería estar oculto principalmente en la oscuridad) .
Las modalidades posteriores se dirigen a proporcionar medidas técnicas fáciles para mitigar por lo menos algunos de esos artefactos.
Breve Descripción de la Invención
Una codificación simple y fácilmente utilizable de imágenes de HDR se puede realizar por medio de conceptos de modalidades presentados en este documento que siguen principios relacionados con un codificador de imágenes (549) para codificar una imagen de una escena de rango dinámico alto, que comprende:
una unidad de codificación de textura de pixel (552), dispuesta para codificar colores de pixeles de la imagen con una representación de imagen (Im_l) que comprende palabras código de N-bits;
una unidad de análisis de imagen (550) dispuesta para determinar y enviar un valor de gris de diferenciador de región (gTS) , el cual es un valor de luminancia que delimita debajo de éste luminancias de todos los pixeles de un primer objeto en por lo menos un bloque de la imagen y arriba de
éste lumas de todos los pixeles de un segundo objeto en por lo menos el bloque de la imagen; y
un formateador (554) dispuesto para co-codificar en una señal de imagen de salida (S(Im_l, MET(gTS)) la representación de imagen (Im_l) y el valor de gris de diferenciador de región (gTS) .
Solo con únicamente uno o algunos de estos valores de grises del diferenciador de región uno ya puede transmitir la característica esencial de una escena de HDR, tal como que existe una región "above_white" (arriba de blanco) o "overbright" en la imagen. Arriba de blanco significa luminancias de escena arriba del blanco en la región iluminada normalmente, por ejemplo el blanco que sería grabado de un papel blanco iluminado normalmente (de acuerdo con el diseñador de iluminación del escenario por ejemplo) , en la parte principal de la escena. Los diferenciadores son una forma agradable para co-codificar el contenido semántico de una escena. Por ejemplo, existe no solo un blanco en una escena real, como asume la codificación de imagen clásica. En la codificación de imagen de LDR clásica, uno ilumina en realidad la escena donde ocurre la acción aproximadamente de manera uniforme y luego el objeto reflectante más blanco (en la iluminación más brillante de la región de imagen principal) determinará típicamente el punto blanco de la codificación de imagen. En lugar de recortar por ejemplo
objetos en espacios abiertos, uno también podría incluir algunos objetos blancos superiores, por ejemplo por medio del camarógrafo que especifica un punto de codo particular para la curva gamma de reproducción, pero que aún está vinculado con el blanco principal (por ejemplo 6x sobre ese blanco) .
En una escena real, puede haber por ejemplo un espacio abierto soleado muy brillante. Incluso cuando son embutidas conjuntamente estas dos regiones en una cantidad menor de codificación de bits (por ejemplo que la representan como una imagen clásica de 8 bits) , uno desearía estas dos regiones/intervalos separados entre sí en el eje de luma. Esto significa que después (o por ejemplo intermedio en la transcodificación o regraduación automática, etcétera) uno puede tratar más inteligentemente esas regiones. Ya se habló anteriormente acerca de objetos de lámparas. La pantalla de presentación puede desear volverlos de acuerdo con un criterio que define uno o más de "tan brillante como puede" y "no muy deslumbrante para el espectador aunque" . Sin embargo, para hacer esto puede ser necesario tratar esas dos regiones de imagen (lámpara contra el resto de la escena) de manera diferente e incluso discontinuamente, y por lo tanto puede ser necesario saber lo que en la imagen es ese objeto de lámpara. Las codificaciones basadas en funciones gamma clásicas moverán típicamente la lámpara durante el pos-procesamiento a alguna posición de luminancia presentada la
cual es dependiente de esa gamma utilizada, pero no la semántica de la escena junto con los detalles específicos colorimétricos del sistema de presentación (tal como capacidades de exhibición, luz circundante, etcétera) . Un razonamiento técnico similar se puede hacer para las regiones más oscuras, si uno sabe su composición a modo de regiones de luminancia, es decir por ejemplo un par de rangos de oscuridad, por ejemplo "oscuro brillante", "oscuro promedio" y "superoscuro" . Estos códigos (es decir diferenciadores de valores de grises) podrían significar algo numéricamente, pero el método permite que el graduador de color, haciendo por ejemplo el HDR maestro final para el almacenamiento en digamos un disco blu-ray, los coloque con regiones semánticamente significativas. Por ejemplo, en un basamento oscuro de una película de terror, el oscuro promedio puede ser los colores con los cuales se deben presentar las paredes (finalmente en la pantalla de presentación, de acuerdo con su mapeo de tonos óptimo, final para la optimización de la pantalla) , mientras que el oscuro brillante (es decir que es el rango de luminancia presentado entre el oscuro promedio y el oscuro brillante) puede ser una herramienta sobre esas paredes como cuchillos e instrumentos de tortura para hacerlos más visibles (dados los detalles específicos colorimétricos del lado de la presentación) y superoscuro puede ser por ejemplo una esquina oscura, en donde el
criminal puede estar oculto. La región de esquina superoscura entonces es el primer objeto y la región principal oscura promedio el segundo objeto, justo como en una escena en espacios cerrados/espacios abiertos, el espacio abierto soleado puede ser el segundo objeto y el espacio cerrado puede ser el primer/principal objeto.
También, estas dos subregiones (por ejemplo acción principal iluminada promedio y lámpara o espacio exterior soleado) pueden estar juntas estrechamente en la representación de imagen codificada que está tocando realmente con el propósito de no desperdiciar códigos de luma en medio, lo cual las hace extremadamente difíciles de separar ciegamente en el lado de recepción. Todavía existe este valor de luma particular el cual marca el límite entre las mismas, el cual es co-codificado por lo tanto como un valor de gris del diferenciador de región (gTS) para el entendimiento fácil (todavía simple) de la escena en el lado de recepción. Y esto entonces permite varias aplicaciones, tal como la codificación de HDR y la fácil reconstrucción de una imagen de 8 bits en el lado de recepción, el procesamiento de imágenes tal como el remapeo de color, etcétera .
Ventajosamente, el codificador de imágenes (549) comprende una unidad de determinación de mapeo de lumas (553) , dispuesta para determinar un mapeo de lumas (TOM) para
por lo menos uno del primer objeto y el segundo objeto que define un mapeo entre lumas de pixel como se codifican en la representación de imagen (Im_l) y lumas de los pixeles en una segunda representación de imagen (IM_ RC_HDR) y dispuesta para suministrar el mapeo de lumas (TOM) al formateador (554) el cual se dispone para co-codificario en la señal de imagen de salida (S(Im_l, MET(gTS), TOM). Estos mapeos de luma se pueden determinar de varias maneras, tomando en cuenta estos principios como por una parte una especificación óptima de la información en la imagen (por ejemplo la cantidad de códigos necesarios para codificar de manera relativamente fiel una textura de una complejidad específica, como una granulosidad de madera) y por otra parte una apariencia al definir por ejemplo una posición de luma en típicamente una pantalla de referencia.
El creador del contenido podría dejar el lado de recepción para realizar su procesamiento deseado, por ejemplo la presentación en pantalla final. Solo tener un gTS ya es suficiente para muchas situaciones, puesto que el sistema del lado de recepción entonces sabe obviamente lo que son los objetos brillantes, puesto que tienen lumas superiores al gTS. Sin embargo, este sistema de valor (es) de grises del diferenciador de región de co-codificación permite la codificación mucho más versátil de una escena de HDR (conocimiento acerca de su composición o incluso significado
semántico en metadatos) y consecuentemente el uso diverso de esos datos. Por ejemplo el creador de contenido puede proporcionar uno o más escenarios sobre como mapear los colores/lumas de pixeles codificados en Im_l a otros diversos espacios de color, tal como para la presentación en diferentes pantallas. Puede codificar por ejemplo varios valores para (aproximadamente) un tipo de pantalla (por ejemplo que tiene un brillo máximo cercano a 4000 nits, es decir proyectado para pantallas de LCD u OLED con brillos máximos reales entre 3000 y 5000 nits) , de modo que la pantalla pueda elegir finalmente una estrategia de presentación final de todo el conocimiento de transformación codificado (codificación como el creador de contenido desee que sus imágenes se vean finalmente) . Por ejemplo en pantallas con un rango dinámico exhibible más bajo, un diferenciador individual para las regiones más brillantes puede ser suficiente en sí, puesto que no tiene esta alta capacidad de presentación de regiones brillantes. Sin embargo, una pantalla de 8500 nits puede hacer mucho más ventajoso el uso del contenido si contiene más valores gTS que indican diferentes clases de región de brillo, puesto que conociendo su sub-espectro presentable físico de luminancias de brillo puede asignar un subrango de luminancia diferente a por ejemplo objetos soleados en espacios abiertos como a por ejemplo objetos de lámparas de una primera clase y una región
incluso más brillante cerca del brillo máximo para una clase más brillante de objetos de lámparas.
Un creador de contenido con un interés menor en invertir mucho tiempo en la graduación puede por ejemplo solo especificar dos graduaciones, por ejemplo puede iniciar de Im_l o alguna transformación automática del mismo, como que es "suficientemente bueno" para la presentación de LDR y entonces puede tomar algún tiempo para retocar los mapeos para obtener una imagen de HDR mejorada (por ejemplo con regiones en espacios abiertos, luces o ventanas brillantes adicionales) . De modo que puede especificar por ejemplo una imagen de LDR de 8 bits (la cual será llamada contenedor de LDR) y luego algunas funciones, principalmente funciones de mapeo para recuperar aproximadamente la imagen de HDR maestra, original (por ejemplo en una codificación de 16 bits flotante nativa) del LDR_container, así como también en segundo lugar algunas funciones que permiten una o más adecuaciones de esa imagen de HDR. Por ejemplo, puede especificar un mapeo de las regiones brillantes arriba de por ejemplo 90% para la exhibición en una segunda pantalla de referencia de 14000 nits (la primera pantalla de referencia puede ser la pantalla para la cual el grado de HDR maestro, original se graduó antes de codificarlo con un contenedor de LDR mediante el mapeo descendente, por ejemplo una pantalla de 5000 nits) . Similarmente , esas funciones se pueden
utilizar para la adecuación descendente a pantallas de MDR de alrededor de 2000 nits, por ejemplo al invertir su comportamiento de mapeo. En las variantes más simples, el graduador que invierte menos tiempo puede solo especificar uno o más valores gTS para al menos algunas escenas en la película y puede dejar la pantalla o el presentador (por ejemplo impresora) para resolver lo que sería una buena transformación para sus características de presentación.
Un aparato de procesamiento de imágenes del lado de recepción entonces puede por ejemplo determinar su grado final de esos dos o más conjuntos de información (la imagen de contenedor de LDR codificada en Im_l y por lo menos el valor de gris diferenciador gTS y si está disponible cualquier información de función de mapeo el graduador especifica que está de acuerdo con sus deseos) . Por ejemplo, mirando a la figura 2B, el creador de contenido puede prescribir en la señal que para la presentación de HDR del objeto muy oscuro, el mapeo parcial PD_BLCK(i+2 , j ) se debe utilizar (explicado en detalle posteriormente) y que para la presentación de LDR el mapeo más brillante PD_BLCK(i,j) puede o debe utilizarse (es decir el objeto muy oscuro entonces se trata como las escaleras) . Ahora una pantalla receptora de un brillo máximo digamos de 1500 nits puede decidir utilizar cualquiera de estas dos estrategias (por ejemplo la más cercana a su brillo máximo, la graduación/mapeo de LDR es
para a lo sumo 750 nits (de modo que probablemente más para 400 nits) y el HDR para al menos por ejemplo 2000 nits) o puede interpolar entre las mismas de alguna manera, lo cual para esas dos funciones lineales significaría por ejemplo aplicar la función lineal a medio camino entre las mismas. El sistema permite que el creador de contenido vea el HDR como "efectos de HDR" por ejemplo aumentando una luz brillante, como una bola de plasma emitida desde la mano de un mago.
Este método se puede utilizar cuando la codificación de Im_l es una codificación de menos bits (lo cual no es lo mismo que un rango dinámico más bajo) que la imagen original (HDR maestro) , por ejemplo con una codificación de luma de 8 o 10 bits clásica. En este caso, esa imagen Im_l se puede definir para una pantalla de referencia de un rango dinámico más bajo (y un brillo máximo típicamente, por ejemplo, de 500 nits) y los diferenciadores gTS pueden ser útiles para determinar automáticamente las graduaciones para rangos dinámicos de pantalla más altos (por ejemplo para una pantalla con un brillo máximo de 2000 nits) . Pero por supuesto similarmente la imagen codificada individual Im_l se puede especificar por ejemplo para esa pantalla de referencia de 2000 nits (es decir utilizable directamente para accionar esa pantalla o por lo menos requerir modificaciones colorimétricas menores antes de la presentación) y en este escenario los valores gTS (y otros
datos como especificaciones de funciones de transformación) pueden ser útiles irzter alia para el mapeo descendente para obtener imágenes de accionamiento para pantallas de rango dinámico más bajo, como por ejemplo una pantalla portátil.
Es decir, ventajosamente el codificador de imágenes
(549) opera en un escenario de uso y configuración técnica de modo de una de la primera representación de imagen y la segunda representación de imagen es una representación de rango dinámico alto, la representación de HDR es codificada por ejemplo para una pantalla de referencia con un brillo máximo de por lo menos arriba de 750 nits. Es decir será utilizable sin una modificación adicional grande para accionar una pantalla de HDR para presentar la imagen aproximadamente como proyectó el artista. Esta representación de HDR puede ser por ejemplo un número entero de 3x32 bits o una representación flotante de 3x16 bits (RGB o YC1C2, etcétera) , etcétera. Aunque esta estrategia de codificación se puede utilizar en varios escenarios entre varias representaciones de espacio de color (por ejemplo entre una primera representación de HDR de 16 bits con una primera función gamma, blanca que asigna los códigos de luma etcétera y una segunda representación de HDR de por ejemplo 12 bits) , es especialmente útil si por lo menos una de las imágenes (de entrada o salida) o por lo menos parte de las imágenes es de rango dinámico alto (es decir ya sea codificadas de esta
manera u obtenidas de esta manera son utilizables con una calidad colorimétrica alta para accionar una pantalla de presentación de HDR, etcétera) y en particular es útil cuando el HDR se codifica con palabras de luma de algunos bits (es decir, por ejemplo, de 8 o 10 en lugar de por ejemplo 14 o 20) , caso en el cual se puede utilizar en sistemas de capacidades de antiguas o capacidades cercanas al mismo. Para la compleción de la explicación, el término técnico, comúnmente conocido, reciente rango dinámico alto significa típicamente brillos más altos en la escena o presentación original, más altos que en los escenarios de representación de imágenes de LDR actuales, clásicos o incluso más exacto como se describe a continuación: un intervalo más grande de apariencias de luminosidad (por ejemplo de acuerdo con el sistema visual humano de un espectador, pero naturalmente incorporadas en códigos técnicos como luminancias) . Aunque uno puede definir bien esta señal referida a la pantalla con referencia a una pantalla final de capacidades las cuales son máximas para las tecnologías esperables en un futuro razonablemente lejano, idealmente la imagen de HDR se define por lo menos parcialmente referida a la escena (como uno nunca sabe lo que una pantalla futura hará para aprovechar el contenido codificado y los aficionados originales dirían que la imagen necesita almacenar por lo menos lo que una cámara o programa de gráficos potencialmente de muy alta calidad puede
capturar o producir) , pero incluso luego en lugar de utilizar un modelo de cámara de referencia, uno puede aún codificar esto como la escena la cual es aproximada por una pantalla de muy alta calidad de la misma. De hecho, cualquier codificación entre 0 y Lmax, con cualquier función de asignación de código, también se puede observar como presentable en esta pantalla teórica que tiene un brillo máximo de Lmax e incluso en el futuro lejano dadas las limitaciones fijas de la visión humana uno nunca necesitaría realmente presentar la luminancia del sol fielmente, no en pantallas que se extienden sobre paredes grandes y especialmente no para pantallas más pequeñas en las cuales todo el contenido de imagen se observa en un ángulo sólido pequeño. De modo que el graduador puede elegir codificar la imagen con cualquier pantalla de referencia que desee, ya sea una pantalla teórica final de un brillo máximo de 500,000 nits o una pantalla más pragmática como de 10,000 nits, siempre y cuando co-especifique esta colorimetría que define metadatos en su definición de códec.
Ventajosamente, el codificador de imágenes (549) se dispone de modo que codifique varios valores de grises de diferenciador de región (gTS_D_Loc_l , gTS_D_Loc_2 ) entre secciones que comprenden varias de las palabras de código de N-bits que codifican los colores de pixel de la representación de imagen (Im_l) . Esto permite que el creador
(o incluso un software (elementos de programación) de procesamiento automático) pueda asignar por ejemplo diferentes valores de por ejemplo las "partes sombreadas más oscuras" para diferentes partes de la imagen y de modo que tenga un control más alto sobre la capacidad de adecuación de la imagen. Por ejemplo, en una región geométrica central en la imagen uno puede ocultar (hacer evidente) los objetos más oscuros los cuales se definen como un valor de código por ejemplo inferior 10 y en una esquina los objetos más oscuros son un valor de código inferior 5. Esto puede manejar varias situaciones físicas, como por ejemplo una iluminación que cambia geométricamente, donde la relación entre los pixeles objetivo oscuros y más oscuros pueden cambiar varias veces para bloques que siguen a una redefinición de un gTS local. La codificación real de los valores de grises de diferenciador de región en relación física (por ejemplo en una memoria transportable) a los datos de textura de imagen (Im_l) se puede realizar de varias maneras, pero es ventajoso si los metadatos requeridos son codificados entremezclados con los datos de bloque de color de pixel, precisamente en esas ubicaciones donde es aplicable, es decir típicamente antes del primer bloque en una imagen la cual tiene una relación doble de valores de grises debajo y arriba del gTS (que se utiliza para la segmentación o procesamiento de los siguientes bloques típicamente) .
Ventajosamente, el codificador de imágenes (549) se dispone en el sentido que codifique un valor de gris de diferenciador de región antes de una corrida de varias imágenes sucesivas, este es un valor de gris de diferenciador de región para todas esas imágenes sucesivas. Naturalmente, los valores de grises de diferenciador de región más importantes se pueden codificar en intervalos menos regulares, puesto que pueden ser aplicables por ejemplo a una escena o toma completa. Por ejemplo, uno puede codificar varias estrategias para codificar áreas más oscuras para diferentes ambientes de presentación para una parte de terror espeluznante oscuro de una película. Posteriormente en la película, en una escena diurna en espacios abiertos, uno puede codificar por separado una estrategia de abrillantamiento predominantemente a ser utilizada para el cielo, antes de la primera imagen de esa escena. Esto permite especificar el procesamiento en una base de toma o escena, por ejemplo que define las partes más oscuras de un basamento, y esta definición puede ocurrir de nuevo después de una toma intermitente digamos fuera entre dos tomas de basamento oscuras .
Ventajosamente, el codificador de imagen (549) se dispone en el sentido que codifique por lo menos un valor de gris de diferenciador de región en una memoria no adyacente físicamente a una memoria que almacena la representación de
imagen (Im_l) , junto con un código de asociación geométrica que permite la asociación de por lo menos cada valor de gris de diferenciadoir de región respectivo con una región geométrica de la representación de imagen (Im_l) a la cual es aplicable, el código de asociación geométrica comprende típicamente por lo menos las coordenadas de un bloque de la representación de imagen (Im_l) . Esto permite por ejemplo remasterizar u observar servicios de experiencia. Una compañía puede tomar por ejemplo una película antigua (o incluso un programa o un juego etcétera ya procesado de acuerdo con los presentes principios) y permitir que los graduadores realicen un nuevo análisis de las imágenes. Luego pueden guardar los valores de grises de diferenciador de región y las nuevas funciones de mapeo, etcétera por ejemplo en un servidor en la Internet. El espectador entonces puede elegir por ejemplo ver la película bajo el "nuevo grado Artist_X" al descargar los metadatos de ese servidor (invalidando potencialmente cualquier metadato de demarcación y/o graduación existente). Esta opción podría ser ofrecida por ejemplo a través de la interfaz del usuario al inicio de la película. Varios diferenciadores de grises gTS permiten la co-especificación de varias funciones de procesamiento propuestas y esta estructura puede ser manejada paramétricamente para una fácil re-especificación de por ejemplo los mapeos colorimétricos de dispositivos de
presentación finales o regraduaciones de los datos (los cuales no necesitan cambiar el código Im_l) etcétera. Por ejemplo tres códigos de gTs en el subrango de luminancias más oscuras pueden no ser necesarios para una primera estrategia de procesamiento, la cual puede ser solo un tramo lineal o no lineal sobre todas las luminancias entre gTsl y gTs3, pero una segunda especificación de gTS2 de una región intermedia se puede utilizar en estrategias de mapeo más complicadas. Por ejemplo la pantalla del lado de presentación puede elegir procesar las luminancias entre gTS2 y gTS3 proporcionando un buen contraste visual, pero casi recortar los valores debajo de gTS2. Un transcodificador o un aparato intermedio similar puede aplicar por ejemplo un recorte suave en las luminancias entre gTSl y gTS2 el cual aún contiene alguna información de la captura original, aunque con poca precisión ya que esto será regiones oscuras difícilmente visibles en la mayoría de pantallas en cualquier caso, es decir que necesitan menos calidad de codificación. El creador ha utilizado de esta manera gTS2 para especificar información semántica adicional acerca de la escena representada con imágenes, específicamente qué partes más oscuras de la imagen son menos relevantes. Las estructuras separadas pueden ser más complejas que los metadatos intercalados con los bloques de datos de pixel y manipulados más libremente.
Ventajosamente, el codificador de imágenes (549) se
dispone en el sentido que codifique un primer valor reservado de un valor de gris de diferenciador de región en la señal de imagen de salida (S(Im_l, MET(gTS)), que indica que, al menos para una región geométrica de la representación de imagen (Im_l) , se encuentra de acuerdo con una dirección de exploración a través de la imagen más allá de una ubicación identificable con el primer valor reservado, una transformación de los valores de pixel como se codifican en la representación de imagen (Im_l) a valores de pixel en una segunda representación de imagen (IM_RC_HDR) , se realiza de acuerdo con un algoritmo predefinido.
Los valores especiales para el valor de gris de diferenciador de región, como por ejemplo, "0" o (que claramente no es una luma válida en el intervalo [0.255]) pueden indicar que la siguiente región de la escena debe ser tratada de manera diferente. Por ejemplo en una codificación, el decodificador puede ser referido a una parte muy diferente de la señal de imagen (por ejemplo un sector diferente de una memoria desmontable conectada) , la cual ahora debe ser consultada para obtener la señal de salida final (por ejemplo algunas imágenes pueden ser codificadas de acuerdo con alguna tecnología de dos capas por alguna razón, como por ejemplo diferentes características de señal u origen, etcétera) . En ese caso, el codificador puede copiar por ejemplo este bloque de ese segundo sector de memoria a la posición local, por
ejemplo en Im_l potencialmente antes de realizar una transformación adicional sobre el mismo o alternativamente como valores de luma finales. Cuando se procesa la imagen, las lumas de salida se podrían obtener parcialmente al aplicar un algoritmo de presentación de gráficos de computadora. 0 este código puede indicar que se tiene que aplicar una transformación de imagen adicional para cambiar las lumas de pixel locales o la apariencia de la textura. La región podría ser nada a condición de que la ruta de exploración (que lleva los algoritmos a una ubicación de inicio (x,y) en la imagen, es decir que es la ubicación identificable) sea suplementada por algunos metadatos adicionales que especifican la región, por ejemplo puede ser una elipse que inicia o que tiene su centro en una posición compensada de (x,y) . Típicamente, sin embargo las modalidades se utilizarán ventajosamente en un sistema basado en bloques, caso en el cual por ejemplo (algunos de) los bloques de pixeles 16x16 sucesivos son la región geométrica.
Ventajosamente, el codificador de imágenes (549) se dispone en el sentido que codifique un segundo valor reservado (gTR) de un valor de gris de diferenciador de región en la señal de imagen de salida (S(Im_l, MET(gTS)), lo que indica que al menos para una imagen sucesiva, una pantalla debe presentarlo con una luminancia de salida máxima inferior a un valor predeterminado. Por ejemplo un valor de
255, o 260 puede indicar que una parte de una imagen, o varias imágenes sucesivas, deben ser presentadas con un brillo disminuido para ahorrar energía.
Ventajosamente, el codificador de imágenes (549) tiene la unidad de determinación de mapeo de lumas (553) dispuesta para determinar varios mapeos de luminancia diferentes (TOM) por lo menos para uno del primer objeto y el segundo objeto a través de reglas de vinculación de transformación o se dispone para señalar con un indicador de procesamiento (PROC_IND) que varios mapeos de luma diferentes se pueden utilizar para transformar los colores de pixel de por lo menos uno del primer objeto y el segundo objeto a una nueva representación de color de la segunda representación de imagen (IM_RC_HDR) . Debido a que ahora los diversos objetos relevantes (diferente brillo) son identificables fácilmente en la escena como se codificó en cualquier representación de imagen, también es fácil transformarlos de cualquier manera deseable. Por ejemplo varias estrategias de transformación de color diferentes se podrían aplicar a digamos un objeto sumamente brillante, para varias pantallas de presentación diferentes, propuestas o iluminaciones circundantes del ambiente de observación, o ajustes de preferencia del usuario, etcétera. Por ejemplo, algunas pantallas con un brillo máximo alto es decir con capacidades de alto nivel en la presentación de subregiones más brillantes de la imagen
pueden utilizar un mapeo final cercano a o inspirado por una primera estrategia que tiene una apariencia de contrastante para las regiones más brillantes como se define por una primera estrategia de mapeo, mientras que las pantallas de brillo máximo más bajo de menor calidad pueden seguir exacta o aproximadamente una segunda estrategia de mapeo la cual tiene un efecto de disminución sobre las distancias de inter-luminancia de por lo menos algunos de los pixeles de esta región brillante. Y esas transformaciones podrían ser co-codificadas (parcialmente) con o en la señal de imagen o podrían ser dejadas (parcialmente) en cualquier lado de recepción (ya sea final o intermedio) , este último caso en el cual podría ser útil si la señal de imagen contiene algunas indicaciones aproximadas de qué clases de transformaciones son o viceversa no son deseables, etcétera. Se debe observar que dependiendo del uso adicional, uno o más de los mapeos pueden especificar transformaciones que son seguidas exactamente, contra transformaciones las cuales son una indicación aproximada de lo que la pantalla de presentación final debe realizar. Este último caso ocurrirá típicamente por ejemplo en caso de que el mapeo codifique realmente alguna graduación exacta (como por ejemplo un grado maestro de una codificación de contenedor de LDR de 8 bits del mismo) y este último caso puede aplicarse cuando la transformación es una transformación adicional que indica como esos datos de
luma de pixel maestro pueden ser optimizados adicionalmente para varias clases de pantallas. Por ejemplo una pantalla de brillo máximo más bajo puede estudiar la curva funcional de una estrategia de recorte suave (la cual puede ser especificada entre varios valores gTS semánticos importantes) y luego puede utilizar un mapeo de tonos final el cual mantiene aproximadamente la apariencia visual prescrita.
En el lado de recepción uno puede construir una tecnología reflejada en gran medida del lado de codificador, que es un decodificador de imagen (605) para decodificar una representación de imagen codificada (Im_l, MET) de una escena de rango dinámico alto, que comprende:
una unidad de decodificación de textura de pixel (608) , dispuesta para obtener de la representación de imagen codificada (Im_l) colores de pixel inclusive datos que representan luminancias de pixeles de una imagen decodificada (IM_INTRM) ; y
un deformador (607) dispuesto para extraer de la representación de imagen codificada (Im_l, MET) un valor de gris de diferenciador de región (gTS) .
Por lo menos este valor gris de diferenciador de región gTS entonces se puede utilizar para el procesamiento adicional de imágenes, tal como por ejemplo la determinación del mapeo de color óptimo final para la pantalla de presentación y ambiente determinados. De esta manera, el
método es una manera agradable de unir la codificación de color independiente de la pantalla original y la codificación de color dependiente de la pantalla final, el cual puede tener como propósito por ejemplo que debe presentar colores en el ambiente de observación de la pantalla aproximadamente como habrían sido observados por un espectador humano en la escena original. La codificación de imagen real puede ser muy diferente de la misma (puesto que se codifica típicamente con referencia a alguna pantalla de referencia realista en sí, la cual sin embargo puede ser aún muy diferente de la situación de presentación real: por ejemplo una imagen de HDR maestra se codificó para condiciones de observación caseras, circundantes, relativamente oscuras y esa televisión casera entonces la afina para condiciones finales algo más claras; sin embargo: gran parte de la complejidad ya se realiza en el grado maestro hacia una o más pantallas de observación de referencia realistas, dejando una estrategia de transformación de color final más simple a la pantalla) ; sin embargo, puesto que normalmente no habrá una inversión del orden de luminancias de pixeles, una manera agradable de caracterizar la escena como se imaginó adicionalmente y permitir una validez de situación de exhibición fácil es al dividirla semánticamente en subpartes de luminancia/luma especialmente aquellas las cuales típicamente serán importantes y sumamente variables en cuanto a su apariencia
en varios escenarios de exhibición, como por ejemplo las regiones más oscuras o más brillantes de la imagen. Se debe observar que se puede utilizar la palabra luma para especificar todas las operaciones matemáticas como por ejemplo segmentaciones, puesto que esta luma estará relacionada con la luminancia real (por ejemplo cuando la imagen es enviada en la pantalla de referencia) por vía de alguna estrategia de mapeo de codificación, la cual es una generalización -potencialmente discontinua- de un mapeo gamma como gamma 2.2.
Ventajosamente, este decodificador de imagen (605) comprende una unidad de segmentación de imagen (606) dispuesta para utilizar el valor de gris de diferenciador de región (gTS) para obtener un segmento de luma más baja y un segmento de luma más alta en la imagen decodificada (IM_INTRM) , es decir realiza la separación de entendimiento de imagen con base en el (los) valor (es) de gris de diferenciador de región, de modo que este último procesamiento como por ejemplo el procesamiento de ruido optimizado se puede realizar de manera diferente para regiones las cuales son presentadas finalmente de manera diferente (con por ejemplo menos visibilidad del ruido en las partes más oscuras) .
Ventajosamente, el decodificador de imagen (605) comprende una unidad de transformación de color de pixel
(609) , dispuesta para aplicar una primera transformación de color (PD_BLCK(i , j ) ) que transforma por lo menos los valores de luma de los colores de pixel a pixeles de por ejemplo la imagen de HDR maestra, recuperada en el segmento de la luma más baja y dispuesta para aplicar una primera transformación de color (PM_BLCK(i , j ) ) que transforma por lo menos los valores de luma de los colores de pixel a pixeles en el segmento de luma más alta. De modo que uno puede determinar por ejemplo una imagen de accionamiento óptima que es presentada en una pantalla de rango dinámico más alto (un lector experto entenderá que bajo y alto y más bajo y más alto se refieren entre sí por ejemplo si una codificación de color de pixeles de imagen es para una pantalla de referencia de 350 nits, la transformación de ésta en una representación propuesta para una pantalla de referencia de 2000 nits, significa que esta segunda imagen es para un brillo más alto o establecido de manera diferente un rango dinámico más alto que la imagen original) . Esta separación significa una codificación aún simple de calidad mucho más alta. Si uno tuvo que codificar la imagen completa con una estrategia individual, uno puede llegar únicamente a una apariencia aproximada al promediar todas las clases de errores (por ejemplo una cara tiene que ser brillante, pero luego el brillo de basamento oscuro se vuelve muy alto, de modo que oscurece la cara algo debajo de lo ideal y el basamento solo
es un poco brillante) . Sin embargo, ahora se puede por ejemplo oscurecer el basamento como se desee y luego corregir locamente la cara al definirla con umbrales y una estrategia de actualización. También esta definición parcial facilita el cambio de solo algunos de los mapeos . Por ejemplo a través de varias imágenes de una toma de la escena de basamento, debido a los cambios de luz y/o el movimiento de la cámara, el PM_BLCK ( i , j ) puede permanecer adecuado para la escena completa, todavía la captura (o apariencia necesaria) de las partes más oscuras puede cambiar conforme se va a través de las imágenes sucesivas de la toma. Luego se puede cargar una función PD_BLCK(i,j) diferente después de por ejemplo la quinta imagen de la toma, contrarrestando aquella que la esquina oscura tiene desde ahora se vuelve algo más brillante y necesita una estrategia de mapeo la cual la contraoscurece apropiadamente, también naturalmente utilizando la forma funcional apropiada de PD_BLCK(i,j) para manejar la visibilidad de la textura, etcétera.
Ventajosamente, el decodificador de imagen (605) se dispone para aplicar una estrategia de transformación de color específica a los colores de pixel de por lo menos uno del primer objeto y el segundo objeto si el deformador (607) extrae un valor de gris de diferenciador de región (gTS) de un valor reservado, tal como por ejemplo un valor de 0 o 255. Nuevamente, estos valores reservados cuando son detectados en
cualquier parte en la señal de entrada se pueden utilizar para revertir inmediatamente cualquier estrategia de procesamiento de sistema de soporte. Típicamente, los detalles adicionales estarán disponibles en lo que el sistema de soporte aplicar (aunque no necesariamente, puesto que el receptor puede solo realizar algo por sí mismo con base en por ejemplo el análisis de imagen) . Por ejemplo, si la señal de imagen viene almacenada en una memoria, puede haber un sector de estrategias de sistema de soporte sucesivas (por ejemplo métodos de procesamiento de imágenes que definen códigos algorítmicos y sus datos requeridos) y entonces cada vez que se detecta un código reservado de sistema de soporte especial, el aparato de procesamiento de imagen de recepción salta al siguiente método de sistema de soporte para aplicarlo. O los códigos pueden referirse a qué sistema de soporte aplicar (potencialmente muchas veces) , por ejemplo 260 indica que el primer algoritmo almacenado se debe utilizar, 261 el segundo, etcétera.
Ventajosamente, el decodificador de imagen (605) comprende una unidad de determinación de transformación (610) dispuesta para seleccionar una estrategia de transformación de color de pixel de una fuente de memoria no asociada con ninguno de los datos de la representación de imagen codificada (Im_l, MET) . De esta manera, el decodificador del lado de recepción tiene más versatilidad para decidir lo que
va a utilizar para transformar las lumas de pixel . Por ejemplo puede tomar funciones de su propia memoria y decidir por ejemplo dependiendo de las propiedades de un objeto identificado, tal como su luma promedio. 0 podría tomar funciones sobre una conexión de red, determinada potencialmente en un tiempo de corrida por un servidor. La señal puede guiar aún parcialmente esto, al especificar que es deseable aplicar un (cualquier) mapeo de oscurecimiento por ejemplo (es decir una transformación la cual tiene como resultado visual que el objeto se vea más oscuro de alguna manera, por ejemplo un brillo promedio en conjunción con una modificación de contraste y/o un área incrementada en el objeto de muy oscuro por ejemplo recortado a pixeles negros etcétera) , caso en el cual el lado de presentación no debe aplicar preferiblemente un mapeo el cual abrillanta los objetos muy oscuros (tomando en cuenta la visibilidad debido a la iluminación circundante etcétera naturalmente) . Finalmente el lado de recepción, ya sea bajo control específico del espectador o no, puede decidir naturalmente cumplir (parcialmente) con estas directrices co-codificadas deseadas o ignorarlas y atravesarlas. Típicamente aunque la codificación de imagen (por ejemplo el disco en el cual se codifica) puede prescribir por ejemplo que la transformación de ese tipo no es ignorada ni incluso relajada, sino que debe ser seguida estrictamente, o viceversa, no debe ser seguida
estrictamente .
Ventajosamente, el decodificador de imagen (605) se caracteriza en el sentido de que la unidad de determinación de transformación (610) se dispone para determinar la estrategia de transformación de color de pixel con base en por lo menos un parámetro del ambiente de presentación, tal como una característica de la pantalla o un nivel de iluminación circundante o el patrón de colores como se observa reflejados en la parte frontal de la pantalla por una cámara, etcétera. De modo que nuevamente el aparato del lado de recepción puede optimizar por lo menos parcialmente los mapeos basados en información importante solo disponible definitivamente en su lado. Un creador de contenido puede especificar sus mapeos que son utilizados suponiendo que una cierta pantalla o ambiente de observación (por ejemplo la mayoría de luces de la sala de estar están apagadas, con solo alguna iluminación atmosférica, lo cual en realidad se puede realizar aproximadamente en la actualidad con el espectador teniendo por ejemplo una lámpara de colores vivos en el piso al lado del espectador) , pero finalmente el lado de presentación pueden cambiarlos, siendo incluso un afinamiento menor (lo cual es el caso ideal) . Aunque esta cantidad de precisión usualmente no es necesaria, el creador de contenido podría especificar en la señal que por ejemplo PD_BLCK( i+2j ) se propone para el caso donde hubo una luminancia digamos de
1 nit alrededor de la pantalla, caso en el cual si la pantalla de presentación mide 2 nits puede decidir cambiar ligeramente la pendiente de PD_BLCK(i+2j ) . En cualquier caso, ésta puede ser información útil para algoritmos de procesamiento en el lado de percepción.
Las modalidades descritas se pueden realizar de varias maneras, por ejemplo por medio de un método de codificación de imágenes para codificar una imagen de una escena de rango dinámico alto, que comprende:
codificar colores de pixel de la imagen con una representación de imagen (Im_l) que comprende palabras código de N-bits;
determinar y enviar un valor de gris de diferenciador de región (gTS) , el cual es un valor de luma que delimita debajo de éste lumas de todos los pixeles de un primer objeto en por lo menos un bloque de la imagen y arriba de éste lumas de todos los pixeles de un segundo objeto en por lo menos el bloque de la imagen; y
co-codificar una señal de imagen de salida (S ( Im_l , MET (gTS) ) la representación de imagen (Im_l) y el valor de gris de diferenciador de región (gTS) .
0 por medio de un método de decodificación de imágenes para decodificar una representación de imagen decodificada (Im_l,MET) de una escena de rango dinámico alto, que comprende:
obtener de la representación de imagen codificada (Im_l) colores de pixel de los pixeles de una imagen decodificada ( IM_INTRM) ; y
extraer de la representación de imagen codificada (Im_l, MET) un valor de gris de diferenciador de región (gTS) .
0 como un programa de computadora que comprende código de software que hace posible que un procesamiento ejecute cualquiera de los métodos que corresponden a las modalidades enseñadas, software el cual puede ser llevado en un disco u otro producto tangible, o puede ser descargado sobre una red, etcétera.
Típicamente, el conocimiento codificado acerca de la escena representada con imágenes viajará de un sitio/aparato a otro (si son unidades dentro de un mismo aparato o sistema del consumidor de aparatos conectados en el mismo sitio como por ejemplo una caja de recepción o procesamiento de imágenes y una televisión o pantalla conectada por vía de por ejemplo HDMI, o servicios que funcionan en aparatos en diferentes países) es decir por medio de una señal de imagen que codifica los colores de regiones de una escena de rango dinámico alto, que comprende palabras código de N-bits que codifican por lo menos las luminancias de los colores de regiones y un valor de gris de diferenciador de región (gTS) , que indica en el sistema de códigos utilizado para codificar las palabras código de N-
bits las cuales codifican por lo menos las luminancias de los colores de regiones, una demarcación entre por lo menos una región geométrica de pixeles de luminancia más alta en la escena de rango dinámico alto o valores más altos de las palabras código de N-bits que codifican éstas y por lo menos una región geométrica de pixeles de luminancia más baja en la escena de rango dinámico alto o valores más bajos de las palabras código de N-bits que codifican éstas. El sistemas de códigos es la representación técnica-matemática que define un derivado de una luminancia de escena (a través de la captura de una cámara) y finalmente a es luminancia presentada, típicamente a través de una cantidad física llamada luma, la cual de define sobre un eje y típicamente con una palabra código digital que cubre la extensión del eje (por ejemplo entre 00000000 y 11111111) o un número flotante entre 0.0 y 1.0 y con una función de asignación (típicamente una función gamma) que mapea estas luminancias no linealmente a luma. Puede haber típicamente información adicional asociada con el sistema de códigos, tal como con el cual la luminancia máxima que es presentada corresponde el valor de código máximo. Cuando se habla acerca de esta señal, se da a entender que las propiedades especificadas están contenidas de alguna manera en la señal, pero pueden estar contenidas de cualquier manera traducida. Por ejemplo, algunos datos podrían ser combinados o divididos y estructurados de alguna manera.
También puede haber transformaciones a otros códigos, tal como por ejemplo una modulación o una codificación redundante para compensar los daños de errores de bits potenciales, etcétera .
La imagen de HDR puede ser codificada (por ejemplo como una imagen de textura de 8 bits de LDR Im_l llamada contenedor de LDR, más metadatos para mapear la reconstrucción del grado del HDR maestro por al menos un mapeo de tono global) en una memoria tal como una memoria desmontable, tal como por ejemplo un disco blu-ray que almacena esta señal .
Actualmente, las modalidades de la invención se pueden utilizar en muchas realizaciones técnicas, escenarios o usos, tal como en un sistema de distribución de video sobre cualquier tecnología de red, que emplea cualquier codificador de imagen, decodificador de imagen, método, señal de imagen u otro producto o implementación de cualquiera de las modalidades descritas o cualquier uso de ese sistema de distribución de video.
Muchas variantes adicionales de las modalidades descritas posteriormente son posibles naturalmente y la persona experta entiende que se pueden realizar por ejemplo en diferentes aparatos en diferentes regiones geométricas del mundo, aplicando su funcionalidad parcial en diferentes momentos en el tiempo o varios tiempos uno después de otro,
en varios escenarios de uso de negocios, etcétera.
Breve Descripción de las Figuras
Estos y otros aspectos del método y aparato de acuerdo con la invención serán aparentes a partir de y serán aclarados con referencia a la implementaciones y modalidades descritas posteriormente en este documento y con referencia a las figuras asociadas, las cuales sirven solamente como ilustraciones específicas no limitantes que ejemplifican el concepto más general y en los cuales se utilizan guiones para indicar que un componente es opcional, los componentes que no utilizan guiones no son esenciales necesariamente. Los guiones también se pueden utilizar para indicar que elementos, los cuales se explica que son esenciales, están ocultos en el interior de un objeto o para cosas intangibles tales como por ejemplo selecciones de objetos/regiones (y como se pueden mostrar en una pantalla) .
En las figuras:
las Figuras 1A-1B ilustran esquemáticamente varias representaciones de una escena original de rango dinámico alto, como se presentarán en diferentes escenarios, específicamente: la Figura 1A muestra las luminancias de salida presentadas absolutas comparadas entre sí para una pantalla de rango dinámico alto actual, una exhibición de sala de cine, una pantalla de rango dinámico bajo y una pantalla portátil utilizada en espacios abiertos y la Figura
IB muestra las presentaciones en un eje de apariencia universal, sistema de referencia absoluto el cual es definido por un espectador humano estándar;
las Figuras 2A-2B ilustran esquemáticamente como varias transformaciones de sub-color para transformar entre dos representaciones de color, ambas que definen una misma vista de imagen en una escena, se aplicarán a por lo menos las lumas de pixeles de varios objetos de luminancia muy diferente (o luminosidad) , que se encuentran en varios bloques de una descomposición de bloques de una representación de imagen;
la Figura 3 ilustra esquemáticamente una manera para codificar algunos metadatos adicionales de acuerdo con algunas modalidades en una definición de señal de imagen particular, en particular como codificar valores de grises de diferenciador de región antes de los bloques de color de pixel a los cuales son aplicables;
la Figura 4 ilustra esquemáticamente como un lado de recepción puede obtener segmentos de luminancia o luminosidad muy diferente en la imagen con base en los valores de grises de diferenciador de región;
la Figura 5 ilustra esquemáticamente un sistema del lado de codificación, el cual puede ser operado por un graduador de color, una realización ejemplar de un codificador que corresponde a las enseñanzas de la invención;
la Figura 6 ilustra esquemáticamente un sistema de lado de decodificación, el cual puede ser por ejemplo un sistema de exhibición casero del consumidor que comprende estos aparatos como una televisión principal y un espectador de imagen portátil y un aparato de procesamiento de imágenes tales como una computadora central que gestiona la distribución y procesamiento óptimo de todo el video para las diferentes pantallas;
la Figura 7 ilustra esquemáticamente como el diseño de las regiones para las cuales los rangos de luminancia (o luma) son mapeados se puede seleccionar adecuadamente para mitigar problemas como errores de compresión; y
la Figura 8 ilustra esquemáticamente como este sistema se puede utilizar en un escenario donde los colores de pixel u objeto tienen que ser mapeados a colores óptimos para una variedad de pantallas con características técnicas considerablemente variables.
Descripción Detallada de la Invención
Las Figuras 1A-1B (es decir la Figura 1A y la Figura IB) muestran esquemáticamente como una escena de HDR original (Orig_SCN) puede ser representada óptimamente en 4 tipos de pantalla (3 tipos típicos y un tipo hipotético para ilustrar mejor el punto, específicamente un dispositivo para libros electrónicos de bajo contraste bajo iluminación soleada, que tiene solo un pequeño rango R_ERDR_OUTS de
luminancias de salida reproducibles) y como una tecnología de codificación de imágenes debe adaptarse para esto. Se destaca que uno necesita dividir conceptualmente las ideas con respecto a la presentación final de una escena (es decir las luminancias que son enviadas físicamente por una pantalla particular) de la codificación de lumas de objeto de imagen. Esta es una filosofía tecnológica diferente de las tecnologías de representación con imágenes de la televisión clásica como MPEG2 , las cuales siempre han igualado estos dos espacios de color correspondientes, de modo que por ejemplo una señal codificada gamma 2.2 puede ser aplicada directamente a una pantalla (estándar) , proporcionando (aproximadamente) la salida presentada correcta (lado de estudio determinado de una manera calibrada) . Esto solo es útil si uno tiene una cadena cerrada, es decir calibrada para un escenario particular, pero la historia se deteriora si se desea tener otro contenido como en particular imágenes de rango dinámico alto (HDR) y/o varias pantallas y/o ambientes de observación con características fundamentalmente diferentes para presentar esas señales. Todavía, uno aún desearía similarmente la simplicidad de tener solo una (o por lo menos algunas) señal (es) de codificación de imágenes y no diferentes imágenes codificadas para cada escenario (aunque pueden ser empacadas de nuevo (por ejemplo transcodificadas , transformadas en color adicionalmente, etcétera) y
transmitidas por vía de diferentes canales técnicos) , lo cual significaría de otra manera que Hollywood u otro graduador tendría que hacer por ejemplo 20 graduaciones preferiblemente que 1 o 2 como previamente (por ejemplo un grado de película maestro y un grado de DVD) .
La definición de imágenes de HDR o una tecnología de representación de imágenes de HDR puede conducir a discusiones. Naturalmente, no es simplemente el número de bits el cual es el criterio, puesto que si por ejemplo la longitud máxima de la palabra (por ejemplo 2A8 contra 2A10) se utiliza para un cierto blanco (por ejemplo 500 nits) , entonces la diferencia es principal o parcialmente solo una de precisión (realmente, las pantallas con relaciones de contraste reclamadas de 1,000,000:1 pueden no presentar discriminadamente incluso el más bajo de esos códigos y en una señal gamma 2.2 que codifica estos negros intensos tampoco se pueden codificar, a menos que la pantalla realice alguna transformación de enegrecimiento impresionante sobre los negros) .
La definición usual de una escena de rango dinámico alto es la luminancia máxima dividida por la luminancia mínima. Esta puede ser adecuadamente una buena definición desde un punto de vista de hardware (componentes físicos) , por ejemplo para una pantalla de presentación.
Por ejemplo, en la escena original, determina que
las capacidades de un sensor de representación de imágenes de una cámara debe ser, también si éste opera con por ejemplo una tecnología de exposición múltiple, debido a que nada que no pueda ser grabado fielmente es ya sea recortado a blanco o negro (y también existe el redondeo y el ruido naturalmente) . También es una buena manera para indicar lo que una pantalla puede presentar físicamente, naturalmente a condición de que se realice de una manera aceptable, incluyendo por ejemplo la dispersión en la placa frontal de vidrio de luz generada por la pantalla, así como también reflexiones del ambiente (por ejemplo la camiseta blanca del espectador que se encuentra al frente de la televisión) . Todas las clases de dispersión y reflexiones de luz son las razones por las cuales el rango dinámico capturado u observado real es frecuentemente más bajo que los números de comercialización citados, si es debido a que la luz se fuga a través de todas las clases de rutas de manchas más claras de la escena a manchas más oscuras (durante la iluminación de la escena, a menos que uno la construya cuidadosamente y gestione las áreas de sombra) , rutas espurias en cámaras (por ejemplo niebla de la lente o reflexiones de cuerpos) o problemas del ambiente de observación (por ejemplo luz de la pantalla o circundante que se dispersa en la placa frontal de la pantalla o reflexiones dentro de la pantalla que entran al homogenizador de luz, etcétera) hasta el ojo propio del espectador (sin embargo,
aunque el espectador pueda comenzar a perder precisión de discriminación de oscuridad cuando tiene fuentes de luz fuertes en su campo visual, especialmente cuando está cerca de regiones oscuras, se podría ignorar este factor ya que una pantalla puede necesitar idealmente ser mejor que el espectador y por lo menos una codificación de imagen debe ser mejor, ya que no se sabe de antemano como el lado de recepción procesará e influirá en la visibilidad de las regiones de imagen) . Por lo tanto con esta definición de relación de contraste uno debe utilizar como el nivel mínimo lo que de hecho es finalmente aún discriminable en el ojo (ruido determinado, etcétera) y no por ejemplo el valor teórico que un LED apagado proporciona luminancia de salida (casi) cero (por lo tanto los estándares imponen por ejemplo patrones de tablero de ajedrez para medir relaciones de contraste aceptables) , ya que nunca existe una situación de luz cero.
Sin embargo, una relación de luminancia no es este criterio de rango dinámico bueno para la CODIFICACIÓN de imágenes de HDR. Lo que se tiene que codificar no es tanto un problema de lo es presentable, sino preferiblemente lo que está en una escena y lo que puede ser percibido por lo menos teóricamente, es decir la señal de imagen necesita contener exacta o aproximadamente esos datos necesarios para poder recrear la apariencia deseada y en todos los ambientes de
exhibición esperables que está presentando la imagen, incluso quizás en las mejores pantallas en un futuro distante (directamente relucientes en el ojo por ejemplo) .
Por ejemplo solo especificar una relación de contraste no justifica el hecho de que en un ambiente oscuro como una sala de cine el sistema visual necesita más contraste para ver la misma escena que aparece en la imagen (mientras que un escalamiento multiplicativo puro en el mínimo y máximo produciría la misma relación de contraste) . Los contrastes también son de hecho fenómenos locales, puesto que se puede hacer que un objeto relativamente claro sea percibido mucho más oscuro si está rodeado por objetos más claros (contraste espacial) . De hecho, psicológicamente el espectador comienza a analizar la imagen e identifica colores los cuales piensa que son negro, blanco, blanco superior, etcétera. Y el espectador puede considerar que algo es negro o blanco, hasta que él percibe un negro incluso más oscuro o un blanco más brillante. De esta manera, cuan "dinámica" se ve una imagen no solo es una función del "negro" y el "blanco" en la escena, sino también una función de otras medidas de contraste más locales las cuales pueden ser definidas en base a la asignación de valores de grises (por ejemplo uno puede crear una apariencia diferente al incrementar la distancia de luminancia de diferentes grises en textura -haciendo que las texturas rocosas sean más
ásperas por ejemplo-, o puede hacer las sombras más oscuras o incluso jugar con las interrelaciones entre agudeza y contraste) . Por lo tanto, uno puede imaginar que si uno desea proporcionar una apariencia diferente a una cara (más lisa, más contrastante, más arrugada, etcétera) , que los códigos que definen las texturas faciales tienen que permitir esta operación, es decir por ejemplo si uno fuera a tener solo dos valores de grises que definen la textura facial, cambiar el contraste facial sería una operación muy difícil. Este moteado de los colores faciales puede ser un problema de varias tecnologías de codificación de imágenes actuales.
Para colocar el problema aún más claramente, mostrando un ejemplo que desde un punto de vista de codificación el rango dinámico no solo es acerca del negro más oscuro y el blanco más brillante, sino acerca de lo que es exactamente en la escena representada con imágenes, una imagen blanca y negra (es decir que solo tiene dos diferentes valores de grises) puede ser PRESENTADA en una pantalla de HDR con 5000 nits de blanco y 0.5 nits de negro (es decir con un rango dinámico de luminancia alto) , pero ¿se podría llamar realmente ésta una imagen de HDR? Se pueden incluso plantear preguntas adicionales, como si se desea exhibir esta señal simple con el blanco máximo (blanco pico) respectivamente características de negro de la pantalla de algún modo. No sería antinatural, o por lo menos innecesario, permitir si
uno necesitaría codificar directamente esos valores así (por ejemplo con el código 0 y 10000 y no solo como por ejemplo 0 y 2) . De hecho, por ejemplo cuando se gradúan áreas más blancas en general un artefacto de una apariencia que puede comenzar a suceder es que la región blanca texturizada comienza a verse blanquecina (como si fuera mostrada mediante el uso de un gis) , lo cual es diferente de la textura física real que la región debe tener. Se plantearía la pregunta: qué es "negro" y "blanco" nuevamente. En realidad, bajo una iluminación soleada, asumiendo el ejemplo sería una imagen en blanco y negro por ejemplo, el blanco puede tener una luminancia de escena real de 5000 nits, pero bajo una iluminación diferente podría solo ser también 50 nits. Y a menos que uno fuera a proteger rigurosamente las regiones negras de la iluminación de escena, serían normalmente algo alrededor de 1% del blanco y no 1/10000. De esta manera, ignorando que las imágenes presentadas más contrastantes pueden tener en algún grado una apariencia preferida, se desearía probablemente mostrar que la imagen en blanco y negro con por ejemplo un rango de luminancia de brillo alto todavía de aproximadamente 100:1 en el subrango más alto de luminancia de una pantalla de HDR crea esa apariencia de imagen iluminada por el sol. De otra manera uno se arriesga de cualquier modo incluso si la imagen presentada no se ve extraña que el ojo descuente algo de la diferencia en la
luminancia de presentación, de modo que con un graduador siempre se desearía utilizar óptimamente el rango dinámico de la pantalla disponible determinado que está presente como contenido en la imagen y en vista de efectos temporales incluso imágenes previas y sucesivas. También se debe observar que aunque las imágenes brumosas se consideran convencionalmente como de rango dinámico bajo, esta imagen también con luces brillantes en la misma necesitaría por lo menos ser mapeada a una subregión alta de un eje de luminancia de colores presentables en la pantalla.
Esta filosofía de codificación es que una codificación necesita tomar en cuenta ambos factores, específicamente por una parte cuan dinámica se presentará finalmente una imagen típicamente, pero por otra parte que clases de objetos más o menos brillantes contenía la escena representada con imágenes. De esta manera, para los propósitos de esta invención (i. a. representación y codificación de imágenes) sería más exacto decir que una imagen de HDR es una imagen la cual contiene: una cantidad suficiente de valores de grises junto con un número de intervalos suficientemente lejanos a lo largo de un eje de apariencia de luminosidad (la luminosidad es una cantidad psicofísica que no es confundida con luminancia o luma codificada) . Por lo tanto se puede explicar mejor la física y las realizaciones técnicas requeridas de imágenes de HDR con
el concepto de "rangos de apariencia anidados" como se aclara con las Figuras 1A y IB.
En las Figuras 1A y IB se observa una escena (Orig_SCN) que es capturada teniendo simultáneamente muchas luminancias oscuras y brillantes, es decir detalles de textura significativos sobre un rango de luminancia en áreas tanto oscuras como iluminadas brillantemente. Para la región/objeto brillante (BR_obj ) existe una ventana de vidrio teñido, la cual tiene muchos colores agradables los cuales deben ser codificados y presentados de manera precisa. En el interior oscuro del edificio, existe una escalera de madera oscura (DRK_obj ) y un objeto incluso más oscuro (VDRK_obj ) . Es decir, un humano que está de pie en esa escena original vería muchas luminancias brillantes (y de hecho colores) en la ventana de vidrio teñido y muchas luminancias oscuras diferentes en las diferentes regiones de sombra en las escaleras. Cuando voltea su cabeza, su procesamiento de retina y cerebro se adaptará a la apariencia en la ventana de vidrio teñido, o viceversa tratando de discriminar objetos de apariencia oscura en las regiones más oscuras. Como todo lo oscuro parece depender naturalmente de que también los constructores de la escena aislaron las regiones más oscuras de las regiones más brillantes, pero por ejemplo uno puede imaginar el ejemplo de tratar de mirar a través de un orificio pequeño de alcantarilla en el pavimento en un día
muy soleado. Es decir las regiones "más oscuras" pueden variar de una apariencia gris oscuro a negro indiscriminable y final (o durante la noche el negro más grisáceo indiscriminable) . En la pantalla de presentación, se desearía crear, dadas las capacidades, por lo menos una experiencia algo similar (por ejemplo colores de tonos oscuros indiscriminables, con una luminancia suficientemente baja de modo que parezcan por lo menos razonablemente negruzcos) es decir, que equilibre tanto el hecho de que un número significativo de luminancias de salida por subrango de luminancia aún presenta las texturas de objetos de todos los objetos tanto brillantes como oscuros con buena calidad visible, contra que la ventana de vidrio teñido debe parecer significativamente más brillante que el promedio (dado el rango dinámico particular de la pantalla ésta puede ser más de una simulación utilizando un efecto "ilusionista" psicovisual contra una gran diferencia fotométrica real para las pantallas de brillo alto) y la escalera más oscura que el promedio (el promedio es por ejemplo el nivel de 18% gris de los alrededores de la habitación iluminada) .
Independientemente de cómo la pantalla realizará óptimamente esto, la codificación de imágenes debe contener por lo menos toda la información y preferiblemente de una manera fácilmente gestionable.
Ahora uno puede capturar y codificar esta escena,
con una señal de datos individual (por ejemplo 0-1023, con una función gamma fija para mapear luminancias de entrada o salida a códigos; es decir por ejemplo si la función gamma define luminancias de salida, uno puede convertir primero la imagen capturada a una N-nit de referencia por ejemplo una pantalla de 16 bits (lineal o de otra manera, por ejemplo con un brillo máximo de 4000 nits) y luego codificar esos "nuevos valores de escena" a por ejemplo una representación de 10 bits, con la intención que en la pantalla de referencia ocurriría una reproducción exacta y por ejemplo una pantalla de 2000 nits se aproximaría a la apariencia) . 0 uno puede optimizar varias señales codificadas para diferentes escenarios, por ejemplo aplicando una función gamma diferente para una señal de sala de cine, para compensar el comportamiento de ambiente oscuro del sistema visual humano. Pero idealmente, el procesamiento principal -el cual puede ser muy complejo en vista del comportamiento sumamente local y no lineal de la visión humana- ya debe estar presente en gran medida en una o más de las imágenes graduadas, codificadas (en codificaciones de imágenes de HDR simples la graduación de LDR es codificada simultáneamente dentro de la graduación maestra de HDR, mediante el uso del concepto de contenedor de LDR, es decir un principio mediante el cual uno puede obtener de nuevo la imagen de HDR maestra de esa graduación codificada por LDR (por ejemplo una imagen MPEG-
AVC codificada de manera clásica) , al invertir la estrategia de mapeo de color utilizada para hacerla de la graduación de HDR maestra, mediante el uso de metadatos co-codificados que codifica ese mapeo; pero naturalmente la codificación de imagen puede contener varias gradaciones, ya sea con varias funciones de mapeo o imágenes de pixeles adicionales por lo menos parciales) , es decir la apariencia es determinada aproximadamente de manera correcta en sí para una cantidad de escenarios típicos de exhibición. En ese caso, la optimización de exhibición real con una operación relativamente simple creará la apariencia final aproximadamente correcta, por ejemplo una función gamma, simple, final para incrementar el contraste para una observación circundante más oscura, etcétera.
En cualquier caso, la apariencia final se mirará como se muestra en la Figura IB y las luminancias de salida fotométricamente mesurables serán como en la Figura 1A. El primer escenario es la señal que se muestra en una pantalla de HDR (como se dice, ya sea con su propio grado de HDR optimizado con un procesamiento mínimo a lo sumo (por ejemplo algunos detalles específicos de hardware en realidad que imitan el comportamiento similar a CRT con una compensación adicional para la física de válvula de LCD) directamente utilizable para accionar la pantalla de HDR o una señal de accionamiento derivada de una señal de imagen/video de HDR
codificada, individual) . Esta pantalla tiene la capacidad de un brillo máximo (blanco) de 5000 nits y una luminancia de salida mínima de 0.5 nits. Se debe observar que el valor más bajo es una aproximación promedio, ya que variará críticamente con varios parámetros circundantes. Incluso en un ambiente controlado, las luces de seguridad de la sala de cine pueden fugar luz a la pantalla y de esta manera el factor impredecible de las personas encendiendo sus teléfonos móviles (aunque en general el efecto será limitado, pero especialmente en las luminancias más oscuras, puede afectar la presentación) . En un hogar normal, las situaciones de iluminación pueden ser muy variables.
Pero aún la pregunta es cómo un humano percibirá estas luminancias, ya que esto dependerá del estado de su sistema visual, inter alia determinado por la iluminación de la habitación, si él puede ver a veces a través de una ventana al exterior, etcétera. Un espectador puede controlar este aspecto al cambiar los ajustes de imagen en su control remoto. En cualquier caso, la pantalla de HDR tiene un subintervalo relativamente grande de valores de brillo disponibles para la presentación de la ventana de vidrio teñido (es decir se muestra relativamente grande, cubriendo una parte superior de intervalo R_D_HDR) . Al mismo tiempo, la escalera se puede mostrar suficientemente oscura, es decir muy por debajo de 50 nits. Se asume que para este ejemplo que
esto tiene como un impacto psicovisual que esas escaleras se midan tanto más oscuras en comparación con la estimación visual de la luminosidad promedio (por ejemplo 18% gris) , pero también que de manera aún significativamente fácil los detalles de textura se pueden observar sobre los reflejos de iluminación circundantes del vidrio frontal de la pantalla (por ejemplo un escenario en el cual el espectador ha atenuado su iluminación circundante a un nivel de observación de película y el gris promedio es determinado principalmente por la televisión y su contenido de imagen mismo) . Esta pantalla de HDR (+ ambiente de observación) es buena de modo que puede incluso mostrar el objeto muy oscuro con una luminancia de salida de pantalla aún más oscura y luminosidad psicovisual correspondiente.
Si ahora se muestra la misma señal en el proyector de cine digital en una sala de cine (nuevamente, si es corregido gamma opcionalmente o no) , ahora esa presentación de sala de cine no mostrará blancos arriba de aproximadamente 50 nits, además de eso, es un ambiente oscuro, las tomas por lo menos más oscuras pueden mostrar luminancias debajo de digamos 0.05 nits, es decir mucho más oscuras que la presentación de pantalla de HDR de la habitación en el hogar. Es decir el rango de luminancia de salida del cine R_CIN se encuentra entre 0.05 y 50 nits. No se puede decir que la ventana de vidrio teñido, a la cual se asignará un subrango
más pequeño de luminancias más altas en R_CIN, se verá igualmente oscura que las escaleras en la pantalla de HDR la cual tiene luminancias de salida aproximadamente idénticas, puesto que el espectador ha adaptado la sala de cine oscura, por lo tanto observa luminancias de salida más bajas como (casi) blancas. Es decir, también en el cine se puede tener un rango dinámico relativamente grande, por lo menos entre imágenes (y por lo menos se puede codificar si no está en la película positiva o señal digital, entonces en el negativo maestro) . Especialmente con alguna de la simulación psicovisual, como por ejemplo jugando con los colores de día o de noche culturalmente establecidos, también el espectador del cine aún tiene la solución que después de una escena de basamento oscura alguien camina en el sol (es menos impresionante que en la pantalla de HDR) .
El hecho de que el sistema visual humano se adapta puede observarse mejor en la representación de apariencia psicológica de la Figura IB, donde se han colocado las diversas imágenes de salida presentadas en un eje de apariencia de luminosidad (Appear_SCAL) . Esto es de hecho lo que el cerebro ve (con todo su procesamiento complejo) , pero aproximadamente se puede mapear a cómo se comportan los conos retínales (o por lo menos junto con conexiones de células ganglionales) . De cualquier modo, en esta filosofía técnica que la complejidad puede ser manejada por el graduador
humano, como siempre debe ser ya que el creador del contenido desea estar a cargo de la apariencia de su contenido. Se observa en realidad que la presentación en la pantalla de HDR de la habitación del hogar (DISPL_HDR) y la presentación de la sal de cine (MOV_THTR) son razonablemente similares (los ambientes por lo menos relativamente oscuros se pueden simular, así como también exteriores brillantes) . Sin embargo, la presentación de la sala de cine no es capaz de mostrar estas regiones muy brillantes, por lo menos de manera precisa sin ninguna deformación de color (lo cual es mostrado por el pictograma algo más oscuro de la ventana de vidrio teñido, que se mueve de la región hiperbrillante a la región brillante del eje de apariencia) . Se desea destacar que este efecto también es debido a la presentación separada en una sala de cine contra una pantalla de HDR en el hogar, puesto que si uno presenta simultáneamente una pantalla de HDR en una sala de cine, la comparación se vuelve diferente nuevamente (puesto que ahora las regiones brillantes en la pantalla de proyección relativamente atenuada se pueden comparar directamente con aquellas en la pantalla de HDR) . Sin embargo, estando en una oscuridad relativamente intensa, la presentación de la sala de cine puede simular escenas muy oscuras, como por ejemplo una escena de noche, en la cual el sol comienza lentamente a elevarse hacia el horizonte. Sentándose en una sala de estar iluminada por un sol
brillante uno nunca puede tener esta apariencia. Cualquier ambiente que tenga también regiones brillantes (por ejemplo una pantalla de HDR brillantemente reluciente co-colocada) destruirá a un grado menor o mayor esa "ilusión" visual de una escena nocturna completamente oscura. Incluso ignorando que los colores oscuros presentados en la pantalla se encontraran debajo de la luminancia de reflexión del vidrio frontal, todos los colores claros que entran al ojo en ángulos grandes del ambiente romperán la ilusión (es decir ilustrado aún mejor con el ejemplo del dispositivo para libros electrónicos) . Naturalmente en principio uno podría hacer que una sala de estar propia sea incluso mucho más oscura que la sala de cine puesto que la seguridad del hogar no es un problema, lo cual significa que entonces la pantalla de HDR también tienen capacidades más altas de negro más intenso, pero usualmente la gente en el hogar desea tener algún nivel de iluminación circundante acogedora (en cualquier caso, un aprovisionamiento de imágenes codificadas para todas las situaciones de presentación también podría ser optimizada fácilmente por aquellas personas que desean ver sus películas de terror de la manera más escalofriante en una sala de estar de tonalidad negra, lo cual significaría que las regiones más oscuras de la imagen necesitan ser tanto codificadas con una precisión suficiente como fácilmente accesibles para el procesamiento de optimización
colorimétrica) . También se debe observar que en ambientes muy oscuros, el contraste de escena observado por el sistema visual humano se puede degradar gravemente (es decir como uno vería la escena original) , de modo que uno puede necesitar simular éstos (en por ejemplo una sala de cine donde ese efecto todavía no es muy fuerte) al presentar los objetos más oscuros con un gris oscuro un par de detenciones arriba de la tonalidad negra y los objetos blancos con un gris claro un par de detenciones abajo de la luminosidad de zona de referencia blanca.
De esta manera existen regiones las cuales no pueden ser presentables de manera exacta en cada pantalla posible, no obstante se desearía aún codificarlas, puesto que puede haber o habrá pantallas las cuales son capaces de presentarlas (que están por ejemplo después de un abrillantamiento) , este ejemplo proporciona una región ultraoscura para el cine y una región hiperbrillante para algunas pantallas de HDR. Se debe observar que la región ultraoscura del sistema visual humano puede terminar en alguna parte en el lado bajo con un nivel alto de adaptación visual humana, tal como por ejemplo para codificar una caverna iluminada muy débilmente donde algo de luz se fuga a través de una grieta en la distancia. Sin embargo, este nivel es irrelevante para una pantalla incluso en las salas de cine más oscuras (teóricas) , debido a que las partes más
brillantes del contenido de imagen/video no permitirán que el sistema visual se adapte óptimamente (nadie observa películas de cavernas en una caverna) . Sin embargo, se puede igualar con el nivel donde el ojo comienza a ver de manera ruidosa y borrosa, tal como por ejemplo cuando uno entra a una habitación oscura después de haber estado en el sol. Esta experiencia visual es algo que uno puede desear presentar, debido a que transmite un nuevo nivel de calidad visual, justo como las luces deslumbrantes en el lado brillante. Es decir es el régimen donde uno equilibra lo que (solo) se puede ver con lo que no se puede ver. Pero el punto es que una presentación de ambiente oscuro puede mostrar mejor el objeto muy oscuro, puesto que puede presentarlo debajo de la región oscura del eje de apariencia, ahí donde la región ultraoscura inicia.
Una tercera pantalla es una pantalla de LDR casera (presentación DISPL_LDR) por ejemplo una televisión "clásica" con digamos un brillo máximo contemporáneo de 300 nits (la cual se asumirá para esta discusión que se comporta de manera relativamente similar a las pantallas más antiguas de por ejemplo un brillo máximo de 100 nits) . Se asume que se pueden mostrar negros algo menos intensos (naturalmente en los negros podría ser similar a la pantalla de HDR, pero por razones de explicación se dice que tiene por ejemplo una atenuación global en lugar de una atenuación de LED 2D) .
También puede presentar colores menos oscuros debido a que quizás en vista del brillo máximo más bajo necesita conservar un subintervalo más grande de su rango de LDR R_D_LDR para luminancias más brillantes e intermedias, de modo que presentará tanto la escalera como el objeto muy oscuro con por lo menos desde el punto de vista aproximadamente los mismos grises oscuros. Realmente, conservará solo algunos niveles de luminancia para la escalera, haciéndola menos texturizada detalladamente y el objeto muy oscuro se recortará típicamente a negro (y quizás incluso desafortunadamente invisible contra las partes recortadas a negro de la escalera) . Otra propiedad típica de la pantalla de LDR es que no puede presentar fielmente los objetos hiperbrillantes y los recortará (suave) típicamente a un intervalo muy pequeño de (casi) blancos, todo esto dependiendo Ínter alia de que contraste desea uno para los intervalos intermedios cerca del gris medio. Las estrategias de recorte y aproximación pueden tener un impacto psicovisual fuerte, ya que el cerebro reconoce que algo especial está sucediendo.
De esta manera, se ve que la presentación es realmente una asignación de luminancias (ajustadas a la adaptación visual humana) (es decir que corresponden de hecho a luminosidades y brillos para el sistema visual humano) de la escena a diferentes subrangos del rango de luminancia
presentable en pantalla respectivo. Algunas pantallas solo pueden presentar una subparte del intervalo total el cual es anidado (de por lo menos un lado) en el intervalo total y algunas pantallas pueden presentar casi todas las apariencias de manera relativamente fiel. Es decir, cuando se mapean a luminancias de salida o de hecho valores de imagen de accionamiento de pantallas (es decir para accionar por ejemplo las válvulas de LCD y algún accionamiento de luz posterior) , uno debe hacer alguna aproximación, cambiando ligeramente la apariencia exacta de un objeto o región de escena, en una apariencia en la cual aún es razonablemente similar y si no es convincente por lo menos aceptable. El ejemplo del dispositivo para libros electrónicos en la luz solar exterior se seleccionó para destacar el punto de distorsión. En este punto, uno debe forzar el rango grande de luminancias de escena casi sobre un valor de luminancia presentable individual (su rango de luminancia E_ERDR_OUTS es muy pequeño) y uno debe cambiar regiones de la imagen sobre distancias considerables del eje de apariencia (en cualquier caso ya que la mayoría de los negros serán sobrealumbrados por las reflexiones solares, por lo menos el rango de apariencia será pequeño y la pantalla puede compensar también eso solo al utilizar valores de accionamiento físicos en un rango de luminancia de salida pequeño, correspondiente) . Esto tiene como consecuencia por ejemplo que las regiones oscuras
no puedan ser presentadas totalmente y uno debe hacer elecciones seriamente distorsionadas. En lugar de mostrar por ejemplo 10% negro si 50% es el valor visible más bajo, uno podría solo presentar también todos esos valores cerca de 50%, o incluso mejor, con un mapeo de tonos a valores superiores a ese. Por ejemplo, uno puede recortar la región más oscura completa a lo que esta pantalla tiene como su "negro" (es decir su valor presentable más bajo) , el cual con este rango de luminancia pequeño no puede parecer incluso negro, debido a que la alternativa de difusión de las luminancias de objetos oscuros sobre luminancias más brillantes no es una opción, puesto que luego pueden volverse más claras que algunos de los pixeles de la ventana de vidrio teñido. Similarmente, uno debe abandonar el deseo que algunas escenas puedan ser presentadas fielmente en una impresión. Uno solo puede hacer lo mejor para utilizar el mapeo y principios psicovisuales para tener por lo menos un equivalente agradable (pero no ventanas relucientes a menos que uno incorpore tintas fluorescentes o similares e ilumine intensamente con una fuente de luz UV) . Se debe observar que por razones de simplicidad solo se plantean los principios sobre un eje de luminosidad unidimensional, simplificado. La naturaleza tridimensional de los espectros reales (es decir principalmente aquellos de los dispositivos de presentación) también tiene un impacto interesante sobre el procesamiento
cromático de colores, por ejemplo su saturación, el cual visualmente aún puede ser confundido/equilibrado parcialmente con el brillo en algunas situaciones.
Se debe observar que por razones de compleción también se han mostrado apariencias saturantes, puesto que ocurren en escenas naturales por ejemplo cuando se mira dentro de lámparas o por ejemplo cerca del sol. Esto es cuando los niveles de opsina de los conos obtenidos por un corto tiempo se distorsionan seriamente (blanqueamiento) y se observan manchas. Por ejemplo en una escena invernal se puede observar en un sol bajo y el aire alrededor de éste puede ser muy brillante y la luz solar que se refleja sobre partículas de las nubes alrededor del sol puede ser aún más brillante. Naturalmente, no es deseable presentar esas regiones en cualquier pantalla de HDR con colores brillantes saturantes de pigmento visual, pero uno puede asignar dos diferentes subrangos de luminancia en la región hiperbrillante , es decir por ejemplo puede mostrar esas regiones brillantes de manera por lo menos un poco irradiante. Por otra parte, uno también puede considerar que esos colores ya no son importantes de cualquier modo (a quién le importa el brillo o color real de un filamento de lámpara incandescente de cualquier modo, aunque la codificación de casas coloreadas iluminadas de manera brillante o incluso algunas reflexiones especulares, o letreros comerciales de tubos TL coloreados, etcétera pueden
ser importantes aún de cualquier modo) y codificarlos con un valor similar al recorte, el cual puede ser llamado como hiperbrillante , o una región cerca de los códigos máximos (por ejemplo solo el valor 1023) . La pantalla entonces puede elegir si desea presentar ese brillo de manera irradiante o con una luminancia de salida un poco menor, caso en el cual el cerebro puede calcular el brillo del recorte. También permite que el creador de contenido se enfoque en lo que necesita codificado exactamente y lo cual cuando se utiliza casi directamente para el accionamiento de por ejemplo una pantalla de HDR producirá una buena calidad (por ejemplo contraste) para todas esas regiones (por ejemplo tanto en espacios cerrados más oscuros como una habitación incluso más oscura y espacios abiertos soleados) y regiones muy brillantes las cuales considera menos relevantes y siempre pueden ser recortadas (potencialmente con una luminancia de salida de brillo máximo inferior por ejemplo en un modo de ahorro de energía) , incluso en pantallas de HDR. Estos modos de ahorro de energía pueden realizarse mejor por la pantalla si el graduador define un número de estas regiones "irrelevantemente brillantes" , típicamente con varios valores gTS, el cual puede utilizar el ahorrador de energía para distorsionar la imagen arriba de todos estos valores para una cantidad de modos de ahorro de energía incrementados. De hecho, el creador puede utilizar incluso artísticamente uno o
más de los códigos de "saturación" para bajar contenido importante de la escena como se representó con imágenes por ejemplo para realizar una apariencia sumamente saturante.
Ahora uno puede desear transformar representaciones de una escena en una primera colorimetría -en particular un espacio de color que define los objetos de la escena con primeras coordenadas a lo largo de una luma o luminancia o un eje relacionado con un valor de gris similar (asumiendo que por razones de simplicidad las dos coordenadas de color cromático se fijan en ambas representaciones, por ejemplo un tono y una saturación) de acuerdo con una primera regla de asignación (que define una luminancia de parche de objeto de la escena local codificada como una luma de pixel; y aunque en lugar de lumas se podrían codificar los pixeles también por ejemplo con luminancias en un sistema XYZ, por razones de simplicidad serán llamadas las lumas de valores de grises codificadas)- a una segunda colorimetría. Solo como un ejemplo para describir fácilmente algunos conceptos y modalidades posteriores de la invención, se asumirá que se tiene una escena original con una relación de luminancia de por ejemplo 2097152:1 o 21 bits si se codifica linealmente. Naturalmente, esto aún se puede complementar con un valor de luminancia exacto de la mancha más brillante con la cual corresponde el valor 2^21 (el cual puede ser diferente para una escena soleada en espacios abiertos que para una escena
nocturna oscura en espacios cerrados) . En la práctica, puesto que ninguna pantalla puede codificar el sol de cualquier modo, por razones de simplicidad se asumirá además que se pueden codificar de manera relativamente fiel (es decir con distorsiones psicovisualmente menos importantes, como la disminución de la luminancia del sol en su versión presentada en pantalla) esas escenas de HDR originales con una codificación de HDR maestra de 16 bits (por lo menos para luma Y y no importa ahora si es flotante o interior) . Esto es debido a que uno puede definir que la codificación es no lineal a lo largo de su eje de luma, es decir mediante el uso de un maestro gamma para mapear las luminancias de objetos de la escena a códigos de espacio de color de HDR.
Otro ejemplo es codificar, es decir mapear, esa codificación de 16 bits en un nuevo espacio de colorimetría/color, específicamente un código de 8 bits, por ejemplo con el estándar 2.2 gamma. Existen varios mapeos de espectro para eso, por ejemplo uno podría solo comprimir linealmente el rango de luma, pero puesto que proporciona malos resultados, uno utiliza usualmente una curva sigmoide por ejemplo más gradual y uno puede utilizar modelos más complejos, como por ejemplo aplicar la compresión a una versión filtrada de paso bajo de la imagen y luego agregar más intensamente el detalle de paso alto a éste. 0 el mapeo puede modelar como el sistema visual humano podría ver
aproximadamente (existiendo naturalmente las imposibilidades descritas anteriormente para realizar algunas clases de presentaciones en un hardware limitado) la escena original, si se observa en la nueva estructura de por ejemplo una pantalla con un rango dinámico mucho más bajo, es decir una pantalla de LDR. El sistema visual humano se comporta de manera no lineal, disminuyendo los aspectos visuales menos importantes y por ejemplo una sombra escabrosa en la escena original (por lo menos como algunas cámaras la ven) se puede observar como grisácea relativamente clara. Uno no debe cometer el error de mapearla a un espectro de LDR de modo que una gran parte de la sombra se acerque al negro mínimo de la pantalla, debido a que naturalmente el sistema visual la interpretará como muy oscura. Uno debe suavizarla algo al disminuir el contraste (local) de modo que se mirará menos intensa, como en la escena original. En general, el mapeo de espectro al espectro de LDR puede utilizar toda clase de matemáticas que aplican la optimización local, etcétera.
De esta manera, en conclusión, una función de transformación se aplica a los pixeles de la representación de 16 bits, para obtener la representación de 8 bits. Por ejemplo primero una transformación global y luego algunas transformaciones adicionales espacialmente locales. Y viceversa, uno puede transformar (por ejemplo predecir) una representación de HDR (de esta manera por ejemplo la
representación de 16 bits) de una codificación de 8 bits, mediante otro mapeo de color/luma. Un ejemplo de este sistema se publicó en el documento WO2012004709 (generación de imágenes de rango dinámico alto a partir de imágenes de rango dinámico bajo) .
Se debe simplificar nuevamente la explicación mediante el enfoque en el mapeo de una codificación de LDR de 8 bits a una representación de HDR de 16 bits, utilizable para accionar una pantalla de HDR de un blanco máximo digamos de 5000 nits y proporcionar de ese modo una presentación artísticamente agradable (es decir de buena calidad) de la escena original (por ejemplo se mira razonablemente similar, debido a que las pantallas aún se miran amenazadoramente oscuras etcétera; se debe tener en cuenta si la codificación maestra de 16 bits original fue una graduación adecuada óptimamente por un artista de la computadora de acuerdo con las instrucciones del director y/o DOP, por ejemplo haciendo que la región sombreada sea aún más tenebrosa o amenazadoramente oscura, entonces la intención de calidad puede ser tener la transmisión de la pantalla de HDR de presentación final que se mira amenazadora tan buena como sea posible, es decir como se pretende) .
Puede haber diferentes maneras de mapear los pixeles de su valor de código de 8 bits a pixeles (para la misma posición espacial) con un nuevo valor de código de 16
bits diferente. Por ejemplo este mapeo puede aumentar el brillo presentado de la ventana de vidrio teñido, puesto que la pantalla de HDR es capaz de presentar estas regiones brillantes, lo cual corresponderá con una transformación correspondiente para obtener la luma de pixel de la imagen de HDR (suponer por razones de simplicidad que esto acciona directamente la pantalla de HDR) , con base en cómo se comporta la pantalla de HDR y se define el código de HDR. Se debe observar que cuando se describe el comportamiento de brillo de los objetos representados con imágenes y se habla acerca de por ejemplo el aumento se compararán por razones de simplicidad las luminancias de salida (por ejemplo luminancia presentada en la pantalla de LDR = 400 de 500 contra 3000 en la pantalla de HDR) en donde en un espacio de luma codificado, real lo mismo se puede realizar por ejemplo preferiblemente al atenuar las regiones más oscuras (proporcionando relativamente el mismo resultado) y al mantener las ventanas de vidrio teñido altas para la codificación tanto de HDR como de LDR.
Una transformación puede ser global, es decir donde quiera que esté situado el pixel en la imagen, la forma funcional de la transformación es solo dependiente del valor de pixel de imagen de LDR/8 bits, es decir: Y_16b=f (Y_8b) , en la cual Y_16b es la luma de 16 bits, la cual puede ser representada por ejemplo como una palabra código binaria o un
valor flotante entre 0 y 1, etcétera, y similarmente para la luma de 8 bits Y_8b. Un ejemplo de esta función es una gamma global: Y_16b=g* Y_8bAgamma, en la cual g es un factor de ganancia y gamma el coeficiente de una función de energía.
La ventaja de esta función global es que uno necesita codificar solo una pequeña cantidad de datos, por ejemplo uno puede transmitir la gamma y ganancia antes de cada imagen o incluso una toma de imágenes de la misma escena, que tiene las mismas características de imagen.
La desventaja es que, si uno la utiliza para ir de
HDR/16 a LDR/8 bits (es decir una señal que se supone se ve bien en una pantalla de LDR de un blanco máximo digamos de 200 nits) , aunque hace aproximadamente la apariencia correcta (un comportamiento dominante de la compresión lineal de una imagen de HDR con regiones brillantes altas, es que uno comprime demasiado las partes más oscuras, haciendo que la imagen se vea en promedio oscura en pantallas de LDR, pero una función gamma puede manejar equilibradamente en sí aproximadamente dos regiones, una región más oscura contra una región más brillante) , debido a que uno corrige la compresión en las partes más oscuras de la imagen al hacer eso menos con la forma gamma apropiada. Pero no es solo una configuración funcional, simple, individual. Cuando se adecúan críticamente algunos colores en un fondo, los colores similares en un objeto en primer plano pueden cambiar de una
manera la cual es menos deseable para ese objeto. También cuando se mueve de 8 a 16 bits, uno puede colocar por ejemplo las luces brillantes en la posición de luminancia de salida de pantalla de HDR derecha (es decir la Y_16b derecha) , pero al hacer eso mediante la adecuación/estiramiento de la función gamma, uno puede hacer por ejemplo que las regiones más oscuras sean más brillantes que lo que se desea. O uno puede hacer uso de una función de mapeo más compleja como una tira con puntos de control seleccionados óptimamente, pero uno aún se arriesga a cambiar algunos de los grises intermedios a lumas indeseables, sin mencionar que esto quizás no sea la manera más fácil de controlar la apariencia de color de la imagen.
El problema se agrava debido a que uno puede haber realizado por ejemplo un mapeo con pérdida de la escena de HDR original a la imagen de LDR de 8 bits, lo cual puede suceder por ejemplo para la escalera oscura y el objeto muy oscuro. Aunque originalmente en la escena que es capturada ese objeto muy oscuro fue mucho más oscuro que la escalera, en la imagen de 8 bits puede tener valores de luma los cuales corresponden a valores de por lo menos algunos de los pixeles de la escalera. Es decir pixeles los cuales deben tener valores de luma (muy) diferentes ahora tienen los mismos valores (o por lo menos los histogramas de conjuntos de pixeles pueden indicarse donde no deben) , aunque la buena
noticia es que pueden residir en diferentes regiones espaciales de la imagen. Una función individual que opera en los valores de grises codificados ya no puede discriminar esos dos casos. Es decir si uno desea transformar el objeto muy oscuro a lumas Y-16b las cuales son muy bajas, lo mismo sucederá erróneamente con algunos de los peldaños de la escalera (dando por resultado por ejemplo un oscurecimiento excesivamente contrastante de algunas partes de los peldaños) o viceversa. Es decir, el artista o el aparato de transformación de color deseará ser capaz de aplicar una transformación diferente a esos dos objetos.
La otra clase de transformaciones son transformaciones de luma local (o en general color) , las cuales aplican una función diferente a cada pixel. Uno podría mirar por ejemplo a un área de la máscara alrededor del pixel y aumentar su luma un poco dependiendo de lo que son los valores circundantes, por ejemplo si son casi los mismos no obstante algo diferentes. Un ejemplo de esto es la maximización alrededor de bordes de objetos, donde uno desea aumentar las lumas de pixeles locales algo arriba contra abajo del valor de perfil gradual en la cercanía del borde. Un ejemplo en la transformación/codificación de imágenes de HDR es el principio JPEG-HDR, en el cual uno utiliza una imagen JPEG normal para la textura y luego co-codifica una imagen aumentada la cual tiene un factor de aumento para cada
pixel . La ventaja es que uno podría co-codificar cualquier transformación local algorítmica deseada que se realice como un resultado final en esta imagen (por ejemplo incrementando el contraste de textura en una primera forma y un gradiente de iluminación semiglobal en otra, lo cual el artista graduador podría optimizar como desee) , no obstante que alcanza un precio extremo de una cantidad incrementada de datos que son codificados, puesto que ahora para cada imagen de HDR se tienen que codificar dos imágenes de LDR (contra esta imagen de contenedor de LDR por ejemplo individual mencionado anteriormente) . Uno podría incluso preguntarse si uno codifica 8bit_texture*8bit_boost , si no es mejor solo codificar sin preparación apropiada 16bit_HDR.
Ahora existe una manera intermedia, debido a que si un cierto aumento es deseable, será usualmente deseable para un objeto completo, por ejemplo la ventana de vidrio teñido. Es decir, los valores de luma/aumento de pixel en la imagen aumentada no serán no correlacionados espacialmente en total, incluso más de este modo, si uno procesa/codifica inteligentemente, pueden ser correlacionados de ese modo uno puede representarlos de manera mucho más simplificada. Es decir uno puede especificarlos paramétricamente de una manera funcional, quizás incluso muy simple como con un número de aumento individual el cual se puede almacenar en metadatos co-codificados .
Esto requeriría la codificación de objetos o regiones de imagen geométricas más genéricamente.
Un ejemplo fácil de esta segmentación en piezas es definir una cuadrícula de bloques y luego definir una transformación óptima para cada sub-área rectangular. Por ejemplo uno podría definir un multiplicador de ganancia y compensación para todos y cada uno de esos bloques como en el documento EP2009921 [Liu Shan et al., Mitsubishi Electric: Method for inverse tone mapping] o co-codificar una gamma local para cada bloque diferente. Usualmente, estos métodos sufren rápidamente de artefactos de bloques. Por ejemplo, uno puede llegar a una ganancia o gamma óptima diferente que se aplica al bloque BLCK(i+l, j -1) (véase la Figura 2A) y quizás para bloques más allá de éste como hasta BLCK(i+l,j) que para el bloque BLCK(i+2, j) . Esto es debido a que para el bloque anterior uno puede optimizar la transformación al valorar sumamente una apariencia óptima de la escalera, mientras que para el último bloque uno puede optimizar por ejemplo mediante el enfoque en un criterio de visibilidad del objeto muy oscuro. Las desviaciones incluso muy pequeñas en una parte de la curva (es decir para algunas lumas de pixel disponibles Y_8b) pueden dar por resultado una visibilidad de una diferencia de estadísticas de las lumas Y_16b de la partes/objetos del fondo en esos dos bloques, es decir dando por resultado la percepción de un límite visual, ya que el
cerebro está entrenado para reconocer estas diferencias estadísticas, por eso puede significar la detección de un tigre que se oculta en el césped amarillento. Cuando se aplican algunos algoritmos, uno puede ver una cuadrícula ordinaria, visibilidad la cual se incrementa mediante modulaciones temporales de las estadísticas de color de regiones subyacentes después de la transformación a Y_16b.
Ahora también es posible solucionar ese problema, específicamente uno podría codificar de manera exacta todos los objetos y garantizar por lo tanto que todos los pixeles del objeto de fondo oscuro obtengan su transformación local óptima y los pixeles de región de fondo de todos los bloques en esa región obtengan la misma transformación dando a los mismos la presentación óptima y por lo tanto sin bordes de bloques visuales.
Pero toda esperanza de hacer eso se evaporaría en vista de la eficiencia de codificación es decir la cantidad de bits necesarios nuevamente, que impulsa hacia la obligación de aceptar las dos codificaciones de imágenes o probablemente incluso la codificación Y_16b sin preparación (que es quizás que luego para la compatibilidad con versiones anteriores se necesitaría adicionalmente otra codificación Y_8b) . Adicionalmente, no solo la codificación de manera precisa del límite real de por ejemplo los peldaños involucra muchos datos que son codificados por ejemplo para una función
de tira, sino que también los graduadores desean algunas veces hacer menos precisas sus selecciones de objetos, especialmente cuando necesitan hacer cientos o miles de tomas en una película.
En el pasado, estas codificaciones orientadas a objetos han sido intentadas en la estructura MPEG4-2, pero nunca han sido exitosas por varias razones. Uno no puede extraer solo estos objetos, puesto que no sabe cuáles son sus definiciones de patrón de textura variantes espacialmente, de modo que uno es conducido a la codificación de sus límites. Excepto que por una parte uno es conducido a estructuras de codificación complejas (en comparación con la simplicidad universal de la tecnología de codificación basada en bloques) , tal como por ejemplo tiras o serpientes y en segundo lugar probablemente la necesidad de la intervención humana para colocar óptimamente esas serpientes (puesto que el alineamiento incorrecto de límites es una plaga de muchos algoritmos, por ejemplo perder una pieza de esquina de un objeto) y en tercer lugar muchos valores de códigos adicionales para codificar esas curvas límite. Todos estos factores complicantes no parecen favorecer una fácil adopción en estándares prácticos de codificación de video o imágenes fi as .
Pero el inventor se dio cuenta que en la situación de codificación de HDR particular (es decir cuando se
transforma entre una primera representación de rango de luma dinámica por ejemplo más baja y una segunda representación de rango de luma dinámica por ejemplo más alta de una escena) casi siempre existe una propiedad particular de la imagen la cual permite una codificación con todas las ventajas de la segmentación exacta, no obstante con la ventaja de también necesitar solo algunos bits de datos adicionales. En todas las presentaciones (o las codificaciones de imágenes subyacentes) de las Figuras 1A y IB, siempre hay una jerarquía de brillos de regiones (que abarca diferentes rangos de luminancia o luma diferentes) por ejemplo la ventana siempre va a ser el objeto más brillante. Y aunque puede haber espacialmente objetos más oscuros a la izquierda, objetos más brillantes a la mitad y nuevamente objetos más oscuros a la derecha, típicamente en cada región local siempre hay alguna parte de la imagen la cual es más oscura y alguna parte la cual es más brillante (realmente puede haber varias clases, como también objetos oscuros intermedios, pero por lo menos algunos pixeles son los más brillantes y algunos son los más oscuros y usualmente tienen incluso estructuras geométricas relativamente simples como la estructura rellena, sólida, convexa de la ventana de vidrio) . Pero se debe observar que incluso si se tiene un patrón de barras de cárcel contra un cielo brillante en un bloque que no es un problema, puesto que todas las barras de la cárcel son
discriminadas fácilmente dentro del bloque como que tienen los pixeles más oscuros. También la distribución sobre varios bloques es normalmente gestionable con facilidad, incluso si implica el restablecimiento de algunos valores gTS en algunas momentos entre los bloques a lo largo de una ruta de exploración. Para un caso extraño el cual sucedería incidentalmente que es más difícil, uno puede tomar naturalmente recursos para métodos o estrategias auxiliares.
El principio se explica con la Figura 2A y 2B.
En la Figura 2A se ha mostrado ahora una imagen con iluminación de vidrio teñido de la escalera de madera oscura con su subdivisión de bloque superimpuesta . En estos bloques es que por ejemplo un algoritmo de análisis de imágenes automático analizaría las estadísticas de imágenes locales, tal como por ejemplo el histograma de luma local (o el histograma de luminancia derivado del mismo, por ejemplo de una representación de escena en una colorimetría de referencia, de una presentación de pantalla) y vendría a una proposición para crear una imagen de HDR Y_16b mediante la transformación de una imagen de LDR Y_8b. Por ejemplo puede utilizar principios estadísticos y conocimientos acerca de cómo se vería una imagen típica (si los peldaños son relativamente oscuros en sí, un primer mapeo particular puede hacerla típicamente muy oscura en una pantalla de LDR o el graduador puede solo probar este escenario al verificarlo) y
luego seleccionar una gamma de mapeo de por ejemplo 4.3. Un ejemplo de esta transformación deseable se muestra en la Figura 2B. Como se menciona anteriormente, no hay necesidad de que sea una función o algoritmo de transformación completo (en lugar de una función gamma, uno podría tener un conjunto de reglas programadas, como por ejemplo calcular una medida de textura local, local en una variación local de luma, etcétera, para llegar a un valor de luma final para uno o más pixeles locales) por pixel, pero se desea una transformación optimizada semi-global , es decir una transformación por objeto o clase típicamente. En la región de imagen cubierta por el bloque BLCK (i-1 , j -4 ) se observa una sub-escena local en el área seleccionada con ese bloque comprendido de dos objetos, específicamente una parte de la ventana de vidrio teñido y la pared alrededor de ésta (la cual podría tener por ejemplo ladrillos o papel tapiz la textura del cual también puede tener que ser presentada con buena calidad, pero por razones de simplicidad que no es mostrada) , que ocupa esos pixeles del bloque los cuales no son la ventana de vidrio teñido. Debido a que esos objetos son muy diferentes (una representación de imágenes a contraluz de pixeles más oscuros contra el exterior brillante, sin comenzar a explicar incluso que los colores saturados, luminosos de la ventana de vidrio teñido pueden demandar un tratamiento especial) , se puede desear aplicar transformaciones muy diferentes para obtener
una nueva codificación de la imagen tal como por ejemplo Y_16b, por lo menos para algunas categorías de pantallas para las cuales una señal se propone típicamente o por lo menos es útil. La ventana y la pared son objetos muy diferentes, y en particular, son iluminados de manera diferente. No solo es la pared (con cualquier propiedad física que tiene por sí misma, tal como BDRF, albedo, etcétera) iluminada por cualquier luz que está en el interior de la habitación, sino que crea típicamente su color/luminancia al reflejar luz de sus alrededores y en particular su(s) fuente (s) de iluminación principal. Por otra parte, la ventana es un color translúcido, puesto que modula directamente mediante la absorción de luz del exterior. Por lo menos uno desearía ver que la ventana es más brillante en cualquier presentación de pantalla, pero podría haber criterios de calidad de presentación adicionales, en vista de este mecanismo de generación de color diferente. Podría ser que uno desee mostrar en la pantalla de HDR la pared con una luminancia de salida de pantalla relativamente atenuada, no muy similar a aquella que un LDR mostraría o una pared real reflejaría que está en un ambiente de observación oscuro de la pantalla y el espectador. Por otra parte, uno puede desear aumentar la ventana de vidrio, la cual se dice que es codificada en la imagen de LDR con valores luma no mucho más altos que aquellos de la pared, puesto que de otra manera una pantalla
de LDR no podría mostrarlos (de manera relativamente fiel) de cualquier modo, sobre lumas las cuales están algo más cerca a la parte superior del espectro realizable de la pantalla de HDR, es decir que tiene una coordenada Y_16b de luma alta. Es decir, una imagen de HDR apropiada tiene que ser construida con paredes más oscuras y ventanas más brillantes.
En la Figura 2B se muestra otro ejemplo que exhibe que hacer con los peldaños y una función de mapeo de lumas de comportamiento total TM_BLCK ( i , j ) se muestra para lo que es deseable: en caso de cualquier luma de entrada posible Luma_in estaría presente para un pixel en ese bloque, lo que luego es la luma de salida transformada Luma_out de la imagen Y_16b de HDR. Naturalmente, algunos colores no están presentes en la actualidad (en ese bloque no hay una ventana de vidrio teñido) , de modo que han sido mostrados con líneas discontinuas. Lo que es relevante son las funciones de transformación para esos rangos de Luma_in que están presentes. De este modo la persona experta entenderá que esto permite varias realizaciones de modalidades, con base en i. a. la versatilidad o complejidad de codificación deseada. Uno podría almacenar la función completa TM_BLCK ( i , j ) en donde a las partes con líneas discontinuas se les proporcionan algunos valores (puesto que esto se logra fácilmente si uno codifica la transformación con una forma funcional tal como una función gamma, pero también si la transformación se
codifica como una tabla de consulta y los valores intermedios pueden resultar ser útiles en partes de la(s) imagen (es) donde están presentes) o uno podría almacenar en ubicaciones separadas solo las subtransformaciones , tal como la transformación parcial PD_BLCK ( i , ) necesaria para la escalera definida sobre el rango luma_in R G_COD_DRK. La costura conjuntamente de estas transformaciones parciales tiene muchas ventajas. Pueden ser almacenadas en cualquier parte y por cualquier razón. Uno puede entender que la transformación parcial PD_BLCK(i,j) puede ser almacenada en alguna parte (por ejemplo al inicio de esta toma de imágenes o incluso al inicio de la película) como una transformación mucho más grande la cual codifica el comportamiento de mapeo del papel tapiz, también en lugares donde es mucho más claro debido a que es iluminado por ejemplo por una lámpara local en su cercanía. Pero luego solo la parte dentro del rango R G_COD_DRK se toma de esa (y por ejemplo se almacena en una memoria temporal cuando se aplica el algoritmo de mapeo de lumas a todos los pixeles de ese bloque TM_BLCK ( i , j ) ) . Estas transformaciones parciales podrían ser suministradas incluso como por ejemplo un servicio a través de Internet u otras redes, por ejemplo en un servicio de protección de derechos de autor o solo como un servicio separado que ofrece una presentación más bonita de algunos objetos o en escenarios al vuelo como consola de juegos, etcétera.
De modo que TM_BLCK ( i , j ) de este ejemplo muestra dos mapeos de luma parciales, relevantes, específicamente en primer lugar la parte PD_BLCK(i,j) para los peldaños la cual es un tramo lineal con compensación, que abrillanta algo los peldaños en comparación con la codificación de imagen de LDR oscura (es decir Luma_in) y luego aumenta algo el contraste, haciendo que los granos en la madera sean más visibles. En segundo lugar existe la transformación parcial PM_BLCK ( i , j ) para el fondo de la habitación (el cual en este caso puede ser algún piso preferiblemente que papel tapiz) , el cual en este ejemplo es un tramo variante (curvado) . El mismo mapeo sería aplicable típicamente a ambas partes del bloque BLCK(i+l, j -1) .
Sin embargo, si ahora se llega al bloque BLCK (i+2,j), esa estrategia de mapeo podría aún desempeñarse muy bien para la parte de fondo, pero no para los pixeles con luma_ins en el rango R G_COD_DRK, puesto que ahora codifican el objeto muy oscuro. Este se debe mostrar mucho más oscuro en la pantalla de HDR, es decir tener luma_outs más bajos Y_16b en la imagen de HDR mapeada de la imagen de LDR. Esto es mostrado por la línea más gruesa la cual muestra la nueva estrategia de transformación parcial PD_BLCK ( i+2 , j ) para ese bloque, es decir ese nuevo objeto diferente en ese bloque. Tiene un factor de estiramiento mucho más suave, puesto que desea mantener muy oscuros todos los colores de objetos muy
oscuros y casi indiscriminables .
Por lo tanto, se necesita un nuevo mecanismo técnico que permita cambiar rápidamente estas estrategias de mapeo parcial sobre partes de varios bloques, los cuales corresponden realmente a objetos reales que requieren diferentes presentaciones o graduaciones óptimas.
Ahora el inventor se ha dado cuenta que en el mundo de la representación con imágenes de HDR (es decir que involucra típicamente el mapeo entre diferentes representaciones de color de la(s) misma (s) imagen (es) por ejemplo espacios de color basados en Y_8b a Y_16b) casi siempre existe una relación espacial entre estas regiones u objetos parciales dentro de bloques, específicamente, sus lumas representativas (o luminancias o representaciones similares) son diferentes. Una luma representativa podría ser una luma promedio, pero típicamente una propiedad más estricta es que la luma más oscura del primer objeto (en el ejemplo del bloque BLCK(i+2,j) el fondo (piso)) es más clara/más alta que la luma más clara de un pixel en la región parcial más oscura (en este ejemplo del objeto muy oscuro) . Es decir, uno puede delimitar esas dos simplemente al codificar un "valor de gris de diferenciador de región" para al menos ese bloque y típicamente un número de bloques más allá (asumiendo una cierta dirección de exploración, por ejemplo en zigzag de izquierda a derecha) . Ese valor de gris
de diferenciador de región es por lo tanto una luma (o una coordenada de luminosidad similar de la representación de color, de hecho uno puede recodificaria siempre para diferentes definiciones de rangos de luminancias de imágenes, justo como uno puede redefinir las estrategias de mapeo de por ejemplo una codificación [0.255] a una codificación [0.0, 1.0] de los mismos datos de textura de imagen) límite más abajo del cual el primer objeto es codificado y arriba del cual el segundo objeto. Y aunque la escalera en el bloque BLCK(i+l, j -1) puede necesitar otro valor de gris de diferenciador de región, debido a que esos peldaños contienen algunos valores más brillantes en la imagen de LDR que el objeto muy oscuro, el principio permanece igual. Para la ventana de vidrio teñido que contiene bloques el orden se invierte y ahora el fondo es la región parcial más oscura en esos bloques, pero el principio permanece igual. Teniendo este valor de gris de diferenciador de región simple un aparato del lado de recepción puede reconstruir perfectamente de manera exacta desde el punto de vista de pixeles los objetos necesarios. Esto no sería posible en la codificación orientada a objetos genéricos puesto que por ejemplo un pez podría contener por ejemplo colores azules en su interior que también se encuentran en el océano alrededor del mismo, pero el problema de representación de imágenes de HDR es siempre tener regiones mucho más claras co-situadas en alguna parte
en la imagen con regiones más oscuras. Esto puede suceder típicamente debido a que por ejemplo esas regiones se iluminan de manera diferente o incluso son auto-luminosas como lámparas. Y otra propiedad es que estas regiones de luminancia (muy) diferentes están algo separadas geométricamente en la imagen, es decir algunas veces en diferentes bloques, lo cual permite la optimización adicional. Este es el ejemplo del objeto muy oscuro, el cual en realidad es de tono oscuro como los peldaños y puede utilizar incluso (algunos de) los mismos códigos de luraa en la imagen de LDR. Pero puesto que esto ocurre en un bloque diferente, lo único que uno necesita optimizar es los metadatos de semántica de representación, los cuales pueden ser tan simples como un valor de gris de diferenciador de región individual, el cual por ejemplo puede ser en este ejemplo el valor superior de RNG_COD_DRK. Es decir un módulo de segmentación de objetos en el extremo de recepción (el cual puede ser realmente la misma clase de aparato que en el extremo de envío o puede existir en el extremo de envío de hecho, pero es un módulo el cual obtiene típicamente la imagen de LDR + metadatos que contienen uno o más de los diversos valores de grises de diferenciador de región necesarios) puede segmentar de manera exacta todos los objetos relevantes con base en el valor del valor de gris de diferenciador de región que se recibe antes del primer bloque
con los peldaños iniciados y similarmente para todos los bloques consecutivos. Por lo menos esta codificación se utilizará para todos los bloques que contienen peldaños, es decir hasta que ocurre una situación muy nueva por primera vez, en BLCK(i+2,j), donde reside el objeto muy oscuro. Antes de que comience el bloque, la nueva situación se comunica al transmitir un nuevo valor del valor de gris de diferenciador de región. También ahora en el extremo de recepción, el decodificador es restablecido de esta manera y es instruido con los nuevos valores apropiados, para realizar nuevamente la segmentación de manera correcta, como habría sido verificado antes de finalizar el almacenamiento en el extremo de transmisión. Típicamente, el codificador puede ser conectado con por ejemplo el software que permite fácilmente que el graduador defina los valores gTS relevantes. Por ejemplo, puede tener un deslizador para establecer un valor y luego ver en pseudocolores (por ejemplo rojo contra verde) qué partes de la escena (quizás local para los bloques seleccionados) se determina que están debajo o arriba del gTS. O puede seleccionar aproximadamente regiones y el aparato puede ayudar semiautomáticamente en sí al graduador, analizar las estadísticas y por ejemplo proponer un primer valor de gTS con base en una estimación de las regiones coherentes las cuales varían considerablemente en brillo. O el graduador puede garabatear rápidamente sobre una región,
por ejemplo dentro de la ventana de vidrio teñido y seleccionar en sí por lo menos valores de inicio para gTS con los mismos, los cuales entonces se podrían afinar por vía de cualquiera de los diversos controladores de interfaz del usuario.
Y una vez que se tienen estos segmentos, es una tarea fácil asociarlos con las transformaciones requeridas. El decodificador puede etiquetar por ejemplo todos los pixeles de fondo como "object=0" y puede aplicar por ejemplo una estrategia de mapeo de color o luma global como se codifica anteriormente el inicio de la imagen (o incluso por defecto para un tipo de pantalla de HDR de referencia, tal como un gamma 4.0) . 0 el decodificador (y el codificador para emular primero la capacidad de decodificación) puede actualizar antes de un bloque particular el mapeo que se aplica para los objetos background/object=0. La escalera puede ser etiquetada como "object=l" y alguna regla de vinculación asocia un mapeo con esos pixeles (segmentados) . Por ejemplo, la regla por defecto puede ser aquella si un nuevo mapeo se codifica antes del bloque, esa función de mapeo (o algoritmo) se debe aplicar para las lumas de pixel las cuales están debajo del "valor de gris de diferenciador de región" actual . O la función de mapeo puede ser codificada, por ejemplo aplicable sobre (principal o únicamente) este rango de luma, de tal manera que se deba
utilizar claramente para el objeto más brillante de las dos (o más) regiones.
De este modo, se necesita solo un poco de datos adicionales para codificar los objetos, específicamente una o más veces, dependiendo de la complejidad de la imagen, un valor de gris de diferenciador de región. Para las imágenes más simples con por ejemplo solo una ventana al exterior, un gTs individual puede ser suficiente. Se podría utilizar incluso esa estrategia para afinar mapeos en caso de que no exista una discontinuidad de lumas clara entre las dos regiones parciales, por ejemplo para gradientes de iluminación a lo largo del papel tapiz de fondo uno podría utilizar este mecanismo con valores de grises de diferenciador de región variantes para aplicar mapeos algo diferentes a por ejemplo las partes iluminadas más oscuras, por ejemplo para modificar la visibilidad.
Varios escenarios son posibles. Para la mayoría de escenas de HDR, solo habrán dos diferentes regiones de luminosidad por bloque e incluso puede haber solo un par de diferentes regiones de luminosidad, por ejemplo 2 (en caso de que solo la ventana de vidrio teñido necesitara un mapeo diferente en comparación con un mapeo global el cual se juzga satisfactoriamente para el resto de la imagen) . En ese caso, uno necesitaría transmitir solo un par de veces un valor de gris de diferenciador de región entre los códigos de color de
pixel de los bloques (o codificaciones similares, como por ejemplo fuera de los datos de pixel, en una estructura de datos la cual es co-rastreable con la exploración de los bloques) . En realidad en el escenario simple de la ventana de vidrio teñida un valor de gris de diferenciador de región individual puede ser suficiente, es decir podría ser co-codificado antes de la toma de imágenes en la película que contiene esa escena. En ese caso, el módulo de segmentación entenderá que cada luma arriba del valor de gris de diferenciador de región es soportada para ser tratada/mapeada como una ventana brillante. En algunas ocasiones, puede haber más de dos objetos traslapados con una ubicación de bloque individual, caso en el cual tendrán un objeto más oscuro, un objeto de brillo intermedio y un objeto más claro. En ese caso, pueden ser segmentados por medio del mismo principio al transmitir dos valores de grises de diferenciador de región, por ejemplo antes de ese bloque. Uno podría hacer lo mismo también en caso de que solo el objeto más oscuro esté en el bloque actual (por ejemplo con el objeto de brillo intermedio) y el objeto más claro ocurre solo un par de bloques después, es decir uno co-codifica esos dos valores de grises de diferenciador de región entonces para una corrida de digamos 10 bloques sucesivos. Solo existe un escenario que no ocurre con frecuencia donde dos objetos de brillo/luma similar ocurren en el mismo bloque, es decir tienen un número
9
de pixeles de la misma luma, lo que significa que no pueden ser asignados definitivamente a cualquier objeto o establecido de otra manera sus intervalos generales se traslapan (considerable, de otra manera tampoco es problemático frecuentemente) . Ese sería el caso si el objeto oscuro fuera: 1) codificado realmente con códigos doblemente asignados (es decir uno no reserva por ejemplo solo tres códigos, luma 0, 1 y 2 para solo el objeto muy oscuro, valores los cuales entonces no están presentes en los peldaños; y 2) esos dos objetos no están separados como en el ejemplo, sino que son asignados en el mismo bloque, por ejemplo típicamente traslapados. En ese escenario y en caso de que al creador de contenido aún le importara tener esta codificación de alta calidad de esas regiones oscuras de cualquier modo, el codificador necesitaría utilizar un escenario de sistema de soporte, por ejemplo en una estrategia de codificación de imagen de HDR, preferiblemente que predecir la imagen completa mediante mapeos locales de segmentos basados en la segmentación guiada por metadatos enseñada actualmente, se necesitaría una codificación diferente, por ejemplo uno podría co-codificar además una pequeña imagen justo el tamaño de ese bloque que contiene directamente los valores Y_16b requeridos y luego superimponer esos en la imagen de HDR en las ubicaciones de pixel de esos bloques. Y uno podría aún utilizar el mecanismo
de valores de grises de diferenciador de región para eso mediante el uso de umbrales reservados, particulares. Por ejemplo un valor de gris de diferenciador de región de cero o -1 parecería "no tener sentido", debido a que no hay lumas debajo de eso, es decir puede significar la estrategia de codificación de sistema de soporte (por ejemplo superimpuesta) . Además de la señalización de una estrategia de codificación de HDR (u otra imagen) de reemplazo, como por ejemplo la codificación de una pequeña parte de una imagen de un video no como LDR Y_8b, sino una imagen parcial por ejemplo Y_16b SIN PROCESAR, es (también después de la transformación apropiada típicamente) sustituida por esa región de la imagen cuando se genera una imagen de rango dinámico más alto, uno también puede utilizar valores reservados por otras razones. Por ejemplo un valor de gris de diferenciador de región de 260 puede indicar que el siguiente bloque es muy difícil de segmentar, no será posible con base en uno o más valores de grises de diferenciador de región en el rango de luma codificado (por ejemplo 16,200 y 240) sino preferiblemente se necesita otra estrategia de segmentación. Por ejemplo al detectar este valor reservado de 260, el lado de recepción puede utilizar un mapa ya segmentado para al menos el bloque segmentado actual o más bloques segmentados. Es decir entonces mirará en una imagen de segmento co-codificado pequeña, en la cual para al menos los bloques
sucesivos los pixeles son etiquetados por ejemplo ya sea como "0", "1" o "5", en caso de que esos sean los tres tipos de objetos presentes. Después de esto, la segmentación de sistema de soporte ya no es necesaria, el algoritmo basado en "el valor de gris de diferenciador de región" regular puede reestablecerse por ejemplo mediante la re-codificación antes del primer bloque al cual la segmentación regular aplicará los valores no reservados antiguos nuevamente (por ejemplo 16, 200 y 240) u otro código de gTS reservado como 270 se podría utilizar para indicar que los resúmenes de codificación de metadatos de segmentación regular y que los valores de gTS previos (almacenados típicamente en una memoria de trabajo en el lado de recepción) son aplicables nuevamente .
Pero de cualquier modo, incluso cuando se necesita ocasionalmente otra estrategia de sistema de soporte para las situaciones raras muy complejas, se tiene una codificación la cual es muy eficiente con los datos (debido principalmente a que se necesita únicamente los mapeos y los valores de grises de diferenciador de región que delimitan en qué pixeles que mapeo es necesario aplicarse y usualmente algunos metadatos adicionales para especificar de manera precisa ese vínculo
(por ejemplo regla de vínculo de transformación: objeto=3 —> utilizar mapeo=5) ) debido a que solo en muy contadas ocasiones se necesita una codificación de sistema de soporte
alternativa que consume más bits. Pero adicionalmente también es muy versátil en aplicaciones de procesamiento, como por ejemplo la adecuación para la presentación en diferentes pantallas. Debido a este método, se ha definido de una manera fácil la semántica de HDR de la escena, la cual se necesita para la adecuación hacia diferentes pantallas. Y la regla de vinculación puede ser dinámica, por ejemplo puede haber una cantidad de reglas almacenadas. Por ejemplo mapeo=5 puede ser llenado además por diferentes mapeos dependiendo de por ejemplo que representación de color de imagen de HDR de salida será el resultado de ese mapeo (por ejemplo Y_16b contra Y_10b) o para que pantalla será (por ejemplo una pantalla de HDR de 5000 nits o una pantalla de HDR de 50000 nits o una pantalla de HDR de 1500 nits), etcétera.
Y la persona experta entenderá que esta codificación se puede incorporar de varias maneras, por ejemplo por medio de diferentes reglas, por ejemplo cambiando en la inicialización la regla de vinculación de "objeto=3 —> utilizar mapeo=5", en "objeto=3 —> utilizar mapeo=7" o al tener el módulo de segmentación que produce diferentes códigos de segmento dependiendo de los detalles particulares de la imagen de HDR de salida o el mapeo se puede cambiar dinámicamente, por ejemplo al referirse a detalles particulares adicionales (como un puntero variable al inicio
de diferentes algoritmos o LUTs o entradas en listas de diferentes ecuaciones etcétera) . Esto también permite por ejemplo un manejo fácil de órdenes de la interfaz de usuario, tal como por ejemplo una modificación controlada por el usuario de la "apariencia de brillo total" de la escena, la cual se puede implementar al reasignar varias funciones de mapeo nuevas a diferentes objetos de la escena, todos los objetos/regiones de valores de grises son modificadas por la luminosidad en una relación de mapeo particular (por ejemplo la ventana de vidrio teñido puede no ser modificada en gran medida, puesto que ya es brillante, quizás abrillantada un poco más en comparación con el resto de la imagen con el propósito de no perder mucho de la apariencia de HDR debido a la relación de luma con el resto de la imagen, pero el interior de la habitación circundante puede ser abrillantado, puesto que es esa parte de luminosidad promedio la cual influye principalmente en la apariencia brillante de la imagen; y viceversa cuando se atenúa la pantalla, debido a que el usuario lo percibe como un brillo desagradable etcétera) . Solo que una parte sobrescrita necesite entonces ser tratada de manera diferente, pero si es muy difícil y crucial, probablemente necesitará un procesamiento de presentación complejo de cualquier modo. De este modo el creador de contenido tiene una opinión mucho mejor en lo que es por ejemplo abrillantado y como es abrillantado, puesto
que el abrillantamiento no necesita ser una compensación o multiplicación simple, sino que puede ser una estrategia compleja que equilibra el brillo de subregiones (por ejemplo el recorte de un porcentaje de los pixeles a blanco) , la cual es típicamente inteligente en escenarios de pantallas restringidas respecto al espectro, donde los algoritmos actuales pueden conducir a artefactos.
Otro uso muy útil de los umbrales de delimitación de segmentos reservados se ilustra en el sistema casero del lado de recepción de la Figura 6. En este punto, la televisión 602 recibe una señal SB, por ejemplo de una estación de televisión sobre las vías aéreas. Comprende los metadatos METB y el (los) código (s) de especificación de ajustes de HDR SET_HDR, los cuales pueden ser co-transmitidos de varias maneras (pero típicamente como metadatos al inicio de una corrida de imágenes) y especifican cómo se debe comportar después la pantalla. Un código SET_HDR interesante se puede utilizar para conmutar entre la presentación de HDR y LDR, sistema de soporte por ejemplo para ahorrar energía, debido a que se transmite ininterrumpidamente en la actualidad por ejemplo un programa de noticias de estudio, el cual no necesita la cantidad máxima de efectos cinemáticos de HDR. De este modo entre por ejemplo el comercial o película antes de éste y las noticias, se puede transmitir un código SET_HDR de "render_LDR" (o se puede co-codificar en un
programa de video almacenado en por ejemplo una grabadora de disco duro casera o un servidor de almacenamiento de video conectado a través de Internet) , lo cual significa que de aquí en adelante la pantalla de HDR presentará con un brillo blanco máximo de por ejemplo solo 500 nits (aunque tiene una capacidad de brillo máximo de 5000 nits) . Ahora como modalidades de la invención actualmente dada a conocer, uno puede realizarla fácilmente al establecer el valor de gris de diferenciador de región gTR igual a 255, lo cual significa que todas las lumas inferiores (es decir todos las lumas posibles en la imagen de 8 bits) necesitan ser tratadas con el mismo mapeo, el cual puede ser por ejemplo co-almacenado con la imagen o pre-almacenado en el mapeo gamma de pantalla el cual luego presenta todo a máximamente 500 nits. Por ejemplo uno puede utilizar un valor gTS el cual delimita que grises serán presentados, quizás atenuados, y acerca de que todos los grises pueden ser recortados a un blanco atenuado relativamente oscuro.
Ahora es importante entender que existen dos clases de mapeos/transformaciones para aplicar a las lumas (o codificaciones relacionadas con la luminosidad similares) .
La primera son los mapeos "relacionados con el hardware" matemáticos, simples, los cuales solo corrigen la pantalla y el ambiente de observación particular. Por ejemplo, si una imagen es codificada para un CRT gamma 2.2
(pantalla de referencia) , pero se muestra en una LCD con una función de transferencia electro-óptica sigmoide, la pantalla misma puede utilizar matemáticas colorimétricas elementales para corregir eso, haciendo que la LCD represente la imagen como si fuera un CRT de referencia. Similarmente , uno puede optimizar en gran medida las características del ambiente de observación con matemáticas simples. En primer lugar naturalmente, cuando se escala a una prestación más oscura, uno necesita bajar el brillo de referencia asociado con la codificación de imagen. Esto se realiza ya en gran medida al mapear el valor de código máximo (por ejemplo 255) al brillo máximo de la pantalla de presentación. Sin embargo, también se puede hacer más complejo, por ejemplo un subrango particular de lumas de la imagen se podría asignar a un rango particular de luminancias presentadas de la pantalla. Pero típicamente también se tiene que aplicar una corrección gamma, tomando en cuenta cosas tales como un cambio en el contraste dependiendo de la luminancia de la imagen presentada y su entorno. Esto proporciona resultados bastante aceptables si el contenido de información de rango de luminosidad (es decir la codificación de información sobre los diversos subrangos de apariencia) en los dos sistemas es relativamente similar, no obstante es difícil cuando los rangos de apariencia son muy diferentes. Para ir a un rango dinámico mucho más angosto uno tiene que decidir que
subrangos aún tienen que ser mostrados con esa calidad, es decir típicamente con que contraste intra-objeto y que contraste inter-objeto y algunas veces los intervalos imbricados son generados por el algoritmo de mapeo. La otra forma alrededor es incluso más difícil. Si se tiene solo un par de rangos de objetos comprimidos, es difícil juzgar donde colocarlos en un rango de aparición de HDR de salida, permitir inventar nuevos valores de luma/apariencia . Se vuelve aún más difícil generar una buena imagen de HDR natural a partir de una imagen mapeada de LDR en la cual los intervalos de luma de 8 bits de objetos disimilares de escena-luminancia han sido codificados inapropiadamente imbricados entre sí (como cuando se simula una iluminación muy uniforme, destruyendo toda la información o información suficiente de la iluminación de escena original) .
Todas las otras transformaciones de los valores de grises (o colores en general) de los pixeles de objeto se pueden observar como transformaciones genéricas, las cuales pueden ser locales preferiblemente que globales, las cuales son realizadas típicamente por un artista (puede incluso corregir si la calibración matemática, simple, anterior para un escenario de observación diferente no es suficientemente exacta) . Los artistas pueden realizar graduaciones artísticas muy complejas, en las cuales cambian por ejemplo las diferentes lumas presentes en nubes en la imagen, para hacer
que una apariencia de tormenta sea más amenazante. O pueden utilizar incluso un efecto de presentación de gráficos de computadora para tener haces de rayos luminosos que salen de los ojos de un robot, como se representa por las lumas/colores de pixel deseados. Para esta discusión se puede ejemplificar con dos escenarios típicos. Ya sea todo el posicionamiento importante en el rango de luminancia de los valores de grises de pixeles de objetos (la graduación de color) se tiene que realizar en una imagen de HDR maestra (IM_MSTR_HDR, véase la Figura 4, la cual puede ser por ejemplo una imagen de 16 bits con una gamma de definición particular) y la imagen de LDR (Im_l) se deduce meramente mediante transformaciones matemáticas simples en ese maestro de HDR, como por ejemplo una función gamma de la cual el factor gamma se adecúa con base en estas características como el histograma de la imagen de HDR, es decir la conversión de HDR a LDR es solamente un cambio adecuado simple de los valores de grises (típicamente encima no hacia desviaciones grandes) , de modo que toda la información que está contenida de manera relativamente exacta, está en una estrategia de codificación diferente. En este caso, una imagen de HDR final que es presentada en una pantalla de HDR puede ser derivada de la imagen de LDR mediante la aplicación de esta estrategia de mapeo matemático inverso. 0, un graduador humano 520 puede derivar alternativamente la imagen de LDR con base en una
graduación adecuada óptimamente adicional iniciando a partir de la graduación maestra como se codifica en la imagen de HDR maestra I _MSTR_HDR (es decir comienza por ejemplo con la imagen [0,1.0] como si fuera LDR e inicia libremente transformándola colorimétricamente de acuerdo a cualquiera que sean sus gustos) . Es decir en este escenario, existe tanto una codificación de la apariencia óptima para sistemas de presentación de HDR en la imagen de HDR I _MSTR_HDR como otra apariencia óptima para sistemas de LDR, codificados en la imagen de LDR (por ejemplo ventajosamente de 8 bits) graduada Im_l . Aunque los métodos son aplicables a cualquier transformación de color o luma para objetos entre una primera y una segunda definición de espacio de color para colores de pixel, típicamente de varias profundidades de bits y/o brillo máximo de pantalla propuesto (la única cosa necesaria que existe una buena relación de orden entre regiones más brillantes y más oscuras en por lo menos una de las representaciones de color/codificaciones de imagen) se enfocará esta ejemplificación en un ejemplo del segundo tipo. Es decir, el graduador puede haber especificado muchos mapeos de color afinados, es decir de la configuración funcional luma_in a luma_out general (por ejemplo como un LUT) para varios sub-objetos o regiones de la(s) imagen (es) la cual en esta estrategia será convertida a una serie (una o más) de valores de grises de diferenciador de región (gTS) , una
variedad de funciones o algoritmos de transformación y típicamente también una o más reglas de vinculación, segmentos asequibles de vinculación con transformaciones que son aplicadas (por ejemplo si existen tres valores de grises de diferenciador de región sucesivos, los objetos debajo del primer gTSl pueden ser segmentados como "0" , arriba de gTSl como "1" y luego si el segundo gTS2 es un valor más alto aplicable al mismo conjunto de objetos (es decir el mismo rango de luma) , arriba de ese gTS2 serán segmentos "2", pero las lumas inferiores ya pertenecen a "1" . Si el gTS2 es solo una redefinición de objetos más oscuros y más brillantes, como en el ejemplo del objeto muy oscuro, arriba de las lumas umbral en ambos casos será el segmento "1" fondos, pero las lumas inferiores serán el segmento "0" respectivamente segmento "2". Si las relaciones son claras, no se necesitan datos adicionales para ser codificados, pero puede haber típicamente algunos metadatos adicionales que explican el significado de los valores de grises de diferenciador de región. Por ejemplo puede ser suficiente simplemente definir el tipo de valores de grises de diferenciador de región como "further_demarcation_in_same_luma_range" o "modified_demarcation" , etcétera. Pero para los casos más complejos, y en realidad debido a que no son necesarios muchos datos adicionales, un codificador puede elegir realizarlo siempre como esto, uno puede solo co-codificar lo
que tiene que realizarse para cada situación, con por ejemplo reglas de asignación de valores de segmentos. Por ejemplo, "si luma < gTSl ? obj eto/segmento = 0", si "luma > gTS2 —> segmento = 2", etcétera. De esta manera, uno se asegura en contra de cualquier posible interpretación errónea y transformación incorrecta resultante.
La Figura 3 aclara un posible ejemplo ventajoso sobre como codificar las modalidades anteriores, ajustando en la estructura de tecnologías actuales de codificación de imágenes, tal como por ejemplo un estándar de codificación de video MPEG como AVC o similar.
Uno puede iniciar con la colocación de algunos de los metadatos en un encabezado global Gen_Im_HDR (por imagen o para la primera imagen de una toma de imágenes por ejemplo) , el cual es útil típicamente para transformaciones predominantes. Por ejemplo, para tomas simples, puede ser suficiente para codificar en el mismo un primer mapeo Glob_TMl que es aplicado a la mayor parte de la imagen y un segundo mapeo global Glob_TM2 que es aplicado por ejemplo a algunas regiones mucho más brillantes. El primer mapeo se podría aplicar a la habitación de las Figuras 1A y IB (es decir todo lo que sea el fondo, la escalera y el objeto muy oscuro) y luego el segundo mapeo se podría aplicar para abrillantar/aumentar la ventana de vidrio teñido. Y la diferencia entre estos dos objetos se encuentra rápidamente
en el lado de recepción por medio del valor de gris de diferenciador de región codificado gTS_glob (típicamente esta ventana tendrá lumas (mucho) más altas en la imagen de LDR Y-8b que en el resto del objeto, pero sin estos metadatos, esto puede ser muy difícil de determinar automáticamente) . Si uno gira la cámara en la habitación, puede ser que por ejemplo la ventana de vidrio teñido comience a volverse más brillante debido a que el sol es más reluciente a través de la misma. Esto se puede codificar al variar gradualmente Glob_TM2 y posiblemente gTS_glob para imágenes sucesivas en la toma. Esto permite que uno mantenga por ejemplo la codificación de la ventana de vidrio teñido en la imagen Y_8b igual sobre las imágenes sucesivas (por ejemplo utilizando la mejor asignación de código posible para retener la cantidad máxima de detalle en las pinturas sobre el vidrio teñido) , debido a que uno puede aumentar el brillo de la ventana por vía de la variación del mapeo de Glob_TM2 (es decir los cambios de iluminación son en la transformación funcional preferiblemente que en la codificación de color de textura pixelado) . Luego una cantidad de bloques de datos de pixel se codifican, por ejemplo por vía de una DCT. Si la codificación global es suficiente para la imagen completa, entonces todos los datos de pixel siguen ese encabezado global, hasta el final de la toma o incluso en el corto de película. Sin embargo, se asume en este ejemplo que se tiene el escenario
más complejo donde algo en la imagen, iniciando antes de un bloque particular (il,j-2), se tiene que iniciar haciendo transformaciones locales. Es decir, típicamente se puede utilizar aún algo del conocimiento de transformación global como ya se codificó en Glob_TMl etcétera, por ejemplo para transformar los pixeles de fondo del papel tapiz, pero para al menos un nuevo objeto local se tiene que hacer una nueva transformación. Es decir algunas de las estrategias de transformación se redefinirán localmente, por ejemplo se sobreescribirán . En este ejemplo, los metadatos locales Loc_ ET_l contienen una nueva estrategia para delimitar las partes más brillantes arriba de gTS__L_loc_l , por ejemplo debido a que existe un objeto aún más brillante como una luz. También, un valor de gris de diferenciador de región para determinar uno o más objetos oscuros gTS_D_loc_l se co-codifica. En el ejemplo, el objeto claro aún puede ser transformado suficientemente con la transformación actualmente disponible y aplicable para regiones brillantes, pero un nuevo mapeo de Loc_TM_DK se codifica para transformar los objetos oscuros (por ejemplo en este punto por primera vez apareció la escalera y ya se sabía como transformar la ventana y el papel tapiz, pero todavía no los peldaños oscuros) . Un ejemplo de una regla de vinculación de transformación LnkRL_l también se co-codifica, regla la cual establece que lumas debajo del valor de gris de diferenciador
de región del objeto oscuro gTS_D_loc_l deben ser mapeadas con la transformación para la escalera Loc_TM_DK.
Esta información es suficiente nuevamente para una cantidad de bloques sucesivos (o en general una configuración definida, general), que contienen el fondo, o peldaños, hasta que se termina antes del bloque (i+2,j), donde se tiene que codificar el valor de gris de diferenciador de región gTS_D_loc_2 que permite la segmentación del objeto muy oscuro y su estrategia de mapeo Loc_TM_DK_2. DAT_TM proporciona un orden de los datos, tal como por ejemplo un orden espacial (o temporal en transmisión) de bloques a lo largo de una ruta de exploración, como es bien sabido a partir de la codificación de imágenes .
Aunque solo se ha descrito un ejemplo entremezclado, también se pretende cubrir sistemas en los cuales los metadatos son separados físicamente de los datos de bloque de pixel, no obstante son asociables con posiciones de bloques particulares. Aunque algunas estructuras de codificación de video pueden comprender perfectamente el ejemplo anterior (debido a que ya se han especializado o son genéricas para utilizarse en lugar de marcadores de posición de memorias de metadatos, otras estructuras de codificación de video podrían tener suficiente memoria de metadatos para almacenar todo o pierden compatibilidad con versiones anteriores al confundir sistemas más antiguos si algunos
datos se escriben entremezclados. Por lo tanto, otras realizaciones equivalentes podrían codificar todos los metadatos (gTS, etcétera) en una parte separada de la señal (por ejemplo al inicio de una película en un disco o en intervalos regulares durante la difusión, etcétera) y luego podrían hacer que esos datos fueran asociables por medio de un código de asociación geométrico con bloques particulares u otras regiones. La manera más simple de realizar esto es escribir el número del bloque (y potencialmente también el número de imagen, el número de película/contenido, etcétera) después de los datos, por ejemplo como: "gTSl 230/lmageNr/TimeCode = 2541, Block_loc= (X=20, Y=12)". Esa parte de metadatos separada puede residir incluso por ejemplo en una señal diferente y se puede suministrar en un medio diferente, por ejemplo la película se coloca en un blu-ray en el reproductor, pero los metadatos "que la explican" como el (los) valor (es) de grises de diferenciador de región se recuperan de un almacenamiento conectado a la red (por ejemplo un servicio especializado que permite una presentación de HDR mejorada) a través de por ejemplo la Internet .
La Figura 4 muestra como una segmentación se mirará típicamente, un ejemplo en el cual también se ha explicado como por ejemplo la ventada de vidrio teñido puede ser subdividida en subregiones, las cuales serían útiles por
ejemplo si la parte más baja es iluminada de manera menos brillante, por ejemplo debido a que partes del exterior bloquean algo de la luz. En ese caso un nuevo tipo de segmento SEGM_TYP_2 resultará, por ejemplo el segmento = "5". Se entiende ahora que las reglas de segmentación mediante la comparación simple con los valores de grises de diferenciador de región determinados óptimamente pueden generar fácilmente objetos de diferente luminosidad (típicamente diferente iluminación en la escena de HDR) que se pueden segmentar de manera exacta, independientemente de su relación con los bloques. De este modo, uno puede codificar todos los otros datos útiles, tal como los mapeos que se utilizan actualmente, en una base de bloques, mientras que los resultados son exactos para objetos aún aplicados, es decir sin ningún artefacto anular o bloque, etcétera.
Se desea hablar un poco más acerca de los valores gTS . Ya se mencionó que pueden ser definidos independientemente de que codificación de luma técnica se utilice, por ejemplo uno puede utilizar valores gTS de luma en un espacio de color YCrCb gamma 2.1 o valores de diferenciador de luminancia Y en una codificación XYZ de colores de imagen etcétera. Persiste la pregunta interesante si los valores gTS son definidos en el especio de color de referencia de la primera imagen o la segunda imagen, por ejemplo la imagen inicial o final. Si uno utiliza una
representación de LDR mapeada para codificar un grado maestro de HDR, uno recuperaría esa imagen de HDR mediante el mapeo de escalamiento ascendente de luminancia de esa imagen de LDR. De este modo tendría sentido definir los valores gTS a lo largo del eje de luma de codificación de imagen de LDR, aunque en principio en situaciones usuales uno también podría especificarlos a lo largo del eje de luma de HDR, puesto que por vía de lo inverso de las funciones de mapeo de recuperación de HDR esos valores de gTS basados en HDR se podrían convertir en valores gTS basados en LDR equivalentes. Típicamente, los metadatos en el inicio de la codificación de video especificarán que definición es aplicable. Ahora se debe sumergir un poco más profundo en lo que puede suceder en algunos escenarios para valores gTS basados en LDR. En principio, uno podría tener un mapeo de la imagen de HDR maestra a la segunda imagen de LDR la cual traslapa (ligeramente) los histogramas de luma de regiones las cuales en la imagen de HDR original estuvieron separadas (por ejemplo algunas de las partes más oscuras de los peldaños pueden obtener lumas en LDR las cuales también ocurren en el objeto muy oscuro) . Entonces se podría especificar el diferenciador de gTS a medio camino de las colas de histogramas imbricados o en una mejor posición de luma. Aunque en principio podría haber problemas cuando se escala ascendentemente , esto no necesita ser un problema para varias
estrategias de mapeo, en particular si tienen un comportamiento relativamente sin dificultades alrededor del traslapo (es decir no aumentan el contraste interpixel) . Sin embargo, en lo sucesivo se limitará a sistemas los cuales deben tener normalmente histogramas separados en la imagen tanto de LDR como de HDR. Las diversas modalidades de aparatos se pueden limitar para tomar en cuenta esta restricción, por ejemplo al limitar la elección del mapeo de HDR a LDR que un graduador puede elegir, etcétera. Esto será fácil para codificaciones no comprimidas (mediante las cuales se da a entender una compresión espacial psicovisual como técnicas de frecuencia como DCT y no la compresión de un subrango de luma) . Para las codificaciones comprimidas se debe ser un poco más cuidadoso con problemas como por ejemplo las estructuras de tablero de ajedrez de la codificación de DCT incompleta. Aunque esta necesidad no siempre es un problema en la práctica, algunas veces el artefacto puede volverse más grave visualmente, por ejemplo mirándose como un área más ruidosa. En particular esto puede suceder si en el LDR no comprimido original los peldaños y los histogramas de fondo se separan (quizás tocando o con algunos códigos no utilizados entre los mismos) , pero después de la descomposición con base en DCT, la señales recuperadas tendrán algunas manchas de tablero de ajedrez más oscuras del entorno más brillante que se encuentran en el subintervalo
asignado para los peldaños más oscuros. Si uno también tiene una curva de mapeo de tonos la cual se estira seriamente a lo largo de ese valor gTS entre los peldaños y el fondo (por ejemplo una función discontinua con una compensación grande entre las dos partes de mapeo de tonos) entonces podría ser que esas manchas se vuelvan significativamente más oscuras en el fondo por lo menos cerca de los peldaños. Varias modalidades de aparatos (o métodos) pueden tratar de estas diversas maneras y en particular una interfaz del usuario puede ofrecer al graduador diferentes maneras de interactuar con y especificar este comportamiento de codificación. En primer lugar, puede hacer que la curva de mapeo de tonos sea menos pronunciada y el aparato puede ofrecer ya sea inicialmente una elección de solo mapeos menos pronunciados o pueden corregir iterativamente (por lo menos una iteración) esos, al ofrecer al graduador especificar de nuevo los mapeos solo para regiones donde juzga que el artefacto es muy grave. También, el mapeo puede ser tal que existan algunos códigos de reserva. En particular, uno puede definir fácilmente este comportamiento con dos valores gTS. La Figura 7 ilustra esquemáticamente este escenario. En esta gráfica Luma_in será las lumas de la imagen de HDR y luma_out de la codificación de LDR correspondiente de las mismas, las cuales se enviarán a través del codificador de MPEG antiguo por ejemplo. En la imagen de HDR, las regiones brillantes son de
lumas/luminancias muy separadas de las regiones oscuras las cuales muestran de su separación a lo largo del eje de luma_in. En teoría, se podría diseñar un mapeo el cual haga que toquen a lo largo del eje de Luma_out (LDR) pero ahora se diseña un mapeo que deja algún rango ProtRng de códigos vacíos entre los mismos. Estos códigos no deben existir en la codificación de LDR, sino después de la descompresión de DCT de algunas de las partes más oscuras de los tableros de ajedrez pueden encontrarse en este ProtRng. Sin embargo, el decodificador puede reconocer esto y puede retirarlo de la señal, por ejemplo al recortarlos al valor de Luma_out más bajo del rango brillante, antes de realizar el escalamiento ascendente de luminancia para recuperar la imagen de HDR. Con este principio, se podría incluso reducir ese rango protector ProtRng, incluso a tal grado que algunos códigos después de la descompresión de DCT puedan encontrarse en el rango oscuro de la imagen de LDR y sean mapeados (potencialmente lejos del rango brillante en la imagen de HDR) por lo inverso del mapeo oscuro MapDrk en lugar del mapeo correcto para esos pixeles, específicamente el mapeo brillante MpBrght. Pero estos artefactos de DCT tienen normalmente una estructura la cual va sobre un par de valores intermedios a las manchas más oscuras en el tablero de ajedrez. De ese modo, el decodificador puede detectar, por ejemplo de algunos de esos valores incorrectos en el bloque puede detectar que puede
haber un problema potencial y cambiar después de la descompresión de DCT pero antes del escalamiento ascendente de luminancia estos valores a valores en el rango brillante de la imagen de LDR, incluso si esos pixeles son realmente pixeles del objeto oscuro, solo para estar en el lado seguro (un efecto de HDR ligeramente incorrecto, pero tampoco un artefacto potencial fuerte) . El codificador puede utilizar un código reservado para este "recorte a intervalo" (0 o 1) , para indicar si esto debe suceder a un bloque o si se debe permitir y solo escalar ascendentemente y el graduador puede indicar bloques problemáticos por ejemplo al pulsar en los mismos con su ratón o garabatear a través de un conjunto conectado de bloques problemáticos. Aunque el decodificador puede no conocer la diferencia, el codificador puede tener la señal original y toda la información para determinar si este problema puede suceder, de modo que puede haber un modo de pseudocolor con el cual el graduador pueda alternar entre los pixeles incorrectos mostrados como por ejemplo rojo saturado brillante, contra su color real después de la reconstrucción (incorrecta) de la imagen de HDR. Otras diversas opciones (interactivas) están disponibles también, por ejemplo el codificador puede utilizar más palabras código de DCT para bloques los cuales fueron seleccionados como problemáticos por el graduador o por el contrario menos bloques DCT de modo que exista aún un error de frecuencia más bajo, pero los
patrones de tablero de ajedrez rápidos son retirados en caso de que esto proporcione una mejor apariencia final. O por ejemplo un cambio pequeño a los datos originales o coeficientes de DCT se puede hacer, por ejemplo un contrapatrón se puede aplicar al bloque de LDR antes de que sea codificado DCT, de modo que los valores de tablero de ajedrez más bajos no se encuentren más dentro del rango de LDR oscuro, etcétera.
La Figura 5 muestra un ejemplo de un posible aparato de graduación 510 en un lado de creación de contenido, controlado por un graduador 520 (la persona experta entenderá como las mismas modalidades de la invención se aplicarían en un aparato de transcodificación automático basado en la colorimetría matemática o cualquier otra modalidad) .
Dentro del aparato de graduación 510 se encuentra un codificador de imagen 549 para codificar una imagen de una escena de rango dinámico alto, imagen la cual puede haber sido capturada previamente por ejemplo mediante una película de celuloide o un sistema de cámaras digitales electrónicas, a la cual se pueden ver agregado efectos especiales y la cual en caso de video puede ser una imagen en una secuencia de composición temporal final. El codificador de imagen (el cual ahora por razones de simplicidad se asume que es una unidad como un IC, pero puede ser un conjunto de software, donde
algunos componentes pueden incluso ejecutarse en un servidor distante, etcétera) puede comprender típicamente varios subcomponentes (típicamente bajo el control del software, permitiendo que el graduador elija parámetros) y comprenderá típicamente alguna variante de una unidad de codificación de textura de pixel 552 la cual se dispone para codificar los colores de pixeles de la imagen de acuerdo con una representación de imagen definida, particular (Im_l), por ejemplo con lumas de palabras código de N-bits, como por ejemplo palabras código de 8 bits o 10 bits o 12 bits y codificaciones de crominancia como Y_Cr e Y_Cb. Puesto que ya existen diversas variantes de codificación, que varían sobre VC1, VP8 y codificaciones como MPEG similares, hasta codificadores fractales incluso menos populares, no será necesario además aclarar ese aspecto.
Sin embargo, también está comprendida una unidad de análisis de imagen 550 la cual puede aplicar un análisis de imagen más simple o más complejo. En estos aparatos de graduación profesionales como se muestra en el ejemplo, típicamente muchos algoritmos incorporados al software están disponibles, que proporcionan al graduador un control casi completo sobre la imagen, tanto cuanto se desea estudiar sus propiedades y su composición como cuando se desea cambiarla arbitrariamente. Puede utilizar por ejemplo una pipeta para tomar muestras de un color particular (y entonces puede
definir a partir de ese color de pixel tomado como muestra un "color de objeto" típico al elegir por ejemplo enlaces colorimétricos apropiados alrededor del color tomado como muestra) o mirar a formas de onda de señal o histogramas, u otras representaciones de regiones (por ejemplo el sistema puede mapear subrangos de luma en la parte superior de una región, por ejemplo por pseudocolores) . Puede abrillantar (temporalmente) por ejemplo una región particular, para inspeccionar visualmente de manera más clara su textura en una o más pantallas de referencia 530. Puede aplicar típicamente una variedad de procesamientos de imagen, como afinamiento de una región o aplicación de un efecto de aclaramiento u otro efecto. Puede delimitar un objeto al mostrar un límite alrededor de éste con un lazo, etcétera.
Ahora típicamente, la unidad de análisis de imagen convertirá por lo menos un objeto en un valor de gris de diferenciador de región (gTS) o en otras palabras asociará con un objeto por lo menos un gTS relacionado, determinado. Por ejemplo, puede determinar el histograma de la región de objeto seleccionada y puede determinar que el valor de luma mínimo que contiene es más alto que aquel de la región circundante, por ejemplo la imagen completa. La gestión interactiva se puede involucrar, por ejemplo el graduador puede abrillantar primero la región, de modo que ahora su nuevo valor mínimo es más alto que el valor más alto en el
resto de la imagen o una parte relevante de la misma relacionada geométricamente con el objeto (por ejemplo delimitación del objeto) .
Este valor de gris de diferenciador de región gTS será enviado a un formateador 554 el cual puede co-codificar (siguiendo nuevamente las reglas de algún estándar de codificación de imágenes, antiguo o novedoso) en una señal de imagen de salida (S(Im_l, MET(gTS)) la representación de imagen (Im_l) y el valor de gris de diferenciador de región (gTS) , este último típicamente en un formato de metadatos textuales pre-acordados . Por ejemplo esa señal de imagen puede ser grabada en un disco blu-ray 511 o puede ser guardada en alguna otra memoria como el disco o memoria en estado sólido de un servidor de red o se puede transmitir la señal de imagen en tiempo real de una conexión de transmisión de señal, etcétera. Debe ser claro para la persona experta que aunque se describe esta funcionalidad en la presente construcción física, son posibles otras realizaciones.
Típicamente cuando se gradúa en el aparato de graduación, el graduador utilizará simultáneamente su unidad de determinación de mapeo de lumas 553 para determinar un mapeo de lumas (TOM) para al menos algunos de los objetos (naturalmente, los otros objetos entonces también tienen una transformación, quizás una transformación de identidad, pero esa transformación puede ser por ejemplo por defecto como
predefinida o puede ser seleccionada por la pantalla de presentación etcétera) . Definirá un mapeo entre lumas de pixeles como se codificaron en una primera representación de imagen (por ejemplo una imagen de HDR Y_16b de entrada) y lumas de los pixeles en una segunda representación de imagen (por ejemplo una imagen de LDR Im_l) o al revés. La unidad de determinación de mapeo de lumas 553 puede determinar matemáticamente una función de mapeo por sí misma, por ejemplo proponiéndola como una sugerencia inicial al graduador, al mirar las diversas propiedades visuales de la región de por ejemplo la imagen de HDR y como se pueden representar aún razonablemente en una codificación de LDR. Esto puede dar por resultado la aplicación de por ejemplo un mapeo sigmoide o multisegmento, con las curvaturas de las rodillas y los hombros por ejemplo determinadas al aislar sublóbulos particulares del histograma global o el entendimiento de la imagen tal como la detección de caras o cualquier variante en la misma. El graduador entonces puede afinar esta función, por ejemplo al cambiar o doblar el hombro del sigmoide. En este método, el graduador puede hacer esto relacionado con los valores gTS . Por ejemplo el aparato de graduación puede definir en sí un valor de gris importante (por ejemplo 999) el cual puede ser un punto de control para por ejemplo una parte de una curva de mapeo multisegmento, pero el graduador entonces puede mejorar este punto, por
ejemplo cambiarlo de modo que una porción más relevante de un objeto como por ejemplo los peldaños ahora es transformada por un mapeo de lumas ( /tonos) parcial. Se ilustran algunos aspectos adicionales con el ejemplo de la Figura 8. Como ya se mencionó, se puede utilizar este método en un simple método de codificación, por ejemplo en el cual una imagen de HDR tiene que ser codificada por vía de una imagen de LDR utilizable, antigua, codificada (contenedor de LDR) . En esa situación solo habrá típicamente algunas funciones físicas para el mapeo entre las dos imágenes. Sin embargo, con la Figura 8 se describe como este sistema puede ser utilizado con los valores gTS en un escenario adicional de capacidad de adecuación de la pantalla, en donde se determinan grados adicionales para diferentes pantallas, ya sea que esta información esté ya toda graduada (es decir el graduador verificó por lo menos como estas transformaciones se verían en un par de pantallas de referencia muy diferentes como HDR, subLDR con un rango dinámico pequeño) y codificada en la señal de imagen típicamente como varias funciones que son aplicadas en una o más imágenes de textura (Im_l) o ya sea que fueran solo datos codificados para un grado de HDR de buena apariencia y puede ser un buen grado de LDR y en el lado de presentación un sistema de pantalla (por ejemplo pantalla o computadora) se determina con base en esos datos y estos valores gTS por lo menos un grado adicional para por
ejemplo una pantalla de rango dinámico medio MDR. En esta gráfica, se utiliza una representación de luminancia final la cual es absoluta . Luminance_in puede ser la señal de entrada definida como se vería en por ejemplo alguna pantalla de referencia y luminance_out puede ser las luminancias presentadas de salida en varias pantallas reales con diferentes capacidades de brillo. Se asume que los objetos de luminancia más baja son codificados correctamente en gran medida y por lo tanto son presentados, de modo que ambas pantallas (Disl, Dis2) utilizarán el mismo mapeo de tonos TM_FDrk, el cual puede ser una transformación de identidad o algún estiramiento de contraste. Ahora el gTShl anterior inicia las regiones brillantes en la imagen y existen dos regiones brillantes (por ejemplo iluminadas por la puesta de sol hasta gTSh2 e iluminadas por un alumbrado fuerte de estadio de fútbol arriba de gTSh2) . La pantalla 1 puede tener un brillo máximo muy alto, de modo que se tiene mucho espacio para asignar subrangos de brillo de éste a varias clases de iluminación visual. El primer mapeo de tonos de procesamiento de brillo TM_TBril_Disl para esa pantalla brillante puede estirar considerablemente los datos originales, de modo que la región se vea agradablemente brillante y contrastante. Un segundo mapeo de tonos de procesamiento de brillo TM_TBri2_Disl puede compensar incluso esa región a luminancias presentadas muy altas, de modo que visualmente
esa región es muy diferente de las partes iluminadas por el sol, por ejemplo el alumbrado del estadio no se ve en realidad muy áspero. Esta discriminación se puede realizar fácilmente con los valores gTS (por ejemplo en el ejemplo de este mapeo lineal pueden incluso describir en términos de parámetros la función de mapeo) . Para una pantalla con un brillo máximo más bajo, por ejemplo la computadora que determina el mapeo final puede realizar algo más para las diversas regiones determinadas por los valores gTS. Por ejemplo puede procesar los brillos más bajos con una función de mapeo de contraste menor TM_Bril_Dis2 , de modo que aún exista algo de espacio dejado para las regiones iluminadas con luz del estadio, las cuales necesitan sin embargo ser recortadas suavemente con la función TM-Bri2_Dis2.
Este mapeo de lumas (???) es co-codificado finalmente en la señal de imagen de salida (S(Im_l, MET(gTS), TOM) por el formateador 554, de acuerdo con las especificaciones de definición de señales de imagen acordadas. Nuevamente, este mapeo se puede realizar en principio utilizando cualquier primer especificación de codificación de color que determina cualquier primer imagen para cualquier primer pantalla de referencia (en particular con cualquier rango dinámico de luminancia de salida) a similarmente cualquier segunda codificación de imagen (en particular con brillo máximo más alto o más bajo, rango
dinámico más pequeño o más grande, etcétera) , siempre y cuando se especifique claramente y se acuerde con el lado de recepción.
Típicamente, un codificador de imagen 549 el cual de acuerdo con los conceptos de la modalidad se dispone para co-codificar inteligentemente valor (es) de grises de diferenciador de región seleccionado (s) (gTS) es útil para delimitar regiones de brillo promedio de regiones de brillo alto, es decir por ejemplo la parte del histograma de luma debajo de un cierto percentil y un porcentaje de los valores más altos, especialmente cuando son separados por códigos no utilizados (o una definición similar basada en luminancias presentadas) . Por lo tanto, esto es muy útil para la codificación de escenas de HDR, en cualquier espacio de formato/color la imagen se codificará finalmente en por lo menos una versión (por ejemplo Y_8b o Y 10b o Y_16b, y definiciones adicionales como la luminancia de blanco pretendida, negro, curva gamma, etcétera) , puesto que estas escenas de HDR no tienen típicamente luminancias de objetos de escena similares y por lo tanto después de la cámara que captura lumas de imagen en vista de la iluminación uniforme utilizada por los diseñadores de alumbrado, como en la producción de LDR, pero preferiblemente tienen regiones de iluminación muy diferentes. Y los valores gTS pueden caracterizarlas adecuadamente.
De este modo, básicamente el graduador solo aplica sus operaciones clásicas en la(s) imagen (es) como selección de objeto, que define las curvas de mapeo óptimas para diferentes partes (subrangos de lumas típicos) de ese objeto etcétera y el codificador 549 lo traduce en parámetros de las modalidades de esta invención, tales como valores de grises de diferenciador de región gTS.
Se ha aclarado la invención en vista de la Figura 5 con un sistema de producción de contenido de entretenimiento casero, por ejemplo que tiene acceso a un servidor de video 580 por vía de una conexión 581, el cual contiene archivos de video, tal como una graduación de HDR maestra IM_MSTR_HDR de digamos alguna película o espectáculo de televisión, el cual se produjo al momento de producir la película o espectáculo, como es la graduación de referencia final. Esto entonces se convertirá a una graduación de cine casero para una liberación de versión casera, que es codificada por ejemplo como una imagen MPEG-AVC de 8 bits Im_l y los metadatos de acuerdo con cualquiera de las modalidades presentadas. Naturalmente, el codificador también se puede incorporar en otro sistema, aparato o escenario de uso, por ejemplo para determinar uno o más grados maestros directamente de una señal de cámara sin procesar de la cámara 501 a través de una conexión de imagen/video (por ejemplo inalámbrica) 505 o para la remasterización, etcétera.
La Figura 6 muestra una posible modalidad de un sistema del lado de recepción, específicamente un sistema de presentación de imágenes o video del consumidor casero. Una televisión 602 puede recibir directamente una primera señal de video (o imagen) SB(Im_l, MET) a través de por ejemplo las vías aéreas. Esta alimentación de video ejemplar ya se explicó anteriormente y utiliza los valores de grises de diferenciador de región entre corridas de imágenes (que van típicamente de un contenido a otro o partes de un programa como reportajes en un programa de noticias) el cual ya sea debe ser presentado cinematográficamente, con un brillo alto y precisión de HDR (es decir también en cuanto a la asignación precisa en el eje de luminancia de salida de varios objetos que determinan la apariencia de la imagen) o debe ser ejecutada (cerca de LDR) con un brillo reducido (y potencia) . También puede haber un aparato de procesamiento de video 601 (como por ejemplo un sintonizador externo o PC) , el cual puede obtener su video por vía de una o más conexiones a la Internet (I_net) . Por ejemplo, un servidor de youtube o similar puede suministrar una señal de HDR, la cual es preferiblemente tanto codificada simplemente como utilizable de una manera versátil para varias posibles pantallas de presentación diferentes (el comúnmente llamado criterio de "capacidad de adecuación de la pantalla"). Además de por ejemplo una codificación de Y_8b Im_l de la señal de HDR,
contendrá uno o más de los metadatos de la modalidad anterior y también por ejemplo un indicador de procesamiento PROC_IND, el cual especifica como esta imagen Im_l puede ser procesada, por ejemplo para obtener una versión de imagen de HDR. Por ejemplo, puede especificar que el lado de recepción puede utilizar varias estrategias de transformación de color/lumas, por ejemplo con un indicador como
"receiver_determines_optimal_mapping" . En ese caso, el aparato de recepción como el sintonizador externo o televisión puede determinar por sí mismo aplicar un primer mapeo por ejemplo si el espectador tiene las luces encendidas en su sala de observación y un segundo mapeo si las luces están apagadas. De hecho, el procesamiento permitido puede ser especificado en términos de tolerancias o cambios perceptuales , por ejemplo se puede permitir que un aparato del lado de presentación aplique una función gamma hasta 1.2, pero no más fuerte a un grado, por ejemplo si la pantalla tiene un brillo máximo dentro de un intervalo de aquel de la pantalla de referencia (por ejemplo el grado puede ser determinado para una pantalla de referencia de 700 nits y se puede permitir que sea modificable ligeramente si la pantalla real se encuentra dentro de un intervalo de 50% del mismo, es decir con un brillo máximo entre 350 y 1050 nits) . El indicador de procesamiento también puede especificar que solo uno de un par de transformaciones determinadas
específicamente se puede utilizar, etcétera. El indicador puede tener una definición variable, la cual puede volverse compleja, por ejemplo puede comprender directrices detalladas para el control de la interfaz del usuario, que guían al espectador a través de selecciones para tener una apariencia óptima de la película (proporcionándole algunas opciones de optimización aprobadas por el creador, como un par de maneras para mejorar los oscuros, haciéndolos más coloridos pero disminuyendo algo el estado anímico de la imagen) , como se desea por el creador de contenido (calibración manual con subconjuntos seleccionados de imágenes por ejemplo) , etcétera. Normalmente habrá escenarios de sistema de soporte, ya que el espectador tiene el control final, de modo que esas directrices pueden ser ignoradas o invalidadas, pero las presentes modalidades permiten un alto grado de versatilidad, como por ejemplo una opinión más cercana por parte del creador de contenido sobre cómo su contenido debe ser presentado en el ambiente de presentación final (ya sea en el hogar, cine, en espacios abiertos, pantalla profesional en por ejemplo un estadio de fútbol soccer, etcétera) .
El decodificador de imágenes 605 puede comprender típicamente varias de las siguientes unidades. Una unidad de decodificación de textura de pixel 608 necesita ser dispuesta de modo que pueda realizar cualquier operación matemática necesaria para decodificar las señales de imagen entrantes,
las cuales pueden ser codificadas de acuerdo con muchos estándares, de modo que por ejemplo el software pueda ser ejecutado, el cual puede ser mejorado si se libera un nuevo codificador de onda pequeña. Naturalmente, existirá un desembalaje de señal y puede ser una desmodulación etcétera (la cual será realizada típicamente por un desformateador 607, junto con la extracción y potencialmente la decodificación también de los metadatos como el (los) valor (es) de grises de diferenciador de región, pero la unidad de decodificación de textura de pixel 608 será capaz de realizar cosas tales como por ejemplo la decodificación aritmética, decodificación DCT inversa, etcétera, como todos los componentes en los estándares MPEG-visuales y similares. Una unidad de segmentación de imágenes 606 realizará la segmentación y como se dice, eso se puede realizar fácilmente al umbralar los valores gTS, pero las estrategias de segmentación más complicadas también pueden ser soportadas. Luego, una unidad de transformación de color de pixel 609 realizará el mapeo de por lo menos las lumas de pixel, las cuales pueden ser tan simples como la grabación por ejemplo del valor de salida de la función PD_BLCK(i+2 , j ) que pertenece al valor de luma de pixel de ese pixel Im_l particular como el valor de entrada (Luma_in) . Este valor de salida será escrito en la imagen de salida de HDR IM_RC_HDR en esa ubicación de pixel. Esta imagen puede ser aquella
enviada a través de una conexión 688 a la televisión (por ejemplo para el accionamiento directo o el procesamiento adicional por parte de una unidad de procesamiento de imágenes 620 en la televisión o en la pantalla general, la cual también es capaz de realizar transformaciones de color) .
Puede haber una imagen intermedia IM_INTRM involucrada y aunque ésta puede ser cualquier representación de referencia, se asume actualmente para una explicación simple que es una imagen de luma de 8 bits (también con palabras de 8 bits de dos representaciones de canal de color) . Si la representación de imagen de entrada Im_l no es comprimida (por ejemplo DCT) , entonces ésta puede ser una copia simple de Im_l y de otra manera es típicamente la imagen resultante de la descompresión.
El sistema también muestra una distribución de video de interconexión en red casera por vía de medios de vinculación de comunicación de interconexión en red como la antena 699 a una pantalla portátil 630 (por ejemplo un IPAD el cual utiliza el espectador para continuar observando la televisión sobre su cama en su recamara) . Esto ilustra de manera agradable la versatilidad de las modalidades, puesto que el aparato 601 entonces puede condicionar previamente otra señal de imagen IM_RC_MDR óptimamente para este dispositivo, el cual por ejemplo puede tener solo un rango dinámico medio, entre LDR (el cual se puede definir que
termina aproximadamente arriba de un brillo máximo de 750 nits) y HDR de alta calidad, el cual comienza arriba de digamos 2500 nits. La imagen de MDR entonces puede ser codificada en IM_RC_MDR mediante el uso de incluso el mismo Im_l para las texturas de pixeles y el (los) mismo (s) valor (es) de grises de diferenciador de región, pero funciones de mapeo cambiadas para mapear al rango diferente de luminancias de salida presentadas en la pantalla.
Las presentes modalidades también permiten una interactividad mejorada de la interfaz del usuario en el lado;
·* de presentación, puesto que el espectador puede adecuar por ejemplo sus funciones de mapeo paramétricamente . Por ejemplo el abrillantamiento del objeto muy oscuro puede ser tan simple como el control de la pendiente de la función PD_BLCK(i+2 , j ) . Los algoritmos inteligentes pueden aplicar modificaciones de lumas coordenadas a todos los objetos en la(s) imagen (es) en sincronía estética al pulsar un botón individual (haciendo posible por ejemplo una función de brillo inteligente) , pero también es posible habilitar el control de los diversos objetos al ofrecer una interfaz del usuario más compleja. Por ejemplo, cuando se observa la televisión, el usuario puede utilizar su pantalla portátil 630 como control remoto y puede tener una copia de la imagen de la televisión en la pantalla de ese control remoto, con los diversos objetos significativos ya preseleccionados con
los métodos de valores de grises de diferenciador de región. El espectador entonces puede indicar rápidamente con un par de cambios (por ejemplo algunos elementos deslizantes aparecen en la parte superior de los objetos) su presentación preferente en una o un par de imágenes (por ejemplo al inicio de la película, algunas escenas características importantes o bajo una instrucción de pausa, la imagen actual para esa escena que es reproducida) . Un botón de deshacer puede restaurar la situación, etcétera. Se puede utilizar inteligencia artificial para deducir las preferencias del espectador a partir de sus acciones, incluso al almacenar detalles específicos para programas no relacionados en tiempos de reproducción muy diferentes como en días diferentes. Por lo tanto, el sistema puede deducir que el espectador desea que sus negros sean absolutamente oscuros, o por el contrario sean abrillantados, y luego aplicar este conocimiento a otras imágenes.
Los componentes algorítmicos dados a conocer en este texto se pueden realizar (por completo o en parte) en la práctica como hardware (por ejemplo como partes de un IC específico para la aplicación) o como un software que se ejecuta en un procesador especial de señales digitales, o un procesador genérico, etcétera. Pueden ser semi -automáticos en el sentido de que por lo menos alguna entrada del usuario puede ser/puede haber estado presente (por ejemplo en la
fábrica, o una entrada del consumidor o una entrada de otro humano) .
Debe ser entendible para la persona experta a partir de esta presentación que los componentes pueden ser mejoramientos opcionales y se pueden realizar en combinación con otros componentes y cómo los pasos (opcionales) de métodos corresponden a medios respectivos de aparatos, y viceversa. El hecho de que algunos componentes se den a conocer en la invención en cierta relación (por ejemplo en una figura individual en una cierta configuración) no significa que no sean posibles otras configuraciones como modalidades conforme al mismo pensamiento inventivo que aquel dado a conocer para patentarse en este documento. También, el hecho de que por razones pragmáticas solo se haya descrito un espectro limitado de ejemplos, no significa que otras variantes no puedan encontrarse bajo el alcance de las reivindicaciones. De hecho, los componentes de la invención se pueden incorporar en diferentes variantes a lo largo de cualquier cadena de uso, por ejemplo todas las variantes de un lado de creación como un codificador pueden ser similares a o pueden corresponder a aparatos correspondientes en un lado de consumo de un sistema descompuesto, por ejemplo un decodificador y viceversa. Varios componentes de las modalidades se pueden codificar como datos de señal específicos en una señal para la transmisión o para el uso
adicional tal como coordinación, en cualquier tecnología de transmisión entre un codificador y un decodificador, etcétera. La palabra "aparato" en esta solicitud se utiliza en su sentido más amplio, específicamente un grupo de medios que permiten la realización de un objetivo particular y por lo tanto pueden ser por ejemplo (una pequeña parte de) un IC o un dispositivo especializado (tal como un dispositivo con una pantalla) o parte de un sistema conectado a una red, etcétera. "Ordenación" o "sistema" también se propone para utilizarse en el sentido más amplio, de modo que puede comprender inter alia aparatos adquiribles, físicos, individuales, o una parte de un aparato, una colección de (partes de) aparatos colaboradores, etcétera.
Se debe entender que la indicación producto de programa de computadora comprende cualquier realización física de una colección de instrucciones que hacen posible que un procesador de uso genérico o especial, después de una serie de pasos de carga (los cuales pueden incluir pasos de conversión intermedios, tal como traducción a un lenguaje intermedio y un lenguaje de procesador final) introduzca la instrucciones en el procesador, para ejecutar cualquiera de las funciones características de una invención. En particular, el producto de programa de computadora se puede realizar como datos en un portador tal como por ejemplo un disco o cinta, datos presentes en una memoria, datos que
viajan por vía de una conexión de red -alámbrica o inalámbrica-, o código de programa en un documento. Además de un código de programa, los datos característicos requeridos para el programa también se pueden incorporar como un producto de programa de computadora . Estos datos se pueden suministrar (parcialmente) de cualquier manera.
La invención o cualquier dato utilizable de acuerdo con cualquier filosofía de las presentes modalidades como datos de video, también se puede incorporar como señales en portadores de datos, los cuales pueden ser memorias desmontables como discos ópticos, memorias no volátiles, discos duros desmontables, dispositivos portátiles escribibles por vía de medios inalámbricos, etcétera.
Algunos de los pasos requeridos para la operación de cualquier método presentado pueden ya estar presentes en la funcionalidad del procesador o cualquier modalidad del aparato de la invención en lugar de ser descritos en el producto de programa de computadora o cualquier unidad, aparato o método descrito en este documento (con detalles específicos de las modalidades de la invención) , tales como pasos de entrada y salida de datos, pasos de procesamiento incorporados típicamente bien conocidos tales como accionamiento de pantallas estándar, etcétera. También se desea protección para productos resultantes y consecuencias similares, como por ejemplo las señales novedosas específicas que están
involucradas en cualquier paso de los métodos o en cualquier subparte de los aparatos, así como también cualquier uso nuevo de estas señales o cualquier método relacionado.
Se debe observar que las modalidades mencionadas anteriormente son ilustrativas preferiblemente que limitantes de la invención. Donde la persona experta puede realizar fácilmente un mapeo de los ejemplos presentados a otras regiones de las reivindicaciones, todas estas opciones no han sido mencionadas detalladamente por razones de concisión. Además de las combinaciones de elementos de la invención como se combinan en las reivindicaciones, otras combinaciones de los elementos son posibles. Cualquier combinación de elementos se puede realizar en un elemento especializado, individual.
Cualquier signo de referencia entre paréntesis en la reivindicación no se propone para limitar la reivindicación, ni es ningún símbolo particular en las figuras. Las palabras "que comprende" no excluyen la presencia de elementos o aspectos no listados en una reivindicación. La palabra "un" o "una" que precede a un elemento no excluye la presencia de una pluralidad de estos elementos .
Se hace constar que con relación a esta fecha, el mejor método conocido por la solicitante para llevar a la práctica la citada invención, es el que resulta claro de la presente descripción de la invención.
Claims (22)
1. Un codificador de imágenes para codificar una imagen de una escena de rango dinámico alto, caracterizado porque comprende : una unidad de codificación dé textura de pixel, dispuesta para codificar colores de pixeles de la imagen con una representación de imagen (Im_l) que comprende palabras código de N-bits; una unidad de análisis de imagen dispuesta para determinar y enviar un valor de gris diferenciador de región (gTS) , el cual es un valor de luma que delimita debajo de éste lumas de todos los pixeles de un primer objeto en por lo menos un bloque de la imagen y arriba de éste lumas de todos los pixeles de un segundo objeto en por lo menos el bloque de la imagen; y - un formateador dispuesto para co-codificar en una señal de imagen de salida (S(Im_l, MET(gTS)) la representación de imagen (Im_l) y el valor de gris de diferenciador de región (gTS) .
2. Un codificador de imagen de conformidad con la reivindicación 1, caracterizado porque comprende una unidad de determinación de mapeo de lumas, dispuesta para determinar un mapeo de lumas (TOM) para por lo menos uno del primer objeto y el segundo objeto que define un mapeo entre lumas de pixeles como se codifican en la representación de imagen (Im_l) y lumas de los pixeles en una segunda representación de imagen (IM_ RC_HDR) y dispuesta para suministrar el mapeo de lumas (TOM) al formateador el cual se dispone para co-codificario en la señal de imagen de salida (S(Im_l, MET (gTS) , TOM) .
3. Un codificador de imagen de conformidad con la reivindicación 1 o 2, en el cual una de la primera representación de imagen y la segunda representación de imagen es una representación de rango dinámico alto, caracterizado porque en éste se codifica para una pantalla de referencia con un brillo máximo arriba de 750 nits.
4. Un codificador de imagen de conformidad con la reivindicación 1, caracterizado porque se dispone para codificar varios valores de grises de diferenciador de región (gTS_D_Loc_l , gTS_D_Loc_2) entre secciones de imagen espaciales que comprenden varias de las palabras código de N-bits que codifican los colores de pixeles de la representación de imagen (Im_l) .
5. Un codificador de imagen de conformidad con la reivindicación 1, caracterizado porque se dispone de modo que codifica un valor de gris de diferenciador de región antes de una corrida de una cantidad de imágenes sucesivas, que es un valor de gris de diferenciador de región para todas esas imágenes sucesivas.
6. Un codificador de imagen de conformidad con la reivindicación 1, caracterizado porque se dispone de modo que codifica por lo menos un valor de gris de diferenciador de región en una memoria no adyacente físicamente a una memoria que almacena la representación de imagen (Im_l) , junto con un código de asociación geométrica que permite la asociación de por lo menos cada valor de gris de diferenciador de región respectivo con una región geométrica de la representación de imagen (Im_l) a la cual es aplicable, el código de asociación geométrica comprende típicamente por lo menos las coordenadas de un bloque de la representación de imagen (Im_l) .
7. Un codificador de imagen de conformidad con cualquiera de las reivindicaciones anteriores, caracterizado porque se dispone de modo que codifica un primer valor reservado de un valor de gris de diferenciador de región en la señal de imagen de salida (S(Im_l, MET(gTS)), que indica que, al menos para una región geométrica de la representación de imagen (Im_l), se encuentra de acuerdo con una dirección de exploración a través de la imagen más allá de una ubicación identificable con el primer valor reservado, una transformación de los valores de pixeles como se codifican en la representación de imagen (Im_l) a valores de pixeles en una segunda representación de imagen (IM_RC_HDR) , se realiza de acuerdo con un algoritmo predefinido.
8. Un codificador de imagen de conformidad con cualquiera de las reivindicaciones anteriores, caracterizado porque se dispone de modo que codifica un segundo valor reservado (gTR) de un valor de gris de diferenciador de región en la señal de imagen de salida (S(Im_l, MET(gTS)), que indica que al menos para una imagen sucesiva, una pantalla debe presentarla con una luminancia de salida máxima debajo de un valor predeterminado.
9. Un codificador de imagen de conformidad con la reivindicación 2, caracterizado porque la unidad de determinación de mapeo de lumas se dispone para determinar varios mapeos de lumas diferentes (TOM) para al menos uno del primer objeto y el segundo objeto a través de reglas de vinculación de transformación o se dispone para señalar con un indicador de procesamiento (PROC_IND) que varios mapeos de lumas diferentes se pueden utilizar para transformar los colores de pixeles de por lo menos uno del primer objeto y el segundo objeto a una nueva representación de color de la segunda representación de imagen (IM_RC_HDR) .
10. Un decodificador de imagen para decodificar una representación de imagen codificada (Im_l, MET) de una escena de rango dinámico alto, caracterizado porque comprende: una unidad de decodificación de textura de pixel, dispuesta para obtener de la representación de imagen codificada (Im_l) colores de pixel de los pixeles de una imagen decodificada (IM_INTRM) ; y - un desformateador dispuesto para extraer de la representación de imagen codificada (Im_l, MET) un valor de gris de diferenciador de región (gTS) .
11. Un decodificador de imagen de conformidad con la reivindicación 10, caracterizado porque comprende una unidad de segmentación de imagen dispuesta para utilizar el valor de gris de diferenciador de región (gTS) para obtener un segmento de luma más baja y un segmento de luma más alta en la imagen decodificada (IM_INTR ) .
12. Un decodificador de imagen de conformidad con la reivindicación 11, caracterizado porque comprende una unidad de transformación de color de pixel, dispuesta para aplicar una primera transformación de color (PD_BLCK(i, j ) ) que transforma por lo menos los valores de lumas de los colores de pixeles a pixeles en el segmento de luma más baja y dispuesta para aplicar una primera transformación de color (PM_BLCK ( i , j ) ) que transforma por lo menos los valores de luma de los colores de pixeles a pixeles en el segmento de luma más alta.
13. Un decodificador de imagen de conformidad con la reivindicación 10, caracterizado porque se dispone para aplicar una estrategia de transformación de color específica a los colores de pixeles de por lo menos uno del primer objeto y el segundo objeto si el desformateador extrae un valor de gris de diferenciador de región (gTS) de un valor reservado, tal como por ejemplo un valor de 0 o 255.
14. Un decodificador de imagen de conformidad con cualquiera de las reivindicaciones de decodificador anteriores, caracterizado porque comprende una unidad de determinación de transformación dispuesta para seleccionar una estrategia de transformación de color de pixel de una fuente de memoria no asociada con ninguno de los datos de la representación de imagen codificada (Im_l, MET) .
15. Un decodificador de imagen de conformidad con la reivindicación 14, caracterizado porque la unidad de determinación de transformación se dispone para determinar la estrategia de transformación de color de pixel con base en por lo menos un parámetro del ambiente de presentación, tal como una característica de la pantalla o un nivel de iluminación circundante.
16. Un decodificador de imagen de conformidad con cualquiera de las reivindicaciones de decodificador anteriores, caracterizado porque se dispone para obtener la representación de imagen codificada (Im_l) y el valor de gris de diferenciador de región (gTS) de memorias físicamente separadas y dispuesto para asociar el valor de gris de diferenciador de región (gTS) con una parte geométrica de la representación de imagen codificada (Im_l) .
17. Un método de codificación de imágenes para codificar una imagen de una escena de rango dinámico alto, caracterizado porque comprende: codificar colores de pixeles de la imagen con una representación de imagen (Im_l) que comprende palabras código de N-bits; determinar y enviar un valor de gris de diferenciador de región (gTS) , el cual es un valor de luma que delimita debajo de éste lumas de todos los pixeles de un primer objeto en por lo menos un bloque de la imagen y arriba de éste lumas de todos los pixeles de un segundo objeto en por lo menos el bloque de la imagen; y - co-codificar en una señal de imagen de salida (S(Im_l, MET(gTS)) la representación de imagen (Im_l) y el valor de gris de diferenciador de región (gTS) .
18. Un método de decodificación de imágenes para decodificar una representación de imagen codificada (Im_l, MET) de una escena de rango dinámico alto, caracterizado porque comprende : obtener de la representación de imagen codificada (Im_l) colores de pixel de los pixeles de una imagen decodificada (IM_INTRM) ; y - extraer de la representación de imagen codificada (Im_l, MET) un valor de gris de diferenciador de región (gTS) .
19. Un producto de programa de computadora, caracterizado porque comprende un código de software que hace posible un procesamiento para ejecutar el método de conformidad con la reivindicación 17 o 18.
20. Una señal de imagen, caracterizada porque codifica colores de regiones de una escena de rango dinámico alto, que comprende palabras código de N-bits que codifican por lo menos las luminancias de los colores de regiones y un valor de gris de diferenciador de región (gTS) , que indica en un sistema de códigos utilizado para codificar las palabras código de N-bits las cuales codifican por lo menos las luminancias de los colores de regiones, una demarcación entre por lo menos una primera región geométrica de pixeles de luminancia más alta en la escena de rango dinámico alto o valores más altos de las palabras código de N-bits que codifican éstos y por lo menos una segunda región geométrica de pixeles de luminancia más baja en la escena de rango dinámico alto o valores más bajos de las palabras código de N-bits que codifican éstos.
21. Una memoria tal como una memoria desmontable, tal como por ejemplo un disco de blu-ray, caracterizada porque almacena una señal de conformidad con la reivindicación 20.
22. Un sistema de distribución de video a través de cualquier tecnología de red, caracterizado porque emplea cualquier codificador de imagen, decodificador de imagen, método, señal de imagen, de conformidad con cualquiera de las modalidades reclamadas.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261615409P | 2012-03-26 | 2012-03-26 | |
PCT/IB2013/052349 WO2013144809A2 (en) | 2012-03-26 | 2013-03-25 | Brightness region-based apparatuses and methods for hdr image encoding and decoding |
Publications (2)
Publication Number | Publication Date |
---|---|
MX2014011418A true MX2014011418A (es) | 2014-12-04 |
MX337444B MX337444B (es) | 2016-03-07 |
Family
ID=48325815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MX2014011418A MX337444B (es) | 2012-03-26 | 2013-03-25 | Aparatos basados en la region de brillo y metodos para la codificacion y decodificacion de imagenes de rango dinamico alto. |
Country Status (14)
Country | Link |
---|---|
US (2) | US9420288B2 (es) |
EP (1) | EP2880624B1 (es) |
JP (2) | JP6262198B2 (es) |
KR (1) | KR102014127B1 (es) |
CN (1) | CN104541301B (es) |
BR (1) | BR112014023535B1 (es) |
ES (1) | ES2737993T3 (es) |
HU (1) | HUE044859T2 (es) |
MX (1) | MX337444B (es) |
PL (1) | PL2880624T3 (es) |
PT (1) | PT2880624T (es) |
RU (1) | RU2643663C2 (es) |
TR (1) | TR201911093T4 (es) |
WO (1) | WO2013144809A2 (es) |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9516351B2 (en) | 2012-07-13 | 2016-12-06 | Koninklijke Philips N.V. | HDR image encoding and decoding methods and devices |
JP2015008361A (ja) * | 2013-06-24 | 2015-01-15 | ソニー株式会社 | 再生装置、再生方法、および記録媒体 |
EP2989793B1 (en) * | 2013-11-13 | 2017-04-05 | Dolby Laboratories Licensing Corporation | Workflow for content creation and guided display management of enhanced dynamic range video |
KR20150083429A (ko) * | 2014-01-08 | 2015-07-17 | 한국전자통신연구원 | Dash를 사용하는 비디오 재생을 위한 비트 깊이 표현 방법 |
US9854176B2 (en) * | 2014-01-24 | 2017-12-26 | Lucasfilm Entertainment Company Ltd. | Dynamic lighting capture and reconstruction |
KR102285955B1 (ko) | 2014-02-07 | 2021-08-05 | 소니그룹주식회사 | 송신 장치, 송신 방법, 수신 장치, 수신 방법, 표시 장치 및 표시 방법 |
CN110177276B (zh) * | 2014-02-26 | 2021-08-24 | 杜比实验室特许公司 | 处理视频图像的空间区域的方法、存储介质及计算装置 |
WO2015174108A1 (ja) * | 2014-05-15 | 2015-11-19 | ソニー株式会社 | 通信装置及び通信方法、並びにコンピューター・プログラム |
WO2015190045A1 (ja) * | 2014-06-10 | 2015-12-17 | パナソニックIpマネジメント株式会社 | 変換方法および変換装置 |
MX358934B (es) * | 2014-06-26 | 2018-09-10 | Panasonic Ip Man Co Ltd | Dispositivo de salida de datos, metodo de salida de datos y metodo de generacion de datos. |
EP3739894A1 (en) | 2014-06-27 | 2020-11-18 | Panasonic Intellectual Property Management Co., Ltd. | Data output device, data output method, and data generation method |
KR101809967B1 (ko) * | 2014-08-08 | 2017-12-18 | 엘지전자 주식회사 | 디스플레이 적응적 영상 재생을 위한 비디오 데이터 처리 방법 및 장치 |
JP6331882B2 (ja) | 2014-08-28 | 2018-05-30 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
RU2687267C2 (ru) * | 2014-12-11 | 2019-05-13 | Конинклейке Филипс Н.В. | Оптимизация изображений с расширенным динамическим диапазоном для определенных дисплеев |
HUE056171T2 (hu) * | 2014-12-29 | 2022-01-28 | Sony Group Corp | Adókészülék, adási eljárás, vevõkészülék és vételi eljárás |
EP3251337A1 (en) * | 2015-01-29 | 2017-12-06 | Koninklijke Philips N.V. | Local dynamic range adjustment color processing |
US9552531B2 (en) | 2015-01-30 | 2017-01-24 | Sony Corporation | Fast color-brightness-based methods for image segmentation |
CN107258078B (zh) | 2015-01-30 | 2019-09-24 | 皇家飞利浦有限公司 | 简单但通用的动态范围编码 |
CN107409213B (zh) | 2015-03-02 | 2020-10-30 | 杜比实验室特许公司 | 用于高动态范围图像的内容自适应感知量化器 |
US20180167597A1 (en) * | 2015-05-29 | 2018-06-14 | Thomson Licensing | Methods, apparatus, and systems for hdr tone mapping operator |
US9942489B2 (en) | 2015-06-02 | 2018-04-10 | Samsung Electronics Co., Ltd. | Adaptive tone mapping based on local contrast |
KR102403360B1 (ko) * | 2015-06-16 | 2022-05-30 | 광운대학교 산학협력단 | 하위 호환성을 고려한 hdr 영상 복호화 장치에서 다이나믹 레인지 매핑 정보를 이용하는 방법 및 장치 |
US10043487B2 (en) | 2015-06-24 | 2018-08-07 | Samsung Electronics Co., Ltd. | Apparatus and method for split screen display on mobile device |
US10007412B2 (en) * | 2015-06-24 | 2018-06-26 | Samsung Electronics Co., Ltd. | Tone mastering system with creative intent metadata |
EP3131284A1 (en) * | 2015-08-13 | 2017-02-15 | Thomson Licensing | Methods, systems and aparatus for hdr to hdr inverse tone mapping |
US10687080B2 (en) | 2015-08-28 | 2020-06-16 | Arris Enterprises Llc | Color volume transforms in coding of high dynamic range and wide color gamut sequences |
WO2017046408A1 (en) * | 2015-09-18 | 2017-03-23 | Thomson Licensing | Determination of a co-located luminance sample of a color component sample, for hdr coding/decoding |
CN108141576B (zh) * | 2015-09-30 | 2020-09-04 | 三星电子株式会社 | 显示装置及其控制方法 |
JP6624877B2 (ja) * | 2015-10-15 | 2019-12-25 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
JP6611576B2 (ja) * | 2015-11-30 | 2019-11-27 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
ES2684432T3 (es) | 2015-12-17 | 2018-10-02 | Koninklijke Philips N.V. | Codificación de rango dinámico para imágenes y vídeo |
RU2721762C2 (ru) * | 2015-12-21 | 2020-05-22 | Конинклейке Филипс Н.В. | Оптимизация изображений высокого динамического диапазона для конкретных дисплеев |
CN105744157A (zh) * | 2016-02-02 | 2016-07-06 | 西安电子科技大学 | 一种图像像素采样值转换、采样值处理方法及装置 |
JP6451669B2 (ja) * | 2016-03-04 | 2019-01-16 | ソニー株式会社 | 評価装置、評価方法およびカメラシステム |
JP6460014B2 (ja) | 2016-03-04 | 2019-01-30 | ソニー株式会社 | 信号処理装置、信号処理方法およびカメラシステム |
JP2019512953A (ja) * | 2016-03-14 | 2019-05-16 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | ダイナミックレンジマッピングのための飽和処理仕様 |
JPWO2017159185A1 (ja) * | 2016-03-17 | 2019-01-24 | パナソニックIpマネジメント株式会社 | 照合装置 |
RU2728516C2 (ru) | 2016-03-18 | 2020-07-30 | Конинклейке Филипс Н.В. | Кодирование и декодирование hdr видео |
DE102016003681A1 (de) * | 2016-03-24 | 2017-09-28 | Universität Stuttgart | Datenkompression mittels adaptiven Unterabtastens |
GB2549521A (en) * | 2016-04-21 | 2017-10-25 | British Broadcasting Corp | Method and apparatus for conversion of dynamic range of video signals |
US10699391B2 (en) | 2016-04-29 | 2020-06-30 | Disney Enterprises, Inc. | Dynamic range expansion highlight information restoration |
TWI612334B (zh) * | 2016-08-10 | 2018-01-21 | 國立臺灣大學 | 透視裝置的光度補償方法與系統 |
US11202050B2 (en) * | 2016-10-14 | 2021-12-14 | Lg Electronics Inc. | Data processing method and device for adaptive image playing |
US10244244B2 (en) * | 2016-10-26 | 2019-03-26 | Dolby Laboratories Licensing Corporation | Screen-adaptive decoding of high dynamic range video |
US10192295B2 (en) * | 2016-11-09 | 2019-01-29 | AI Analysis, Inc. | Methods and systems for normalizing images |
US10218952B2 (en) | 2016-11-28 | 2019-02-26 | Microsoft Technology Licensing, Llc | Architecture for rendering high dynamic range video on enhanced dynamic range display devices |
US10104334B2 (en) | 2017-01-27 | 2018-10-16 | Microsoft Technology Licensing, Llc | Content-adaptive adjustment of display device brightness levels when rendering high dynamic range content |
US10176561B2 (en) | 2017-01-27 | 2019-01-08 | Microsoft Technology Licensing, Llc | Content-adaptive adjustments to tone mapping operations for high dynamic range content |
US10638144B2 (en) | 2017-03-15 | 2020-04-28 | Facebook, Inc. | Content-based transcoder |
US10453221B2 (en) * | 2017-04-10 | 2019-10-22 | Intel Corporation | Region based processing |
WO2018213856A2 (en) | 2017-05-16 | 2018-11-22 | Artentika (Pty) Ltd | Digital data minutiae processing for the analysis of cultural artefacts |
US10728559B2 (en) * | 2017-07-07 | 2020-07-28 | Qualcomm Incorporated | Precision of computation and signaling of dynamic range adjustment and color remapping information |
US11252401B2 (en) | 2017-08-07 | 2022-02-15 | Dolby Laboratories Licensing Corporation | Optically communicating display metadata |
EP3869405B1 (en) * | 2017-08-31 | 2023-09-27 | HP Indigo B.V. | Generating rasterized modified images from a rasterized seed image |
EP3451677A1 (en) * | 2017-09-05 | 2019-03-06 | Koninklijke Philips N.V. | Graphics-safe hdr image luminance re-grading |
CN108063947B (zh) * | 2017-12-14 | 2021-07-13 | 西北工业大学 | 一种基于像素纹理的无损参考帧压缩方法 |
US10546554B2 (en) | 2018-03-26 | 2020-01-28 | Dell Products, Lp | System and method for adaptive tone mapping for high dynamic ratio digital images |
GB2572571B (en) * | 2018-04-03 | 2021-09-01 | Apical Ltd | Image processing |
JP6652153B2 (ja) * | 2018-04-26 | 2020-02-19 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
KR102591582B1 (ko) * | 2018-06-22 | 2023-10-19 | 삼성전자주식회사 | 컨텐츠를 표시하는 방법 및 전자 장치 |
US10863157B2 (en) | 2018-07-06 | 2020-12-08 | Samsung Electronics Co., Ltd. | Guided tone mapping of high dynamic range video based on a Bezier curve for presentation on a display device |
US10957024B2 (en) | 2018-10-30 | 2021-03-23 | Microsoft Technology Licensing, Llc | Real time tone mapping of high dynamic range image data at time of playback on a lower dynamic range display |
US11222248B2 (en) | 2018-10-31 | 2022-01-11 | Hewlett-Packard Development Company, L.P. | Luminance-biased sharpening for thermal media printing |
US10885612B2 (en) | 2018-10-31 | 2021-01-05 | Hewlett-Packard Development Company, L.P. | Luminance-biased sharpening for thermal media printing |
US10841356B2 (en) * | 2018-11-28 | 2020-11-17 | Netflix, Inc. | Techniques for encoding a media title while constraining bitrate variations |
US10880354B2 (en) | 2018-11-28 | 2020-12-29 | Netflix, Inc. | Techniques for encoding a media title while constraining quality variations |
CN110390664A (zh) * | 2018-11-30 | 2019-10-29 | 武汉滨湖电子有限责任公司 | 一种基于孔洞填充路面裂缝识别方法 |
CN110163816B (zh) * | 2019-04-24 | 2021-08-31 | Oppo广东移动通信有限公司 | 图像信息的处理方法、装置、存储介质及电子设备 |
US20210073447A1 (en) | 2019-09-06 | 2021-03-11 | BeamUp, Ltd. | Structural design systems and methods for updating simulation and modeling results |
CN110691254B (zh) * | 2019-09-20 | 2022-01-18 | 中山大学 | 一种多功能视频编码的快速判决方法、***及存储介质 |
US11473971B2 (en) * | 2019-09-27 | 2022-10-18 | Apple Inc. | Ambient headroom adaptation |
CN113703881A (zh) * | 2020-05-22 | 2021-11-26 | 北京小米移动软件有限公司 | 显示方法、装置及存储介质 |
CN111784598B (zh) * | 2020-06-18 | 2023-06-02 | Oppo(重庆)智能科技有限公司 | 色调映射模型的训练方法、色调映射方法及电子设备 |
US11330196B2 (en) | 2020-10-12 | 2022-05-10 | Microsoft Technology Licensing, Llc | Estimating illumination in an environment based on an image of a reference object |
CN112508328B (zh) * | 2020-10-20 | 2024-06-04 | 中国环境科学研究院 | 一种自然保护地生态质量监控***及方法 |
CN114519683A (zh) * | 2020-11-20 | 2022-05-20 | 北京晶视智能科技有限公司 | 图像处理方法及应用其的图像处理装置 |
CN112435201B (zh) * | 2020-12-07 | 2022-08-02 | 中国人民解放军国防科技大学 | 一种编码模板标定方法、装置、计算机设备和存储介质 |
US11601665B2 (en) * | 2021-06-23 | 2023-03-07 | Microsoft Technology Licensing, Llc | Embedding frame masks in a video stream |
KR102564447B1 (ko) * | 2021-11-30 | 2023-08-08 | 엘지전자 주식회사 | 디스플레이 장치 |
CN115601267B (zh) * | 2022-10-31 | 2023-04-07 | 哈尔滨理工大学 | 一种具有局部细节补偿能力的全局色阶映射方法 |
CN116193242B (zh) * | 2023-04-24 | 2023-07-14 | 北京城建智控科技股份有限公司 | 一种摄像装置图像解析与传输方法 |
CN117395380B (zh) * | 2023-12-12 | 2024-02-23 | 上海伯镭智能科技有限公司 | 一种大型矿区无人驾驶矿车调度数据智能管理方法 |
CN118101937B (zh) * | 2024-04-19 | 2024-07-16 | 深圳对对科技有限公司 | 一种多媒体智能社交平台的素材高效传输方法及*** |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2670979A1 (fr) * | 1990-12-21 | 1992-06-26 | Philips Electronique Lab | Procede de segmentation binaire locale d'images numerisees, par seuillage d'histogramme. |
CN1314053A (zh) | 1999-06-14 | 2001-09-19 | 株式会社尼康 | 压缩编码方法,记录压缩编码程序的记录媒体,以及照相装置 |
JP3427820B2 (ja) * | 1999-06-14 | 2003-07-22 | 株式会社ニコン | 圧縮符号化方法,圧縮符号化プログラムを記録した記録媒体,および圧縮符号化方法を実施する電子カメラ |
US7349574B1 (en) * | 2002-10-11 | 2008-03-25 | Sensata Technologies, Inc. | System and method for processing non-linear image data from a digital imager |
TWI235706B (en) * | 2003-04-07 | 2005-07-11 | Sumitomo Heavy Industries | Method of controlling injection molding machine |
CN100481117C (zh) * | 2004-03-15 | 2009-04-22 | 武汉矽感科技有限公司 | 一种二维条码编解码方法 |
US7480421B2 (en) * | 2005-05-23 | 2009-01-20 | Canon Kabushiki Kaisha | Rendering of high dynamic range images |
US7557817B2 (en) * | 2005-08-23 | 2009-07-07 | Seiko Epson Corporation | Method and apparatus for overlaying reduced color resolution images |
EP1989882B1 (en) * | 2006-01-23 | 2015-11-11 | Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. | High dynamic range codecs |
EP3104603B2 (en) * | 2006-03-31 | 2022-06-08 | Koninklijke Philips N.V. | Efficient image receiver for multiple views |
JP4637812B2 (ja) * | 2006-11-09 | 2011-02-23 | オリンパス株式会社 | 画像信号処理装置、画像信号処理プログラム、画像信号処理方法 |
WO2008066840A2 (en) | 2006-11-27 | 2008-06-05 | Dolby Laboratories Licensing Corporation | Apparatus and methods for boosting dynamic range in digital images |
MX2009006405A (es) * | 2006-12-19 | 2009-06-23 | Koninkl Philips Electronics Nv | Metodo y sistema para codificar una señal de imagen, señal de imagen codificada, metodo y sistema para decodificar una señal de imagen. |
EP2116044A2 (en) * | 2007-01-30 | 2009-11-11 | Fergason Patent Properties, LLC | Image acquistion and display system and method using information derived from an area of interest in a video image implementing system synchronized brightness control and use of metadata |
US8085852B2 (en) | 2007-06-26 | 2011-12-27 | Mitsubishi Electric Research Laboratories, Inc. | Inverse tone mapping for bit-depth scalable image coding |
US8165393B2 (en) * | 2008-06-05 | 2012-04-24 | Microsoft Corp. | High dynamic range texture compression |
ES2389458T3 (es) * | 2008-07-10 | 2012-10-26 | The University Of Warwick | Métodos y dispositivos para la compresión de datos de vídeo HDR |
BRPI1009443B1 (pt) * | 2009-03-13 | 2021-08-24 | Dolby Laboratories Licensing Corporation | Método de geração de parâmetros de mapeamento de tons inverso, método de compactação de dados de vídeo e método para geração de um fluxo de bits de saída a partir de um fluxo de bits de entrada |
US8885977B2 (en) * | 2009-04-30 | 2014-11-11 | Apple Inc. | Automatically extending a boundary for an image to fully divide the image |
WO2010132237A1 (en) * | 2009-05-11 | 2010-11-18 | Dolby Laboratories Licensing Corporation | Light detection, color appearance models, and modifying dynamic range for image display |
US9087382B2 (en) * | 2009-06-29 | 2015-07-21 | Thomson Licensing | Zone-based tone mapping |
WO2011000392A1 (en) * | 2009-07-02 | 2011-01-06 | Hi-Key Limited | Method and camera system for improving the contrast of a camera image |
CN101991568B (zh) | 2009-08-12 | 2012-02-08 | 上海张江中药现代制剂技术工程研究中心 | 洋川芎内酯i在制备抗抑郁症药物、偏头痛药物及其他5-羟色胺能***相关疾病药物中的应用 |
RU2576484C2 (ru) * | 2010-03-03 | 2016-03-10 | Конинклейке Филипс Электроникс Н.В. | Устройства и способы для определения цветовых режимов |
EP2591602A1 (en) | 2010-07-06 | 2013-05-15 | Koninklijke Philips Electronics N.V. | Generation of high dynamic range images from low dynamic range images |
EP2702766B1 (en) | 2011-04-28 | 2017-06-14 | Koninklijke Philips N.V. | Apparatuses and methods for hdr image encoding and decoding |
-
2013
- 2013-03-25 EP EP13721100.9A patent/EP2880624B1/en active Active
- 2013-03-25 CN CN201380016969.1A patent/CN104541301B/zh active Active
- 2013-03-25 MX MX2014011418A patent/MX337444B/es active IP Right Grant
- 2013-03-25 US US14/387,575 patent/US9420288B2/en active Active
- 2013-03-25 ES ES13721100T patent/ES2737993T3/es active Active
- 2013-03-25 TR TR2019/11093T patent/TR201911093T4/tr unknown
- 2013-03-25 RU RU2014142986A patent/RU2643663C2/ru active
- 2013-03-25 BR BR112014023535-0A patent/BR112014023535B1/pt active IP Right Grant
- 2013-03-25 HU HUE13721100 patent/HUE044859T2/hu unknown
- 2013-03-25 WO PCT/IB2013/052349 patent/WO2013144809A2/en active Application Filing
- 2013-03-25 JP JP2015502508A patent/JP6262198B2/ja active Active
- 2013-03-25 PT PT13721100T patent/PT2880624T/pt unknown
- 2013-03-25 PL PL13721100T patent/PL2880624T3/pl unknown
- 2013-03-25 KR KR1020147029956A patent/KR102014127B1/ko active IP Right Grant
-
2016
- 2016-07-28 US US15/221,804 patent/US10057600B2/en active Active
-
2017
- 2017-12-13 JP JP2017238361A patent/JP6526776B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018061288A (ja) | 2018-04-12 |
RU2014142986A (ru) | 2016-05-20 |
JP6262198B2 (ja) | 2018-01-17 |
WO2013144809A2 (en) | 2013-10-03 |
CN104541301A (zh) | 2015-04-22 |
CN104541301B (zh) | 2017-11-03 |
JP6526776B2 (ja) | 2019-06-05 |
HUE044859T2 (hu) | 2019-11-28 |
JP2015517250A (ja) | 2015-06-18 |
ES2737993T3 (es) | 2020-01-17 |
WO2013144809A3 (en) | 2015-02-19 |
MX337444B (es) | 2016-03-07 |
BR112014023535A2 (es) | 2017-06-20 |
KR102014127B1 (ko) | 2019-08-26 |
US20150117791A1 (en) | 2015-04-30 |
TR201911093T4 (tr) | 2019-08-21 |
US9420288B2 (en) | 2016-08-16 |
EP2880624B1 (en) | 2019-05-08 |
US20170208344A1 (en) | 2017-07-20 |
KR20140146628A (ko) | 2014-12-26 |
PL2880624T3 (pl) | 2019-12-31 |
BR112014023535B1 (pt) | 2022-06-14 |
US10057600B2 (en) | 2018-08-21 |
EP2880624A2 (en) | 2015-06-10 |
PT2880624T (pt) | 2019-08-26 |
RU2643663C2 (ru) | 2018-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10057600B2 (en) | Brightness region-based apparatuses and methods for HDR image encoding and decoding | |
JP6700322B2 (ja) | 改善されたhdrイメージ符号化及び復号化方法、装置 | |
JP6596125B2 (ja) | Hdrイメージの符号化のためのコードマッピング関数を作成するための方法及び装置、並びに、かかる符号化イメージの使用のための方法及び装置 | |
JP6009538B2 (ja) | Hdr画像を符号化及び復号するための装置及び方法 | |
CN107005720B (zh) | 用于编码hdr图像的方法和装置 | |
JP6382805B2 (ja) | 改良されたhdr画像符号化及び復号方法並びに装置 | |
KR20180119684A (ko) | Hdr 비디오의 인코딩 및 디코딩 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Grant or registration |