ES2977892T3 - Método para determinar la unidad de referencia - Google Patents

Método para determinar la unidad de referencia Download PDF

Info

Publication number
ES2977892T3
ES2977892T3 ES21213733T ES21213733T ES2977892T3 ES 2977892 T3 ES2977892 T3 ES 2977892T3 ES 21213733 T ES21213733 T ES 21213733T ES 21213733 T ES21213733 T ES 21213733T ES 2977892 T3 ES2977892 T3 ES 2977892T3
Authority
ES
Spain
Prior art keywords
unit
units
candidate
encoder
coding
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
ES21213733T
Other languages
English (en)
Inventor
Sung Chang Lim
Hui Yong Kim
Se Yoon Jeong
Suk Hee Cho
Ha Hyun Lee
Jin Ho Lee
Jin Soo Choi
Jin Woong Kim
Chie Teuk Ahn
Jong Ho Kim
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.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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 Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Application granted granted Critical
Publication of ES2977892T3 publication Critical patent/ES2977892T3/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Un método de interpredicción según la presente invención comprende las etapas de: seleccionar unidades candidatas de entre unidades vecinas reconstruidas; crear un conjunto de unidades candidatas con respecto a las unidades que se van a decodificar, utilizando las unidades candidatas seleccionadas; determinar una unidad de referencia de entre las unidades candidatas que constituyen el conjunto de unidades candidatas creado; y realizar interpredicción sobre las unidades que se van a decodificar, utilizando la unidad de referencia determinada. Según la presente invención, se puede mejorar la eficiencia de codificación/decodificación de imágenes. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Método para determinar la unidad de referencia
Campo técnico
La presente invención se refiere al procesamiento de imágenes y, más particularmente, a un método y aparato de interpredicción.
Antecedentes de la técnica
Recientemente, según la expansión de los servicios de transmisión con resolución de alta definición (HD, por sus siglas en inglés) en el país y alrededor del mundo, muchos usuarios se han acostumbrado a una imagen de alta resolución y definición, por lo que muchas organizaciones han intentado desarrollar los dispositivos de vídeo de próxima generación. Además, a medida que ha aumentado el interés por la HDTV y la ultra alta definición (UHD, por sus siglas en inglés) con una resolución cuatro veces superior a la de la HDTV, se ha exigido una tecnología de compresión para una imagen de mayor resolución y mayor definición.
Para la compresión de imágenes, se pueden usar una tecnología de interpredicción para predecir valores de píxeles incluidos en una imagen actual a partir de una imagen antes y/o después de la imagen actual, una tecnología de intrapredicción para predecir valores de píxeles incluidos en una imagen actual usando información de píxeles en la imagen actual, una tecnología de codificación entrópica para asignar un código corto a símbolos que tienen una frecuencia de aparición alta y un código largo a símbolos que tienen una frecuencia de aparición baja, o similares.
El documento de estandarización de 1. Reunión ISO/IEC JCT-VC,"Video coding technology proposal by Samsung (and BBC)",de MCCANN K y otros, 15-4-2010 al 23-4-2010, D<r>E<s>DE, describe una tecnología de compresión de vídeo que tiene una capacidad de compresión significativamente mayor que el estándar H.264/AVC de última generación, especialmente para contenidos de vídeo de alta definición. Se describen varias herramientas algorítmicas que cubren varios aspectos de la tecnología de compresión de vídeo. Estos incluyen una estructura general para la representación de contenido de vídeo, inter/intrapredicción, filtrado en bucle y codificación de entropía.
Las diapositivas de la presentación del documento de trabajo antes mencionado,"Video coding technology proposal by BBC (and Samsung)",de MCCANN K y otros, 16 de abril de 2010, describe un marco de codificación que provee la capacidad de compensar la complejidad y la eficiencia de la compresión en la compresión de vídeo. Más específicamente, se describe un método para la compresión de vídeo de baja complejidad con una complejidad comparable al estándar H.264/AVC pero con una mejor eficiencia de compresión, así como un método para la compresión de vídeo de alto rendimiento con una mayor eficiencia de compresión con un aumento moderado de la complejidad con respecto al estándar H.264/AVC.
El documento de estandarización de 11. Reunión ITU VCEG,"Improved Motion Vector Prediction for TML-4",de JANI LAINEMA y otros, 22-08-2000 al 25-08-2000, PORTLAND, OREGÓN, EE.UU., describe un método para generar predicciones de vectores de movimiento.
El documento WO 2009/115901 A2 describe un sistema y un método para mejorar la eficiencia de codificación de información de vector de movimiento en la codificación de vídeo.
Descripción
Problema técnico
La presente invención provee un método de codificación de vídeo capaz de mejorar la eficiencia de codificación/decodificación de vídeo.
La presente invención también provee un método de decodificación de vídeo capaz de mejorar la eficiencia de codificación/decodificación de vídeo.
Solución técnica
La presente invención se define en las reivindicaciones independientes. Las realizaciones, excepto las relacionadas con las reivindicaciones, se refieren a ejemplos útiles para comprender la invención, pero no representan realizaciones de la presente invención reivindicada. Estos ejemplos se dan solo con fines ilustrativos.
En un aspecto, se provee un método de interpredicción. El método de interpredicción incluye: seleccionar unidades candidatas entre unidades vecinas reconstruidas; generar un conjunto de unidades candidatas para una unidad objetivo de decodificación usando las unidades candidatas seleccionadas; determinar una unidad de referencia entre las unidades candidatas y configurar el conjunto de unidades candidatas generado; y llevar a cabo una interpredicción en la unidad objetivo de decodificación usando la unidad de referencia determinada, en donde las unidades vecinas reconstruidas incluyen una unidad vecina superior adyacente a una porción superior de la unidad objetivo de decodificación, una unidad vecina izquierda adyacente a la izquierda de la unidad objetivo de decodificación, una unidad de esquina superior derecha situada en una esquina superior derecha de la unidad objetivo de decodificación, una unidad de esquina superior izquierda situada en una esquina superior izquierda de la unidad objetivo de decodificación, y una unidad de esquina inferior izquierda situada en una esquina inferior izquierda de la unidad objetivo de decodificación.
En la selección de las unidades candidatas, se pueden seleccionar como unidades candidatas la unidad vecina superior, la unidad vecina izquierda, la unidad de la esquina superior derecha, la unidad de la esquina superior izquierda y la unidad de la esquina inferior izquierda.
En la selección de las unidades candidatas, la unidad vecina superior y la unidad vecina izquierda pueden seleccionarse como las unidades candidatas.
En la selección de las unidades candidatas, se pueden seleccionar como las unidades candidatas unidades cuyas longitudes de límites adyacentes a la unidad objetivo de decodificación son un valor umbral predeterminado o más entre las unidades vecinas reconstruidas.
En la selección de las unidades candidatas, se pueden seleccionar como las unidades candidatas unidades que tengan un tamaño de un valor umbral predeterminado o más entre las unidades vecinas reconstruidas.
En la selección de las unidades candidatas, se pueden seleccionar como las unidades candidatas unidades que tengan un valor de profundidad de un valor umbral predeterminado o menos entre las unidades vecinas reconstruidas.
En la selección de las unidades candidatas, las unidades candidatas pueden seleccionarse basándose en longitudes relativas entre límites en donde las unidades vecinas reconstruidas son adyacentes a la unidad objetivo de decodificación, tamaños relativos entre las unidades vecinas reconstruidas o valores de profundidad relativos entre las unidades vecinas reconstruidas.
En la selección de las unidades candidatas, las unidades candidatas pueden seleccionarse usando al menos uno de un parámetro de codificación de la unidad objetivo de decodificación y parámetros de codificación de las unidades vecinas reconstruidas, en donde cada uno de los parámetros de codificación de la unidad objetivo de decodificación y los parámetros de codificación de las unidades vecinas reconstruidas incluyen al menos uno de un vector de movimiento, una lista de imágenes de referencia, un índice de imágenes de referencia, una dirección de predicción y un predictor de vector de movimiento.
Un primer parámetro de codificación de la unidad objetivo de decodificación puede incluir una primera lista de imágenes de referencia y un primer índice de imágenes de referencia, y la selección de las unidades candidatas puede incluir la selección de unidades que tienen un segundo parámetro de codificación como las unidades candidatas, en donde el segundo parámetro de codificación incluye al menos uno de una segunda lista de imágenes de referencia que es la misma que la primera lista de imágenes de referencia y un segundo índice de imágenes de referencia que es el mismo que el primer índice de imágenes de referencia.
En la selección de las unidades candidatas, se pueden seleccionar como las unidades candidatas unidades que tengan la misma imagen de referencia que una imagen de referencia de la unidad objetivo de decodificación.
En la selección de las unidades candidatas, solo se pueden seleccionar como las unidades candidatas las unidades codificadas por la interpredicción.
En la generación del conjunto de unidades candidatas, el conjunto de unidades candidatas se puede generar usando tanto las unidades candidatas seleccionadas como las unidades co-ubicadas, en donde las unidades co-ubicadas son unidades ubicadas en la misma posición espacial que la de la unidad objetivo de decodificación entre unidades en un imagen de referencia para la unidad objetivo de decodificación.
En la selección de las unidades candidatas, se pueden seleccionar como las unidades candidatas unidades que tengan un número fijo predeterminado.
Las unidades que tienen el número fijo predeterminado pueden seleccionarse basándose en la igualdad entre un parámetro de codificación de la unidad objetivo de decodificación y los parámetros de codificación de las unidades vecinas reconstruidas, en donde cada uno de los parámetros de codificación de la unidad objetivo de decodificación y los parámetros de codificación de las unidades vecinas reconstruidas incluyen al menos uno de un vector de movimiento, una lista de imágenes de referencia, un índice de imágenes de referencia, una dirección de predicción y un predictor de vector de movimiento.
Las unidades que tienen el número fijo predeterminado pueden seleccionarse basándose en la igualdad entre una imagen de referencia de la unidad objetivo de decodificación y las imágenes de referencia de las unidades vecinas reconstruidas.
La selección de las unidades candidatas puede incluir: recibir un identificador de parámetro de codificación; decodificar el identificador del parámetro de codificación recibido; y seleccionar las unidades candidatas basándose en un valor de parámetro de codificación asignado al identificador de parámetro de codificación decodificado, en donde el valor de parámetro de codificación asignado al identificador de parámetro de codificación decodificado es al menos una de las longitudes de límites en donde las unidades vecinas reconstruidas son adyacentes a la unidad objetivo de decodificación, tamaños de las unidades vecinas reconstruidas y valores de profundidad entre las unidades vecinas reconstruidas.
La determinación de la unidad de referencia puede incluir: recibir un identificador de unidad de referencia; decodificar el identificador de unidad de referencia recibido; y determinar la unidad de referencia usando el identificador de unidad de referencia decodificado, en donde el identificador de unidad de referencia es un identificador que indica una unidad determinada como la unidad de referencia entre las unidades candidatas que configuran el conjunto de unidades candidatas.
Cuanto mayor sea la probabilidad de que la unidad indicada por el identificador de unidad de referencia se determine como la unidad de referencia, más corta puede ser la longitud de una palabra de código asignada al identificador de unidad de referencia.
La generación del conjunto de unidades candidatas puede incluir: disponer las unidades candidatas según una secuencia en donde las probabilidades de que las unidades candidatas se determinen como la unidad de referencia son altas, y en la determinación de la unidad de referencia, una primera unidad entre las unidades candidatas dispuestas pueden determinarse como la unidad de referencia.
En la generación del conjunto de unidades candidatas, solo una unidad que tenga la mayor probabilidad de ser determinada como la unidad de referencia entre las unidades candidatas puede incluirse en el conjunto de unidades candidatas, y en la determinación de la unidad de referencia, la unidad única incluida en el conjunto de unidades candidatas puede determinarse como la unidad de referencia.
Efectos ventajosos
Con el método de codificación de vídeo según la realización a modo de ejemplo de la presente invención, se puede mejorar la eficiencia de codificación/decodificación de vídeo.
Con el método de decodificación de vídeo según la realización a modo de ejemplo de la presente invención, se puede mejorar la eficiencia de codificación/decodificación de vídeo.
Con el método de interpredicción según la realización a modo de ejemplo de la presente invención, se puede mejorar la eficiencia de codificación/decodificación de vídeo.
Con el método para determinar una unidad de referencia según la realización a modo de ejemplo de la presente invención, se puede mejorar la eficiencia de codificación/decodificación de vídeo.
Descripción de los dibujos
La Figura 1 es un diagrama de bloques que muestra una configuración de un aparato de codificación de vídeo según una realización a modo de ejemplo de la presente invención.
La Figura 2 es un diagrama de bloques que muestra una configuración de un aparato de decodificación de vídeo según una realización a modo de ejemplo de la presente invención.
La Figura 3 es un diagrama conceptual que muestra esquemáticamente un ejemplo en donde una única unidad se divide en múltiples subunidades.
La Figura 4 es un diagrama de flujo que muestra esquemáticamente un ejemplo de un método para determinar una unidad de referencia en un codificador.
La Figura 5 es un diagrama conceptual que muestra esquemáticamente un ejemplo de un método para generar un conjunto de unidades candidatas.
La Figura 6 es un diagrama conceptual que muestra esquemáticamente otro ejemplo de un método para generar un conjunto de unidades candidatas.
La Figura 7 es un diagrama conceptual que muestra esquemáticamente incluso otro ejemplo de un método para generar un conjunto de unidades candidatas.
La Figura 8 es un diagrama conceptual que muestra esquemáticamente incluso otro ejemplo de un método para generar un conjunto de unidades candidatas.
La Figura 9 es un diagrama conceptual que muestra esquemáticamente incluso otro ejemplo de un método para generar un conjunto de unidades candidatas.
La Figura 10 es un diagrama conceptual que muestra esquemáticamente un ejemplo de un método para determinar una secuencia en donde se incluyen unidades candidatas en un conjunto de unidades candidatas.
La Figura 11 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un codificador según una realización a modo de ejemplo de la presente invención.
La Figura 12 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un codificador según otra realización a modo de ejemplo de la presente invención.
La Figura 13 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un codificador según incluso otra realización a modo de ejemplo de la presente invención.
La Figura 14 es un diagrama de flujo que muestra esquemáticamente un ejemplo de un método para determinar una unidad de referencia en un decodificador.
La Figura 15 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un decodificador según una realización a modo de ejemplo de la presente invención.
La Figura 16 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un decodificador según otra realización a modo de ejemplo de la presente invención.
La Figura 17 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un decodificador según incluso otra realización a modo de ejemplo de la presente invención.
Modo de invención
A continuación, se describirán en detalle realizaciones a modo de ejemplo de la presente invención con referencia a los dibujos anexos. Al describir realizaciones a modo de ejemplo de la presente invención, no se describirán en detalle funciones o construcciones conocidas ya que pueden oscurecer innecesariamente la comprensión de la presente invención.
Se entenderá que cuando en la presente descripción se hace referencia a un elemento simplemente como "conectado a" o "acoplado a" otro elemento sin estar "directamente conectado a" o "acoplado directamente a" otro elemento, puede estar "directamente conectado a" o "directamente acoplado a" otro elemento o conectado a o acoplado a otro elemento, teniendo el otro elemento interpuesto entre ellos. Además, en la presente invención, "que comprende" una configuración específica se entenderá que también se puede incluir una configuración adicional en las realizaciones o en el alcance de la idea técnica de la presente invención.
Los términos utilizados en la memoria descriptiva, "primero", "segundo", etc., pueden usarse para describir varios componentes, pero los componentes no deben interpretarse como limitados a los términos. Los términos solo se utilizan para diferenciar un componente de otros componentes. Por ejemplo, el "primer" componente puede denominarse "segundo" componente y el "segundo" componente también puede denominarse de manera similar "primer" componente, sin apartarse del alcance de la presente invención.
Además, las partes constitucionales mostradas en las realizaciones de la presente invención se muestran de forma independiente para representar diferentes funciones características. Así, no significa que cada parte constitucional esté constituida en una unidad constitucional de hardware o software separada. En otras palabras, cada parte constitucional incluye cada una de las partes constitucionales enumeradas para facilitar la explicación. Así, al menos dos partes constitucionales de cada parte constitucional pueden combinarse para formar una parte constitucional o una parte constitucional puede dividirse en múltiples partes constitucionales para llevar a cabo cada función. La realización en donde se combina cada parte constitucional y la realización en donde se divide una parte constitucional también están incluidas en el alcance de la presente invención, si no se apartan de la esencia de la presente invención.
Además, algunos de los constituyentes pueden no ser constituyentes indispensables que lleven a cabo funciones esenciales de la presente invención, sino que sean constituyentes selectivos que mejoren únicamente el desempeño de la misma. La presente invención puede implementarse incluyendo solo las partes constitucionales indispensables para implementar la esencia de la presente invención, excepto los constituyentes utilizados para mejorar el rendimiento. La estructura que incluye solo los constituyentes indispensables, excepto los constituyentes selectivos utilizados solo para mejorar el rendimiento, también está incluida en el alcance de la presente invención.
La Figura 1 es un diagrama de bloques que muestra una configuración de un aparato de codificación de vídeo según una realización a modo de ejemplo de la presente invención.
Con referencia a la Figura 1, un aparato 100 de codificación de vídeo incluye un estimador 111 de movimiento, un compensador 112 de movimiento, un intrapredictor 120, un interruptor 115, un restador 125, un transformador 130, un cuantificador 140, un codificador 150 de entropía, un descuantificador 160, un transformador 170 inverso, un sumador 175, una unidad 180 de filtro y un búfer 190 de imágenes de referencia.
El aparato 100 de codificación de vídeo puede llevar a cabo la codificación de imágenes de entrada en un intramodo o intermodo y flujos de bits de salida. La intrapredicción significa predicción dentro de la imagen y la interpredicción significa predicción entre imágenes. En el caso del intramodo, el interruptor 115 se puede cambiar a intra y en el caso del intermodo, el interruptor 115 se puede cambiar a inter. El aparato 100 de codificación de vídeo puede generar un bloque de predicción para un bloque de entrada de las imágenes de entrada y luego codificar un residual entre el bloque de entrada y el bloque de predicción.
En el caso del intramodo, el intrapredictor 120 puede llevar a cabo la predicción espacial usando valores de píxeles de bloques codificados de antemano alrededor de un bloque actual para generar el bloque de predicción.
En el caso del intermodo, el estimador 111 de movimiento puede buscar una región que coincida óptimamente con el bloque de entrada en una imagen de referencia almacenada en el búfer 190 de imágenes de referencia durante un proceso de predicción de movimiento para obtener un vector de movimiento. El compensador 112 de movimiento puede llevar a cabo una compensación de movimiento usando el vector de movimiento para generar el bloque de predicción. Aquí, el vector de movimiento puede ser un vector bidimensional usado para la interpredicción y representar un desplazamiento entre una imagen objetivo de codificación/decodificación actual y la imagen de referencia.
El restador 125 puede generar un bloque residual mediante el residual entre el bloque de entrada y el bloque de predicción generado. El transformador 130 puede llevar a cabo una transformación en el bloque residual para generar coeficientes de transformada. Además, el cuantificador 140 puede cuantificar el coeficiente de transformada de entrada según parámetros de cuantificación para generar un coeficiente cuantificado.
El codificador 150 de entropía puede llevar a cabo la codificación de entropía basándose en valores calculados en el cuantificador 140 o valores de parámetros de codificación, o similares, calculados durante el proceso de codificación para generar flujos de bits.
Cuando se aplica la codificación de entropía, los símbolos se representan asignando un pequeño número de bits a símbolos que tienen una alta probabilidad de generación y asignando un gran número de bits a símbolos que tienen una baja probabilidad de generación, haciendo así posible reducir el tamaño de los flujos de bits para los símbolos objetivo de codificación. Por lo tanto, el rendimiento de compresión de la codificación de vídeo se puede mejorar mediante la codificación de entropía. El codificador 150 de entropía puede usar un método de codificación como, por ejemplo, Golomb exponencial, codificación adaptativa de longitud variable basada en el contexto (CAVLC, por sus siglas en inglés), codificación aritmética binaria adaptativa al contexto (CABAC, por sus siglas en inglés), o similares, para la codificación de entropía.
Dado que el aparato de codificación de vídeo según la realización a modo de ejemplo de la Figura 1 lleva a cabo la codificación interpredicción, es decir, codificación de predicción entre imágenes, una imagen codificada actual debe decodificarse y almacenarse para poder usarse como imagen de referencia. Por lo tanto, el coeficiente cuantificado se descuantifica en el descuantificador 160 y se transforma inversamente en el transformador 170 inverso. El coeficiente descuantificado y transformado inversamente se suma al bloque de predicción a través del sumador 175, de modo que se genera un bloque reconstruido.
El bloque reconstruido pasa a través de la unidad 180 de filtro y la unidad 180 de filtro puede aplicar al menos uno de un filtro de desbloqueo, un desplazamiento adaptativo de muestra (SAO, por sus siglas en inglés) y un filtro de bucle adaptativo (ALF, por sus siglas en inglés) a un bloque reconstruido o una imagen reconstruida. La unidad 180 de filtro también puede denominarse filtro en bucle adaptativo. El filtro de desbloqueo puede eliminar la distorsión de bloque generada en un límite entre bloques. El SAO puede agregar un valor de desplazamiento apropiado a un valor de píxel para compensar un error de codificación. El ALF puede llevar a cabo el filtrado basándose en un valor de comparación entre la imagen reconstruida y la imagen original. El bloque reconstruido que pasa a través de la unidad 180 de filtro puede almacenarse en el búfer 190 de imágenes de referencia.
La Figura 2 es un diagrama de bloques que muestra una configuración de un aparato de decodificación de vídeo según una realización a modo de ejemplo de la presente invención.
Con referencia a la Figura 2, un aparato 200 de decodificación de vídeo incluye un decodificador 210 de entropía, un descuantificador 220, un transformador 230 inverso, un intrapredictor 240, un compensador 250 de movimiento, un sumador 255, una unidad 260 de filtro y un búfer 270 de imágenes de referencia.
El aparato 200 de decodificación de vídeo puede recibir los flujos de bits emitidos desde el codificador para llevar a cabo la decodificación en el intramodo o intermodo y emitir la imagen reconstruida, es decir, la imagen reconstruida. En el caso del intramodo, el interruptor se puede cambiar al intra y en el caso del intermodo, el interruptor se puede cambiar al inter. El aparato 200 de decodificación de video puede obtener un bloque residual de los flujos de bits recibidos, generar el bloque de predicción y luego agregar el bloque residual al bloque de predicción para generar el bloque reconstruido, es decir, el bloque reconstruido.
El decodificador 210 de entropía puede decodificar por entropía los flujos de bits de entrada según la distribución de probabilidad para generar símbolos que incluyen un tipo de símbolos de coeficiente cuantificado. El método de decodificación de entropía es similar al método de codificación de entropía descrito más arriba.
Cuando se aplica el método de decodificación por entropía, los símbolos se representan asignando un pequeño número de bits a símbolos que tienen una alta probabilidad de generación y asignando un gran número de bits a símbolos que tienen una baja probabilidad de generación, haciendo así posible reducir el tamaño de los flujos de bits para cada símbolo. Por lo tanto, el rendimiento de compresión de la decodificación de vídeo se puede mejorar mediante el método de decodificación de entropía.
Los coeficientes cuantificados se pueden descuantificar en el descuantificador 220 y transformarse inversamente en el transformador 230 inverso. Los coeficientes cuantificados se descuantifican/transforman inversamente, de modo que se pueda generar el bloque residual.
En el caso del intramodo, el intrapredictor 240 puede llevar a cabo la predicción espacial usando valores de píxeles de bloques codificados de antemano alrededor de un bloque actual para generar el bloque de predicción. En el caso del intermodo, el compensador 250 de movimiento puede llevar a cabo la compensación de movimiento usando el vector de movimiento y la imagen de referencia almacenada en el búfer 270 de imágenes de referencia para generar el bloque de predicción.
El bloque residual y el bloque de predicción se pueden agregar entre sí a través del sumador 255 y el bloque agregado puede pasar a través de la unidad 260 de filtro. La unidad 260 de filtro puede aplicar al menos uno del filtro de desbloqueo, el SAO y el ALF al bloque reconstruido o a la imagen reconstruida. La unidad 260 de filtro puede generar las imágenes reconstruidas, es decir, la imagen reconstruida. La imagen reconstruida puede almacenarse en el búfer 270 de imágenes de referencia para usarse de ese modo para la interpredicción.
De aquí en adelante, una unidad significa una unidad de codificación y decodificación de imágenes. En el momento de la codificación y decodificación de imágenes, la unidad de codificación o decodificación significa la unidad dividida cuando las imágenes se dividen y codifican o decodifican. Por lo tanto, la unidad de codificación o decodificación puede denominarse bloque, unidad de codificación (CU, por sus siglas en inglés), bloque de codificación, unidad de predicción (PU, por sus siglas en inglés), bloque de predicción, unidad de transformada (TU, por sus siglas en inglés), bloque de transformada o similares. Una sola unidad puede subdividirse en una unidad inferior que tenga un tamaño más pequeño.
En este caso, la unidad de predicción significa una unidad básica que se convierte en una unidad de rendimiento de predicción y/o compensación de movimiento. La unidad de predicción puede dividirse en múltiples particiones, y cada una de las particiones también puede denominarse partición de unidad de predicción. Cuando la unidad de predicción se divide en las múltiples particiones, cada una de las múltiples particiones puede ser una unidad básica que se convierte en la unidad de rendimiento de la predicción y/o la compensación de movimiento. De aquí en adelante, en la realización a modo de ejemplo de la presente invención, cada una de las particiones divididas de la unidad de predicción también puede denominarse unidad de predicción.
Mientras tanto, como se describe más arriba, en el intermodo, el codificador y el decodificador pueden llevar a cabo la predicción y/o la compensación de movimiento en la unidad objetivo de codificación/decodificación. Aquí, la unidad objetivo de codificación/decodificación significa la unidad de predicción y/o las particiones de la unidad de predicción. En este caso, el codificador y el decodificador pueden mejorar la eficiencia de codificación/decodificación utilizando un vector de movimiento de unidades vecinas reconstruidas. Aquí, las unidades vecinas reconstruidas, que son unidades previamente codificadas o decodificadas para ser reconstruidas de ese modo, pueden incluir una unidad adyacente a la unidad objetivo de codificación/decodificación, una unidad situada en una esquina superior derecha de la unidad objetivo de codificación/decodificación, una unidad situada en una esquina superior izquierda de la unidad objetivo de codificación/decodificación, y/o una unidad situada en una esquina inferior izquierda de la unidad objetivo de codificación/decodificación.
Como ejemplo, el codificador y el decodificador pueden usar los vectores de movimiento de las unidades vecinas reconstruidas como el vector de movimiento de la unidad objetivo de codificación/decodificación. Aquí, dado que los vectores de movimiento de las unidades vecinas reconstruidas se usan en la unidad objetivo de codificación/decodificación, el codificador puede no codificar el vector de movimiento de la unidad objetivo de codificación/decodificación. Por lo tanto, se puede reducir la cantidad de bits transmitidos al decodificador y se puede mejorar la eficiencia de codificación. Como este modo de interpredicción, hay un modo de salto, un modo directo y similares.
Aquí, el codificador puede usar un identificador y/o un índice que indica un vector de movimiento de cuál de las unidades vecinas reconstruidas se usa. El modo de interpredicción en donde se utiliza el identificador y/o el índice puede denominarse modo de fusión.
Como otro ejemplo, cuando el codificador lleva a cabo la predicción y/o la compensación usando el vector de movimiento de la unidad objetivo de codificación y luego codifica el vector de movimiento de la unidad objetivo de codificación, puede generar un residual entre el vector de movimiento de la unidad objetivo de codificación y los vectores de movimiento de las unidades vecinas reconstruidas. El codificador puede codificar el residual del vector de movimiento generado y transmitir el residual del vector de movimiento codificado al decodificador. En este caso, el decodificador puede decodificar el residual del vector de movimiento y derivar el vector de movimiento de la unidad objetivo de decodificación sumando el residual del vector de movimiento decodificado y los vectores de movimiento de las unidades vecinas reconstruidas. Este método de interpredicción puede denominarse predicción de vector de movimiento (MVP, por sus siglas en inglés). Se utiliza la MVP, de manera que se puede reducir la cantidad de información transmitida del codificador al decodificador y se puede mejorar la eficiencia de codificación.
Aquí, el codificador puede usar un identificador y/o un índice que indica un vector de movimiento de cuál de las unidades vecinas reconstruidas se usa. La MVP en donde se utilizan adicionalmente el identificador y/o el índice también puede denominarse predicción avanzada de vectores de movimiento (AMVP, por sus siglas en inglés).
En el caso del modo de salto, el modo directo, el modo de fusión, la MVP, la AMVP o similares, descritos más arriba, se puede determinar una unidad de referencia entre las unidades vecinas reconstruidas, y un vector de movimiento de la unidad de referencia determinada puede usarse para predicción y compensación de movimiento de una unidad objetivo de codificación/decodificación actual. De aquí en adelante, la unidad de referencia significa una unidad utilizada para la predicción y compensación de movimiento de la unidad objetivo de codificación/decodificación. El codificador y el decodificador pueden usar un parámetro de codificación de la unidad de referencia en el caso de llevar a cabo la interpredicción y/o la compensación de movimiento en la unidad objetivo de codificación/decodificación actual.
El parámetro de codificación puede incluir información que puede inferirse durante un proceso de codificación o decodificación, así como información que se codifica en el codificador y se transmite al decodificador, como, por ejemplo, un elemento de sintaxis, y significa información requerida cuando se codifica o decodifica la imagen. El parámetro de codificación puede incluir, por ejemplo, valores y/o estadísticas de un modo de interpredicción, información de movimiento, un patrón de bloques codificados (CBP, por sus siglas en inglés), un tamaño de bloque, información de división de bloques o similares.
Aquí, la información de movimiento significa un parámetro requerido para la interpredicción y la compensación de movimiento. La información de movimiento puede incluir al menos uno de una lista de imágenes de referencia, un índice de imágenes de referencia, un vector de movimiento, una dirección de predicción y un predictor de vector de movimiento. Aquí, la lista de imágenes de referencia es una lista que incluye múltiples imágenes de referencia utilizadas para la interpredicción, y el índice de imágenes de referencia es un índice que indica imágenes de referencia utilizadas para la interpredicción de la unidad objetivo de codificación/decodificación entre las imágenes de referencia incluidas en la lista de imágenes de referencia.
En el caso de la interpredicción, se pueden utilizar dos listas de imágenes de referencia. Una de las dos listas de imágenes de referencia puede denominarse lista de imágenes de referencia 0 y la otra puede denominarse lista de imágenes de referencia 1. La dirección de predicción incluida en la información de movimiento puede ser información que indique cuál de las listas de imágenes de referencia se utiliza en el momento de la interpredicción. Es decir, la dirección de predicción puede indicar si se usa la lista de imágenes de referencia 0, si se usa la lista de imágenes de referencia 1, o si se usan tanto la lista de imágenes de referencia 0 como la lista de imágenes de referencia 1. El predictor de vector de movimiento significa una unidad que se convierte en un candidato de predicción cuando el codificador y el decodificador predicen el vector de movimiento y/o un vector de movimiento de la unidad que se convierte en el candidato de predicción.
La información de división de bloques puede incluir información sobre la profundidad de una unidad. La información de profundidad puede indicar el número y/o el grado de divisiones de unidades.
La Figura 3 es un diagrama conceptual que muestra esquemáticamente un ejemplo en donde una única unidad se divide en múltiples subunidades.
Una sola unidad se puede dividir jerárquicamente utilizando información de profundidad basada en una estructura de árbol. Las respectivas subunidades divididas pueden tener información de profundidad. Dado que la información de profundidad indica el número y/o el grado de divisiones de la unidad, puede incluir información sobre el tamaño de la subunidad.
Con referencia a 310 de la Figura 3, un nodo superior puede denominarse nodo raíz y tener un valor de profundidad más pequeño. Aquí, el nodo superior puede tener una profundidad de nivel 0 e indicar una unidad inicial que no está dividida.
Un nodo inferior que tiene una profundidad de nivel 1 puede indicar una unidad dividida una vez de la unidad inicial, y un nodo inferior que tiene una profundidad de nivel 2 puede indicar una unidad dividida dos veces de la unidad inicial. Por ejemplo, en 320 de la Figura 3, una unidad a correspondiente a un nodo a puede ser una unidad dividida una vez de la unidad inicial y tener una profundidad de nivel 1.
Un nodo hoja de nivel 3 puede indicar una unidad dividida tres veces desde la unidad inicial. Por ejemplo, en 320 de la Figura 3, una unidad d correspondiente a un nodo d puede ser una unidad dividida tres veces de la unidad inicial y tener una profundidad de nivel 3. El nodo hoja de nivel 3, que es un nodo más inferior, puede tener una profundidad más profunda.
Como se describe más arriba, en el caso en donde el codificador y el decodificador llevan a cabo la interpredicción y/o la compensación de movimiento usando el modo de salto, el modo directo, el modo de fusión, la MVP, la AMVP o similares, pueden determinar la unidad de referencia entre las unidades vecinas reconstruidas y utilizar un vector de movimiento de la unidad de referencia determinada. Las unidades vecinas reconstruidas adyacentes a la unidad objetivo de codificación/decodificación pueden tener características diferentes. Por ejemplo, las características pueden representarse mediante un parámetro de codificación de cada una de las unidades vecinas reconstruidas. Por lo tanto, en el caso en donde el codificador y el decodificador determinan la unidad de referencia y llevan a cabo la codificación/decodificación, necesitan utilizar eficientemente el parámetro de codificación de la imagen. Además, una única imagen puede incluir unidades que tengan varios tamaños y unidades que tengan varias profundidades. Por lo tanto, para mejorar el rendimiento de la codificación/decodificación, se puede proveer un método para determinar una unidad de referencia teniendo en cuenta una variedad de tamaños y/o profundidades de unidades.
La Figura 4 es un diagrama de flujo que muestra esquemáticamente un ejemplo de un método para determinar una unidad de referencia en un codificador.
Con referencia a la Figura 4, el codificador puede generar un conjunto de unidades candidatas usando unidades vecinas reconstruidas (E410). En este caso, el conjunto de unidades candidatas significa un conjunto de candidatas de unidades de referencia. Una unidad de referencia utilizada para predicción y/o compensación de movimiento de una unidad objetivo de codificación actual puede determinarse entre las candidatas a unidad de referencia. En adelante, la unidad candidata puede tener el mismo significado que el de la unidad candidata de referencia.
El codificador puede seleccionar unidades candidatas entre las unidades vecinas reconstruidas mediante un estándar y/o método predeterminado. Aquí, el codificador puede usar un parámetro de codificación de la unidad objetivo de codificación y parámetros de codificación de las unidades vecinas reconstruidas para reflejar las características de una imagen. El codificador puede generar el conjunto de unidades candidatas permitiendo que las unidades candidatas seleccionadas se incluyan y/o inserten en el conjunto de unidades candidatas. A continuación, se describirán ejemplos específicos de un método para generar un conjunto de unidades candidatas.
De nuevo con referencia a la Figura 4, el codificador puede determinar una unidad de referencia utilizada para predicción y/o compensación de movimiento de la unidad objetivo de codificación actual entre las unidades candidatas incluidas en el conjunto de unidades candidatas generado (E420).
Una vez determinada la unidad de referencia, el codificador puede llevar a cabo la interpredicción en la unidad objetivo de codificación utilizando la unidad de referencia determinada. En este caso, el codificador puede utilizar un método como, por ejemplo, el modo de salto, el modo directo, el modo de fusión, la MVP, la AMVP o similares, al llevar a cabo la interpredicción y/o la compensación de movimiento. A continuación, se describirán ejemplos específicos de un método para determinar una unidad de referencia.
Una vez determinada la unidad de referencia, el codificador puede codificar información de identificación de unidad de referencia para transmitir la información de identificación de unidad de referencia codificada al decodificador (E430). Como información de identificación de unidad de referencia, hay un identificador de parámetro de codificación, un identificador de unidad de referencia y similares. A continuación, se describirá un ejemplo específico de un método para codificar información de identificación de unidad de referencia.
La Figura 5 es un diagrama conceptual que muestra esquemáticamente un ejemplo de un método para generar un conjunto de unidades candidatas.
El codificador puede seleccionar unidades adyacentes a una unidad objetivo de codificación y unidades situadas en las esquinas de la unidad objetivo de codificación entre unidades vecinas reconstruidas como unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en un conjunto de unidades candidatas. Una unidad objetivo de codificación en donde se llevan a cabo la interpredicción y/o compensación de movimiento puede ser una unidad de predicción.
De aquí en adelante, una unidad adyacente a una porción superior de la unidad objetivo de codificación se denominará unidad vecina superior, y una unidad adyacente a la izquierda de la unidad objetivo de codificación se denominará unidad vecina izquierda. Además, una unidad situada en una esquina superior derecha de la unidad objetivo de codificación se denominará unidad de esquina superior derecha, una unidad situada en una esquina superior izquierda de la unidad objetivo de codificación se denominará unidad de esquina superior izquierda y una unidad situada en una esquina inferior izquierda de la unidad objetivo de codificación se denominará unidad de esquina inferior izquierda.
Con referencia a 510 de la Figura 5, el codificador puede seleccionar una unidad vecina izquierda A, una unidad vecina superior B, una unidad de esquina superior derecha C, una unidad de esquina superior izquierda D y una unidad de esquina inferior izquierda E como unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, a modo de ejemplo, el conjunto de unidades candidatas generado puede ser {A, B, C, D, E}.
Con referencia a 520 de la Figura 5, el codificador puede seleccionar unidades vecinas izquierdas A, B y C, unidades vecinas superiores D, E y F, una unidad de esquina superior derecha G, una unidad de esquina superior izquierda H y una unidad de esquina inferior izquierda M como unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, a modo de ejemplo, el conjunto de unidades candidatas generado puede ser {H, D, E, F, G, A, B, C, M}.
En el ejemplo descrito más arriba, el codificador también puede seleccionar solo una unidad específica entre las unidades vecinas de la izquierda como unidad candidata. Por ejemplo, el codificador puede seleccionar solo una unidad situada en una porción más inferior entre las unidades vecinas izquierdas como unidad candidata. Además, el codificador también puede seleccionar solo una unidad específica entre las unidades vecinas superiores como unidad candidata. Por ejemplo, el codificador puede seleccionar solo una unidad situada en la porción más a la derecha entre las unidades vecinas superiores como unidad candidata. En este caso, en 520 de la Figura 5, el conjunto de unidades candidatas generado puede ser {H, F, G, C, M}.
La Figura 6 es un diagrama conceptual que muestra esquemáticamente otro ejemplo de un método para generar un conjunto de unidades candidatas.
El codificador puede seleccionar unidades adyacentes a la izquierda de una unidad objetivo de codificación y unidades adyacentes a una porción superior de la unidad objetivo de codificación entre unidades vecinas reconstruidas como unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en un conjunto de unidades candidatas.
Con referencia a 610 de la Figura 6, el codificador puede seleccionar una unidad vecina izquierda A y una unidad vecina superior B como unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, como ejemplo, el conjunto de unidades candidatas generado puede ser {A, B}.
Con referencia a 620 de la Figura 6, el codificador puede seleccionar las unidades vecinas izquierdas A, B y C y las unidades vecinas superiores D, E y F como unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, a modo de ejemplo, el conjunto de unidades candidatas generado puede ser {D, E, F, A, B, C}.
La Figura 7 es un diagrama conceptual que muestra esquemáticamente incluso otro ejemplo de un método para generar un conjunto de unidades candidatas. En el ejemplo de la Figura 7, se supone que el tamaño de una unidad objetivo de codificación X es 16x16, el tamaño de cada una de las unidades C, D, H y M es 8x8, y el tamaño de cada una de las unidades restantes es 4x4.
Como se describe más arriba con referencia a la Figura 6, el codificador puede seleccionar unidades adyacentes a la izquierda de una unidad objetivo de codificación y unidades adyacentes a una porción superior de la unidad objetivo de codificación entre unidades vecinas reconstruidas como unidades candidatas. En este caso, el codificador también puede seleccionar solo unidades cuyas longitudes de límites adyacentes a la unidad objetivo de codificación sean una longitud predeterminada o más entre las unidades vecinas izquierdas y las unidades vecinas superiores como unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Aquí, la longitud predeterminada puede ser un entero positivo. En lo sucesivo, un límite en donde la unidad objetivo de codificación y las unidades vecinas reconstruidas son adyacentes entre sí se denominará límite adyacente.
Con referencia a la Figura 7, el codificador puede seleccionar solo unidades cuyas longitudes de límites adyacentes a la unidad objetivo de codificación son 8 o más como unidades candidatas. Dado que cada una de las unidades C y D tiene un tamaño de 8x8 y una longitud de límite en donde la unidad objetivo de codificación y cada una de las unidades C y D son adyacentes entre sí es 8, las unidades C y D pueden seleccionarse como unidades candidatas incluidas en el conjunto de unidades candidatas. Por otro lado, dado que cada una de las unidades A, B, E y F tiene un tamaño de 4x4 y una longitud de un límite en donde la unidad objetivo de codificación y cada una de las unidades A, B, E y F son adyacentes entre sí es 4, las unidades A, B, E y F no pueden seleccionarse como unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, a modo de ejemplo, el conjunto de unidades candidatas generado puede ser {C, D}.
Como otro ejemplo, el codificador también puede seleccionar las unidades candidatas incluidas en el conjunto de unidades candidatas basándose en las longitudes relativas de los límites adyacentes de las unidades vecinas izquierdas y los límites adyacentes de las unidades vecinas superiores. Es decir, el codificador puede seleccionar las unidades candidatas comparando entre sí longitudes de límites adyacentes de unidades adyacentes a la unidad objetivo de codificación.
Por ejemplo, en el caso en donde unidades que tienen una longitud de un límite adyacente de 4 y unidades que tienen una longitud de un límite adyacente de 8 están presentes entre las unidades vecinas reconstruidas, el codificador puede permitir solo las últimas unidades en donde una longitud de un límite adyacente es relativamente larga para ser incluidas en el conjunto de unidades candidatas. Como otro ejemplo, en el caso en donde unidades que tienen una longitud de un límite adyacente de 16 y unidades que tienen una longitud de un límite adyacente de 4 están presentes entre las unidades vecinas reconstruidas, el codificador puede permitir solo las últimas unidades en donde una longitud de un límite adyacente es relativamente corta para ser incluidas en el conjunto de unidades candidatas.
La Figura 8 es un diagrama conceptual que muestra esquemáticamente incluso otro ejemplo de un método para generar un conjunto de unidades candidatas. En el ejemplo de la Figura 8, se supone que el tamaño de una unidad objetivo de codificación X es 16x16, el tamaño de cada una de las unidades C, D, H y M es 8x8, y el tamaño de cada una de las unidades restantes es 4x4.
Como se describe más arriba con referencia a la Figura 5, el codificador puede seleccionar las unidades adyacentes a la unidad objetivo de codificación y las unidades situadas en la esquina de la unidad objetivo de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. En este caso, el codificador puede seleccionar solo unidades que tengan un tamaño de un tamaño predeterminado o más entre las unidades adyacentes a la unidad objetivo de codificación y las unidades situadas en la esquina de la unidad objetivo de codificación como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Aquí, el tamaño predeterminado puede ser m*n (donde m indica un entero positivo y n indica un entero positivo).
Con referencia a la Figura 8, el codificador puede seleccionar solo unidades que tengan un tamaño de 8x8 o más como unidades candidatas. Dado que cada una de las unidades C, D, H y M tiene un tamaño de 8x8, pueden seleccionarse como unidad candidata incluida en el conjunto de unidades candidatas. Por otro lado, dado que cada una de las unidades A, B, E, F y G tiene un tamaño de 4x4, no pueden seleccionarse como unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, a modo de ejemplo, el conjunto de unidades candidatas generado puede ser {C, D, H, M}.
Como otro ejemplo, el codificador también puede seleccionar las unidades candidatas incluidas en el conjunto de unidades candidatas basándose en los tamaños relativos de las unidades vecinas reconstruidas. Es decir, el codificador puede seleccionar las unidades candidatas comparando entre sí los tamaños de las unidades vecinas reconstruidas. Por ejemplo, en el caso en donde estén presentes unidades vecinas reconstruidas que tienen un tamaño de 8x8 y unidades vecinas reconstruidas que tienen un tamaño de 16x16, el codificador puede permitir que solo las últimas unidades que tienen un tamaño relativamente grande se incluyan en el conjunto de unidades candidatas.
La Figura 9 es un diagrama conceptual que muestra esquemáticamente incluso otro ejemplo de un método para generar un conjunto de unidades candidatas. En el ejemplo de la Figura 9, se supone que un valor de profundidad de una unidad objetivo de codificación X es 0, un valor de profundidad de cada una de las unidades C, D, H y M es 1, y un valor de profundidad de cada una de las unidades restantes es 2.
Como se describe más arriba con referencia a la Figura 5, el codificador puede seleccionar las unidades adyacentes a la unidad objetivo de codificación y las unidades situadas en la esquina de la unidad objetivo de codificación entre unidades vecinas reconstruidas como las unidades candidatas. En este caso, el codificador puede seleccionar solo unidades que tengan una profundidad de una profundidad predeterminada o menos entre las unidades adyacentes a la unidad objetivo de codificación y las unidades situadas en la esquina de la unidad objetivo de codificación como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Aquí, la profundidad predeterminada puede ser n (donde n indica un entero positivo).
Con referencia a la Figura 9, el codificador puede seleccionar solo unidades que tengan una profundidad de 1 o menos como las unidades candidatas. Dado que cada una de las unidades C, D, H y M tiene una profundidad de 1, pueden seleccionarse como la unidad candidata incluida en el conjunto de unidades candidatas. Por otro lado, dado que cada una de las unidades A, B, E, F y G tiene una profundidad de 2, no pueden seleccionarse como las unidades candidatas incluidas en el conjunto de unidades candidatas. En este caso, a modo de ejemplo, el conjunto de unidades candidatas generado puede ser {H, D, C, M}.
Como otro ejemplo, el codificador también puede seleccionar las unidades candidatas incluidas en el conjunto de unidades candidatas basándose en las profundidades relativas de las unidades vecinas reconstruidas. Es decir, el codificador puede seleccionar las unidades candidatas comparando entre sí las profundidades de las unidades vecinas reconstruidas. Por ejemplo, en el caso en donde estén presentes unidades vecinas reconstruidas que tienen una profundidad de 0 y unidades vecinas reconstruidas que tienen una profundidad de 2, el codificador puede permitir que solo las primeras unidades que tienen un valor de profundidad relativamente pequeño se incluyan en el conjunto de unidades candidatas.
Como otro ejemplo, el codificador puede seleccionar las unidades candidatas incluidas en el conjunto de unidades candidatas usando un parámetro de codificación de la unidad objetivo de codificación y/o parámetros de codificación de las unidades vecinas reconstruidas. Aquí, el codificador puede seleccionar la unidad candidata usando la relevancia del parámetro de codificación entre la unidad objetivo de codificación y las unidades vecinas reconstruidas y/o seleccionar la unidad candidata usando solo los parámetros de codificación de las unidades vecinas reconstruidas.
Según la presente invención, el codificador juzga si la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación son iguales entre sí o no, selecciona solo unidades que tengan la misma información de movimiento que la de la unidad objetivo de codificación entre las unidades vecinas reconstruidas como las unidades candidatas, y luego permite que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Por ejemplo, la información de movimiento puede ser al menos uno de un vector de movimiento, una lista de imágenes de referencia, un índice de imágenes de referencia, una dirección de predicción y un predictor de vector de movimiento.
Según la presente invención, el codificador también juzga si la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación son similares entre sí o no, selecciona solo unidades que tengan la información de movimiento similar a la de la unidad objetivo de codificación entre las unidades vecinas reconstruidas como las unidades candidatas, y luego permite que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Por ejemplo, la información de movimiento puede ser al menos uno de un vector de movimiento, una lista de imágenes de referencia, un índice de imágenes de referencia, una dirección de predicción y un predictor de vector de movimiento. En el caso en donde la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación satisfacen un estándar predeterminado incluso aunque no sean completamente iguales entre sí, se puede juzgar que son similares entre sí.
Ejemplos de un caso en donde la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación son similares entre sí son los siguientes. Por ejemplo, en el caso en donde una diferencia de tamaño para cada componente entre el vector de movimiento de las unidades vecinas reconstruidas y el vector de movimiento de la unidad objetivo de codificación es menor que un tamaño predeterminado en una unidad de píxeles entera se puede juzgar que la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación son similares entre sí. Aquí, el tamaño predeterminado puede ser cualquier número natural y/o número real positivo, por ejemplo, 1.
Según la presente invención, en el caso en donde las unidades vecinas reconstruidas y la unidad objetivo de codificación tienen diferentes listas de imágenes de referencia pero usan la misma imagen de referencia, se considera que la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación son similares entre sí. Como incluso otro ejemplo, en el caso en donde las unidades vecinas reconstruidas y la unidad objetivo de codificación tienen diferentes índices de imagen de referencia, pero usan la misma imagen de referencia, se puede juzgar que la información de movimiento de las unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo de codificación son similares entre sí.
Además, por ejemplo, el codificador puede no seleccionar unidades codificadas por la intrapredicción entre las unidades vecinas reconstruidas como las unidades candidatas. En este caso, el codificador puede permitir que las unidades codificadas por la intrapredicción no se incluyan en el conjunto de unidades candidatas. Como ejemplo, el codificador puede seleccionar solo unidades codificadas por la interpredicción entre las unidades vecinas reconstruidas como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas.
El codificador puede juzgar si están presentes o no señales residuales para las unidades vecinas reconstruidas, seleccionar unidades para las cuales la señal residual no está presente entre las unidades vecinas reconstruidas como las unidades candidatas, y luego permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Aquí, si las señales residuales están presentes o no se puede determinar a través de valores de un patrón de bloque codificado (CBP) y/o una bandera de bloque codificado (CBF, por sus siglas en inglés), que son elementos de sintaxis para determinar si las señales residuales están presentes o no.
En los ejemplos del método para generar un conjunto de unidades candidatas descrito más arriba, el número de unidades candidatas incluidas en el conjunto de unidades candidatas puede limitarse a un número predeterminado (por ejemplo, N). Donde N puede indicar un entero positivo mayor que 0.
En el caso en donde el número de unidades candidatas incluidas en el conjunto de unidades candidatas está limitado a N, el codificador puede seleccionar solo N unidades entre las unidades vecinas reconstruidas como las unidades candidatas usando un estándar predeterminado. Aquí, como estándar predeterminado, puede haber grados adyacentes a la unidad objetivo de codificación, grados adyacentes a los límites de la unidad objetivo de codificación, longitudes relativas y/o longitudes absolutas de límites adyacentes a la unidad objetivo de codificación, tamaños relativos y/o tamaños absolutos de las unidades vecinas reconstruidas, valores de profundidad relativa y/o valores de profundidad absoluta de las unidades vecinas reconstruidas, una secuencia de codificación/decodificación de las unidades vecinas reconstruidas, la igualdad/similitud entre un parámetro de codificación de la unidad objetivo de codificación y los parámetros de codificación de las unidades vecinas reconstruidas, y similares. Los ejemplos del caso en donde los parámetros de codificación de las unidades vecinas reconstruidas son similares a los de la unidad objetivo de codificación se han descrito más arriba. Por ejemplo, en el caso en donde los parámetros de codificación de las unidades vecinas reconstruidas y el parámetro de codificación de la unidad objetivo de codificación usan la misma imagen de referencia, se puede juzgar que los parámetros de codificación de las unidades vecinas reconstruidas y el parámetro de codificación de la unidad objetivo de codificación son similares entre sí.
Por ejemplo, el número de unidades candidatas incluidas en el conjunto de unidades candidatas puede ser dos. En este caso, como ejemplo, el codificador puede seleccionar dos unidades según una secuencia en donde las longitudes de los límites adyacentes a la unidad objetivo de codificación son largas entre las unidades vecinas reconstruidas como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas.
Como otro ejemplo, el número de unidades candidatas incluidas en el conjunto de unidades candidatas puede ser tres. Además, por ejemplo, las unidades vecinas reconstruidas pueden tener la misma información de movimiento. En este caso, el codificador puede seleccionar tres unidades reconstruidas al final de una secuencia de codificación/decodificación entre las unidades vecinas reconstruidas que tienen la misma información de movimiento que las unidades candidatas y permitir que la unidad candidata seleccionada se incluya en el conjunto de unidades candidatas.
Mientras tanto, en los ejemplos del método para generar un conjunto de unidades candidatas descrito más arriba, las unidades candidatas incluidas en el conjunto de unidades candidatas pueden disponerse según una secuencia en donde las probabilidades de que se determinen como unidades de referencia para la unidad objetivo de codificación son altas. Es decir, el codificador puede permitir que unidades que tienen una alta probabilidad de determinarse como las unidades de referencia para la unidad objetivo de codificación se incluyan y/o inserten preferiblemente en el conjunto de unidades candidatas. En este caso, el codificador puede asignar un identificador de unidad de referencia que tiene una palabra de código más corta a la unidad candidata que tiene mayor probabilidad de ser determinada como la unidad de referencia, haciendo posible de este modo aumentar la eficiencia de la codificación.
La Figura 10 es un diagrama conceptual que muestra esquemáticamente un ejemplo de un método para determinar una secuencia en donde se incluyen unidades candidatas en un conjunto de unidades candidatas. En la Figura 10, se supone que una secuencia de codificación/decodificación de las unidades vecinas reconstruidas es H->D->K->L->E->F->N->O->G->P->I-> A->J->B->C->M.
Por ejemplo, el codificador puede seleccionar unidades adyacentes a la izquierda de una unidad objetivo de codificación y unidades adyacentes a una porción superior de la unidad objetivo de codificación entre unidades vecinas reconstruidas como unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en un conjunto de unidades candidatas. En este caso, el codificador puede permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas según la secuencia de codificación/decodificación.
Con referencia a la Figura 10, el codificador puede permitir que unidades candidatas que tienen una secuencia de codificación/descodificación temprana se incluyan preferiblemente en el conjunto de unidades candidatas. Dado que las unidades adyacentes a una unidad objetivo de codificación actual X pueden codificarse/descodificarse en una secuencia de D->E->F->A->B->C, el conjunto de unidades candidatas generado puede ser {D, E, F, A B, C}.
Como otro ejemplo, el codificador puede disponer las unidades candidatas incluidas en el conjunto de unidades candidatas según una secuencia en donde las longitudes de los límites adyacentes a la unidad objetivo de codificación son largas. Es decir, el codificador puede permitir que unidades candidatas cuyas longitudes de los límites adyacentes a la unidad objetivo de codificación son largas se incluyan preferiblemente en y/o se inserten en el conjunto de unidades candidatas.
Como otro ejemplo, el codificador puede disponer las unidades candidatas incluidas en el conjunto de unidades candidatas según una secuencia en donde los valores de profundidad son pequeños. Es decir, el codificador puede permitir que unidades candidatas en donde el valor de profundidad es pequeño se incluyan y/o inserten preferiblemente en el conjunto de unidades candidatas.
En los ejemplos del método para generar un conjunto de unidades candidatas descrito más arriba, el codificador puede seleccionar las unidades candidatas incluidas en el conjunto de unidades candidatas entre los bloques vecinos reconstruidos. En este caso, la unidad candidata seleccionada entre los bloques vecinos reconstruidos puede denominarse unidad candidata espacial.
El codificador también puede seleccionar unidades ubicadas en la misma posición espacial que la unidad objetivo de codificación entre unidades en la imagen de referencia, además de las unidades candidatas espaciales, como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. En lo sucesivo, para facilitar la explicación, la unidad situada en la misma posición espacial que la unidad objetivo de codificación entre las unidades en la imagen de referencia se denominará unidad co-ubicada y/o bloque co-ubicado. En este caso, la unidad candidata seleccionada entre las unidades en la imagen de referencia puede denominarse unidad candidata temporal.
Durante un proceso de generación de un conjunto de unidades candidatas descrito más arriba, el codificador puede usar identificadores de parámetros de codificación para las unidades vecinas reconstruidas. En este caso, las unidades candidatas incluidas en el conjunto de unidades candidatas pueden seleccionarse usando los identificadores de parámetros de codificación. Aquí, como parámetros de codificación de los cuales se usan identificadores de parámetros de codificación, puede haber, por ejemplo, longitudes de límites en donde la unidad objetivo de codificación y las unidades vecinas reconstruidas son adyacentes entre sí, tamaños de las unidades vecinas reconstruidas, valores de profundidad de las unidades vecinas reconstruidas, y similares.
Se puede asignar un valor predeterminado al identificador del parámetro de codificación. En este caso, como ejemplo, el codificador puede seleccionar unidades que tienen un parámetro de codificación que tiene el mismo valor que un valor asignado al identificador del parámetro de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. Como otro ejemplo, el codificador puede seleccionar unidades que tienen un parámetro de codificación que tiene un valor mayor que el valor asignado al identificador del parámetro de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. Como incluso otro ejemplo, el codificador también puede seleccionar unidades que tienen un parámetro de codificación que tiene un valor más pequeño que el valor asignado al identificador del parámetro de codificación como las unidades candidatas.
Por ejemplo, se supone que los identificadores de parámetros de codificación se utilizan para las longitudes de los límites en donde la unidad objetivo de codificación y las unidades vecinas reconstruidas son adyacentes entre sí. Aquí, el identificador del parámetro de codificación puede estar representado porlog2_unit_boundary_length.Como se describe más arriba, el codificador también puede seleccionar solo unidades cuyas longitudes de límites adyacentes a la unidad objetivo de codificación son mayores que una longitud predeterminada entre las unidades vecinas reconstruidas como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Aquí, cuando se supone que la longitud predeterminada es 8, se puede asignar un valor de 3 al identificador del parámetro de codificación log2_unit_boundary_length. En este caso, el codificador puede seleccionar solo unidades que tienen una longitud de límite adyacente mayor que un valor asignado al identificador del parámetro de codificación como las unidades candidatas y permitir que las unidades candidatas seleccionadas se incluyan en el conjunto de unidades candidatas. Además, el codificador puede codificar el identificador del parámetro de codificación al que se le asigna el valor de 3 y transmitir el identificador del parámetro de codificación codificado al decodificador.
Cuando se genera el conjunto de unidades candidatas, el codificador puede determinar una unidad de referencia utilizada para la predicción y/o compensación de movimiento de la unidad objetivo de codificación actual entre las unidades candidatas incluidas en el conjunto de unidades candidatas generado.
La Figura 11 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un codificador según una realización a modo de ejemplo de la presente invención.
El codificador puede determinar unidades candidatas que indican una eficiencia de codificación óptima según la distorsión de velocidad entre las unidades candidatas incluidas en el conjunto de unidades candidatas como las unidades de referencia. Además, como se describe más arriba, el codificador puede usar los parámetros de codificación (por ejemplo, la información de movimiento y similares) de las unidades candidatas incluidas en el conjunto de unidades candidatas para llevar a cabo la interpredicción y la compensación de movimiento. En este caso, el codificador puede determinar las unidades candidatas que indican la eficiencia de codificación óptima según la distorsión de velocidad como las unidades de referencia utilizando los parámetros de codificación. Aquí, un método para seleccionar un esquema de codificación óptimo según la velocidad y la distorsión puede denominarse optimización de la distorsión de velocidad (RDO, por sus siglas en inglés).
Cuando la unidad de referencia se determina en el esquema de optimización de la distorsión de velocidad, el codificador puede codificar un identificador de unidad de referencia que indica cuál de las unidades candidatas incluidas en el conjunto de unidades candidatas se determina como la unidad de referencia y transmitir el identificador de unidad de referencia codificado al decodificador. Como ejemplo, el identificador de unidad de referencia puede indicar una secuencia y/o una posición de la unidad candidata determinada como la unidad de referencia en el conjunto de unidades candidatas. Como otro ejemplo, el identificador de unidad de referencia puede indicar una diferencia de secuencia de codificación de la unidad objetivo de codificación a la unidad de referencia. Como incluso otro ejemplo, a cada una de las unidades candidatas en el conjunto de unidades candidatas se le pueden asignar índices de unidades de referencia, que pueden usarse como el identificador de unidades de referencia.
Con referencia a la Figura 11, el conjunto de unidades candidatas puede ser {A, B, C, D, E, F} como ejemplo. En este caso, a cada una de las unidades candidatas se le puede asignar el índice de unidades de referencia. Por ejemplo, a A se le puede asignar 0, a B se le puede asignar 1, a C se le puede asignar 2, a D se le puede asignar 3, a E se le puede asignar 4 y a F se le puede asignar 5.
El codificador puede codificar el índice de unidades de referencia y transmitir el índice de unidades de referencia codificado al decodificador, y el decodificador puede recibir y decodificar el índice de unidades de referencia codificado. En el caso en donde el codificador determina que la unidad B es la unidad de referencia, un valor del índice de unidad de referencia transmitido al decodificador puede ser 1. En este caso, el decodificador puede determinar que la unidad B es la unidad de referencia utilizando el valor del índice de unidades de referencia.
La Figura 12 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un codificador según otra realización a modo de ejemplo de la presente invención. En la Figura 12, se supone que una secuencia de codificación/decodificación de las unidades vecinas reconstruidas es H->D->K->L->E->F->N->O->G->P->I-> A->J->B->C->M.
Como se describe más arriba, durante el proceso de generación de un conjunto de unidades candidatas, el codificador puede disponer las unidades candidatas incluidas en el conjunto de unidades candidatas según una secuencia en donde las probabilidades de que las unidades candidatas se determinen como las unidades de referencia son altas. En este caso, el codificador puede determinar una primera unidad candidata entre las unidades candidatas incluidas en el conjunto de unidades candidatas como la unidad de referencia.
Con referencia a la Figura 12, el codificador puede seleccionar unidades adyacentes a la unidad objetivo de codificación como las unidades candidatas. En este caso, las unidades candidatas seleccionadas pueden ser A, B, C, D, E y F. El codificador puede disponer las unidades candidatas seleccionadas según la secuencia de codificación/decodificación. Por ejemplo, el codificador puede permitir que unidades codificadas al final de la secuencia de codificación se incluyan preferiblemente en el conjunto de unidades candidatas. En este caso, el conjunto de unidades candidatas puede ser {C, B, A, F, E, D}. El codificador puede determinar una primera unidad candidata C en el conjunto de unidades candidatas como la unidad de referencia. En este caso, se puede determinar como la unidad de referencia una unidad candidata que tiene una diferencia más pequeña en la secuencia de codificación con respecto a la unidad objetivo de codificación.
En el caso en donde la primera unidad candidata en el conjunto de unidades candidatas se determina como la unidad de referencia, el codificador y el decodificador pueden determinar la unidad de referencia sin un identificador de unidad de referencia separado. Por lo tanto, el codificador puede no codificar el identificador de unidad de referencia y puede no transmitir el identificador de unidad de referencia al decodificador.
La Figura 13 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un codificador según incluso otra realización a modo de ejemplo de la presente invención.
Con referencia a la Figura 13, el codificador puede seleccionar unidades adyacentes a la unidad objetivo de codificación como las unidades candidatas. En este caso, las unidades candidatas seleccionadas pueden ser A, D, E y F.
Mientras tanto, el número de unidades candidatas incluidas en el conjunto de unidades candidatas puede limitarse a un número predeterminado, que también puede ser 1. En este caso, el codificador puede seleccionar solo una unidad que tenga la mayor probabilidad de ser seleccionada como la unidad de referencia entre las unidades vecinas reconstruidas como la unidad candidata para generar el conjunto de unidades candidatas. Por ejemplo, el codificador puede seleccionar solo una unidad relativamente más grande (por ejemplo, la unidad A) como la unidad candidata comparando tamaños de las unidades vecinas reconstruidas entre sí. En este caso, el conjunto de unidades candidatas puede ser {A} y el número de unidades candidatas que configuran el conjunto de unidades candidatas puede ser 1.
En el caso en donde el número de unidades candidatas que configuran el conjunto de unidades candidatas es 1, el codificador y el decodificador pueden determinar una unidad candidata correspondiente como la unidad de referencia. En este caso, el codificador y el decodificador pueden determinar la unidad de referencia sin un identificador de unidad de referencia separado. Por lo tanto, el codificador puede no codificar el identificador de unidad de referencia y puede no transmitir el identificador de unidad de referencia al decodificador.
Como se describe más arriba con referencia a la Figura 4, cuando se determina la unidad de referencia, el codificador puede codificar la información de identificación de la unidad de referencia y transmitir la información de identificación de la unidad de referencia codificada al decodificador. La información de identificación de la unidad de referencia puede incluir al menos uno del identificador del parámetro de codificación y el identificador de la unidad de referencia.
El codificador puede utilizar los identificadores de parámetros de codificación para las unidades vecinas reconstruidas. En este caso, las unidades candidatas incluidas en el conjunto de unidades candidatas pueden seleccionarse usando los identificadores de parámetros de codificación.
Se puede asignar un valor predeterminado al identificador del parámetro de codificación. En este caso, como ejemplo, el codificador puede seleccionar unidades que tengan un parámetro de codificación que tenga el mismo valor que un valor asignado al identificador del parámetro de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. Como otro ejemplo, el codificador puede seleccionar unidades que tengan un parámetro de codificación que tenga un valor mayor que el valor asignado al identificador del parámetro de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. Como incluso otro ejemplo, el codificador también puede seleccionar unidades que tengan un parámetro de codificación que tenga un valor menor que el valor asignado al identificador del parámetro de codificación como las unidades candidatas.
El codificador puede codificar el identificador del parámetro de codificación. En este caso, el identificador del parámetro de codificación codificado puede transmitirse al decodificador.
Además, como se describe más arriba, el codificador puede usar los parámetros de codificación de las unidades candidatas incluidas en el conjunto de unidades candidatas para llevar a cabo la interpredicción y la compensación de movimiento. En este caso, el codificador puede determinar las unidades candidatas que indican la eficiencia de codificación óptima según la distorsión de velocidad como las unidades de referencia utilizando los parámetros de codificación.
Cuando la unidad de referencia se determina en el esquema de optimización de distorsión de velocidad, el codificador puede codificar un identificador de unidad de referencia que indica cuál de las unidades candidatas incluidas en el conjunto de unidades candidatas se determina como la unidad de referencia y transmitir el identificador de unidad de referencia codificado al decodificador. Como ejemplo, el identificador de unidad de referencia puede indicar una secuencia y/o una posición de la unidad candidata determinada como la unidad de referencia en el conjunto de unidades candidatas. Como otro ejemplo, el identificador de unidad de referencia puede indicar una diferencia de secuencia de codificación de la unidad objetivo de codificación a la unidad de referencia. Como incluso otro ejemplo, a cada una de las unidades candidatas en el conjunto de unidades candidatas se le pueden asignar índices de unidades de referencia, que pueden usarse como el identificador de unidades de referencia.
El decodificador puede recibir y decodificar el identificador de unidad de referencia codificado. El decodificador puede determinar la unidad de referencia utilizando el identificador de unidad de referencia decodificado.
En el caso en donde la primera unidad candidata en el conjunto de unidades candidatas se determina como la unidad de referencia y el número de unidades candidatas que configuran el conjunto de unidades candidatas es 1, el codificador y el decodificador pueden determinar la unidad de referencia sin un identificador de unidad de referencia separado. En este caso, el codificador también puede omitir la codificación del identificador de la unidad de referencia.
La Figura 14 es un diagrama de flujo que muestra esquemáticamente un ejemplo de un método para determinar una unidad de referencia en un decodificador.
Con referencia a la Figura 14, el decodificador puede recibir la información de identificación de la unidad de referencia del codificador y decodificar la información de identificación de la unidad de referencia recibida (E1410). La información de identificación de unidad de referencia transmitida desde el codificador puede incluir al menos uno del identificador de parámetro de codificación y el identificador de unidad de referencia.
El decodificador puede seleccionar las unidades candidatas incluidas en el conjunto de unidades candidatas usando el identificador del parámetro de codificación incluido en la información de identificación de la unidad de referencia. Se puede asignar un valor predeterminado al identificador del parámetro de codificación. En este caso, como ejemplo, el decodificador puede seleccionar unidades que tengan un parámetro de codificación que tenga el mismo valor que un valor asignado al identificador del parámetro de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. Como otro ejemplo, el decodificador puede seleccionar unidades que tengan un parámetro de codificación que tenga un valor mayor que el valor asignado al identificador del parámetro de codificación entre las unidades vecinas reconstruidas como las unidades candidatas. Como incluso otro ejemplo, el decodificador también puede seleccionar unidades que tengan un parámetro de codificación que tenga un valor menor que el valor asignado al identificador del parámetro de codificación como las unidades candidatas. Aquí, el valor asignado al identificador del parámetro de codificación puede ser el mismo valor que el del parámetro de codificación y/o el identificador del parámetro de codificación usado en el codificador.
El decodificador puede decodificar el identificador de unidad de referencia codificado en el codificador. Como se describe más arriba, el identificador de unidad de referencia puede indicar cuál de las unidades candidatas incluidas en el conjunto de unidades candidatas se determina como la unidad de referencia. Como ejemplo, el identificador de unidad de referencia puede indicar una secuencia y/o una posición de la unidad candidata determinada como la unidad de referencia en el conjunto de unidades candidatas. Como otro ejemplo, el identificador de unidad de referencia puede indicar una diferencia de secuencia de decodificación de una unidad objetivo de decodificación a la unidad de referencia. Como incluso otro ejemplo, a cada una de las unidades candidatas en el conjunto de unidades candidatas se le pueden asignar índices de unidades de referencia, que pueden usarse como el identificador de unidades de referencia. El decodificador puede utilizar el identificador de unidad de referencia decodificado para determinar la unidad de referencia en el conjunto de unidades candidatas.
En el caso en donde la primera unidad candidata en el conjunto de unidades candidatas se determina como la unidad de referencia y el número de unidades candidatas que configuran el conjunto de unidades candidatas es 1, el codificador y el decodificador pueden determinar la unidad de referencia sin un identificador de unidad de referencia separado. En este caso, dado que el codificador puede no transmitir el identificador de la unidad de referencia, el decodificador puede no decodificar el identificador de la unidad de referencia.
Con referencia a la Figura 14, el decodificador puede generar el conjunto de unidades candidatas usando las unidades vecinas reconstruidas (E1420).
El decodificador puede seleccionar unidades candidatas entre las unidades vecinas reconstruidas mediante un estándar y/o método predeterminado. Aquí, el decodificador puede usar un parámetro de codificación de la unidad objetivo de decodificación y parámetros de codificación de las unidades vecinas reconstruidas para reflejar las características de la imagen. El decodificador puede generar el conjunto de unidades candidatas permitiendo que las unidades candidatas seleccionadas se incluyan y/o inserten en el conjunto de unidades candidatas.
El decodificador puede generar el conjunto de unidades candidatas mediante el mismo proceso que el proceso en el codificador. Dado que el proceso de generación de un conjunto de unidades candidatas en el codificador se ha descrito más arriba, se omitirá una descripción detallada de un proceso de generación de un conjunto de unidades candidatas en el decodificador.
Cuando se genera el conjunto de unidades candidatas, el decodificador puede determinar una unidad de referencia utilizada para la predicción y/o compensación de movimiento de una unidad objetivo de decodificación actual entre las unidades candidatas incluidas en el conjunto de unidades candidatas generado (E1430).
El decodificador puede utilizar la información de identificación de la unidad de referencia decodificada durante un proceso de determinación de la unidad de referencia. Después de determinar la unidad de referencia, el decodificador puede llevar a cabo la interpredicción en la unidad objetivo de decodificación utilizando la unidad de referencia determinada. A continuación, se describirán ejemplos específicos de un método para determinar una unidad de referencia.
La Figura 15 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un decodificador según una realización a modo de ejemplo de la presente invención.
El decodificador puede determinar la unidad de referencia usada para la interpredicción y compensación de movimiento de la unidad objetivo de decodificación entre las unidades candidatas incluidas en el conjunto de unidades candidatas usando el identificador de unidad de referencia decodificado. Como ejemplo, el identificador de unidad de referencia puede indicar una secuencia y/o una posición de la unidad candidata determinada como la unidad de referencia en el conjunto de unidades candidatas. Como otro ejemplo, el identificador de unidad de referencia puede indicar una diferencia de secuencia de decodificación de una unidad objetivo de decodificación a la unidad de referencia. Como incluso otro ejemplo, a cada una de las unidades candidatas en el conjunto de unidades candidatas se le pueden asignar índices de unidades de referencia, que pueden usarse como el identificador de unidades de referencia.
Con referencia a la Figura 15, el conjunto de unidades candidatas puede ser {A, B, C, D, E, F} como ejemplo. En este caso, a cada una de las unidades candidatas se le puede asignar el índice de unidades de referencia. Por ejemplo, a A se le puede asignar 0, a B se le puede asignar 1, a C se le puede asignar 2, a D se le puede asignar 3, a E se le puede asignar 4 y a F se le puede asignar 5. En el caso en donde un valor del índice de unidad de referencia decodificado es 2, el decodificador puede determinar la unidad C como la unidad de referencia utilizando el valor del índice de unidad de referencia.
La Figura 16 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un decodificador según otra realización a modo de ejemplo de la presente invención. En la Figura 16, se supone que una secuencia de decodificación de las unidades vecinas reconstruidas es H->D->K->L->E->F->N->O->G->P->I->A- >J->B->C->M.
Durante el proceso de generación de un conjunto de unidades candidatas, el decodificador puede disponer las unidades candidatas incluidas en el conjunto de unidades candidatas según una secuencia en donde las probabilidades de que las unidades candidatas se determinen como la unidad de referencia son altas. En este caso, el decodificador puede determinar una primera unidad candidata entre las unidades candidatas incluidas en el conjunto de unidades candidatas como la unidad de referencia.
Con referencia a la Figura 16, el decodificador puede seleccionar unidades adyacentes a la unidad objetivo de decodificación como las unidades candidatas. En este caso, las unidades candidatas seleccionadas pueden ser A, B, C, D, E y F. El decodificador puede disponer las unidades candidatas seleccionadas según la secuencia de decodificación. Por ejemplo, el decodificador puede permitir que unidades decodificadas al final de la secuencia de decodificación se incluyan preferiblemente en el conjunto de unidades candidatas. En este caso, el conjunto de unidades candidatas puede ser {C, B, A, F, E, D}. El decodificador puede determinar una primera unidad candidata C en el conjunto de unidades candidatas como la unidad de referencia. En este caso, se puede determinar como la unidad de referencia una unidad candidata que tiene una diferencia más pequeña en la secuencia de decodificación con respecto a la unidad objetivo de decodificación.
En el caso en donde la primera unidad candidata en el conjunto de unidades candidatas se determina como la unidad de referencia, el codificador y el decodificador pueden determinar la unidad de referencia sin un identificador de unidad de referencia separado. En este caso, dado que el codificador puede no transmitir el identificador de la unidad de referencia al decodificador, el decodificador puede no decodificar el identificador de la unidad de referencia.
La Figura 17 es un diagrama conceptual que muestra esquemáticamente un método para determinar una unidad de referencia en un decodificador según incluso otra realización a modo de ejemplo de la presente invención.
Con referencia a la Figura 17, el decodificador puede seleccionar unidades adyacentes a la unidad objetivo de decodificación como las unidades candidatas. En este caso, las unidades candidatas seleccionadas pueden ser A, D, E y F.
Mientras tanto, el número de unidades candidatas incluidas en el conjunto de unidades candidatas puede limitarse a un número predeterminado, que también puede ser 1. En este caso, el decodificador puede seleccionar solo una unidad que tenga la mayor probabilidad de ser seleccionada como la unidad de referencia entre las unidades vecinas reconstruidas como la unidad candidata para generar el conjunto de unidades candidatas. Por ejemplo, el decodificador puede seleccionar solo una unidad relativamente más grande (por ejemplo, la unidad A) como la unidad candidata comparando tamaños de las unidades vecinas reconstruidas entre sí. En este caso, el conjunto de unidades candidatas puede ser {A} y el número de unidades candidatas que configuran el conjunto de unidades candidatas puede ser 1.
En el caso en donde el número de unidades candidatas que configuran el conjunto de unidades candidatas es 1, el codificador y el decodificador pueden determinar una unidad candidata correspondiente como la unidad de referencia. En este caso, el codificador y el decodificador pueden determinar la unidad de referencia sin un identificador de unidad de referencia separado. Por lo tanto, dado que el codificador puede no transmitir el identificador de la unidad de referencia al decodificador, el decodificador puede no decodificar el identificador de la unidad de referencia.
En las realizaciones a modo de ejemplo descritas más arriba, aunque los métodos se han descrito según un diagrama de flujo como una serie de etapas o bloques, la presente invención no se limita a una secuencia de etapas sino que cualquier etapa puede generarse en una secuencia diferente o simultáneamente a partir de o con otras etapas como se describe más arriba. Además, las personas con experiencia en la técnica podrán apreciar que las etapas que se muestran en un diagrama de flujo no son excluyentes y, por lo tanto, incluyen otras etapas o eliminan una o más etapas de un diagrama de flujo sin tener un efecto sobre el alcance de la presente invención.
Las realizaciones descritas más arriba incluyen ejemplos de diversos aspectos. Aunque no se describen todas las combinaciones posibles que muestran diversos aspectos, las personas con experiencia en la técnica podrán apreciar que se pueden llevar a cabo otras combinaciones.

Claims (2)

REIVINDICACIONES
1. Un método para decodificar una señal de vídeo que comprende:
juzgar si una unidad candidata entre unidades vecinas reconstruidas y una unidad objetivo tienen o no la misma lista de imágenes de referencia y utilizan la misma imagen de referencia;
seleccionar la unidad candidata entre unidades vecinas reconstruidas si la unidad candidata entre unidades vecinas reconstruidas y la unidad objetivo tienen la misma lista de imágenes de referencia y usan la misma imagen de referencia;
juzgar si una información de movimiento de la unidad candidata entre unidades vecinas reconstruidas y una información de movimiento de la unidad objetivo son similares entre sí o no,
en donde si la unidad candidata entre las unidades vecinas reconstruidas y la unidad objetivo tienen diferentes listas de imágenes de referencia, pero usan la misma imagen de referencia, juzgar que la información de movimiento de la unidad candidata entre las unidades vecinas reconstruidas y de la unidad objetivo son similares entre sí;
seleccionar la unidad candidata entre unidades vecinas reconstruidas si la información de movimiento de la unidad candidata entre unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo son similares entre sí;
generar un conjunto de candidatos para la unidad objetivo utilizando la unidad candidata seleccionada; y llevar a cabo la interpredicción en la unidad objetivo utilizando el conjunto de candidatos generado.
2. Un método para codificar una señal de vídeo que comprende:
juzgar si una unidad candidata entre unidades vecinas reconstruidas y una unidad objetivo tienen o no la misma lista de imágenes de referencia y utilizan la misma imagen de referencia;
seleccionar la unidad candidata entre unidades vecinas reconstruidas si la unidad candidata entre unidades vecinas reconstruidas y la unidad objetivo tienen la misma lista de imágenes de referencia y usan la misma imagen de referencia;
juzgar si una información de movimiento de la unidad candidata entre unidades vecinas reconstruidas y una información de movimiento de la unidad objetivo son similares entre sí o no,
en donde si la unidad candidata entre las unidades vecinas reconstruidas y la unidad objetivo tienen diferentes listas de imágenes de referencia, pero usan la misma imagen de referencia, juzgar que la información de movimiento de la unidad candidata entre las unidades vecinas reconstruidas y de la unidad objetivo son similares entre sí;
seleccionar la unidad candidata entre unidades vecinas reconstruidas si la información de movimiento de la unidad candidata entre unidades vecinas reconstruidas y la información de movimiento de la unidad objetivo son similares entre sí;
generar un conjunto de candidatos para la unidad objetivo utilizando la unidad candidata seleccionada; y llevar a cabo la interpredicción en la unidad objetivo utilizando el conjunto de candidatos generado.
ES21213733T 2010-12-13 2011-12-13 Método para determinar la unidad de referencia Active ES2977892T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20100126630 2010-12-13

Publications (1)

Publication Number Publication Date
ES2977892T3 true ES2977892T3 (es) 2024-09-02

Family

ID=46685501

Family Applications (1)

Application Number Title Priority Date Filing Date
ES21213733T Active ES2977892T3 (es) 2010-12-13 2011-12-13 Método para determinar la unidad de referencia

Country Status (13)

Country Link
US (7) US9288491B2 (es)
EP (4) EP3554078A1 (es)
JP (13) JP5668149B2 (es)
KR (11) KR101588601B1 (es)
CN (15) CN107105292B (es)
DK (1) DK3985979T3 (es)
ES (1) ES2977892T3 (es)
FI (1) FI3985979T3 (es)
HU (1) HUE066534T2 (es)
PL (1) PL3985979T3 (es)
PT (1) PT3985979T (es)
SI (1) SI3985979T1 (es)
WO (1) WO2012081894A1 (es)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107105292B (zh) 2010-12-13 2020-09-08 韩国电子通信研究院 基于帧间预测对视频信号进行解码的方法
MX369192B (es) * 2011-10-18 2019-10-31 Kt Corp Método para codificar imagen, método para decodificar imagen, codificador de imagen y decodificador de imagen.
US9143781B2 (en) * 2012-04-03 2015-09-22 Qualcomm Incorporated Weighted prediction parameter coding
KR20140007272A (ko) * 2012-07-02 2014-01-17 삼성전자주식회사 블록크기에 따라 인터 예측의 참조픽처리스트를 결정하는 비디오 부호화 방법과 그 장치, 비디오 복호화 방법과 그 장치
US9716899B2 (en) * 2013-06-27 2017-07-25 Qualcomm Incorporated Depth oriented inter-view motion vector prediction
CN107005711A (zh) 2014-11-05 2017-08-01 三星电子株式会社 逐样本预测编码设备和方法
CN116489350B (zh) * 2015-11-20 2026-01-06 韩国电子通信研究院 对图像进行编/解码的方法和装置
KR102465914B1 (ko) * 2016-03-04 2022-11-14 한국전자통신연구원 영상 부호화 장치의 부호화 방법
US10560718B2 (en) * 2016-05-13 2020-02-11 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding
CN116567226A (zh) 2016-08-11 2023-08-08 Lx 半导体科技有限公司 图像编码/解码设备和图像数据的发送设备
WO2018128228A1 (ko) * 2017-01-03 2018-07-12 엘지전자 주식회사 영상 코딩 시스템에서 영상 디코딩 방법 및 장치
JP6992815B2 (ja) * 2017-09-27 2022-01-13 日本電気株式会社 動画像符号化装置、動画像符号化方法および動画像符号化プログラム
CN110351566B (zh) * 2018-04-02 2022-02-11 浙江大学 一种参考运动信息排序方法及装置
WO2019199106A1 (ko) * 2018-04-14 2019-10-17 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측에 따른 영상 디코딩 방법 및 장치
US20200014931A1 (en) * 2018-07-06 2020-01-09 Mediatek Inc. Methods and Apparatuses of Generating an Average Candidate for Inter Picture Prediction in Video Coding Systems
CN110933423B (zh) * 2018-09-20 2022-03-25 杭州海康威视数字技术股份有限公司 帧间预测方法和设备
WO2024207456A1 (zh) * 2023-04-07 2024-10-10 Oppo广东移动通信有限公司 编解码方法、编码器、解码器、码流以及存储介质

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06165164A (ja) 1992-11-18 1994-06-10 Nec Corp 動画像処理装置
DE69423166T2 (de) 1993-09-08 2000-07-06 Thomson Consumer Electronics Verfahren und Vorrichtung zur Bewegungsauswertung mit Blockübereinstimmung
US5796434A (en) * 1996-06-07 1998-08-18 Lsi Logic Corporation System and method for performing motion estimation in the DCT domain with improved efficiency
US6567469B1 (en) * 2000-03-23 2003-05-20 Koninklijke Philips Electronics N.V. Motion estimation algorithm suitable for H.261 videoconferencing applications
KR100642043B1 (ko) * 2001-09-14 2006-11-03 가부시키가이샤 엔티티 도코모 부호화 방법, 복호 방법, 부호화 장치, 복호 장치, 화상 처리 시스템, 및 저장 매체
BRPI0216072B1 (pt) * 2001-10-17 2018-09-25 Panasonic Corp método e aparelho de decodificação de figuras móveis
TR201802352T4 (tr) * 2001-11-06 2018-03-21 Panasonic Ip Corp America Hareketli resim kodlama usulü ve hareketli resim kod çözme usulü.
JP4150742B2 (ja) 2002-01-09 2008-09-17 松下電器産業株式会社 動きベクトル復号化方法
JP4114859B2 (ja) 2002-01-09 2008-07-09 松下電器産業株式会社 動きベクトル符号化方法および動きベクトル復号化方法
PT2320659E (pt) * 2002-08-08 2014-11-13 Panasonic Ip Corp America Método de codificação e método de descodificação de imagens em movimento
JP3977716B2 (ja) * 2002-09-20 2007-09-19 株式会社東芝 動画像符号化/復号化方法及び装置
JPWO2004068844A1 (ja) * 2003-01-30 2006-05-25 富士通株式会社 画像圧縮方法、画像復元方法、プログラム及び装置
JP2005005844A (ja) * 2003-06-10 2005-01-06 Hitachi Ltd 計算装置及び符号化処理プログラム
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
KR20050112445A (ko) * 2004-05-25 2005-11-30 경희대학교 산학협력단 예측 부호화/복호화 장치, 예측 부호화/복호화 방법 및 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한기록매체
CN101147399B (zh) 2005-04-06 2011-11-30 汤姆森许可贸易公司 编码增强层视频数据的方法和设备
KR100727972B1 (ko) * 2005-09-06 2007-06-14 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
JP4169767B2 (ja) * 2005-09-27 2008-10-22 三洋電機株式会社 符号化方法
KR100727989B1 (ko) 2005-10-01 2007-06-14 삼성전자주식회사 동영상 부호화시의 인터 모드 결정 방법 및 장치
JP5031230B2 (ja) * 2005-11-28 2012-09-19 キヤノン株式会社 データ送信装置及び方法
CN101375594B (zh) * 2006-01-12 2011-09-07 Lg电子株式会社 处理多视图视频
EP1982518A4 (en) 2006-01-12 2010-06-16 Lg Electronics Inc PROCESSING MORE VIEW VIDEO
CN101005614A (zh) * 2006-01-17 2007-07-25 鲁海宁 动态图像编解码方法、装置和计算机可读记录介质
US20100232505A1 (en) * 2006-02-17 2010-09-16 Thomson Licensing Process for Coding Images Using Intra Prediction Mode
WO2008004940A1 (en) 2006-07-07 2008-01-10 Telefonaktiebolaget Lm Ericsson (Publ) Video data management
JP4592656B2 (ja) 2006-08-17 2010-12-01 富士通セミコンダクター株式会社 動き予測処理装置、画像符号化装置および画像復号化装置
US8238442B2 (en) * 2006-08-25 2012-08-07 Sony Computer Entertainment Inc. Methods and apparatus for concealing corrupted blocks of video data
JP2008109632A (ja) * 2006-09-28 2008-05-08 Toshiba Corp 動きベクトル検出装置及びその方法
WO2008041300A1 (fr) 2006-09-29 2008-04-10 Fujitsu Limited Dispositif de codage d'image dynamique
CN101175210B (zh) * 2006-10-30 2010-08-11 中国科学院计算技术研究所 用于视频预测残差系数解码的熵解码方法及熵解码装置
KR100856411B1 (ko) * 2006-12-01 2008-09-04 삼성전자주식회사 조도 보상 방법 및 그 장치와 그 방법을 기록한 컴퓨터로 읽을 수 있는 기록매체
WO2008071037A1 (en) * 2006-12-14 2008-06-19 Thomson Licensing Method and apparatus for encoding and/or decoding video data using enhancement layer residual prediction for bit depth scalability
WO2008084423A1 (en) * 2007-01-08 2008-07-17 Nokia Corporation Improved inter-layer prediction for extended spatial scalability in video coding
KR101366241B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상 부호화, 복호화 방법 및 장치
CN101682769B (zh) 2007-04-12 2016-11-09 汤姆森特许公司 用于视频编码和解码的跳过-直接模式的取决于环境的合并的方法和装置
JP2008283490A (ja) 2007-05-10 2008-11-20 Ntt Docomo Inc 動画像符号化装置、方法及びプログラム、並びに動画像復号化装置、方法及びプログラム
JP4325708B2 (ja) * 2007-07-05 2009-09-02 ソニー株式会社 データ処理装置、データ処理方法およびデータ処理プログラム、符号化装置、符号化方法および符号化プログラム、ならびに、復号装置、復号方法および復号プログラム
JPWO2009041215A1 (ja) * 2007-09-25 2011-01-20 シャープ株式会社 動画像符号化装置及び動画像復号装置
JP2011501555A (ja) * 2007-10-16 2011-01-06 エルジー エレクトロニクス インコーポレイティド ビデオ信号処理方法及び装置
KR101228020B1 (ko) * 2007-12-05 2013-01-30 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
KR101446773B1 (ko) * 2008-02-20 2014-10-02 삼성전자주식회사 영상 복구를 이용한 인터 예측 부호화, 복호화 방법 및장치
WO2009115901A2 (en) * 2008-03-19 2009-09-24 Nokia Corporation Combined motion vector and reference index prediction for video coding
CN101609681B (zh) * 2008-06-18 2012-04-04 北京工业大学 编码方法、编码器、解码方法及解码器
KR20100018810A (ko) * 2008-08-07 2010-02-18 전자부품연구원 초고화질 영상 부호화, 복호화 방법 및 장치 및 컴퓨터로판독가능한 기록매체
JPWO2010016534A1 (ja) * 2008-08-08 2012-01-26 シャープ株式会社 動画像符号化装置および動画像復号装置
JP5246264B2 (ja) 2008-09-09 2013-07-24 日本電気株式会社 画像符号化装置、画像復号化装置、画像符号化方法及び画像復号化方法
US8724697B2 (en) 2008-09-26 2014-05-13 Qualcomm Incorporated Locating motion vectors for video data units
US8634457B2 (en) * 2008-09-26 2014-01-21 Qualcomm Incorporated Determining availability of video data units
JP5422168B2 (ja) * 2008-09-29 2014-02-19 株式会社日立製作所 動画像符号化方法および動画像復号化方法
KR101377527B1 (ko) * 2008-10-14 2014-03-25 에스케이 텔레콤주식회사 복수 개의 참조 픽처의 움직임 벡터 부호화/복호화 방법 및장치와 그를 이용한 영상 부호화/복호화 장치 및 방법
KR101279573B1 (ko) * 2008-10-31 2013-06-27 에스케이텔레콤 주식회사 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101491556B1 (ko) * 2008-12-02 2015-02-09 삼성전자주식회사 깊이 추정 장치 및 방법
DK3567853T3 (da) * 2009-03-23 2024-01-02 Ntt Docomo Inc Billedsforudsigelsesafkodningsindretning og billedsforudsigelsesafkodingsfremgangsmåde
JP5133290B2 (ja) * 2009-03-31 2013-01-30 株式会社Kddi研究所 動画像符号化装置および復号装置
JP2010258927A (ja) 2009-04-28 2010-11-11 Renesas Electronics Corp 符号データ処理装置、方法及びプログラム
WO2010126613A2 (en) 2009-05-01 2010-11-04 Thomson Licensing Inter-layer dependency information for 3dv
US9113169B2 (en) * 2009-05-07 2015-08-18 Qualcomm Incorporated Video encoding with temporally constrained spatial dependency for localized decoding
KR101474756B1 (ko) 2009-08-13 2014-12-19 삼성전자주식회사 큰 크기의 변환 단위를 이용한 영상 부호화, 복호화 방법 및 장치
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
WO2011046008A1 (ja) * 2009-10-16 2011-04-21 シャープ株式会社 動画像符号化装置、および、動画像復号装置
US9036692B2 (en) * 2010-01-18 2015-05-19 Mediatek Inc. Motion prediction method
US9609342B2 (en) * 2010-02-19 2017-03-28 Skype Compression for frames of a video signal using selected candidate blocks
CN101815218B (zh) * 2010-04-02 2012-02-08 北京工业大学 基于宏块特征的快速运动估计视频编码方法
US20110249734A1 (en) * 2010-04-09 2011-10-13 Segall Christopher A Methods and Systems for Intra Prediction
KR101752418B1 (ko) * 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
EP2924995B1 (en) * 2010-07-09 2018-09-12 Samsung Electronics Co., Ltd Method for decoding video by using block merging
KR101456499B1 (ko) * 2010-07-09 2014-11-03 삼성전자주식회사 움직임 벡터의 부호화 방법 및 장치, 그 복호화 방법 및 장치
US9124898B2 (en) * 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
JP5134050B2 (ja) 2010-07-23 2013-01-30 ソニー株式会社 符号化装置および方法、記録媒体、並びにプログラム
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
US8824558B2 (en) * 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction
US9137544B2 (en) * 2010-11-29 2015-09-15 Mediatek Inc. Method and apparatus for derivation of mv/mvp candidate for inter/skip/merge modes
CN107105292B (zh) 2010-12-13 2020-09-08 韩国电子通信研究院 基于帧间预测对视频信号进行解码的方法
US9288501B2 (en) 2011-03-08 2016-03-15 Qualcomm Incorporated Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
ES2883353T3 (es) * 2011-06-28 2021-12-07 Lg Electronics Inc Método para obtener un predictor de vector de movimiento
MX365013B (es) 2011-08-29 2019-05-20 Ibex Pt Holdings Co Ltd Metodo para generar un bloque de prediccion en modo de prediccion de vector de movimiento avanzada (amvp).

Also Published As

Publication number Publication date
US20240022747A1 (en) 2024-01-18
JP5668149B2 (ja) 2015-02-12
JP2022168308A (ja) 2022-11-04
KR20240153545A (ko) 2024-10-23
FI3985979T3 (fi) 2024-04-23
SI3985979T1 (sl) 2024-06-28
CN107087195B (zh) 2020-03-13
US9288491B2 (en) 2016-03-15
JP2016036162A (ja) 2016-03-17
JP2017118582A (ja) 2017-06-29
JP2015053736A (ja) 2015-03-19
JP2025120371A (ja) 2025-08-15
KR102435393B1 (ko) 2022-08-23
JP7145252B2 (ja) 2022-09-30
KR20200077495A (ko) 2020-06-30
CN107071469A (zh) 2017-08-18
CN107105270B (zh) 2020-04-24
CN107071469B (zh) 2020-03-03
CN107105291A (zh) 2017-08-29
CN103348681B (zh) 2017-03-15
KR20160124071A (ko) 2016-10-26
CN107105289B (zh) 2020-12-22
CN107087194B (zh) 2020-02-11
EP3985979A1 (en) 2022-04-20
CN107105291B (zh) 2020-04-07
JP2015053739A (ja) 2015-03-19
KR20170091561A (ko) 2017-08-09
DK3985979T3 (da) 2024-04-15
US12149724B2 (en) 2024-11-19
WO2012081894A1 (ko) 2012-06-21
JP2024159991A (ja) 2024-11-08
CN107454420A (zh) 2017-12-08
KR20120065954A (ko) 2012-06-21
KR101922564B1 (ko) 2018-11-27
US20250039422A1 (en) 2025-01-30
EP3985979B1 (en) 2024-03-27
JP2024003161A (ja) 2024-01-11
CN107454420B (zh) 2020-08-07
JP2021119658A (ja) 2021-08-12
EP4340362A2 (en) 2024-03-20
US10425653B2 (en) 2019-09-24
CN107105292B (zh) 2020-09-08
CN105611298B (zh) 2019-06-18
KR101769085B1 (ko) 2017-08-17
CN105611298A (zh) 2016-05-25
HUE066534T2 (hu) 2024-08-28
EP2654302A1 (en) 2013-10-23
JP7550290B2 (ja) 2024-09-12
US20220132152A1 (en) 2022-04-28
KR102719936B1 (ko) 2024-10-21
US11252424B2 (en) 2022-02-15
CN107105290A (zh) 2017-08-29
CN107087194A (zh) 2017-08-22
JP2015053738A (ja) 2015-03-19
CN107105289A (zh) 2017-08-29
KR20160011688A (ko) 2016-02-01
CN107105288B (zh) 2020-12-22
CN107454419A (zh) 2017-12-08
KR20220119579A (ko) 2022-08-30
EP4340362A3 (en) 2024-05-22
CN107454421B (zh) 2020-12-29
KR101588601B1 (ko) 2016-01-29
JP2014502481A (ja) 2014-01-30
CN107454421A (zh) 2017-12-08
JP6518274B2 (ja) 2019-05-22
JP2019110591A (ja) 2019-07-04
KR101870308B1 (ko) 2018-06-22
CN103348681A (zh) 2013-10-09
US20130251044A1 (en) 2013-09-26
KR20190104123A (ko) 2019-09-06
EP3554078A1 (en) 2019-10-16
CN107087195A (zh) 2017-08-22
CN107105270A (zh) 2017-08-29
CN107454419B (zh) 2020-12-29
CN107105292A (zh) 2017-08-29
KR102018112B1 (ko) 2019-09-04
US20140037001A1 (en) 2014-02-06
KR102127687B1 (ko) 2020-06-29
JP6840779B2 (ja) 2021-03-10
EP2654302B1 (en) 2019-09-04
CN107105293A (zh) 2017-08-29
CN107105288A (zh) 2017-08-29
KR20180072633A (ko) 2018-06-29
KR20180127630A (ko) 2018-11-29
KR20210065922A (ko) 2021-06-04
JP6100344B2 (ja) 2017-03-22
US11843795B2 (en) 2023-12-12
KR101669541B1 (ko) 2016-10-26
PT3985979T (pt) 2024-04-10
CN107105293B (zh) 2020-05-12
CN107105290B (zh) 2020-05-12
PL3985979T3 (pl) 2024-06-10
US20190364292A1 (en) 2019-11-28
EP2654302A4 (en) 2015-08-05
JP2015053737A (ja) 2015-03-19
JP7387841B2 (ja) 2023-11-28
US20160150240A1 (en) 2016-05-26
JP7697120B2 (ja) 2025-06-23

Similar Documents

Publication Publication Date Title
ES2977892T3 (es) Método para determinar la unidad de referencia
ES2550803T3 (es) Reducción del número de contextos para codificación aritmética binaria adaptativa al contexto
HK40101633A (en) Method for determining reference unit