ES2995217T3 - Rate-control-aware reshaping in hdr imaging - Google Patents

Rate-control-aware reshaping in hdr imaging Download PDF

Info

Publication number
ES2995217T3
ES2995217T3 ES20824404T ES20824404T ES2995217T3 ES 2995217 T3 ES2995217 T3 ES 2995217T3 ES 20824404 T ES20824404 T ES 20824404T ES 20824404 T ES20824404 T ES 20824404T ES 2995217 T3 ES2995217 T3 ES 2995217T3
Authority
ES
Spain
Prior art keywords
luma
range
value
codeword
luma value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES20824404T
Other languages
English (en)
Inventor
Harshad Kadu
Ji Qi
Guan-Ming Su
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dolby Laboratories Licensing Corp
Original Assignee
Dolby Laboratories Licensing Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dolby Laboratories Licensing Corp filed Critical Dolby Laboratories Licensing Corp
Application granted granted Critical
Publication of ES2995217T3 publication Critical patent/ES2995217T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Abstract

Dada una imagen de entrada en un alto rango dinámico (HDR) que se asigna a una segunda imagen en un segundo rango dinámico utilizando una función de remodelación, para mejorar la eficiencia de codificación, un generador de función de remodelación puede ajustar el rango de palabras de código de la entrada HDR bajo ciertos criterios, como para imágenes HDR ruidosas con un rango de palabras de código relativamente pequeño. Se proporciona un ejemplo de generación de un escalador para ajustar el rango de palabras de código HDR en función del rango de palabras de código original y una métrica del porcentaje de puntos de borde en la imagen HDR. La función de remodelación ajustada permite un control de velocidad más eficiente durante la compresión de imágenes remodeladas. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Remodelación consciente del control de tasa en imágenes HDR
Referencia cruzada a solicitudes relacionadas
Esta solicitud reivindica el beneficio de prioridad de la solicitud de patente provisional en EE.UU. 62/940,942, presentada el 27 de noviembre 2019 y la solicitud de patente EP 19211730.7, presentada el 27 de noviembre de 2019.
Tecnología
La presente descripción se refiere en general a imágenes. Más particularmente, una realización de la presente invención se refiere a mejorar la eficiencia de codificación de imágenes de alto rango dinámico (HDR) reconstruidas a partir de imágenes de rango dinámico estándar (SDR) usando funciones de remodelación.
Antecedentes
Como se usa en el presente documento, el término "rango dinámico" (DR) puede referirse a una capacidad del sistema visual humano (HVS) para percibir un intervalo de intensidad (por ejemplo, luminancia, luma) en una imagen, por ejemplo, desde grises más oscuros (negros) a blancos más brillantes (resaltados). En este sentido, DR se refiere a una intensidad 'relacionada con la escena'. DR también puede referirse a la capacidad de un dispositivo de visualización para representar adecuadamente o aproximadamente un rango de intensidad de una amplitud particular. En este sentido, DR se refiere a una intensidad 'referida al elemento de visualización'. A menos que se especifique explícitamente que un sentido particular tiene una significación particular en cualquier punto de la descripción en el presente documento, debe inferirse que el término puede usarse en cualquier sentido, por ejemplo, indistintamente.
Como se usa en el presente documento, el término alto rango dinámico (HDR) se refiere a una amplitud de DR que abarca los 14-15 órdenes de magnitud del sistema visual humano (HVS). En la práctica, el DR sobre el que un ser humano puede percibir simultáneamente una amplia amplitud en el intervalo de intensidad puede truncarse algo, en relación con el HDR. Como se usa en el presente documento, los términos rango dinámico visual (VDR) o rango dinámico mejorado (EDR) pueden referirse individual o indistintamente al DR que puede percibirse dentro de una escena o imagen por un sistema visual humano (HVS) que incluye movimientos oculares, lo que permite algunos cambios de adaptación de la luz a través de la escena o imagen. Como se usa en el presente documento, VDR puede referirse a un<d>R que abarca de 5 a 6 órdenes de magnitud. Por lo tanto, aunque quizás algo más estrecho en relación con la escena verdadera referida HDR, VDR o EDR representa sin embargo una amplia amplitud de DR y también puede denominarse HDR.
En la práctica, las imágenes comprenden uno o más componentes de color (por ejemplo, luma Y y croma Cb y Cr) en donde cada componente de color está representado por una precisión de n bits por píxel (por ejemplo, n=8). Por ejemplo, usando codificación de luminancia gamma, las imágenes en las que n < 8 (por ejemplo, imágenes JPEG de color de 24 bits) se consideran imágenes de rango dinámico estándar, mientras que las imágenes en las que n > 10 pueden considerarse imágenes de rango dinámico mejorado. Las imágenes HDR también pueden almacenarse y distribuirse usando formatos de punto flotante de alta precisión (por ejemplo, 16 bits), tales como el formato de archivo OpenEXR desarrollado por Industrial Light and Magic.
La mayoría de los elementos de visualización de escritorio de consumo soportan actualmente una luminancia de 200 a 300 cd/m2 o nits. La mayoría de las HDTV de consumo varían de 300 a 500 nits, alcanzando los nuevos modelos 1000 nits (cd/m2). Dichos elementos de visualización convencionales tipifican así un rango dinámico inferior (LDR), también denominado rango dinámico estándar (SDR), en relación con HDR. A medida que la disponibilidad de contenido de HDR crece debido a los avances tanto en el equipo de captura (por ejemplo, cámaras) como en los elementos de visualización HDR (por ejemplo, el monitor de referencia profesional PRM-4200 de Dolby Laboratories), el contenido HDR puede clasificarse en colores y mostrarse en elementos de visualización HDR que soportan rangos dinámicos más altos (por ejemplo, de 1.000 nits a 5.000 nits o más).
En una canalización de imágenes tradicional, las imágenes capturadas se cuantifican usando una función optoelectrónica no lineal (OETF), que convierte la luz de escena lineal en una señal de vídeo no lineal (por ejemplo, RGB o YCbCr gamma-codificados). A continuación, en el receptor, antes de ser presentado en el elementos de visualización, la señal es procesada por una función de transferencia electro-óptica (EOTF) que traduce valores de señal de vídeo a valores de color de pantalla de salida. Tales funciones no lineales incluyen la curva "gamma" tradicional, documentada en ITU-R Rec. BT.709 y BT. 2020, la curva "PQ" (cuantificación perceptual) descrita en SMPTE ST 2084, y la curva "HybridLog-gamma" o "HLG" descrita en y Rec. ITU-R BT. 2100.
Como se usa en el presente documento, el término "remodelación hacia delante" indica un proceso de correspondencia de muestra a muestra o de palabra de código a palabra de código de una imagen digital desde su profundidad de bits original y distribución o representación de palabras de código originales (por ejemplo, gamma, PQ, HLG y similares) a una imagen de la misma o diferente profundidad de bits y una distribución o representación de palabras de código diferentes. La remodelación permite una compresibilidad mejorada o una calidad de imagen mejorada a una tasa de bits fija. Por ejemplo, sin limitación, la remodelación puede aplicarse a vídeo HDR codificado con PQ de 10 bits o 12 bits para mejorar la eficiencia de codificación en una arquitectura de codificación de vídeo de 10 bits. En un receptor, después de descomprimir la señal recibida (que puede o no ser remodelada), el receptor puede aplicar una "función de remodelación inversa (o hacia atrás)" para restaurar la señal a su distribución de palabras de código original y/o para lograr un rango dinámico más alto.
Como se usa en el presente documento, el término "control de tasa" se refiere a ajustar la cuantificación durante la compresión de imagen y vídeo para lograr objetivos específicos relacionados con la tasa de bits global y/o la calidad de imagen del flujo de bits codificado. Las técnicas tradicionales de remodelación son independientes de los mecanismos de control de tasa dentro de un códec de vídeo. Como se aprecia por los inventores en este documento, se desean técnicas mejoradas para la remodelación consciente del control de tasa para reducir los artefactos de codificación en la codificación HDR. El documento D1 MINOO (ARRIS) K ET AL: "Description of the reconformer parameters derivation process in ETM reference software", 23. Reunión j Ct -VC; 19-2-2016 - 26-2-2016; SAN DIEGO; (EQUIPO DE COLABORACIÓN CONJUNTA EN LA CODIFICACIÓN DE VÍDEO DE ISO/IEC JTC1/SC29/WG11 E ITU-T SG.16); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/, no. JCTVC-W0031, 11 de enero de 2016 (2016-01-11La Patente de Estados Unidos), describe varias técnicas para generar una función de remodelación.
Los enfoques descritos en esta sección son enfoques que podrían perseguirse, pero no necesariamente enfoques que se han concebido o perseguido anteriormente. Por lo tanto, a menos que se indique lo contrario, no debe asumirse que ninguno de los enfoques descritos en esta sección se califica como técnica anterior simplemente en virtud de su inclusión en esta sección. De manera similar, los problemas identificados con respecto a uno o más enfoques no deben suponer que se hayan reconocido en ninguna técnica anterior con base en esta sección, a menos que se indique lo contrario.
Breve descripción de los dibujos
Una realización de la presente invención se ilustra a modo de ejemplo, y no a modo de limitación, en las figuras de los dibujos adjuntos y en los que números de referencia similares se refieren a elementos similares y en los que:
La FIG. 1A representa un codificador de capa única de ejemplo para datos HDR usando una función de remodelación según la técnica anterior;
la FIG. 1B representa un decodificador HDR de ejemplo correspondiente al codificador de la figura 1A, según la técnica anterior;
la FIG. 2A representa un ejemplo de parámetros relacionados con el rango real de palabras de código luma HDR dentro de una escena;
la FIG. 2B representa un ejemplo de parámetros relacionados con un rango de palabras de código luma HDR virtual, ajustado según una realización de esta invención;
la FIG. 3 representa un ejemplo de una correspondencia de remodelación hacia delante según se ajusta según una realización de esta invención;
la FIG. 4A y la FIG. 4B representan curvas de ejemplo para un parámetro de adaptación (M) según realizaciones de esta invención;
la FIG. 5 representa un segundo ejemplo de correspondencia de remodelación hacia delante según se ajusta según una realización de esta invención; y
la FIG. 6 representa un proceso de ejemplo para la remodelación consciente del control de tasa según una realización de esta invención.
Descripción de realizaciones de ejemplo
El diseño de funciones de remodelación conscientes del control de tasa para codificar imágenes HDR y contenido de vídeo se describe en el presente documento. En la siguiente descripción, con fines explicativos, se exponen numerosos detalles específicos con el fin de proporcionar una comprensión exhaustiva de la presente invención. Será evidente, sin embargo, que la presente invención puede ponerse en práctica sin estos detalles específicos. En otros casos, las estructuras y dispositivos bien conocidos no se describen en detalle exhaustivo, para evitar ocluir, ocultar u ofuscar innecesariamente la presente invención.
Compendio
Las realizaciones de ejemplo descritas en el presente documento se refieren al diseño de funciones de remodelación sensibles al control de tasa para la codificación eficiente de imágenes HDR. En una realización, en un aparato que comprende uno o más procesadores, un procesador recibe una o más imágenes de entrada en un primer rango dinámico (por ejemplo, un rango altamente dinámico), calcula un primer rango de palabras de código para píxeles de luma en la una o más imágenes de entrada, calcula una métrica de ruido para los píxeles de luma en la una o más imágenes de entrada, calcula un escalador para ajustar el primer intervalo de palabras de código con base en el primer rango de palabras de código y la métrica de ruido, y si el escalador es mayor que uno, entonces a) genera un segundo rango de palabras de código para los píxeles de luma en la una o más imágenes de entrada con base en el escalador y el primer rango de palabras de código, en donde el segundo rango de palabras de código es mayor que el primer rango de palabras de código, y b) genera una función de remodelación de luma directa que hace corresponder valores de píxeles de luma desde el primer rango dinámico a un segundo rango dinámico (por ejemplo, un rango dinámico estándar) con base en el segundo rango de palabras de código; en otro caso genera la función de remodelación de luma hacia delante con base en el primer rango de palabras de código.
Sistema de codificación de ejemplo
Como se describe en la Patente de los EE.UU. de N°. 10,032,262, "Block-based content-adaptive reshaping for high dynamic range images," por A. Kheradmand et al, a denominarse patente '262, la FIG. 1A y la FIG. iB ilustran un marco de trabajo de códec compatible hacia atrás de capa única de ejemplo usando remodelación de imágenes. Más específicamente, la FIG. 1A ilustra una arquitectura de códec de lado de codificador de ejemplo, que puede implementarse con uno o más procesadores informáticos en un codificador de vídeo de flujo ascendente. La FIG. 1B ilustra una arquitectura de códec de lado de decodificador de ejemplo, que también puede implementarse con uno o más procesadores informáticos en uno o más decodificadores de vídeo de flujo descendente.
Bajo este marco de trabajo, dado el contenido (120) HDR de referencia, el contenido (134) SDR correspondiente (también denominado capa base (BL) o contenido remodelado) se codifica y transmite en una única capa de una señal (144) de vídeo codificada por un dispositivo de codificación ascendente que implementa la arquitectura de códec del lado del codificador. El contenido SDR se recibe y decodifica, en la única capa de la señal de vídeo, mediante un dispositivo de decodificación aguas abajo que implementa la arquitectura de códec del lado del decodificador. Los metadatos (152) de remodelación también se codifican y transmiten en la señal de vídeo con el contenido SDR de modo que los dispositivos de visualización HDR pueden reconstruir el contenido de HDR con base en el contenido SDR y los metadatos de remodelación. Sin pérdida de generalidad, en algunas realizaciones, como en sistemas no compatibles con versiones anteriores, el contenido SDR puede no ser vigilable por sí mismo, sino que debe ser vigilado en combinación con la función de remodelación posterior que generará contenido SDR o HDR vigilable. En otras realizaciones que soportan compatibilidad hacia atrás, los decodificadores de SDR heredados pueden aún reproducir el contenido SDR recibido sin emplear la función de remodelación hacia atrás.
Como se ilustra en la FIG. 1A, una imagen (120) HDR dada y un rango dinámico objetivo, después de generar, en el paso 130, una función (132) de remodelación hacia adelante; dada la función de remodelación hacia adelante, se aplica paso (132) de correspondencia de remodelación hacia delante a las imágenes (120) HDR para generar la capa (134) base SDR remodelada. Un bloque (142) de compresión (por ejemplo, un codificador implementado según cualquier algoritmo de codificación de vídeo conocido, como AVC, h Ev C, AV1 y similares) comprime/codifica las imágenes (134) SDR en una única capa (144) de una señal de vídeo. Además, un generador (150) de función de remodelación hacia atrás puede generar una función de remodelación hacia atrás que puede transmitirse a un decodificador como metadatos (152). En algunas realizaciones, los metadatos (152) pueden representar la función (130) de remodelación hacia delante, por lo tanto, sería hasta el decodificador generar la función de remodelación hacia atrás (no mostrada).
Los ejemplos de metadatos de remodelación inversa que representan/especifican las funciones de remodelación inversa óptimas pueden incluir, pero no se limitan necesariamente a, cualquiera de: función de correspondencia de tonos inversa, funciones de correspondencia de luma inversa, funciones de correspondencia de croma inversa, tablas de búsqueda (LUT), polinomios, coeficientes/parámetros de gestión de visualización inversa, etc. En diversas realizaciones, las funciones de remodelación inversa de luma y las funciones de remodelación inversa de croma pueden derivarse/optimizarse conjuntamente o por separado, pueden derivarse usando una variedad de técnicas, por ejemplo, y sin limitación, como se describe en la patente '262.
Los metadatos (152) de remodelación hacia atrás, como se generan por el generador (150) de función de remodelación hacia atrás con base en las imágenes (134) SDR y las imágenes (120) HDR objetivo, pueden multiplexarse como parte de la señal 144 de vídeo, por ejemplo, como mensajería de información de mejora suplementaria (SEI).
En algunas realizaciones, los metadatos (152) de remodelación hacia atrás se transportan en la señal de vídeo como parte de los metadatos de imagen globales, que se transportan por separado en la señal de vídeo de la capa única en la que las imágenes SDR se codifican en la señal de vídeo. Por ejemplo, los metadatos (152) de remodelación hacia atrás pueden codificarse en un flujo de componentes en el flujo de bits codificado, flujo de componentes que puede o no estar separado de la capa única (del flujo de bits codificado) en la que se codifican las imágenes (134) SDR.
Por lo tanto, los metadatos (152) de remodelación hacia atrás pueden generarse o pregenerarse en el lado del codificador para aprovechar los recursos informáticos potentes y los flujos de codificación fuera de línea (incluyendo, pero sin limitarse a, pases múltiples adaptativos de contenido, operaciones de búsqueda anticipada, correspondencia de luma inversa, correspondencia de croma inversa, aproximación y/o transferencia de histograma basado en CDF, etc.) disponibles en el lado del codificador.
La arquitectura del lado del codificador de la FIG. 1A puede usarse para evitar codificar directamente las imágenes (120) HDR objetivo en imágenes HDR codificadas/comprimidas en la señal de vídeo; en su lugar, los metadatos (152) de remodelación hacia atrás en la señal de vídeo pueden usarse para permitir que los dispositivos de descodificación aguas abajo remodelen hacia atrás las imágenes (134) SDR (que se codifican en la señal de vídeo) en imágenes reconstruidas que son idénticas a o se aproximan cercanamente/óptimamente a las imágenes (120) HDR de referencia.
En algunas realizaciones, como se ilustra en la FIG. 1B, la señal de vídeo codificada con las imágenes SDR en la capa (144) única y los metadatos (152) de remodelación hacia atrás como parte de los metadatos de imagen globales se reciben como entrada en el lado del decodificador del marco de trabajo del códec. Un bloque (154) de descompresión descomprime/decodifica datos de vídeo comprimidos en la capa (144) única de la señal de vídeo en las imágenes (156) SDR decodificadas. La descompresión 154 corresponde típicamente a la inversa de la compresión 142. Las imágenes (156) SDR decodificadas pueden ser las mismas que las imágenes de SDR (134), sujetas a errores de cuantificación en el bloque (142) de compresión y en el bloque (154) de descompresión, que pueden haber sido optimizados para dispositivos de visualización SDR. En un sistema compatible con versiones anteriores, las imágenes (156) SDR decodificadas pueden emitirse en una señal de vídeo SDR de salida (por ejemplo, a través de una interfaz HDMI, a través de un enlace de vídeo, etc.) para renderizarse en un dispositivo de visualización SDR.
Opcionalmente, alternativamente, o además, en la misma u otra realización, un bloque 158 de remodelación hacia atrás extrae los metadatos (152) de remodelación hacia atrás (o hacia delante) de la señal de vídeo de entrada, construye las funciones de remodelación hacia atrás con base en los metadatos (152) de remodelación, y realiza operaciones de remodelación hacia atrás en las imágenes (156) SDR decodificadas con base en las funciones de remodelación hacia atrás óptimas para generar las imágenes (160) remodeladas hacia atrás (o imágenes HDR reconstruidas). En algunas realizaciones, las imágenes remodeladas hacia atrás representan imágenes HDR de calidad de producción o de calidad cercana a la producción que son idénticas a o se aproximan estrechamente/óptimamente a las imágenes (120) HDR de referencia. Las imágenes (160) remodeladas hacia atrás pueden emitirse en una señal de vídeo HDR de salida (por ejemplo, a través de una interfaz HDMI, a través de un enlace de vídeo, etc.) para renderizarse en un dispositivo de visualización HDR.
En algunas realizaciones, las operaciones de gestión de visualización específicas para el dispositivo de visualización de HDR pueden realizarse en las imágenes (160) remodeladas hacia atrás como parte de las operaciones de renderización de imágenes HDR que renderizan las imágenes (160) remodeladas hacia atrás en el dispositivo de visualización HDR.
Remodelación consciente de control de tasa
El control de tasa es una parte integral de cualquier canal de compresión de vídeo. El principio detrás del control de tasa es ajustar cuánta imagen se cuantifica para lograr una tasa de bits objetivo. En general, más bits por trama corresponden a una mejor calidad visual; sin embargo, la asignación de más bits por trama tiene el coste de un mayor ancho de banda. El control de tasa trata de encontrar un equilibrio entre una tasa binaria objetivo y una calidad aceptable.
Por ejemplo, en la mayoría de los esquemas de control de tasa, las imágenes con texturas complejas se consideran visualmente significativas y se asignan más bits durante la cuantificación; sin embargo, las imágenes ruidosas con contenido perceptualmente irrelevante también pueden mostrar texturas complejas y pueden terminar asignándose más bits de los necesarios. La asignación de más bits para contenido perceptivamente irrelevante corresponde a la asignación de menos bits para contenido real, lo que es altamente ineficiente e incluso puede dar como resultado una menor calidad visual general.
Como se representa en la FIG. 1A, en algunas realizaciones, generar una función de remodelación (por ejemplo, el bloque 130) puede ser completamente independiente y desconocer la optimización del control de tasa en el codificador (142) subyacente. Como resultado, algunas escenas oscuras que son apenas visibles a simple vista, pero contienen ruido de alta frecuencia, pueden consumir muchos bits, y escenas con un rango de palabras de código HDR más pequeño pueden hacerse corresponder a un rango de palabras de código más amplio en la capa base y usar un número significativo de bits. Para mejorar la asignación de bits, se propone una nueva técnica de remodelación que ajusta la remodelación original con base en el mecanismo de control de tasa esperado, proporcionando así imágenes de mayor calidad.
Remodelación de imagen
Durante la remodelación, cada canal o componente de color de una trama HDR se hace corresponder, por separado, a la capa (134) base. La correspondencia de canales HDR a la capa base se denomina comúnmente remodelación hacia delante. Por ejemplo, el canal de luma en HDR se hace corresponder al canal de luma de capa base usando una curva de remodelación directa de luma. Los canales de croma en HDR se hacen corresponder por separado a los canales de croma de capa base usando sus curvas de remodelación de croma hacia delante respectivas. Para lograr la mayor calidad visual, la capa base está diseñada para ocupar la mayor parte del rango de palabras de código de capa base; sin embargo, en ciertas condiciones (por ejemplo, para contenido HDR ruidoso con un rango de palabras de código pequeño), no hay necesidad de abarcar todo el rango de palabras de código de capa base ya que apenas mejora la calidad visual. En su lugar, la tasa de bits puede reducirse restringiendo el contenido de HDR de rango de palabras de código pequeño a un rango de palabras de código más pequeño en la capa base.
Sea la función de remodelación hacia delante del canal de luma la que se denotará fi_, de manera que hace corresponder valores<vl>de luma HDR a valores<sl>de luma de capa base , es decir.<sl>= fi_ {<vl>}. En una realización, sin limitación, la función puede ser monótonamente no decreciente.
Como se usa en el presente documento, los términos "escena" o "grupo de imágenes" se refieren a un conjunto de tramas consecutivas en una secuencia de vídeo con características de color o rango dinámico similares. Aunque las realizaciones de ejemplo pueden referirse a una escena, una función de remodelación hacia delante y/o una función de remodelación hacia atrás correspondiente como se describe en el presente documento pueden construirse con métodos similares para uno de: una única imagen, un único grupo de imágenes, una escena, una ventana de tiempo dentro de una única escena o un único programa multimedia, etc.
Supongamos que los valores de luma HDR mínimo y máximo en la i-ésima escena se dan porEminy vL,max respectivamente. Para generar una capa base de profundidad Bs de bits, - la función fi_ típicamente intenta hacerÍ y1corresponder el valor vL,min mínimo de luma HDR a cero (u otro valor mínimo legal) y el valor Emax máximo de luma HDR a la palabra de código de capa base más grande 2Bs -1 (u otro valor de palabra de código máximo legal). Por tanto, supongamos
/r .(> í« J = < mi, , = 0 , (1)
Jff.V<(v>L<1 m ax )/ - 1 Lmax = 2 ¿ ° s - ] 1 ■>
fví
Las palabras de código HDR están en el rango • 11 L,maxJ se hacen corresponder a palabras de código de lumar ‘
de capa base en el rango [0, 2Bs -1]. Esto da el rango de palabras de codigo de palabras de codigo' lde luma de capa base como,
l l l1
rL ~ SLmax ~ SLmm ~^ ^•(2) Independientemente del rango de palabras de código de palabras de código HDR, normalmente, la capa base abarca todo el rango de palabras de código permitido.
Para canales de croma, la correspondencia es ligeramente diferente. Supóngase que fC<0>y fC<1>son las funciones para la correspondencia directa de los canales C0 y C1 respectivamente (por ejemplo, Cb y Cr en una representación YCbCr). Estas funciones también deben ser monótonamente no decrecientes. En una realización, el rango de palabrasr ‘
de codigoexde croma de capa base se calcula usando la siguiente lógica. Como el procedimiento es el mismo para C0 y C1, los subíndices relacionados con croma se reemplazan por Cx.
donde Kc<0>y Kc<1>son constantes menores o iguales a 1,0 y dependen del espacio de color (por ejemplo, ajustado a valores por defecto de 0,5 para el espacio de color IPTPQc2, una variante del espacio de color ICtCp). Las funciones de remodelación de croma hacia delante fc<0>y fc<1>, son independientes de luma, pero el rango de las palabras de código de croma todavía está gobernado por los valores de luma mínimo y máximo. Después de calcular los rangos de palabras de código, el mínimo y el máximo de las palabras de código de canal Cx de capa base es,
Las palabras de código de canal Cx HDR en el rango | l a,min’ vcr,maxi se hacen corresponder al rango íXmin’ JCi,maxJ de palabras de código de canal Cx de capa base . En una realización, la función que hace corresponder las palabras de código de canal Cx HDR a las palabras de código de capa base pueden estar dadas por:
donde los símbolosvo y '<v>ci> respectivamente, representan cualquier valor de palabra de código de capa base o HDR.
Ajuste de rango de palabras de código para un control mejorado de tasa
Las funciones de remodelación intentan hacer corresponder palabras de código HDR con un rango de palabras de código de capa base. Un rango más amplio de palabras de código en la capa base es bueno para mantener una alta calidad visual; sin embargo, en ciertos casos (por ejemplo, para una señal HDR ruidosa con rango de palabras de código estrecho) el número de bits necesarios para comprimir dicha capa base es mucho más significativo que la mejora de la calidad visual. Un esquema de remodelación compatible con el control de tasa debería ayudar a un codificador a asignar de manera inteligente menos bits a tal contenido de HDR, mientras que el contenido<h>D<r>habitual debería pasar sin cambios.
Para diseñar tal esquema, se tendrá que detectar primero tramas HDR con tales características, y luego ajustar (por ejemplo, reducir) el rango de palabras de código de capa base. La reducción del rango de palabras de código de capa base disminuirá los residuos durante la estimación de movimiento. Los residuos más pequeños reducen la magnitud de los coeficientes DCT, requiriendo así que se codifiquen menos bits después de la codificación por entropía.
En una realización, una manera de disminuir el rango de palabras de código de capa base es ajustando el rango de palabras de código HDR percibido, por ejemplo, disminuyendo artificialmente el valor HDR mínimo y/o aumentando el valor HDR máximo para el canal de luma. Obsérvese que no hay cambio en la imagen HDR real. Simplemente se ajustan los valores HDR de luma mínimo y máximo calculados de modo que se altere la curva de remodelación dei —iluma hacia delante. Estos valores actualizados (ajustados o virtuales) están representados por Emín yvL,m^respectivamente, de tal modo que,
Para el canal de luma, la funciónf¡de remodelación hacia delante actualizada hará corresponder los valores mínimos
y máximos virtuales<V>L<,'>’m<■>n y<v>i<'>a la capa de base como:
JÁK..)=K...<=o. (7)>
Comof ies una función monótona no decreciente, los valores reales mínimo y máximo, es decir, v¿,m¡Q y se asignará a diferentes palabras de código de capa base:
A ( v U ) > 0 , (8)
Con esta curva de remodelación directa de luma actualizada, el rango de palabras de código de luma de capa base
correspondida se encogerá,Y ’l1<<>-<s>’ Yl1, tal como:
En resumen, la disminución del mínimo y/o el aumento de los valores máximos de luma HDR reducirá el rango de palabras de código de luma de la capa base y permitirá un control de tasa más eficiente durante la etapa de compresión posterior.
Para los canales de croma, el rango de palabras de código de capa base depende de los valores mínimo y máximo HDR de luma. Con los valores actualizados (virtuales), los rangos de palabras codificadas de la capa base de croma también cambiarán de la siguiente manera:
Como denominador actualizado<y>¿>max<— V1>^ min es mayor, el rango de palabras de código se reduce, es decir/ Te *x -^ V'c1*. Obsérvese que el numerador de la ecuación (10) es el mismo que antes, como Esto cambiará el rango L Cv’min’ Cr’maxJ<i>de\acapa base de cromade la siguiente manera:
Generando valores de luma HDR mínimo y máximo virtuales, el rango de palabras de código de capa base de luma y croma puede hacerse más pequeño que antes. Este cambio puede ayudar a reducir la tasa de bits. La cantidad en la que estos valores deben cambiarse se controla por la intensidad de un parámetro de reducción del rango de palabras de código de la capa base, que se indicará como M. Los detalles sobre cómo derivar M se proporcionan más adelante.
vi - vi
Como se ha explicado, ajustando el valor -mm mínimo de luma HDR y el valor L’max máximo de luma HDR uno puede reducir el rango de palabras de código de la capa base, reduciendo así efectivamente la tasa de bits. Como serepresenta en la FIG. 2A, supongamos sonÁ^r,yA,L-,tal que,
y. ■ v,vT
donde, L mi" ’■ sy ¿'max denota los valores de valor de luma de HDR mínimo, promedio y máximo para la escena i. La diferencia entre los valores de luma de HDR mínimo y máximo, denotada comoA¿ para la escena i puede derivarse como
Como ejemplo, la Tabla 1 muestra en pseudocódigo un algoritmo de ejemplo para calcular A Una trama j de canal de luma en la escena i se denota porj.Lcon anchura W<l>y altura H<l>. Un píxel específico en esta trama está JTíjjj fjJ
representado por TiV ’'donde (m, n) es la ubicación del píxel. Sea T el número total de tramas en la escena.
^ ^ Í
Además, supongamos que •7’i ’min,j,i,axgy<■ j,l,max son |os valores de luma HDR mínimo, promedio y máximo para la trama j canal de luma.
Calcular el escalador M
En una realización, el valor de la adaptación M de rango de palabras de código de capa base es mayor o igual a 1. Cuando M = 1, no se realiza una remodelación consciente del control de tasa. Para ello M > 1, los valores i , - y z,,max de luma HDR mínimo y máximo se trasladan a los valores
L.min= max(o, v' , - A í x A 'J ,
En general, si M > 1, como se representa en la FIG. 2B, v’¿,m¡n disminuirá y v¿ aumentara. Esto disminuirá el rango
<" J>de palabras de código de la capa base actualizado comoJ- 'l¿es una función monótona no decreciente. Como se ha analizado anteriormente, el rango rc.< de palabras de código de capa base de croma también se encogerá más
según el denominador v’¿.m¡ix- v i,min aumente, como se explica. Por lo tanto, el aumento de M reducirá los bits necesarios para codificar esta trama o escena particular, permitiendo que se asignen más bits en tramas o escenas que realmente requieren una tasa de bits más alta.
Como se representa en la ecuación (14), en una realización típica, M puede usarse para ajustar ambas v/..mil y r7;. En otra realización, puede desearse ajustar solo uno de los dos valores límite (por ejemplo, para preservar mejor losi ipuntos de alta luminosidad o la oscuridad). Por lo tanto, se puede dejar una vL.mins¡n cambios y sólo se ajustai i
mediante la ecuación (14b), o una puede dejarse v¿mai sin cambios y ajustar V v ir.min usando la ecuación (14a).
La FIG. 3 representa un ejemplo de cómo el ajuste de los valores HDR mínimo y máximo afecta al rango de palabras de código en la capa base. La figura proporciona una representación muy burda de una función de remodelación hacia delante para ayudar a explicar el concepto de núcleo. El gráfico de la figura no está dibujado a escala. A medida que la correspondencia (310) de remodelación hacia delante de luma original se actualiza a la correspondencia (320)i •—i
ajustada, el rango de palabras de código de capa base se reduce de r¿ a r¿ *. El cambio está gobernado por la resistencia del factor de reducción de la capa base, es decir, M. También se producen ajustes similares para las cartografías de croma.
En la ecuación (14), se ajusta iplicandoMy A1, por M, y estos cambios afectan implícitamente al rango de palabras de código SDR. Obsérvese que el mismo efecto exacto puede lograrse estrechando directamente el rango de palabras de código SDR original. Por ejemplo, supongamos
A continuación, para un rango [0, 2Bs) SDR original, para M > 1, el rango de palabras de código SDR actualizado puede calcularse como
y
Criterios para ajustar el rango de palabras de código de HDR
Generar valores de luma HDR virtuales asegurará que los rangos de palabras de código de capa base para los canales de luma y croma se reducirán. Esta reducción dará como resultado una tasa de bits más baja para codificar dicha capa base; sin embargo, dicho ajuste debe realizarse solo para seleccionar escenas. En una realización, sin limitación, se sugiere que las escenas que tienen un rango de palabras de código HDR pequeño y un contenido similar al ruido, de alta frecuencia deben hacerse corresponder a un rango de palabras de código SDR más pequeño. En tal caso, se propone un algoritmo de tres pasos:
1. Calcular características para identificar contenido HDR ruidoso con rango de palabras de código relativamente pequeño
2. Evaluar la intensidad de la reducción del rango de palabras de código de la capa base a partir de los valores de características
3. Construir curvas de remodelación hacia delante modificadas y generar la capa base
Como antes, las discusiones pueden referirse a una escena; sin embargo, una escena puede ser cualquier grupo de tramas contiguas o incluso una única trama. Dados los valores de luminancia mínimo, promedio y máximo en una
escena, en una realización,<Á>¿ (véase la ecuación (13)), puede usarse para identificar si el contenido HDR de entrada
tiene o no un rango de palabras de código pequeño. Por ejemplo, si<A‘>es menor que un cierto umbral (por ejemplo, ThHDR) entonces la escena puede clasificarse como una escena con un rango de palabras de código HDR pequeño.
Como es conocido por un experto en la técnica, existen una variedad de algoritmos para clasificar regiones de una imagen o una trama como "ruidosas". Por ejemplo, se pueden calcular estadísticas basadas en bloques, tales como su media, varianza, y o desviación estándar, y usar estos datos estadísticos para la clasificación. En una realización, sin limitación, se obtiene una métrica de ruido en la imagen con base en el número de píxeles en una trama clasificados como "bordes". A continuación se proporcionan detalles.
Para detectar contenido ruidoso, se puede comenzar calculando el número total de puntos de borde en cada canal de i ' i ' r
luma y color de una trama. Supongamos quei ’L’ ^ co y ^ C1 denotan los canales normalizados de luma y croma pií'
de la trama j en la escena i es d e c ir .i*L .Cada valor de píxel en una imagen normalizada está en el rango [0, 1). Consideremos Bv para ser la profundidad de bits HDR de origen.
l ‘jM{m,n) = FijX{in,n)/2B'.para todome [0,HL -1]yne[0,VV¿ -l] ,(18)
l'jC¡.[in,n) = ¥j/>(m,n)f2B‘.paratodome [O.HCt-1] y n e fO .W ^-l].
Supongamos que la altura y la anchura de la imagen del canal de luma sean Hl, Wl respectivamente, y Hcx, Wcx denota la altura y la anchura de los canales de croma. En una realización, se puede aplicar cualquier técnica conocida en la técnica de detección de bordes (por ejemplo, el operador Sobel y similares) para identificar bordes en el canal de luma. Por ejemplo, en una realización, los operadores Sobel están dados por
rizontal y vertical respectivamente,
para el canal de luma.
donde el símbolo ® denota un operador convolucional 2D y<c 1>j-les la imagen de magnitud de gradiente de luma. También se evalúan las imágenes en gradiente para canales de croma.
Después de calcular la imagen de gradiente, los píxeles que tienen una magnitud de gradientes por encima de un umbral Thj se designan como puntos de borde. Elegir un umbral fijo puede no ser muy fiable, por lo tanto, en una realización, puede ser preferible un umbral adaptativo, calculado de la siguiente manera:
en la que el valor del umbral está dentro del rango [0,001, 1], La constante 0,001 pone un límite inferior en el valor A . M A’.r ,
umbral, por lo que no debe reducirse a cero. Las cantidadesJ-L’1yhL’~sor\diferencias de intensidad y
aproximadamente análogas a los gradientes. Tomar el mínimo de x da una estimación del rango de diferencias normalizadas en forma de píxeles dentro de la imagen y proporciona un umbral adecuado. Obsérvese que el valor del umbral está determinado solamente por los valores de luma; sin embargo, se aplica el mismo umbral tanto a imágenes de gradiente de canal de luma como de croma. Aunque el umbral puede cambiar para cada trama, no tiene un impacto directo en la coherencia temporal de todo el algoritmo.
Para imágenes ruidosas con un rango de palabras de código pequeño,<A->iJJo<A>J-1-2son pequeños, por lo que el umbral Thj es más bajo y se detectan más puntos como puntos de borde. Por el contrario, las imágenes normales
tienen valores más altos para<A->i-L-]o<A>i,uilo que aumenta el umbral y reduce el número de puntos de borde detectados.
Indicar el porcentaje de píxeles de borde en los canales de luma o croma mediante j ’coy TC1 respectivamente. Para cada píxel en la imagen de gradiente, si el valor es mayor o igual que el umbral Thj se considera un píxel de borde. Supóngase que ^ es la función de identidad,
Supongamos quer ies el valor máximo entre los tres canales de esta trama y P ser el máximo de todas los tramas en la escena.
La Tabla 2 proporciona un algoritmo de ejemplo para calcular el porcentaje de punto de borde en una trama usando las ecuaciones (19) a (23). En general, el porcentaje de píxeles de borde es una característica relevante para detectar ruido de alta frecuencia. Las imágenes ruidosas tienen texturas con píxeles que tienen intensidades drásticamente diferentes yuxtapuestas entre sí. Los gradientes son generalmente altos en esas regiones y la densidad de píxeles de borde es alta. Por el contrario, las imágenes lisas tienen menos píxeles de borde y un menor porcentaje de píxeles de borde. Por lo tanto, se pueden combinar las características de rango de palabras de código de intensidad de luma HDR y de porcentaje de puntos de borde para calcular la intensidad de la reducción M de rango de palabras de código de capa base.
��
Ejemplo de un esquema de adaptación M
Como se ha descrito anteriormente, se pueden usar umbrales duros (por ejemplo, TIi<h d r>) en los valores de características para determinar si una determinada escena HDR es ruidosa o tiene un rango de palabras de código pequeño. Un problema potencial con umbrales duros es la inconsistencia temporal. Por ejemplo, puede haber un escenario en el que las características de escena desencadenan una remodelación consciente del control de tasa; sin embargo, la escena más próxima se procesa con remodelación normal. Este escenario creará inconsistencias temporales y problemas potenciales de calidad visual, especialmente cuando cada escena tiene solo una trama. Para evitar estos problemas, se propone una técnica nueva sin tales umbrales duros.
En una realización, en lugar de una clasificación binaria (por ejemplo, sí/no) de una escena como ruidosa con un rango de palabras de código pequeño, se pueden usar los valores de características para modular la intensidad de la reducción M del rango de la capa base. Si los valores característicos indican fuertemente que se necesita una remodelación consciente del control de tasa, entonces se aplica un valor de M mayor . Por el contrario, si los valores característicos son indicadores débiles de que se necesita una remodelación sensible al control de tasa, entonces se emplea un M más pequeño . Aplicando los valores de características para calcular M, no hay necesidad de clasificar explícitamente cada escena como ruidosa con un rango de palabras de código pequeño. A continuación se explican detalles del enfoque propuesto.
Supongamos que 8 y p denota parámetros que controlan la intensidad de la reducción M de rango de capa base. Estos parámetros dependen de valores de características. El rango 8 de luma HDR normalizado es una fracción en el rango [0, 1) y, en una realización, su valor puede depender del rango de palabras de código de luma HDR en la escena, es decir, tal como:
En una realización, el número racional p se calcula con base en el porcentaje de puntos de borde de esa escena, es decir, Pi, tal como:
Para ello Pi = 0, p = 1. El valor de p - varía en [1,0, 100,0] según Pi e (0, 100,0]. La razón para elegir max(1/Pi, Pi) para calcular p es la siguiente. El valor Pi de característica será grande para escenas ruidosas y 1/Pi será grande para escenas en su mayoría planas (sin variaciones espaciales). En ambos casos, se desea tener un valor más alto p y reducción de rango de palabras de código de capa base más fuerte.
Dados estos dos parámetros, en una realización, la intensidad de la reducción M del rango de palabras de código de capa base puede calcularse usando una correspondencia exponencial, como en
M - maxQle aS,1.0). (26)
La curva pe-a5 es monótonamente decreciente. Supongamos que C (por ejemplo, C = 0,15) denota una constante en función del rango de palabras de código de luma HDR de corte normalizado. Por ejemplo, supongamos que 5 > C denota el rango en el que no debe activarse la remodelación consciente del control de tasa. En otras palabras, M = 1 cuando 5 = C y después. Sustituyendo los valores 5 = C y M = 1 en la ecuación (26), se puede calcular el valor de a como M = 1 = pe-a5 lo que implica
La FIG. 4A representa el gráfico para M vs 5 e [0,1) y p = 10. Como se ve en el gráfico, M = p en 5 = 0 y disminuye rápidamente a M = 1 para 5 = C = 0,15. La constante C = 0,15 actúa como un corte, por lo que cualquier escena tiene 5 > C no pasa a través de remodelación sensible al control de tasa. El algoritmo se activa sólo para escenas con 5 < C.
La FIG. 4B representa ejemplos adicionales de trazado de M vs 5 para valores de C = 0,15, 0,45 y 0,70. El punto de corte cambia con C. En una realización, el valor de la constante C puede ajustarse a través de un archivo de configuración personalizadle con un ajuste predeterminado a 0,15. Según el rango^ lde palabras de codigo de luminancia HDR de escena disminuye (rango pequeño), 5 disminuye, M aumenta y la reducción del rango de palabras de código es más fuerte. Después de calcular M a partir de los valores de características, los valores HDR de luma mínimo y máximo se actualizan como se ha analizado anteriormente (véase la ecuación (14)). La Tabla 3 proporciona en pseudocódigo una implementación de ejemplo de las ecuaciones (21), (22), (24) y (14) para generar los límites de palabra de código mín y máx de HDR virtual.
En la Tabla 3, como se ha descrito anteriormente (véanse las ecuaciones (15)-(17)), a continuación "si M > 1," en lugar de aumentar el rango de palabras de código HDR, en una realización alternativa, también podría disminuir directamente el rango de palabras de código SDR.
Modificación de la correspondencia de remodelación hacia delante
~ i7 '
Dados los valores ^>™n y Emax de luma HDR mínimo y máximo ajustados , las curvas de remodelación hacia delante de luma y croma se calculan usando técnicas conocidas en la técnica (por ejemplo, como en la "patente 262) usando v¿,mm y vL,max virtuales como los valores de luma HDR mínimo y máximo. En una realización, los valores fuera del
rango [vi,mm’ v,L.imJ de índices se extrapolan copiando a partir de la entrada válida más próxima. En otras palabras, fv/ )
todas las entradas en el rango L L>mi“ ¿'•“"“ 'd e índices obtienen el mismo valor que el valor en el índice<y '>
. De
manera similar, las palabras de código en el rango<( VL,max’ ^L,r>1 de índices obtiene el valor como valor en el índice<v,>L.max |_as pa|abras de código no usadas se asignan usando la curva de potencia que abarca el mismo rango
[v/,min’ v/„maJ de palabras de código. Como resultado, la LUT hacia delante también hace corresponder el Rango
<Erna*]>de palabras de código de luma HDR al rango [0,2Bs-1] de palabras de código SDR. Las curvas de
remodelación directa de croma también se alteran debido a vLmm> v7,max véanse, por ejemplo, las ecuaciones (4) y (5).
La FIG. 5 representa un ejemplo de una correspondencia (505) de remodelación hacia delante de luma original modificado para generar la correspondencia (510) de remodelación hacia delante de luma ajustada según una realización. En la correspondencia original, en una entrada HDR con ruido, los valores HDR de 16 bits entre 0 y ~2K se hacen corresponder a todo el rango de palabras de código BL de 10 bits [0, 1023]. Esto conduce a una codificación bastante ineficaz. Usando la correspondencia (510) de remodelación ajustada, los valores HDR de entrada se hacen corresponder solo dentro del rango [0, 23] de palabras de código de B<l>, permitiendo una compresión más eficiente por el codificador (142).
La FIG. 6 representa un proceso de ejemplo para generar funciones de remodelación hacia delante sensibles al control de tasa según una realización. Como se representa en la FIG. 6, dada una entrada (120) HDR, en los pasos 605 y 610 se calculan características apropiadas para detectar si los datos de entrada pueden clasificarse como valiosos Al para ajustarse para la remodelación consciente del control de tasa (por ejemplo, datos HDR ruidosos con un rango ut de palabras de código pequeño). Por ejemplo, en el paso 605, se puede aplicar el algoritmo en la Tabla 1 para calcular el rango A',. de palabras de código de luma HDR y a continuación aplicar la ecuación (24) para calcular el parámetro ó. En el paso 610, se puede aplicar el algoritmo de la Tabla 2 para calcular, usando un operador de borde, la métrica Pi de porcentaje de puntos de borde y la métrica p correspondiente (véase la ecuación (25)). Dados estos parámetros, en el paso 615 se calcula la métrica M de adaptación de rango luma-palabra de código (véase, por ejemplo, el algoritmo de la Tabla 3). Si M = 1, no hay necesidad de realizar ningún ajuste, y el paso 625 (por ejemplo, un bloque de procesamiento dentro del bloque 130) generará las funciones de remodelación hacia delante como antes usando el rango de palabras de código HDR calculado en el paso 610. Si M > 1, entonces, como se representa en la Tabla 3, en el paso 620, se necesita calcular el rango de palabras de código de luma HDR ajustado o virtual y usarlo en el paso 630 para calcular las funciones de remodelación de luma y croma hacia delante.
La discusión en el presente documento supone remodelación fuera del bucle, en donde la remodelación hacia adelante y hacia atrás se realiza fuera de la compresión y descompresión; sin embargo, técnicas similares para la adaptación del rango de palabras de código HDR también pueden ser aplicables a esquemas de remodelación en bucle, tales como los presentados en la Solicitud PCT N.°de Serie. PCT/US2019/017891, "Image reshaping in video coding using rate distortion optimization", por P. Yin et al., archivado el 13 de febrero de 2019.
Implementación de sistema informático de ejemplo
Las realizaciones de la presente invención pueden implementarse con un sistema informático, sistemas configurados en circuitos y componentes electrónicos, un dispositivo de circuito integrado (CI) tal como un microcontrolador, una matriz de puertas programables in situ (FPGA) u otro dispositivo lógico configurable o programable (PLD), un procesador de señales digitales o de tiempo discreto (DSP), un CI específico de aplicación (ASIC) y/o aparato que incluye uno o más de tales sistemas, dispositivos o componentes. El ordenador y/o el IC pueden realizar, controlar o ejecutar instrucciones relacionadas con la generación de funciones de remodelación sensibles al control de tasa, tales como las descritas en el presente documento. El ordenador y/o el IC pueden calcular cualquiera de una variedad de parámetros o valores que se refieren a funciones de remodelación sensibles al control de tasa como se describe en el presente documento. Las realizaciones de extensión dinámica de rango de imagen y vídeo pueden implementarse en hardware, software, firmware y diversas combinaciones de los mismos.
Ciertas implementaciones de la invención comprenden procesadores informáticos que ejecutan instrucciones de software que hacen que los procesadores realicen un método de la invención. Por ejemplo, uno o más procesadores en un elemento de visualización, un codificador, un decodificador, un transcodificador o similares pueden implementar procedimientos para funciones de remodelación sensibles al control de tasa como se describió anteriormente ejecutando instrucciones de software en una memoria de programa accesible para los procesadores. La invención también puede proporcionarse en forma de un producto de programa. El producto de programa puede comprender cualquier medio no transitorio y tangible que lleve un conjunto de señales legibles por ordenador que comprendan instrucciones que, cuando se ejecuten por un procesador de datos, hagan que el procesador de datos ejecute un método de la invención. Los productos de programa según la invención pueden estar en cualquiera de una amplia variedad de formas no transitorias y tangibles. El producto de programa puede comprender, por ejemplo, medios físicos tales como medios de almacenamiento de datos magnéticos que incluyen disquetes, unidades de disco duro, medios de almacenamiento de datos ópticos que incluyen CD ROM, DVD, medios de almacenamiento de datos electrónicos que incluyen ROM, RAM flash o similares. Las señales legibles por ordenador en el producto de programa pueden opcionalmente comprimirse o cifrarse.
Cuando un componente (por ejemplo, un módulo de software, procesador, conjunto, dispositivo, circuito, etc.) se ha mencionado anteriormente, a menos que se indique lo contrario, la referencia a ese componente (incluyendo una referencia a un "medio") debe interpretarse como que incluye como equivalentes de ese componente cualquier componente que realice la función del componente descrito (por ejemplo, que sea funcionalmente equivalente), incluyendo componentes que no sean estructuralmente equivalentes a la estructura descrita que realiza la función en las realizaciones de ejemplo ilustradas de la invención.
Equivalencias, extensiones, alternativas y observaciones
Por lo tanto, se describen realizaciones de ejemplo que se refieren a funciones de remodelación sensibles al control de tasa para imágenes HDR. En la memoria descriptiva anterior, se han descrito realizaciones de la presente invención con referencia a numerosos detalles específicos que pueden variar de implementación a implementación. Por lo tanto, el único indicador exclusivo de lo que es la invención, y lo que los solicitantes pretenden ser la invención, es el conjunto de reivindicaciones que se emiten a partir de esta solicitud, en la forma específica en la que se emiten tales reivindicaciones, incluyendo cualquier corrección posterior. Cualquier definición expuesta expresamente en el presente documento para los términos contenidos en dichas reivindicaciones gobernará el significado de dichos términos tal como se usan en las reivindicaciones. Por lo tanto, ninguna limitación, elemento, propiedad, característica, ventaja o atributo que no se mencione expresamente en una reivindicación debe limitar el alcance de tal reivindicación de ninguna manera. La memoria descriptiva y los dibujos, por consiguiente, deben considerarse en un sentido ilustrativo en lugar de restrictivo.

Claims (11)

  1. REIVINDICACIONES 1. Procedimiento para generar una función de remodelación, comprendiendo el procedimiento: recibir una o varias imágenes (120) de entrada en un primer rango dinámico; calcular un primer valor de luma mínimo y un primer valor de luma máximo en la una o más imágenes de entrada; calcular (605) un primer rango de palabras de código para un canal de luma de la una o más imágenes de entrada con base en el primer valor de luma mínimo y el primer valor de luma máximo; calcular (610) una métrica de ruido para el canal de luma de la una o más imágenes de entrada, en donde la métrica de ruido comprende una métrica de ruido del canal de luma que se deriva con base en el número de píxeles en una trama clasificada como bordes; calcular (615) un escalador con base en el primer valor de luma mínimo, el primer valor de luma máximo y la métrica de ruido; y dependiendo del escalador, generar una función de remodelación de luma directa que hace corresponder valores de luma en la una o más imágenes de entrada desde un rango de palabras de código de luma de origen a un rango de palabras de código de luma objetivo, en donde la función de remodelación de luma hacia delante se construye para hacer corresponder un valor de palabra de código mínimo del rango de palabras de código de luma de origen a un valor de palabra de código mínimo del rango de palabras de código de luma objetivo, y un valor de palabra de código máximo del rango de palabras de código de luma de origen a un valor de palabra de código máximo del rango de palabras de código de luma objetivo, que comprende: si el escalador es mayor que uno: calcular un segundo valor de luma mínimo y un segundo valor de luma máximo con base en el primer valor de luma mínimo, el primer valor de luma máximo y el escalador; generar (620) un segundo rango de palabras de código para el canal de luma de la una o más imágenes de entrada basándose en el segundo valor de luma mínimo y el segundo valor de luma máximo, en donde el segundo rango de palabras de código es mayor que el primer rango de palabras de código; y generar (630) la función de remodelación de luma hacia delante usando el segundo rango de palabras de código como el rango de palabras de código de luma de origen; en otro caso generar (625) la función de remodelación de luma hacia delante usando el primer rango de palabras de código como el rango de palabras de código de luma de origen; en donde calcular el escalador (M) comprende calcular M=max(¡}e~aS,1,0), en donde 6 denota una función de la resolución de profundidad de bits de la una o más imágenes de entrada, el primer valor de luma mínimo y el primer valor de luma máximo, p denota una función de la métrica de ruido, y a es una función de la métrica de ruido y de un parámetro C de corte para el cual si 6 > C, entonces M = 1.
  2. 2. El método de la reivindicación 1, que comprende además: dependiendo del escalador, generar, con base en un valor de luma mínimo, un valor de luma máximo y la función de remodelación de luma hacia delante, una función de remodelación de croma hacia delante que hace corresponder valores de croma en la una o más imágenes de entrada desde un rango de palabras de código de croma de origen a un rango de palabras de código de croma objetivo, que comprende: si el escalador es mayor que uno: generar la función de remodelación de croma hacia delante usando el segundo valor de luma mínimo como el valor de luma mínimo y el segundo valor de luma máximo como el valor de luma máximo; en otro caso generar la función de remodelación de croma hacia delante usando el primer valor de luma mínimo como el valor de luma mínimo y el primer valor de luma máximo como el valor de luma máximo.
  3. 3. El método de la reivindicación 1 o la reivindicación 2, en donde
    en donde Bv denota la resolución de profundidad de bits de una o más imágenes de entrada, y<Ai>denota una diferencia del primer valor de luma mínimo del primer valor de luma máximo, 100 forP‘ >0. en donde Pi denota la métrica de ruido, y
  4. 4. El método de una cualquiera de las reivindicaciones 1-3, en donde el segundo valorvT¿ 111111 de luma mínimo y elv? segundo valor L max de luma máximo se calculan como:
    en donde Bv denota la resolución de profundidad de bits de una o más imágenes de entrada, M denota el escalador, y <A = 1>'</>L,crvg<- v>’<J>l . m in i <A>2<= v>%<'>max<- v '>vL,avgi en dondevL.min>vUmaxyL,avgdenota el primer valor de luma mínimo, el primer valor de luma máximo y un valor de luma promedio en la una o más imágenes de entrada.
  5. 5. El método de una cualquiera de las reivindicaciones 1-4, donde calcular la métrica de ruido comprende: normalizar los valores de luma en la una o más imágenes de entrada a [0, 1) para generar una o más imágenes normalizadas; determinar puntos de borde en una o más imágenes normalizadas con base en operadores de detección de bordes y uno o más umbrales; y determinar un porcentaje de los puntos de borde determinados sobre el número total de píxeles en la una o más imágenes normalizadas.
  6. 6. El método de la reivindicación 5, en el que los operadores de detección de bordes comprenden los operadores Sobel.
  7. 7. El método de la reivindicación 5 o la reivindicación 6, en donde calcular el umbral para j-ésima imagen en una o más imágenes normalizadas comprende calcular
    en donde Bv denota la resolución de profundidad de bits de la j-ésima imagen, <A>j,L,1<= v>J<'>-L,avg<- v>j<'>, L,rain <A>;,L,2= V/.L ,m ax<- v>j<'>,L.avg> en donde<1>v<2>J-¿.mtn>V vi 1i,maxyI? )-’ .L-av9denota un valor de luma mínimo en la j-ésima imagen, un valor de luma máximo en la j-ésima imagen, y un valor medio de luma en la j-ésima imagen.
  8. 8. El método de una cualquiera de las reivindicaciones 5-7, en donde determinar la métrica Pi de ruido además comprende calcular P=max(P'), DI en donder / denota el porcentaje de puntos de borde en la j-ésima imagen normalizada en la una o más imágenes normalizadas.
  9. 9. El método de una cualquiera de las reivindicaciones 2-8, que comprende además: aplicar la función de remodelación de luma hacia delante y la función de remodelación de croma hacia delante para hacer corresponder la una o más imágenes de entrada en el primer rango dinámico a una o más imágenes remodeladas en un segundo rango dinámico; y codificar la una o más imágenes remodeladas para generar un flujo de bits codificado.
  10. 10. Un medio de almacenamiento legible por ordenador que tiene almacenadas en el mismo instrucciones ejecutables por ordenador para ejecutar con uno o más procesadores un método según una cualquiera de las reivindicaciones 1 9.
  11. 11. Un aparato que comprende un procesador y configurado para realizar uno cualquiera de los métodos enumerados en las reivindicaciones 1-9.
ES20824404T 2019-11-27 2020-11-25 Rate-control-aware reshaping in hdr imaging Active ES2995217T3 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962940942P 2019-11-27 2019-11-27
EP19211730 2019-11-27
PCT/US2020/062430 WO2021108719A1 (en) 2019-11-27 2020-11-25 Rate-control-aware reshaping in hdr imaging

Publications (1)

Publication Number Publication Date
ES2995217T3 true ES2995217T3 (en) 2025-02-07

Family

ID=73834620

Family Applications (1)

Application Number Title Priority Date Filing Date
ES20824404T Active ES2995217T3 (en) 2019-11-27 2020-11-25 Rate-control-aware reshaping in hdr imaging

Country Status (6)

Country Link
US (1) US12177459B2 (es)
EP (1) EP4066505B1 (es)
JP (1) JP7391214B2 (es)
CN (1) CN114747224B (es)
ES (1) ES2995217T3 (es)
WO (1) WO2021108719A1 (es)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116034394A (zh) 2020-08-06 2023-04-28 杜比实验室特许公司 假轮廓减轻的自适应流式传输
US12143593B2 (en) 2021-06-08 2024-11-12 Dolby Laboratories Licensing Corporation Chained reshaping function optimization
CN116506630A (zh) * 2022-01-18 2023-07-28 华为技术有限公司 一种图像采集方法、图像显示方法及装置
US20240357135A1 (en) * 2023-04-21 2024-10-24 Electronics And Telecommunications Research Institute Method for encoding/decoding video and recording medium storing the method for encoding video

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8208560B2 (en) * 2007-10-15 2012-06-26 Intel Corporation Bit depth enhancement for scalable video coding
TWI575933B (zh) * 2011-11-04 2017-03-21 杜比實驗室特許公司 階層式視覺動態範圍編碼中之層分解技術
JP6038360B2 (ja) * 2013-06-17 2016-12-07 ドルビー ラボラトリーズ ライセンシング コーポレイション エンハンストダイナミックレンジ信号の階層符号化のための適応的再構成
WO2016153896A1 (en) 2015-03-20 2016-09-29 Dolby Laboratories Licensing Corporation Signal reshaping approximation
CN107771392B (zh) 2015-06-30 2021-08-31 杜比实验室特许公司 用于高动态范围图像的实时内容自适应感知量化器
EP3329679A1 (en) * 2015-07-28 2018-06-06 VID SCALE, Inc. High dynamic range video coding architectures with multiple operating modes
AU2015207818A1 (en) * 2015-07-28 2017-02-16 Canon Kabushiki Kaisha Method, apparatus and system for encoding video data for selected viewing conditions
KR102647783B1 (ko) * 2015-09-23 2024-03-15 콤스코프 유케이 리미티드 높은 동적 범위 비디오 데이터의 재형성 및 적응을 위한 시스템 및 방법
ES2979319T3 (es) 2015-11-24 2024-09-25 Koninklijke Philips Nv Manejo de múltiples fuentes de imágenes HDR
US10032262B2 (en) * 2016-02-02 2018-07-24 Dolby Laboratories Licensing Corporation Block-based content-adaptive reshaping for high dynamic range images
CN108885783B (zh) * 2016-03-23 2022-02-15 杜比实验室特许公司 编码和解码可逆制作质量单层视频信号
US10397586B2 (en) * 2016-03-30 2019-08-27 Dolby Laboratories Licensing Corporation Chroma reshaping
US10542296B2 (en) * 2016-05-10 2020-01-21 Dolby Laboratories Licensing Corporation Chroma reshaping of HDR video signals
EP3244616A1 (en) * 2016-05-13 2017-11-15 Thomson Licensing A method for encoding an input video comprising a luma component and two chroma components, the method comprising reshaping of said input video based on reshaping functions
EP3459248B1 (en) 2016-05-19 2024-07-24 Dolby Laboratories Licensing Corporation Chroma reshaping for high dynamic range images
US10645403B2 (en) 2016-05-19 2020-05-05 Dolby Laboratories Licensing Corporation Chroma reshaping for high dynamic range images
GB201611253D0 (en) * 2016-06-29 2016-08-10 Dolby Laboratories Licensing Corp Efficient Histogram-based luma look matching
ES2967322T3 (es) * 2016-08-30 2024-04-29 Dolby Laboratories Licensing Corp Remodelación en tiempo real de códec monocapa retrocompatible
MA51865A (fr) 2018-02-14 2020-12-23 Dolby Laboratories Licensing Corp Redéfinition d'images dans un codage vidéo à l'aide d'une optimisation de distorsion du taux de codage
US10609424B2 (en) 2018-03-09 2020-03-31 Dolby Laboratories Licensing Corporation Single-layer progressive coding for supporting multi-capability HDR composition

Also Published As

Publication number Publication date
JP7391214B2 (ja) 2023-12-04
WO2021108719A1 (en) 2021-06-03
US12177459B2 (en) 2024-12-24
EP4066505A1 (en) 2022-10-05
CN114747224A (zh) 2022-07-12
US20230039038A1 (en) 2023-02-09
CN114747224B (zh) 2023-12-01
EP4066505C0 (en) 2024-11-13
JP2023502443A (ja) 2023-01-24
EP4066505B1 (en) 2024-11-13

Similar Documents

Publication Publication Date Title
JP7586445B2 (ja) レート歪み最適化を用いたビデオ符号化における画像整形
ES2996933T3 (en) Block-based content-adaptive reshaping for high dynamic range images
JP7164535B2 (ja) 統合された画像再構成及び映像符号化
JP6181259B2 (ja) エンハンストダイナミックレンジ信号の階層符号化のための適応的再構成
US10575005B2 (en) Video coding and delivery with both spatial and dynamic range scalability
JP5638731B1 (ja) 拡張ダイナミックレンジをもつ画像の階層式符号化における適応的な偽輪郭生成防止
JP7015967B2 (ja) Sdr-hdr画像変換における画像ノイズ除去
CN113016182B (zh) 减少后向兼容hdr成像中的条带伪影
US10223774B2 (en) Single-pass and multi-pass-based polynomial approximations for reshaping functions
ES2974520T3 (es) Reducción de artefactos de formación de bandas en formación de imagen HDR por mediación de funciones adaptativas de remodelación de SDR a HDR
EP3281409A1 (en) In-loop block-based image reshaping in high dynamic range video coding
JP7391214B2 (ja) Hdr画像化におけるレート制御認識リシェーピング
CN108353173B (zh) 用于高动态范围视频编码的分段线性层间预测器
JP6320644B2 (ja) エンハンストダイナミックレンジを備える信号のための階層間予測
CN109314787B (zh) 用于高动态范围视频编码的增强层掩蔽
JP7540085B2 (ja) 色変換データ生成方法