ES2628911T3 - Procedimiento y aparato para codificar vídeo compensando valor de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para decodificar vídeo mediante lo mismo - Google Patents

Procedimiento y aparato para codificar vídeo compensando valor de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para decodificar vídeo mediante lo mismo Download PDF

Info

Publication number
ES2628911T3
ES2628911T3 ES15191967.7T ES15191967T ES2628911T3 ES 2628911 T3 ES2628911 T3 ES 2628911T3 ES 15191967 T ES15191967 T ES 15191967T ES 2628911 T3 ES2628911 T3 ES 2628911T3
Authority
ES
Spain
Prior art keywords
pixel
coding
value
unit
information
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
ES15191967.7T
Other languages
English (en)
Inventor
Alexander Alshin
Elena Alshina
Nikolay Shlyakhov
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of ES2628911T3 publication Critical patent/ES2628911T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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
    • 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
    • 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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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
    • 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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • 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
    • 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/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

Un aparato para decodificación de vídeo, comprendiendo el aparato: un procesador que está configurado para obtener, a partir de un flujo de bits, información acerca de un tipo de corrección de valores de píxel y, cuando la información acerca de un tipo de corrección de valores de píxel indica uno de un tipo de banda y un tipo de borde, obtener una pluralidad de valores de compensación a partir del flujo de bits; un compensador de tipo de banda que está configurado para, cuando la información acerca de un tipo de corrección de valores de píxel indica el tipo de banda, añadir un valor de compensación entre la pluralidad de valores de compensación a un píxel en una banda entre píxeles de un bloque actual, en el que un intervalo total de valores de los píxeles es desde un valor mínimo de los valores de los píxeles hasta un valor máximo de los valores de los píxeles, y una sección que corresponde al intervalo total de valores de los píxeles se divide uniformemente en una pluralidad de bandas, la banda es una de una pluralidad de bandas, un valor del píxel está en un intervalo de valores de píxel que corresponden a la banda, la pluralidad de valores de compensación corresponden a la pluralidad de bandas y el valor de compensación corresponde a la banda; y un compensador de tipo de borde que está configurado para, cuando la información acerca de un tipo de corrección de valores de píxel indica el tipo de borde, añadir el valor de compensación entre la pluralidad de valores de compensación, a un píxel que corresponde a un nivel de valor de borde entre los píxeles de un bloque actual, en el que el nivel de valor de borde se determina basándose en si el valor del píxel (30) es mayor o menor que los valores de píxeles restaurados vecinos (31, 32, 33, 34, 35, 36, 37 y 38) en una dirección vertical, una horizontal o una diagonal, la pluralidad de valores de compensación corresponde a la pluralidad de niveles de valor de borde, y el valor de compensación corresponde al nivel de valor de borde entre la pluralidad de niveles de valor de borde.

Description

5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Procedimiento y aparato para codificar v^deo compensando valor de p^xel de acuerdo con grupos de p^xeles, y procedimiento y aparato para decodificar video mediante lo mismo
Campo tecnico
Los aparatos coherentes con las realizaciones ejemplares se refieren a codificar y decodificar un video. Antecedentes de la tecnica
A medida que se esta desarrollando y suministrando el hardware para reproducir y almacenar contenido de video de alta resolucion o alta calidad, esta aumentando una necesidad de un codec de video para codificar o decodificar de manera eficaz el contenido de video de alta resolucion o alta calidad. En un codec de video de la tecnica relacionada, un video se codifica de acuerdo con un procedimiento de codificacion limitado basandose en un macrobloque que tiene un tamano predeterminado.
La calidad de una imagen puede distorsionarse debido a la codificacion y decodificacion de un video, y puede anadirse un modulo de post-procesamiento a un decodificador para una imagen restaurada para mejorar la calidad de la imagen restaurada.
El artfculo YU LIU y col. “Unified Loop Filter for Video Coding”, 91. MPEG MEETING; 18-1-2010 - 22-1-2010; KIOTO; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), n.° M17171, 16 de enero de 2010 describe un filtro de bucle unificado para codificacion de video, que suprime el ruido de cuantificacion optimamente y mejora el filtro de potenciacion objetivo y subjetivo y el filtro de restauracion lineal en la estructura de optimizacion clasica de un mmimo error cuadratico medio. Para adaptar las caractensticas de error de cuantificacion localmente diversas, se emplea la estrategia basada en clasificacion para disenar filtros de bucle unificados con diferentes caractensticas, que mejoran adicionalmente las capacidades de la restauracion de instantanea y filtracion de bucle
Divulgacion
Problema tecnico
Una o mas realizaciones ejemplares proporcionan un procedimiento y aparato para codificar video, y un procedimiento y aparato para decodificar video, para compensar un valor de pixel de un grupo de pfxeles predeterminado.
Solucion tecnica
De acuerdo con un aspecto ejemplar, se proporciona un aparato para decodificacion de video.
Efectos ventajosos
En el aparato de decodificacion de video de acuerdo con realizaciones ejemplares pueden determinarse valores promedio de errores de valores mmimos locales y valores maximos locales de un grupo de pfxeles predeterminado entre una imagen restaurada y una imagen original, y puede tener lugar la compensacion para valores de pixel de pfxeles restaurados en el grupo de pfxeles predeterminado.
Descripcion de los dibujos
La Figura 1 es un diagrama de bloques de un aparato para codificar un video para compensar un valor de pixel; la Figura 2 es un diagrama de bloques de un aparato para decodificar un video para compensar un valor de pixel, de acuerdo con una realizacion ejemplar;
la Figura 3 ilustra pfxeles restaurados vecinos a compararse a un pixel restaurado para determinar un nivel de valor extremo del pixel restaurado;
la Figura 4 es un diagrama de flujo para describir filtracion de bucle adaptativa; la Figura 5 es un diagrama de flujo para describir filtracion de bucle adaptativa;
la Figura 6 es un diagrama de flujo que ilustra un procedimiento de codificacion de un video para compensar un valor de pixel;
la Figura 7 es un diagrama de flujo que ilustra un procedimiento de decodificacion de un video compensando un valor de pixel;
la Figura 8 es un diagrama de bloques de un aparato para codificar un video compensando un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol; la Figura 9 es un diagrama de bloques de un aparato para decodificar un video compensando un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol, de acuerdo con una realizacion ejemplar;
la Figura 10 es un diagrama para describir un concepto de unidades de codificacion;
la Figura 11 es un diagrama de bloques de un codificador de imagen basandose en unidades de codificacion; la Figura 12 es un diagrama de bloques de un decodificador de imagen basandose en unidades de codificacion de
5
10
15
20
25
30
35
40
45
50
55
acuerdo con una realizacion ejemplar;
la Figura 13 es un diagrama que ilustra unidades de codificacion mas profundas de acuerdo con las profundidades, y particiones;
la Figura 14 es un diagrama para describir una relacion entre una unidad de codificacion y unidades de transformacion;
la Figura 15 es un diagrama para describir informacion de codificacion de unidades de codificacion que corresponden a una profundidad codificada;
la Figura 16 es un diagrama de unidades de codificacion mas profundas de acuerdo con las profundidades;
las Figuras 17 a 19 son diagramas para describir una relacion entre unidades de codificacion, unidades de
prediccion y unidades de transformacion;
la Figura 20 es un diagrama para describir una relacion entre una unidad de codificacion, una unidad de prediccion o una particion, y una unidad de transformacion, de acuerdo con modo de codificacion informacion de la Tabla 2; la Figura 21 es un diagrama de flujo que ilustra un procedimiento de codificacion de un video compensando un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol; y
la Figura 22 es un diagrama de flujo que ilustra un procedimiento de decodificacion de un video compensando un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol.
Mejor modo
De acuerdo con un aspecto de otro ejemplo se proporciona un aparato para decodificar un video como se expone en la reivindicacion adjunta 1.
Modo para la invencion
En lo sucesivo, se describiran realizaciones ejemplares mas completamente con referencia a los dibujos adjuntos. Expresiones tales como “al menos uno de”, cuando preceden a una lista de elementos, modifican la lista completa de elementos y no modifican los elementos individuales de la lista.
Un procedimiento y aparato para codificar un video, y un procedimiento y aparato para decodificar un video, compensando errores de valores de pixel de un grupo de pfxeies predeterminado, de acuerdo con las realizaciones ejemplares se describira ahora con referencia a las Figuras 1 a 22. En detalle, se describira codificar y decodificar un video compensando un valor de pixel despues de realizar filtracion de bucle, de acuerdo con las realizaciones ejemplares con referencia a las Figuras 1 a 7, y se describira codificar y decodificar un video para compensar un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol con referencia a las Figuras 8 a 22.
En lo sucesivo, la codificacion y decodificacion de un video compensando un valor de pixel despues de realizar filtracion de bucle de acuerdo con las realizaciones ejemplares se describira con referencia a las Figuras 1 a 7.
La Figura 1 es un diagrama de bloques de un aparato 10 de codificacion de video para compensar un valor de pixel.
El aparato de codificacion de video incluye un codificador 12, un generador 14 de imagen restaurada, un determinador 16 de valor de compensacion y grupo de pfxeles y un transmisor 18. Las operaciones del codificador 12, el generador 14 de imagen restaurada y el determinador 16 de valor de compensacion y grupo de pfxeles del aparato 10 de codificacion de video pueden controlarse de manera organica mediante un procesador de codificacion de video, un procesador central, un procesador de graficos o similares.
El codificador 12 codifica una imagen en una unidad de instantanea de entre una secuencia de imagenes de entrada. El codificador puede generar datos de imagen codificados realizando estimacion de movimiento, inter prediccion, intra prediccion, transformacion y cuantificacion en una imagen de entrada.
El codificador 12 puede usar cualquier procedimiento de codificacion de video, tal como MPEG 1,2, 4 y H.26x. Por ejemplo, el codificador 12 puede usar un procedimiento de codificacion de video basandose en unidades de codificacion que tienen una estructura de arbol, que se describira mas tarde con referencia a las Figuras 8 a 22.
El generador 14 de imagen restaurada puede recibir los datos de imagen codificados mediante el codificador 12, y generar una imagen restaurada decodificando los datos de imagen codificados y realizando filtracion de bucle en los datos de imagen decodificados.
El generador 14 de imagen restaurada puede generar los datos de imagen decodificados realizando cuantificacion inversa, transformacion inversa, inter prediccion, compensacion de movimiento e intra prediccion en los datos de imagen codificados.
La decodificacion realizada en los datos de imagen codificados mediante el generador 14 de imagen restaurada puede realizarse como procedimientos inversos de un procedimiento de codificacion de video realizado mediante el codificador 12. Por ejemplo, se describira mas tarde el aparato 10 de codificacion de video cuando el codificador 12
5
10
15
20
25
30
35
40
45
50
55
y el generador 14 de imagen restaurada realizan el procedimiento de codificacion de un video, con referencia a las Figuras 8 a 22.
El generador 14 de imagen restaurada puede realizar filtracion en bucle en los datos de imagen decodificados. La filtracion en bucle puede incluir de manera selectiva filtracion de desbloqueo y filtracion de bucle adaptativa. La filtracion de bucle adaptativa puede realizarse usando una pluralidad de filtros unidimensionales continuos. La filtracion de bucle adaptativa de acuerdo con las realizaciones ejemplares se describira en detalle mas tarde con referencia a las Figuras 4 y 5.
El determinador 16 de valor de compensacion y grupo de pfxeles recibe la imagen de entrada y la imagen restaurada emitidas mediante el generador 14 de imagen restaurada, determina un valor de compensacion acerca de un error entre cada pixel restaurado de un grupo predeterminado en la imagen restaurada, y un correspondiente pixel original en la imagen de entrada, y determina un grupo de pfxeles que incluyen pfxeles restaurados a compensarse usando el valor de compensacion.
El determinador 16 de valor de compensacion y grupo de pfxeles compara valores de pixel de pfxeles restaurados vecinos de entre los pfxeles restaurados en la imagen restaurada, y determina un nivel de valor de extremo y/o de borde que indica una cercama a un valor maximo y un valor mmimo. En lo sucesivo, por conveniencia de explicacion, un 'nivel de valor de extremo y/o de borde' puede representar al menos uno de un nivel de valor de borde y un nivel de valor de borde. El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar los pfxeles restaurados vecinos en grupos de pfxeles que incluyen pfxeles restaurados que tienen el mismo nivel de valor de extremo y/o de borde, basandose en cada nivel de valor de extremo y/o de borde de los pfxeles restaurados.
El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar al menos un grupo de pfxeles de nivel de valor de extremo y/o de borde de entre los grupos de pfxeles clasificados como un grupo de pfxeles que tiene valores de pixel a compensarse. El grupo 16 de valor de compensacion y pfxeles puede determinar compensar valores de pixel de grupos de pfxeles de niveles de valor de extremo y/o borde mmimo y maximo, o valores de pixel de grupos de pfxeles de niveles de valor de extremo y/o de borde en un intervalo predeterminado. Un procedimiento de determinacion de un objetivo a compensarse basandose en niveles de valor de extremo y/o de borde de pfxeles restaurados vecinos se describira mas tarde con referencia a la Figura 3.
El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar compensar valores de pixel de grupos de pfxeles de acuerdo con las bandas. El determinador 16 de valor de compensacion y grupo de pfxeles puede dividir un intervalo total de valores de pixel de los pfxeles restaurados en una pluralidad de bandas de division para asignar grupos de pfxeles de los pfxeles restaurados. El determinador 16 de valor de compensacion y grupo de pfxeles puede clasificar pfxeles restaurados en la misma banda en grupos de pfxeles de acuerdo con las bandas, basandose en los valores de pixel de los pfxeles restaurados. En este punto, todos los valores de pixel de los pfxeles restaurados en el grupo de pfxeles de acuerdo con las bandas pueden determinarse para compensarse, y el determinador 16 de valor de compensacion y grupo de pfxeles puede determinar de manera separada un valor de compensacion para cada grupo de pfxeles de acuerdo con las bandas.
Para procesamiento a alta velocidad, el intervalo total de los valores de pixel puede dividirse en un numero de bandas identico a un numero de 2 a la potencia de un numero entero positivo. Para procesamiento a alta velocidad, cuando un numero de bits mas significativos en una profundidad de bits de una cadena de bits de los pfxeles restaurados es p, el intervalo total de los valores de pixel puede dividirse en un numero de bandas identico a un numero de 2Ap. Como alternativa, el intervalo total de los valores de pixel puede ser identico a un intervalo de profundidad de bits extendida del pixel restaurado.
El determinador 16 de valor de compensacion y grupo de pfxeles puede analizar la imagen restaurada, detectar lmeas en una direccion predeterminada, y clasificar los pfxeles restaurados en grupos de pfxeles de acuerdo con las lmeas que incluyen pfxeles restaurados en la misma lmea. Cuando se detectan lmeas en diversas direcciones, tal como una direccion horizontal, una direccion vertical, una direccion diagonal, una direccion curvada y una direccion de lfmite de un objeto predeterminado, los pfxeles que forman cada lmea pueden clasificarse en un grupo de pfxeles. El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar de manera individual un valor de compensacion para cada grupo de pfxeles de acuerdo con las lmeas.
El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar un valor promedio de errores entre los pfxeles restaurados a compensarse y pfxeles originales correspondientes como el valor de compensacion. El error entre el pixel restaurado y el pixel original puede incluir una diferencia entre el pixel restaurado y el pixel original, un valor absoluto de la diferencia o un cuadrado de la diferencia. El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar un valor de compensacion para que se aplique igualmente a todos los pfxeles restaurados a compensar, o determinar de manera individual un valor de compensacion de acuerdo con grupos de pfxeles clasificados de acuerdo con las caractensticas.
El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar el pixel restaurado a compensar y determinar un valor de compensacion correspondiente, de acuerdo con al menos una unidad de datos de entre
5
10
15
20
25
30
35
40
45
50
55
una secuencia de imagen, un corte, un fotograma y una unidad de codificacion del video de entrada.
El transmisor 18 recibe y codifica el valor de compensacion determinado mediante el determinador 16 de valor de compensacion y grupo de pfxeles. El transmisor 18 recibe los datos de imagen codificados mediante el codificador 12, y genera y emite un flujo de bits que incluye el valor de compensacion codificado y los datos de imagen codificados. Los datos de imagen codificados pueden convertirse en un formato de flujo de bits mediante codificacion por entropfa, e insertarse en un flujo de bits para transmision.
El transmisor 18 puede recibir informacion adicional acerca de un procedimiento de determinacion de un grupo de pfxeles a partir del determinador de valor de compensacion y grupo de pfxeles, y codificar e insertar la informacion adicional en el flujo de bits. Puesto que el procedimiento puede ser basandose en los niveles de valor de extremo y/o de borde, bandas, o lmeas como se ha descrito anteriormente, puede transmitirse la informacion que indica como se emplea el valor de compensacion y un grupo de pfxeles usando el valor de compensacion.
Cuando el generador 14 de imagen restaurada realiza la filtracion de bucle adaptativa, el transmisor 18 puede recibir informacion acerca de un coeficiente de filtro de bucle para la filtracion de bucle adaptativa, y codificar e insertar la informacion en el flujo de bits. El aparato 10 de codificacion de video puede dividir la imagen a partes de una forma cuadrada, una forma rectangular o incluso forma irregular y realizar correccion selectiva para unicamente grupos espedficos de pfxeles en la region concreta. Basandose en las partes de division de la imagen, los valores de pixel pueden compensarse de manera adaptativa a los contenidos de la imagen. Tambien, el aparato 10 de codificacion de video puede transmitir informacion con respecto a grupos de pfxeles a corregirse mediante senalizacion explfcita y senalizacion implfcita.
El aparato 10 de codificacion de video puede proporcionar la informacion acerca del valor de compensacion obtenida durante la codificacion a un decodificador de modo que el decodificador puede soportar un post- procesamiento que puede realizarse para reducir un error entre la imagen restaurada y la imagen original. Tambien, puesto que se determina el valor de compensacion de acuerdo con los grupos de pfxeles, puede reducirse una cantidad de bits de transmision unicamente codificando y transmitiendo la informacion acerca del valor de compensacion, sin tener que codificar y transmitir informacion acerca de una localizacion de pfxeles individuales.
La Figura 2 es un diagrama de bloques de un aparato 20 de decodificacion de video para compensar un valor de pixel, de acuerdo con una realizacion ejemplar.
El aparato 20 de decodificacion de video incluye un restador 22, un generador 24 de imagen restaurada, un determinador 26 de grupo de pfxeles y un compensador 28 de pfxeles restaurados. Las operaciones del extractor 22, el generador 24 de imagen restaurada, el determinador 26 de grupo de pfxeles y el compensador 28 de pfxeles restaurados del aparato 20 de decodificacion de video pueden controlarse de manera organica mediante un procesador de decodificacion de video, un procesador central, un procesador de graficos o similares.
El extractor 22 recibe y analiza un flujo de bits acerca de una imagen codificada, y extrae datos de imagen codificados e informacion relacionada con un valor de compensacion a partir del flujo de bits. La informacion relacionada con el valor de compensacion puede incluir informacion acerca del valor de compensacion. Cuando la informacion relacionada con el valor de compensacion incluye adicionalmente informacion acerca de un procedimiento de determinacion de un grupo de pfxeles a compensarse usando el valor de compensacion, el extractor 22 puede extraer el valor de compensacion y la informacion acerca del procedimiento a partir del flujo de bits. El extractor 22 puede extraer al menos uno del valor de compensacion y la informacion relacionada con el valor de compensacion de acuerdo con al menos una unidad de datos de entre una secuencia de imagen, un corte, un fotograma y una unidad de codificacion de un video de entrada.
El extractor 22 puede extraer informacion de codificacion, tal como un procedimiento de codificacion y un modo de codificacion, que se usan para decodificar los datos de imagen codificados. Cuando la informacion acerca de un coeficiente de filtro de bucle para filtracion de bucle adaptativa se inserta en el flujo de bits, el extractor 22 puede extraer la informacion acerca del coeficiente de filtro de bucle a partir del flujo de bits.
El generador 24 de imagen restaurada recibe los datos de imagen codificados, la informacion de codificacion y la informacion acerca del coeficiente de filtro de bucle, que se extraen mediante el extractor 22, y genera una imagen restaurada decodificando los datos de imagen codificados y realizando la filtracion de bucle en los datos de imagen decodificados.
La decodificacion de los datos de imagen codificados puede realizarse como procedimientos inversos de un procedimiento de codificacion de video realizado en los datos de imagen codificados. Por ejemplo, cuando los datos de imagen codificados se codifican y transmiten de acuerdo con un procedimiento de codificacion de video basandose en unidades de codificacion que tienen una estructura de arbol, el generador 24 de imagen restaurada puede decodificar los datos de imagen codificados de acuerdo con un procedimiento de decodificacion de video basandose en unidades de codificacion que tienen una estructura de arbol.
El generador 24 de imagen restaurada puede realizar de manera selectiva filtracion en bucle, tal como filtracion de desbloqueo y filtracion de bucle adaptativa, en los datos de imagen decodificados. La filtracion de bucle adaptativa
5
10
15
20
25
30
35
40
45
50
55
puede realizarse usando una pluralidad de filtros unidimensionales continuos.
El determinador 26 de grupo de pfxeles puede recibir la imagen restaurada generada mediante el generador 24 de imagen restaurada, y la informacion relacionada con el valor de compensacion ex^do mediante el extractor 22, y determinar un grupo de pfxeles que incluye pfxeles restaurados a compensarse usando el valor de compensacion, de entre pfxeles restaurados de un grupo predeterminado en la imagen restaurada. El compensador 28 de pfxeles restaurados recibe el valor de compensacion extrafdo mediante el extractor 22, y la informacion acerca del grupo de pfxeles determinado mediante el determinador 26 de grupo de pfxeles, y compensa los valores de pixel de los pfxeles restaurados usando el valor de compensacion y emite la imagen restaurada que tiene los valores de pixel restaurados.
Cuando se extrae la informacion acerca del procedimiento de determinacion del grupo de pfxeles mediante el extractor 22, el determinador 26 de grupo de pfxeles puede determinar el grupo de pfxeles que tiene los valores de pixel a compensarse usando el procedimiento. Por ejemplo, el determinador 26 de grupo de pfxeles puede determinar si clasificar los pfxeles restaurados de acuerdo con niveles de valor de extremo y/o de borde, bandas de valores de pfxeles, o lmeas y determinar el grupo de pfxeles basandose en el procedimiento.
El determinador 26 de grupo de pfxeles puede determinar un nivel de valor de extremo y/o de borde de acuerdo con pfxeles restaurados comparando valores de pixel de pfxeles restaurados vecinos en la imagen restaurada. El determinador 26 de grupo de pfxeles puede clasificar los pfxeles restaurados vecinos basandose en los niveles de valor de extremo y/o de borde, y determinar un grupo de pfxeles que incluye los pfxeles restaurados de al menos un nivel de valor de extremo y/o de borde predeterminado como un grupo de pfxeies que incluye pfxeles restaurados que tienen valores de pixel a compensarse usando el valor de compensacion. El compensador 28 de pfxeles restaurados puede compensar los valores de pixel de los pfxeles restaurados en el grupo de pfxeles determinado, usando el valor de compensacion.
Como alternativa, el determinador 26 de grupo de pfxeles puede clasificar los pfxeles restaurados en la imagen restaurada en grupos de pfxeles de acuerdo con las bandas, basandose en bandas obtenidas dividiendo una seccion total de los valores de pixel. El compensador 28 de pfxeles restaurados puede compensar los valores de pixel de los pfxeles restaurados en el grupo de pfxeles de acuerdo con las bandas, usando un valor de compensacion de acuerdo con las bandas para los pfxeles restaurados en el grupo de pfxeles de acuerdo con las bandas.
La seccion total de los valores de pixel puede dividirse en un numero de bandas igual a un numero de 2 a la potencia de un numero entero positivo. En este punto, un mdice del numero de 2 a la potencia de un numero entero positivo puede determinarse basandose en un numero de bits mas significativos en una profundidad de bits de los pfxeles restaurados. Tambien, la seccion total de los valores de pixel puede ser un intervalo de profundidad de bits extendida de los pfxeles restaurados.
El determinador 26 de grupo de pfxeles puede clasificar los pfxeles restaurados de la imagen restaurada en grupos de pfxeles de acuerdo con las lmeas. El compensador 28 de pfxeles restaurados puede compensar valores de pixel de los pfxeles restaurados en el grupo de pfxeles de acuerdo con las lmeas, usando un valor de compensacion para el grupo de pfxeles de acuerdo con las lmeas. El determinador 26 de grupo de pfxeles puede detectar pfxeles restaurados que forman lmeas en al menos una direccion horizontal, una direccion vertical, una direccion diagonal, una direccion curvada o una direccion de lfmite de un objeto predeterminado, de entre los pfxeles restaurados de la imagen restaurada.
El valor de compensacion puede determinarse y transmitirse usando un valor promedio de errores entre los pfxeles restaurados y pfxeles originales correspondientes durante la codificacion. El compensador 28 de pfxeles restaurados puede compensar todos los valores de pixel de los pfxeles restaurados a compensarse usando un valor de compensacion. Como alternativa, cuando el valor de compensacion extrafdo mediante el extractor 22 se establece de acuerdo con grupos de pfxeles, el compensador 28 de pfxeles restaurados puede compensar los valores de pixel usando el valor de compensacion determinado de manera individual de acuerdo con los grupos de pfxeles.
El aparato 10 de codificacion de video y el aparato 20 de decodificacion de video pueden compensar un error sistematico generado entre una imagen restaurada y una imagen original cuando se decodifica y restaura una imagen codificada. El aparato 10 de codificacion de video puede transmitir informacion con respecto a grupos de pfxeles a corregirse mediante senalizacion explfcita y senalizacion implfcita. El aparato 10 de codificacion de video y el aparato 20 de decodificacion de video pueden dividir la imagen en partes de una forma de cuadrado, una forma rectangular o incluso forma irregular realizar correccion selectiva para unicamente grupos espedficos de pfxeles en la region concreta. Basandose en las partes de division de la imagen, los valores de pixel pueden compensarse de manera adaptativa a los contenidos de la imagen.
Como un ejemplo del error sistematico entre la imagen restaurada y la imagen original, el valor promedio de los errores de valores de pixel entre pfxeles restaurados en un grupo determinado y pfxeles originales correspondientes puede no ser 0. Por consiguiente, el aparato 10 de codificacion de video y el aparato 20 de decodificacion de video compensan el error entre el pixel restaurado y el pixel original.
5
10
15
20
25
30
35
El determinador 16 de valor de compensacion y grupo de p^xeles puede determinar un valor de compensacion de acuerdo con la Ecuacion 1 a continuacion.
[Ecuacion 1]
M
Z {0rs (*« > y*) - Rec (r»,> ym))
corr = —---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
M
En este punto, m indica un numero entero de 1 a M, y un valor promedio corr de errores entre valores de pixel Org(Xm, ym) de un pixel original y valores de pixel Rec(xm, ym) de un pixel restaurado puede usarse como un valor de compensacion de grupos de pfxeles {(xm, ym)} que incluyen pfxeles en las localizaciones (xm, ym).
El compensador 28 de pfxeles restaurados puede compensar valores de pixel de pfxeles restaurados en un grupo de pfxeles de acuerdo con la Ecuacion 2 a continuacion.
[Ecuacion 2]
ReCcorreg«o (wj = ReC (W™ )+ COrr
El compensador 28 de pfxeles restaurados puede compensar los valores de pixel Rec(xm, ym) del pixel restaurado usando el valor de compensacion corr, y emitir valores de pixel Reccorregido(Xm, ym) de acuerdo con pfxeles como resultado de compensar los valores de pixel Rec(xm, ym) en los grupos de pfxeles {(xm, ym)}.
El aparato 10 de codificacion de video y el aparato 20 de decodificacion de video pueden clasificar los pfxeles restaurados de acuerdo con una norma predeterminada, para determinar los grupos de pfxeles que tienen los valores de pixel a compensar.
Los grupos de pfxeles pueden clasificarse de acuerdo con niveles de valor de extremo y/o de borde. Un valor de extremo y/o borde local incluye un valor mmimo local y un valor maximo local. Un valor mmimo local f(xmin, ymin) y un valor maximo local f(xmax, ymax) en una coordenada vecina (x,y) en un intervalo predeterminado e se definen respectivamente en las Ecuaciones 3 y 4 a continuacion, con respecto a una funcion cuadratica f(x,y).
[Ecuacion 3]
f(x,y) > l^min ymin), si |xmin - x| + |ymin - y| < e y S>°.
[Ecuacion 4]
f(x,y) < f(xmax, ymax), si |xmax - x| + |ymax - y| < e (en el que, e>0).
Tambien, el valor mmimo local f(xmin, ymin) y el valor maximo local f(xmax, ymax) pueden definirse respectivamente en las Ecuaciones 5 y 6 a continuacion, con respecto a un pixel de senal discreta (x,y).
[Ecuacion 5]
f(xmi^
ymin) < (xmin+ 1, ymin)
f(xmi^
ymin) < (xmin- 1, ymin)
f(xmin,
ymin) < (xmin, ymin+1)
f(xmi^
ymin) < (xmin, ymin-1)
[Ecuacion 6]
f(xmax,
ymax) < (xmax+1, ymax)
f(xmax,
ymax) < (xmax-1, ymax)
f(xmax,
ymax) < (xmax, ymax+1)
5
10
15
20
25
30
35
40
45
50
f(x max, Ymax) < (x max, ymax-1)
El aparato 10 de codificacion de video y el aparato 20 de decodificacion de v^deo pueden determinar p^xeles que corresponden al valor de extremo y/o de borde de entre pfxeles restaurados vecinos predeterminados en lmeas horizontales y verticales, de acuerdo con las Ecuaciones 5 y 6. Tambien, los pfxeles mas vecinos, incluyendo, por ejemplo, los pfxeles (xmax+1, ymax+1), (xmax-1, ymax+1), (xmax+1, ymax-1) y (xmax-1, ymax-1) en lmeas diagonales, pueden incluirse en el procedimiento de clasificacion de pixel. Los pfxeles predeterminados pueden excluirse de los grupos de pfxeles. Por ejemplo, si unicamente pueden clasificarse pfxeles en la misma lmea en un grupo de pfxeles, otros p^xeles lejos de la lmea correspondiente pueden excluirse del grupo de pfxeles.
Un fenomeno de planarizacion puede generarse mediante un sistema de codificacion y decodificacion de video general. Por consiguiente, un valor mmimo local en una imagen restaurada es mas alto que un valor de pixel de una imagen original, y un error entre valores mmimos locales de la imagen restaurada y la imagen original es un valor positivo. Tambien, un valor maximo local en la imagen restaurada es mas bajo que un valor de pixel de la imagen original, y un error entre valores maximos locales de la imagen restaurada y la imagen original es un valor negativo.
Por consiguiente, el aparato 10 de codificacion de video y el aparato 20 de decodificacion de video pueden determinar valores de errores promedios de valores mmimos locales y valores maximos locales de un grupo de pfxeles predeterminado entre una imagen restaurada y una imagen original, y compensar valores de pixel de pfxeles restaurados en el grupo de pfxeles predeterminado. En lo sucesivo, un procedimiento de determinacion de un nivel de valor de extremo y/o de borde de pfxeles restaurados de un grupo de pfxeles predeterminado, que se realiza mediante el determinador 16 de valor de compensacion y grupo de pfxeles del aparato 10 de codificacion de video, y el determinador 26 de grupo de pfxeles del aparato 20 de decodificacion de video, se describira con referencia a la Figura 3.
La Figura 3 ilustra los pfxeles 32, 34, 35 y 37 restaurados vecinos a compararse a un pixel 30 restaurado actual para determinar un nivel de valor de extremo y/o de borde del pixel 30 restaurado actual. Por conveniencia de explicacion, la Figura 3 ilustra unicamente los pfxeles 32, 34, 35 y 37 restaurados vecinos. Sin embargo, los pfxeles comparados al pixel 30 restaurado actual no estan limitados a los pfxeles 32, 34, 35 y 37 restaurados vecinos en lmeas horizontales y verticales.
El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden determinar un nivel de valor de extremo y/o de borde del pixel 30 restaurado actual comparando los pfxeles 32, 34, 35 y 37 restaurados vecinos que estan dispuestos en la parte superior, izquierda, derecha e inferior del pixel 30 restaurado actual, respectivamente, con el pixel 30 restaurado actual. Cuando un parametro 'Pixel_Type' (Tipo_pfxel) indica el nivel de valor de extremo y/o de borde del pixel 30 restaurado actual, Rec[x][y] indica un valor de pixel del pixel 30 restaurado actual, y Rec[x][y-1], Rec[x-1][y], Rec[x+1][y] y Rec[x][y+1] respectivamente indican valores de pixel de los pfxeles restaurados vecinos, el nivel de valor de extremo y/o de borde puede determinarse como las siguientes formulas de clasificacion:
Pixel_Type = 0;
if(Rec[x][y] > Rec[x-1][y]) Pixel_Type ++; if(Rec[x][y] < Rec[x-1][y]) Pixel_Type --; if(Rec[x][y] > Rec[x+1][y]) Pixel_Type ++; if(Rec[x][y] < Rec[x+1][y]) Pixel_Type --; if(Rec[x][y] > Rec[x][y-1]) Pixel_Type ++; if(Rec[x][y] < Rec[x][y-1]) Pixel_Type --; if(Rec[x][y] > Rec[x][y+1]) Pixel_Type ++; if(Rec[x][y] < Rec[x][y+1]) Pixel_Type --.
Los valores maximos y mmimos de 'Pixel_Type' pueden suponerse como +4 y -4.
Si el patron de clasificacion de pixel tiene diferente forma de un patron de clasificacion de pixel ejemplar mostrado en la Figura 3, entonces las formulas de clasificacion debenan modificarse correspondientemente. Por ejemplo, durante la deteccion de borde en la direccion diagonal de angulo 45°, los pfxeles 31 y 38 se comparan al pixel 30 actual. El nivel de valor de extremo y/o de borde puede determinarse como las siguientes formulas de clasificacion modificadas:
Pixel_Type = 0;
if(Rec[x][y] > Rec[x-1][y-1]) Pixel_Type ++;
5
10
15
20
25
30
35
40
45
50
55
if(Rec[x][y] < Rec[x-1][y-1]) Pixel_Type --; if(Rec[x][y] > Rec[x+1][y+1]) Pixel_Type ++; if(Rec[x][y] < Rec[x+1][y+1]) Pixel_Type --;
En correspondencia, los valores maximo y mmimo de 'Pixel_Type' pueden suponerse como +2 y -2.
En otras palabras, el nivel de valor de extremo y/o de borde se determina comparando valores de p^xel de los pfxeles 32, 34, 35 y 37 restaurados vecinos en un intervalo predeterminado del pixel 30 restaurado actual con un valor de pixel del pixel 30 restaurado actual. Cuando el nivel de valor de extremo y/o de borde del pixel 30 restaurado actual es un nivel de valor de extremo y/o de borde maximo, es decir, M, el pixel 30 restaurado actual puede determinarse como un pixel maximo local, y cuando el nivel de valor de extremo y/o de borde del pixel 30 restaurado actual es un nivel de valor de extremo y/o de borde mmimo, es decir, -M, el pixel 30 restaurado actual puede determinarse como un pixel mmimo local. Un valor de M puede determinarse basandose en un numero predeterminado de los pfxeles restaurados vecinos analizados. El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden determinar pfxeles restaurados determinados como un pixel maximo local y un pixel mmimo local segun los pfxeles a compensar.
Como tal, el determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles determinan los niveles de valor de extremo y/o de borde de los pfxeies restaurados en una unidad de datos actual, y determinan un grupo de pfxeles que incluye pfxeles restaurados que tienen el nivel de valor de extremo y/o de borde de M y un grupo de pfxeles que incluye pfxeles restaurados que tienen el nivel de valor de extremo y/o de borde de - M. El determinador 16 de valor de compensacion y grupo de pfxeles puede determinar el valor promedio de los errores de los valores de pixel entre los pfxeles restaurados y pfxeles originales correspondientes de acuerdo con grupos de pfxeles, y determinar el valor de compensacion basandose en el valor promedio. El determinador 26 de grupo de pfxeles y el compensador 28 de pfxeles restaurados pueden compensar los valores de pixel de los pfxeles restaurados de acuerdo con grupos de pfxeles, usando el valor de compensacion extrafdo de la informacion recibida acerca del valor de compensacion.
El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden determinar un grupo de pfxeles que incluye pfxeles restaurados adyacentes al pixel maximo local y al pixel mmimo local como un objetivo a compensar. Por consiguiente, el determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden determinar valores de compensacion para niveles de valor de extremo y/o de borde en un intervalo predeterminado que incluye el nivel de valor de extremo y/o borde maximo y el nivel de valor de extremo y/o borde mmimo. Por ejemplo, puesto que el nivel de valor de extremo y/o borde maximo es M como se ha descrito anteriormente, los pfxeles restaurados que tienen un nivel de valor de extremo y/o de borde de M-1 son adyacentes al pixel maximo local.
Por consiguiente, el determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden determinar grupos de pfxeles que incluyen pfxeles restaurados que tienen un nivel de valor de extremo y/o de borde mas alto que un valor positivo predeterminado como grupos de pfxeles adyacentes al nivel de valor de extremo y/o de borde maximo, y grupos de pfxeles que incluyen pfxeles restaurados que tienen un nivel de valor de extremo y/o de borde mas bajo que un valor negativo predeterminado como grupos de pfxeles adyacentes al nivel de valor de extremo y/o de borde mmimo. Por ejemplo, cuando un nivel de valor de extremo y/o de borde es mas alto que m o mas bajo que -m, es decir, cuando el nivel de valor de extremo y/o de borde es -M, -(M-1), -(M-2), ... , -(m+1), (m+1), ..., , (M-1), o M, puede determinarse un valor de compensacion de acuerdo con niveles de valor de extremo y/o de borde.
Como alternativa, el determinador 16 de valor de compensacion y grupo de pfxeles puede calcular el valor promedio de los errores entre los pfxeles restaurados y los pfxeles originales correspondientes de acuerdo con grupos de pfxeles adyacentes al nivel de valor de extremo y/o de borde maximo, y determinar el valor de compensacion de acuerdo con los grupos de pfxeles. Tambien, el determinador 26 de grupo de pfxeles y el compensador 28 de pfxeles restaurados pueden compensar los valores de pixel de los pfxeles restaurados de acuerdo con grupos de pfxeles, usando los valores de compensacion de acuerdo con grupos de pfxeles, que se extraen de la informacion acerca del valor de compensacion.
En este punto, los 4 pfxeles 32, 34, 35 y 37 restaurados vecinos dispuestos en la parte superior, izquierda, derecha e inferior del pixel 30 restaurado actual, respectivamente, se usan para determinar el nivel de valor de extremo y/o de borde, pero para clasificar el nivel de valor de extremo y/o de borde en detalle, pueden usarse 8 pfxeles restaurados 31 a 38 alrededor del pixel 30 restaurado actual como pfxeles restaurados vecinos para determinar el nivel de valor de extremo y/o de borde del pixel 30 restaurado actual.
Como alternativa, el aparato 10 de codificacion de video y el aparato 20 de decodificacion de video pueden clasificar valores de pixel en un numero de bandas igual a o por encima de un numero predeterminado.
Por ejemplo, cuando una profundidad de bits de pfxeles restaurados es N, un intervalo total de valores de pixel Rec[x][y] de los pfxeles restaurados es 0 < Rec[x][y] < (2AN)-1. En otras palabras, un valor maximo Max del valor de
p^xel Rec[x][y] es (2AN)-1, y una seccion de los pfxeles restaurados es [0, Max]. El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden dividir la seccion de los pfxeles restaurados en L bandas. En otras palabras, la banda del pixel restaurado puede dividirse en [0, (Max + 1)/L-1], [Max/L, 2*(Max + 1)/L-1] y [2*Max/L, 3*(Max + 1)/L-1] a [(L-1)*Max/L, L*(Max + 1)/L-1].
5 Los datos originales reales pueden estar dentro del rango [Min, Max]. Un valor mmimo Min y un valor maximo Max no son obligatoriamente iguales a 0 y (2AN)-1, respectivamente. El numero de diferentes valores puede corresponder a un intervalo de datos originales reales, es decir, 'Range = Max-Min+1'. Si las bandas de los pfxeles restaurados se dividen de manera uniforme, las bandas uniformes se dividen en [Min, Range/L-1], [Max/L, 2*Range/L-1] y [2*Max/L, 3*Range/L -1] a [(L-1)*Range /L, Max]. En otros ejemplos, las bandas de los pfxeles restaurados pueden dividirse de 10 manera no uniforme.
El numero L de las bandas de division de la seccion [0, Max] de los pfxeles restaurados puede ser un multiplo de 2, y puede ser 16 o mayor para calculo rapido. Tambien, para calculo rapido, el numero L puede determinarse de tal manera que un numero p de bits mas significativos de los pfxeles restaurados este dentro de un mdice de 2. Por ejemplo, cuando los bits mas significativos del pixel restaurado son 4 bits (p=4), y una profundidad de bits extendida 15 de los pfxeles restaurados es 12 bits, el numero L puede ser 2Ap = 16. Por consiguiente, la banda de los pfxeles restaurados de la profundidad de bits extendida puede dividirse como se muestra en la Tabla 1 a continuacion.
[Tabla 1]
Banda N.°
0 1 2 16
Banda de valores de pixel de pixel restaurado
[0, 255] [256, 511] [512, 767] [3840, 4095]
Expresion hexadecimal de valor de pixel
[0x0000, 0x00FF] [0x0100, 0x01FF] [0x0200, 0x02FF] [0x0F00, 0x0FFF]
Puesto que el calculo de bit se realiza facilmente cuando se divide la banda de los valores de pixel basandose en el 20 numero de bits mas significativos de los pfxeles restaurados, el determinador 26 de grupo de pfxeles puede realizar de manera eficaz el calculo para determinar la banda.
El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden clasificar pfxeles restaurados en las mismas bandas en un grupo de pfxeles de acuerdo con las bandas. Las bandas pueden dividirse basandose en valores mmimos y maximos reales de la senal original o reconstruida.
25 Un valor promedio de errores entre los pfxeles restaurados incluidos en el grupo de pfxeles de acuerdo con las bandas, y los pfxeles originales no es 0. Por consiguiente, el determinador 16 de valor de compensacion y grupo de pfxeles puede determinar un valor de compensacion usando el valor promedio de acuerdo con las bandas. Tambien, el determinador 26 de grupo de pfxeles y el compensador 28 de pfxeles restaurados pueden compensar valores de pixel de los pfxeles restaurados en el grupo de pfxeles de acuerdo con las bandas, usando los valores de 30 compensacion de acuerdo con las bandas.
Como alternativa, el aparato 10 de codificacion de video y el aparato 20 de decodificacion de video pueden clasificar pfxeles restaurados en grupos de pfxeles que incluyen pfxeles restaurados que forman una lmea predeterminada.
El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden analizar caractensticas de imagen de la imagen restaurada, y detectar lmeas en una direccion vertical, direccion 35 horizontal, una direccion diagonal, una direccion curvada y una direccion de lfmite de un objeto predeterminado. El determinador 16 de valor de compensacion y grupo de pfxeles y el determinador 26 de grupo de pfxeles pueden determinar pfxeles restaurados que forman la misma lmea como un grupo de pfxeles de acuerdo con las lmeas.
Un valor promedio de errores de valores de pixel entre pfxeles restaurados incluidos en el grupo de pfxeles de acuerdo con las lmeas, y pfxeles originales tambien no es 0. El determinador 16 de valor de compensacion y grupo 40 de pfxeles puede determinar un valor de compensacion usando el valor promedio de acuerdo con las lmeas. El determinador 26 de grupo de pfxeles y el compensador 28 de pfxeles restaurados pueden compensar valores de pixel de los pfxeles restaurados en el grupo de pfxeles de acuerdo con las lmeas, usando el valor de compensacion de acuerdo con las lmeas.
5
10
15
20
25
30
35
40
45
50
El determinador 16 de valor de compensacion y grupo de p^xeles y el determinador 26 de grupo de pfxeles pueden determinar el valor de compensacion de acuerdo con niveles de valor de extremo y/o de borde, de acuerdo con unidades de datos, tal como secuencias de imagenes, fotogramas o bloques de un video. El transmisor 18 puede codificar y transmitir la informacion relacionada con el valor de compensacion como informacion de tara. La precision del valor de compensacion aumenta a medida que se reduce una unidad de datos para determinar el valor de compensacion de acuerdo con niveles de valor de extremo y/o de borde, pero la tara puede aumentar puesto que puede aumentar la informacion adicional para codificar y transmitir la informacion relacionada con el valor de compensacion.
Tambien, el extractor 22 puede extraer la informacion relacionada con el valor de compensacion a partir de informacion de tara o informacion de encabezamiento de corte y compensar los valores de pixel de los pfxeles restaurados usando el valor de compensacion.
Los generadores 14 y 24 de imagen restaurada pueden realizar de manera selectiva filtracion de bucle adaptativa en datos de imagen decodificados en un dominio espacial. Los generadores 14 y 24 de imagen restaurada pueden restaurar una instantanea actual realizando de manera continua la filtracion unidimensional en una direccion horizontal y en una direccion vertical, de acuerdo con la filtracion de bucle adaptativa.
El transmisor 18 del aparato 10 de codificacion de video puede codificar y emitir un coeficiente de filtro usado en la filtracion de bucle adaptativa. Tambien, puesto que puede establecerse un tipo, un numero, un tamano, un bit de cuantificacion, un coeficiente, una direccion de filtracion de cada filtro unidimensional y si se realiza filtracion y filtracion de ejecucion para la filtracion de bucle adaptativa, la informacion acerca de un conjunto de filtros unidimensionales de filtracion de bucle puede codificarse y transmitirse.
El generador 24 de imagen restaurada puede inducir un coeficiente de filtro de cada filtro unidimensional usando informacion residual del coeficiente de filtro extrafdo del extractor 22.
Por ejemplo, un coeficiente de filtro actual de cada filtro unidimensional puede inducirse anadiendo una diferencia entre el coeficiente de filtro actual y un coeficiente de filtro anterior al coeficiente de filtro anterior. La filtracion unidimensional continua puede realizarse en datos desbloqueados usando el coeficiente de filtro inducido de cada filtro unidimensional. El desbloqueo se realiza para reducir un efecto de bloqueo de datos decodificados, y la filtracion de bucle minimiza un error entre la imagen restaurada y la imagen original.
Para un entendimiento mas profundo, la filtracion de bucle usando la filtracion unidimensional continua en una direccion horizontal y en una direccion vertical se describira con referencia a las siguientes ecuaciones.
El coeficiente de filtro actual puede inducirse de acuerdo con la Ecuacion 7 a continuacion.
[Ecuacion 7]
c[i][j] = adaptive_loop_filter_prev[i][j] + adaptive_loop_filter[i][j].
En este punto, i indica un mdice de un filtro unidimensional y j indica un mdice de un coeficiente de filtro de un filtro unidimensional. c[i][j] indica un coeficiente de filtro actual, adaptive_loop_filter_prev[i][j] indica un coeficiente de filtro anterior, y adaptive_loop_filter[i][j] indica un componente residual de un coeficiente de filtro transmitido como informacion de coeficiente de filtro.
En otras palabras, el coeficiente de filtro actual puede inducirse a partir de una suma del coeficiente de filtro anterior y el componente residual. Para inducir un coeficiente de filtro siguiente despues de inducir el coeficiente de filtro actual, el coeficiente de filtro actual c[i][j] se actualiza a adaptive_loop_filter_prev[i][j].
La filtracion de bucle usando filtracion unidimensional puede realizarse de acuerdo con las Ecuaciones 8 y 9 a continuacion. En las ecuaciones 8 y 9, i indica un mdice en una direccion de anchura de una instantanea actual y j indica un mdice en una direccion de altura de la instantanea actual.
[Ecuacion 8]
qij = (pij-4*c[0][4] + pi,j-s*c[0][3] + pij-2*c[0][2] + pi,j-1*c[0][1] + pu*c[0][0] + pu+1*c[0][1] + pU+2*c[0][2] + pu+3*c[0][3] + pi,j+4*c[0][4]).
En este punto, pij indica datos desbloqueados de la instantanea actual, y qij indica datos filtrados unidimensionales en una direccion horizontal con respecto a los datos desbloqueados. Se usan 5 coeficientes de filtro para filtrar simetricamente 9 piezas de datos desbloqueados, usando un coeficiente de filtro c de un filtro simetrico.
[Ecuacion 9]
fi,j = (qi,j-4*c[1][4] + qi,j-3*c[1][3] + qU-2*c[1][2] + qU-1*c[1][1] + qU*c[1][0] + qu+1*c[1][1] + qu+2*c[1][2] + qu+3*c[1][3] + qi,j+4*c[1][4]).
5
10
15
20
25
30
35
40
45
50
En este punto, fy indica datos filtrados unidimensionales en una direccion vertical con respecto a los datos filtrados unidimensionales qi,j. Puesto que el coeficiente de filtro c usa un procedimiento de filtracion de ejecucion, la filtracion unidimensional se realiza de manera continua en una direccion vertical en los datos filtrados unidimensionales en una direccion horizontal.
En el filtro simetrico, un filtro unidimensional puede establecer coeficientes de todos los filtros usando unicamente una pequena cantidad de coeficientes, en comparacion con un filtro bidimensional. Por consiguiente, los bits relacionados con caractensticas de filtro de una pluralidad de filtros unidimensionales, que se insertan en un flujo de bits de transmision, pueden ser relativamente bajos en comparacion con un filtro bidimensional.
Tambien, la capacidad de memoria para almacenar datos temporales durante la filtracion es mas pequena en el filtro unidimensional que en el filtro bidimensional. El caudal de filtracion del filtro bidimensional es significativamente grande en comparacion con el de la filtracion unidimensional. En la filtracion de ejecucion, no es posible realizar un procedimiento paralelo de acuerdo con filtracion multiple usando el filtro bidimensional, pero es posible realizar un procedimiento paralelo usando el filtro unidimensional.
Sin embargo, la filtracion de bucle no esta limitada a la filtracion unidimensional continua en direcciones horizontal y vertical. La filtracion de bucle puede realizarse ya que un numero predeterminado de filtros unidimensionales realizan filtracion unidimensional continua, en la que cada filtracion unidimensional se realiza en una direccion predeterminada.
El aparato 20 de decodificacion de video puede recibir informacion acerca de un conjunto de filtros unidimensionales, a parte de la informacion acerca del coeficiente de filtro, para comprobar un tipo, un numero, un tamano, un bit de cuantificacion, un coeficiente, una direccion de filtracion de cada filtro unidimensional, y si se realiza la filtracion y la filtracion de ejecucion. Por consiguiente, el generador 24 de imagen restaurada puede realizar filtracion de bucle combinando diversos filtros unidimensionales.
La filtracion de bucle adaptativa realizada mediante los generadores 14 y 24 de imagen restaurada se describira ahora con referencia a las Figuras 4 y 5.
La Figura 4 es un diagrama de flujo para describir filtracion de bucle adaptativa.
La filtracion de bucle puede realizarse como una pluralidad de filtros unidimensionales que realizan de manera continua filtracion. En la operacion 41, se reciben datos de imagen decodificados. Como alternativa, pueden recibirse los datos de imagen en los que se realiza la filtracion de desbloqueo despues de la decodificacion. En la operacion 42, se determina si se han de usar todos del primero al enesimo filtro. Si se determina que no se han de usar del primero al enesimo filtro, se realiza la operacion 46. Si se determina que se han de usar del primer al enesimo filtro en la operacion 42, la filtracion unidimensional puede realizarse de acuerdo con un orden de filtracion, por ejemplo, el primer filtro realiza filtracion unidimensional en una primera direccion de filtracion en la operacion 43 y el segundo filtro realiza filtracion unidimensional en una segunda direccion de filtracion en la operacion 44, hasta que el enesimo filtro realiza la filtracion unidimensional en una enesima direccion de filtracion en la operacion 45.
En la operacion 46, los datos de imagen decodificados, datos de imagen desbloqueados, o los datos filtrados unidimensionales se almacenan en una memoria intermedia o se reproducen mediante un reproductor.
Una direccion de filtracion de un filtro unidimensional puede determinarse de manera adaptativa de acuerdo con caractensticas de una imagen local, analizando las caractensticas. Por ejemplo, la direccion de filtracion puede determinarse de manera adaptativa como una direccion de borde de una imagen local para conservar un borde de la imagen local.
La Figura 5 es un diagrama de flujo para describir filtracion de bucle adaptativa.
Cuando se reciben datos de imagen decodificados o datos de imagen desbloqueados en la operacion 51, se detecta un borde para cada pixel de los datos de imagen decodificados o datos de imagen desbloqueados en la operacion 52. En la operacion 53, se realiza filtracion unidimensional de acuerdo con el borde detectado, y se almacenan datos filtrados o reproducidos mediante un reproductor en la operacion 54.
La informacion acerca de un conjunto de filtros unidimensionales que incluye una direccion de filtro determinada de acuerdo con el borde se codifica y proporciona a un decodificador mientras se codifica un video. La informacion acerca de un filtro de bucle se lee desde datos recibidos mientras se decodifica un video, y la filtracion unidimensional de acuerdo con una direccion de filtracion, tal como una direccion de borde, puede realizarse mediante un filtro unidimensional predeterminado.
Un post-procesamiento que constituye la filtracion de bucle puede reducir la distorsion entre una imagen original y una imagen restaurada, que se genera debido a compresion de perdida compleja. Tambien, una imagen filtrada de bucle puede usarse como una imagen de referencia para mejorar la calidad de una imagen obtenida realizando prediccion o compensacion de movimiento.
5
10
15
20
25
30
35
40
45
50
55
Por consiguiente, los generadores 14 y 24 de imagen restaurada pueden realizar de manera selectiva filtracion de bucle adaptativa considerando las caractensticas de una imagen, un entorno del sistema, o requisitos de usuario combinando filtros unidimensionales que tienen diversas caractensticas. Puesto que se usan filtros unidimensionales continuos en lugar de un filtro bidimensional para realizar la filtracion de bucle adaptativa, la filtracion de bucle adaptativa puede ser ventajosa en terminos de memoria, caudal, cantidad de bits de transmision, etc., en comparacion con el filtro bidimensional. Cuando los generadores 14 y 24 de imagen restaurada realizan la filtracion de bucle adaptativa, el transmisor 18 y el extractor 22 transmiten y reciben informacion obtenida codificando un componente residual de un coeficiente de filtro codificado, y por lo tanto puede reducirse una cantidad de informacion usada para la filtracion de bucle adaptativa.
La Figura 6 es un diagrama de flujo que ilustra un procedimiento de codificacion de un video para compensar un valor de pixel.
En la operacion 62, se codifica una secuencia de imagenes de entrada. En la operacion 64, se decodifican los datos de imagen codificados, y se genera una imagen restaurada realizando filtracion de bucle en los datos de imagen decodificados. La imagen restaurada puede generarse realizando filtracion de bucle adaptativa, en la que al menos se realiza de manera continua una operacion de filtracion unidimensional en los datos de imagen decodificados o datos de imagen desbloqueados.
En la operacion 66, se determina un valor de compensacion acerca de un error entre cada pixel restaurado de un grupo predeterminado en la imagen restaurada, y una imagen original correspondiente, y un grupo de pfxeles que incluye pfxeles restaurados a compensar. El grupo de pfxeles que incluye los pfxeles restaurados a compensar puede determinarse de acuerdo con niveles de valor de extremo y/o de borde de valores de pixel, bandas de valores de pfxeles o lmeas. El valor de compensacion de acuerdo con grupos de pfxeles puede determinarse basandose en un valor promedio de los errores.
En la operacion 68, se codifica el valor de compensacion, y se transmite un flujo de bits del valor de compensacion codificado y la secuencia de imagenes de entrada codificada. Cuando se determina el valor de compensacion de acuerdo con grupos de pfxeles mas detallados, los valores de pixel pueden compensarse de manera precisa, pero la tara puede aumentar.
La Figura 7 es un diagrama de flujo que ilustra un procedimiento de decodificacion de un video para compensar un valor de pixel.
En la operacion 72, se recibe y analiza un flujo de bits acerca de una imagen codificada, y se extraen los datos de imagen codificados y un valor de compensacion del flujo de bits.
En la operacion 74, se decodifican los datos de imagen codificados, y se genera una imagen restaurada realizando filtracion de bucle en los datos de imagen decodificados. La imagen restaurada puede generarse realizando filtracion de bucle adaptativa, en la que al menos se realiza de manera continua una operacion de filtracion unidimensional en los datos de imagen decodificados o datos de imagen desbloqueados.
En la operacion 76, se determina un grupo de pfxeles que incluye pfxeles restaurados a compensarse usando el valor de compensacion de entre pfxeles restaurados en la imagen restaurada. El grupo de pfxeles que incluye los pfxeles restaurados a compensarse usando el valor de compensacion puede determinarse de acuerdo con niveles de valor de extremo y/o de borde de valores de pixel de los pfxeles restaurados, bandas de los valores de pixel, o lmeas, de acuerdo con un procedimiento de determinacion de un grupo de pfxeles, basandose en informacion relacionada con el valor de compensacion. En la operacion 78, la imagen restaurada que tiene un error compensado puede emitirse compensando un error entre pfxeles restaurados del grupo de pfxeles determinado y pfxeles originales usando el valor de compensacion.
De acuerdo con el procedimiento de codificacion de un video y el procedimiento de decodificacion de un video, la calidad de la imagen restaurada puede mejorarse compensando un error sistematico de la imagen restaurada, y la cantidad de bits de transmision de informacion adicional para mejorar la calidad de la imagen restaurada puede reducirse puesto que unicamente se codifica y transmite la informacion acerca del valor de compensacion de acuerdo con grupos de pfxeles, y no se transmite la informacion acerca de las localizaciones de pfxeles restaurados a compensar.
En lo sucesivo, se describira la codificacion y decodificacion de un video para compensar un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol, de acuerdo con las realizaciones ejemplares, con referencia a las Figuras 8 a 22.
La Figura 8 es un diagrama de bloques de un aparato 80 de codificacion de video para codificar un video para compensar un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol.
El aparato 80 de codificacion de video incluye un codificador 81, un generador 84 de imagen restaurada, un determinador 87 de valor de compensacion y grupo de pfxeles y un transmisor 88. El codificador 81 incluye un
5
10
15
20
25
30
35
40
45
50
55
divisor 82 de unidad de codificacion maxima y determinador 83 de profundidad codificada y modo de codificacion. El generador 84 de imagen restaurada incluye un decodificador 85 y un realizador 86 de filtracion de bucle.
El codificador 81 codifica una secuencia de imagenes de entrada. El codificador 81 puede codificar la secuencia de imagenes de entrada basandose en unidades de codificacion que tienen una estructura de arbol. El divisor 82 de unidad de codificacion maxima puede dividir una instantanea actual basandose en una unidad de codificacion maxima para la instantanea actual de una imagen. La unidad de codificacion maxima puede ser una unidad de datos que tiene un tamano de 32x32, 64x64, 128x128, 256x256, etc., en la que una forma de la unidad de datos es un cuadrado que tiene una anchura y longitud en cuadrados de 2.
Si la instantanea actual es mayor que la unidad de codificacion maxima, los datos de imagen de la instantanea actual pueden dividirse en la al menos una unidad de codificacion maxima. Los datos de imagen pueden emitirse al determinador 83 de profundidad codificada y modo de codificacion de acuerdo con la al menos una unidad de codificacion maxima.
Una unidad de codificacion puede estar caracterizada por un tamano maximo y una profundidad. La profundidad indica un numero de veces que se divide espacialmente la unidad de codificacion a partir de la unidad de codificacion maxima, y a medida que la profundidad se hace profunda, pueden dividirse unidades de codificacion mas profundas de acuerdo con las profundidades desde la unidad de codificacion maxima a una unidad de codificacion minima. Una profundidad de la unidad de codificacion maxima es una profundidad mas superior y una profundidad de la unidad de codificacion minima es una profundidad mas inferior. Puesto que un tamano de una unidad de codificacion que corresponde a cada profundidad se reduce a medida que la profundidad de la unidad de codificacion maxima se hace profunda, una unidad de codificacion que corresponde a una profundidad superior puede incluir una pluralidad de unidades de codificacion que corresponden a profundidades inferiores.
Como se ha descrito anteriormente, los datos de imagen de la instantanea actual se dividen en las unidades de codificacion maxima de acuerdo con un tamano maximo de la unidad de codificacion, y cada una de las unidades de codificacion maxima puede incluir unidades de codificacion mas profundas que se dividen de acuerdo con las profundidades. Puesto que la unidad de codificacion maxima se divide de acuerdo con las profundidades, los datos de imagen de un dominio espacial incluidos en la unidad de codificacion maxima pueden clasificarse jerarquicamente de acuerdo con las profundidades.
Puede predeterminarse una profundidad maxima y un tamano maximo de una unidad de codificacion, que limita el numero total de veces que se divide jerarquicamente una altura y una anchura de la unidad de codificacion maxima.
El determinador 83 de profundidad codificada y modo de codificacion codifica al menos una region de division obtenida dividiendo una region de la unidad de codificacion maxima de acuerdo con las profundidades, y determina una profundidad para emitir unos datos de imagen codificados finalmente de acuerdo con la al menos una region de division. En otras palabras, el determinador 83 de profundidad codificada y modo de codificacion determina una profundidad codificada codificando los datos de imagen en las unidades de codificacion mas profundas de acuerdo con las profundidades, de acuerdo con la unidad de codificacion maxima de la instantanea actual, y seleccionando una profundidad que tiene el mmimo error de codificacion. Por lo tanto, se emiten los datos de imagen codificados de la unidad de codificacion que corresponden a la profundidad codificada determinada. Tambien, las unidades de codificacion que corresponden a la profundidad codificada pueden considerarse como unidades de codificacion codificadas. La profundidad codificada determinada y los datos de imagen codificados de acuerdo con la profundidad codificada determinada se emiten al transmisor 88.
Los datos de imagen en la unidad de codificacion maxima se codifican basandose en las unidades de codificacion mas profundas que corresponden a al menos una profundidad igual a o por debajo de la profundidad maxima, y los resultados de la codificacion de los datos de imagen se comparan basandose en cada una de las unidades de codificacion mas profundas. Una profundidad que tiene el mmimo error de codificacion puede seleccionarse despues de comparar errores de codificacion de las unidades de codificacion mas profundas. Al menos una profundidad codificada puede seleccionarse para cada unidad de codificacion maxima.
El tamano de la unidad de codificacion maxima se divide a medida que una unidad de codificacion se divide jerarquicamente de acuerdo con las profundidades, y a medida que el numero de unidades de codificacion aumenta. Tambien, incluso si las unidades de codificacion corresponden a la misma profundidad en una unidad de codificacion maxima, se determina si dividir cada una de las unidades de codificacion que corresponden a la misma profundidad a una profundidad inferior midiendo un error de codificacion de los datos de imagen de cada una de las unidades de codificacion, por separado. Por consiguiente, incluso cuando los datos de imagen se incluyen en una unidad de codificacion maxima, los datos de imagen se dividen en regiones de acuerdo con las profundidades y los errores de codificacion pueden diferenciarse de acuerdo con las regiones en la unidad de codificacion maxima, y por lo tanto las profundidades codificadas pueden diferenciarse de acuerdo con las regiones en los datos de imagen. Por lo tanto, puede determinarse una o mas profundidades codificadas en una unidad de codificacion maxima, y los datos de imagen de la unidad de codificacion maxima pueden dividirse de acuerdo con las unidades de codificacion de al menos una profundidad codificada.
5
10
15
20
25
30
35
40
45
50
55
Por consiguiente, el determinador 83 de profundidad codificada y modo de codificacion puede determinar unidades de codificacion que tienen una estructura de arbol incluidas en la unidad de codificacion maxima. Las 'unidades de codificacion que tienen una estructura de arbol' incluyen unidades de codificacion que corresponden a una profundidad determinada para que sea la profundidad codificada, de entre todas las unidades de codificacion mas profundas incluidas en la unidad de codificacion maxima. Una unidad de codificacion de una profundidad codificada puede determinarse jerarquicamente de acuerdo con las profundidades en la misma region de la unidad de codificacion maxima, y puede determinarse de manera independiente en diferentes regiones. De manera similar, una profundidad codificada en una region actual puede determinarse de manera independiente de una profundidad codificada en otra region.
Una profundidad maxima es un mdice relacionado con el numero de veces de division de una unidad de codificacion maxima a una unidad de codificacion minima. Una profundidad maxima puede indicar el numero total de veces de division de la unidad de codificacion maxima a la unidad de codificacion minima. Por ejemplo, cuando una profundidad de la unidad de codificacion maxima es 0, una profundidad de una unidad de codificacion, en la que la unidad de codificacion maxima se divide una vez, puede establecerse a 1, y una profundidad de una unidad de codificacion, en la que la unidad de codificacion maxima se divide dos veces, puede establecerse a 2. En este punto, si la unidad de codificacion minima es una unidad de codificacion en la que la unidad de codificacion maxima se divide cuatro veces, existen 5 niveles de profundidad de profundidades 0, 1, 2, 3 y 4, y por lo tanto la profundidad maxima puede establecerse a 4.
La codificacion por prediccion y transformacion pueden realizarse de acuerdo con la unidad de codificacion maxima. La codificacion por prediccion y la transformacion se realizan tambien basandose en las unidades de codificacion mas profundas de acuerdo con una profundidad igual a o profundidades menores que la profundidad maxima, de acuerdo con la unidad de codificacion maxima. La transformacion puede realizarse de acuerdo con el procedimiento de transformacion ortogonal o transformacion de numeros enteros.
Puesto que el numero de unidades de codificacion mas profundas aumenta cada vez que la unidad de codificacion maxima se divide de acuerdo con las profundidades, la codificacion incluyendo codificacion por prediccion y transformacion se realiza en todas las unidades de codificacion mas profundas generadas a medida que la profundidad se hace profunda. Por conveniencia de descripcion, la codificacion por prediccion y la transformacion se describiran ahora basandose en una unidad de codificacion de una profundidad actual, en una unidad de codificacion maxima.
El aparato 80 de codificacion de video puede seleccionar de manera diversa un tamano o forma de una unidad de datos para codificar los datos de imagen. Para codificar los datos de imagen, se realizan operaciones, tales como codificacion por prediccion, transformacion y codificacion por entropfa, y en este momento, las mismas unidades de datos pueden usarse para todas las operaciones o pueden usarse diferentes unidades de datos para cada operacion.
Por ejemplo, el aparato 80 de codificacion de video puede seleccionar no unicamente una unidad de codificacion para codificar los datos de imagen, sino tambien una unidad de datos diferente de la unidad de codificacion para realizar la codificacion por prediccion en los datos de imagen en la unidad de codificacion.
Para realizar codificacion por prediccion en la unidad de codificacion maxima, la codificacion por prediccion puede realizarse basandose en una unidad de codificacion que corresponde a una profundidad codificada, es decir, basandose en una unidad de codificacion que ya no se divide en unidades de codificacion que corresponden a una profundidad inferior. En lo sucesivo, la unidad de codificacion que ya no se divide y se hace una unidad de base para codificacion por prediccion se denominara ahora como una 'unidad de prediccion'. Una particion obtenida dividiendo la unidad de prediccion puede incluir una unidad de prediccion o una unidad de datos obtenida dividiendo al menos una de una altura y una anchura de la unidad de prediccion.
Por ejemplo, cuando una unidad de codificacion de 2Nx2N (donde N es un numero entero positivo) ya no se divide y se hace una unidad de prediccion de 2Nx2N, un tamano de una particion puede ser 2Nx2N, 2NxN, Nx2N o NxN. Ejemplos de un tipo de particion incluyen particiones simetricas que se obtienen dividiendo simetricamente una altura o una anchura de la unidad de prediccion, particiones obtenidas dividiendo asimetricamente la altura o la anchura de la unidad de prediccion, tal como 1:n o n:1, particiones que se obtienen dividiendo geometricamente la unidad de prediccion, y particiones que tienen formas arbitrarias.
Un modo de prediccion de la unidad de prediccion puede ser al menos uno de un intra modo, un inter modo y un modo de salto. Por ejemplo, el intra modo o el inter modo pueden realizarse en la particion de 2Nx2N, 2NxN, Nx2N o NxN. Tambien, el modo de salto puede realizarse unicamente en la particion de 2Nx2N. La codificacion se realiza de manera independiente en una unidad de prediccion en una unidad de codificacion, seleccionando de esta manera un modo de prediccion que tiene un mmimo error de codificacion.
El aparato 80 de codificacion de video puede realizar tambien la transformacion en los datos de imagen en una unidad de codificacion basandose no unicamente en la unidad de codificacion para codificar los datos de imagen, sino tambien basandose en una unidad de datos que es diferente de la unidad de codificacion.
5
10
15
20
25
30
35
40
45
50
55
Para realizar la transformacion en la unidad de codificacion, la transformacion puede realizarse basandose en una unidad de datos que tiene un tamano mas pequeno o igual a la unidad de codificacion. Por ejemplo, la unidad de datos para la transformacion puede incluir una unidad de datos para un intra modo y una unidad de datos para un inter modo.
Una unidad de datos usada como una base de la transformacion se denominara ahora como una 'unidad de transformacion'. Una profundidad de transformacion que indica el numero de veces de division para alcanzar la unidad de transformacion dividiendo la altura y anchura de la unidad de codificacion puede establecerse tambien en la unidad de transformacion. Por ejemplo, en una unidad de codificacion actual de 2Nx2N, una profundidad de transformacion puede ser 0 cuando el tamano de una unidad de transformacion es tambien 2Nx2N, puede ser 1 cuando cada una de la altura y anchura de la unidad de codificacion actual se divide en dos partes iguales, divididas en total en 4A1 unidades de transformacion, y el tamano de la unidad de transformacion es por lo tanto NxN, y puede ser 2 cuando cada una de la altura y anchura de la unidad de codificacion actual se divide en cuatro partes iguales, divididas en total en 4A2 unidades de transformacion y el tamano de la unidad de transformacion es por lo tanto N/2xN/2. Por ejemplo, la unidad de transformacion puede establecerse de acuerdo con una estructura de arbol jerarquica, en la que una unidad de transformacion de una profundidad de transformacion superior se divide en cuatro unidades de transformacion de una profundidad de transformacion inferior de acuerdo con las caractensticas jerarquicas de una profundidad de transformacion.
Similar a la unidad de codificacion, la unidad de transformacion en la unidad de codificacion puede dividirse de manera recursiva en regiones con tamano mas pequeno, de modo que la unidad de transformacion puede determinarse de manera independiente en unidades de regiones. Por lo tanto, los datos residuales en la unidad de codificacion pueden dividirse de acuerdo con la transformacion que tiene la estructura de arbol de acuerdo con las profundidades de transformacion.
La informacion de codificacion de acuerdo con las unidades de codificacion que corresponden a una profundidad codificada usa no unicamente informacion acerca de la profundidad codificada, sino tambien informacion relacionada con codificacion por prediccion y transformacion. Por consiguiente, el determinador 83 de profundidad codificada y modo de codificacion no unicamente determina una profundidad codificada que tiene un mmimo error de codificacion, sino tambien determina un tipo de particion en una unidad de prediccion, un modo de prediccion de acuerdo con unidades de prediccion, y un tamano de una unidad de transformacion para transformacion.
El determinador 83 de profundidad codificada y modo de codificacion pueden medir un error de codificacion de unidades de codificacion mas profundas de acuerdo con las profundidades usando Optimizacion de Tasa-Distorsion basandose en multiplicadores de Lagrange.
El generador 84 de imagen restaurada decodifica datos de imagen codificados y genera una imagen restaurada realizando filtracion de bucle en los datos de imagen decodificados. El decodificador 85 incluido en el generador 84 de imagen restaurada decodifica datos de imagen basandose en unidades de codificacion que tienen una estructura de arbol, que se codifican mediante el codificador 81. El decodificador 85 puede decodificar los datos de imagen codificados y emitir datos de imagen de un dominio espacial de acuerdo con las unidades de codificacion maxima, basandose en la profundidad codificada y el modo de codificacion determinado mediante el determinador 83 de profundidad codificada y modo de codificacion.
El realizador 86 de filtracion de bucle incluido en el generador 84 de imagen restaurada puede realizar filtracion en bucle en los datos de imagen decodificados. La misma filtracion de bucle adaptativa realizada de manera selectiva mediante el generador 14 de imagen restaurada puede realizarse mediante el realizador 86 de filtracion de bucle. Por consiguiente, el realizador 86 de filtracion de bucle puede realizar de manera continua filtracion unidimensional en una direccion horizontal y filtracion unidimensional en una direccion vertical para restaurar la instantanea actual. El realizador 86 de filtracion de bucle puede emitir la imagen restaurada al determinador 87 de valor de compensacion y grupo de pfxeles.
El determinador 87 de valor de compensacion y grupo de pfxeles determina un valor de compensacion acerca de un error entre cada uno de los pfxeles restaurados de un grupo predeterminado en la imagen restaurada, y un correspondiente pixel original, y un pixel de grupo que incluye pfxeles restaurados que tienen valores de pixel a compensar. El determinador 87 de valor de compensacion y grupo de pfxeles es un elemento tecnico que corresponde al determinador 16 de valor de compensacion y grupo de pfxeles.
Por consiguiente, el determinador 87 de valor de compensacion y grupo de pfxeles pueden determinar un nivel de valor de extremo y/o de borde de pfxeles restaurados vecinos de la imagen restaurada de acuerdo con pfxeles restaurados, y clasificar los pfxeles restaurados vecinos en grupos de pfxeles de acuerdo con niveles de valor de extremo y/o de borde. Como alternativa, el determinador 87 de valor de compensacion y grupo de pfxeles puede clasificar los pfxeles restaurados en grupos de pfxeles de acuerdo con las bandas basandose en un valor de pixel. Como alternativa, el determinador 87 de valor de compensacion y grupo de pfxeles puede detectar lmeas en una direccion predeterminada analizando la imagen restaurada, y clasificar los pfxeles restaurados en grupos de pfxeles de acuerdo con las lmeas, que incluyen los pfxeles restaurados en la misma lmea.
5
10
15
20
25
30
35
40
45
50
55
El determinador 87 de valor de compensacion y grupo de p^xeles puede determinar de manera individual un valor de compensacion para cada grupo de pfxeles usando un valor promedio de los errores entre el pixel restaurado y el correspondiente pixel original. El determinador 87 de valor de compensacion y grupo de pfxeles puede determinar un pixel restaurado a compensar de acuerdo con al menos una unidad de datos de entre una secuencia de imagen, un corte, un fotograma y una unidad de codificacion de un video de entrada, y determinar un valor de compensacion que corresponde al pixel restaurado determinado a compensar. La informacion acerca del valor de compensacion y el grupo de pfxeles determinados mediante el determinador 87 de valor de compensacion y grupo de pfxeles puede emitirse al transmisor 88.
El transmisor 88 emite los datos de imagen de la unidad de codificacion maxima, que se codifican basandose en la al menos una profundidad codificada determinada mediante determinador 83 de profundidad codificada y modo de codificacion, e informacion acerca del modo de codificacion de acuerdo con la profundidad codificada, en flujos de bits. Los datos de imagen codificados mediante el codificador 81 pueden convertirse a un formato de flujo de bits mediante codificacion por entropfa, y a continuacion insertarse en un flujo de bits para transmision.
Como alternativa, el transmisor 88 puede codificar e insertar el valor de compensacion determinado mediante el determinador 86 de valor de compensacion y grupo de pfxeles en el flujo de bits para transmision. Como alternativa, el transmisor 88 puede recibir informacion adicional acerca de un procedimiento de determinacion de un grupo de pfxeles a partir del determinador 87 de valor de compensacion y grupo de pfxeles, y codificar e insertar la informacion adicional en un flujo de bits.
Los datos de imagen codificados pueden obtenerse codificando datos residuales de una imagen.
La informacion acerca del modo de codificacion de acuerdo con profundidad codificada puede incluir informacion acerca de la profundidad codificada, acerca del tipo de particion en la unidad de prediccion, el modo de prediccion y el tamano de la unidad de transformacion.
La informacion acerca de la profundidad codificada puede definirse usando informacion de division de acuerdo con las profundidades, que indican si se realiza la codificacion en unidades de codificacion de una profundidad inferior en lugar de una profundidad actual. Si la profundidad actual de la unidad de codificacion actual es la profundidad codificada, los datos de imagen en la unidad de codificacion actual se codifican y emiten, y por lo tanto la informacion de division puede definirse para no dividir la unidad de codificacion actual a una profundidad inferior. Como alternativa, si la profundidad actual de la unidad de codificacion actual no es la profundidad codificada, la codificacion se realiza en la unidad de codificacion de la profundidad inferior, y por lo tanto la informacion de division puede definirse para dividir la unidad de codificacion actual para obtener las unidades de codificacion de la profundidad inferior.
Si la profundidad actual no es la profundidad codificada, la codificacion se realiza en la unidad de codificacion que se divide en la unidad de codificacion de la profundidad inferior. Puesto que al menos existe una unidad de codificacion de la profundidad inferior en una unidad de codificacion de la profundidad actual, la codificacion se realiza de manera repetitiva en cada unidad de codificacion de la profundidad inferior, y por lo tanto la codificacion puede realizarse de manera recursiva por las unidades de codificacion que tienen la misma profundidad.
Puesto que las unidades de codificacion que tienen una estructura de arbol se determinan para una unidad de codificacion maxima, y la informacion acerca de al menos un modo de codificacion se determina para una unidad de codificacion de una profundidad codificada, la informacion acerca de al menos un modo de codificacion puede determinarse para una unidad de codificacion maxima. Tambien, una profundidad codificada de los datos de imagen de la unidad de codificacion maxima puede ser diferente de acuerdo con las localizaciones puesto que los datos de imagen se dividen jerarquicamente de acuerdo con las profundidades, y por lo tanto la informacion acerca de la profundidad codificada y el modo de codificacion puede establecerse para los datos de imagen.
Por consiguiente, el transmisor 88 puede asignar informacion de codificacion acerca de una profundidad codificada correspondiente y un modo de codificacion a al menos una de la unidad de codificacion, la unidad de prediccion y una unidad minima incluidas en la unidad de codificacion maxima.
La unidad minima es una unidad de datos rectangular obtenida dividiendo la unidad de codificacion minima que constituye la profundidad mas inferior en 4. Como alternativa, la unidad minima puede ser una unidad de datos rectangular maxima que puede incluirse en todas las unidades de codificacion, unidades de prediccion, unidades de particion y unidades de transformacion incluidas en la unidad de codificacion maxima.
Por ejemplo, la informacion de codificacion emitida a traves del transmisor 88 puede clasificarse en informacion de codificacion de acuerdo con las unidades de codificacion, e informacion de codificacion de acuerdo con unidades de prediccion. La informacion de codificacion de acuerdo con las unidades de codificacion puede incluir la informacion acerca del modo de prediccion y acerca del tamano de las particiones. La informacion de codificacion de acuerdo con las unidades de prediccion puede incluir informacion acerca de una direccion estimada de un inter modo, acerca de un mdice de imagen de referencia del inter modo, acerca de un vector de movimiento, acerca de componente de crominancia de un intra modo, y acerca de un procedimiento de interpolacion del intra modo. Tambien, la informacion acerca de un tamano maximo de la unidad de codificacion definida de acuerdo con instantaneas, cortes,
5
10
15
20
25
30
35
40
45
50
55
o GOP, e informacion acerca de una profundidad maxima puede insertarse en un Conjunto de Parametros de Secuencia (SPS) o un encabezamiento de un flujo de bits.
El transmisor 88 puede codificar y emitir un coeficiente de filtro usado en filtracion de bucle adaptativa. Tambien, puesto que un tipo, un numero, un tamano, un bit de cuantificacion, un coeficiente, una direccion de filtracion de cada filtro unidimensional, y si se realiza filtracion y filtracion de ejecucion puede establecerse para la filtracion de bucle adaptativa, la informacion acerca de un conjunto de filtros unidimensionales de filtracion de bucle puede codificarse y transmitirse.
En el aparato 80 de codificacion de video, la unidad de codificacion mas profunda puede ser una unidad de codificacion obtenida dividiendo una altura o una anchura de una unidad de codificacion de una profundidad superior, que es una capa por encima, por ejemplo dos. En otras palabras, cuando el tamano de la unidad de codificacion de la profundidad actual es 2Nx2N, el tamano de la unidad de codificacion de la profundidad inferior es NxN. Tambien, la unidad de codificacion de la profundidad actual que tiene el tamano de 2Nx2N puede incluir el maximo 4 de la unidad de codificacion de la profundidad inferior.
Por consiguiente, el aparato 80 de codificacion de video puede formar las unidades de codificacion que tienen la estructura de arbol determinando unidades de codificacion que tienen una forma optima y un tamano optimo para cada unidad de codificacion maxima, basandose en el tamano de la unidad de codificacion maxima y la profundidad maxima determinadas considerando las caractensticas de la instantanea actual. Tambien, puesto que la codificacion puede realizarse en cada unidad de codificacion maxima usando uno cualquiera de diversos modos de prediccion y transformaciones, un modo de codificacion optimo puede determinarse considerando las caractensticas de la unidad de codificacion de diversos tamanos de imagen.
Por lo tanto, si una imagen que tiene alta resolucion o una gran cantidad de datos se codifica en un macrobloque relacionado con la tecnica, un numero de macrobloques por instantanea aumenta excesivamente. Por consiguiente, un numero de piezas de informacion comprimida generada para cada macrobloque aumenta, y por lo tanto es diffcil transmitir la informacion comprimida y la compresion de datos reduce la eficacia. Sin embargo, usando el aparato 80 de codificacion de video, la eficacia de compresion de imagen puede aumentarse puesto que una unidad de codificacion se ajusta mientras se consideran las caractensticas de una imagen mientras aumenta un tamano maximo de una unidad de codificacion mientras se considera un tamano de la imagen.
Tambien, la cantidad de bits de transmision de informacion adicional puede reducirse puesto que se codifica y transmite la informacion acerca de un valor de compensacion para compensar un valor de pixel entre una imagen restaurada y una imagen original, que se requiere para mejorar la calidad de la imagen restaurada mediante un decodificador, sin informacion acerca de una localizacion de pixel.
La Figura 9 es un diagrama de bloques de un aparato 90 de decodificacion de video para compensar un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol, de acuerdo con una realizacion ejemplar.
El aparato 90 de decodificacion de video incluye un restador 91, un generador 94 de imagen restaurada, un determinador 97 de grupo de pfxeles, y un compensador 98 de pfxeles restaurados. El extractor 91 incluye un receptor 92, y unos datos de imagen, informacion de modo de codificacion, informacion de coeficiente de filtro de bucle, y extractor de informacion de valor de compensacion (en lo sucesivo, denominada como un extractor de informacion) 93. El generador 94 de imagen restaurada incluye un decodificador 95 y un realizador 96 de filtracion de bucle.
Definiciones de terminos tales como una unidad de codificacion, una profundidad, una unidad de prediccion, una unidad de transformacion y diversos modos de codificacion para diversos procedimientos usados para describir el aparato 90 de decodificacion de video son identicos a aquellos descritos con referencia al aparato 80 de codificacion de video de la Figura 8.
El extractor 91 recibe y analiza un flujo de bits de una imagen codificada, y extrae datos de imagen codificados y un valor de compensacion a partir del flujo de bits. El receptor 92 del extractor 91 recibe y analiza el flujo de bits de la imagen codificada. El extractor de informacion extrae los datos de imagen de acuerdo con las unidades de codificacion maxima a partir del flujo de bits analizado, y emite los datos de imagen extrafdos al decodificador 95. El extractor 93 de informacion puede extraer informacion acerca de un tamano maximo de una unidad de codificacion de una instantanea actual, a partir de un encabezamiento de la instantanea actual.
Tambien, el extractor 93 de informacion extrae informacion acerca de una profundidad codificada y un modo de codificacion para las unidades de codificacion que tienen una estructura de arbol de acuerdo con cada unidad de codificacion maxima, a partir del flujo de bits analizado. La informacion extrafda acerca de la profundidad codificada y el modo de codificacion se emite al decodificador 95. En otras palabras, los datos de imagen en una cadena de bits se dividen en la unidad de codificacion maxima de modo que el decodificador 95 decodifica los datos de imagen para cada unidad de codificacion maxima.
5
10
15
20
25
30
35
40
45
50
55
La informacion acerca de la profundidad codificada y el modo de codificacion de acuerdo con la unidad de codificacion maxima puede establecerse para informacion acerca de al menos una unidad de codificacion que corresponde a la profundidad codificada, y la informacion acerca de un modo de codificacion puede incluir informacion acerca de un tipo de particion de una unidad de codificacion correspondiente que corresponde a la profundidad codificada, acerca de un modo de prediccion y un tamano de una unidad de transformacion.
La informacion acerca de la profundidad codificada y el modo de codificacion de acuerdo con cada unidad de codificacion maxima extrafda mediante el extractor 93 de informacion es informacion acerca de una profundidad codificada y un modo de codificacion determinados para generar un error de codificacion mmimo cuando un codificador, tal como el aparato 80 de codificacion de video, realiza de manera repetitiva la codificacion para cada unidad de codificacion mas profunda de acuerdo con las profundidades de acuerdo con cada unidad de codificacion maxima. Por consiguiente, el aparato 90 de decodificacion de video puede restaurar una imagen decodificando los datos de imagen de acuerdo con una profundidad codificada y un modo de codificacion que genera el error de codificacion mmimo.
Puesto que la informacion de codificacion acerca de la profundidad codificada y el modo de codificacion pueden asignarse a una unidad de datos predeterminada de entre una unidad de codificacion correspondiente, una unidad de prediccion y una unidad minima, el extractor 93 de informacion puede extraer la informacion acerca de la profundidad codificada y el modo de codificacion de acuerdo con las unidades de datos predeterminadas. Las unidades de datos predeterminadas a las que se asigna la misma informacion acerca de la profundidad codificada y el modo de codificacion pueden inferirse para que sean las unidades de datos incluidas en la misma unidad de codificacion maxima.
El decodificador 95 restaura la instantanea actual decodificando los datos de imagen en cada unidad de codificacion maxima basandose en la informacion acerca de la profundidad codificada y el modo de codificacion de acuerdo con las unidades de codificacion maxima. En otras palabras, el decodificador 95 puede decodificar los datos de imagen codificados basandose en la informacion extrafda acerca del tipo de particion, el modo de prediccion y la unidad de transformacion para cada unidad de codificacion de entre las unidades de codificacion que tienen la estructura de arbol incluida en cada unidad de codificacion maxima. Un procedimiento de decodificacion puede incluir una prediccion que incluye intra prediccion y compensacion de movimiento y una transformacion inversa. La transformacion inversa puede realizarse de acuerdo con un procedimiento de transformacion ortogonal inversa o transformacion de numeros enteros inversa.
Tambien, el decodificador 95 puede realizar transformacion inversa de acuerdo con cada unidad de transformacion en la unidad de codificacion leyendo las unidades de transformacion que tienen una estructura de arbol, basandose en la informacion acerca del tamano de la unidad de transformacion de la unidad de codificacion de acuerdo con profundidades codificadas, para realizar la transformacion inversa de acuerdo con las unidades de codificacion maxima.
El decodificador 95 puede determinar al menos una profundidad codificada de una unidad de codificacion maxima actual usando informacion de division de acuerdo con las profundidades. Si la informacion de division indica que los datos de imagen ya no se dividen en la profundidad actual, la profundidad actual es una profundidad codificada. Por consiguiente, el decodificador 95 puede decodificar datos codificados de al menos una unidad de codificacion que corresponde a cada profundidad codificada en la unidad de codificacion maxima actual usando la informacion acerca del tipo de particion de la unidad de prediccion, el modo de prediccion, y el tamano de la unidad de transformacion para cada unidad de codificacion que corresponde a la profundidad codificada, y emitir los datos de imagen de la unidad de codificacion maxima actual.
En otras palabras, las unidades de datos que contienen la informacion de codificacion que incluye la misma informacion de division pueden recopilarse observando la informacion de codificacion establecida asignada para la unidad de datos predeterminada de entre la unidad de codificacion, la unidad de prediccion y la unidad minima, y las unidades de datos recopiladas pueden considerarse que son una unidad de datos a decodificar mediante el decodificador 95 en el mismo modo de codificacion.
Cuando la informacion acerca del coeficiente de filtro para la filtracion de bucle adaptativa se inserta en el flujo de bits, el extractor 93 de informacion puede extraer la informacion acerca del coeficiente de filtro a partir del flujo de bits. El realizador 96 de filtracion de bucle puede recibir la informacion acerca del coeficiente de filtro extrafda mediante el extractor 93 de informacion, y generar la imagen restaurada realizando filtracion de bucle en los datos de imagen decodificados mediante el decodificador 95.
El mismo elemento tecnico del generador 24 de imagen restaurada puede aplicarse al realizador 96 de filtracion de bucle. Por consiguiente, el realizador 96 de filtracion de bucle puede realizar de manera selectiva filtracion de desbloqueo y filtracion de bucle adaptativa en los datos de imagen decodificados. La filtracion de bucle adaptativa puede realizarse usando una pluralidad continua de filtros unidimensionales.
El generador 94 de imagen restaurada puede inducir un coeficiente de filtro de cada filtro unidimensional usando informacion residual del coeficiente de filtro extrafda desde el extractor 93 de informacion. Por ejemplo, un
5
10
15
20
25
30
35
40
45
50
55
coeficiente de filtro actual de cada filtro unidimensional puede inducirse anadiendo una diferencia entre el coeficiente de filtro actual y un coeficiente de filtro anterior al coeficiente de filtro anterior. La filtracion unidimensional continua puede realizarse en datos desbloqueados usando el coeficiente de filtro inducido de cada filtro unidimensional. El desbloqueo se realiza para reducir un efecto de bloqueo de datos decodificados, y la filtracion de bucle minimiza un error entre la imagen restaurada y la imagen original.
El extractor 93 de informacion extrae datos de imagen codificados e informacion relacionada con un valor de compensacion a partir del flujo de bits. La informacion relacionada con el valor de compensacion puede incluir informacion acerca del valor de compensacion. Como alternativa, si la informacion relacionada con el valor de compensacion incluye informacion acerca de un procedimiento de determinacion de un grupo de pfxeles a compensarse usando el valor de compensacion, el extractor 93 de informacion puede extraer el valor de compensacion y la informacion acerca del procedimiento de determinacion del grupo de pfxeles a compensar a partir del flujo de bits. El extractor 93 de informacion puede extraer el valor de compensacion o la informacion relacionada con el valor de compensacion de acuerdo con al menos una unidad de datos de entre una secuencia de imagen, un corte, un fotograma, y una unidad de codificacion de un video de entrada.
El determinador 97 de grupo de pfxeles puede determinar un grupo de pfxeles que incluye el pixel restaurado a compensarse usando el valor de compensacion, con respecto a los pfxeles restaurados de un grupo predeterminado en la imagen restaurada, recibiendo la imagen restaurada generada mediante el generador 94 de imagen restaurada y el valor de compensacion extrafdo mediante el extractor 93 de informacion. El compensador 98 de pfxeles restaurados compensa el valor de pixel del pixel restaurado usando el valor de compensacion, y emite la imagen restaurada que tiene el valor de pixel restaurado recibiendo el valor de compensacion extrafdo mediante el extractor 93 de informacion e informacion acerca del grupo de pfxeles determinado mediante el determinador 97 de grupo de pfxeles.
Cuando la informacion acerca del procedimiento de determinacion del grupo de pfxeles a compensar se extrae mediante el extractor 93 de informacion, el determinador 97 de grupo de pfxeles puede determinar de manera selectiva el grupo de pfxeles que tiene el valor de pixel a compensar basandose en el procedimiento. Por ejemplo, el determinador 97 de grupo de pfxeles puede determinar si clasificar los pfxeles restaurados de acuerdo con los niveles de valor de extremo y/o de borde, las bandas de valores de pfxeles, o las lmeas, y determinar el grupo de pfxeles que tiene los valores de pixel a compensar, basandose en el procedimiento. En este punto, el compensador 98 de pfxeles restaurados puede compensar los valores de pixel de los pfxeles restaurados en el grupo de pfxeles usando los valores de compensacion para el grupo de pfxeles de acuerdo con niveles de valor de extremo y/o de borde, bandas de valores de pfxeles, o lmeas.
El aparato 90 de decodificacion de video puede obtener informacion acerca de al menos una unidad de codificacion que genera el error de codificacion mmimo cuando la codificacion se realiza de manera recursiva para cada unidad de codificacion maxima, y puede usar la informacion para decodificar la instantanea actual. En otras palabras, pueden decodificarse las unidades de codificacion que tienen la estructura de arbol determinadas para que sean las unidades de codificacion optima en cada unidad de codificacion maxima. Tambien, el tamano maximo de la unidad de codificacion se determina considerando la resolucion y la cantidad de datos de imagen.
Por consiguiente, incluso si los datos de imagen tienen alta resolucion y una gran cantidad de datos, los datos de imagen pueden decodificarse de manera eficaz y restaurarse usando un tamano de una unidad de codificacion y un modo de codificacion, que se determinan de manera adaptativa de acuerdo con las caractensticas de los datos de imagen, usando informacion acerca de un modo de codificacion optimo recibido desde un codificador.
El aparato 80 de codificacion de video y el aparato 90 de decodificacion de video pueden compensar un error sistematico generado entre la imagen restaurada y la imagen original cuando la imagen codificada se decodifica y restaura.
Codificacion y decodificacion de un video basandose en unidades de codificacion que tienen una estructura de arbol, de acuerdo con las realizaciones ejemplares.
La Figura 10 es un diagrama para describir un concepto de unidades de codificacion.
Un tamano de una unidad de codificacion puede expresarse en anchura x altura, y puede ser 64x64, 32x32, 16x16 y 8x8. Una unidad de codificacion de 64x64 puede dividirse en particiones de 64x64, 64x32, 32x64 o 32x32, y una unidad de codificacion de 32x32 puede dividirse en particiones de 32x32, 32x16, 16x32 o 16x16, una unidad de codificacion de 16x16 puede dividirse en particiones de 16x16, 16x8, 8x16 o 8x8, y una unidad de codificacion de 8x8 puede dividirse en particiones de 8x8, 8x4, 4x8 o 4x4.
En los datos 310 de video, una resolucion es 1920x1080, un tamano maximo de una unidad de codificacion es 64, y una profundidad maxima es 2. En los datos 320 de video, una resolucion es 1920x1080, un tamano maximo de una unidad de codificacion es 64, y una profundidad maxima es 3. En los datos 330 de video, una resolucion es 352x288, un tamano maximo de una unidad de codificacion es 16, y una profundidad maxima es 1. La profundidad maxima mostrada en la Figura 10 indica un numero total de divisiones de una unidad de codificacion maxima a una unidad de decodificacion minima.
5
10
15
20
25
30
35
40
45
50
55
Si una resolucion es alta o una cantidad de datos es grande, un tamano maximo de una unidad de codificacion puede ser grande para no aumentar unicamente la eficacia de codificacion sino tambien para reflejar con precision las caractensticas de una imagen. Por consiguiente, el tamano maximo de la unidad de codificacion de los datos 310 y 320 de video que tiene la resolucion mas alta que los datos 330 de video puede ser 64.
Puesto que la profundidad maxima de los datos 310 de video es 2, las unidades 315 de codificacion de los datos 310 de video pueden incluir una unidad de codificacion maxima que tiene un tamano de eje largo de 64, y unidades de codificacion que tienen tamanos de eje largo de 32 y 16 puesto que las profundidades se han hecho profundas a dos capas dividiendo la unidad de codificacion maxima dos veces. Mientras tanto, puesto que la profundidad maxima de los datos 330 de video es 1, las unidades 335 de codificacion de los datos 330 de video pueden incluir una unidad de codificacion maxima que tiene un tamano de eje largo de 16, y unidades de codificacion que tienen un tamano de eje largo de 8 puesto que las profundidades se han hecho profundas a una capa dividiendo la unidad de codificacion maxima una vez.
Puesto que la profundidad maxima de los datos 320 de video es 3, las unidades 325 de codificacion de los datos 320 de video pueden incluir una unidad de codificacion maxima que tiene un tamano de eje largo de 64, y unidades de codificacion que tienen tamanos de eje largo de 32, 16 y 8 puesto que las profundidades se han hecho profundas a 3 capas dividiendo la unidad de codificacion maxima tres veces. A medida que una profundidad se hace profunda, la informacion detallada puede expresarse de manera precisa.
La Figura 11 es un diagrama de bloques de un codificador 400 de imagen basandose en unidades de codificacion.
El codificador 400 de imagen realiza las operaciones del codificador 81 del aparato 80 de codificacion de video para codificar datos de imagen. En otras palabras, un intra predictor 410 realiza la intra prediccion en unidades de codificacion en un intra modo, de entre un fotograma 405 actual, y un estimador 420 de movimiento y un compensador 425 de movimiento realizan inter estimacion y compensacion de movimiento en unidades de codificacion en un inter modo de entre el fotograma 405 actual usando el fotograma 405 actual y un fotograma 495 de referencia.
Los datos emitidos desde el intra predictor 410, el estimador 420 de movimiento y el compensador 425 de movimiento se emiten como un coeficiente de transformacion cuantificado a traves de un transformador 430 y un cuantificador 440. El coeficiente de transformacion cuantificado se restaura como datos en un dominio espacial a traves de un cuantificador 460 inverso y un transformador 470 inverso, y los datos restaurados en el dominio espacial se emiten como el fotograma 495 de referencia despues de post-procesarse a traves de una unidad 480 de desbloqueo y una unidad 490 de filtracion de bucle. El coeficiente de transformacion cuantificado puede emitirse como un flujo de bits 455 a traves de un codificador 450 por entropfa.
Para que se aplique el codificador 400 de imagen en el aparato 80 de codificacion de video, los elementos del codificador 400 de imagen, es decir, el intra predictor 410, el estimador 420 de movimiento, el compensador 425 de movimiento, el transformador 430, el cuantificador 440, el codificador 450 por entropfa, el cuantificador 460 inverso, el transformador 470 inverso, la unidad 480 de desbloqueo, y la unidad 490 de filtracion en bucle, realizan operaciones basandose en cada unidad de codificacion de entre unidades de codificacion que tienen una estructura de arbol mientras se considera la profundidad maxima de cada unidad de codificacion maxima.
Espedficamente, el intra predictor 410, el estimador 420 de movimiento, y el compensador 425 de movimiento determinan particiones y un modo de prediccion de cada unidad de codificacion de entre las unidades de codificacion que tienen una estructura de arbol mientras consideran el tamano maximo y la profundidad maxima de una unidad de codificacion maxima actual, y el transformador 430 determina el tamano de la unidad de transformacion en cada unidad de codificacion de entre las unidades de codificacion que tienen una estructura de arbol.
La Figura 12 es un diagrama de bloques de un decodificador 500 de imagen basandose en unidades de codificacion, de acuerdo con una realizacion ejemplar.
Un analizador 510 analiza datos de imagen codificados a decodificar e informacion acerca de la codificacion usada para decodificar a partir de un flujo de bits 505. Los datos de imagen codificados se emiten como datos cuantificados inversos a traves de un decodificador 520 por entropfa y un cuantificador 530 inverso, y los datos cuantificados inversos se restauran a datos de imagen en un dominio espacial a traves de un transformador 540 inverso.
Un intra predictor 550 realiza intra prediccion en unidades de codificacion en un intra modo con respecto a los datos de imagen en el dominio espacial, y un compensador 560 de movimiento realiza compensacion de movimiento en unidades de codificacion en un inter modo usando un fotograma 585 de referencia.
Los datos de imagen en el dominio espacial, que se pasan a traves del intra predictor 550 y el compensador 560 de movimiento, pueden emitirse como un fotograma 595 restaurado despues de post-procesarse a traves de una unidad 570 de desbloqueo y una unidad 580 de filtracion de bucle. Tambien, los datos de imagen que se post- procesan a traves de la unidad 570 de desbloqueo y la unidad 580 de filtracion en bucle pueden emitirse como el fotograma 585 de referencia.
5
10
15
20
25
30
35
40
45
50
55
Para decodificar los datos de imagen en el decodificador 95 del aparato 90 de decodificacion de v^deo, el decodificador 500 de imagen puede realizar operaciones que se realizan despues del analizador 510.
Para que se aplique el decodificador 500 de imagen en el aparato 90 de codificacion de video, los elementos del decodificador 500 de imagen, es decir, el analizador 510, el decodificador 520 por entropfa, el cuantificador 530 inverso, el transformador 540 inverso, el intra predictor 550, el compensador 560 de movimiento, la unidad 570 de desbloqueo, y la unidad 580 de filtracion en bucle, realizan operaciones basandose en unidades de codificacion que tienen una estructura de arbol para cada unidad de codificacion maxima.
Espedficamente, la intra prediccion 550 y el compensador 560 de movimiento realizan operaciones basandose en particiones y un modo de prediccion para cada una de las unidades de codificacion que tienen una estructura de arbol, y el transformador 540 inverso realiza operaciones basandose en un tamano de una unidad de transformacion para cada unidad de codificacion.
La Figura 13 es un diagrama que ilustra unidades de codificacion mas profundas de acuerdo con las profundidades, y particiones.
El aparato 80 de codificacion de video y el aparato 90 de decodificacion de video usan unidades de codificacion jerarquica para considerar las caractensticas de una imagen. Una altura maxima, una anchura maxima y una profundidad maxima de unidades de codificacion pueden determinarse de manera adaptativa de acuerdo con las caractensticas de la imagen, o pueden establecerse de manera diferente por un usuario. Los tamanos de unidades de codificacion mas profundas de acuerdo con las profundidades pueden determinarse de acuerdo con el tamano maximo predeterminado de la unidad de codificacion.
En una estructura 600 jerarquica de unidades de codificacion, la altura maxima y la anchura maxima de las unidades de codificacion son cada una 64, y la profundidad maxima es 4. Puesto que una profundidad se hace profunda a lo largo de un eje vertical de la estructura 600 jerarquica, se divide cada una de una altura y una anchura de la unidad de codificacion mas profunda. Tambien, una unidad de prediccion y particiones, que son bases para la codificacion por prediccion de cada unidad de codificacion mas profunda, se muestran a lo largo de un eje horizontal de la estructura 600 jerarquica.
En otras palabras, una unidad 610 de codificacion es una unidad de codificacion maxima en la estructura 600 jerarquica, en la que una profundidad es 0 y un tamano, es decir, una altura por anchura, es 64x64. La profundidad se hace profunda a lo largo del eje vertical, y existe una unidad 620 de codificacion que tiene un tamano de 32x32 y una profundidad de 1, una unidad 630 de codificacion que tiene un tamano de 16x16 y una profundidad de 2, una unidad 640 de codificacion que tiene un tamano de 8x8 y una profundidad de 3, y una unidad 650 de codificacion que tiene un tamano de 4x4 y una profundidad de 4. La unidad 650 de codificacion que tiene el tamano de 4x4 y la profundidad de 4 es una unidad de codificacion minima.
La unidad de prediccion y las particiones de una unidad de codificacion estan dispuestas a lo largo del eje horizontal de acuerdo con cada profundidad. En otras palabras, si la unidad 610 de codificacion que tiene el tamano de 64x64 y la profundidad de 0 es una unidad de prediccion, la unidad de prediccion puede dividirse en particiones incluidas en la unidad 610 de codificacion, es decir, una particion 610 que tiene un tamano de 64x64, particiones 612 que tienen el tamano de 64x32, particiones 614 que tienen el tamano de 32x64, o particiones 616 que tienen el tamano de 32x32.
De manera similar, una unidad de prediccion de la unidad 620 de codificacion que tiene el tamano de 32x32 y la profundidad de 1 puede dividirse en particiones incluidas en la unidad 620 de codificacion, es decir, una particion 620 que tiene un tamano de 32x32, particiones 622 que tienen un tamano de 32x16, particiones 624 que tienen un tamano de 16x32, y particiones 626 que tienen un tamano de 16x16.
De manera similar, una unidad de prediccion de la unidad 630 de codificacion que tiene el tamano de 16x16 y la profundidad de 2 puede dividirse en particiones incluidas en la unidad 630 de codificacion, es decir, una particion que tiene un tamano de 16x16 incluida en la unidad 630 de codificacion, particiones 632 que tienen un tamano de 16x8, particiones 634 que tienen un tamano de 8x16, y particiones 636 que tienen un tamano de 8x8.
De manera similar, una unidad de prediccion de la unidad 640 de codificacion que tiene el tamano de 8x8 y la profundidad de 3 puede dividirse en particiones incluidas en la unidad 640 de codificacion, es decir, una particion que tiene un tamano de 8x8 incluida en la unidad 640 de codificacion, particiones 642 que tienen un tamano de 8x4, particiones 644 que tienen un tamano de 4x8, y particiones 646 que tienen un tamano de 4x4.
La unidad 650 de codificacion que tiene el tamano de 4x4 y la profundidad de 4 es la unidad de codificacion minima y una unidad de codificacion de la profundidad mas inferior. Una unidad de prediccion de la unidad 650 de codificacion puede asignarse unicamente a una particion que tiene un tamano de 4x4. Como alternativa, pueden usarse particiones 652 que tienen un tamano de 4x2, particiones 654 que tienen un tamano de 2x4, o particiones 656 que tienen un tamano de 2x2.
5
10
15
20
25
30
35
40
45
50
55
Para determinar la al menos una profundidad codificada de las unidades de codificacion que constituyen la unidad 610 de codificacion maxima, el determinador 83 de profundidad codificada y modo de codificacion del aparato 80 de codificacion de video realiza la codificacion para unidades de codificacion que corresponden a cada profundidad incluida en la unidad 610 de codificacion maxima.
Un numero de unidades de codificacion mas profundas de acuerdo con las profundidades que incluyen datos en el mismo intervalo y el mismo tamano aumenta a medida que la profundidad se hace profunda. Por ejemplo, se requieren cuatro unidades de codificacion que corresponden a una profundidad de 2 para cubrir datos que se incluyen en una unidad de codificacion que corresponde a una profundidad de 1. Por consiguiente, para comparar los resultados de codificacion de los mismos datos de acuerdo con las profundidades, se codifican cada una de la unidad de codificacion que corresponde a la profundidad de 1 y cuatro unidades de codificacion que corresponden a la profundidad de 2.
Para realizar codificacion para una profundidad actual de entre las profundidades, un mmimo error de codificacion puede seleccionarse para la profundidad actual realizando la codificacion para cada unidad de prediccion en las unidades de codificacion que corresponden a la profundidad actual, a lo largo del eje horizontal de la estructura 600 jerarquica. Como alternativa, puede buscarse el error de codificacion mmimo comparando los errores de codificacion mmimos de acuerdo con las profundidades, realizando la codificacion para cada profundidad a medida que la profundidad se hace profunda a lo largo del eje vertical de la estructura 600 jerarquica. Puede seleccionarse una profundidad y una particion que tienen el error de codificacion mmimo en la unidad 610 de codificacion como la profundidad codificada y un tipo de particion de la unidad 610 de codificacion.
La Figura 14 es un diagrama para describir una relacion entre una unidad 710 de codificacion y las unidades 720 de transformacion.
El aparato 80 de codificacion de video o el aparato 90 de decodificacion de video codifica o decodifica una imagen de acuerdo con las unidades de codificacion que tienen tamanos mas pequenos o iguales a una unidad de codificacion maxima para cada unidad de codificacion maxima. Los tamanos de unidades de transformacion para transformacion durante la codificacion pueden seleccionarse basandose en unidades de datos que no son mayores que una unidad de codificacion correspondiente.
Por ejemplo, en el aparato 80 de codificacion de video o el aparato 90 de decodificacion de video, si un tamano de la unidad 710 de codificacion es 64x64, la transformacion puede realizarse usando las unidades 720 de transformacion que tienen un tamano de 32x32.
Tambien, los datos de la unidad 710 de codificacion que tienen el tamano de 64x64 pueden codificare realizando la transformacion en cada una de las unidades de transformacion que tienen el tamano de 32x32, 16x16, 8x8 y 4x4, que son mas pequenas que 64x64, y a continuacion puede seleccionarse una unidad de transformacion que tiene el mmimo error de codificacion.
La Figura 15 es un diagrama para describir informacion de codificacion de unidades de codificacion que corresponden a una profundidad codificada.
El transmisor 88 del aparato 80 de codificacion de video puede codificar y transmitir informacion 800 acerca de un tipo de particion, informacion 810 acerca de un modo de prediccion, e informacion 820 acerca de un tamano de una unidad de transformacion para cada unidad de codificacion que corresponde a una profundidad codificada, como informacion acerca de un modo de codificacion.
La informacion 800 indica informacion acerca de una forma de una particion obtenida dividiendo una unidad de prediccion de una unidad de codificacion actual, en la que la particion es una unidad de datos para codificar por prediccion la unidad de codificacion actual. Por ejemplo, una unidad de codificacion actual CU_0 que tiene un tamano de 2Nx2N puede dividirse en una cualquiera de una particion 802 que tiene un tamano de 2Nx2N, una particion 804 que tiene un tamano de 2NxN, una particion 806 que tiene un tamano de Nx2N, y una particion 808 que tiene un tamano de NxN. En este punto, la informacion 800 acerca de un tipo de particion se establece para indicar una de la particion 804 que tiene un tamano de 2NxN, la particion 806 que tiene un tamano de Nx2N, y la particion 808 que tiene un tamano de NxN.
La informacion 810 indica un modo de prediccion de cada particion. Por ejemplo, la informacion 810 puede indicar un modo de codificacion por prediccion realizado en una particion indicado por la informacion 800, es decir, un intra modo 812, un inter modo 814 o un modo de salto 816.
La informacion 820 indica una unidad de transformacion para que sea basandose en cuando se realiza la transformacion en una unidad de codificacion actual. Por ejemplo, la unidad de transformacion puede ser una primera unidad 822 de intra transformacion, una segunda unidad 824 de intra transformacion, una primera unidad 826 de inter transformacion o una segunda unidad 828 de intra transformacion.
El extractor 93 de informacion del aparato 90 de decodificacion de video puede extraer y usar la informacion 800, 810 y 820 para decodificar, de acuerdo con cada unidad de codificacion mas profunda.
5
10
15
20
25
30
35
40
45
50
55
La Figura 16 es un diagrama de unidades de codificacion mas profundas de acuerdo con las profundidades, de acuerdo con una realizacion ejemplar.
La informacion de division puede usarse para indicar un cambio de una profundidad. La informacion de division indica si una unidad de codificacion de una profundidad actual se divide en unidades de codificacion de una profundidad inferior.
Una unidad 910 de prediccion para codificacion por prediccion una unidad 900 de codificacion que tiene una profundidad de 0 y un tamano de 2N_0x2N_0 puede incluir particiones de un tipo 912 de particion que tiene un tamano de 2N_0x2N_0, un tipo 914 de particion que tiene un tamano de 2N_0xN_0, un tipo 916 de particion que tiene un tamano de N_0x2N_0, y un tipo 918 de particion que tiene un tamano de N_0xN_0. La Figura 9 unicamente ilustra los tipos 912 a 918 de particion que se obtienen dividiendo simetricamente la unidad 910 de prediccion, pero un tipo de particion no esta limitado a los mismos, y las particiones de la unidad 910 de prediccion pueden incluir particiones asimetricas, particiones que tienen una forma predeterminada y particiones que tienen una forma geometrica.
La codificacion por prediccion se realiza de manera repetitiva en una particion que tiene un tamano de 2N_0x2N_0, dos particiones que tienen un tamano de 2N_0xN_0, dos particiones que tienen un tamano de N_0x2N_0, y cuatro particiones que tienen un tamano de N_0xN_0, de acuerdo con cada tipo de particion. La codificacion por prediccion en un intra modo y un inter modo puede realizarse en las particiones que tienen los tamanos de 2N_0x2N_0, N_0x2N_0, 2N_0xN_0 y N_0xN_0. La codificacion por prediccion en un modo de salto se realiza unicamente en la particion que tiene el tamano de 2N_0x2N_0.
Se comparan los errores de la codificacion incluyendo la codificacion por prediccion en los tipos 912 a 918 de particiones, y se determina el mmimo error de codificacion entre los tipos de particion. Si un error de codificacion es mas pequeno en uno de los tipos 912 a 916 de particion, la unidad 910 de prediccion puede no dividirse en una profundidad inferior.
Si el error de codificacion es el mas pequeno en el tipo 918 de particion, una profundidad se cambia de 0 a 1 para dividir el tipo 918 de particion en la operacion 920, y se realiza la codificacion de manera repetitiva en las unidades 930 de codificacion que tienen una profundidad de 2 y un tamano de N_0xN_0 para buscar un error de codificacion mmimo.
Una unidad 940 de prediccion para codificacion por prediccion la unidad 930 de codificacion que tiene una profundidad de 1 y un tamano de 2N_1x2N_1 (=N_0xN_0) puede incluir particiones de un tipo 942 de particion que tiene un tamano de 2N_1x2N_1, un tipo 944 de particion que tiene un tamano de 2N_1xN_1, un tipo 946 de particion que tiene un tamano de N_1x2N_1, y un tipo 948 de particion que tiene un tamano de N_1xN_1.
Si un error de codificacion es el mas pequeno en el tipo 948 de particion, una profundidad se cambia de 1 a 2 para dividir el tipo 948 de particion en la operacion 950, y se realiza la codificacion de manera repetitiva en las unidades 960 de codificacion, que tienen una profundidad de 2 y un tamano de N_2xN_2 para buscar un error de codificacion mmimo.
Cuando una profundidad maxima es d, la operacion de division de acuerdo con cada profundidad puede realizarse hasta cuando una profundidad se hace d-1, y la informacion de division puede codificarse hasta cuando una profundidad es una de 0 a d-2. En otras palabras, cuando se realiza la codificacion hasta cuando la profundidad es d-1 despues de que una unidad de codificacion que corresponde a una profundidad de d-2 se divide en la operacion 970, una unidad 990 de prediccion para codificacion por prediccion una unidad 980 de codificacion que tiene una profundidad de d-1 y un tamano de 2N_(d- 1)x2N_(d-1) puede incluir particiones de un tipo 992 de particion que tienen un tamano de 2N_(d-1)x2N_(d-1), un tipo 994 de particion que tiene un tamano de 2N_(d-1)xN_(d-1), un tipo 996 de particion que tiene un tamano de N_(d-1)x2N_(d-1), y un tipo 998 de particion que tiene un tamano de N_(d- 1)xN_(d-1).
La codificacion por prediccion puede realizarse de manera repetitiva en una particion que tiene un tamano de 2N_(d- 1)x2N_(d-1), dos particiones que tienen un tamano de 2N_(d-1)xN_(d-1), dos particiones que tienen un tamano de N_(d-1)x2N_(d-1), cuatro particiones que tienen un tamano de N_(d-1)xN_(d-1) de entre los tipos 992 a 998 de particion para buscar un tipo de particion que tiene un error de codificacion mmimo.
Incluso cuando el tipo 998 de particion tiene el error de codificacion mmimo, puesto que una profundidad maxima es d, una unidad de codificacion Cu_(d-1) que tiene una profundidad de d-1 ya no se divide en una profundidad inferior, y una profundidad codificada para las unidades de codificacion que constituyen una unidad 900 de codificacion maxima actual se determina para que sea d-1 y un tipo de particion de la unidad 900 de codificacion maxima actual puede determinarse para que sea N_(d-1)xN_(d-1). Tambien, puesto que la profundidad maxima es d y una unidad 980 de codificacion minima que tiene una profundidad mas inferior de d-1 ya no se divide mas en una profundidad inferior, no se establece la informacion de division para la unidad 980 de codificacion minima.
Una unidad 999 de datos puede ser una 'unidad minima’ para la unidad de codificacion maxima actual. Una unidad minima puede ser una unidad de datos rectangular obtenida dividiendo una unidad 980 de codificacion minima por
5
10
15
20
25
30
35
40
45
50
4. Realizando la codificacion de manera repetitiva, el aparato 80 de codificacion de v^deo puede seleccionar una profundidad que tiene el mmimo error de codificacion comparando errores de codificacion de acuerdo con las profundidades de la unidad 900 de codificacion para determinar una profundidad codificada, y establecer un tipo de particion correspondiente y un modo de prediccion como un modo de codificacion de la profundidad codificada.
Como tal, los errores de codificacion mmimos de acuerdo con las profundidades se comparan en todas las profundidades de 1a d, y una profundidad que tiene el mmimo error de codificacion puede determinarse como una profundidad codificada. La profundidad codificada, el tipo de particion de la unidad de prediccion, y el modo de prediccion pueden codificarse y transmitirse como informacion acerca de un modo de codificacion. Tambien, puesto que una unidad de codificacion se divide a partir de una profundidad de 0 a una profundidad codificada, unicamente se establece la informacion de division de la profundidad codificada a 0, y se establece la informacion de division de las profundidades excluyendo la profundidad codificada a 1.
El extractor 93 de informacion del aparato 90 de decodificacion de video puede extraer y usar la informacion acerca de la profundidad codificada y la unidad de prediccion de la unidad 900 de codificacion para decodificar la particion 912. El aparato 90 de decodificacion de video puede determinar una profundidad, en la que la informacion de division es 0, como una profundidad codificada usando informacion de division de acuerdo con las profundidades, y usar la informacion acerca de un modo de codificacion de la correspondiente profundidad para decodificacion.
Las Figuras 17 a 19 son diagramas para describir una relacion entre unidades 1010 de codificacion, unidades 1060 de prediccion, y unidades 1070 de transformacion.
Las unidades 1010 de codificacion son unidades de codificacion que tienen una estructura de arbol, que corresponden a profundidades codificadas determinadas mediante el aparato 80 de codificacion de video, en una unidad de codificacion maxima. Las unidades 1060 de prediccion son particiones de unidades de prediccion de cada una de las unidades 1010 de codificacion, y las unidades 1070 de transformacion son unidades de transformacion de cada una de las unidades 1010 de codificacion.
Cuando una profundidad de una unidad de codificacion maxima es 0 en las unidades 1010 de codificacion, las profundidades de las unidades 1012 y 1054 de codificacion son 1, las profundidades de las unidades 1014, 1016, 1018, 1028, 1050 y 1052 de codificacion son 2, las profundidades de las unidades 1020, 1022, 1024, 1026, 1030, 1032 y 1048 de codificacion son 3, y las profundidades de las unidades 1040, 1042, 1044 y 1046 de codificacion son 4.
En las unidades 1060 de prediccion, algunas unidades 1014, 1016, 1022, 1032, 1048, 1050, 1052 y 1054 de codificacion se obtienen dividiendo las unidades de codificacion en las unidades 1010 de codificacion. En otras palabras, los tipos de particion en las unidades 1014, 1022, 1050 y 1054 de codificacion tienen un tamano de 2NxN, los tipos de particion en las unidades 1016, 1048 y 1052 de codificacion tienen un tamano de Nx2N y un tipo de particion de la unidad 1032 de codificacion tiene un tamano de NxN. Las unidades de prediccion y las particiones de las unidades 1010 de codificacion son mas pequenas o iguales que cada unidad de codificacion.
La transformacion o transformacion inversa se realiza en datos de imagen de la unidad 1052 de codificacion en las unidades 1070 de transformacion en una unidad de datos que es mas pequena que la unidad 1052 de codificacion. Tambien, las unidades 1014, 1016, 1022, 1032, 1048, 1050 y 1052 de codificacion en las unidades 1070 de transformacion son diferentes de aquellas en las unidades 1060 de prediccion en terminos de tamanos y formas. En otras palabras, los aparatos 100 y 200 de codificacion y decodificacion de video pueden realizar intra prediccion, estimacion de movimiento, compensacion de movimiento, transformacion y transformacion inversa de manera individual en una unidad de datos en la misma unidad de codificacion.
Por consiguiente, la codificacion se realiza de manera recursiva en cada una de las unidades de codificacion que tienen una estructura jerarquica en cada region de una unidad de codificacion maxima para determinar una unidad de codificacion optima, y por lo tanto pueden obtenerse unidades de codificacion que tienen una estructura de arbol recursiva.
La informacion de codificacion puede incluir informacion de division acerca de una unidad de codificacion, informacion acerca de un tipo de particion, informacion acerca de un modo de prediccion e informacion acerca de un tamano de una unidad de transformacion. La tabla 2 muestra la informacion de codificacion que puede establecerse mediante los aparatos 80 y 90 de codificacion y decodificacion de video.
5
10
15
20
25
30
35
[Tabla 2]
Informacion de division 0 (codificacion en unidad de codificacion que tiene tamano de 2Nx2N y profundidad actual de d)
Informacion de division 1
Modo de prediccion
Tipo de particion Tamano de unidad de transformacion Codificar repetitivamente unidades de codificacion que tienen profundidad inferior de d+1
Intra lnter Salto (unicamente 2Nx2N)
Tipo de particion simetrica Tipo de particion asimetrica Informacion de division 0 de unidad de transformacion Informacion de division 1 de unidad de transformacion
2Nx2N 2NxN Nx2N NxN
2NxnU 2NxnD nLx2N nRx2N 2Nx2N NxN (tipo simetrico) N/2xN/2 (tipo asimetrico)
El transmisor 88 del aparato 80 de codificacion de video puede emitir la informacion de codificacion acerca de las unidades de codificacion que tienen una estructura de arbol, y el extractor 93 de informacion del aparato 90 de decodificacion de video puede extraer la informacion de codificacion acerca de las unidades de codificacion que tienen una estructura de arbol a partir de un flujo de bits recibido.
La informacion de division indica si una unidad de codificacion actual se divide en unidades de codificacion de una profundidad inferior. Si la informacion de division de una profundidad actual d es 0, una profundidad, en la que una unidad de codificacion actual ya no se divide en una profundidad inferior, es una profundidad codificada, y por lo tanto la informacion acerca de un tipo de particion, modo de prediccion y un tamano de una unidad de transformacion puede definirse para la profundidad codificada. Si la unidad de codificacion actual se divide adicionalmente de acuerdo con la informacion de division, la codificacion se realiza de manera independiente en cuatro unidades de division de codificacion de una profundidad inferior.
Un modo de prediccion puede ser uno de un intra modo, un inter modo y un modo de salto. El intra modo y el inter modo pueden definirse en todos los tipos de particion, y el modo de salto puede definirse unicamente en un tipo de particion que tiene un tamano de 2Nx2N.
La informacion acerca del tipo de particion puede indicar tipos de particion simetrica que tienen tamanos de 2Nx2N, 2NxN, Nx2N y NxN, que se obtienen dividiendo simetricamente una altura o una anchura de una unidad de prediccion, y tipos de particion asimetrica que tienen tamanos de 2NxnU, 2NxnD, nLx2N y nRx2N, que se obtienen dividiendo asimetricamente la altura o la anchura de la unidad de prediccion. Los tipos de particion asimetrica que tienen los tamanos de 2NxnU y 2NxnD pueden obtenerse respectivamente dividiendo la altura de la unidad de prediccion en 1:3 y 3:1, y los tipos de particion asimetrica que tienen los tamanos de nLx2N y nRx2N pueden obtenerse respectivamente dividiendo la anchura de la unidad de prediccion en 1:3 y 3:1.
El tamano de la unidad de transformacion puede establecerse para que sea dos tipos en el intra modo y dos tipos en el inter modo. En otras palabras, si la informacion de division de la unidad de transformacion es 0, el tamano de la unidad de transformacion puede ser 2Nx2N, que es el tamano de la unidad de codificacion actual. Si la informacion de division de la unidad de transformacion es 1, las unidades de transformacion pueden obtenerse dividiendo la unidad de codificacion actual. Tambien, si un tipo de particion de la unidad de codificacion actual que tiene el tamano de 2Nx2N es un tipo de particion simetrica, un tamano de una unidad de transformacion puede ser NxN, y si el tipo de particion de la unidad de codificacion actual es un tipo de particion asimetrica, el tamano de la unidad de transformacion puede ser N/2xN/2.
La informacion de codificacion acerca de las unidades de codificacion que tienen una estructura de arbol puede incluir al menos una de una unidad de codificacion que corresponde a una profundidad codificada, una unidad de prediccion y una unidad minima. La unidad de codificacion que corresponde a la profundidad codificada puede incluir al menos una de una unidad de prediccion y una unidad minima que contiene la misma informacion de codificacion.
5
10
15
20
25
30
35
40
45
50
55
Por consiguiente, se determina si las unidades de datos adyacentes estan incluidas en la misma unidad de codificacion que corresponde a la profundidad codificada comparando informacion de codificacion de las unidades de datos adyacentes. Tambien, se determina una unidad de codificacion correspondiente que corresponde a una profundidad codificada usando informacion de codificacion de una unidad de datos, y por lo tanto puede determinarse una distribucion de profundidades codificadas en una unidad de codificacion maxima.
Por consiguiente, si una unidad de codificacion actual se predice basandose en informacion de codificacion de unidades de datos adyacentes, puede hacerse referencia directamente y usarse la informacion de codificacion de las unidades de datos en las unidades de codificacion mas profundas adyacentes a la unidad de codificacion actual.
Como alternativa, si una unidad de codificacion actual se predice basandose en informacion de codificacion de las unidades de datos adyacentes, las unidades de datos adyacentes a la unidad de codificacion actual se buscan usando informacion codificada de las unidades de datos, y puede hacerse referencia a las unidades de codificacion adyacentes buscadas prediciendo la unidad de codificacion actual.
La Figura 20 es un diagrama para describir una relacion entre una unidad de codificacion, una unidad de prediccion o una particion, y una unidad de transformacion, de acuerdo con modo de codificacion informacion de la Tabla 2.
Una unidad 1300 de codificacion maxima incluye las unidades 1302, 1304, 1306, 1312, 1314, 1316 y 1318 de codificacion de las profundidades codificadas. En este punto, puesto que la unidad 1318 de codificacion es una unidad de codificacion de una profundidad codificada, la informacion de division puede establecerse a 0. La informacion acerca de un tipo de particion de la unidad 1318 de codificacion que tiene un tamano de 2Nx2N puede establecerse para que sea una de un tipo 1322 de particion que tiene un tamano de 2Nx2N, un tipo 1324 de particion que tiene un tamano de 2NxN, un tipo 1326 de particion que tiene un tamano de Nx2N, un tipo 1328 de particion que tiene un tamano de NxN, un tipo 1332 de particion que tiene un tamano de 2NxnU, un tipo 1334 de particion que tiene un tamano de 2NxnD, un tipo 1336 de particion que tiene un tamano de nLx2N, y un tipo 1338 de particion que tiene un tamano de nRx2N.
La informacion de division (bandera de tamano de TU) de una unidad de transformacion es un tipo de mdice de transformacion, en el que un tamano de una unidad de transformacion que corresponde a un mdice de transformacion puede cambiar de acuerdo con un tipo de unidad de prediccion o un tipo de particion de una unidad de codificacion.
Por ejemplo, cuando el tipo de particion se establece para que sea simetrica, es decir, el tipo 1322, 1324, 1326 o 1328 de particion, se establece una unidad 1342 de transformacion que tiene un tamano de 2Nx2N si la bandera de tamano de TU es 0, y se establece una unidad 1344 de transformacion que tiene un tamano de NxN si una bandera de tamano de TU es 1.
Cuando el tipo de particion se establece para que sea asimetrica, es decir, el tipo 1332, 1334, 1336 o 1338 de particion, se establece una unidad 1352 de transformacion que tiene un tamano de 2Nx2N si una bandera de tamano de TU es 0, y se establece una unidad 1354 de transformacion que tiene un tamano de N/2xN/2 si una bandera de tamano de TU es 1.
Haciendo referencia a la Figura 18, la bandera de tamano de TU es una bandera que tiene un valor 0 o 1, pero la bandera de tamano de TU no esta limitada a 1 bit, y una unidad de transformacion puede dividirse jerarquicamente teniendo una estructura de arbol mientras que la bandera de tamano de TU aumenta desde 0.
En este caso, el tamano de una unidad de transformacion que se ha usado realmente puede expresarse usando una bandera de tamano de TU de una unidad de transformacion, junto con un tamano maximo y tamano mmimo de la unidad de transformacion. El aparato 80 de codificacion de video puede codificar la informacion de tamano de unidad de transformacion maxima, informacion de tamano de unidad de transformacion minima y una bandera de tamano de TU maxima. El resultado de la codificacion de la informacion de tamano de unidad de transformacion maxima, la informacion de tamano de unidad de transformacion minima y la bandera de tamano de TU maxima puede insertarse en un SPS. El aparato 90 de decodificacion de video puede decodificar video usando la informacion de tamano de unidad de transformacion maxima, la informacion de tamano de unidad de transformacion minima y la bandera de tamano de TU maxima.
Por ejemplo, si el tamano de una unidad de codificacion actual es 64x64 y un tamano de unidad de transformacion maxima es 32x32, entonces el tamano de una unidad de transformacion puede ser 32x32 cuando una bandera de tamano de TU es 0, puede ser 16x16 cuando la bandera de tamano de TU es 1, y puede ser 8x8 cuando la bandera de tamano de TU es 2.
Como otro ejemplo, si el tamano de la unidad de codificacion actual es 32x32 y un tamano de unidad de transformacion minima 32x32, entonces el tamano de la unidad de transformacion puede ser 32x32 cuando la bandera de tamano de TU es 0. En este punto, la bandera de tamano de TU no puede establecerse a un valor distinto de 0, puesto que el tamano de la unidad de transformacion no puede ser menor de 32x32.
5
10
15
20
25
30
35
40
45
50
Como otro ejemplo, si el tamano de la unidad de codificacion actual es 64x64 y una bandera de tamano de TU maxima es 1, entonces la bandera de tamano de TU puede ser 0 o 1. En este punto, la bandera de tamano de TU no puede establecerse a un valor distinto de 0 o 1.
Por lo tanto, si se define que la bandera de tamano de TU maxima es 'MaxTransformSizelndex', un tamano de unidad de transformacion mmimo es 'MinTransformSize', y un tamano de unidad de transformacion es 'RootTuSize' cuando la bandera de tamano de TU es 0, entonces un tamano de unidad de transformacion minima actual 'CurrMinTuSize' que puede determinarse en una unidad de codificacion actual, puede definirse mediante la Ecuacion 10.
[Ecuacion 10]
CurrMinTuSize
= max(MinTransformSize, RootTuSize/(2AMaxTransformSizelndex)).
En comparacion con el tamano de la unidad de transformacion minima actual 'CurrMinTuSize' que puede determinarse en la unidad de codificacion actual, un tamano de unidad de transformacion 'RootTuSize' cuando la bandera de tamano de TU es 0 puede indicar un tamano de unidad de transformacion maxima que puede seleccionarse en el sistema.
En la ecuacion 10, 'RootTuSize/(2AMaxTransformSizelndex)' indica un tamano de unidad de transformacion cuando el tamano de la unidad de transformacion 'RootTuSize', cuando la bandera de tamano de TU es 0, se divide un numero de veces que corresponde a la bandera de tamano de TU maxima, y 'MinTransformSize' indica un tamano de transformacion mmimo. Por lo tanto, un valor mas pequeno de entre 'RootTuSize/(2AMaxTransformSizelndex)' y 'MinTransformSize' puede ser el tamano de unidad de transformacion mmimo actual 'CurrMinTuSize' que puede determinarse en la unidad de codificacion actual.
El tamano de unidad de transformacion maxima RootTuSize puede variar de acuerdo con el tipo de un modo de prediccion.
Por ejemplo, si un modo de prediccion actual es un inter modo, entonces 'RootTuSize' puede determinarse usando la Ecuacion (11) a continuacion. En la ecuacion 11, 'MaxTransformSize' indica un tamano de unidad de transformacion maxima, y 'PUSize' indica un tamano de un tamano de unidad de prediccion actual.
[Ecuacion 11]
RootTuSize = min(MaxTransformSize, PUSize).
Es decir, si el modo de prediccion actual es el inter modo, el tamano de unidad de transformacion 'RootTuSize' cuando la bandera de tamano de TU es 0, puede ser un valor mas pequeno de entre el tamano de unidad de transformacion maxima y el tamano de unidad de prediccion actual.
Si un modo de prediccion de una unidad de particion actual es un intra modo, 'RootTuSize' puede determinarse usando la Ecuacion 12 a continuacion. En la ecuacion 12, 'PartitionSize' indica el tamano de la unidad de particion actual.
[Ecuacion 12]
RootTuSize = min(MaxTransformSize, PartitionSize).
Es decir, si el modo de prediccion actual es el intra modo, el tamano de unidad de transformacion 'RootTuSize' cuando la bandera de tamano de TU es 0 puede ser un valor mas pequeno de entre el tamano de unidad de transformacion maxima y el tamano de la unidad de particion actual.
Sin embargo, el tamano de unidad de transformacion maxima actual 'RootTuSize' que vana de acuerdo con el tipo de un modo de prediccion en una unidad de particion es solo un ejemplo y la presente invencion no esta limitada a lo mismo.
La Figura 21 es un diagrama de flujo que ilustra un procedimiento de codificacion de un video para compensar un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol.
En la operacion 2110, una instantanea actual se divide en al menos una unidad de codificacion maxima, y una profundidad codificada para emitir un resultado de codificacion final de acuerdo con al menos una region de division, que se obtiene dividiendo una region de cada unidad de codificacion maxima de acuerdo con las profundidades, se determina codificando la al menos una region de division. Tambien, se determina un modo de codificacion que incluye informacion acerca de una profundidad codificada o informacion de division, informacion acerca de un tipo de particion de una profundidad codificada, un modo de prediccion, y un tamano de una unidad de transformacion de
5
10
15
20
25
30
35
40
45
50
55
acuerdo con una unidad de codificacion mas profunda de acuerdo con las profundidades.
Una profundidad maxima que indica un numero total de posibles veces que se divide la unidad de codificacion maxima puede predeterminarse. La unidad de codificacion maxima puede dividirse jerarquicamente, y la codificacion puede realizarse de manera repetitiva para cada unidad de codificacion mas profunda cada vez que la profundidad se hace profunda. Los errores de codificacion de todas las unidades de codificacion mas profundas se miden y comparan para determinar una profundidad codificada que genera el mmimo error de codificacion de la unidad de codificacion.
En la operacion 2120, los datos de imagen codificados se decodifican basandose en la profundidad codificada y el modo de codificacion, y se genera una imagen restaurada realizando filtracion de bucle en los datos de imagen decodificados. La imagen restaurada puede generarse realizando filtracion de bucle adaptativa, que realiza de manera continua al menos una filtracion unidimensional en los datos de imagen decodificados o datos de imagen desbloqueados.
En la operacion 2130, se determina un valor de compensacion acerca de un error entre cada pixel restaurado en un grupo predeterminado de la imagen restaurada y un pixel original, y un grupo de pfxeles que incluye pfxeles restaurados a compensar. El grupo de pfxeles que incluye los pfxeles restaurados que tienen valores de pixel a compensar puede determinarse de acuerdo con niveles de valor de extremo y/o de borde de valores de pixel, bandas de valores de pfxeles, o lmeas. El valor de compensacion de acuerdo con grupos de pfxeles puede determinarse basandose en un valor promedio de los errores.
En la operacion 2140, se emiten los datos de imagen que constituyen el resultado de codificacion final de acuerdo con la al menos una region de division, la informacion acerca de la profundidad codificada y el modo de codificacion, informacion acerca de un coeficiente de filtracion de bucle e informacion relacionada con el valor de compensacion. La informacion acerca del modo de codificacion puede incluir informacion acerca de una profundidad codificada o informacion de division, informacion acerca de un tipo de particion de la profundidad codificada, un modo de prediccion y un tamano de una unidad de transformacion.
La informacion relacionada con el valor de compensacion de acuerdo con los grupos de pfxeles puede codificarse junto con la informacion acerca del modo de codificacion, los datos de video y la informacion acerca del coeficiente de filtracion de bucle, que se codifican de acuerdo con el procedimiento basandose en las unidades de codificacion que tienen la estructura de arbol, y puede transmitirse a un decodificador.
La Figura 22 es un diagrama de flujo que ilustra un procedimiento de decodificacion de un video para compensar un valor de pixel despues de realizar filtracion de bucle basandose en unidades de codificacion que tienen una estructura de arbol.
En la operacion 2210, se recibe y analiza un flujo de bits acerca de un video codificado de acuerdo con el procedimiento de la Figura 21 basandose en las unidades de codificacion que tienen la estructura de arbol, y se extraen los datos de imagen de una instantanea actual asignados a una unidad de codificacion maxima, informacion acerca de una profundidad codificada y un modo de codificacion de acuerdo con las unidades de codificacion maxima, informacion acerca de un coeficiente de filtracion de bucle e informacion relacionada con un valor de compensacion a partir del flujo de bits analizado.
Se selecciona una profundidad codificada de acuerdo con las unidades de codificacion maxima como una profundidad que tiene el mmimo error de codificacion de acuerdo con las unidades de codificacion maxima mientras se codifica la instantanea actual. La codificacion se realiza de acuerdo con las unidades de codificacion maxima codificando los datos de imagen basandose en al menos una unidad de datos obtenida dividiendo jerarquicamente la unidad de codificacion maxima de acuerdo con las profundidades. Por consiguiente, cada pieza de datos de imagen se decodifica despues de determinar la profundidad codificada de acuerdo con las unidades de codificacion, mejorando de esta manera la eficacia de codificacion y decodificacion de una imagen.
En la operacion 2220, los datos de imagen se decodifican en cada unidad de codificacion maxima basandose en la informacion acerca de la profundidad codificada y el modo de codificacion, y se genera una imagen restaurada realizando filtracion de bucle en los datos de imagen decodificados. La imagen restaurada puede generarse realizando filtracion de bucle adaptativa, en la que se realiza de manera continua al menos una filtracion unidimensional, en los datos de imagen decodificados o datos de imagen desbloqueados.
En la operacion 2230, se determina un grupo de pfxeles que incluye pfxeles restaurados a compensar de entre pfxeles restaurados de la imagen restaurada, usando el valor de compensacion. El grupo de pfxeles que incluye los pfxeles restaurados que tienen valores de pixel a compensar puede determinarse usando el valor de compensacion, de acuerdo con niveles de valor de extremo y/o de borde de los valores de pixel de los pfxeles restaurados, bandas de valores de pfxeles, o lmeas, usando un procedimiento de determinacion de un grupo de pfxeles basandose en la informacion extrafda relacionada con el valor de compensacion.
En la operacion 2240, una imagen restaurada que tiene un error compensado puede emitirse compensando un error entre los pfxeles restaurados del grupo de pfxeles determinado y pixel original correspondiente usando el valor de
compensacion.
De acuerdo con el procedimiento de codificacion de un v^deo y el procedimiento de decodificacion de un video, la calidad de la imagen restaurada puede mejorarse compensando un error sistematico de la imagen restaurada, y puede reducirse una tasa de bits de transmision de informacion adicional para mejorar la calidad de la imagen 5 restaurada puesto que unicamente se codifica y transmite la informacion acerca del valor de compensacion de acuerdo con los grupos de pfxeles, y no se transmite la informacion acerca de una localizacion de un pixel a compensar.
Aunque se ha mostrado y descrito particularmente anteriormente realizaciones ejemplares, se entendera por los expertos en la materia que pueden realizarse diversos cambios en forma y detalles en la misma sin alejarse del 10 alcance del concepto inventivo segun se define mediante las reivindicaciones adjuntas. Las realizaciones ejemplares debenan considerarse en un sentido descriptivo unicamente y no para fines de limitacion. Por lo tanto, el alcance del concepto inventivo se define no por la descripcion detallada de realizaciones ejemplares sino por las reivindicaciones adjuntas.

Claims (1)

  1. REIVINDICACIONES
    1. Un aparato para decodificacion de v^deo, comprendiendo el aparato:
    un procesador que esta configurado para obtener, a partir de un flujo de bits, informacion acerca de un tipo de correccion de valores de pixel y, cuando la informacion acerca de un tipo de correccion de valores de pixel indica 5 uno de un tipo de banda y un tipo de borde, obtener una pluralidad de valores de compensacion a partir del flujo de bits;
    un compensador de tipo de banda que esta configurado para, cuando la informacion acerca de un tipo de correccion de valores de pixel indica el tipo de banda, anadir un valor de compensacion entre la pluralidad de valores de
    compensacion a un pixel en una banda entre pfxeles de un bloque actual, en el que un intervalo total de valores de
    10 los pfxeles es desde un valor mmimo de los valores de los pfxeles hasta un valor maximo de los valores de los pfxeles, y una seccion que corresponde al intervalo total de valores de los pfxeles se divide uniformemente en una pluralidad de bandas, la banda es una de una pluralidad de bandas, un valor del pixel esta en un intervalo de valores de pixel que corresponden a la banda, la pluralidad de valores de compensacion corresponden a la pluralidad de bandas y el valor de compensacion corresponde a la banda; y
    15 un compensador de tipo de borde que esta configurado para, cuando la informacion acerca de un tipo de correccion de valores de pixel indica el tipo de borde, anadir el valor de compensacion entre la pluralidad de valores de
    compensacion, a un pixel que corresponde a un nivel de valor de borde entre los pfxeles de un bloque actual, en el
    que el nivel de valor de borde se determina basandose en si el valor del pixel (30) es mayor o menor que los valores de pfxeles restaurados vecinos (31, 32, 33, 34, 35, 36, 37 y 38) en una direccion vertical, una horizontal o una 20 diagonal, la pluralidad de valores de compensacion corresponde a la pluralidad de niveles de valor de borde, y el valor de compensacion corresponde al nivel de valor de borde entre la pluralidad de niveles de valor de borde.
ES15191967.7T 2010-04-05 2011-04-05 Procedimiento y aparato para codificar vídeo compensando valor de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para decodificar vídeo mediante lo mismo Active ES2628911T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020100031143A KR101529992B1 (ko) 2010-04-05 2010-04-05 픽셀 그룹별 픽셀값 보상을 위한 비디오 부호화 방법과 그 장치, 및 픽셀 그룹별 픽셀값 보상을 위한 비디오 복호화 방법과 그 장치
KR20100031143 2010-04-05

Publications (1)

Publication Number Publication Date
ES2628911T3 true ES2628911T3 (es) 2017-08-04

Family

ID=44709668

Family Applications (5)

Application Number Title Priority Date Filing Date
ES15191963.6T Active ES2688370T3 (es) 2010-04-05 2011-04-05 Aparatos y procedimientos relacionados con la descodificación de un vídeo
ES11766124.9T Active ES2632573T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato para codificar vídeo mediante la compensación de valores de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para descodificar vídeo mediante la misma
ES15191859.6T Active ES2633973T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato de codificación de vídeo mediante la compensación de valores de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato de decodificación de vídeo mediante la misma
ES18195262T Active ES2764713T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato para codificar un video
ES15191967.7T Active ES2628911T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato para codificar vídeo compensando valor de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para decodificar vídeo mediante lo mismo

Family Applications Before (4)

Application Number Title Priority Date Filing Date
ES15191963.6T Active ES2688370T3 (es) 2010-04-05 2011-04-05 Aparatos y procedimientos relacionados con la descodificación de un vídeo
ES11766124.9T Active ES2632573T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato para codificar vídeo mediante la compensación de valores de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para descodificar vídeo mediante la misma
ES15191859.6T Active ES2633973T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato de codificación de vídeo mediante la compensación de valores de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato de decodificación de vídeo mediante la misma
ES18195262T Active ES2764713T3 (es) 2010-04-05 2011-04-05 Procedimiento y aparato para codificar un video

Country Status (23)

Country Link
US (7) US8982962B2 (es)
EP (7) EP3614677B1 (es)
JP (5) JP5819935B2 (es)
KR (1) KR101529992B1 (es)
CN (6) CN105049855B (es)
AU (1) AU2011239128B2 (es)
BR (5) BR122021004663B1 (es)
CA (6) CA2887783C (es)
CY (4) CY1119272T1 (es)
DK (5) DK2999227T3 (es)
ES (5) ES2688370T3 (es)
HR (4) HRP20170876T1 (es)
HU (5) HUE036398T2 (es)
LT (4) LT2999227T (es)
MX (1) MX2012011564A (es)
MY (5) MY185162A (es)
PL (5) PL2999226T3 (es)
PT (4) PT2545710T (es)
RS (4) RS57679B1 (es)
RU (5) RU2608877C2 (es)
SI (4) SI2999226T1 (es)
WO (1) WO2011126273A2 (es)
ZA (5) ZA201208297B (es)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101529992B1 (ko) 2010-04-05 2015-06-18 삼성전자주식회사 픽셀 그룹별 픽셀값 보상을 위한 비디오 부호화 방법과 그 장치, 및 픽셀 그룹별 픽셀값 보상을 위한 비디오 복호화 방법과 그 장치
CN106162171B (zh) 2010-04-13 2020-09-11 Ge视频压缩有限责任公司 解码器及方法、编码方法
BR112012026391B1 (pt) 2010-04-13 2020-12-15 Ge Video Compression, Llc Herança em amostra de arranjo em subdivisão multitree
CN105120287B (zh) 2010-04-13 2019-05-17 Ge 视频压缩有限责任公司 解码器、编码器以及用于解码和编码的方法
HUE045579T2 (hu) 2010-04-13 2020-01-28 Ge Video Compression Llc Síkközi predikció
US9445126B2 (en) 2011-01-05 2016-09-13 Qualcomm Incorporated Video filtering using a combination of one-dimensional switched filter and one-dimensional adaptive filter
JP2013093662A (ja) * 2011-10-24 2013-05-16 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラム
CN103092836B (zh) * 2011-10-28 2017-07-18 鸿富锦精密工业(深圳)有限公司 尺寸号定位系统及方法
US10051289B2 (en) * 2011-11-04 2018-08-14 Qualcomm Incorporated Adaptive center band offset filter for video coding
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
BR122019019874B1 (pt) 2011-12-22 2020-08-11 Samsung Electronics Co., Ltd Método de decodificação de vídeo
US9161035B2 (en) * 2012-01-20 2015-10-13 Sony Corporation Flexible band offset mode in sample adaptive offset in HEVC
SG10201510803WA (en) 2012-06-11 2016-01-28 Samsung Electronics Co Ltd Method and Apparatus for Encoding Videos Sharing SAO Parameter According to Color Component
TWI595776B (zh) 2012-06-27 2017-08-11 Sony Corp Image processing device and method
KR20170078682A (ko) 2014-11-04 2017-07-07 삼성전자주식회사 에지 타입의 오프셋을 적용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
EP3021583B1 (en) * 2014-11-14 2019-10-23 Axis AB Method of identifying relevant areas in digital images, method of encoding digital images, and encoder system
JP6037521B2 (ja) * 2015-07-02 2016-12-07 日本電信電話株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラム
US10257394B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Combined HDR/LDR video streaming
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
US20170302965A1 (en) * 2016-04-15 2017-10-19 Google Inc. Adaptive directional loop filter
KR20230042424A (ko) 2016-07-14 2023-03-28 삼성전자주식회사 비디오 복호화 방법 및 그 장치 및 비디오 부호화 방법 및 그 장치
JP7081835B2 (ja) 2016-08-09 2022-06-07 コントラスト, インコーポレイテッド 車両制御のためのリアルタイムhdrビデオ
US11265530B2 (en) 2017-07-10 2022-03-01 Contrast, Inc. Stereoscopic camera
US10491923B2 (en) 2017-08-14 2019-11-26 Google Llc Directional deblocking filter
KR102520626B1 (ko) 2018-01-22 2023-04-11 삼성전자주식회사 아티팩트 감소 필터를 이용한 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
US10951888B2 (en) 2018-06-04 2021-03-16 Contrast, Inc. Compressed high dynamic range video
EP3799694A1 (en) * 2018-07-06 2021-04-07 Huawei Technologies Co., Ltd. A picture encoder, a picture decoder and corresponding methods
CN113661708B (zh) 2019-04-02 2023-12-15 北京字节跳动网络技术有限公司 基于双向光流的视频编解码和解码
US10638130B1 (en) 2019-04-09 2020-04-28 Google Llc Entropy-inspired directional filtering for image coding
WO2020211866A1 (en) 2019-04-19 2020-10-22 Beijing Bytedance Network Technology Co., Ltd. Applicability of prediction refinement with optical flow process
KR102662024B1 (ko) 2019-04-19 2024-05-21 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 상이한 모션 벡터 정제의 그레디언트 계산
CN113711609B (zh) 2019-04-19 2023-12-01 北京字节跳动网络技术有限公司 利用光流的预测细化过程中的增量运动矢量
KR20210112042A (ko) * 2020-03-04 2021-09-14 에스케이하이닉스 주식회사 이미지 센싱 장치 및 그의 동작 방법

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2353168A1 (en) * 2000-07-28 2002-01-28 Alexander R. Roustaei Optical scanner and image reader for reading images and decoding optical information including one and two dimensional symbologies at variable depth of field
KR100743818B1 (ko) * 2001-09-12 2007-07-30 마쯔시다덴기산교 가부시키가이샤 화상 부호화 방법 및 화상 복호화 방법
CN1232126C (zh) * 2002-09-30 2005-12-14 三星电子株式会社 图像编码方法和装置以及图像解码方法和装置
JP3997171B2 (ja) * 2003-03-27 2007-10-24 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法、及び動画像復号プログラム
US7653133B2 (en) * 2003-06-10 2010-01-26 Rensselaer Polytechnic Institute (Rpi) Overlapped block motion compression for variable size blocks in the context of MCTF scalable video coders
CN1236624C (zh) * 2003-09-04 2006-01-11 上海大学 多种块模式的快速整像素运动估计方法
US20050232497A1 (en) 2004-04-15 2005-10-20 Microsoft Corporation High-fidelity transcoding
US20060013315A1 (en) * 2004-07-19 2006-01-19 Samsung Electronics Co., Ltd. Filtering method, apparatus, and medium used in audio-video codec
CN1589016A (zh) * 2004-08-27 2005-03-02 北京长信嘉信息技术有限公司 视频编码中一种提高运动估计速度和精度的技术
KR100716998B1 (ko) 2005-05-24 2007-05-10 삼성전자주식회사 블록화 현상을 감소시키기 위한 부호화 및 복호화 장치 및그 방법과, 이를 구현하기 위한 프로그램이 기록된 기록매체
TW200806040A (en) * 2006-01-05 2008-01-16 Nippon Telegraph & Telephone Video encoding method and decoding method, apparatuses therefor, programs therefor, and storage media for storing the programs
KR101330630B1 (ko) 2006-03-13 2013-11-22 삼성전자주식회사 최적인 예측 모드를 적응적으로 적용하여 동영상을부호화하는 방법 및 장치, 동영상을 복호화하는 방법 및장치
WO2007111292A1 (ja) 2006-03-27 2007-10-04 Matsushita Electric Industrial Co., Ltd. 画像符号化装置および画像復号化装置
JP4956304B2 (ja) * 2006-08-08 2012-06-20 キヤノン株式会社 画像符号化装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
KR101365570B1 (ko) * 2007-01-18 2014-02-21 삼성전자주식회사 인트라 예측 부호화, 복호화 방법 및 장치
KR101369224B1 (ko) 2007-03-28 2014-03-05 삼성전자주식회사 움직임 보상 필터링을 이용한 영상 부호화, 복호화 방법 및장치
KR20090037031A (ko) * 2007-10-11 2009-04-15 주식회사 엠아이비전 필터 적용 예측 기능을 가지는 동영상 압축 장치
CN101415122B (zh) * 2007-10-15 2011-11-16 华为技术有限公司 一种帧间预测编解码方法及装置
CN101163244A (zh) * 2007-11-22 2008-04-16 上海交通大学 视频解码器运动补偿过程中的像素缓存方法及系统
US8358868B2 (en) * 2007-12-25 2013-01-22 Nec Corporation Image processing apparatus, image processing method, image extending apparatus, image compressing apparatus, image transmitting system, and storage medium
WO2009089032A2 (en) 2008-01-10 2009-07-16 Thomson Licensing Methods and apparatus for illumination compensation of intra-predicted video
JP2009177472A (ja) * 2008-01-24 2009-08-06 Panasonic Corp 画像処理方法、画像処理装置及び撮像装置
MX2010009194A (es) 2008-03-07 2010-09-10 Toshiba Kk Metodo y dispositivo de codificacion/decodificacion dinamica de imagen.
EP2161936A1 (en) * 2008-09-04 2010-03-10 Panasonic Corporation Locally adaptive filters for video coding controlled by local correlation data
US8548041B2 (en) * 2008-09-25 2013-10-01 Mediatek Inc. Adaptive filter
KR101529992B1 (ko) 2010-04-05 2015-06-18 삼성전자주식회사 픽셀 그룹별 픽셀값 보상을 위한 비디오 부호화 방법과 그 장치, 및 픽셀 그룹별 픽셀값 보상을 위한 비디오 복호화 방법과 그 장치
CN101888552B (zh) * 2010-06-28 2012-06-20 厦门大学 一种基于局部补偿的跳帧编解码方法和装置
US9161041B2 (en) * 2011-01-09 2015-10-13 Mediatek Inc. Apparatus and method of efficient sample adaptive offset
RU2626013C1 (ru) 2011-10-19 2017-07-21 Кт Корпорейшен Способ декодирования видеосигнала
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
WO2013103892A1 (en) * 2012-01-05 2013-07-11 General Instrument Corporation Devices and methods for sample adaptive offset coding and/or selection of edge offset parameters
KR102132917B1 (ko) * 2012-05-25 2020-07-10 선 페이턴트 트러스트 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치, 및 동화상 부호화 복호 장치

Also Published As

Publication number Publication date
ZA201500711B (en) 2016-01-27
JP5819935B2 (ja) 2015-11-24
ZA201208297B (en) 2015-08-26
CA2887791A1 (en) 2011-10-13
RU2554555C2 (ru) 2015-06-27
JP5937721B2 (ja) 2016-06-22
ES2633973T3 (es) 2017-09-26
ZA201500714B (en) 2016-01-27
US8982962B2 (en) 2015-03-17
HUE034192T2 (en) 2018-02-28
MY154665A (en) 2015-07-15
EP2999225A1 (en) 2016-03-23
US20150163491A1 (en) 2015-06-11
LT2999226T (lt) 2018-10-10
CN104980744A (zh) 2015-10-14
JP2015136185A (ja) 2015-07-27
EP2999227A1 (en) 2016-03-23
US10097860B2 (en) 2018-10-09
SI2999226T1 (sl) 2018-10-30
RU2600534C2 (ru) 2016-10-20
EP2999226B1 (en) 2018-09-19
HRP20170876T1 (hr) 2017-09-22
HUE042536T2 (hu) 2019-07-29
EP3614677A1 (en) 2020-02-26
RU2012146741A (ru) 2014-05-20
PT2999224T (pt) 2017-08-03
JP6007284B2 (ja) 2016-10-12
CN104980742B (zh) 2020-05-26
CA2887783C (en) 2016-11-01
JP2015136187A (ja) 2015-07-27
CA2887783A1 (en) 2011-10-13
US20150189292A1 (en) 2015-07-02
BR122021004657B1 (pt) 2022-03-03
MY185162A (en) 2021-04-30
PL3439307T3 (pl) 2020-03-31
CN104980744B (zh) 2019-04-26
US9124892B2 (en) 2015-09-01
EP2545710A4 (en) 2013-08-07
BR122020012380B1 (pt) 2022-03-03
CY1119299T1 (el) 2018-02-14
HUE048837T2 (hu) 2020-08-28
BR112012025312A2 (pt) 2016-06-28
EP3614677B1 (en) 2021-06-02
CN105049855B (zh) 2019-01-25
ES2688370T3 (es) 2018-11-02
CN104994383A (zh) 2015-10-21
RS56274B1 (sr) 2017-11-30
EP2999224A1 (en) 2016-03-23
JP2013524674A (ja) 2013-06-17
PL2545710T3 (pl) 2017-09-29
AU2011239128B2 (en) 2014-11-13
CN104994383B (zh) 2019-02-01
CN102939753B (zh) 2016-06-01
EP2545710A2 (en) 2013-01-16
MY179636A (en) 2020-11-11
BR112012025312B1 (pt) 2022-03-03
US9736499B2 (en) 2017-08-15
RU2608877C2 (ru) 2017-01-25
CA2795439C (en) 2017-02-28
JP2015136188A (ja) 2015-07-27
CA2887791C (en) 2016-11-01
CA2795439A1 (en) 2011-10-13
US20150189293A1 (en) 2015-07-02
KR101529992B1 (ko) 2015-06-18
DK3439307T3 (da) 2019-12-16
CA2887748C (en) 2017-09-12
US9124893B2 (en) 2015-09-01
DK2999227T3 (en) 2017-07-03
PL2999226T3 (pl) 2019-01-31
US9118914B2 (en) 2015-08-25
CN105049855A (zh) 2015-11-11
CN104980742A (zh) 2015-10-14
LT2999227T (lt) 2017-06-26
CY1120713T1 (el) 2019-12-11
EP3439307A1 (en) 2019-02-06
SI2999227T1 (sl) 2017-07-31
HRP20181496T1 (hr) 2018-11-30
DK2999226T3 (en) 2018-10-08
RU2628123C2 (ru) 2017-08-15
RS56071B1 (sr) 2017-10-31
PL2999224T3 (pl) 2017-10-31
RU2015118705A (ru) 2015-09-27
EP3439307B1 (en) 2019-12-04
US20150189294A1 (en) 2015-07-02
CY1119272T1 (el) 2018-02-14
HRP20171038T1 (hr) 2017-10-06
US9124894B2 (en) 2015-09-01
CN104980741B (zh) 2018-12-07
HUE036398T2 (hu) 2018-07-30
JP5937720B2 (ja) 2016-06-22
AU2011239128A1 (en) 2012-11-01
LT2999224T (lt) 2017-08-25
CA2887786C (en) 2017-11-07
SI2545710T1 (sl) 2017-08-31
US20110243248A1 (en) 2011-10-06
CA2980750A1 (en) 2011-10-13
BR122021004659B1 (pt) 2022-02-15
CA2887748A1 (en) 2011-10-13
LT2545710T (lt) 2017-07-25
CN104980741A (zh) 2015-10-14
US20170332105A1 (en) 2017-11-16
CN102939753A (zh) 2013-02-20
EP2999227B1 (en) 2017-06-07
CY1119321T1 (el) 2018-02-14
JP5937722B2 (ja) 2016-06-22
RU2015118723A (ru) 2015-09-20
US20150326885A1 (en) 2015-11-12
PT2545710T (pt) 2017-07-14
MY178474A (en) 2020-10-14
EP2545710B1 (en) 2017-07-05
RS56218B1 (sr) 2017-11-30
ES2632573T3 (es) 2017-09-14
SI2999224T1 (sl) 2017-11-30
RU2015118706A (ru) 2015-09-20
MY183839A (en) 2021-03-17
DK2545710T3 (da) 2017-07-31
RS57679B1 (sr) 2018-11-30
HUE036399T2 (hu) 2018-07-30
CA2887786A1 (en) 2011-10-13
EP2999224B1 (en) 2017-06-21
PL2999227T3 (pl) 2017-09-29
RU2015118881A (ru) 2015-11-20
BR122021004663B1 (pt) 2022-03-03
EP2999226A1 (en) 2016-03-23
PT2999226T (pt) 2018-10-24
ZA201500712B (en) 2016-01-27
JP2015136186A (ja) 2015-07-27
ES2764713T3 (es) 2020-06-04
MX2012011564A (es) 2012-12-17
PT2999227T (pt) 2017-06-21
ZA201500713B (en) 2016-01-27
RU2602784C2 (ru) 2016-11-20
WO2011126273A2 (en) 2011-10-13
WO2011126273A3 (en) 2012-01-12
EP2999225B1 (en) 2018-02-21
KR20110111852A (ko) 2011-10-12
HRP20171123T1 (hr) 2017-10-06
DK2999224T3 (en) 2017-07-31

Similar Documents

Publication Publication Date Title
ES2628911T3 (es) Procedimiento y aparato para codificar vídeo compensando valor de píxel de acuerdo con grupos de píxeles, y procedimiento y aparato para decodificar vídeo mediante lo mismo
ES2706484T3 (es) Procedimiento de decodificación de vídeo teniendo en cuenta el orden de exploración de unidades de codificación que tienen estructura jerárquica
ES2699098T3 (es) Aparato de decodificación de vídeo usando unidad de transformación de estructura de árbol variable
ES2636757T3 (es) Procedimiento y aparato de codificación de vídeo y procedimiento y aparato de decodificación de vídeo, basándose en estructura jerárquica de unidad de codificación
ES2577116T3 (es) Procedimiento y aparato de codificación de vídeo, y procedimiento y aparato de decodificación de vídeo
ES2816059T3 (es) Procedimiento y aparato para la codificación de vídeo, correspondiente procedimiento para la decodificación de vídeo, vídeo acompañado de decodificación aritmética y señalización de coeficiente significativo en dos dimensiones
ES2698063T3 (es) Procedimiento y aparato para codificación y decodificación de vídeo basadas en unidad de datos jerárquica que comprende predicción de parámetro de cuantificación
ES2764989T3 (es) Codificación por entropía de un vídeo y decodificación por entropía de un vídeo
ES2684480T3 (es) Procedimiento y aparato para determinar un modelo de contexto para codificación y decodificación por entropía de nivel de coeficiente de transformación
BR112012009722B1 (pt) Método de decodificar um bloco residual, e método de codificar um bloco residual
BR112012025407B1 (pt) Método de decodificação de vídeo baseado em unidades de codificação determinadas de acordo com uma estrutura de árvore
AU2016201285A1 (en) Method and apparatus for encoding video by compensating for pixel value according to pi