ES2853673T3 - Método para codificar y descodificar la información de imágenes - Google Patents

Método para codificar y descodificar la información de imágenes Download PDF

Info

Publication number
ES2853673T3
ES2853673T3 ES17187999T ES17187999T ES2853673T3 ES 2853673 T3 ES2853673 T3 ES 2853673T3 ES 17187999 T ES17187999 T ES 17187999T ES 17187999 T ES17187999 T ES 17187999T ES 2853673 T3 ES2853673 T3 ES 2853673T3
Authority
ES
Spain
Prior art keywords
band
bands
information
offset
sao
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
ES17187999T
Other languages
English (en)
Inventor
Seoung Wook Park
Jung Sun Kim
Yong Joon Jeon
Joon Young Park
Byeong Moon Jeon
Jae Hyun Lim
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.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
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 LG Electronics Inc filed Critical LG Electronics Inc
Application granted granted Critical
Publication of ES2853673T3 publication Critical patent/ES2853673T3/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • 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/102Methods 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
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/102Methods 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
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/102Methods 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
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/102Methods 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
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/17Methods 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/176Methods 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
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods 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
    • 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/102Methods 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
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/98Adaptive-dynamic-range coding [ADRC]

Landscapes

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

Abstract

Un método de descodificación de vídeo, mediante un aparato de descodificación, el método comprendiendo: (E1810) obtener información de vídeo que incluye información de reconstrucción de imágenes e información de desplazamiento de un tren binario; (E1820) generar una imagen reconstruida según la información de reconstrucción de imágenes; y (E1830) aplicar un filtro en bucle a la imagen reconstruida, en donde la etapa (E1830) de aplicar el filtro en bucle incluye las etapas de: aplicar un proceso de filtrado de desbloqueo a la imagen reconstruida; y aplicar un proceso de desplazamiento adaptativo de muestra a la imagen reconstruida según la información de desplazamiento después de completar el proceso del filtrado de desbloqueo, en donde la información de desplazamiento incluye información de tipo de desplazamiento para especificar un tipo de desplazamiento para una muestra, en donde la información de tipo de desplazamiento indica un desplazamiento de banda para la muestra, y en donde la información de desplazamiento incluye información sobre n valores de desplazamiento, caracterizado por que la información de desplazamiento incluye información de banda de inicio que indica, de manera explícita, una de 32 bandas como una banda de inicio de n bandas para determinar un grupo de bandas que comprende las n bandas entre las 32 bandas, la información de banda de inicio siendo diferente de la información de tipo de desplazamiento, el grupo de bandas se determina además según información de banda de finalización que indica, de manera variable, una banda de finalización de las n bandas, en donde el grupo de bandas se ubica, de manera variable, entre las 32 bandas según la información de banda de inicio, en donde un valor de desplazamiento corresponde a una banda entre las n bandas para la muestra, n es un entero positivo.

Description

DESCRIPCIÓN
Método para codificar y descodificar la información de imágenes
[Campo técnico]
La presente invención se refiere a la tecnología de compresión de información de vídeo y, más concretamente, a un método de aplicación de un Desplazamiento Adaptativo de Muestra (SAO, por sus siglas en inglés) como un filtro en bucle.
[Antecedentes de la técnica]
La demanda de vídeo de alta resolución y de alta calidad ha crecido recientemente en varios campos de aplicación. Mientras la resolución y calidad de una imagen se vuelven altas, la cantidad de información sobre el vídeo también aumenta. Por consiguiente, cuando la información de vídeo se transmite mediante el uso de un medio como, por ejemplo, las líneas de banda ancha inalámbricas y cableadas existentes, y la información de vídeo se almacena mediante el uso del medio de almacenamiento existente, el coste necesario para enviar la información y el coste necesario para almacenar la información aumentan.
La tecnología de compresión de vídeo de alta eficiencia puede usarse con el fin de enviar, almacenar y reproducir, de manera eficaz, información de vídeo de alta resolución y de alta calidad.
Con el fin de aumentar la eficiencia de compresión de vídeo, pueden usarse la interpredicción y la intrapredicción. En el método de interpredicción, un valor de píxel de la imagen actual se pronostica según la información sobre otra imagen. En el método de intrapredicción, un valor de píxel se pronostica mediante el uso de una correlación entre píxeles dentro de la misma imagen.
El documento JCTVC-E049 "CE13: Sample Adaptive Offset with LCU-Independent Decoding' de Joint Collaborative Team on Video Coding (JCT-VC) de ITU-T SG16 WP3 e ISO/IEC JTC1/SC29/WG11 describe las características de los preámbulos de las reivindicaciones independientes. El desplazamiento adaptativo de muestra SAO y la sintaxis utilizada en aquel se describen en el documento JCTVC E602 “HM3: High Efficiency Video Coding (HEVC) Test Model 3 Encoder Description".
Los siguientes documentos adicionales de Joint Collaborative Team on Video Coding (JCT-VC) de ITU-T SG16 WP3 e ISO/IEC JTC1/SC29/WG11, que tienen una fecha de publicación posterior a la fecha de prioridad de la presente solicitud de patente y, por consiguiente, no constituyen la técnica anterior publicada, se han citado en el Informe de búsqueda Suplementario Europeo: JCTVC-H l003_dG “High Efficiency Video Coding (HEVC) text specification draft 6", JCTVC-H406 “Flexible Band Offset Mode in SAO" y JCTVC-G246 “On additional SAO Band Offset classifications".
[Compendio de la Invención]
[Problema técnico]
Un objeto de la presente invención es proveer un método de aplicación adaptativa de un SAO con el fin de mejorar un efecto de reconstrucción de vídeo.
Otro objeto de la presente invención es proveer un método de aplicación de un desplazamiento de banda mediante la toma de intensidad, es decir, la frecuencia de un píxel para cada valor de píxel bajo consideración.
Incluso otro objeto de la presente invención es proveer un método de transferencia de información para aplicar un desplazamiento de banda a las bandas válidas solamente de un codificador de vídeo a un descodificador de vídeo. Incluso otro objeto de la presente invención es proveer un método de aplicación de múltiples SAO en la unidad de aplicación de SAO.
Incluso otro objeto de la presente invención es proveer un método y aparato para aplicar un SAO a píxeles croma con el fin de mejorar un efecto de reconstrucción de vídeo.
[Solución técnica]
El objeto de más arriba se resuelve por la combinación de características de las reivindicaciones independientes. Las realizaciones preferidas se encuentran definidas en las reivindicaciones dependientes.
Una realización de la presente invención se refiere a un método de codificación de información de vídeo, que incluye generar un bloque reconstruido, aplicar un filtro de desbloqueo al bloque reconstruido, aplicar un SAO al bloque reconstruido al cual se ha aplicado el filtro de desbloqueo, y transmitir información de vídeo, incluida la información sobre el SAO aplicado. Cuando un desplazamiento de banda se aplica al aplicar el SAO al bloque reconstruido, la transmisión de información de vídeo puede incluir transmitir información para especificar bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La transmisión de la información de vídeo puede incluir transmitir información sobre valores de desplazamiento para las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse junto con la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una primera banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
Además, la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una última banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede transmitirse en la unidad de aplicación de SAO.
Otra realización de la presente invención se refiere a un método de descodificación de información de vídeo, que incluye recibir información de vídeo que incluye información de SAO sobre un SAO aplicado, generar un bloque reconstruido según la información recibida, aplicar un filtro de desbloqueo al bloque reconstruido, y aplicar un SAO al bloque reconstruido al cual el filtro de desbloqueo se ha aplicado. La información SAO puede incluir información para especificar bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse, y cuando el desplazamiento de banda se aplica al aplicar el SAO al bloque reconstruido, el desplazamiento de banda puede aplicarse a los píxeles correspondientes a bandas indicadas por la información para especificar las bandas.
La información SAO puede incluir valores de desplazamientos para las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una primera banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
Además, la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una última banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
En la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse, las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse pueden especificarse en la unidad de aplicación de SAO.
Incluso otra realización de la presente invención se refiere a un aparato de codificación de información de vídeo, que incluye un módulo de filtro para aplicar un SAO a un bloque reconstruido y un módulo de codificación de entropía para llevar a cabo la codificación de entropía en la información de vídeo que incluye información sobre el SAO aplicado en el módulo de filtro. Si un desplazamiento de banda se aplica en el módulo de filtro, la información SAO puede incluir información para especificar bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información SAO puede incluir información sobre un valor de desplazamiento para las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una primera banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
Además, la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una última banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede transmitirse en la unidad de aplicación de SAO.
Incluso otra realización de la presente invención se refiere a un aparato de descodificación de información de vídeo, que incluye un módulo de descodificación de entropía para obtener información de vídeo llevando a cabo la descodificación de entropía en un tren binario recibido y un módulo de filtrado para aplicar un SAO a un bloque reconstruido generado según la información de vídeo. La información de vídeo puede incluir información para especificar bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse, y cuando el desplazamiento de banda se aplica, el módulo de unidad de filtrado del desplazamiento de banda a píxeles correspondientes a las bandas especificadas.
La información de vídeo puede incluir valores de desplazamientos para las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
La información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una primera banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
Además, la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede incluir información para especificar una última banda, de entre las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse.
En la información para especificar las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse, las bandas que cubren el rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse se especifican en la unidad de aplicación de SAO.
[Efectos ventajosos]
Según la presente invención, un efecto de reconstrucción de vídeo puede mejorarse mediante la aplicación adaptativa de un SAO.
Según la presente invención, la cantidad de información que se transferirá puede reducirse mediante la aplicación de un desplazamiento de banda a bandas válidas solamente y mediante la entrega de la información de un codificador a un descodificador.
Según la presente solicitud, un efecto de reconstrucción de vídeo puede mejorarse mediante la aplicación de múltiples SAO según la unidad de aplicación de SAO.
Según la presente invención, un efecto de reconstrucción de vídeo puede mejorarse mediante la aplicación de un SAO a píxeles croma.
[Descripción de los dibujos]
Los dibujos anexos, que se incluyen para proveer mayor comprensión del presente documento y se incorporan y constituyen una parte de la presente memoria descriptiva, ilustran realizaciones del presente documento y, junto con la descripción, sirven para explicar los principios del presente documento.
La Figura 1 es un diagrama de bloques que muestra, de manera esquemática, un codificador (o un codificador de vídeo) según una realización de la presente invención;
la Figura 2 es un diagrama de bloques que muestra, de manera esquemática, un descodificador de vídeo según una realización de la presente invención;
la Figura 3 es un diagrama que ilustra, de manera esquemática, un desplazamiento de banda;
la Figura 4 muestra distribuciones locales de histogramas para la misma imagen;
las Figuras 5 a 7 son diagramas que ilustran, de manera esquemática, un ejemplo de un método de clasificación de todo el rango de píxeles de manera adaptativa o variable y la aplicación de un desplazamiento de banda;
la Figura 8 es un diagrama que ilustra, de manera esquemática, un ejemplo de un método de indicación de bandas a las cuales un desplazamiento de banda puede aplicarse según la presente invención;
la Figura 9 es un diagrama que ilustra, de manera esquemática, otro ejemplo de un método de indicación de bandas a las cuales un desplazamiento de banda se aplicará según la presente invención;
la Figura 10 es un diagrama que ilustra, de manera esquemática, incluso otro ejemplo de un método de indicación de bandas a las cuales un desplazamiento de banda se aplicará según la presente invención; la Figura 11 muestra ejemplos del tipo de bordes representativos que pueden aparecer para cada dirección dentro de un bloque;
la Figura 12 muestra cuatro tipos de borde de un desplazamiento de borde según el píxel C actual;
la Figura 13 es un diagrama que ilustra, de manera esquemática, un ejemplo en el cual la intensidad del píxel actual se compara con la intensidad de cada uno de los píxeles vecinos y los resultados de la comparación se clasifican en cuatro categorías;
la Figura 14 es un diagrama que ilustra, de manera esquemática, la unidad de aplicación de SAO;
las Figuras 15 y 16 son diagramas que ilustran, de manera esquemática, ejemplos en los cuales un desplazamiento de banda se aplica a solamente algunas de todas las bandas en relación con los píxeles croma;
la Figura 17 es un diagrama de flujo que ilustra, de manera esquemática, el funcionamiento del codificador de vídeo en un sistema al cual se aplica la presente invención; y
la Figura 18 es un diagrama de flujo que ilustra, de manera esquemática, el funcionamiento del descodificador de vídeo en un sistema al cual se aplica la presente invención.
[Modo para la Invención]
La presente invención puede modificarse de varias maneras y puede tener varias realizaciones. Las realizaciones específicas de la presente invención se ilustran en los dibujos y se describen en detalle en la descripción detallada. Sin embargo, la presente invención no pretende limitarse a las realizaciones específicas. Los términos usados en la presente solicitud se usan para describir solamente las realizaciones específicas y no pretenden limitar la presente invención. Una expresión del número singular incluye una expresión del número plural a menos que se defina claramente lo contrario en el contexto. En la presente solicitud, términos como, por ejemplo, "que comprenden" y "que tienen", pretenden designar las características, números, etapas, funciones, elementos, o partes que se describen en la memoria descriptiva, o una combinación de ellos, y debe comprenderse que excluyen la existencia o posible incorporación de una o más características, números, etapas, funciones, elementos, partes, o combinaciones diferentes de ellos con antelación.
Mientras tanto, los elementos en los dibujos descritos en la presente invención se muestran, de forma independiente, en aras de la descripción con respecto a diferentes funciones características en un codificador de vídeo y un descodificador de vídeo, pero no pretenden que cada uno de los elementos se implemente como hardware separado o software separado. Por ejemplo, dos o más de los elementos se fusionan en un elemento, y uno de los elementos puede clasificarse en múltiples elementos. Las realizaciones de la integración de elementos y/o la separación de un elemento caerán dentro del alcance de la presente invención a menos que se aparten de la esencia de la presente invención.
De aquí en adelante, las realizaciones preferidas de la presente invención se describirán en detalle con referencia a los dibujos anexos. Los mismos numerales de referencia designan los mismos elementos a lo largo de los dibujos, y una descripción redundante de los mismos elementos se omite.
La Figura 1 es un diagrama de bloques que muestra, de manera esquemática, un codificador (o un codificador de vídeo) según una realización de la presente invención. Con referencia a la Figura 1, el codificador de vídeo 100 incluye un módulo de división de imágenes 105, un módulo de predicción 110, un módulo de transformada 115, un módulo de cuantificación 120, un módulo de redisposición 125, un módulo de codificación de entropía 130, un módulo de descuantificación 135, un módulo de transformada inversa 140, un módulo de filtro 145, y una memoria 150.
El módulo de división de imágenes 105 puede dividir una imagen recibida en al menos una unidad de procesamiento. Aquí, la unidad de procesamiento puede ser una Unidad de Predicción (a la cual, de aquí en adelante, se hace referencia como una "PU", por sus siglas en inglés), una Unidad de Transformada (a la cual, de aquí en adelante, se hace referencia como una "TU", por sus siglas en inglés), o una Unidad de Codificación (a la cual, de aquí en adelante, se hace referencia como una "CU", por sus siglas en inglés).
El módulo de predicción 110, según se describirá más adelante, puede incluir un módulo de interpredicción para llevar a cabo la interpredicción y un módulo de intrapredicción para llevar a cabo la intrapredicción. El módulo de predicción 110 genera un bloque de predicción llevando a cabo la predicción en la unidad de procesamiento de una imagen en el módulo de división de imágenes 105. La unidad de procesamiento de una imagen en el módulo de predicción 110 puede ser la CU, la TU o la PU. Además, el módulo de predicción 110 puede determinar si la predicción llevada a cabo en una unidad de procesamiento relevante es una interpredicción o una intrapredicción y puede determinar los detalles (p.ej., un modo de predicción) de cada método de predicción. Aquí, la unidad de procesamiento y el método de predicción según el cual la predicción se lleva a cabo pueden diferir de una unidad de procesamiento en la cual los contenidos detallados de un método de predicción se determinan. Por ejemplo, el método de predicción, el modo de predicción, etc., pueden determinarse en la PU, y la predicción puede llevarse a cabo en la TU.
Un bloque de predicción puede generarse llevando a cabo la predicción según la información sobre al menos una de una imagen anterior a la imagen actual y una imagen posterior a la imagen actual a través de la interpredicción. Además, un bloque de predicción puede generarse llevando a cabo la predicción según la información sobre un píxel dentro de la imagen actual a través de la intrapredicción.
Un modo de salto, un modo de fusión, un modo de Predicción de Vector de Movimiento (MVP, por sus siglas en inglés), etc., pueden usarse como el método de interpredicción. En el método de interpredicción, una imagen de referencia puede seleccionarse para la PU, y un bloque de referencia que tiene el mismo tamaño que la PU puede seleccionarse. El bloque de referencia puede seleccionarse por una unidad de píxel de entero. A continuación, se deriva un bloque de predicción que tiene una señal residual mínima y un tamaño de vector de movimiento mínimo para una PU actual.
El bloque de predicción puede generarse en la unidad de una muestra de enteros y puede seleccionarse en la unidad de un píxel de entero o menos como, por ejemplo, una unidad de 1/2 píxel o una unidad de 1/4 píxel. Aquí, el vector de movimiento puede representarse también en la unidad de un píxel de entero o menos. Por ejemplo, una muestra de luma puede representarse en la unidad de un 1/4 píxel y una muestra de croma puede representarse en la unidad de 1/8 píxel.
La información como, por ejemplo, un índice de una imagen de referencia, un vector de movimiento (p.ej., un predictor de vector de movimiento) seleccionado a través de la interpredicción, y una señal residual, se encuentran sujetos a la codificación de entropía y luego se transfieren a un descodificador de vídeo.
Si se lleva a cabo la intrapredicción, el modo de predicción puede determinarse en la PU y la predicción puede llevarse a cabo en la PU. Además, el modo de predicción puede determinarse en la PU y la intrapredicción puede llevarse a cabo en la TU.
En la intrapredicción, el modo de predicción puede tener 33 modos de predicción direccionales y dos o más modos no direccionales. El modo no direccional puede incluir un modo de predicción DC y un modo planar.
En la intrapredicción, después de aplicar un filtro a una muestra de referencia, puede generarse un bloque de predicción. Aquí, si un filtro se aplicará a una muestra de referencia puede determinarse según el modo de intrapredicción y/o el tamaño del bloque actual.
La PU puede tener varios tamaños y formas. Por ejemplo, en el método de interpredicción, la PU puede tener un tamaño como, por ejemplo, 2Nx2N, 2NxN, Nx2N, o NxN (N es un entero), etc. En el método de intrapredicción, la PU puede tener un tamaño como, por ejemplo, 2Nx2N o NxN, etc. Aquí, la PU que tiene el tamaño NxN puede establecerse de modo que se aplica a casos específicos. Por ejemplo, la PU que tiene el tamaño NxN puede establecerse de modo que se aplica a una CU que tiene un tamaño mínimo o puede establecerse de modo que se aplica a la intrapredicción solamente. Asimismo, además de las PU que tienen los tamaños de más arriba, la PU que tiene un tamaño como, por ejemplo, NXmN, mNXN, 2NXmN, o mNX2N (m<1) puede además definirse y usarse. Un valor residual (o un bloque residual o una señal residual) entre el bloque de predicción generado y un bloque original se ingresa en el módulo de transformada 115. Además, la información sobre el modo de predicción, la información sobre el vector de movimiento, etc. que se usa para la predicción, junto con el valor residual, se codifican por el módulo de codificación de entropía 130 y luego se transfieren a un descodificador de vídeo.
El módulo de transformada 115 genera un coeficiente de transformada llevando a cabo una transformada en el bloque residual en la unidad de una transformada. La unidad de una transformada en el módulo de transformada 115 puede ser la TU y puede tener una estructura de árbol cuádruple. Aquí, el tamaño de la unidad de una transformada puede determinarse dentro de un rango de un tamaño máximo y mínimo específico. El módulo de transformada 115 puede transformar el bloque residual mediante el uso de la Transformada de Coseno Discreta (DCT, por sus siglas en inglés) y/o la Transformada Discreta del Seno (DST, por sus siglas en inglés).
El módulo de cuantificación 120 puede generar un coeficiente de cuantificación mediante la cuantificación de los valores residuales transformados por el módulo de transformada 115. Un valor calculado por el módulo de cuantificación 120 se provee al módulo de descuantificación 135 y al módulo de redisposición 125.
El módulo de redisposición 125 redispone los coeficientes de cuantificación provistos por el módulo de cuantificación 120. La eficiencia de la codificación en el módulo de codificación de entropía 130 puede mejorarse mediante la redisposición de los coeficientes de cuantificación. El módulo de redisposición 125 puede redisponer los coeficientes de cuantificación de una forma de bloque bidimensional (2D) en una forma de vector 1-D mediante el uso de un método de exploración de coeficiente. El módulo de redisposición 125 puede cambiar el orden de la exploración de coeficiente según la estadística de probabilidad de los coeficientes transmitidos por el módulo de cuantificación 120 con el fin de mejorar la eficiencia de la codificación de entropía en el módulo de codificación de entropía 130.
El módulo de codificación de entropía 130 puede llevar a cabo la codificación de entropía en los coeficientes de cuantificación redispuestos por el módulo de redisposición 125. Los métodos de codificación como, por ejemplo, Golomb exponencial, Codificación Adaptativa según el Contexto de Longitud Variable (CAVLC, por sus siglas en inglés), y la Codificación Aritmética Binaria Adaptativa según el Contexto (CABAC, por sus siglas en inglés), pueden usarse como la codificación de entropía. El módulo de codificación de entropía 130 puede codificar información como, por ejemplo, información sobre un coeficiente de cuantificación y el tipo de bloque de CU, información de modo de predicción, información de unidad de división, información de PU e información de unidad de transmisión, información de vector de movimiento, información de imágenes de referencia, información sobre la interpolación de un bloque, e información de filtrado que se reciben del módulo de redisposición 125 y del módulo de predicción 110. Además, el módulo de codificación de entropía 130 puede cambiar un conjunto de parámetros o sintaxis hasta cierto punto si fuera necesario.
El módulo de descuantificación 135 puede llevar a cabo la descuantificación en los valores cuantificados por el módulo de cuantificación 120, y el módulo de transformada inversa 140 lleva a cabo una transformada inversa en los valores inversamente cuantificados por el módulo de descuantificación 135. Los valores residuales generados por el módulo de descuantificación 135 y el módulo de transformada inversa 140 y el bloque de predicción pronosticado por el módulo de predicción 110 se añaden, siendo capaces de generar un bloque reconstruido.
Un ejemplo en el cual un bloque reconstruido se genera mediante la adición de un bloque residual y un bloque de predicción mediante el uso de un sumador se muestra en la Figura 1. Aquí, el sumador puede considerarse una unidad adicional (a saber, una unidad de generación de bloque reconstruido) para generar el bloque reconstruido. El módulo de filtro 145 puede aplicar un filtro de desbloqueo, un Filtro Adaptativo en Bucle (ALF, por sus siglas en inglés) y un Desplazamiento Adaptativo de Muestra (SAO) a una imagen reconstruida.
El filtro de desbloqueo puede eliminar la distorsión generada en el límite de los bloques en la imagen reconstruida. El Filtro Adaptativo en Bucle (ALF) puede llevar a cabo el filtrado según un valor obtenido mediante la comparación de una imagen reconstruida con una imagen original después de que un bloque se haya filtrado por el filtro de desbloqueo. El ALF puede llevarse a cabo solamente cuando se usa una eficiencia alta. El SAO se usa para restablecer una diferencia entre un bloque reconstruido al cual se ha aplicado el filtro de desbloqueo y una imagen original en la unidad de un píxel, y el SAO se aplica en la forma de un desplazamiento de banda o un desplazamiento de borde.
Mientras tanto, el módulo de filtro 145 puede no aplicar el filtrado en un bloque reconstruido usado en la interpredicción.
La memoria 150 puede almacenar el bloque reconstruido o imagen derivada por el módulo de filtro 145. El bloque reconstruido o imagen almacenada en la memoria 150 puede proveerse al módulo de predicción 110 para llevar a cabo la interpredicción.
La Figura 2 es un diagrama de bloques que muestra, de manera esquemática, un descodificador de vídeo según una realización de la presente invención. Con referencia a la Figura 2, el descodificador de vídeo 200 puede incluir un módulo de descodificación de entropía 210, un módulo de redisposición 215, un módulo de descuantificación 220, un módulo de transformada inversa 225, un módulo de predicción 230, un módulo de filtro 235 y una memoria 240. Si un tren binario de VÍDEO se recibe de un codificador de vídeo, el tren binario ingresado puede descodificarse según un procedimiento en el cual la información de vídeo se ha procesado en el codificador de vídeo.
Por ejemplo, si la Codificación de Longitud Variable (a la cual de aquí en adelante se hace referencia como "VLC", por sus siglas en inglés) como, por ejemplo, CAVLC, se ha usado en un codificador de vídeo con el fin de llevar a cabo la codificación de entropía, el módulo de descodificación de entropía 210 puede implementar la misma tabla VLC como una tabla VLC usada en el codificador de vídeo y llevar a cabo la descodificación de entropía. Además, si CABAC se ha usado en un codificador de vídeo con el fin de llevar a cabo la codificación de entropía, el módulo de descodificación de entropía 210 puede llevar a cabo la descodificación de entropía mediante el uso de CABAC. La información necesaria para generar un bloque de predicción, de entre la información descodificada por el módulo de descodificación de entropía 210, se provee al módulo de predicción 230. Un valor residual sobre el cual la descodificación de entropía se ha llevado a cabo por el módulo de descodificación de entropía 210 puede ingresarse en el módulo de redisposición 215.
El módulo de redisposición 215 puede redisponer trenes binarios en los cuales la descodificación de entropía se ha llevado a cabo por el módulo de descodificación de entropía 210 mediante el uso de un método de redisposición de los trenes binarios en un codificador de vídeo. El módulo de redisposición 215 puede redisponer coeficientes representados en un vector 1-D mediante el restablecimiento de los coeficientes en coeficientes de una forma de bloque 2D. El módulo de redisposición 215 recibe información relacionada con la exploración de coeficientes llevada a cabo en un codificador de vídeo y puede redisponer la información mediante el uso de un método de exploración inversa de la información según el orden de exploración llevado a cabo en el codificador de vídeo.
El módulo de descuantificación 220 puede llevar a cabo la descuantificación según un parámetro de cuantificación y valores de coeficientes de un bloque redispuesto recibido de un codificador de vídeo.
El módulo de transformada inversa 225 puede llevar a cabo una DCT inversa y/o una DST inversa en una DCT y una DST llevada a cabo por el módulo de transformada de un codificador de vídeo en relación con los resultados de la cuantificación llevada a cabo por el codificador de vídeo. Una transformada inversa puede llevarse a cabo en la unidad de transmisión o en la unidad de división de una imagen que se ha determinado en el codificador de vídeo. En el módulo de transformada de un codificador de vídeo, una DCT y/o una DST pueden llevarse a cabo, de forma selectiva, según información como, por ejemplo, un método de predicción, el tamaño del bloque actual y una dirección de predicción. El módulo de transformada inversa 225 del descodificador de vídeo puede llevar a cabo una transformada inversa según la información de transformada llevada a cabo en el módulo de transformada de un codificador de vídeo.
El módulo de predicción 230 puede generar un bloque de predicción según la información sobre el bloque de predicción provista por el módulo de descodificación de entropía 210 y la información sobre un bloque y/o imagen previamente descodificados provista por la memoria 240.
Si un modo de predicción para la PU actual es un modo de intrapredicción, la intrapredicción para generar el bloque de predicción puede llevarse a cabo según la información sobre píxeles dentro de la imagen actual.
Si un modo de predicción para la PU actual es un modo de interpredicción, la interpredicción puede llevarse a cabo en la PU actual según la información incluida en al menos una de una imagen anterior a la imagen actual y una imagen posterior a la imagen actual. Aquí, la información de movimiento, por ejemplo, un vector de movimiento e información sobre un índice de imágenes de referencia que son necesarias para la interpredicción de la PU actual y provistas por un codificador de vídeo puede derivarse después de verificar una bandera de salto, una bandera de fusión, etc., recibidas del codificador de vídeo.
Un bloque reconstruido puede generarse mediante el uso de un bloque de predicción generado por el módulo de predicción 230 y un bloque residual provisto por el módulo de transformada inversa 225. Un ejemplo en el cual un bloque reconstruido se genera mediante la adición de un bloque de predicción y un bloque residual mediante el uso de un sumador se ilustra en la Figura 2. Aquí, el sumador puede considerarse una unidad adicional (a saber, una unidad de generación de bloque reconstruido) para generar el bloque reconstruido.
El bloque y/o la imagen reconstruidos pueden proveerse al módulo de filtro 235. El módulo de filtro 235 aplica un filtrado de desbloqueo, un Desplazamiento Adaptativo de Muestra (SAO) y/o un filtrado adaptativo en bucle al bloque y/o a la imagen reconstruidos.
La memoria 240 almacena la imagen y/o el bloque reconstruidos de modo que se usan como una imagen de referencia y/o como un bloque de referencia y también provee la imagen reconstruida a una unidad de salida.
Mientras tanto, según se describe más arriba, el módulo de filtro de cada uno del codificador de vídeo y descodificador de vídeo es un filtro en bucle. Un filtro de desbloqueo, un filtro de Desplazamiento Adaptativo de Muestra (SAO), un Filtro Adaptativo en Bucle (ALF) pueden usarse como el módulo de filtro.
El filtro de desbloqueo elimina artefactos entre los bloques según la predicción, transformada y cuantificación de una unidad de bloque. El filtro de desbloqueo se aplica a un borde PU o a un borde TU, y puede establecer un tamaño de bloque mínimo al cual se aplicará el filtro de desbloqueo.
Con el fin de aplicar el filtro de desbloqueo, la Potencia de Límite (BS, por sus siglas en inglés) de un límite de filtro horizontal o vertical se determina primero. Si el filtrado se llevará a cabo según la BS se determina para cada bloque, y puede determinarse qué filtro se usará. El filtro que se aplicará puede ser un filtro débil o un filtro fuerte. El módulo de filtrado aplica el filtro seleccionado al límite de un bloque relevante.
Un Filtro Adaptativo en Bucle (ALF) puede también aplicarse después de llevar a cabo un SAO. El ALF se usa para compensar errores de codificación mediante el uso de un filtro de Wiener y se aplica, de forma global, dentro de un segmento, a diferencia del SAO. El ALF puede aplicarse solamente en caso de Alta Eficiencia (HE, por sus siglas en inglés).
El SAO es un procedimiento para restablecer una diferencia entre una imagen en la cual se ha llevado a cabo un filtrado de desbloqueo y una imagen original en la unidad de un píxel. Un error de codificación puede compensarse a través del SAO. El error de codificación puede originarse por la cuantificación, etc. Como se describe más arriba, el SAO incluye dos tipos; un desplazamiento de banda y un desplazamiento de borde.
La Figura 3 es un diagrama que ilustra, de manera esquemática, un desplazamiento de banda.
Con el fin de aplicar un desplazamiento de banda, los píxeles dentro de la unidad de aplicación de SAO pueden clasificarse según la intensidad de cada píxel, es decir, un valor de píxel. El rango de intensidad de un píxel, es decir, un rango de valores de píxeles, puede clasificarse en un número específico de intervalos de intensidad (a saber, el intervalo de valores de píxeles), es decir, un número específico de bandas. (En la presente memoria descriptiva, los términos un "valor de píxel" y la "intensidad de un píxel" se usan de manera intercambiable en aras de la descripción. El "valor de píxel" y la "intensidad de un píxel" pueden interpretarse como términos que tienen el mismo significado o el "valor de píxel" puede interpretarse como uno que tiene un significado que incluye la "intensidad de un píxel"). Un valor de un desplazamiento aplicado a cada píxel puede establecerse para cada banda. Un desplazamiento de una banda a la cual pertenece un valor de píxel puede aplicarse a un píxel.
Con respecto a una imagen que tiene píxeles de N bits, todo el rango de píxeles (rango de intensidad) puede convertirse en 0 a 2N-1. Por ejemplo, un píxel de 8 bits puede tener un rango de píxeles de 0 a 255. La Figura 3 ilustra un ejemplo en el cual todo el rango de valores de píxeles (rango de intensidad) se divide en 32 bandas que tienen el mismo intervalo de valores de píxeles.
Con referencia a la Figura 3, el intervalo de intensidad de cada banda es de 8. Las 32 bandas pueden dividirse en un primer grupo en el centro y un segundo grupo a los lados. Si los grupos incluyen el mismo número de bandas, el primer grupo puede incluir 16 bandas y el segundo grupo puede incluir 16 bandas. Un desplazamiento se aplica a cada banda y un valor de desplazamiento para cada banda puede transmitirse al descodificador de vídeo.
El descodificador de vídeo clasifica los píxeles según el mismo proceso que el de la aplicación de un desplazamiento de banda en el codificador de vídeo y aplica el valor de desplazamiento transmitido a un píxel según una banda a la cual el píxel pertenece.
Mientras tanto, según se describe más arriba, un método de aplicación adaptativa de un desplazamiento de banda puede tomarse en cuenta, en lugar del método de clasificación de 32 bandas en dos grupos y establecimiento de un desplazamiento para cada banda. Por ejemplo, un método de aplicación eficaz de un desplazamiento de banda puede tomarse en cuenta mediante el establecimiento, de manera diferente, del intervalo de una banda a la cual se aplicará el desplazamiento de banda según la unidad de aplicación de SAO para aplicar un SAO, o mediante la indicación, de forma selectiva, de una banda a la cual se aplicará el desplazamiento de banda, o mediante el aumento del número de grupos a los cuales se aplicará un desplazamiento de banda.
Un método de aplicación adaptativa de un desplazamiento de banda en un sistema al cual se aplica la presente invención se describe más abajo.
La Figura 4 muestra ejemplos de histogramas para una imagen según las características de la imagen. Más concretamente, la Figura 4 muestra varios ejemplos de histogramas de componentes luma y croma según las características de imagen para cada imagen parcial en una imagen de la Figura 4(a).
Por ejemplo, con respecto a una región A y a una región B de la Figura 4(a), dos histogramas ubicados en los lados superior e inferior en el lado izquierdo de la Figura 4(b) indican histogramas de componente luma de imágenes originales, y dos histogramas ubicados en los lados superior e inferior en el lado derecho de la Figura 4(b) indican histogramas de componente luma de imágenes reconstruidas.
Con respecto a la región A y a la región B de la Figura 4(a), dos histogramas ubicados en los lados superior e inferior en el lado izquierdo de la Figura 4(c) indican histogramas de componente croma (Cr) de imágenes originales, y dos histogramas ubicados en los lados superior e inferior en el lado derecho de la Figura 4(c) indican histogramas de componente croma (Cr) de imágenes reconstruidas.
Además, con respecto a la región A y a la región B de la Figura 4(a), dos histogramas ubicados en los lados superior e inferior en el lado izquierdo de la Figura 4(d) indican histogramas de componente croma (Cb) de imágenes originales, y dos histogramas ubicados en los lados superior e inferior en el lado derecho de la Figura 4(d) indican histogramas de componente croma (Cb) de imágenes reconstruidas.
Con referencia a la Figura 4, puede verse que diferentes características de imágenes se muestran según las regiones incluso dentro de la misma imagen y los histogramas tienen varias distribuciones según las características de las imágenes para cada región. Por consiguiente, la calidad de vídeo y la eficiencia de compresión pueden mejorarse mediante la aplicación adaptativa de un desplazamiento de banda a una región de unidad (a saber, una unidad SAO) a la cual se aplica un SAO.
El codificador de vídeo o el descodificador de vídeo pueden, de forma adaptativa, dividir un rango de valores de píxeles (un rango de píxeles) y aplicar un desplazamiento de banda. Es decir, un rango de intensidad de un píxel (un rango de intensidad de un píxel), que un píxel puede tener, puede dividirse de forma adaptativa o variable y una sección de banda puede establecerse allí.
Por ejemplo, si un histograma para una imagen de un bloque se concentra en la parte central de un rango de valores de píxeles, las bandas que tienen, cada una, un intervalo estrecho pueden establecerse mediante la clasificación minuciosa de la parte central de rango de valores de píxeles y las bandas que tienen, cada una, un intervalo mayor pueden establecerse mediante la clasificación menor de las partes laterales del rango de valores de píxeles.
Más concretamente, con respecto a un píxel de N bits, si una distribución de píxeles correspondientes a la parte central de todo el rango de valores de píxeles (0 a 2N-1) es grande, M bandas que tienen, cada una, un pequeño intervalo de intensidad, es decir, un pequeño intervalo de valor de píxel, pueden establecerse en la parte central, y L bandas que tienen, cada una, un gran intervalo de intensidad (a saber, una gran sección de valor de píxel) pueden establecerse en las partes laterales de todo el rango de los valores de píxeles. Aquí, M y L pueden establecerse para tener el mismo valor o diferentes valores.
Por el contrario, si un histograma para una imagen de un bloque se concentra en las partes laterales de todo el rango de valores de píxeles, un método de establecimiento de bandas mediante la clasificación minuciosa de las partes laterales y de establecimiento de bandas mediante la clasificación menor de la parte central de todo el rango de valores de píxeles puede tenerse en cuenta.
Más concretamente, con respecto a un píxel de N bits, si una distribución de píxeles correspondientes a las partes laterales de todo el rango de intensidad (0 a 2N-1) es grande, M bandas que tienen, cada una, un pequeño intervalo de intensidad, es decir, una pequeña sección de valor de píxel, pueden establecerse en las partes laterales y L bandas que tienen, cada una, un gran intervalo de intensidad (a saber, un gran intervalo de valor de píxel) pueden establecerse en la parte central de todo el rango de intensidad. Aquí, M y L pueden establecerse para tener el mismo valor o diferentes valores.
La Figura 5 es un diagrama que ilustra, de manera esquemática, un ejemplo de un método de clasificación de todo el rango de valores de píxeles de forma adaptativa o variable y de aplicación de un desplazamiento de banda. La Figura 5 muestra un ejemplo en el cual los píxeles correspondientes a la parte central del rango de valor de píxel (rango de valores de píxeles) son muchos.
8
En el ejemplo de la Figura 5, suponiendo que un rango de valores de píxeles es 256 (0 a 2 -1), un primer grupo en la parte central del rango de valores de píxeles puede dividirse de forma minuciosa en 16 bandas mediante el uso de 4 valores de píxeles como una banda y segundos grupos en las partes laterales del rango de píxeles pueden dividirse en 12 bandas mediante el uso de 16 valores de píxeles como una banda.
Además, si un histograma para una imagen de un bloque se concentra en las partes laterales de todo el rango de valores de píxeles, a diferencia del ejemplo de la Figura 5, el primer grupo en la parte central del rango de valores de píxeles puede dividirse en 12 bandas mediante el uso de 16 valores de píxeles como una banda y segundos grupos en las partes laterales del rango de valores de píxeles pueden dividirse en 16 bandas mediante el uso de 4 valores de píxeles como una banda.
La Figura 6 es un diagrama que ilustra, de manera esquemática, otro ejemplo de un método de clasificación de todo el rango de píxeles de forma adaptativa o variable y de aplicación de un desplazamiento de banda. La Figura 6 muestra un ejemplo en el cual los píxeles correspondientes a las partes laterales de todo el rango de valores de píxeles son muchos.
Mientras tanto, puede usarse un método de clasificación de todo el rango de valores de píxeles en más grupos de bandas según la unidad de aplicación de SAO sin clasificar todo el rango de valores de píxeles en dos grupos de bandas. Un efecto de reconstrucción de imagen puede mejorarse dado que todo el rango de valores de píxeles puede dividirse de manera más densa y puede aplicarse un desplazamiento. Por ejemplo, las bandas no se dividen en dos grupos, sino que se dividen en N grupos de modo que el codificador de vídeo puede proveer información de desplazamiento más minuciosa a algunos rangos de valores de píxeles. Por consiguiente, el descodificador de vídeo puede recibir información de desplazamiento más minuciosa sobre algún rango de valores de píxeles del codificador de vídeo y aplicar un desplazamiento minucioso adicional según un rango de valores de píxeles.
La Figura 7 es un diagrama que ilustra, de manera esquemática, incluso otro ejemplo de un método de clasificación de un rango de valores de píxeles para todos los píxeles de forma adaptativa o variable y de aplicación de un desplazamiento de banda.
El ejemplo de la Figura 7 ilustra que todo el rango de valores de píxeles se divide en un número específico de bandas, las bandas se dividen en cuatro grupos, y se aplica un desplazamiento de banda.
Por ejemplo, en la Figura 7, si N es 8, es decir, los bits asignados a un valor de píxel son 8 bits, todo el rango de valores de píxeles puede ser de 256 valores de 0 a 255. Si todo el rango de valores de píxeles se divide en 32 bandas y se establecen cuatro grupos que tienen el mismo número de bandas, cada uno de los grupos incluye 8 bandas y cada una de las bandas tiene un intervalo de 8 valores de píxeles.
Si todo el rango de valores de píxeles se divide en más grupos, no dos grupos, y la información sobre el desplazamiento de cada grupo se transmite, las características locales de una imagen pueden incorporarse mejor. Mientras tanto, si un rango de valores de píxeles, es decir, un rango de intensidad, cubierto por cada grupo se fija cuando se aplica un desplazamiento de banda, la información relevante se transmite aunque el número de veces de ocurrencia de banda dentro de un grupo (a saber, el número de píxeles correspondientes a una banda específica o el número de veces de aplicación de desplazamiento correspondiente a una banda específica) es pequeño o un valor de un desplazamiento de banda para una banda relevante es 0. En el presente caso, enviar la información relevante aumenta la cantidad de información transmitida y también la complejidad de un sistema general.
Con el fin de evitar problemas, el codificador de vídeo puede transmitir un rango de un desplazamiento de banda que se usará en la imagen actual. Es decir, el codificador de vídeo puede transmitir un rango o intervalo de bandas correspondientes a un desplazamiento de banda que se usará en la imagen actual.
Más concretamente, si se aplica un desplazamiento de banda, el codificador de vídeo puede transmitir información para especificar las bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse e información sobre valores de desplazamiento para las bandas al descodificador de vídeo. El codificador de vídeo puede especificar las bandas que pueden cubrir un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda o puede especificar las bandas que cubren solamente un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse. Por consiguiente, la información sobre las bandas transmitidas puede ser información sobre intervalos de bandas, incluidas las bandas que cubren un rango de valores de píxeles a las cuales se puede aplicar el desplazamiento de banda o puede ser información para especificar un intervalo de banda que cubre solamente un rango de valores de píxeles al cual puede aplicarse el desplazamiento de banda.
El descodificador de vídeo recibe la información para especificar bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse e información sobre los valores de desplazamiento para las bandas del codificador de vídeo. Si se aplica un desplazamiento de banda, el descodificador de vídeo determina si un valor de píxel de un píxel de destino pertenece a un rango de valores de píxeles de bandas a las cuales puede aplicarse el desplazamiento de banda. Si, como resultado de la determinación, se determina que el valor de píxel del píxel de destino pertenece al rango de valores de píxeles de bandas a las cuales puede aplicarse el desplazamiento de banda, el descodificador de vídeo puede aplicar un desplazamiento, correspondiente a una banda a la cual el valor de píxel del píxel de destino pertenece, al píxel de destino. Dado que las bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse se especifican y los valores de los desplazamientos que se aplicarán a solamente las bandas especificadas se transmiten, el desplazamiento puede no aplicarse a bandas diferentes de las bandas especificadas o un valor del desplazamiento para las bandas diferentes de las bandas especificadas puede establecerse en 0.
Por ejemplo, el codificador de vídeo puede transferir información, e indicar, de esta manera, qué intervalo de valores de píxeles del desplazamiento de banda puede aplicarse en la imagen actual, al descodificador de vídeo. Si los desplazamientos de la imagen actual se aplican con frecuencia en un rango específico de valores de píxeles (p.ej., intensidades), el codificador de vídeo puede enviar información que indica las bandas que cubren el rango correspondiente al descodificador de vídeo. Es decir, si un desplazamiento de banda se usa en bandas que tienen intervalos uniformes, la primera banda en la cual comienza la aplicación del desplazamiento de banda y el número de bandas a las cuales puede aplicarse el desplazamiento de banda pueden especificarse, una última banda en la cual la aplicación del desplazamiento de banda finaliza y el número de bandas a las cuales el desplazamiento de banda puede aplicarse se designan, o la primera banda en la cual la aplicación del desplazamiento de banda comienza y la última banda en la cual el desplazamiento de banda finaliza pueden especificarse. En el presente caso, puede evitarse que la información sobre desplazamientos innecesarios se transmita o puede evitarse que desplazamientos innecesarios se lleven a cabo.
La Figura 8 es un diagrama que ilustra, de manera esquemática, un ejemplo de un método de especificación o indicación de bandas a las cuales un desplazamiento de banda puede aplicarse según la presente invención. El ejemplo de la Figura 8 ilustra un método de indicación de la primera banda de las bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse.
Con referencia a la Figura 8, si el número de bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse, de entre todas las N bandas, es n, el codificador de vídeo envía información que indica la primera banda, de entre las n bandas, al descodificador de vídeo.
Por ejemplo, se supone que una banda que incluye un valor de píxel de 0 en todo el rango de valores de píxeles se llama una banda cero y una banda que incluye el valor de píxel máximo en todo el rango de valores de píxeles se llama una (N-1)ésima banda. El codificador de vídeo puede enviar información que indica una iésima banda, es decir, la primera banda entre n bandas que cubren un rango de valores de pixeles a las cuales puede aplicarse un desplazamiento de banda, e información sobre los desplazamientos para las n bandas al descodificador de vídeo. El descodificador de vídeo recibe la información que indica la iésima banda y la información sobre los desplazamientos para las n bandas del codificador de vídeo. Si la imagen actual o píxeles ahora dentro de la unidad de aplicación de SAO actual tienen un valor de píxel correspondiente a cualquiera de las n bandas, el descodificador de vídeo puede aplicar el desplazamiento de banda a cada uno de los píxeles según el valor de píxel.
En el ejemplo de la Figura 8, si todo el rango de valores de píxeles es de 0 a 256 y el número de todas las bandas es de 32, el codificador de vídeo puede indicar la primera banda de las bandas que cubren un rango de valores de píxeles a las cuales se puede aplicar un desplazamiento de banda, de entre una banda cero a una trigésima primera banda. Aquí, un valor de n puede haberse determinado previamente entre el codificador de vídeo y el descodificador de vídeo. Si el número de bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse es de 4 y la primera banda de las 4 bandas es una iésima banda, el codificador de vídeo puede enviar un valor de desplazamiento de banda para iésima, (i+1)ésima, (i+2)ésima, y (i+3)ésima bandas, junto con información que indica la iésima banda, al descodificador de vídeo.
La Figura 9 es un diagrama que ilustra, de manera esquemática, otro ejemplo de un método de indicación de bandas a las cuales un desplazamiento de banda puede aplicarse según la presente invención. El ejemplo de la Figura 9 ilustra un método de indicación de la última banda de las bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda se aplicará.
Con referencia a la Figura 9, si el número de bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse, de entre todas las N bandas, es n, el codificador de vídeo envía información que especifica la última banda de las n bandas en todas las N bandas al descodificador de vídeo.
Por ejemplo, se supone que una banda que incluye un valor de píxel de 0 en todo el rango de píxeles es una banda cero y una banda que incluye el valor de píxel máximo en todo el rango de valores de píxeles es una (N-1)ésima banda. El codificador de vídeo puede transmitir información que indica una jésima banda, es decir, la última banda de las n bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse e información sobre los desplazamientos para las n bandas al descodificador de vídeo. El descodificador de vídeo recibe la información que indica la jésima banda y la información sobre los desplazamientos para las n bandas del codificador de vídeo. La imagen actual o píxeles ahora dentro de la unidad de aplicación de SAO tienen un valor de píxel correspondiente a cualquiera de las n bandas, y el descodificador de vídeo puede aplicar el desplazamiento de banda a cada uno de los píxeles según un valor del píxel.
En el ejemplo de la Figura 9, si todo el rango de valores de píxeles es de 0 a 256 y el número de todas las bandas es de 32, el codificador de vídeo puede especificar la última banda de las bandas que cubren un rango de valores de píxeles a las cuales se puede aplicar el desplazamiento de banda, de entre la banda cero a la trigésima primera banda. Aquí, un valor de n puede haberse determinado previamente entre el codificador de vídeo y el descodificador de vídeo. Si el número de bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse un desplazamiento de banda es de 4 y la última banda de las 4 bandas es una jésima banda, el codificador de vídeo puede señalizar un valor de desplazamiento de banda para las jésima, (j-1)ésima, (j-2)ésima, y (j-3)ésima bandas, junto con información que indica la jésima banda, al descodificador de vídeo.
La Figura 10 es un diagrama que ilustra, de manera esquemática, incluso otro ejemplo de un método de especificación de bandas a las cuales un desplazamiento de banda puede aplicarse según la presente invención. El ejemplo de la Figura 10 ilustra un método de indicación de una primera banda (a saber, una banda de inicio) y una última banda (a saber, una banda de finalización), de entre las bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda.
Con referencia a la Figura 10, si el número de bandas que cubren un rango de valores de píxeles a las cuales un desplazamiento de banda puede aplicarse, de entre todas las N bandas, es n, el codificador de vídeo transmite información que indica la primera banda y la última banda de las n bandas al descodificador de vídeo.
Por ejemplo, se supone que una banda que incluye un valor de píxel de 0 en todo el rango de valores de píxeles es una banda cero y una banda que incluye un valor de píxel máximo en todo el rango de valores de píxel es una (N-1)ésima banda. El codificador de vídeo puede enviar información que indica una iésima banda, es decir, la primera banda, y una jésima banda, es decir, la última banda, de entre las n bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda, e información sobre los desplazamientos para las n bandas al descodificador de vídeo. El descodificador de vídeo recibe la información que indica la iésima banda y la jésima banda y la información sobre los desplazamientos para las n bandas del codificador de vídeo. Si la imagen actual o píxeles ahora dentro de la unidad de aplicación de SAO tienen un valor de píxel correspondiente a cualquiera de las n bandas, el descodificador de vídeo puede aplicar el desplazamiento de banda a cada uno de los píxeles según un valor del píxel.
En el ejemplo de la Figura 10, si todo el rango de valores de píxeles es de 0 a 256 y el número de todas las bandas es de 32, el codificador de vídeo puede indicar la primera banda y la última banda de las bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda, de entre la banda cero a la trigésima primera banda. Si el número de bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda es de 4 y la primera banda de las 4 bandas es una iésima banda y la última banda de las 4 bandas es una jésima banda, el codificador de vídeo puede enviar información que indica la iésima y la jésima banda y valores de desplazamiento de banda para las iésima, (i+1)ésima, (i+2)ésima, (i+3(=j))ésima bandas al descodificador de vídeo.
Aquí, el número de bandas n que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse puede haberse determinado previamente entre el codificador de vídeo y el descodificador de vídeo. Además, en el caso en que la primera banda y la última banda, de entre las bandas a las cuales puede aplicarse el desplazamiento de banda, se indican, el codificador de vídeo puede determinar un rango de valores de píxeles a los cuales el desplazamiento de banda puede aplicarse y especificar, de manera variable, el número de bandas a las cuales puede aplicarse el desplazamiento de banda.
Se supone que todo el rango de valores de píxeles es de 0 a 256, el número de todas las bandas es de 32, y cada una de las bandas tiene un intervalo igual de valores de 8 píxeles. Si los desplazamientos se aplican con frecuencia a los rangos de valores de píxeles 32 y 160 en la imagen actual, las bandas que cubren un rango de valores de pixeles a las cuales puede aplicarse el desplazamiento de banda se convierten en una cuarta banda a una vigésima banda, de entre la banda cero a la trigésima primera banda. El codificador de vídeo puede transmitir información que indica la primera banda y la última banda (p.ej., banda_inicio y banda_fin), de entre las bandas a las cuales puede aplicarse el desplazamiento de banda, al descodificador de vídeo. Si el desplazamiento de banda se aplica a las bandas de la cuarta banda a la vigésima banda de todas las bandas, la información sobre banda_inicio=4 y banda_fin=20 puede transmitirse del codificador de vídeo al descodificador de vídeo.
En los ejemplos de las Figuras 8 a 10, el codificador de vídeo puede establecer los intervalos de bandas que cubren un rango de valores de píxeles a los cuales un desplazamiento de banda puede aplicarse, es decir, bandas a las cuales el desplazamiento de banda puede aplicarse para cada unidad de aplicación de SAO, para cada imagen a la que se aplica un SAO, o para cada segmento al que se aplica el SAO.
Mientras tanto, el número de píxeles que pertenecen a cada banda, es decir, el número de bandas a las cuales un desplazamiento de banda se ha aplicado, puede contarse. El codificador de vídeo puede enviar valores de desplazamiento de banda para bandas que tienen alta frecuencia al descodificador de vídeo.
Por ejemplo, si 32 bandas de una banda cero a una trigésima primera banda cubren todo el rango de valores de píxeles y bandas que tienen alta frecuencia de aplicación en todo el rango de valores de píxeles son 0, 4, 5, 6, 7, 9, 12, 15, 19, 20, 23 y 25, el codificador de vídeo puede enviar valores de desplazamiento de banda para solamente las bandas que tienen alta frecuencia de aplicación al descodificador de vídeo, pero puede no enviar un valor de desplazamiento que se aplicará como el desplazamiento de banda con respecto a bandas que tienen baja frecuencia de aplicación.
En el presente caso, el codificador de vídeo puede además transmitir información, que indica que los valores de desplazamiento que se transmiten a qué bandas, al descodificador de vídeo.
Como el segundo tipo de SAO, existe el desplazamiento de borde además del desplazamiento de banda. El desplazamiento de borde se aplica teniendo en cuenta la información sobre un borde para cada píxel, por ejemplo, la dirección de un borde según el píxel actual, la intensidad del píxel actual y píxeles vecinos, etc.
La Figura 11 muestra ejemplos del tipo de bordes representativos que pueden aparecer para cada dirección dentro de un bloque. Con referencia a la Figura 11, la Figura 11 (a) muestra un borde que tiene una dirección de 90 grados, la Figura 11 (b) muestra un borde que tiene una dirección de 0 grados, la Figura 11 (c) muestra un borde que tiene una dirección de 45 grados, y la Figura 11 (d) muestra un borde que tiene una dirección de 135 grados.
Un desplazamiento de borde puede incluir cuatro tipos para una unidad para un filtrado, es decir, para la unidad de aplicación de SAO, según el ángulo o la dirección de un borde. Una unidad mínima de la unidad de aplicación de SAO puede ser la Unidad de Codificación Más Grande (LCU, por sus siglas en inglés). Los cuatro tipos en la unidad de aplicación de SAO como, por ejemplo, la que se muestra en la Figura 11, se llaman, de aquí en adelante, los tipos de borde de un desplazamiento de borde, en aras de la descripción.
La Figura 12 muestra cuatro tipos de borde de un desplazamiento de borde según el píxel C actual. Con referencia a la Figura 12, la Figura 12(a) muestra un tipo de borde 1-D de 0 grado, la Figura 12(b) muestra un tipo de borde 1-D de 90 grados, la Figura 12(c) muestra un tipo de borde 1-D de 135 grados, la Figura 12(d) muestra un tipo de borde 1 -D de 45 grados.
El desplazamiento de borde puede usarse según los cuatro tipos de borde que se muestran en la Figura 12.
Si se determina un tipo de borde, el desplazamiento de borde se aplica tomando en consideración una relación entre el píxel actual y los píxeles vecinos.
La Figura 13 es un diagrama que ilustra, de manera esquemática, un ejemplo en el cual la intensidad del píxel actual se compara con la intensidad de cada uno de los píxeles vecinos y los resultados de la comparación se clasifican en cuatro categorías. Con referencia a la Figura 13, la Figura 13(a) a la Figura 13(f) muestran relaciones entre el píxel C actual y píxeles vecinos para cada categoría.
La categoría que se muestra en la Figura 13(a) muestra un ejemplo en el cual la intensidad de cada uno de los dos píxeles vecinos al píxel C actual es mayor que la intensidad del píxel actual. Las categorías que se muestran en las Figuras 13(b) y 13(c) muestran ejemplos en cada uno de los cuales la intensidad de uno de dos píxeles vecinos al píxel actual es más pequeña que la intensidad del píxel actual. Las categorías que se muestran en las Figuras 13(d) y 13(e) muestran ejemplos en cada uno de los cuales la intensidad de uno de dos píxeles vecinos al píxel actual es mayor que la intensidad del píxel actual. La categoría que se muestra en la Figura 13(f) muestra un ejemplo en el cual la intensidad de cada uno de dos píxeles vecinos al píxel actual es más pequeña que la intensidad del píxel actual.
Por ejemplo, las Figuras 13(a) y 13(f) muestran ejemplos en los cuales la intensidad del píxel actual es mayor o menor que la intensidad de cada uno de los píxeles vecinos. Además, las Figuras 13(b) a 13(e) pueden aparecer cuando el píxel actual se ubica en el límite de una región específica.
La Tabla 1 muestra las cuatro categorías que se muestran en las Figuras 13.
<Tabla 1 >
Figure imgf000014_0001
En la Tabla 1, C indica el píxel actual. La categoría 1 en la Tabla 1 corresponde a la Figura 13(a), la categoría 2 en la Tabla 1 corresponde a las Figuras 13(b) y 13(c), la categoría 3 en la Tabla 1 corresponde a las Figuras 13(d) y 13(e), y la categoría 4 en la Tabla 1 corresponde a la Figura 13(f).
El codificador de vídeo envía valores de desplazamiento de borde para cada categoría. El descodificador de vídeo puede reconstruir un píxel mediante la adición de un valor de desplazamiento de borde correspondiente a un tipo de borde y una categoría para el píxel. Por ejemplo, el descodificador de vídeo puede determinar que el píxel actual pertenece a uno de los cuatro tipos de borde de la Figura 11, luego determinar que el píxel actual pertenece a una de las categorías de la Tabla 1, y aplicar un desplazamiento de una categoría correspondiente al píxel actual según la determinación.
Mientras tanto, una unidad de filtrado, es decir, una unidad a la cual se aplica un SAO (llamada una unidad de aplicación de SAO, en aras de la descripción) es una unidad que tiene un tamaño igual a o mayor que la Unidad de Codificación Más Grande (LCU) y se alinea según el límite de LCU.
La unidad a la cual se aplica el SAO es una región desde la cual una imagen se divide con una estructura de árbol cuádruple. El codificador de vídeo puede determinar para cada unidad de aplicación de SAO si el SAO se aplica o no, un tipo de desplazamiento, y un valor de un desplazamiento y transmitir los resultados de la determinación al descodificador de vídeo. Aquí, determinar el tipo de desplazamiento puede ser determinar que uno de los múltiples desplazamientos de banda y uno de los múltiples desplazamientos de borde se aplicarán. La unidad de aplicación de SAO puede establecerse, de forma separada, para un componente luma y un componente croma, e información sobre la unidad de aplicación de SAO para el componente luma y el componente croma puede transmitirse de forma separada.
La Figura 14 es un diagrama que ilustra, de manera esquemática, la unidad de aplicación de SAO. En la Figura 14, la unidad de aplicación de SAO corresponde a una región demarcada por líneas punteadas. El ejemplo de la Figura 14 muestra la unidad de aplicación de SAO en la cual una imagen WQVGA (416x240) se divide en una estructura en árbol cuádruple. Cada unidad de aplicación de SAO debe ser igual a o mayor que una LCU mínima y puede dividirse a lo largo de los límites de las LCU.
Como se describe más arriba, la unidad más pequeña de la unidad de aplicación de SAO es una LCU, pero la LCU puede ser demasiado grande para aplicar un solo desplazamiento según una reducción del tamaño de una imagen. Por ejemplo, si la LCU es de 64x64, la LCU puede convertirse en una unidad de aplicación de SAO demasiado grande al reconstruir la imagen original mediante el uso de un solo desplazamiento solamente. Por consiguiente, si dos o más bordes diferentes existen dentro de una LCU, dos o más desplazamientos de borde pueden aplicarse dentro de una LCU.
Si múltiples desplazamientos de borde se aplican dentro de una unidad de aplicación de SAO, múltiples tipos de borde pueden seleccionarse de los tipos de borde de las Figuras 12(a) a 12(d) según las direcciones de bordes dentro de una región y luego aplicarse.
La información de sintaxis necesaria para llevar a cabo el desplazamiento de banda y el desplazamiento de borde de un SAO se describe más abajo.
La Tabla 2 es una estructura de sintaxis para un SAO y muestra, de manera esquemática, un ejemplo de una sintaxis de un conjunto de parámetros de secuencia.
<Tabla 2>
Figure imgf000015_0001
La Tabla 2 muestra un ejemplo de señalización que indica si un SAO se aplica a la secuencia actual. Por ejemplo, si un valor de sao_usado_bandera en la sintaxis de la Tabla 2 es 0, ello puede indicar que el SAO no se usa (a saber, se encuentra inhabilitado) en la secuencia actual. Si un valor de sao_usado_bandera en la sintaxis de la Tabla 2 es 1, ello puede indicar que el SAO puede usarse (a saber, se encuentra habilitado) en la secuencia actual.
La Tabla 3 es una estructura de sintaxis para un SAO y muestra, de manera esquemática, un ejemplo de una sintaxis de encabezamiento de segmento.
<Tabla 3>
Figure imgf000015_0002
Un parámetro SAO sao_parám () para aplicar un SAO puede llamarse a nivel de encabezamiento de segmento a través de la sintaxis de encabezamiento de segmento que se muestra en la Tabla 3. El parámetro SAO puede establecerse como un conjunto de sintaxis adicional como en la Tabla 4.
La Tabla 4 es una estructura de sintaxis para un SAO y muestra, de manera esquemática, un ejemplo de una sintaxis de parámetro SAO.
<Tabla 4>
Figure imgf000015_0003
Los parámetros necesarios para aplicar un SAO pueden transmitirse a través de la sintaxis de parámetro SAO. Los parámetros transmitidos, como en el ejemplo de la Tabla 4, incluyen sao_división_parám para la división de una región de aplicación de SAO y sao_desplazamiento_parám para un desplazamiento aplicado como el SAO.
En el ejemplo de la Tabla 4, si un valor de sao_bandera es 1, ello puede indicar que el SAO puede aplicarse (a saber, habilitarse) a al menos parte de la imagen actual. Si un valor de sao_bandera es 0, ello puede indicar que el SAO no puede aplicarse (a saber, se encuentra inhabilitado) a toda la imagen actual. Por consiguiente, cuando un valor de sao_bandera es 1, los parámetros SAO pueden indicarse.
La Tabla 5 es una estructura de sintaxis para un SAO y muestra, de manera esquemática, un ejemplo de una sintaxis sao_división_parám para la división de entre los parámetros SAO.
<Tabla 5>
Figure imgf000016_0001
En el ejemplo de la Tabla 5, sao_división_parám (x, y, Profundidad) indica que la información sobre si la unidad de aplicación de SAO en una posición especificada por (x, y) y a una profundidad especificada por "Profundidad" se divide más se señaliza a través de sao_división_bandera. Si un valor de sao_división_bandera es 0, ello indica que la región actual es una hoja. Por consiguiente, la región actual ya no se divide más con el fin de aplicar un SAO. Si un valor de sao_división_bandera es 1, ello indica que la región actual se divide además en cuatro regiones menores. Si una región de aplicación de SAO se divide, puede indicarse un parámetro de división pqao_división_parám para las cuatro regiones divididas.
El parámetro de división pqao_división_parám indica si la unidad de aplicación de SAO se divide además para cada región dividida si la unidad de aplicación de SAO se divide más. En un punto en el que se indica si la unidad de aplicación de SAO se divide a una profundidad específica, la sintaxis sao_división_parám puede usarse nuevamente para la región dividida en lugar de la sintaxis pqao_división_parám, pero la profundidad de una región indicada puede cambiarse y usarse para una profundidad cambiada. Por ejemplo, al indicar si una región a la cual puede aplicarse un SAO se ha dividido o no, suponiendo que una región, es decir, el objeto de indicación con respecto a la división, y su profundidad son (x0, y0, saoProfundidad), si sao_división_parám (x0, y0, saoProfundidad) indica que la región especificada por (x0, y0) se divide, la profundidad de cada una de las regiones divididas especificadas por (x0+0, y0+0), (x0+0, y0+1), (x0+1, y0+0) y (x0+1, y0+1) puede ajustarse a 'saoProfundidad+1' y si una región correspondiente se dividirá puede indicarse.
La Tabla 6 es una sintaxis para aplicar un desplazamiento de banda según la presente invención y muestra, de manera esquemática, un ejemplo de un método de transmisión de información sobre desplazamientos para bandas específicas a las cuales puede aplicarse el desplazamiento de banda.
<Tabla 6>
Figure imgf000016_0002
En el ejemplo de la Tabla 6, un valor de sao_tipo_índ indica cuál de un desplazamiento de banda y un desplazamiento de borde de entre los SAO puede aplicarse. En el ejemplo de la Tabla 6, si un valor de sao_tipo_índ es 0, ello indica que tanto el desplazamiento de banda como el desplazamiento de borde no pueden aplicarse. Si un valor de sao_tipo_índ indica que el desplazamiento de banda puede aplicarse, el codificador de vídeo puede indicar la primera banda, de entre las bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda, a través de la sintaxis inic¡o_desplazam¡ento. A continuación, el codificador de vídeo puede transmitir valores de desplazamiento de banda (desplazamiento SAO) para n bandas incluida la primera banda indicada por la sintaxis inicio_desplazamiento.
El descodificador de vídeo puede determinar la primera banda, de entre las bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda, según la información recibida del codificador de vídeo y obtener información sobre los desplazamientos para las n bandas incluida la primera banda.
Si un valor de un píxel corresponde a cualquiera de las n bandas, el descodificador de vídeo puede aplicar al píxel el valor de desplazamiento de banda de la banda correspondiente a la cual pertenece el valor de píxel.
La Tabla 7 es una sintaxis para aplicar un desplazamiento de banda según la presente invención y muestra, de manera esquemática, otro ejemplo de un método de transmisión de información sobre desplazamientos para bandas específicas a las cuales puede aplicarse el desplazamiento de banda.
<Tabla 7>
Figure imgf000017_0001
En el ejemplo de la Tabla 7, un valor de sao_tipo_índ indica cuál de un desplazamiento de banda y un desplazamiento de borde, de entre los SAO, puede aplicarse. Si un valor de sao_tipo_índ es 0, ello indica que tanto el desplazamiento de banda como el desplazamiento de borde no pueden aplicarse.
Si un valor de sao_tipo_índ indica que el desplazamiento de banda puede aplicarse, el codificador de vídeo puede indicar la última banda, de entre las bandas que cubren un rango de valores de píxeles a las cuales puede aplicarse el desplazamiento de banda, a través de la sintaxis fin_desplazamiento. A continuación, el codificador de vídeo puede transmitir valores de desplazamiento de banda (desplazamiento SAO) para n bandas incluida la última banda indicada por la sintaxis fin_desplazamiento.
El descodificador de vídeo puede determinar la última banda, de entre las bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse, según la información recibida del codificador de vídeo y obtener información sobre los desplazamientos para las n bandas incluida la última banda.
Si un valor de un píxel corresponde a cualquiera de las n bandas, el descodificador de vídeo puede aplicar al píxel el valor de desplazamiento de banda de la banda correspondiente a la cual pertenece el valor de píxel.
La Tabla 8 es una sintaxis para aplicar un desplazamiento de banda según la presente invención y muestra, de manera esquemática, otro ejemplo de un método de transmisión de información sobre desplazamientos para bandas específicas a las cuales puede aplicarse el desplazamiento de banda.
<Tabla 8>
Figure imgf000018_0001
En el ejemplo de la Tabla 8, un valor de sao_tipo_índ indica que uno de un desplazamiento de banda y un desplazamiento de borde, de entre los SAO, puede aplicarse. Si un valor de sao_tipo_índ es 0, ello indica que tanto el desplazamiento de banda como el desplazamiento de borde no pueden aplicarse.
Si un valor de sao_tipo_índ indica que el desplazamiento de banda puede aplicarse, el codificador de vídeo puede indicar la primera banda y la última banda, de entre las bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse, a través de la sintaxis inicio_desplazamiento y la sintaxis fin_desplazamiento. A continuación, el codificador de vídeo puede enviar valores de desplazamiento de banda (desplazamiento SAO) para las n bandas de la primera banda a la última banda.
El descodificador de vídeo puede determinar la primera banda y la última banda, de entre las bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse, según la información recibida del codificador de vídeo y obtener información sobre desplazamientos para las n bandas incluidas la primera banda a la última banda.
Si un valor de un píxel corresponde a cualquiera de las n bandas, el descodificador de vídeo puede aplicar al píxel el valor de desplazamiento de banda de la banda correspondiente a la cual pertenece el valor de píxel.
Según se describe más arriba, si se aplica un desplazamiento de banda, el codificador de vídeo puede enviar información, que indica un rango de bandas que cubren un rango de valores de píxeles en las cuales el desplazamiento de banda puede aplicarse a la imagen actual o a la unidad de aplicación de SAO actual, al descodificador de vídeo. Además, el codificador de vídeo puede enviar valores de desplazamiento de banda para bandas, que pertenecen al rango, al descodificador de vídeo.
El descodificador de vídeo puede recibir la información que indica las bandas a las cuales puede aplicarse el desplazamiento de banda y la información sobre los desplazamientos de banda para las bandas del codificador de vídeo. Si un valor de píxel pertenece a las bandas a las cuales puede aplicarse el desplazamiento de banda, el descodificador de vídeo puede aplicar el valor de desplazamiento de una banda correspondiente al píxel.
La Tabla 9 muestra, de manera esquemática, un ejemplo de sintaxis para llevar a cabo un SAO cuando un desplazamiento de banda se aplica según la presente invención.
<Tabla 9>
Figure imgf000019_0001
Con referencia a la Tabla 9, si una región de aplicación de SAO se divide, un parámetro de desplazamiento puede indicarse para cada región dividida.
Si la región de aplicación de SAO ya no se divide, un tipo de desplazamiento para la región de aplicación de SAO se indica.
En el ejemplo de la Tabla 9, sao_tipo_índ indica un tipo de desplazamiento que puede aplicarse a la región actual. El número de desplazamientos SAO o el número de categorías SAO puede determinarse según el tipo de SAO sao_tipo_índ aplicado a la región actual.
En el ejemplo de la Tabla 9, si un valor de sao_tipo_índ es 0, ello puede significar que un SAO no se aplica. Si un valor de sao_tipo_índ es de 1 a 4, ello puede significar que se aplica un desplazamiento de borde. Los valores 1 a 4 de sao_tipo_índ pueden corresponder a los cuatro tipos de desplazamientos de borde que se muestran en la Figura 12. Si un valor de sao_tipo_índ es mayor que 4, ello puede indicar que se aplica un desplazamiento de banda. Por ejemplo, cuando las bandas a las cuales puede aplicarse el desplazamiento de banda se indican como en las Tablas 6 y 7, puede establecerse de modo que una aplicación del desplazamiento de banda se indica cuando el valor de sao_tipo_índ es 5. Además, si todo el rango de valores de píxeles se divide en grupos que tienen, cada uno, bandas específicas y se indica que el píxel actual o la unidad de aplicación de SAO actual pertenece a uno de los grupos según se describe más arriba, los valores de sao_tipo_índ mayores que 4 pueden establecerse para indicar un grupo de bandas.
El ejemplo de la Tabla 9 muestra un ejemplo en el cual, cuando se aplica un desplazamiento de banda, las bandas a las cuales puede aplicarse el desplazamiento de banda se especifican a través de inicio_desplazamiento y fin_desplazamiento y valores de desplazamiento de banda para las bandas se transmiten.
Un ejemplo de información de sintaxis que indica el número de desplazamientos SAO o el número de categorías SAO según un tipo de desplazamiento puede incluir PqaoDesplazamientoNúm[sao_tipo_índ].
En el ejemplo de la Tabla 9, inicio_desplazamiento puede indicar una banda de un número más pequeño entre bandas a las cuales puede aplicarse el desplazamiento o puede indicar un tipo de borde del número más pequeño entre tipos de borde a los cuales el desplazamiento puede aplicarse. Es decir, inicio_desplazamiento puede indicar una banda que tiene el índice más pequeño entre bandas a las cuales puede aplicarse el desplazamiento o puede indicar un tipo de borde que tiene el índice más pequeño entre tipos de borde a los cuales puede aplicarse el desplazamiento. Si inicio_desplazamiento no se encuentra disponible, puede inferirse que inicio_desplazamiento tiene un valor de 0. Además, fin_desplazamiento puede indicar una banda del número más grande entre bandas a las cuales puede aplicarse el desplazamiento o puede indicar un tipo de borde del número más grande entre tipos de borde a las cuales puede aplicarse el desplazamiento. Es decir, fin_desplazamiento puede indicar una banda que tiene el índice más grande entre bandas a las cuales puede aplicarse el desplazamiento o puede indicar un tipo de borde que tiene el índice más grande entre tipos de borde a los cuales puede aplicarse el desplazamiento. Si fin_desplazamiento no se encuentra disponible, un valor de fin_desplazamiento puede establecerse como el número de categorías SAO (a saber, el número de desplazamientos), es decir, PqaoDesplazamientoNúm[sao_tipo_índ] que se determina según el tipo de SAO sao_tipo_índ como se describe más arriba.
La Tabla 10 muestra, de manera esquemática, un ejemplo de un tipo de desplazamiento SAO. El número de categorías SAO (a saber, el número de desplazamientos) puede determinarse según un tipo de desplazamiento como se describe más arriba a través de la Tabla 9.
<Tabla 10>
Figure imgf000020_0001
Como en la Tabla 10, el índice de tipo de SAO puede indicar cualquiera de los desplazamientos de borde y desplazamientos de banda. La Tabla 10 muestra un ejemplo en el cual todas las bandas se dividen en dos grupos para aplicar un desplazamiento de banda. El índice de tipo de SAO indica uno de cuatro desplazamientos de borde y dos desplazamientos de banda. Un valor de desplazamiento se establece para cada categoría y se construye un tipo de SAO. Por ejemplo, en caso de un desplazamiento de borde, un valor de desplazamiento puede establecerse por cuatro categorías según las intensidades del píxel actual y píxeles vecinos para cada tipo de borde.
La Tabla 11 muestra, de manera esquemática, un ejemplo con respecto a un tipo de desplazamiento de SAO cuando el número de grupos de bandas se establece de forma adaptativa y se aplica un desplazamiento de banda.
<Tabla 11>
Figure imgf000021_0001
En el ejemplo de la Tabla 11, el número de categorías en el grupo central es diferente del número de categorías en el grupo lateral. Por ejemplo, en el caso de 256 píxeles, en la Tabla 10, cada uno del grupo central y del grupo lateral incluye 16 bandas, cada una de las cuales tiene valores de 8 píxeles. Por el contrario, en la Tabla 11, un desplazamiento de banda se aplica mediante el uso del grupo central que consta de 16 bandas que tienen, cada una, valores de 4 píxeles y el grupo lateral que consta de 12 bandas que tienen, cada una, valores de 16 píxeles. Por consiguiente, un desplazamiento puede aplicarse a bandas centrales de manera más meticulosa.
La Tabla 12 muestra, de manera esquemática, otro ejemplo para un tipo de desplazamiento de SAO cuando los grupos de bandas se dividen, de forma adaptativa, para aplicar un desplazamiento de banda.
<Tabla 12>
Figure imgf000021_0002
A diferencia de la Tabla 11, la Tabla 12 muestra un ejemplo en el cual un grupo lateral se divide más minuciosamente para aplicar un desplazamiento de banda. Por ejemplo, en la Tabla 12, un desplazamiento de banda se aplica mediante el uso del grupo central que consta de 12 bandas que tienen, cada una, valores de 16 píxeles y el grupo lateral que consta de 16 bandas que tienen, cada una, valores de 4 píxeles. Por consiguiente, un desplazamiento puede aplicarse a las bandas laterales de manera más minuciosa.
La Tabla 13 muestra un ejemplo de una tabla para un tipo de SAO cuando más grupos de bandas se designan para aplicar un desplazamiento de banda.
<Tabla 13>
Figure imgf000022_0001
En el ejemplo de la Tabla 13, cada uno de los grupos de bandas consta de 8 bandas, cada una de las cuales tiene valores de 8 píxeles. Todas las bandas que pertenecen a cada grupo de bandas pueden agruparse, de manera secuencial, desde el lado izquierdo como en la Figura 7.
La Tabla 14 muestra un ejemplo de una tabla para un tipo de SAO cuando las bandas específicas que cubren valores de píxeles a los cuales un desplazamiento de banda puede aplicarse se especifican para el desplazamiento de banda para aplicar el desplazamiento de banda.
<Tabla 14>
Figure imgf000022_0002
En el ejemplo de la Tabla 14, si se aplica un desplazamiento de banda, el codificador de vídeo puede enviar un valor de 5 como un valor de sao_tipo_índ al descodificador de vídeo. El codificador de vídeo puede también especificar un rango de bandas a las cuales puede aplicarse el desplazamiento de banda y enviar valores del desplazamiento de banda para las bandas del rango al descodificador de vídeo como se describe más arriba.
En las Tablas 6 a 9, un tipo de SAO que se aplicará al píxel actual, de entre los tipos de SAO (a saber, tipos de borde) como, por ejemplo, los que se muestran en las Tablas 10 a 14, puede indicarse a través de sao_tipo_índ de más arriba. Con referencia a las Tablas 10 a 14, cuando un valor de sao_tipo_índ es mayor que 4, un desplazamiento de banda se aplica como se describe más arriba.
La Tabla 15 muestra, de manera esquemática, otro ejemplo de sintaxis sao_desplazamiento_parám para un desplazamiento, de entre los parámetros SAO, como una estructura de sintaxis a la cual puede aplicarse un SAO.
<Tabla 15>
Figure imgf000023_0001
La Tabla 15 muestra un ejemplo de la estructura de sintaxis para transmitir solamente un desplazamiento de banda válido. Aquí, el desplazamiento de banda válido significa un desplazamiento de banda que puede ser aplicable. Dado que solo se transmite información sobre un desplazamiento de banda válido, la información sobre el número de desplazamientos de banda que se aplicarán, la información que indica un desplazamiento de banda, y la información que indica valores de desplazamientos necesitan transmitirse. total_desplazamiento_núm_menos_uno indica el número total de desplazamientos en un desplazamiento de banda. desplazamiento_índ[i] indica que un desplazamiento de banda indicado por sao_tipo_índ corresponde a qué categoría. sao_desplazamiento indica un valor de desplazamiento para la categoría indicada por desplazamiento_índ[i] en una posición y profundidad correspondientes.
Como se describe más arriba, múltiples desplazamientos de borde pueden aplicarse a una unidad de aplicación de SAO.
La Tabla 16 muestra, de manera esquemática, un ejemplo de una estructura de sintaxis cuando se aplican múltiples desplazamientos de borde a una unidad de aplicación de SAO.
<Tabla 16>
Figure imgf000024_0001
Con referencia a los ejemplos de la Tabla 16 y Tablas 10 a 14, cuando un valor de sao_tipo_índ es menor que 5, se aplica un desplazamiento de borde. núm_borde_desplazamiento indica el número total de desplazamientos aplicados como los desplazamientos de borde.
Con referencia a la Tabla 13, el desplazamiento de borde puede aplicarse a una región de aplicación de SAO en la medida que indique núm_borde_desplazamiento.
Mientras tanto, al aplicar un SAO, el SAO puede aplicarse a un componente croma teniendo en cuenta una diferencia entre los componentes luma y los componentes croma.
La Figura 4 muestra distribuciones locales de histogramas para la misma imagen. Como se describe más arriba, con respecto a las regiones A y B de la Figura 4(a) que son una imagen del mismo vídeo, la Figura 4(b) muestra una diferencia en el histograma entre una imagen original luma y una imagen reconstruida.
Con referencia a las regiones A y B de la Figura 4(a), la Figura 4(c) muestra una diferencia entre un histograma para una imagen original croma (Cr) (a saber, los lados superior e inferior en el lado izquierdo de la Figura 4(c)) y un histograma para la imagen reconstruida (a saber, los lados superior e inferior en el lado derecho de la Figura 4(c)). Además, la Figura 4(d) muestra una diferencia entre un histograma para la imagen original croma (Cb) (a saber, los lados superior e inferior en el lado izquierdo de la Figura 4(d)) y un histograma para la imagen reconstruida (a saber, los lados superior e inferior en el lado derecho de la Figura 4(d)).
A partir de la Figura 4, puede verse que existe una diferencia en las características de imagen entre luma y croma para la misma imagen. Por este motivo, no solo el desplazamiento de una señal para los píxeles luma, sino también el desplazamiento de una señal para píxeles croma pueden transmitirse de forma independiente. Aquí, el desplazamiento puede aplicarse a los píxeles croma teniendo en cuenta el número de píxeles luma y el número de pixeles croma.
Por ejemplo, si un rango de la señal croma, es decir, un rango de valores de píxeles de los píxeles croma, es 0 a 2N 1 (N es una profundidad de bit de un valor de píxel), el tamaño de toda la profundidad de bit, es decir, el rango de valores de píxeles, puede dividirse como en el ejemplo de la Figura 15 o 16.
La Figura 15 es un diagrama que ilustra, de manera esquemática, ejemplos en los cuales un desplazamiento de banda se aplica a solamente algunas de todas las bandas para píxeles croma.
Con referencia a la Figura 15, los píxeles croma pueden asignarse a bandas centrales compuestas de K bandas en el centro de todas las 2*K bandas, y puede aplicarse un desplazamiento de banda.
Un valor de desplazamiento para los índices 1, 2, ..., K asignados a las respectivas bandas a las cuales el desplazamiento de banda puede aplicarse puede transferirse del codificador de vídeo al descodificador de vídeo. Con respecto a un valor de desplazamiento para índices asignados a las bandas laterales a las cuales el desplazamiento de banda no se aplica, los índices pueden designarse como 0 de modo que un desplazamiento para los píxeles croma no se indica. Un índice que tiene un valor de 0 puede indicar que el desplazamiento de banda no puede aplicarse o puede indicar que el valor de desplazamiento del desplazamiento de banda es 0.
La Figura 16 es un diagrama que ilustra, de manera esquemática, otro ejemplo en el cual un desplazamiento de banda se aplica a solamente algunas de todas las bandas para píxeles croma.
Con referencia a la Figura 16, los píxeles croma pueden aplicarse a las restantes bandas compuestas de K bandas laterales de todas las 2*K bandas, y puede aplicarse un desplazamiento de banda.
Un valor de desplazamiento para los índices 1, 2, ..., K/2, K/2+1, ..., K asignados a las respectivas bandas a las cuales puede aplicarse el desplazamiento de banda puede transferirse del codificador de vídeo al descodificador de vídeo. Con respecto a un valor de desplazamiento para índices asignados a bandas centrales a las cuales el desplazamiento de banda no se aplica, los índices pueden designarse como 0 de modo que un desplazamiento para los píxeles croma no se indica. Un índice que tiene un valor de 0 puede indicar que el desplazamiento de banda no puede aplicarse o puede indicar que el valor de desplazamiento del desplazamiento de banda es 0.
En los ejemplos de las Figuras 15 y 16, suponiendo que K se establece en un valor de 16, todo el rango de valores de píxeles puede dividirse en 32 bandas, las 32 bandas pueden dividirse en 2 grupos, es decir, 16 bandas de una parte central y 16 bandas de partes laterales para aplicar un desplazamiento de banda.
En comparación con una señal para píxeles luma (a saber, un valor de píxel), K puede establecerse en 8 (a saber, K=8) mediante la reducción del número de todas las bandas considerando una pequeña varianza en una señal para píxeles croma (a saber, un valor de píxel). Cuando K=8, el número de todas las bandas para aplicar un desplazamiento de banda es 16. Un desplazamiento de banda para los píxeles croma puede aplicarse con 8 bandas de parte central y 8 bandas de parte lateral. Aquí, una señal para píxeles luma (a saber, una señal luma) es un valor de píxel (p.ej., intensidad) de un píxel luma, al cual se hace referencia, de aquí en adelante, como una "señal luma", en aras de la descripción.
La Tabla 17 muestra una estructura de sintaxis para aplicar, de forma independiente, un SAO a croma y muestra, de manera esquemática, un ejemplo de sintaxis sao_desplazamiento_parám con respecto a un desplazamiento, de entre los parámetros SAO.
<Tabla 17>
Figure imgf000025_0001
Figure imgf000026_0001
Con referencia a la Tabla 17, sao_tipo_cr_índ indica un tipo de desplazamiento para una señal croma (Cr). Además, sao_tipo_cb_índ indica un tipo de desplazamiento para una señal croma (Cb). sao_cr_desplazamiento indica un valor de desplazamiento para una señal croma (Cr). sao_cb_desplazamiento indica un valor de desplazamiento para una señal croma (Cb).
En el ejemplo de la Tabla 17, cuando un tipo de desplazamiento aplicado a una señal croma (Cr) se indica por sao_tipo_cr_índ, un valor de desplazamiento indicado por sao_cr_desplazamiento puede aplicarse al píxel actual. Además, cuando un tipo de desplazamiento aplicado a una señal croma (Cb) se indica por sao_tipo_cb_índ, un valor de desplazamiento indicado por sao_cb_desplazamiento puede aplicarse al píxel actual.
La Figura 17 es un diagrama de flujo que ilustra, de manera esquemática, el funcionamiento del codificador de vídeo en un sistema al cual se aplica la presente invención.
Con referencia a la Figura 17, el codificador de vídeo reconstruye un bloque en la etapa E1710. El codificador de vídeo puede generar un bloque residual reconstruido a través de la descuantificación y una transformada inversa después de llevar a cabo la cuantificación y transformada en un bloque residual generado según un bloque de predicción y el bloque actual.
A continuación, el codificador de vídeo aplica un filtro en bucle a bloques reconstruidos en la etapa E1720. El filtro en bucle puede aplicarse en el módulo de filtro de la Figura 1, y al menos uno de un filtro de desbloqueo, un SAO y un ALF puede usarse como el filtro en bucle. Aquí, el SAO puede aplicarse a una imagen a la cual se ha aplicado el filtro de desbloqueo, por píxel. El SAO puede aplicarse a los bloques reconstruidos para cada unidad de aplicación de SAO. El ALF puede aplicarse después de aplicar el SAO.
Si se aplica el SAO, el módulo de filtro puede aplicar un desplazamiento por unidad de píxel. Aquí, el módulo de filtro puede determinar, de forma adaptativa, el número de desplazamientos (a saber, el número de bandas) para aplicar un desplazamiento de banda y un grupo de las bandas y puede enviar solamente un desplazamiento para las bandas válidas (bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse) al descodificador de vídeo. Además, el módulo de filtro puede aplicar múltiples desplazamientos de borde dentro de una región de aplicación de SAO. Los detalles se han descrito más arriba.
Además, el módulo de filtro puede aplicar un SAO a píxeles croma. Una región a la cual puede aplicarse el SAO puede definirse, de forma independiente, en caso de luma y croma. Además, en caso de un desplazamiento de banda para croma, el número de bandas y un grupo pueden determinarse con el fin de aplicar un desplazamiento a píxeles croma. Los detalles se han descrito más arriba.
A continuación, el codificador de vídeo puede enviar un tren binario, incluida la información de vídeo sobre una imagen a la cual el SAO, etc., se aplica e información de vídeo sobre el SAO, al descodificador de vídeo en la etapa E1730. Aquí, el codificador de vídeo puede llevar a cabo procesos como, por ejemplo, una transformada, cuantificación, redisposición y codificación de entropía, con el fin de transmitir la información. Si se aplica un desplazamiento de banda, el codificador de vídeo puede enviar información que indica las bandas que cubren un rango de valores de píxeles a las cuales el desplazamiento de banda puede aplicarse y valores de desplazamiento de banda para las bandas.
La Figura 18 es un diagrama de flujo que ilustra, de manera esquemática, el funcionamiento del descodificador de vídeo en un sistema al cual se aplica la presente invención.
Con referencia a la Figura 18, el descodificador de vídeo recibe un tren binario del codificador de vídeo en la etapa E1810. El tren binario recibido incluye no solo información sobre una imagen, sino también otra información necesaria para reconstruir la información de vídeo.
El descodificador de vídeo reconstruye un bloque según la información recibida en la etapa E1820. El descodificador de vídeo genera un bloque reconstruido según un bloque de predicción generado según una predicción y un bloque residual generado a través de la descuantificación y una transformada inversa. Con el fin de generar el bloque residual, el descodificador de vídeo puede llevar a cabo la descodificación de entropía y la redisposición antes de llevar a cabo la descuantificación y la transformada inversa.
El descodificador de vídeo aplica un filtro en bucle al bloque reconstruido en la etapa E1830. El filtro en bucle puede usarse en el módulo de filtro de la Figura 2. Al menos uno de un filtro de desbloqueo, un SAO y un ALF puede usarse en el módulo de filtro. Aquí, el SAO puede aplicarse a una imagen mediante una unidad de píxel, a la cual el filtro de desbloqueo se ha aplicado. El SAO puede aplicarse a los bloques reconstruidos para cada unidad de aplicación de SAO. El ALF puede aplicarse a una imagen a la cual se ha aplicado el SAO.
Cuando se aplica el SAO, el módulo de filtro puede aplicar un desplazamiento a cada píxel. Aquí, el módulo de filtro puede derivar parámetros SAO según elementos de sintaxis recibidos del codificador de vídeo. El módulo de filtro puede aplicar un desplazamiento de banda al píxel actual según el número de desplazamientos (a saber, el número de bandas) y un grupo de las bandas que se indican por la información sobre la aplicación del SAO como, por ejemplo, los parámetros SAO. Aquí, la información sobre un desplazamiento para bandas válidas (a saber, bandas que cubren un rango de píxeles a las cuales un desplazamiento de banda se aplicará) solamente puede transmitirse al descodificador de vídeo. Además, el módulo de filtro puede aplicar múltiples desplazamientos de borde dentro de una región de aplicación de SAO correspondiente según una indicación de los parámetros SAO. La descripción detallada se ha provisto más arriba.
Además, el módulo de filtro puede aplicar el SAO a píxeles croma. Las regiones a las cuales el SAO puede aplicarse pueden definirse, de manera independiente, en casos de luma y croma, y la información relacionada puede recibirse del codificador de vídeo. Además, la información sobre el número de bandas y un grupo de las bandas para aplicar un desplazamiento de banda a píxeles croma puede recibirse del codificador de vídeo. El descodificador de vídeo puede llevar a cabo el SAO en los píxeles croma según la información recibida. La descripción detallada se ha provisto más arriba.
En la descripción de más arriba, los términos un "valor de píxel" e "intensidad de un píxel" se han usado de manera intercambiable con el fin de aclarar las características de la invención, pero los dos términos pueden interpretarse como unos que tienen el mismo significado o el término el "valor de píxel" puede interpretarse como uno que tiene un significado que incluye la "intensidad de un píxel". Además, con respecto a una región de unidad a la cual se aplica un SAO, la unidad de filtrado y la unidad de aplicación de SAO se han usado de manera intercambiable en aras de la descripción, pero se notará que pueden interpretarse como unos que tienen el mismo significado. En los sistemas a modo de ejemplo de más arriba, aunque los métodos se han descrito según los diagramas de flujo mediante el uso de una serie de etapas o bloques, la presente invención no se limita a la secuencia de las etapas, y algunas de las etapas pueden llevarse a cabo en secuencias diferentes de las restantes etapas o pueden llevarse a cabo de forma simultánea con las restantes etapas. Además, las realizaciones descritas más arriba incluyen varios aspectos de los ejemplos. Por consiguiente, la presente invención debe interpretarse como una que incluye todas las otras alteraciones, modificaciones y cambios que caen dentro del alcance de las reivindicaciones.
En la descripción con respecto a la presente invención, cuando se dice que un elemento se "conecta" o "acopla" a otro elemento, el elemento puede conectarse o acoplarse directamente al otro elemento, pero debe comprenderse que un tercer elemento puede existir entre los dos elementos. En cambio, cuando se dice que un elemento se "conecta directamente" o se "acopla directamente" a otro elemento, debe comprenderse que un tercer elemento no existe entre los dos elementos.

Claims (1)

  1. REIVINDICACIONES
    1. Un método de descodificación de vídeo, mediante un aparato de descodificación, el método comprendiendo:
    (E1810) obtener información de vídeo que incluye información de reconstrucción de imágenes e información de desplazamiento de un tren binario;
    (E1820) generar una imagen reconstruida según la información de reconstrucción de imágenes; y (E1830) aplicar un filtro en bucle a la imagen reconstruida,
    en donde la etapa (E1830) de aplicar el filtro en bucle incluye las etapas de:
    aplicar un proceso de filtrado de desbloqueo a la imagen reconstruida; y
    aplicar un proceso de desplazamiento adaptativo de muestra a la imagen reconstruida según la información de desplazamiento después de completar el proceso del filtrado de desbloqueo, en donde la información de desplazamiento incluye información de tipo de desplazamiento para especificar un tipo de desplazamiento para una muestra, en donde la información de tipo de desplazamiento indica un desplazamiento de banda para la muestra, y
    en donde la información de desplazamiento incluye información sobre n valores de desplazamiento, caracterizado por que
    la información de desplazamiento incluye información de banda de inicio que indica, de manera explícita, una de 32 bandas como una banda de inicio de n bandas para determinar un grupo de bandas que comprende las n bandas entre las 32 bandas, la información de banda de inicio siendo diferente de la información de tipo de desplazamiento, el grupo de bandas se determina además según información de banda de finalización que indica, de manera variable, una banda de finalización de las n bandas, en donde el grupo de bandas se ubica, de manera variable, entre las 32 bandas según la información de banda de inicio, en donde un valor de desplazamiento corresponde a una banda entre las n bandas para la muestra, n es un entero positivo.
    2. El método de la reivindicación 1, en donde un valor de la información de tipo de desplazamiento que indica el desplazamiento de banda para la muestra es mayor que 4.
    3. El método de la reivindicación 1, en donde el grupo de bandas se ubica, de manera variable, entre las 32 bandas según la información de banda de inicio junto con un número de las n bandas.
    4. El método de la reivindicación 1, en donde n se determina como un número constante.
    5. El método de la reivindicación 1, en donde una banda es una sección predeterminada de rango de valores de píxeles que las muestran pueden tener.
    6. Un aparato de descodificación para descodificar un vídeo, el aparato comprendiendo:
    un módulo de descodificación de entropía (210) para (E1810) obtener información de vídeo que incluye información de reconstrucción de imágenes e información de desplazamiento de un tren binario;
    una unidad de generación de bloque reconstruido para (E1820) generar una imagen reconstruida según la información de reconstrucción de imágenes; y
    un módulo de filtro (235) para (E1830) aplicar un filtro en bucle a la imagen reconstruida,
    en donde, para aplicar el filtro en bucle, el módulo de filtro (235) aplica un proceso de filtrado de desbloqueo a la imagen reconstruida, y aplica un proceso de desplazamiento adaptativo de muestra a la imagen reconstruida según la información de desplazamiento después de completar el proceso de filtrado de desbloqueo,
    en donde la información de desplazamiento incluye información de tipo de desplazamiento para especificar un tipo de desplazamiento para una muestra, en donde la información de tipo de desplazamiento indica un desplazamiento de banda para la muestra, y
    en donde la información de desplazamiento incluye información sobre n valores de desplazamiento, caracterizado por que
    la información de desplazamiento incluye información de banda de inicio que indica, de manera explícita, una de 32 bandas como una banda de inicio de n bandas para determinar un grupo de bandas que comprende las n bandas entre las 32 bandas, la información de banda de inicio siendo diferente de la información de tipo de desplazamiento, el grupo de bandas se determina además según información de banda de finalización que indica, de manera variable, la banda de finalización de las n bandas, en donde el grupo de bandas se ubica, de forma variable, entre las 32 bandas según la información de banda de inicio, en donde un valor de desplazamiento corresponde a una banda entre las n bandas para la muestra, n es un entero positivo.
    7. El aparato de la reivindicación 6, en donde el grupo de bandas se ubica, de forma variable, entre las 32 bandas según la información de banda de inicio junto con un número de las n bandas.
    8. El aparato de la reivindicación 6, en donde n se determina como un número constante.
    9. Un método de codificación de vídeo, mediante un aparato de codificación, el método comprendiendo:
    (E1710) generar una imagen reconstruida de una imagen actual;
    (E1720) aplicar un filtro en bucle a la imagen reconstruida; y
    (E1730) producir un tren binario que comprende información de vídeo que incluye información de reconstrucción de imágenes e información de desplazamiento,
    en donde la etapa (E1710) de aplicación del filtro en bucle incluye las etapas de:
    aplicar un proceso de filtrado de desbloqueo a la imagen reconstruida; y
    aplicar un proceso de desplazamiento adaptativo de muestra a la imagen reconstruida según la información de desplazamiento después de completar el proceso de filtrado de desbloqueo, en donde la información de desplazamiento incluye información de tipo de desplazamiento para especificar un tipo de desplazamiento para una muestra, en donde la información de tipo de desplazamiento indica un desplazamiento de banda para la muestra,
    en donde la información de desplazamiento incluye información sobre n valores de desplazamiento, caracterizado por que
    la información de desplazamiento incluye información de banda de inicio que indica, de forma explícita, una de 32 bandas como una banda de inicio de n bandas para determinar un grupo de bandas que comprende las n bandas entre las 32 bandas, la información de banda de inicio siendo diferente de la información de tipo de desplazamiento, el grupo de bandas se determina además según información de banda de finalización que indica, de manera variable, una banda de finalización de las n bandas, en donde el grupo de bandas se ubica, de forma variable, entre las 32 bandas según la información de banda de inicio, en donde un valor de desplazamiento corresponde a una banda entre las n bandas para la muestra, n es un entero positivo.
    10. El método de la reivindicación 9, en donde el grupo de bandas se ubica, de forma variable, entre las 32 bandas según la información de banda de inicio junto con un número de las n bandas.
    11. Un medio de almacenamiento legible por descodificador que almacena el tren binario derivado por el método de codificación de vídeo de la reivindicación 9.
ES17187999T 2011-06-14 2012-06-14 Método para codificar y descodificar la información de imágenes Active ES2853673T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201161497045P 2011-06-14 2011-06-14

Publications (1)

Publication Number Publication Date
ES2853673T3 true ES2853673T3 (es) 2021-09-17

Family

ID=47357606

Family Applications (3)

Application Number Title Priority Date Filing Date
ES17187999T Active ES2853673T3 (es) 2011-06-14 2012-06-14 Método para codificar y descodificar la información de imágenes
ES20201588T Active ES2929494T3 (es) 2011-06-14 2012-06-14 Método para codificar y descodificar la información de imágenes
ES12800855.4T Active ES2657827T3 (es) 2011-06-14 2012-06-14 Método para codificar y descodificar la información de imágenes

Family Applications After (2)

Application Number Title Priority Date Filing Date
ES20201588T Active ES2929494T3 (es) 2011-06-14 2012-06-14 Método para codificar y descodificar la información de imágenes
ES12800855.4T Active ES2657827T3 (es) 2011-06-14 2012-06-14 Método para codificar y descodificar la información de imágenes

Country Status (12)

Country Link
US (8) US9565453B2 (es)
EP (5) EP3280144B1 (es)
KR (8) KR102088014B1 (es)
CN (2) CN107682698B (es)
DK (1) DK3787289T3 (es)
ES (3) ES2853673T3 (es)
FI (1) FI4075799T3 (es)
HU (1) HUE060260T2 (es)
MX (1) MX2013014951A (es)
PL (3) PL3280144T3 (es)
PT (1) PT3787289T (es)
WO (1) WO2012173403A2 (es)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2013014951A (es) 2011-06-14 2014-07-09 Lg Electronics Inc Metodo para codificar y decodificar informacion de imagenes.
KR102104594B1 (ko) 2011-06-24 2020-04-24 엘지전자 주식회사 영상 정보 부호화 및 복호화 방법
GB201119206D0 (en) * 2011-11-07 2011-12-21 Canon Kk Method and device for providing compensation offsets for a set of reconstructed samples of an image
US9277194B2 (en) * 2011-11-08 2016-03-01 Texas Instruments Incorporated Method and apparatus for image and video coding using hierarchical sample adaptive band offset
US9253482B2 (en) 2011-11-08 2016-02-02 Texas Insturments Incorporated Method and apparatus for sample adaptive offset without sign coding
US9282328B2 (en) 2012-02-10 2016-03-08 Broadcom Corporation Sample adaptive offset (SAO) in accordance with video coding
EP2838259A4 (en) * 2012-04-13 2015-12-16 Mitsubishi Electric Corp APPARATUS FOR CODING MOVEMENT PICTURES, DEVICE FOR DECODING MOVEMENT PICTURES, METHOD FOR CREATING MOVEMENT IMAGES AND METHOD FOR DECODING MOVEMENT PICTURES
US10477208B2 (en) * 2012-09-24 2019-11-12 Intel Corporation Histogram segmentation based local adaptive filter for video encoding and decoding
GB2509707B (en) * 2013-01-04 2016-03-16 Canon Kk A method, device, computer program, and information storage means for encoding or decoding a video sequence
GB2512827B (en) * 2013-04-05 2015-09-16 Canon Kk Method and device for classifying samples of an image
CN111263149B (zh) * 2013-12-12 2021-10-26 三星电子株式会社 视频编码方法和设备以及视频解码方法和设备
CN110267039B (zh) * 2014-04-04 2023-05-16 北京三星通信技术研究有限公司 对像素标识进行处理的方法和装置
CN105409221B (zh) * 2014-04-29 2020-03-06 微软技术许可有限责任公司 用于样本自适应偏移滤波的编码器侧决策
CN105530519B (zh) * 2014-09-29 2018-09-25 炬芯(珠海)科技有限公司 一种环内滤波方法及装置
CN105635732B (zh) * 2014-10-30 2018-12-14 联想(北京)有限公司 自适应样点补偿编码、对视频码流进行解码的方法及装置
US10238386B2 (en) 2015-09-23 2019-03-26 Ethicon Llc Surgical stapler having motor control based on an electrical parameter related to a motor current
EP3280143A1 (en) * 2016-08-04 2018-02-07 Thomson Licensing A method and an apparatus for image block encoding and decoding
EP3306924A1 (en) 2016-10-05 2018-04-11 Thomson Licensing Method and device for context-adaptive binary arithmetic coding a sequence of binary symbols representing a syntax element related to picture data
CN110114803B (zh) * 2016-12-28 2023-06-27 松下电器(美国)知识产权公司 三维模型分发方法、三维模型接收方法、三维模型分发装置以及三维模型接收装置
CN115714862A (zh) 2017-05-31 2023-02-24 交互数字麦迪逊专利控股公司 画面编码和解码的方法和设备
EP3766252A4 (en) * 2018-03-26 2022-03-30 MediaTek Inc. METHODS AND APPARATUS FOR SIGNALING VIDEO DATA CODING UNIT PARTITIONING
GB2574423A (en) * 2018-06-05 2019-12-11 Canon Kk Video coding and decoding
CN108810543B (zh) * 2018-06-13 2020-08-28 北京奇艺世纪科技有限公司 视频编码的补偿方法、装置及电子设备
WO2020204420A1 (ko) * 2019-04-03 2020-10-08 엘지전자 주식회사 필터링 기반 비디오 또는 영상 코딩
WO2020204412A1 (ko) * 2019-04-03 2020-10-08 엘지전자 주식회사 적응적 루프 필터 절차를 동반한 비디오 또는 영상 코딩
US20220277491A1 (en) * 2019-05-31 2022-09-01 Electronics And Telecommunications Research Institute Method and device for machine learning-based image compression using global context
CN110121069B (zh) * 2019-06-27 2021-06-11 上海富瀚微电子股份有限公司 基于十字界的hevc环路滤波方法
WO2023113224A1 (ko) * 2021-12-17 2023-06-22 현대자동차주식회사 매핑 기반 비디오 코딩에서 인루프 필터링

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2735355B2 (ja) * 1990-04-13 1998-04-02 株式会社日立製作所 ストロボ機能付き高品位テレビ受信機
FI114679B (fi) 2002-04-29 2004-11-30 Nokia Corp Satunnaisaloituspisteet videokoodauksessa
KR20050099256A (ko) 2004-04-09 2005-10-13 삼성전자주식회사 디블록킹을 이용한 영상처리 장치와 영상처리 방법
NO322722B1 (no) * 2004-10-13 2006-12-04 Tandberg Telecom As Fremgangsmate for videokoding gjennom reduksjon av blokkartefakter
CN100345450C (zh) * 2005-01-31 2007-10-24 浙江大学 视频或图像去块滤波的方法和装置
US7956930B2 (en) 2006-01-06 2011-06-07 Microsoft Corporation Resampling and picture resizing operations for multi-resolution video coding and decoding
US7995649B2 (en) 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
CN102158697B (zh) 2006-09-07 2013-10-09 Lg电子株式会社 用于解码/编码视频信号的方法及装置
US9001899B2 (en) * 2006-09-15 2015-04-07 Freescale Semiconductor, Inc. Video information processing system with selective chroma deblock filtering
TWI368443B (en) 2006-11-09 2012-07-11 Lg Electronics Inc Method and apparatus for decoding/encoding a video signal
KR101349836B1 (ko) 2006-11-17 2014-01-10 엘지전자 주식회사 비디오 신호의 디코딩/인코딩 방법 및 장치
JP5026092B2 (ja) * 2007-01-12 2012-09-12 三菱電機株式会社 動画像復号装置および動画像復号方法
KR101552639B1 (ko) 2008-07-11 2015-09-14 한국전자통신연구원 인트라 매크로 블록의 디블록킹 필터 및 필터링 방법
WO2010005269A1 (en) 2008-07-11 2010-01-14 Electronics And Telecommunications Research Institute Filter and filtering method for deblocking of intra macroblock
JP5233897B2 (ja) 2009-07-31 2013-07-10 ソニー株式会社 画像処理装置および方法
US8660174B2 (en) * 2010-06-15 2014-02-25 Mediatek Inc. Apparatus and method of adaptive offset for video coding
US8902978B2 (en) 2010-05-30 2014-12-02 Lg Electronics Inc. Enhanced intra prediction mode signaling
US9055305B2 (en) * 2011-01-09 2015-06-09 Mediatek Inc. Apparatus and method of sample adaptive offset for video coding
US9001883B2 (en) * 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
US20120294353A1 (en) * 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
CN106028050B (zh) * 2011-05-16 2019-04-26 寰发股份有限公司 用于亮度和色度分量的样本自适应偏移的方法和装置
MX2013014951A (es) * 2011-06-14 2014-07-09 Lg Electronics Inc Metodo para codificar y decodificar informacion de imagenes.
US10038903B2 (en) * 2011-06-22 2018-07-31 Texas Instruments Incorporated Method and apparatus for sample adaptive offset parameter estimation in video coding
SI2725797T1 (sl) 2011-06-23 2018-12-31 Huawei Technologies Co., Ltd. Naprava za dekodiranje odmika, naprava za kodiranje odmika, naprava za filtriranje slike in struktura podatkov
KR102104594B1 (ko) * 2011-06-24 2020-04-24 엘지전자 주식회사 영상 정보 부호화 및 복호화 방법
US9161035B2 (en) * 2012-01-20 2015-10-13 Sony Corporation Flexible band offset mode in sample adaptive offset in HEVC
US9031137B2 (en) * 2012-05-03 2015-05-12 Texas Instruments Incorporated Signaling signed band offset values for sample adaptive offset (SAO) filtering in video coding
CN104813665A (zh) * 2012-09-28 2015-07-29 三星电子株式会社 用于对层间预测误差进行编码的sao补偿的方法和设备

Also Published As

Publication number Publication date
US20150229972A1 (en) 2015-08-13
CN103733627A (zh) 2014-04-16
KR20190054178A (ko) 2019-05-21
US11418815B2 (en) 2022-08-16
KR20200133028A (ko) 2020-11-25
US20160337642A1 (en) 2016-11-17
EP2723073B1 (en) 2017-11-08
EP2723073A4 (en) 2014-11-26
KR20220005648A (ko) 2022-01-13
EP3280144B1 (en) 2020-11-25
EP4075799A1 (en) 2022-10-19
EP4075799B1 (en) 2024-04-10
US9300982B2 (en) 2016-03-29
US10531126B2 (en) 2020-01-07
KR102349348B1 (ko) 2022-01-10
US20220353541A1 (en) 2022-11-03
FI4075799T3 (fi) 2024-05-06
EP4373090A3 (en) 2024-05-29
EP3787289B1 (en) 2022-08-03
US11671630B2 (en) 2023-06-06
KR20140034857A (ko) 2014-03-20
US20210144410A1 (en) 2021-05-13
PL3280144T4 (pl) 2021-06-14
US20140119433A1 (en) 2014-05-01
KR102183214B1 (ko) 2020-11-25
KR20210043747A (ko) 2021-04-21
CN107682698B (zh) 2020-07-28
KR102088014B1 (ko) 2020-03-11
US20200413104A1 (en) 2020-12-31
US9992515B2 (en) 2018-06-05
HUE060260T2 (hu) 2023-02-28
PL3280144T3 (pl) 2021-06-14
US10798421B2 (en) 2020-10-06
KR101979387B1 (ko) 2019-05-16
EP3280144A1 (en) 2018-02-07
ES2657827T3 (es) 2018-03-07
KR20230004920A (ko) 2023-01-06
KR102656595B1 (ko) 2024-04-12
PL2723073T3 (pl) 2018-04-30
US10924767B2 (en) 2021-02-16
KR102479046B1 (ko) 2022-12-19
PT3787289T (pt) 2022-09-30
EP2723073A2 (en) 2014-04-23
US20200120361A1 (en) 2020-04-16
EP3787289A1 (en) 2021-03-03
EP4373090A2 (en) 2024-05-22
KR20200028049A (ko) 2020-03-13
PL3787289T3 (pl) 2022-12-12
DK3787289T3 (da) 2022-08-29
WO2012173403A3 (ko) 2013-03-14
CN103733627B (zh) 2017-11-17
KR102241992B1 (ko) 2021-04-19
MX2013014951A (es) 2014-07-09
US9565453B2 (en) 2017-02-07
KR20240051308A (ko) 2024-04-19
ES2929494T3 (es) 2022-11-29
US20180288442A1 (en) 2018-10-04
CN107682698A (zh) 2018-02-09
WO2012173403A2 (ko) 2012-12-20

Similar Documents

Publication Publication Date Title
ES2853673T3 (es) Método para codificar y descodificar la información de imágenes
US11758149B2 (en) In-loop filtering method and apparatus for same
US11570431B2 (en) Method and device for performing image decoding on basis of intra prediction in image coding system
US10547837B2 (en) Image information encoding and decoding method
US10721479B2 (en) Intra prediction method and apparatus in image coding system
US20200204814A1 (en) Method and device for decoding image according to intra prediction in image coding system