[go: up one dir, main page]

ES3023748T3 - Video decoding method, video encoding method and transmission method - Google Patents

Video decoding method, video encoding method and transmission method Download PDF

Info

Publication number
ES3023748T3
ES3023748T3 ES22175536T ES22175536T ES3023748T3 ES 3023748 T3 ES3023748 T3 ES 3023748T3 ES 22175536 T ES22175536 T ES 22175536T ES 22175536 T ES22175536 T ES 22175536T ES 3023748 T3 ES3023748 T3 ES 3023748T3
Authority
ES
Spain
Prior art keywords
motion information
block
target block
information
target
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
ES22175536T
Other languages
English (en)
Inventor
Jungdong Seo
Jaehyun Lim
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LG Electronics Inc filed Critical LG Electronics Inc
Application granted granted Critical
Publication of ES3023748T3 publication Critical patent/ES3023748T3/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/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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • 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
    • 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/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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

Un método de decodificación de imágenes, realizado por un aparato de decodificación (200), comprende la obtención de información sobre una interpredicción e información residual de un flujo de bits. Esta información incluye información de modo que indica que se aplica un modo de fusión a un bloque objetivo e información de índice de fusión; la determinación de la aplicación del modo de fusión al bloque objetivo con base en esta información; la configuración de una lista de candidatos de fusión para el bloque objetivo basada en bloques colindantes espaciales y un bloque colindante temporal del bloque objetivo; la selección de uno de los candidatos de fusión que componen la lista de candidatos de fusión con base en la información de índice de fusión; la derivación de la información de movimiento del bloque objetivo con base en el candidato de fusión seleccionado; la generación de muestras de predicción para el bloque objetivo mediante la interpredicción con base en la información de movimiento del bloque objetivo; la generación de una señal residual con base en esta información; y la generación de muestras reconstruidas con base en las muestras de predicción y la señal residual. Los candidatos de fusión incluyen información de movimiento espacial y un candidato de información de movimiento temporal; los candidatos de información de movimiento espacial se derivan con base en los bloques colindantes espaciales y el candidato de información de movimiento temporal se deriva con base en el bloque colindante temporal. El candidato a información de movimiento temporal se obtiene utilizando la información de movimiento modificada del bloque temporal adyacente. Esta información se obtiene a partir de la información de movimiento del bloque temporal adyacente y la bipredicción. El candidato a información de movimiento espacial se obtiene utilizando la información de movimiento del bloque espacial adyacente. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Método de decodificación de vídeo, método de codificación de vídeo y método de trasmisión
Campo de la invención
La presente invención se refiere a una técnica para la codificación de imágenes y, más particularmente, a un método para decodificar una imagen en un sistema de codificación de imágenes, y a un método para codificar una imagen en un sistema de codificación de imágenes. Además, la presente invención se refiere a un método para transmitir datos para una imagen.
Técnica relacionada
La demanda de alta resolución, imágenes de alta calidad, tales como imágenes de HD (alta definición) e imágenes de UHD (Ultra Alta Definición) han ido aumentando en diversos campos. Como los datos de imagen tienen alta resolución y alta calidad, la cantidad de información o bits que se transmitirán aumenta en relación con los datos de imagen heredados. Por lo tanto, cuando los datos de imagen se transmiten utilizando un medio como una línea de banda ancha cableada/inalámbrica convencional o los datos de imagen se almacenan utilizando un medio de almacenamiento existente, se incrementan el costo de transmisión y el costo de almacenamiento del mismo. Las características de los preámbulos de las reivindicaciones independientes se describen en cada solicitud de patente de la técnica anterior WO 2015/149698 A1 y US 2016/286232 A1, así como en los siguientes documentos del Equipo Conjunto de Exploración de Vídeo (JVET) de ITU-T SG 16 WP 3 e ISO/IECJTC 1/SC 29/WG 11: Un primer documento con el número de documento JVETD0029 y el título "Decoder-Side Motion Vector Refinement Based on Bilateral Template Matching" y un segundo documento con número de documento JVET-D1001 y el título "Algorithm Description FO Joint Exploration Test Model 4".
Por consiguiente, hay una necesidad de una técnica de compresión de imágenes altamente eficaz para transmitir, almacenar y reproducir de manera eficaz información de imágenes de alta resolución y alta calidad.
Compendio de la invención
El objeto anterior se resuelve mediante la combinación de características de las reivindicaciones independientes. Las realizaciones preferidas se definen en las reivindicaciones dependientes. La descripción que permite la invención se encuentra en las realizaciones de las Figuras 1 (codificación) y 2 (decodificación) en combinación con la realización de la Figura 8 y la descripción correspondiente. Las realizaciones restantes que no entran dentro del alcance de protección de las reivindicaciones deben entenderse como ejemplos que no describen partes de la presente invención.
La presente invención proporciona un método para mejorar la eficiencia de codificación de imágenes.
La presente descripción también proporciona un método y un aparato para una interpredicción que actualiza la información de movimiento de un bloque de destino.
La presente descripción también proporciona un método y aparato para calcular información de movimiento modificado de un bloque de destino después de procedimiento de decodificación del bloque de destino, y la actualización basada en la información de movimiento modificado.
La presente descripción también proporciona un método y aparato para utilizar información de movimiento actualizada de un bloque de destino para la información de movimiento de un siguiente bloque al lado del bloque de destino.
En un aspecto un método de descodificación de imágenes realizada por un aparato de descodificación se proporciona. El método de decodificación de imágenes incluye obtener información sobre la interpredicción de un bloque de destino a través de un flujo de bits, derivar información de movimiento del bloque de destino en base a la información de la interpredicción, derivar una muestra de predicción realizando la interpredicción para el bloque de destino basado en la información de movimiento, generando un bloque reconstruido en base a la muestra de predicción, derivando información de movimiento modificado para el bloque de destino en base al bloque reconstruido, y actualizando la información de movimiento del bloque de destino en base a la información de movimiento modificado. Este método de descodificación tampoco es según las reivindicaciones.
En otro aspecto, que no se reivindica, se proporciona un aparato de descodificación para realizar una descodificación de imágenes. El aparato de decodificación incluye una unidad de decodificación entrópica configurada para obtener información sobre la interpredicción de un bloque de destino a través de un flujo de bits, una unidad de predicción configurada para derivar información de movimiento del bloque de destino en base a la información de la interpredicción, derivar una muestra de predicción realizando la interpredicción para el bloque de destino basada en la información de movimiento, generar un bloque reconstruido del bloque de destino basado en la muestra de predicción y derivar información de movimiento modificado para el bloque de destino basado en el bloque reconstruido, y una memoria configurada para actualizar la información de movimiento del bloque de destino en función de la información de movimiento modificado.
En otro aspecto más se proporciona un método de codificación de vídeo realizada por un aparato de codificación. El método incluye generar información de movimiento para un bloque de destino, derivar una muestra de predicción realizando una interpredicción para el bloque de destino en base a la información de movimiento, generar un bloque reconstruido basado en la muestra de predicción, generar información de movimiento modificado para el bloque de destino basado en el bloque reconstruido y actualización de la información de movimiento del bloque de destino en base a la información de movimiento modificado. Este método de codificación tampoco es según las reivindicaciones.
En otro aspecto más, que no se reivindica, se proporciona un aparato de codificación de vídeo. El aparato de codificación incluye una unidad de predicción configurada para generar información de movimiento para un bloque de destino, derivar una muestra de predicción realizando una interpredicción para el bloque de destino en base a la información de movimiento, generar un bloque reconstruido basado en la muestra de predicción y generar información de movimiento modificado para el bloque de destino basado en el bloque reconstruido y una memoria configurada para actualizar la información de movimiento del bloque de destino en base a la información de movimiento modificado.
Según la presente descripción, después del procedimiento de decodificación de un bloque de destino, información de movimiento modificado del bloque de destino se calcula, y puede ser actualizada para información de movimiento más precisa, y a través de esta, en general puede ser mejorada la eficiencia de codificación.
Según la presente descripción, la información de movimiento de un siguiente bloque al lado del bloque de destino puede ser derivada basada en la información de movimiento actualizada del bloque de destino, y la propagación de distorsión se puede disminuir, y a través de esta, en general puede ser mejorada la eficiencia de codificación.
Breve descripción de los dibujos
La FIG. 1 es un diagrama esquemático que ilustra una configuración de un dispositivo de codificación de vídeo al que es aplicable la presente descripción.
La FIG. 2 es un diagrama esquemático que ilustra una configuración de un dispositivo de decodificación de vídeo al que es aplicable la presente descripción.
La FIG. 3 ilustra un ejemplo de un caso de realización de una interpredicción basada en información de movimiento unidireccional y un caso de realización de una interpredicción basada en información de movimiento bidireccional que se aplica a un bloque de destino.
La FIG. 4 ilustra un ejemplo de un procedimiento de codificación que incluye un método para actualizar la información de movimiento de un bloque de destino.
La FIG. 5 ilustra un ejemplo de procedimiento de decodificación que incluye un método para actualizar la información de movimiento de un bloque de destino.
La FIG. 6 ilustra un ejemplo de un método para actualizar la información de movimiento del bloque de destino a través del método de coincidencia de bloques por el aparato de decodificación.
La FIG. 7 ilustra imágenes de referencia que se pueden utilizar en la información de movimiento modificado. La FIG. 8 ilustra un ejemplo de una lista de candidatos a la fusión de un siguiente bloque contiguo a los bloques de destino en el caso de que la información de movimiento de los bloques de destino se actualice a la información de movimiento modificado de los bloques de destino.
La FIG. 9 ilustra un ejemplo de una lista de candidatos a la fusión de un siguiente bloque contiguo a los bloques de destino en el caso de que la información de movimiento de los bloques de destino se actualice a la información de movimiento modificado de los bloques de destino.
La FIG. 10 ilustra un ejemplo de una lista de candidatos de predictores de vectores de movimiento de un siguiente bloque al lado del bloque de destino en el caso de que la información de movimiento del bloque de destino se actualice basándose en la información de movimiento modificado del bloque de destino.
La FIG. 11 ilustra un ejemplo de una lista de candidatos de predictores de vectores de movimiento de un siguiente bloque al lado del bloque de destino en el caso de que la información de movimiento del bloque de destino se actualice basándose en la información de movimiento modificado del bloque de destino.
La FIG. 12 ilustra esquemáticamente un método de codificación de vídeo mediante un aparato de codificación según la presente invención.
La FIG. 13 ilustra esquemáticamente un método de decodificación de vídeo mediante un aparato de decodificación según la presente invención.
Descripción de formas de realización ejemplares
Los elementos en los dibujos descritos en la descripción se dibujan de forma independiente con el propósito de conveniencia para la explicación de diferentes funciones específicas, y no significa que los elementos están realizados por hardware independiente o software independiente. Por ejemplo, dos o más elementos de los elementos pueden combinarse para formar un solo elemento, o un elemento puede dividirse en varios elementos. Las realizaciones en las que los elementos se combinan y/o dividen pertenecen a la descripción sin apartarse del concepto de la descripción.
De aquí en adelante, las realizaciones de la presente descripción se describirán en detalle con referencia a los dibujos adjuntos. Además, se utilizan números de referencia similares para indicar elementos similares en todos los dibujos, y se omitirán las mismas descripciones sobre los elementos similares.
En la presente memoria, generalmente una imagen significa una unidad que representa una imagen en un momento específico, una rebanada es una unidad que constituye una parte de la imagen. Una imagen puede estar compuesta de varios cortes, y los términos de una imagen y un corte pueden mezclarse entre sí según lo requiera la ocasión.
Un píxel o un pel puede significar una unidad mínima que constituye una representación (o imagen). Además, una "muestra" puede usarse como un término correspondiente a un píxel. La muestra puede representar generalmente un píxel o el valor de un píxel, puede representar solo un píxel (un valor de píxel) de un componente de luminancia y puede representar solo un píxel (un valor de píxel) de un componente de crominancia.
Una unidad indica una unidad básica de procedimiento de imágenes. La unidad puede incluir al menos una de un área específica e información relacionada con el área. Opcionalmente, la unidad se puede mezclar con términos como un bloque, un área o similares. En un caso típico, un bloque M x N puede representar un conjunto de muestras o coeficientes de transformación dispuestos en M columnas y N filas.
La FIG. 1 ilustra brevemente una estructura de un dispositivo de codificación de vídeo al que es aplicable la presente descripción.
Haciendo referencia a la FIG. 1, un dispositivo 100 de codificación de vídeo incluye un divisor en particiones 105 de imágenes, un predictor 110, un restador 115, un transformador 120, un cuantificador 125, un reorganizador 130, un codificador 135 entrópico, un descuantificador 140, un transformador 145 inverso, un sumador 150, un filtro 255, y una memoria 160.
El divisor en particiones 105 de imágenes puede dividir una imagen de entrada en al menos una unidad de procedimiento. Aquí, una unidad de procedimiento puede ser una unidad de codificación (CU), una unidad de predicción (PU) o una unidad de transformación (TU). La unidad de codificación es un bloque unitario de codificación, y una unidad de codificación más grande (LCU) puede dividirse en unidades de codificación de mayor profundidad según una estructura de árbol cuádruple. En este caso, la unidad de codificación más grande puede usarse como una unidad de codificación final o una unidad de codificación puede dividirse recursivamente en unidades de codificación de mayor profundidad según sea necesario y una unidad de codificación que tenga un tamaño óptimo puede usarse como una unidad de codificación final basada en eficiencia de codificación según las características del vídeo. Cuando se establece una unidad de codificación más pequeña (SCU), una unidad de codificación no se puede dividir en una unidad de codificación más pequeña que la unidad de codificación más pequeña. Aquí, la unidad de codificación final se refiere a una unidad de codificación dividida o separada en un predictor o un transformador. Una unidad de predicción es un bloque dividido de un bloque de unidad de codificación y puede ser un bloque de unidad de predicción de muestra. Aquí, la unidad de predicción se puede dividir en sub bloques. Un bloque de transformación puede dividirse de un bloque de unidad de codificación según la estructura de árbol cuádruple y puede ser un bloque de unidad que deriva un coeficiente de transformación y/o un bloque de unidad que deriva una señal residual de un coeficiente de transformación.
En lo sucesivo, la unidad de codificación puede ser denominada un bloque de codificación (CB), la unidad de predicción puede ser denominada una predicción de bloque (PB), y la unidad de transformar puede ser denominada un bloque transformado (TB).
El bloque de predicción o la unidad de predicción puede significar un área específica que tiene una forma de bloque en una imagen, y puede incluir una matriz de una muestra de predicción. Además, el bloque de transformación o la unidad de transformación puede significar un área específica que tiene una forma de bloque en una imagen y puede incluir un coeficiente de transformación o una matriz de muestras residuales.
El predictor 110 puede llevar a cabo la predicción en un bloque de destino de procedimiento (en lo sucesivo, un bloque corriente), y puede generar un bloque de predicción incluyendo muestras de predicción para el bloque corriente. Una unidad de predicción realizada en el predictor 110 puede ser un bloque de codificación, o puede ser un bloque de transformación, o puede ser un bloque de predicción.
El predictor 110 puede determinar si se aplica intrapredicción o se aplica interpredicción al bloque corriente. Por ejemplo, el predictor 110 puede determinar si la intrapredicción o la interpredicción se aplica en unidades de CU.
En el caso de la intrapredicción, el predictor 110 puede derivar una muestra de predicción para el bloque corriente sobre la base de una muestra de referencia fuera del bloque corriente en una imagen a la que pertenece el bloque corriente (en lo sucesivo, una imagen corriente). En este caso, el predictor 110 puede derivar la muestra de predicción basada en un promedio o interpolación de muestras de referencia contiguas del bloque corriente (caso (i)), o puede derivar la muestra de predicción basada en una muestra de referencia existente en una (predicción) dirección en cuanto a una muestra de predicción entre las muestras de referencia contiguas del bloque corriente (caso (ii)). El caso (i) puede denominarse modo no direccional o modo no angular, y el caso (ii) puede denominarse modo direccional o modo angular. En la intrapredicción, los modos de predicción pueden incluir como ejemplo 33 modos direccionales y al menos dos modos no direccionales. Los modos no direccionales pueden incluir el modo CC y el modo plano. El predictor 110 puede determinar el modo de predicción que se aplicará al bloque corriente utilizando el modo de predicción aplicado al bloque contiguo.
En el caso de la interpredicción, el predictor 110 puede derivar la muestra de predicción para el bloque corriente basado en una muestra especificada por un vector de movimiento en una imagen de referencia. El predictor 110 puede derivar la muestra de predicción para el bloque corriente aplicando cualquiera de un modo de salto, un modo de fusión y un modo de predicción de vector de movimiento (MVP). En el caso del modo de salto y el modo de fusión, el predictor 110 puede usar información de movimiento del bloque contiguo como información de movimiento del bloque corriente. En el caso del modo de omisión, a diferencia del modo de fusión, no se transmite una diferencia (residual) entre la muestra de predicción y una muestra original. En el caso del modo MVP, un vector de movimiento del bloque contiguo se usa como predictor de vector de movimiento y, por lo tanto, se usa como predictor de vector de movimiento del bloque corriente para derivar un vector de movimiento del bloque corriente.
En el caso de la interpredicción, el bloque contiguo puede incluir un bloque contiguo espacial existente en la imagen corriente y un bloque contiguo temporal existente en la imagen de referencia. La imagen de referencia que incluye el bloque contiguo temporal también puede denominarse imagen colocada (colPic). La información de movimiento puede incluir el vector de movimiento y un índice de imagen de referencia. La información, como la información del modo de predicción y la información de movimiento, puede codificarse (entropía) y luego emitirse como una forma de un flujo de bits.
Cuando la información de movimiento de un bloque contiguo temporal se utiliza en el modo de salto y el modo de mezcla, una imagen más alta en una lista de imágenes de referencia puede utilizarse como una imagen de referencia. Las imágenes de referencia incluidas en la lista de imágenes de referencia pueden alinearse basándose en una diferencia de recuento de orden de imágenes (POC) entre una imagen corriente y una imagen de referencia correspondiente. Un POC corresponde a un orden de visualización y se puede discriminar de un orden de codificación.
El restador 115 genera una muestra residual que es una diferencia entre una muestra original y una muestra de predicción, cuando se aplica el modo de salto, la muestra residual no puede ser generada como se describe anteriormente.
El transformador 120 transforma las muestras residuales en unidades de un bloque de transformación para generar un coeficiente de transformación. El transformador 120 puede realizar la transformación basándose en el tamaño de un bloque de transformación correspondiente y un modo de predicción aplicado a un bloque de codificación o bloque de predicción que se superpone espacialmente con el bloque de transformación. Por ejemplo, las muestras residuales se pueden transformar usando la transformada sinusoidal discreta (DST) cuando se aplica intrapredicción al bloque de codificación o cuando el bloque de predicción se superpone con el bloque de transformación y el bloque de transformación es una matriz residual 4x4 y se transforma usando transformada de coseno discreta (DCT) en otros casos.
El cuantificador 125 puede cuantificar los coeficientes de transformada para generar un coeficiente de transformada cuantificado.
El reorganizador 130 reordena coeficientes de transformación cuantificados. El reorganizador 130 puede reorganizar los coeficientes de transformación cuantificados en forma de bloque en un vector unidimensional mediante un método de exploración de coeficientes. Aunque el reorganizador 130 se describe como un componente separado, el reorganizador 130 puede ser una parte del cuantificador 125.
El codificador 135 entrópico puede realizar codificación entrópica en los coeficientes de transformación cuantificados. La codificación entrópica puede incluir un método de codificación, p. ej., un Golomb exponencial, una codificación de longitud variable adaptativa al contexto (CAVLC), una codificación aritmética binaria adaptativa al contexto (CABAC), o similares. El codificador 135 entrópico puede realizar la codificación junto o por separado de la información (p. ej., un valor de elemento de sintaxis o similar) requerida para la reconstrucción de vídeo además de los coeficientes de transformación cuantificados. La información codificada en entropía puede transmitirse o almacenarse en una unidad de una capa de abstracción de red (NAL) en forma de un flujo de bits.
El descuantificador 140 descuantifica valores (coeficientes de transformación) cuantificados por el cuantificador 125 y el transformador 145 inverso transforma inversamente valores descuantificados por el descuantificador 140 para generar una muestra residual.
El sumador 150 añade una muestra residual a una muestra de predicción para reconstruir una imagen. La muestra residual se puede agregar a la muestra de predicción en unidades de un bloque para generar un bloque reconstruido. Aunque el sumador 150 se describe como un componente separado, el sumador 150 puede ser una parte del predictor 110.
El filtro 155 puede aplicar el desbloqueo de filtrado y/o una muestra de desplazamiento a la imagen reconstruida adaptativa. Los artefactos en el límite de un bloque en la imagen reconstruida o la distorsión en la cuantificación se pueden corregir mediante el filtrado de desbloqueo y/o el desplazamiento adaptativo de la muestra. El desplazamiento adaptativo de muestra se puede aplicar en unidades de una muestra después de que se completa el filtrado de desbloqueo. El filtro 155 puede aplicar un filtro de bucle adaptativo (ALF) a la imagen reconstruida. El ALF puede aplicarse a la imagen reconstruida a la que se ha aplicado filtrado de desbloqueo y/o desplazamiento adaptativo de muestra.
La memoria 160 puede almacenar una imagen reconstruida o información necesaria para la codificación/decodificación. Aquí, la imagen reconstruida puede ser la imagen reconstruida filtrada por el filtro 155. La imagen reconstruida almacenada puede usarse como una imagen de referencia para la (inter) predicción de otras imágenes. Por ejemplo, la memoria 160 puede almacenar imágenes (de referencia) utilizadas para la interpredicción. Aquí, las imágenes utilizadas para la interpredicción pueden designarse según un conjunto de imágenes de referencia o una lista de imágenes de referencia.
La FIG. 2 ilustra brevemente una estructura de un dispositivo de decodificación de vídeo al que es aplicable la presente descripción.
Haciendo referencia a la FIG. 2, un dispositivo 200 de decodificación de vídeo incluye un decodificador 210 entrópico, un reorganizador 220, un descuantificador 230, un transformador inverso 240, un predictor 250, un sumador 260, un filtro 270, y una memoria 280.
Cuando se introduce un flujo de bits que incluye información de vídeo, el dispositivo 200 de decodificación de vídeo puede reconstruir un vídeo en asociación con un procedimiento mediante el cual se procesa la información de vídeo en el dispositivo de codificación de vídeo.
Por ejemplo, el dispositivo 200 de decodificación de vídeo puede llevar a cabo la decodificación de vídeo mediante el uso de una unidad de procedimiento aplicada en el dispositivo de codificación de vídeo. Por tanto, el bloque de unidad de procedimiento de decodificación de vídeo puede ser un bloque de unidad de codificación, un bloque de unidad de predicción o un bloque de unidad de transformación. Como bloque unitario de decodificación, el bloque unitario de codificación puede dividirse según una estructura de árbol cuádruple a partir de un bloque de unidad de codificación más grande. Como bloque dividido del bloque de unidad de codificación, el bloque de unidad de predicción puede ser un bloque de unidad de predicción de muestra. En este caso, el bloque de unidad de predicción puede dividirse en sub bloques. Como bloque unitario de codificación, el bloque unitario de transformación puede dividirse según la estructura de árbol cuádruple, y puede ser un bloque unitario para derivar un coeficiente de transformación o un bloque unitario para derivar una señal residual del coeficiente de transformada.
El decodificador 210 entrópico puede analizar sintácticamente el flujo de bits a la información de salida necesaria para la reconstrucción de vídeo o de reconstrucción de imagen. Por ejemplo, el decodificador 210 entrópico puede decodificar información en el flujo de bits basándose en un método de codificación como la codificación exponencial de Golomb, CAVLC, CABAC o similares, y puede generar un valor de un elemento de sintaxis requerido para la reconstrucción de vídeo y un valor cuantificado de un coeficiente de transformada con respecto a un residual.
Más específicamente, un método de descodificación entrópica CABAC puede recibir un bin correspondiente a cada elemento de sintaxis en un flujo de bits, determinar un modelo de contexto usando la descodificación de información del elemento de sintaxis de destino y la decodificación de información del contiguo y la decodificación de bloques de destino o información de amabol/bin decodificado en una etapa anterior, predecir la probabilidad de generación de bin según el modelo de contexto determinado y realizar la decodificación aritmética del bin para generar un símbolo correspondiente a cada valor del elemento de sintaxis. Aquí, el método de decodificación entrópica CABAC puede actualizar el modelo de contexto utilizando información de un símbolo/bin decodificado para un modelo de contexto del siguiente símbolo/bin después de la determinación del modelo de contexto.
La información sobre la predicción entre la información decodificada en el decodificador 210 entrópico puede proporcionarse al predictor 250 y los valores residuales, es decir, los coeficientes de transformación cuantificados, en los que la decodificación entrópica ha sido realizada por el decodificador 210 entrópico pueden introducirse en el reorganizador 220.
El reorganizador 220 puede reorganizar los coeficientes de transformada cuantificados en una forma de bloque de dos dimensiones. El reorganizador 220 puede realizar una reordenación correspondiente a la exploración de coeficientes realizada por el dispositivo de codificación. Aunque el reorganizador 220 se describe como un componente separado, el reorganizador 220 puede ser una parte del descuantificador 230.
El descuantificador 230 puede descuantificar los coeficientes de transformada cuantificados sobre la base de una (des)cuantificación de parámetros para generar un coeficiente de transformación. En este caso, la información para derivar un parámetro de cuantificación puede señalizarse desde el dispositivo de codificación.
El transformador inverso 240 puede transformar inversamente los coeficientes de transformación a las muestras para derivar residuales.
El predictor 250 puede llevar a cabo la predicción de un bloque corriente, y puede generar un bloque de predicción incluyendo muestras de predicción para el bloque corriente. Una unidad de predicción realizada en el predictor 250 puede ser un bloque de codificación o puede ser un bloque de transformación o puede ser un bloque de predicción.
El predictor 250 puede determinar si debe aplicar intrapredicción o interpredicción basada en información sobre una predicción. En este caso, una unidad para determinar cuál se utilizará entre la intrapredicción y la interpredicción puede ser diferente de una unidad para generar una muestra de predicción. Además, una unidad para generar la muestra de predicción también puede ser diferente en la interpredicción y la intrapredicción. Por ejemplo, cuál se aplicará entre la interpredicción y la intrapredicción puede determinarse en unidades de CU. Además, p. ej., en la interpredicción, la muestra de predicción se puede generar determinando el modo de predicción en la unidad de PU, y en la intrapredicción, la muestra de predicción se puede generar en la unidad de TU determinando el modo de predicción en unidad de PU.
En el caso de la intrapredicción, el predictor 250 puede derivar una muestra de predicción para un bloque corriente sobre la base de una muestra de referencia contigua en una imagen corriente. El predictor 250 puede derivar la muestra de predicción para el bloque corriente aplicando un modo direccional o un modo no direccional basado en la muestra de referencia contigua del bloque corriente. En este caso, se puede determinar un modo de predicción que se aplicará al bloque corriente utilizando un modo de intrapredicción de un bloque contiguo.
En el caso de interpredicción, el predictor 250 puede derivar una muestra de predicción para un bloque corriente sobre la base de una muestra específica en una imagen de referencia según un vector de movimiento. El predictor 250 puede derivar la muestra de predicción para el bloque corriente usando uno de los modos de salto, el modo de fusión y el modo MVP. Aquí, la información de movimiento requerida para la interpredicción del bloque corriente proporcionada por el dispositivo de codificación de vídeo, p. ej., un vector de movimiento e información sobre un índice de imagen de referencia puede adquirirse o derivarse basándose en la información sobre la predicción.
En el modo de salto y el modo de combinación, la información de movimiento de un bloque contiguo se puede usar como el movimiento de información del bloque corriente. Aquí, el bloque contiguo puede incluir un bloque contiguo espacial y un bloque contiguo temporal.
El predictor 250 puede construir una lista de candidatos de combinación que utiliza la información de movimiento de bloques contiguos disponibles y utilizar la información indicada por un índice de fusión en la lista de candidatos de combinación como un vector de movimiento del bloque corriente. El índice de fusión puede ser señalado por el dispositivo de codificación. La información de movimiento puede incluir un vector de movimiento y una imagen de referencia. Cuando se usa información de movimiento de un bloque contiguo temporal en el modo de salto y el modo de fusión, se puede usar una imagen más alta en una lista de imágenes de referencia como imagen de referencia.
En el caso del modo de salto, una diferencia (residual) entre una muestra de predicción y una muestra original no se transmite, que se distingue del modo de mezcla.
En el caso del modo de MVP, el vector de movimiento del bloque corriente se puede derivar usando un vector de movimiento de un bloque contiguo como un predictor de vector de movimiento. Aquí, el bloque contiguo puede incluir un bloque contiguo espacial y un bloque contiguo temporal.
Cuando se aplica el modo de mezcla, p. ej., una lista de candidatos a la fusión se puede generar utilizando un vector de movimiento de un bloque contiguo reconstruido espacial y/o un vector de movimiento correspondiente a un bloque de Col que es un bloque contiguo temporal. Un vector de movimiento de un bloque candidato seleccionado de la lista de candidatos a la fusión se utiliza como vector de movimiento del bloque corriente en el modo de fusión. La información antes mencionada sobre la predicción puede incluir un índice de fusión que indique un bloque candidato que tiene el mejor vector de movimiento seleccionado entre los bloques candidatos incluidos en la lista de candidatos fusionados. Aquí, el predictor 250 puede derivar el vector de movimiento del bloque corriente usando el índice de fusión.
Cuando el modo de MVP (Predicción de Vector de Movimiento) se aplica como otro ejemplo, una lista de candidatos de predictor de vector de movimiento se puede generar utilizando un vector de movimiento de un bloque contiguo reconstruido espacial y/o un movimiento de vector correspondiente a un bloque de Col que es un bloque contiguo temporal. Es decir, el vector de movimiento del bloque contiguo espacial reconstruido y/o el vector de movimiento correspondiente al bloque Col que es el bloque contiguo temporal pueden usarse como candidatos de vector de movimiento. La información antes mencionada sobre la predicción puede incluir un índice de vector de movimiento de predicción que indique el mejor vector de movimiento seleccionado entre los candidatos de vector de movimiento incluidos en la lista. Aquí, el predictor 250 puede seleccionar un vector de movimiento de predicción del bloque corriente de los candidatos de vector de movimiento incluidos en la lista de candidatos de vector de movimiento usando el índice de vector de movimiento. El predictor del dispositivo de codificación puede obtener una diferencia de vector de movimiento (MVD) entre el vector de movimiento del bloque corriente y un predictor de vector de movimiento, codificar el MVD y emitir el MVD codificado en forma de un flujo de bits. Es decir, el MVD se puede obtener restando el predictor del vector de movimiento del vector de movimiento del bloque corriente. Aquí, el predictor 250 puede adquirir un vector de movimiento incluido en la información sobre la predicción y derivar el vector de movimiento del bloque corriente sumando la diferencia del vector de movimiento al predictor de vector de movimiento. Además, el predictor puede obtener o derivar un índice de imagen de referencia que indica una imagen de referencia a partir de la información antes mencionada sobre la predicción.
El sumador 260 puede añadir una muestra residual a una muestra de predicción para reconstruir un bloque corriente o una imagen corriente. El sumador 260 puede reconstruir la imagen corriente añadiendo la muestra residual a la muestra de predicción en unidades de un bloque. Cuando se aplica el modo de omisión, no se transmite un residuo y, por lo tanto, la muestra de predicción puede convertirse en una muestra reconstruida. Aunque el sumador 260 se describe como un componente separado, el sumador 260 puede ser una parte del predictor 250.
El filtro 270 puede aplicar el desbloqueo de filtrado, desplazamiento adaptativo de muestra y/o ALF a la imagen reconstruida. Aquí, el desplazamiento adaptativo de muestra se puede aplicar en unidades de una muestra después de desbloquear el filtrado. El ALF puede aplicarse después de desbloquear el filtrado y/o la aplicación del desplazamiento adaptativo de muestra.
La memoria 280 puede almacenar una imagen reconstruida o información necesaria para la decodificación. Aquí, la imagen reconstruida puede ser la imagen reconstruida filtrada por el filtro 270. Por ejemplo, la memoria 280 puede almacenar imágenes utilizadas para la interpredicción. Aquí, las imágenes utilizadas para la interpredicción pueden designarse según un conjunto de imágenes de referencia o una lista de imágenes de referencia. Se puede utilizar una imagen reconstruida como imagen de referencia para otras imágenes. La memoria 280 puede dar salida a imágenes reconstruidas en un orden de salida.
Como se describió anteriormente, en el caso de que una interpredicción se realiza para un bloque de destino, la información de movimiento para el bloque de destino puede ser generada por la aplicación de un modo de salto, un modo de combinación, o un modo de predicción de vector de movimiento adaptativo (AMVP) y codificado y generado. En este caso, en la información de movimiento para el bloque de destino, se puede calcular e incluir una distorsión debido al procedimiento de codificación en la unidad de bloque, y a través de esto, la información de movimiento que representa un bloque reconstruido del bloque de destino puede no reflejarse perfectamente. Particularmente, en el caso de que el modo de fusión se aplique al bloque de destino, la precisión de la información de movimiento para el bloque de destino puede degradarse. Es decir, existe una gran diferencia entre un bloque de predicción derivado de la información de movimiento para el bloque de destino y un bloque reconstruido del bloque de destino. En este caso, la información de movimiento para el bloque de destino se utiliza en un procedimiento de decodificación de un bloque siguiente contiguo al bloque de destino, y se puede propagar una distorsión y, a través de esto, se puede degradar la eficiencia de codificación general.
En consecuencia, en la presente invención, se propone un método en donde la información de movimiento modificado para el bloque de destino se calcula basándose en un bloque reconstruido derivado después del procedimiento de decodificación del bloque de destino, la información de movimiento del bloque de destino se actualiza basándose en la información de movimiento modificado de tal modo que un siguiente bloque al lado del bloque de destino pueda derivar información de movimiento más precisa. A través de esto, se puede mejorar la eficiencia de codificación general.
La FIG. 3 ilustra un ejemplo de un caso de realización de una interpredicción basada en información de movimiento unidireccional y un caso de realización de una interpredicción basada en información de movimiento bidireccional que se aplica a un bloque de destino. La información de movimiento bidireccional puede incluir índice de imagen de referencia L0 y vector de movimiento L0, índice de imagen de referencia L1 y vector de movimiento L1, y la información de movimiento unidireccional puede incluir índice de imagen de referencia L0 y vector de movimiento L0 o índice de imagen de referencia L1 y vector de movimiento L1. L0 indica la lista de imágenes de referencia L0 (lista 0) y L1 indica la lista de imágenes de referencia L1 (lista 1). En el procedimiento de codificación de imágenes, un método utilizado para la interpredicción puede incluir la derivación de la información de movimiento mediante una estimación de movimiento y una compensación de movimiento. Como se muestra en la FIG. 3, la estimación de movimiento puede indicarse en el procedimiento de derivar un bloque adaptado al bloque de destino destinado a imágenes de referencia que se codifica antes de la codificación de la imagen de destino en donde se incluye el bloque de destino. El bloque que coincide con el bloque de destino puede definirse como un bloque de referencia, y una diferencia de posición entre el bloque de destino se deriva suponiendo que el bloque de referencia está incluido en la imagen de destino que es el mismo que el bloque de destino y el bloque de referencia puede ser definido como un vector de movimiento del bloque de destino. La compensación de movimiento puede incluir un método unidireccional en donde se deriva y utiliza un bloque de referencia y un método bidireccional en donde se derivan y utilizan dos bloques de referencia.
La información, incluyendo la información para el vector de movimiento para el bloque de destino y la imagen de referencia puede ser definida como la información de movimiento del bloque de destino. La información para la imagen de referencia puede incluir una lista de imágenes de referencia y un índice de imágenes de referencia que indica una imagen de referencia incluida en la lista de imágenes de referencia. Un aparato de codificación puede almacenar la información de movimiento para el bloque de destino para un siguiente bloque al lado del bloque de destino que se codificará junto al bloque de destino después de que el bloque de destino se codifique o las imágenes se codifiquen junto a la imagen de destino. La información de movimiento almacenada puede usarse en un método para representar la información de movimiento del siguiente bloque a codificar junto al bloque de destino o las imágenes a codificar anidadas en el bloque de destino. El método puede incluir el modo de fusión, que es un método para indexar la información de movimiento del bloque de destino y transmitir la información de movimiento del siguiente bloque al lado del bloque de destino como un índice y el modo AMVP, que es un método para representar el vector de movimiento del siguiente bloque al lado del bloque de destino solo con un diferencial entre el vector de movimiento del siguiente bloque y el vector de movimiento del bloque de destino.
La presente invención propone un método para actualizar la información de movimiento para la imagen de destino o el bloque de destino después del procedimiento de codificación de la imagen de destino o del bloque de destino. Cuando se realiza y se codifica una interpredicción para el bloque de destino, la información de movimiento utilizada en la interpredicción puede almacenarse. Sin embargo, la información de movimiento puede incluir una distorsión ocurrida durante el procedimiento de cálculo a través del método de coincidencia de bloques, y dado que la información de movimiento puede ser un valor seleccionado a través del procedimiento de optimización de distorsión de velocidad (RD) para el bloque de destino, puede resultar difícil reflejar perfectamente un movimiento real del bloque de destino. Dado que la información de movimiento del bloque de destino puede usarse no solo en el procedimiento de interpredicción del bloque de destino, sino que también influye en la imagen que se codifica después de la codificación de la imagen de destino, incluido el siguiente bloque al lado del bloque de destino codificado después de la codificación del bloque de destino y la imagen de destino, incluidos el siguiente bloque y el bloque de destino, la eficiencia de codificación general puede degradarse.
La FIG. 4 ilustra un ejemplo de un procedimiento de codificación que incluye un método para actualizar la información de movimiento de un bloque de destino. Un aparato de codificación codifica un bloque de destino (etapa, S400). El aparato de codificación puede derivar una muestra de predicción realizando una interpredicción para el bloque de destino y generar un bloque reconstruido del bloque de destino en base a la muestra de predicción. El aparato de codificación puede derivar la información de movimiento del bloque de destino para realizar la interpredicción y generar la información para la interpredicción del bloque de destino que incluye la información de movimiento. La información de movimiento puede denominarse primera información de movimiento.
Después de realizar el procedimiento de codificación del bloque de destino, el aparato de codificación calcula la información de movimiento modificado basada en el bloque reconstruido del bloque de destino (etapa, S410). El aparato de codificación puede calcular la información de movimiento modificado del bloque de destino a través de varios métodos. La información de movimiento modificado puede denominarse segunda información de movimiento. Al menos un método que incluye métodos directos como un método de flujo óptico (FO), un método de coincidencia de bloques, un método de dominio de frecuencia y métodos similares e indirectos, como un método de coincidencia de singularidad, un método que utiliza una propiedad estadística y similares se pueden aplicar al método. Además, los métodos directos y los métodos indirectos pueden aplicarse simultáneamente. Los contenidos detallados para el método de emparejamiento de bloques y el método FO se describirán a continuación.
El aparato de codificación puede ser difícil en el cálculo de la información de movimiento más precisa sólo con la información codificada del bloque de destino debido a las características del cálculo la información de movimiento del bloque de destino, y en consecuencia, el momento en el que el aparato de codificación calcula la información de movimiento modificado puede ser después de realizar el procedimiento de codificación de la imagen de destino en donde se incluye el bloque de destino, no después del procedimiento de codificación del bloque de destino, por ejemplo. Es decir, el aparato de codificación puede realizar un procedimiento de codificación de la imagen de destino y calcular la información de movimiento modificado basándose en más información que la de justo después de realizar el procedimiento de codificación del bloque de destino.
Mientras tanto, el aparato de codificación puede generar la información diferencial de actualización del vector de movimiento adicional que indica el diferencial entre el vector de movimiento existente incluido en la (primera) información de movimiento y la información de movimiento modificado y codificarla y dar salida a ella. La información diferencial de actualización del vector de movimiento puede transmitirse en la unidad de PU.
El aparato de codificación determina si se actualizará la información de movimiento del bloque de destino (etapa, S420). El aparato de codificación puede determinar si se actualizará la (primera) información de movimiento mediante una comparación de precisión entre la (primera) información de movimiento y la información de movimiento modificado. Por ejemplo, el aparato de codificación puede determinar si actualizar la (primera) información de movimiento usando una cantidad de diferencia entre una imagen derivada de la compensación de movimiento usando cada información de movimiento y una imagen original. En otras palabras, el aparato de codificación puede determinar si actualizar comparando una cantidad de datos de la señal residual entre un bloque de referencia derivado en base a cada información de movimiento y un bloque original del bloque de destino.
En la etapa S420, en el caso de que se determine actualizar la información de movimiento del bloque de destino, el aparato de codificación actualiza la información de movimiento del bloque de destino basado en la información de movimiento modificado y almacenar la información de movimiento modificado (etapa, S430). Por ejemplo, en el caso de que la cantidad de datos de la señal residual entre un bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque original sea menor que la cantidad de datos de la señal residual entre el bloque de referencia derivado en base a la (primera) información de movimiento y el bloque original, el aparato de codificación puede actualizar la (primera) información de movimiento basándose en la información de movimiento modificado. En este caso, el aparato de codificación puede actualizar la información de movimiento del bloque de destino sustituyendo la (primera) información de movimiento por la información de movimiento modificado y almacenar la información de movimiento actualizada que incluye sólo la información de movimiento modificado. Además, el aparato de codificación puede actualizar la información de movimiento del bloque de destino añadiendo la información de movimiento modificado a la (primera) información de movimiento y almacenar la información de movimiento actualizada incluyendo la (primera) información de movimiento y la información de movimiento modificado.
Mientras tanto, en la etapa S420, en el caso de que no se determina actualizar la información de movimiento del bloque de destino, el aparato de codificación actualiza la (primera) información de movimiento (etapa, S440). Por ejemplo, en el caso de que la cantidad de datos de la señal residual entre un bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque original no sea menor que la cantidad de datos de la señal residual entre el bloque de referencia derivado en base a la (primera) información de movimiento y el bloque original, el aparato de codificación puede almacenar la (primera) información de movimiento.
Por otro lado, aunque no se muestra, en el caso de que la información de movimiento modificado se deriva sin determinación de actualización a través de la comparación entre la (primera) información de movimiento se utiliza en la interpredicción y la información de movimiento modificado, el aparato de codificación puede actualizar la información de movimiento del bloque de destino basándose en la información de movimiento modificado.
Mientras tanto, puesto que el aparato de decodificación no está disponible para usar la imagen original, el aparato de decodificación puede recibir información adicional que indica si se va a actualizar el bloque de destino. Es decir, el aparato de codificación puede generar y codificar la información adicional que indica si se debe actualizar y enviar a través de un flujo de bits. Por ejemplo, la información adicional que indica si se debe actualizar puede denominarse bandera de actualización. El caso de que el bloque de actualización sea 1 puede indicar que la información de movimiento está actualizada y el caso de que el bloque de actualización sea 0 puede indicar que la información de movimiento no está actualizada. Por ejemplo, la bandera de actualización puede transmitirse en una unidad de PU. Alternativamente, la bandera de actualización puede transmitirse en una unidad de CU, una unidad de CTU o una unidad de segmento y puede transmitirse a través de un nivel superior, como una unidad de conjunto de parámetros de imagen (PPS) o una unidad de conjunto de parámetros de secuencia (SPS).
Además, el aparato de decodificación puede determinar si la actualización a través de la comparación entre la (primera) información de movimiento del bloque de destino y la información de movimiento modificado basado en el bloque reconstruido del bloque de destino sin recibir la bandera de actualización, y en el caso de que se determine que la información de movimiento del bloque de destino se actualiza, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino basándose en la información de movimiento modificado y almacenar la información de movimiento actualizada. Además, en el caso de que la información de movimiento modificado se derive sin determinación de actualización a través de la comparación entre la información de movimiento usada en la interpredicción y la información de movimiento modificado, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino en base a la información de movimiento modificado. En este caso, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino sustituyendo la (primera) información de movimiento por la información de movimiento modificado y almacenar la información de movimiento actualizada que incluye sólo la información de movimiento modificado. Además, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino añadiendo la información de movimiento modificado a la (primera) información de movimiento y almacenar la información de movimiento actualizada incluyendo la (primera) información de movimiento y la información de movimiento modificado.
En el caso de que el procedimiento de actualización de la información de movimiento se lleva a cabo después de que el procedimiento de codificación del bloque de destino, el procedimiento de codificación de un siguiente bloque al lado del bloque de destino de la siguiente orden de codificación de bloque de destino se puede realizar.
La FIG. 5 ilustra un ejemplo de procedimiento de decodificación que incluye un método para actualizar la información de movimiento de un bloque de destino. El procedimiento de decodificación se puede realizar de forma similar al procedimiento de codificación descrito anteriormente. Un aparato de decodificación decodifica un bloque de destino (etapa, S500). En el caso de que la interpredicción se aplique al bloque de destino, el aparato de decodificación puede obtener información para la interpredicción del bloque de destino a través de un flujo de bits. El aparato de decodificación puede derivar información de movimiento del bloque de destino basándose en la información para la interpredicción y derivar una muestra de predicción realizando la interpredicción para el bloque de destino. La información de movimiento puede denominarse la primera información de movimiento. El aparato de decodificación puede generar un bloque reconstruido del bloque de destino en base a la muestra de predicción.
El aparato de decodificación calcula información de movimiento modificado del bloque de destino (etapa, S510). El aparato de decodificación puede calcular la información de movimiento modificado a través de varios métodos. La información de movimiento modificado puede denominarse segunda información de movimiento. Al menos un método que incluye métodos directos como un método de flujo óptico (FO), un método de coincidencia de bloques, un método de dominio de frecuencia y métodos similares e indirectos, como un método de coincidencia de singularidad, un método que utiliza una propiedad estadística y similares se puede aplicar al método. Además, los métodos directos y los métodos indirectos pueden aplicarse simultáneamente. Los contenidos detallados para el método de emparejamiento de bloques y el método FO se describirán a continuación.
El aparato de decodificación puede ser difícil en el cálculo de la información de movimiento más precisa sólo con la información decodificada del bloque de destino debido a las características del cálculo de la información de movimiento del bloque de destino, y en consecuencia, el tiempo en el aparato de decodificación calcula la información de movimiento modificado puede ser después de realizar el procedimiento de decodificación de la imagen de destino en donde se incluye el bloque de destino, no después del procedimiento de decodificación del bloque de destino, por ejemplo. Es decir, el aparato de decodificación puede realizar un procedimiento de decodificación de la imagen de destino y calcular la información de movimiento modificado basándose en más información que la de justo después de realizar el procedimiento de decodificación del bloque de destino.
Mientras tanto, el aparato de decodificación puede también obtener generar información diferencial de actualización del vector de movimiento que indica diferencial entre el vector de movimiento existente incluido en la (primera) información de movimiento y la información de movimiento modificado a través de un flujo de bits. La información diferencial de actualización del vector de movimiento puede transmitirse en la unidad de PU. En este caso, el aparato de decodificación puede no calcular la información de movimiento modificado independientemente a través del método directo y el método indirecto descritos anteriormente, sino derivar la información de movimiento modificado sumando la (primera) información de movimiento y la información diferencial de actualización de vector de movimiento obtenida. Es decir, el aparato de decodificación puede derivar el vector de movimiento existente con un predictor de vector de movimiento (MVP) de la información de movimiento modificado y añadiendo la información diferencial de actualización del vector de movimiento al vector de movimiento existente y derivar el vector de movimiento modificado.
El aparato de decodificación determina si se actualizará la información de movimiento del bloque de destino (etapa, S520). El aparato de decodificación puede determinar si actualizar la (primera) información de movimiento mediante una comparación de precisión entre la (primera) información de movimiento y la información de movimiento modificado. Por ejemplo, el aparato de decodificación puede determinar si actualizar la (primera) información de movimiento usando una cantidad de diferencia entre un bloque de referencia derivado de la compensación de movimiento usando cada información de movimiento y el bloque reconstruido del bloque de destino. En otras palabras, el aparato de codificación puede determinar si actualizar mediante la comparación de una cantidad de datos de la señal residual entre un bloque de referencia derivado en base a cada información de movimiento y un bloque original del bloque de destino.
Mientras tanto, el aparato de decodificación recibe información adicional que indica si se actualiza desde el aparato de codificación y determinar si se debe actualizar la información de movimiento del bloque de destino basado en la información adicional. Por ejemplo, la información adicional que indica si se debe actualizar puede denominarse bandera de actualización. El caso de que el bloque de actualización sea 1 puede indicar que la información de movimiento está actualizada y el caso de que el bloque de actualización sea 0 puede indicar que la información de movimiento no está actualizada. Por ejemplo, la bandera de actualización puede transmitirse en una unidad de PU.
En la etapa S520, en el caso de que se determine para actualizar la información de movimiento del bloque de destino, el aparato de codificación actualiza la información de movimiento del bloque de destino basado en la información de movimiento modificado y almacenar la información de movimiento actualizado (etapa, S530). Por ejemplo, en el caso de que la cantidad de datos de la señal residual entre un bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque reconstruido sea menor que la cantidad de datos de la señal residual entre el bloque de referencia derivado en base a la (primera) información de movimiento y el bloque reconstruido, el aparato de decodificación puede actualizar la (primera) información de movimiento basándose en la información de movimiento modificado. En este caso, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino sustituyendo la (primera) información de movimiento por la información de movimiento modificado y almacenar la información de movimiento actualizada que incluye sólo la información de movimiento modificado. Además, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino añadiendo la información de movimiento modificado a la (primera) información de movimiento y almacenar la información de movimiento actualizada incluyendo la (primera) información de movimiento y la información de movimiento modificado.
Mientras tanto, en la etapa S520, en el caso de que no se determina actualizar la información de movimiento del bloque de destino, el aparato de decodificación almacena la (primera) información de movimiento (etapa, S540). Por ejemplo, en el caso de que la cantidad de datos de la señal residual entre un bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque reconstruido no sea menor que la cantidad de datos de la señal residual entre el bloque de referencia derivado en base a la (primera) información de movimiento y el bloque reconstruido, el aparato de decodificación puede almacenar la (primera) información de movimiento.
Por otro lado, aunque no se muestra, en el caso de que la información de movimiento modificado se deriva sin determinación de actualización a través de la comparación entre la (primera) información de movimiento y la información de movimiento modificado, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino basada en la información de movimiento modificado.
Mientras tanto, la información de movimiento almacenada y la información de movimiento para la transmisión pueden tener diferente resolución. En otras palabras, la unidad de vector de movimiento incluida en la información de movimiento modificado y la unidad de vector de movimiento incluida en la información de movimiento derivada en base a la información para la interpredicción pueden ser diferentes. Por ejemplo, el vector de unidad de movimiento de la información de movimiento derivada en base a la información para la interpredicción puede tener una unidad de 1/4 de muestra fraccionaria y el vector de unidad de movimiento de la información de movimiento modificado calculada en el aparato de decodificación puede tener una unidad de 1/8 de muestra fraccionaria o 1/16 de muestra fraccionaria. El aparato de decodificación puede ajustar la resolución a una resolución requerida para almacenar en el proceso de cálculo de la información de movimiento modificado o ajustar la resolución mediante un cálculo (p. ej., redondeo, multiplicación, etc.) en el proceso de almacenar la información de movimiento modificado. En el caso de que la resolución del vector de movimiento de la información de movimiento modificado sea mayor que el vector de movimiento de la información de movimiento derivada en base a la información para la interpredicción, se puede aumentar la precisión para una operación de escalado para un cálculo de información de movimiento contiguo temporal. Además, en el caso del aparato de decodificación cuyas resoluciones para la transmisión de la información de movimiento y para el funcionamiento interno son diferentes, existe el efecto de que la decodificación se puede realizar según el criterio de funcionamiento interno.
Mientras tanto, en el caso de que se aplica el método de correspondencia de bloques entre los métodos para calcular la información de movimiento modificado, la información de movimiento modificado se puede derivar como sigue. El método de coincidencia de bloques puede representarse como un método de estimación de movimiento utilizado en el aparato de codificación.
Un aparato de codificación puede medir un grado de distorsión mediante la acumulación de los valores diferenciales entre las muestras según las fases de un bloque de destino y un bloque de referencia y utilizar éstos como funciones de coste y, a continuación, derivan una referencia de bloque que es la más similar al bloque de destino. Es decir, el aparato de codificación puede derivar la información de movimiento modificado del bloque de destino basándose en un bloque de referencia cuyo residuo del bloque reconstruido (o bloque original) del bloque de destino es un mínimo. El bloque de referencia cuyo residuo es el mínimo puede denominarse bloque de referencia específico. La suma de diferencias absolutas (SAD) y el error cuadrático medio (MSE) pueden usarse para la función de representar los valores diferenciales entre muestras. El SAD, en donde se mide un grado de distorsión acumulando valores absolutos de los valores diferenciales entre muestras según las fases del bloque de destino y el bloque de referencia, puede derivarse en base a la siguiente ecuación.
[Ecuación 1]
altura anchura
SAD = ^ ^ |BloqueCorr (i, j) — Bloque^ (i, j) |
j i
En la presente memoria, el Bloquecorr(i,j) representa una muestra reconstruida (o muestra original) de (i,j) de coordenadas en el bloque reconstruido (o bloque original) del bloque de destino, el Bloqueref (i,j) representa una muestra reconstruida de la coordenada (i,j) en el bloque de referencia, el ancho es el ancho del bloque reconstruido (o bloque original) y la altura representa una altura del bloque reconstruido (o bloque original).
Además, el MSE, en el que se mide un grado de distorsión mediante la acumulación de los valores cuadrados de los valores diferenciales entre muestras según las fases del bloque de destino y el bloque de referencia, pueden derivarse sobre la base de la siguiente ecuación.
[Ecuación 2]
En la presente memoria, Bloquecorr(i,j) representa una muestra reconstruida (o muestra original) de (i,j) de coordenadas en el bloque reconstruido (o bloque original) del bloque de destino, Bloqueref(i,j) representa una muestra reconstruida de la coordenada (i,j) en el bloque de referencia, el ancho es el ancho del bloque reconstruido (o bloque original) y la altura representa la altura del bloque reconstruido (o bloque original).
Las complejidades de cálculo de los métodos para calcular la información de movimiento modificado se pueden cambiar de forma flexible en función de un intervalo de búsqueda para buscar en el bloque de referencia específico. En consecuencia, en el caso de calcular la información de movimiento modificado del bloque de destino utilizando el método de coincidencia de bloques, el aparato de decodificación puede buscar solo los bloques de referencia incluidos en un área predeterminada del bloque de referencia derivado a través de la (primera) información de movimiento que es utilizada en el procedimiento de decodificación del bloque de destino y, a través de esto, se puede mantener una baja complejidad de cálculo.
La FIG. 6 ilustra un ejemplo de un método para actualizar la información de movimiento del bloque de destino a través del método de coincidencia de bloques por el aparato de decodificación. El aparato de decodificación decodifica el bloque de destino (etapa, S600). En el caso de que la interpredicción se aplique al bloque de destino, el aparato de decodificación puede obtener información para la interpredicción del bloque de destino a través de un flujo de bits. Dado que el método de actualización de la información de movimiento del bloque de destino aplicado al aparato de codificación debe aplicarse al aparato de decodificación de la misma manera, el aparato de codificación y el aparato de decodificación pueden calcular la información de movimiento modificado del bloque de destino en base al bloque reconstruido del bloque de destino.
El aparato de decodificación realiza una estimación de movimiento en una imagen de referencia para la información de movimiento modificado mediante el bloque reconstruido (etapa, S610). El aparato de decodificación puede derivar una imagen de referencia para la información de movimiento derivada en base a la información para la interpredicción como la imagen de referencia específica para la información de movimiento modificado y detectar el bloque de referencia específica entre los bloques de referencia en la imagen de referencia. El bloque de referencia específico puede ser un bloque de referencia cuya suma de valores absolutos de los valores diferenciales entre muestras del bloque de referencia entre los bloques de referencia, es decir, suma de diferencias absolutas (SAD) es el mínimo. Además, el aparato de decodificación puede limitar el área de búsqueda para detectar el bloque de referencia específico a un área predeterminada del bloque de referencia representado a través de la información de movimiento derivada en base a la información para la interpredicción. En otras palabras, el aparato de decodificación puede derivar el bloque de referencia del cual SAD del bloque reconstruido es el mínimo entre los bloques de referencia ubicados en un área predeterminada del bloque de referencia como el bloque de referencia específico. El aparato de decodificación puede realizar una estimación de movimiento solo en un área predeterminada del bloque de referencia y, a través de esto, aumentar la confiabilidad de la información de movimiento modificado mientras disminuye la complejidad del cálculo.
En el caso de que un tamaño del bloque reconstruido del bloque de destino sea mayor que un tamaño específico, para calcular la información de movimiento modificado de manera elaborada, el aparato de decodificación divide el bloque reconstruido en pequeños bloques cuyos tamaños son más pequeños que el tamaño específico y calcula información de movimiento más detallada basada en cada uno de los bloques pequeños (etapa, S620). El tamaño específico puede estar preconfigurado y los bloques divididos en particiones pueden denominarse bloques sub reconstruidos. El aparato de decodificación puede dividir el bloque reconstruido en una pluralidad de sub bloques reconstruidos y derivar un sub bloque de referencia específico en una unidad de cada sub bloque reconstruido dentro de una imagen de referencia para la información de movimiento modificado basada en los bloques sub reconstruidos y derivar los sub bloques de referencia específicos derivados como el bloque de referencia específico. El aparato de decodificación puede calcular la información de movimiento modificado basándose en el bloque de referencia específico.
Mientras tanto, en el caso de que el método de flujo óptico (FO) se aplica entre el método para calcular la información de movimiento modificado, la información de movimiento modificado se puede derivar como sigue. El método FO puede calcularse basándose en la suposición de que la velocidad de un objeto en el bloque de destino es uniforme y los valores de muestra de las muestras que representan el objeto no se cambian en una imagen. En el caso de que el objeto se mueva 8x en el eje x y 8y en el eje y para el tiempo 8t, se puede establecer la siguiente ecuación.
[Ecuación 3]
En la presente memoria, I(x,y,t) indica un valor de muestra de la muestra reconstruida en la posición (x,y) que representa el objeto en el tiempo t, que se incluye en el bloque de destino.
En la Ecuación 3, cuando el término adecuado se expande en serie de Taylor, se puede derivar la siguiente ecuación.
[Ecuación 4]
Cuando se satisface la ecuación 4, se puede establecer la siguiente ecuación.
[Ecuación 5]
La ecuación 5 se reescribe, y la siguiente ecuación se puede derivar.
[Ecuación 6]
31 óx 31 Sy 31 fit
3x 5t 3y át 3t5t
- 31 v»+ ^<31>
dx''y -<31>
3t = 0
En la presente memoria, v<x>es un componente de vector en eje x del vector de movimiento calculado y v<y>es un componente de vector en el eje y del vector de movimiento calculado. El aparato de decodificación puede derivar valores, valores derivados parciales del objeto en el eje x, eje y, y eje t, y derivar el vector de movimiento (v<x>, v<y>) de la posición actual, es decir, la posición de la muestra reconstruida aplicando los valores derivados parciales a la ecuación. En este caso, p. ej., el aparato de decodificación puede configurar las muestras reconstruidas en el bloque reconstruido del bloque de destino que representa el objeto en muestras reconstruidas incluidas en una unidad de área de tamaño 3x3, y calcular el vector de movimiento (v<x>, v<y>) que acerca el término de la izquierda a 0 aplicando la ecuación a las muestras reconstruidas.
El formato de almacenamiento de la información de movimiento modificado del bloque de destino calculada por el aparato de codificación puede tener varios formatos, ya que puede ser utilizado para la imagen codificada después del procedimiento de codificación de la imagen de destino incluido en un siguiente bloque al lado del bloque de destino o el bloque de destino, puede ser beneficioso que la información de movimiento modificado se pueda almacenar en el mismo formato que la información de movimiento utilizada en la predicción del bloque de destino. La información de movimiento utilizada en la predicción puede incluir información sobre si es unipredicción o bipredicción, un índice de imagen de referencia y un vector de movimiento. La información de movimiento modificado puede calcularse para que tenga el mismo formato que la información de movimiento utilizada en la predicción.
En el caso de que solo haya una imagen de referencia de la imagen de destino, es decir, la bipredicción está disponible para realizarse excepto en el caso de que un valor de recuento de orden de imágenes (POC) de la imagen de destino es 1. Generalmente, el rendimiento de la predicción puede ser alto en el caso de que el aparato de codificación realice la bipredición en comparación con el caso de que el aparato de codificación realice la unipredicción. En consecuencia, en el caso de que la imagen de destino esté disponible para realizar la bipredicción, para mejorar la eficiencia de codificación general de una imagen mediante la propagación de información de movimiento precisa, el aparato de codificación puede calcular y actualizar la información de movimiento modificado del bloque de destino con la bipredicción a través del método descrito anteriormente. Sin embargo, incluso en el caso de que la imagen de destino esté disponible para realizar la bipredicción, es decir, incluso en el caso de que un valor de POC de la imagen de destino no sea 1, puede producirse una oclusión y puede ocurrir el caso de que la bipredicción no está disponible para realizarse. Se puede determinar que la oclusión ocurre cuando el movimiento se compensa en base a la información de movimiento modificado y la suma de los valores absolutos de los diferenciales de muestras de la muestra de predicción derivada por compensación de movimiento basada en la información de movimiento modificado y las muestras del bloque reconstruido (o bloque original) del bloque de destino es mayor que un valor umbral predeterminado. Por ejemplo, en el caso de que la información de movimiento modificado del bloque de destino sea la información de movimiento de bipredicción, cuando la suma de los valores absolutos de los diferenciales de muestras de la muestra de predicción derivada en base al vector de movimiento L0 incluido en la información de movimiento y las muestras del bloque reconstruido (o bloque original) del bloque de destino es mayor que un valor umbral predeterminado, según la predicción para L0, se puede determinar que ocurre la oclusión. Además, cuando la suma de los valores absolutos de los diferenciales de muestras de la muestra de predicción derivada en base al vector de movimiento L1 incluido en la información de movimiento modificado y las muestras del bloque reconstruido (o bloque original) del bloque de destino es mayor que un valor umbral predeterminado, según la predicción para L1, se puede determinar que se produce la oclusión. En el caso de que la oclusión se produzca mediante la predicción de L0 y L1, el aparato de codificación puede derivar la información de movimiento modificado como información de movimiento de unipredicción, excepto la información para la predicción de la lista en donde se produce la oclusión.
En el caso de que la oclusión se produce por la predicción para uno cualquiera de L0 y L1 o que está disponible para calcular la información de movimiento modificado, el método de actualización de la información de movimiento del bloque de destino se puede aplicar por el uso de la información de movimiento del bloque al lado del bloque de destino y, alternativamente, el método de no actualizar la información de movimiento del bloque de destino puede aplicarse en base a la información de movimiento modificado. Para almacenar y propagar información de movimiento precisa, en el caso descrito anteriormente, el método de no actualizar la información de movimiento del bloque de destino en base a la información de movimiento modificado puede ser más apropiado.
El índice de imagen de referencia L0 y el índice de imagen de referencia L1 de la información de movimiento modificado pueden indicar una de las imágenes de referencia en la lista de imágenes de referencia (L0 o L1). La imagen de referencia indicada por el índice de imagen de referencia de la información de movimiento modificado puede denominarse imagen de referencia específica. Un método para seleccionar una de varias imágenes de referencia en la lista de imágenes de referencia puede ser como se describe a continuación.
Por ejemplo, el aparato de codificación puede seleccionar una imagen de referencia que es la más recientemente codificada entre las imágenes de referencia incluidas en la lista de imágenes de referencia. Es decir, el aparato de codificación puede generar un índice de imágenes de referencia incluido en la información de movimiento modificado que indica la imagen de referencia que es la más recientemente codificada entre las imágenes de referencia incluidas en la lista de imágenes de referencia.
Además, el aparato de codificación puede seleccionar una imagen de referencia que tiene un POC, que es el más cercano al recuento de orden de las imágenes (POC) de la imagen corriente en la lista de imágenes de referencia. Es decir, el aparato de codificación puede generar un índice de imagen de referencia incluido en la información de movimiento modificado que indica la imagen de referencia que tiene un POC cuyo valor absoluto de la diferencia con el POC de la imagen de destino, incluido el bloque de destino entre las imágenes de referencia incluidas en la lista de imágenes de referencia.
Además, el aparato de codificación puede seleccionar una imagen de referencia que pertenece a una capa inferior en la estructura jerárquica en la lista de imágenes de referencia. La imagen de referencia que pertenece a una capa inferior puede ser de pieza I o una imagen de referencia codificada aplicando un parámetro de cuantificación baja (CP).
Además, el aparato de codificación puede seleccionar una imagen de referencia de que la fiabilidad de la compensación de movimiento es más alta en la lista de imágenes de referencia. Es decir, el aparato de codificación puede derivar un bloque de referencia específico del bloque reconstruido (o bloque original) del bloque de destino entre los bloques de referencia ubicados en las imágenes de referencia incluidas en la lista de imágenes de referencia y generar un índice de imágenes de referencia incluido en la información de movimiento modificado que indica la imagen de referencia, incluido el bloque de referencia específico que se deriva.
Los métodos de generación del índice de imagen de referencia de la información de movimiento modificado descrita anteriormente se pueden aplicar independientemente o los métodos pueden aplicarse en combinación.
El vector de movimiento incluido en la información de movimiento modificado se puede derivar a través de al menos un método que incluye el método FO, el método de bloque coincidente, el método de dominio de la frecuencia, y similares, y puede ser necesario para tener el vector de movimiento en una unidad de al menos bloque mínimo.
La FIG. 7 ilustra imágenes de referencia que se pueden utilizar en la información de movimiento modificado.
Haciendo referencia a la Fig. 7, en el caso de que una imagen de destino sea una imagen cuyo valor POC sea 3, se puede realizar la bipredicción para la imagen de destino, se puede realizar una imagen cuyo valor POC es 2 y una imagen cuyo valor POC es 4 puede ser derivada como imágenes de referencia de la imagen de destino. L0 de la imagen de destino puede incluir una imagen cuyo valor POC es 2 y una imagen cuyo valor POC es 0, y los respectivos valores correspondientes de los índices de la imagen de referencia L0 pueden ser 0 y 1. Además, L1 de la imagen de destino puede incluir una imagen cuyo valor POC es 4 y una imagen cuyo valor POC es 8, y los valores correspondientes respectivos de los índices de imagen de referencia L1 pueden ser 0 y 1. En este caso, el aparato de codificación puede seleccionar imágenes de referencia específicas de la información de movimiento modificado de la imagen de destino como una imagen de referencia que tiene un POC del cual el valor absoluto de una diferencia de la imagen de destino entre las imágenes de referencia en cada lista de imágenes de referencia es el más pequeño. Además, el aparato de codificación puede derivar un vector de movimiento de la información de movimiento modificado en una unidad de bloque de tamaño 4x4 en la imagen de destino. El método FO puede aplicarse al método de derivar el vector de movimiento. El vector de movimiento derivado en base a una imagen de referencia cuyo valor POC es 2 puede almacenarse en la información de movimiento L0 incluida en la información de movimiento modificado y el vector de movimiento derivado basado en una imagen de referencia cuyo valor POC es 4 puede almacenarse en la información de movimiento L1 incluida en la información de movimiento modificado.
Además, en referencia a la fig. 7, en el caso de que una imagen de destino sea una imagen cuyo valor POC sea 8, la imagen de destino puede realizar la predicción única y una imagen cuyo valor POC sea 0 puede derivarse como imagen de referencia de la imagen de destino. L0 de la imagen de destino puede incluir una imagen de referencia cuyo valor POC es 0 y un valor del índice de imagen de referencia L0 correspondiente a la imagen de referencia puede ser 0. En este caso, el aparato de codificación puede seleccionar una imagen de referencia específica de la información de movimiento modificado de la imagen de destino como una imagen de referencia que tiene un POC cuyo valor absoluto de una diferencia con el POC de la imagen de destino entre las imágenes de referencia incluidas en L0 es el más pequeño. Además, el aparato de codificación puede derivar un vector de movimiento de la información de movimiento modificado en una unidad de bloque de tamaño 4x4 en la imagen corriente. El método FO puede aplicarse al método de derivar el vector de movimiento. El método de coincidencia de bloques se puede aplicar al método de derivar el vector de movimiento, y el vector de movimiento derivado en base a una imagen de referencia cuyo valor POC es 0 puede almacenarse en información de movimiento L0 incluida en la información de movimiento modificado.
Con referencia a las realizaciones descritas anteriormente, la imagen de referencia de la información de movimiento modificado de la imagen de destino puede derivarse para indicar una imagen de referencia que tiene un POC cuyo valor absoluto de una diferencia del POC de la imagen de destino entre las imágenes de referencia incluidas en la lista de imágenes de referencia es el más pequeño, y el vector de movimiento de la información de movimiento modificado puede calcularse en una unidad de bloque de tamaño 4x4. En el caso de que la imagen de destino sea una imagen de la cual POC es 8, la unipredicción se realiza ya que la imagen de destino es una imagen en donde la interpredicción se realiza en primer lugar entre las imágenes mostradas en la FIG. 7, pero dado que la imagen de destino es una imagen en donde POC es 3, la bipredicción está disponible y la información de movimiento modificado de la imagen de destino puede determinarse como información de movimiento de bipredicción. Además, incluso en el caso de que la imagen de destino sea una imagen de la cual POC es 3, en el caso de que la información de movimiento modificado se calcule y actualice en una unidad de bloque en la imagen de destino, el aparato de codificación puede determinar una selección de un formato de información de movimiento que incluye la información de movimiento de bipredicción y la información de movimiento de unipredicción en una unidad de bloque.
Además, a diferencia de la realización descrita anteriormente, el índice de imagen de referencia de la información de movimiento modificado puede ser generado para indicar una imagen de referencia seleccionada por una estructura jerárquica, no la imagen de referencia que tiene un POC cuyo valor absoluto de una diferencia del POC de la imagen de destino entre las imágenes de referencia incluidas en la lista de imágenes de referencia es el más pequeño. Por ejemplo, en el caso de que una imagen de destino sea una imagen en donde POC sea 5, el índice de imagen de referencia L0 de la información de movimiento modificado de la imagen de destino puede indicar una imagen cuyo valor de POC es 0, no una imagen cuyo valor de POC es 4. En la sincronización después de realizar el procedimiento de codificación de la imagen de destino, la mayor parte de una imagen de referencia que se codificó más recientemente puede indicar una imagen de referencia que tiene un POC cuyo valor absoluto de una diferencia con el POC de la imagen de destino es el más pequeño. Sin embargo, como en el caso de una imagen cuyo valor POC es 6, una imagen de referencia que se codificó más recientemente es una imagen de referencia cuyo valor POC es 2, y una imagen que tiene un POC cuyo valor absoluto de una diferencia con el POC de la imagen de destino es el más pequeño es una imagen cuyo valor POC es 4 y, en consecuencia, puede ocurrir el caso de indicar una imagen de referencia diferente.
En el caso de que la información de movimiento del bloque de destino se actualice a la información de movimiento modificado a través del método descrito anteriormente, la interpredicción de un siguiente bloque al lado del bloque de destino se puede realizar utilizando la información de movimiento modificado (el bloque de destino puede denominarse primer bloque y el siguiente bloque puede denominarse segundo bloque). El método de utilizar la información de movimiento modificado en el modo de interpredicción del siguiente bloque puede incluir un método de indexar y transmitir la información de movimiento modificado y un método de representar el vector de movimiento del siguiente bloque como un valor diferencial entre el vector de movimiento del bloque de destino y el vector de movimiento del siguiente bloque. El método de indexar y transmitir la información de movimiento modificado puede ser un método en el caso de que el modo de fusión se aplique al siguiente bloque entre los modos de interpredicción, y el método de representar el vector de movimiento del siguiente bloque como un valor diferencial entre el vector de movimiento del bloque de destino y el vector de movimiento del siguiente bloque pueden ser un método en el caso de que el modo AMVP se aplique al siguiente bloque entre los modos de interpredicción.
La FIG. 8 ilustra un ejemplo de una lista de candidatos a la fusión de un siguiente bloque al lado de los bloques de destino en el caso de que la información de movimiento de los bloques de destino se actualice a la información de movimiento modificado de los bloques de destino. Haciendo referencia a la FIG. 8, el aparato y el método de codificación configuran la lista de candidatos a la fusión del siguiente bloque que incluye los bloques de destino. El aparato y el método de codificación transmiten un índice de fusión que indica un bloque que es el más similar a la información de movimiento del siguiente bloque entre los bloques incluidos en la lista de candidatos a la fusión. En este caso, la información de movimiento actualizada de los bloques de destino se usa para la información de movimiento de un bloque candidato contiguo espacial del siguiente bloque, o alternativamente, se usa para la información de movimiento de un bloque candidato contiguo temporal. La información de movimiento de los bloques de destino puede incluir la información de movimiento modificado de los bloques de destino. Como se muestra en la FIG. 8, la información de movimiento del bloque candidato contiguo espacial representa una información de movimiento entre la información de movimiento almacenada de los bloques al lado del siguiente bloque en las posiciones A1, B1, B0, A0 y B2. La información de movimiento de los bloques de destino codificados antes de la codificación del siguiente bloque puede actualizarse, y la información de movimiento actualizada puede influir en el procedimiento de codificación del siguiente bloque. En el caso de que la información de movimiento que incluye un error se propague al siguiente bloque a través del modo de fusión, el error puede acumularse y propagarse, pero el error propagado puede reducirse actualizando la información de movimiento en cada bloque mediante el método descrito anteriormente.
FIG. 9 ilustra un ejemplo de una lista de candidatos a la fusión de un siguiente bloque al lado de los bloques de destino en el caso de que la información de movimiento de los bloques de destino se actualice a la información de movimiento modificado de los bloques de destino. La (primera) información de movimiento y la información de movimiento modificado utilizadas en la predicción del bloque de destino al lado del siguiente bloque pueden almacenarse. En este caso, el aparato de codificación puede configurar el bloque de destino que indica la información de movimiento modificado del bloque de destino que se calcula nuevamente en la lista de candidatos a la fusión del siguiente bloque como un bloque de candidatos a la fusión independiente. Como se muestra en la FIG. 9, el bloque de destino que indica la información de movimiento modificado del bloque de destino puede insertarse en la lista de candidatos a la fusión junto al bloque de destino que indica la (primera) información de movimiento que se aplica en el procedimiento de codificación del bloque de destino al lado del siguiente bloque. Además, se puede cambiar la prioridad de la lista de candidatos a la fusión y se puede configurar de manera diferente el número de posiciones insertadas.
Aunque A1 y B1 se ilustran como un ejemplo de los bloques de destino en donde la información de movimiento modificado se deriva, esto es sólo un ejemplo, y la información de movimiento modificado puede derivar incluso para el restante A0, B0, B2, A y T1, y la lista de candidatos para la fusión se puede configurar basándose en ella.
Por ejemplo, el siguiente bloque puede estar ubicado en una imagen diferente del bloque de destino, y el bloque de candidatos contiguos temporal del bloque siguiente puede ser incluido en la lista de candidatos de combinación. La información de movimiento del bloque candidato contiguo temporal puede seleccionarse mediante el índice de fusión del siguiente bloque. En este caso, la información de movimiento del bloque candidato contiguo temporal puede actualizarse a la información de movimiento modificado a través del método descrito anteriormente, y el bloque candidato contiguo temporal que indica la información de movimiento actualizada puede insertarse en la lista de candidatos combinados del siguiente bloque. Además, mediante el método descrito anteriormente, la (primera) información de movimiento y la información de movimiento modificado del bloque candidato contiguo temporal pueden almacenarse por separado. En este caso, en el procedimiento de generar la lista de candidatos a la fusión del siguiente bloque, el bloque de candidatos contiguo temporal que indica la información de movimiento modificado puede insertarse como un candidato adicional de la lista de candidatos a la fusión.
A diferencia del contenido mostrado en la FIG. 9, el modo AMVP se puede aplicar al siguiente bloque. En el caso de que el modo AMVP se aplique al siguiente bloque, el aparato de codificación puede generar una lista de candidatos de predictores de vector de movimiento basada en la información de movimiento de los bloques contiguos del siguiente bloque.
La FIG. 10 ilustra un ejemplo de una lista de candidatos de predictores de vectores de movimiento de un siguiente bloque al lado del bloque de destino en el caso de que la información de movimiento del bloque de destino se actualice basándose en la información de movimiento modificado del bloque de destino. El aparato de codificación puede seleccionar la información de movimiento según una condición específica entre la información de movimiento incluida en la lista de candidatos de predictores de vector de movimiento y transmitir un valor de diferencia de vector de movimiento (MVD) a partir de un índice que indica la información de movimiento seleccionada, el vector de movimiento del vector de movimiento de información de movimiento seleccionado de la información de movimiento del siguiente bloque. Al igual que el método de insertar el bloque que indica la información de movimiento actualizada del siguiente bloque contiguo en la lista de candidatos a la fusión en el bloque de candidatos a la fusión espacial o temporal en el modo de fusión descrito anteriormente, el procedimiento de generar una lista que incluye la información de movimiento de los bloques contiguos del modo AMVP se puede aplicar al método de insertar la información de movimiento actualizada del bloque contiguo como un candidato de predictor de vector de movimiento espacial o temporal (MVP). Como se muestra en la FIG. 10, el aparato de codificación puede detectar si la información de movimiento actualizada del bloque de destino A0 y el bloque de destino A1 del siguiente bloque contiguo está según una condición específica predefinida en el orden de la dirección de la flecha y derivar la información de movimiento actualizada según la condición específica que se detecta en primer lugar como MVP A que se incluye en la lista de candidatos del predictor de movimiento.
Además, el aparato de codificación puede detectar si la información de movimiento actualizada del bloque de destino B0, bloque de destino B1 y bloque de destino B2 del siguiente bloque contiguo está según una condición específica predefinida en un orden de la dirección de la flecha y derivar la información de movimiento actualizada según la condición específica que se detecta en primer lugar como MVP B que se incluye en la lista de candidatos de predictores de movimiento.
Además, el siguiente bloque se puede posicionar en una imagen diferente desde el bloque de destino, y el candidato MVP temporal del siguiente bloque puede ser incluido en la lista de candidatos predictores de vector de movimiento. Como se muestra en la FIG. 10, el aparato de codificación puede detectar si está según una condición específica predefinida en un orden de la información de movimiento actualizado del bloque de destino TO ubicado en la imagen de referencia del siguiente bloque a la información de movimiento actualizada del bloque de destino T1 y derivar la información de movimiento actualizada según la condición específica que se detecta en primer lugar como MVP Col que se incluye en la lista de candidatos de predictores de movimiento. En el caso de que el MVP A, el MVP B y/o el MVP Col sean la información de movimiento actualizada, al haber sido ésta reemplazada por la información de movimiento modificado, la información de movimiento actualizada puede usarse para el candidato predictor de vector de movimiento del siguiente bloque.
Mientras tanto, en el caso de que un número más pequeño de los candidatos MVP en la lista de candidatos de predictores de movimiento se deriva de un número específico, el aparato de codificación deriva el vector cero como MVP cero y lo incluye en la lista de candidatos predictores de movimiento.
FIG. 11 ilustra un ejemplo de una lista de candidatos de predictores de vectores de movimiento de un siguiente bloque al lado del bloque de destino en el caso de que la información de movimiento del bloque de destino se actualice basándose en la información de movimiento modificado del bloque de destino. En el caso de que la información de movimiento del bloque de destino sea la información de movimiento actualizada que incluya la información de movimiento modificado y la información de movimiento existente, el aparato de codificación puede detectar si la información de movimiento existente del bloque de destino A0 y el bloque de destino A1 del siguiente bloque contiguo está según una condición específica en el orden de la dirección de la flecha y deriva la información de movimiento existente según la condición específica que se detecta en primer lugar como MVP A que se incluye en la lista de candidatos de predictores de movimiento.
Además, el aparato de codificación puede detectar si la información de movimiento modificado del bloque de destino A0 y el bloque de destino A1 está según una condición específica en un orden de la dirección de la flecha y derivar la información de movimiento modificado según la condición específica que se detecta en primer lugar como MVP A actualizado que se incluye en la lista de candidatos del predictor de movimiento.
Además, el aparato de codificación puede detectar si la información de movimiento actual de bloque de destino B0, bloque de destino B1 y bloque de destino B2 del siguiente bloque contiguo está según una condición específica predefinida en un orden de la dirección de la flecha y derivar la información de movimiento existente según la condición específica que se detecta en primer lugar como MVP B que se incluye en la lista de candidatos de predictores de movimiento.
Además, el aparato de codificación puede detectar si la información de movimiento modificado de bloque de destino B0, bloque de destino B1 y bloque de destino B2 está según una condición específica en un orden de la dirección de la flecha y derivar la información de movimiento actualizada de conformidad con la condición específica que se detecta en primer lugar como MVP B actualizado que se incluye en la lista de candidatos del predictor de movimiento.
Además, el aparato de codificación puede detectar si está según una condición específica en un orden de la información de movimiento existente del bloque de destino TO ubicado en la imagen de referencia del siguiente bloque a la información de movimiento existente del bloque de destino T1 y derivar la información de movimiento existente según la condición específica que se detecta en primer lugar como MVP Col que se incluye en la lista de candidatos del predictor de movimiento.
Además, el aparato de codificación puede detectar si está según una condición específica en un orden de la información de movimiento modificado del bloque de destino TO situado en la imagen de referencia del siguiente bloque a la información de movimiento modificada del bloque de destino T1 y derivar la información de movimiento modificado según la condición específica que se detecta en primer lugar como MVP Col que se incluye en la lista de candidatos de predictores de movimiento.
Mientras tanto, en el caso de que un número más pequeño de los candidatos MVP en la lista de candidatos de predictores de movimiento se deriva de un número específico, el aparato de codificación deriva el vector cero como MVP cero y lo incluye en la lista de candidatos de predictores de movimiento.
La FIG. 12 ilustra esquemáticamente un método de codificación de vídeo mediante un aparato de codificación según la presente invención. El método mostrado en la FIG. 12 puede realizarse mediante el aparato de codificación mostrado en la FIG. 1. En un ejemplo detallado, las etapas S1200 a S1230 de la FIG. 12 pueden realizarse mediante una unidad de predicción del aparato de codificación y la etapa S1240 puede realizarse mediante una memoria del aparato de codificación.
El aparato de codificación genera la información de movimiento para el bloque de destino (etapa, S1200). El aparato de codificación puede aplicar la predicción mutua al bloque de destino. En el caso de que la interpredicción se aplique al bloque de destino, el aparato de codificación puede generar la información de movimiento para el bloque de destino aplicando al menos uno del modo de salto, el modo de fusión y el modo de predicción de vector de movimiento adaptativo (AMVP). La información de movimiento puede denominarse primera información de movimiento. En el caso del modo de salto y el modo de fusión, el aparato de codificación puede generar la información de movimiento para el bloque de destino basándose en la información de movimiento de un bloque al lado del bloque de destino. La información de movimiento puede incluir un vector de movimiento y un índice de imagen de referencia. La información de movimiento puede ser información de movimiento de bipredicción o información de movimiento de unipredicción. La información de movimiento de bipredicción puede incluir índice de imagen de referencia L0 y vector de movimiento L0, índice de imagen de referencia L1 y vector de movimiento L1, y la información de movimiento unidireccional puede incluir índice de imagen de referencia L0 y vector de movimiento L0 o índice de imagen de referencia L1 y vector de movimiento L1. L0 indica la lista de imágenes de referencia L0 (lista 0) y L1 indica la lista de imágenes de referencia L1 (lista 1).
En el caso del modo AMVP, el aparato de codificación puede derivar el vector de movimiento del bloque de destino utilizando el vector de movimiento del bloque al lado del bloque de destino como un predictor de vector de movimiento (MVP) y generar la información de movimiento que incluye el vector de movimiento y el índice de imagen de referencia para el vector de movimiento.
El aparato de codificación se deriva una muestra de predicción mediante la realización de la interpredicción para el bloque de destino en base a la información de movimiento (etapa, S1210). El aparato de codificación puede generar la muestra de predicción del bloque de destino basándose en el índice de imagen de referencia y el vector de movimiento incluido en la información de movimiento.
El aparato de codificación genera un bloque reconstruido sobre la base de la muestra de predicción (etapa, S1220). El aparato de codificación puede generar el bloque reconstruido del bloque de destino basándose en la muestra de predicción o generar una señal residual del bloque de destino y generar el bloque reconstruido del bloque de destino basándose en la señal residual y la muestra de predicción.
El aparato de codificación genera información de movimiento modificado para el bloque de destino en base al bloque reconstruido (etapa, S1230). El aparato de codificación puede calcular el índice de imagen de referencia modificada que indica una imagen de referencia específica para la información de movimiento modificado y un vector de movimiento modificado para la imagen de referencia específica a través de varios métodos. La información de movimiento modificado puede denominarse segunda información de movimiento. Al menos un método que incluye métodos directos como un método de flujo óptico (FO), un método de coincidencia de bloques, un método de dominio de frecuencia y métodos similares e indirectos, como un método de coincidencia de singularidad, un método que utiliza una propiedad estadística y similares se pueden aplicar al método. Además, los métodos directos y los métodos indirectos pueden aplicarse simultáneamente.
Por ejemplo, el aparato de codificación puede generar la información de movimiento modificado a través del método de coincidencia de bloques. En este caso, el aparato de codificación puede medir un grado de distorsión acumulando valores diferenciales entre muestras según las fases del bloque reconstruido del bloque de destino y el bloque de referencia y usarlos como funciones de costo, y luego, detectar un bloque de referencia específico del bloque reconstruido. El aparato de codificación puede generar la información de movimiento modificado basándose en el bloque de referencia específico detectado. En otras palabras, el aparato de codificación puede generar la información de movimiento modificado que incluye el índice de imagen de referencia modificado que indica la imagen de referencia específico y el vector de movimiento modificado que indica el bloque de referencia específico en la imagen de referencia específica. El aparato de codificación puede detectar el bloque de referencia cuya suma de los valores absolutos (o valores cuadrados) de los diferenciales entre muestras según la fase del bloque reconstruido del bloque de destino entre los bloques de referencia en la imagen de referencia específica como el bloque de referencia específico es un mínimo y derivar la información de movimiento modificado en función del bloque de referencia específico. Como método para representar la suma de los valores absolutos de los diferenciales, se puede utilizar la suma de las diferencias absolutas (SAD). En este caso, la suma de los valores absolutos de los diferenciales se puede calcular utilizando la Ecuación 1 descrita anteriormente. Además, como método para representar la suma de los valores absolutos de los diferenciales, se puede utilizar el error cuadrático medio (MSE). En este caso, la suma de los valores absolutos de los diferenciales se puede calcular utilizando la Ecuación 2 descrita anteriormente.
Además, la imagen de referencia específica para la información de movimiento modificado puede ser derivada como la referencia de la imagen indicada por el índice de imagen de referencia incluido en la (primera) información de movimiento, y el área de búsqueda para detectar el bloque de referencia específica puede ser limitada a los bloques de referencia ubicados en un área predeterminada del bloque de referencia derivado en la imagen de referencia en base al vector de movimiento relacionado con la imagen de referencia incluida en la (primera) información de movimiento. Es decir, el aparato de codificación puede derivar el bloque de referencia del cual SAD del bloque reconstruido es el mínimo entre los bloques de referencia ubicados en un área predeterminada del bloque de referencia derivado en la imagen de referencia como el bloque de referencia específico basado en el vector de movimiento relacionado a la imagen de referencia incluida en la (primera) información de movimiento.
Además, en el caso de que un tamaño del bloque reconstruido es mayor que un tamaño predeterminado, el bloque reconstruido puede ser dividido en una pluralidad de bloques sub reconstruidos, y un bloque sub reconstruido específico puede derivar en una unidad de sub bloque reconstruido en la imagen de referencia específica. En este caso, el aparato de codificación puede derivar el bloque de referencia específico basándose en los sub bloques reconstruidos específicos derivados.
Como otro ejemplo, el aparato de codificación puede generar la información de movimiento modificado a través del método FO. En este caso, el aparato de codificación puede calcular el vector de movimiento para la información de movimiento modificado del bloque de destino basándose en la suposición de que la velocidad de un objeto en el bloque de destino es uniforme y los valores de muestra de las muestras que representan el objeto no se modifican en una imagen. El vector de movimiento se puede calcular mediante la Ecuación 6 descrita anteriormente. El área de las muestras que indica el objeto incluido en el bloque de destino puede configurarse como un área de tamaño 3x3.
En el caso de cálculo de la información de movimiento modificado a través de los métodos descritos anteriormente, el aparato de codificación puede calcular la información de movimiento modificado a fin de tener el mismo formato que la (primera) información de movimiento. Es decir, el aparato de codificación puede calcular la información de movimiento modificado para tener el mismo formato que la información de movimiento entre la información de movimiento de bipredicción y la información de movimiento de unipredicción. La información de movimiento de bipredicción puede incluir índice de imagen de referencia L0 y vector de movimiento L0, índice de imagen de referencia L1 y vector de movimiento L1, y la información de movimiento unidireccional puede incluir índice de imagen de referencia L0 y vector de movimiento L0 o índice de imagen de referencia L1 y vector de movimiento L1. L0 indica la lista de imágenes de referencia L0 (lista 0) y L1 indica la lista de imágenes de referencia L1 (lista 1).
Además, la bipredicción está disponible para ser realizada en la imagen de destino en donde está incluido el bloque de destino, el aparato de codificación puede calcular la información de movimiento modificado como la información de movimiento de bipredicción a través del método descrito anteriormente.
Sin embargo, después de que la información de movimiento modificado se calcula como la información de movimiento de bipredicción, en el caso de que se produzca una oclusión en uno de los bloques de referencia específicos derivados por la información de movimiento de bipredicción, el aparato de codificación puede derivar la información de movimiento modificado como la información de movimiento de unipredicción, excepto la información de movimiento para la lista de imágenes de referencia de la imagen de referencia específica en donde se incluye el bloque de referencia específico en donde ocurre la oclusión. Se puede determinar si se produjo la oclusión cuando el valor diferencial entre las muestras según la fase del bloque de referencia derivado en base a la información de movimiento modificado y el bloque reconstruido del bloque de destino es mayor que un valor umbral específico. El valor de umbral puede estar preconfigurado.
Por ejemplo, el aparato de codificación calcula la información de movimiento modificado como la información de movimiento de bipredicción, y en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado en base al vector de movimiento L0 e índice de imagen de referencia L0 de la información de movimiento modificado y el bloque reconstruido del bloque de destino es mayor que el valor umbral preconfigurado, el aparato de codificación puede derivar la información de movimiento modificado como la información de movimiento de unipredicción que incluye el vector de movimiento L1 y el índice de imagen de referencia L1.
En otro ejemplo, el aparato de codificación calcula la información de movimiento modificado como la información de movimiento de bipredicción, y en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado basado en el vector de movimiento L1 y el índice de imagen de referencia L1 de la información de movimiento modificado y el bloque reconstruido del bloque de destino es mayor que el valor umbral preconfigurado, el aparato de codificación puede derivar la información de movimiento modificado como información de movimiento de unipredicción que incluye el vector de movimiento L0 y el índice de imagen de referencia L0.
Además, en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado basado en el vector de movimiento L0 y el índice de imagen de referencia L0 y el bloque reconstruido del bloque de destino es mayor que el valor umbral preconfigurado y en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado en base al vector de movimiento L1 y el índice de imagen de referencia L1 y el bloque reconstruido del bloque de destino sea mayor que el valor umbral preconfigurado, el aparato de codificación puede derivar la información de movimiento del bloque al lado del bloque de destino como la información de movimiento modificado o puede no calcular la información de movimiento modificado.
Mientras tanto, el aparato de codificación puede seleccionar la imagen de referencia específica por el índice de imagen de referencia modificado incluido en la información de movimiento modificado a través de diversos métodos.
Por ejemplo, el aparato de codificación puede seleccionar la imagen de referencia que es la más recientemente codificada entre las imágenes de referencia incluidas en la lista de imágenes de referencia L0 y generar el índice de imagen de referencia L0 modificada que indica la imagen de referencia. Además, el aparato de codificación puede seleccionar la imagen de referencia que es la más recientemente codificada entre las imágenes de referencia incluidas en la lista de imágenes de referencia L1 y generar el índice de imagen de referencia L1 modificado que indica la imagen de referencia.
En otro ejemplo, el aparato de codificación puede seleccionar la imagen de referencia que tiene un POC en la que un valor absoluto de una diferencia de un recuento de orden de las imágenes (POC) de la imagen de destino entre las imágenes de referencia se incluye en el índice de imágenes de referencia L0 y se genera el índice de imagen de referencia L0 modificado que indica la imagen de referencia. Además, el aparato de codificación puede seleccionar la imagen de referencia que tiene un POC del cual un valor absoluto de una diferencia de un recuento de orden de imagen (POC) de la imagen de destino entre las imágenes de referencia se incluye en el índice de imagen de referencia L1 y se genera el índice de imagen de referencia L1 modificada que indica la imagen de referencia.
En otro ejemplo, el aparato de codificación puede seleccionar la imagen de referencia que pertenece a la capa más baja en la estructura jerárquica entre las imágenes de referencia incluidas en cada una de las listas de imágenes de referencia y generar el índice de imagen de referencia modificado que indica la imagen de referencia. La imagen de referencia que pertenece a la capa más baja puede ser la pieza I o una imagen de referencia que se codifica aplicando un parámetro de cuantificación baja (CP).
En otro ejemplo, el aparato de codificación puede seleccionar la imagen de referencia que incluye un bloque de referencia en el que la fiabilidad de la compensación de movimiento es la más alta en la lista de imágenes de referencia y generar el índice de imagen de referencia modificado que indica la imagen de referencia. En otras palabras, el aparato de codificación puede derivar el bloque de referencia específico del bloque reconstruido del bloque de destino basándose en las imágenes de referencia incluidas en la lista de imágenes de referencia y generar el índice de imagen de referencia modificado que indica la imagen de referencia específica que incluye el bloque de referencia específico derivado.
Los métodos de generación del índice de imagen de referencia modificada de la información de movimiento modificado descrita anteriormente se pueden aplicar independientemente o los métodos pueden aplicarse en combinación.
Además, aunque no se muestra, el aparato de codificación puede generar la información de movimiento modificado del bloque de destino basado en el bloque original del bloque de destino. El aparato de codificación puede derivar el bloque de referencia específico del bloque original entre los bloques de referencia incluidos en las imágenes de referencia y generar la información de movimiento modificado que indica el bloque de referencia específico derivado.
El aparato de codificación actualiza la información de movimiento del bloque de destino basado en la información de movimiento modificado (etapa, S1240). El aparato de codificación puede almacenar la información de movimiento modificado y actualizar la información de movimiento del bloque de destino. El aparato de codificación puede actualizar la información de movimiento del bloque de destino mediante el documento sustituyendo la información de movimiento utilizada para predecir el bloque de destino por la información de movimiento modificado. Además, el aparato de codificación puede actualizar la información de movimiento del bloque de destino almacenando toda la información de movimiento y la información de movimiento modificado utilizada para predecir el bloque de destino. La información de movimiento actualizada puede usarse para la información de movimiento del siguiente bloque al lado del bloque de destino. Por ejemplo, el modo de fusión se aplica al siguiente bloque contiguo al del bloque de destino, la lista de candidatos a la fusión del siguiente bloque puede incluir el bloque de destino. En el caso de que la información de movimiento del bloque de destino se almacene sustituyendo la información de movimiento utilizada en la predicción del bloque de destino por la información de movimiento modificado, la lista de candidatos a la fusión del siguiente bloque puede incluir el bloque de destino que indica la información de movimiento modificado. Además, toda la información de movimiento y la información de movimiento modificado utilizada para predecir el bloque de destino se almacenan en la información de movimiento del bloque de destino, la lista de candidatos a la fusión del siguiente bloque puede incluir el bloque de destino que indica la información de movimiento utilizada para predecir el bloque de destino y el bloque de destino que indica la información de movimiento modificado. El bloque de destino que indica la información de movimiento modificado puede insertarse como el bloque candidato contiguo espacial en la lista de candidatos para la fusión o insertarse como el bloque candidato contiguo temporal en la lista de candidatos para la fusión.
Para otro ejemplo, el modo AMVP se aplica al siguiente bloque al lado del bloque de destino, como el método de insertar la información de movimiento actualizada del bloque contiguo de destino al siguiente bloque en la lista de candidatos a la fusión en el modo de fusión descrito anteriormente como la información de movimiento contiguo espacial o temporal, el método de insertar la información de movimiento actualizada del bloque contiguo en la lista de candidatos de predictores de vector de movimiento en el siguiente bloque anterior como el candidato de predicción de vectores de movimiento espacial o temporal puede aplicarse. Es decir, el aparato de codificación puede generar la lista de candidatos del predictor de vector de movimiento que incluye la información de movimiento actualizada del bloque contiguo de destino al siguiente bloque.
Por ejemplo, en el caso de que la información de movimiento actualizada del bloque de destino al lado del siguiente bloque incluye sólo la información de movimiento modificado, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado como el candidato predictor de vector de movimiento espacial.
En otro ejemplo, en el caso de que la información de movimiento actualizada del bloque de destino al lado del siguiente bloque incluye la información de movimiento modificado y la información de movimiento existente del bloque de destino, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado seleccionado según una condición específica entre la información de movimiento existente seleccionada según una condición específica y la información de movimiento modificado de los bloques de destino adyacentes al siguiente bloque entre la información de movimiento existente del bloque de destino adyacente al siguiente bloque como el respectivo candidato de predictor de vector de movimiento espacial.
Mientras tanto, la lista de candidatos de predictores de vector de movimiento del bloque siguiente puede incluir la información de movimiento actualizada del bloque adjunto de la misma posición que la posición del siguiente bloque y la información de movimiento actualizada del bloque al lado de la misma posición de bloque como la lista de candidatos del predictor de vector de movimiento temporal en la imagen de referencia del siguiente bloque. Por ejemplo, en el caso de que la información de movimiento actualizada del bloque coubicado de la misma posición que la posición del siguiente bloque y la información de movimiento actualizada del bloque al lado del mismo bloque de posición incluyen solo la información de movimiento modificado de cada bloque, la lista de candidatos de predictores de vectores de movimiento puede incluir la información de movimiento modificado como la lista de candidatos de predictores de vectores de movimiento temporales.
En otro ejemplo, en el caso de que la información de movimiento actualizada incluye el mismo bloque de posición, la respectiva información de movimiento modificado del bloque al lado del mismo bloque de posición y el movimiento existente de información del mismo bloque de posición, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado seleccionada según la condición específica entre la información de movimiento existente seleccionada según la condición específica y la información de movimiento modificado entre la información de movimiento existente como candidato de predictor de vector de movimiento espacial separado, respectivamente.
Mientras tanto, la información de movimiento almacenada y la información de movimiento para la transmisión pueden tener diferente resolución. Por ejemplo, el aparato de codificación codifica y transmite la información para la información de movimiento y la información de movimiento modificado se almacena para la información de movimiento adyacente al bloque de destino, la unidad de vector de movimiento incluida en la información de movimiento puede tener una unidad de 1/4 de muestra fraccional y la unidad del vector de movimiento de la información de movimiento modificado pueden representar una unidad de 1/8 de muestra fraccionaria o 1/16 de muestra fraccionaria.
Mientras tanto, aunque no se muestra, el aparato de codificación puede determinar si se actualizará la (primera) información de movimiento del bloque de destino realizando el procedimiento de comparación entre la (primera) información de movimiento y la información de movimiento modificado basado en el bloque reconstruido del bloque de destino. Por ejemplo, el aparato de codificación puede determinar si actualizar el bloque de destino comparando la cantidad de datos de la señal residual del bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque reconstruido del bloque de destino con la cantidad de datos de la señal residual del bloque de referencia derivada en base a la información de movimiento y el bloque reconstruido. Entre las cantidades de datos, en el caso de que la cantidad de datos de la señal residual del bloque de referencia específico y el bloque reconstruido sea menor, el aparato de codificación puede determinar actualizar la información de movimiento y el bloque de destino. Además, entre las cantidades de datos, en el caso de que la cantidad de datos de la señal residual del bloque de referencia específico y el bloque reconstruido no sea menor, el aparato de codificación puede determinar no actualizar la información de movimiento y el bloque de destino.
Además, el aparato de codificación puede determinar si actualizar la (primera) información de movimiento del bloque de destino realizando el procedimiento de comparación entre la información de movimiento y la información de movimiento modificado basada en el bloque original del bloque de destino. Por ejemplo, el aparato de codificación puede determinar si actualizar el bloque de destino comparando la cantidad de datos de la señal residual del bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque original del bloque de destino con la cantidad de datos de la señal residual del bloque de referencia derivada en base a la información de movimiento y el bloque original. Entre las cantidades de datos, en el caso de que la cantidad de datos de la señal residual del bloque de referencia específico y el bloque original sea menor, el aparato de codificación puede determinar actualizar la información de movimiento y el bloque de destino. Además, entre las cantidades de datos, en el caso de que la cantidad de datos de la señal residual del bloque de referencia específico y el bloque original no sea menor, el aparato de codificación puede determinar no actualizar la información de movimiento y el bloque de destino.
Mientras tanto, el aparato de codificación puede generar y codificar la información adicional que indica si se actualizará y saldrá a través del flujo de bits. Por ejemplo, la información adicional que indica si se debe actualizar puede denominarse bandera de actualización. El caso de que el bloque de actualización sea 1 puede indicar que la información de movimiento está actualizada y el caso de que el bloque de actualización sea 0 puede indicar que la información de movimiento no está actualizada. Por ejemplo, la bandera de actualización puede transmitirse en una unidad de PU. Alternativamente, la bandera de actualización puede transmitirse en una unidad de CU, una unidad de CTU o una unidad de segmento y puede transmitirse a través de un nivel superior, como una unidad de conjunto de parámetros de imagen (PPS) o una unidad de conjunto de parámetros de secuencia (SPS).
Mientras tanto, el aparato de codificación puede generar la información diferencial de actualización de vector de movimiento adicional que indica diferencial entre el vector existente de movimiento y la información de movimiento modificado y codificarlo y dejarlo salir. La información diferencial de actualización del vector de movimiento puede transmitirse en la unidad de PU.
Aunque no se muestra, el aparato de codificación puede codificar y emitir la información sobre la muestra residual para el bloque de destino. La información sobre la muestra residual puede incluir coeficientes de transformación para la muestra residual.
La FIG. 13 ilustra esquemáticamente un método de decodificación de vídeo mediante un aparato de decodificación según la presente invención. El método mostrado en la FIG. 13 puede realizarse mediante el aparato de decodificación mostrado en la FIG. 2. En un ejemplo detallado, la etapa S1300 de la FIG. 13 puede realizarse mediante una unidad de decodificación entrópica del aparato de decodificación, las etapas S1310 a S1340 pueden realizarse mediante una unidad de predicción del aparato de decodificación y la etapa S1350 puede realizarse mediante una memoria del aparato de decodificación.
El aparato de decodificación obtiene la información para la interpredicción del bloque de destino a través de un flujo de bits (etapa, S1300). La interpredicción o una intrapredicción se pueden aplicar al bloque de destino. En el caso de que la interpredicción se aplique al bloque de destino, el aparato de decodificación puede obtener la información para la interpredicción del bloque de destino a través del flujo de bits. Además, el aparato de decodificación puede obtener la información diferencial de actualización del vector de movimiento que indica la diferencia entre el vector de movimiento existente del bloque de destino y la información de movimiento modificado a través del flujo de bits. Además, el aparato de decodificación puede obtener información adicional sobre si actualizar el bloque de destino a través del flujo de bits. Por ejemplo, la información adicional que indica si se debe actualizar puede denominarse bandera de actualización.
El aparato de decodificación deriva la información de movimiento del bloque de destino basándose en la información sobre la interpredicción (etapa, S1310). La información de movimiento puede denominarse primera información de movimiento. La información sobre la interpredicción puede representar un modo que se aplica al bloque de destino entre el modo de salto, el modo de fusión y el modo de predicción de vector de movimiento adaptativo (AMVP). En el caso de que el modo de salto o el modo de fusión se aplique al bloque de destino, el aparato de decodificación puede generar la lista de candidatos a la fusión que incluye bloques contiguos del bloque de destino y obtener un índice de fusión que indica un bloque contiguo entre los bloques contiguos incluidos en la lista de candidatos a la fusión. El índice de fusión puede incluirse en la información sobre la interpredicción. El aparato de decodificación puede derivar la información de movimiento del bloque contiguo indicado por el índice de fusión como la información de movimiento del bloque de destino.
En el caso de que el modo AMVP se aplica al bloque de destino, el aparato de decodificación puede generar una lista sobre la base de los bloques contiguos del bloque de destino, como en el modo de combinación. El aparato de decodificación puede generar el índice que indica un bloque contiguo entre los bloques contiguos incluidos en la lista generada y una diferencia de vector de movimiento (MVD) entre el vector de movimiento del bloque contiguo indicado por el índice y el vector de movimiento del bloque de destino. El índice y el MVD pueden incluirse en la información sobre la interpredicción. El aparato de decodificación puede generar la información de movimiento del bloque de destino basándose en el vector de movimiento del bloque contiguo indicado por el índice y el MVD.
La información de movimiento puede incluir un vector de movimiento y un índice de imagen de referencia. La información de movimiento puede ser información de movimiento de bipredicción o información de movimiento de unipredicción. La información de movimiento de bipredicción puede incluir índice de imagen de referencia L0 y vector de movimiento L0, índice de imagen de referencia L1 y vector de movimiento L1, y la información de movimiento unidireccional puede incluir índice de imagen de referencia L0 y vector de movimiento L0 o índice de imagen de referencia L1 y vector de movimiento L1. L0 indica la lista de imágenes de referencia L0 (lista 0) y L1 indica la lista de imágenes de referencia L1 (lista 1).
El aparato de decodificación se deriva una muestra de predicción mediante la realización de la interpredicción para el bloque de destino sobre la base de la información de movimiento (etapa, S1320). El aparato de decodificación puede generar la muestra de predicción del bloque de destino basándose en el índice de imagen de referencia y el vector de movimiento incluido en la información de movimiento.
El aparato de decodificación genera un bloque reconstruido sobre la base de la muestra de predicción (etapa, S1330). En el caso de que se aplique el modo de salto al bloque de destino, el aparato de decodificación puede generar el bloque reconstruido del bloque de destino basándose en la muestra de predicción. En el caso de que el modo de fusión o el modo AMVP se aplique al bloque de destino, el aparato de decodificación puede generar una señal residual del bloque de destino a través del flujo de bits y generar el bloque reconstruido del bloque de destino en base a la señal residual y la muestra de predicción.
El aparato de descodificación deriva información de movimiento modificado para el bloque de destino en base al bloque reconstruido (etapa, S1340). El aparato de decodificación puede calcular el índice de imagen de referencia modificada que indica una imagen de referencia específica para la información de movimiento modificado y un vector de movimiento modificado para la imagen de referencia específica a través de varios métodos. La información de movimiento modificado puede denominarse segunda información de movimiento. Al menos un método que incluye métodos directos como un método de flujo óptico (FO), un método de coincidencia de bloques, un método de dominio de frecuencia y métodos similares e indirectos, como un método de coincidencia de singularidad, un método que utiliza una propiedad estadística y similares se pueden aplicar al método. Además, los métodos directos y los métodos indirectos pueden aplicarse simultáneamente.
Por ejemplo, el aparato de decodificación puede generar la información de movimiento modificado a través del método de correspondencia de bloques. En este caso, el aparato de decodificación puede medir un grado de distorsión acumulando valores diferenciales entre muestras según las fases del bloque reconstruido del bloque de destino y el bloque de referencia y usarlos como funciones de costo, y luego, detectar un bloque de referencia específico del bloque reconstruido. El aparato de decodificación puede generar la información de movimiento modificado basándose en el bloque de referencia específico detectado. En otras palabras, el aparato de decodificación puede generar la información de movimiento modificado que incluye el índice de imagen de referencia modificado que indica la imagen de referencia específica y el vector de movimiento modificado que indica el bloque de referencia específico en la imagen de referencia específica. El aparato de decodificación puede detectar el bloque de referencia cuya suma de los valores absolutos (o valores cuadrados) de los diferenciales entre muestras según la fase del bloque reconstruido del bloque de destino entre los bloques de referencia en la imagen de referencia específica como bloque de referencia específico es un mínimo y derivar la información de movimiento modificado en función del bloque de referencia específico. Como método para representar la suma de los valores absolutos de los diferenciales, se puede utilizar la suma de las diferencias absolutas (SAD). En este caso, la suma de los valores absolutos de los diferenciales se puede calcular utilizando la Ecuación 1 descrita anteriormente. Además, como método para representar la suma de los valores absolutos de los diferenciales, se puede utilizar el error cuadrático medio (MSE). En este caso, la suma de los valores absolutos de los diferenciales se puede calcular utilizando la Ecuación 2 descrita anteriormente.
Además, la imagen de referencia específica para la información de movimiento modificado puede ser derivada como la referencia de la imagen indicada por el índice de imagen de referencia incluido en la (primera) información de movimiento, y el área de búsqueda para detectar el bloque de referencia específico puede ser limitada a los bloques de referencia ubicados en un área predeterminada del bloque de referencia derivado en la imagen de referencia específica en base al vector de movimiento relacionado con la imagen de referencia incluida en la (primera) información de movimiento. Es decir, el aparato de decodificación puede derivar el bloque de referencia cuyo SAD del bloque reconstruido es el mínimo entre los bloques de referencia ubicados en un área predeterminada del bloque de referencia derivado en la imagen de referencia específica como el bloque de referencia específico basado en el vector de movimiento relacionado con la imagen de referencia incluida en la información de movimiento.
Además, en el caso de que un tamaño del bloque reconstruido es mayor que un tamaño predeterminado, el bloque reconstruido puede ser dividido en una pluralidad de bloques sub reconstruidos, y un bloque sub reconstruido específico puede derivar en una unidad de sub bloque reconstruido en la imagen de referencia específica. En este caso, el aparato de decodificación puede derivar el bloque de referencia específico basándose en los sub bloques reconstruidos específicos derivados.
Como otro ejemplo, el aparato de decodificación puede generar la información de movimiento modificado a través del método FO. En este caso, el aparato de decodificación puede calcular el vector de movimiento modificado para la información de movimiento modificado del bloque de destino basándose en la suposición de que la velocidad de un objeto en el bloque de destino es uniforme y los valores de muestra de las muestras que representan el objeto no se modifican en una imagen. El vector de movimiento se puede calcular mediante la Ecuación 6 descrita anteriormente. El área de las muestras que indica el objeto incluido en el bloque de destino puede configurarse como un área de tamaño 3x3.
En el caso del cálculo de la información de movimiento modificado a través de los métodos descritos anteriormente, el aparato de codificación puede calcular la información de movimiento modificado a fin de tener el mismo formato que la (primera) información de movimiento. Es decir, el aparato de decodificación puede calcular la información de movimiento modificado para tener el mismo formato que la información de movimiento entre la información de movimiento de bipredicción y la información de movimiento de unipredicción. La información de movimiento de bipredicción puede incluir índice de imagen de referencia L0 y vector de movimiento L0, índice de imagen de referencia L1 y vector de movimiento L1, y la información de movimiento unidireccional puede incluir índice de imagen de referencia L0 y vector de movimiento L0 o índice de imagen de referencia L1 y vector de movimiento L1. L0 indica la lista de imágenes de referencia L0 (lista 0) y L1 indica la lista de imágenes de referencia L1 (lista 1).
Además, la bipredicción está disponible para ser realizada en la imagen de destino en donde está incluido el bloque de destino, el aparato de descodificación puede calcular la información de movimiento modificado como información de movimiento de bipredicción a través del método descrito anteriormente. Sin embargo, después de que la información de movimiento modificado se calcula como la información de movimiento de bipredicción, en el caso de que ocurra una oclusión en uno de los bloques de referencia derivados de la información de movimiento de bipredicción, el aparato de decodificación puede derivar la información de movimiento modificado como la información de movimiento de unipredicción, excepto la información de movimiento para la lista de imágenes de referencia de la imagen de referencia específica en donde se incluye el bloque de referencia específico en donde se produce la oclusión. Se puede determinar si se produjo la oclusión cuando el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque reconstruido del bloque de destino es mayor que un valor umbral específico. El valor de umbral puede estar preconfigurado.
Por ejemplo, el aparato de decodificación calcula la información de movimiento modificado como la información de movimiento de bipredicción, y en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado en base al vector de movimiento L0 y el índice de imagen de referencia L0 de la información de movimiento modificado y el bloque reconstruido del bloque de destino es mayor que el valor umbral preconfigurado, el aparato de descodificación puede derivar la información de movimiento modificado como la información de movimiento de unipredicción que incluye el vector de movimiento L1 y el índice de imagen de referencia L1.
En otro ejemplo, el aparato de decodificación calcula la información de movimiento modificado como la información de movimiento de bipredicción, y en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado basado en el vector de movimiento L1 y el índice de imagen de referencia L1 de la información de movimiento modificado y el bloque reconstruido del bloque de destino es mayor que el valor de umbral preconfigurado, el aparato de decodificación puede derivar la información de movimiento modificado como información de movimiento de unipredicción que incluye el vector de movimiento L0 y el índice de imagen de referencia L0.
Además, en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado basado en el vector de movimiento L0 y el índice de imagen de referencia L0 y el bloque reconstruido del bloque de destino es mayor que el valor umbral preconfigurado y en el caso de que el valor diferencial entre las muestras según la fase del bloque de referencia específico derivado en base al vector de movimiento L1 y el índice de imagen de referencia L1 y el bloque reconstruido del bloque de destino sea mayor que el valor umbral preconfigurado, el aparato de decodificación puede derivar la información de movimiento del bloque al lado del bloque de destino como la información de movimiento modificado o puede no calcular la información de movimiento modificado.
Mientras tanto, el aparato de decodificación puede seleccionar la imagen de referencia específica indicada por el índice de imagen de referencia modificado incluido en la información de movimiento modificado a través de diversos métodos.
Por ejemplo, el aparato de decodificación puede seleccionar la imagen de referencia que es la más recientemente codificada entre las imágenes de referencia incluidas en la lista de imágenes de referencia L0 y generar el índice de imagen de referencia L0 modificado que indica la imagen de referencia. Además, el aparato de decodificación puede seleccionar la imagen de referencia que es la más recientemente codificada entre las imágenes de referencia incluidas en la lista de imágenes de referencia L1 y generar el índice de imagen de referencia L1 modificado que indica la imagen de referencia.
En otro ejemplo, el aparato de decodificación puede seleccionar la imagen de referencia que tiene un POC del cual un valor absoluto de una diferencia de un recuento de orden de las imágenes (POC) de la imagen de destino entre las imágenes de referencia incluidas en el índice de imágenes de referencia L0 y generar el índice de imagen de referencia L0 modificado que indica la imagen de referencia. Además, el aparato de decodificación puede seleccionar la imagen de referencia que tiene un POC del cual un valor absoluto de una diferencia de un recuento de orden de imagen (POC) de la imagen de destino entre las imágenes de referencia incluidas en el índice de imagen de referencia L1 y generar el índice de imagen de referencia L1 modificada que indica la imagen de referencia.
En otro ejemplo, el aparato de decodificación puede seleccionar la imagen de referencia que pertenece a la capa más baja en la estructura jerárquica entre las imágenes de referencia incluidas en cada una de las listas de imágenes de referencia y generar el índice de imagen de referencia modificado que indica la imagen de referencia. La imagen de referencia que pertenece a la capa más baja puede ser la pieza I o una imagen de referencia que se codifica aplicando un parámetro de cuantificación baja (CP).
En otro ejemplo, el aparato de decodificación puede seleccionar la imagen de referencia que incluye un bloque de referencia de la que la fiabilidad de la compensación de movimiento es la más alta en la lista de imágenes de referencia y generar el índice de imagen de referencia modificado que indica la imagen de referencia. En otras palabras, el aparato de decodificación puede derivar el bloque de referencia específico del bloque reconstruido del bloque de destino basándose en las imágenes de referencia incluidas en la lista de imágenes de referencia y generar el índice de imagen de referencia modificado que indica la imagen de referencia específica que incluye el bloque de referencia específico derivado.
Los métodos de generación del índice de imagen de referencia modificada de la información de movimiento modificado descrita anteriormente se puede aplicar independientemente o los métodos pueden aplicarse en combinación.
Mientras tanto, el aparato de decodificación puede obtener la información diferencial de actualización de vector de movimiento que indica un diferencial entre el vector de movimiento existente del bloque de destino y el vector de movimiento modificado a través del flujo de bits. En este caso, el aparato de decodificación puede derivar la información de movimiento modificado sumando la (primera) información de movimiento del bloque de destino y la información diferencial de actualización del vector de movimiento. La información diferencial de actualización del vector de movimiento puede transmitirse en una unidad de PU descrita anteriormente.
El aparato de decodificación actualiza la información de movimiento del bloque de destino basado en la información de movimiento modificado (etapa, S1350). El aparato de decodificación puede almacenar la información de movimiento modificado y actualizar la información de movimiento del bloque de destino. El aparato de decodificación puede actualizar la información de movimiento del bloque de destino sustituyendo la información de movimiento utilizada en la predicción del bloque de destino por la información de movimiento modificado. Además, el aparato de decodificación puede actualizar la información de movimiento del bloque de destino almacenando toda la información de movimiento y la información de movimiento modificado utilizada para predecir el bloque de destino. La información de movimiento actualizada puede usarse para la información de movimiento del siguiente bloque al lado del bloque de destino.
Por ejemplo, el modo de mezcla se aplica al siguiente bloque al lado del bloque de destino, la lista de candidato de combinación del siguiente bloque puede incluir el bloque de destino. En el caso de que la información de movimiento del bloque de destino se almacene sustituyendo la información de movimiento utilizada en la predicción del bloque de destino por la información de movimiento modificado, la lista de candidatos a la fusión del siguiente bloque puede incluir el bloque de destino que indica la información de movimiento modificado. Además, toda la información de movimiento y la información de movimiento modificado utilizada para predecir el bloque de destino se almacenan en la información de movimiento del bloque de destino, la lista de candidatos a la fusión del siguiente bloque puede incluir el bloque de destino que indica la información de movimiento utilizada para predecir el bloque de destino y el bloque de destino que indica la información de movimiento modificado. El bloque de destino que indica la información de movimiento modificado puede insertarse como el bloque candidato contiguo espacial en la lista de candidatos a la fusión o insertarse como el bloque de candidatos contiguos temporal en la lista de candidatos a la fusión.
En otro ejemplo, el modo de AMVP se aplica al siguiente bloque al lado del bloque de destino, al igual que el método de inserción de la información de movimiento actualizada del bloque de destino al lado del bloque siguiente en la lista de candidatos de combinación en el modo de mezcla descrito anteriormente como la información de movimiento contiguo espacial o temporal, el método de insertar la información de movimiento actualizada del bloque contiguo en la lista de candidatos de predictores de vector de movimiento en el siguiente bloque anterior como el candidato de predicción de vectores de movimiento espacial o temporal puede aplicarse. Es decir, el aparato de decodificación puede generar la lista de candidatos del predictor de vector de movimiento que incluye la información de movimiento actualizada del bloque de destino al lado del siguiente bloque.
Por ejemplo, en el caso de que la información de movimiento actualizada del bloque de destino al lado del siguiente bloque incluye sólo la información de movimiento modificado, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado como el candidato de predictores de vector de movimiento espacial.
En otro ejemplo, en el caso de que la información de movimiento actualizada del bloque de destino al lado del siguiente bloque incluye la información de movimiento modificado y la información de movimiento existente del bloque de destino, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado seleccionado según una condición específica entre la información de movimiento existente seleccionada según una condición específica y la información de movimiento modificado de los bloques de destino adyacentes al siguiente bloque entre la información de movimiento existente del bloque de destino adyacente al siguiente bloque como el respectivo candidato de predictores de vector de movimiento espacial.
Mientras tanto, la lista de candidatos de predictores de vector de movimiento del siguiente bloque puede incluir la información de movimiento actualizada del bloque adjunto de la misma posición que la posición del siguiente bloque y la información de movimiento actualizada del bloque al lado del mismo bloque de posición como la lista de candidatos de predictores de vector de movimiento temporal en la imagen de referencia del siguiente bloque. Por ejemplo, en el caso de que la información de movimiento actualizada del bloque coubicado de la misma posición que la posición del siguiente bloque y la información de movimiento actualizada del bloque al lado del mismo bloque de posición incluyen solo la información de movimiento modificado de cada bloque, la lista de candidatos de predictores de vectores de movimiento puede incluir la información de movimiento modificado como la lista de candidatos de predictores de vectores de movimiento temporales.
En otro ejemplo, en el caso de que la información de movimiento actualizada incluye el mismo bloque de posición, la respectiva información de movimiento modificado del bloque al lado del mismo bloque de posición y el movimiento existente de información del mismo bloque de posición, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado seleccionada según la condición específica entre la información de movimiento existente seleccionada según la condición específica y la información de movimiento modificado entre la información de movimiento existente como candidato de predictor de vector de movimiento espacial separado, respectivamente.
Mientras tanto, la información de movimiento almacenada y la información de movimiento para la transmisión pueden tener diferente resolución. Por ejemplo, el aparato de decodificación decodifica y transmite la información para la información de movimiento y la información de movimiento modificado se almacena para la información de movimiento adyacente al bloque de destino, la unidad de vector de movimiento incluida en la información de movimiento puede tener una unidad de 1/4 de muestra fraccionaria y el vector de unidad de movimiento de la información de movimiento modificado pueden representar una unidad de 1/8 de muestra fraccionaria o 1/16 de muestra fraccionaria.
Mientras tanto, aunque no se muestra, el aparato de decodificación puede determinar si actualizará la (primera) información de movimiento de del bloque de destino realizando el procedimiento de comparación entre la (primera) información de movimiento y la información de movimiento modificado en base al bloque reconstruido del bloque de destino. Por ejemplo, el aparato de decodificación puede determinar si actualizar el bloque de destino comparando la cantidad de datos de la señal residual del bloque de referencia específico derivado en base a la información de movimiento modificado y el bloque reconstruido del bloque de destino con la cantidad de datos de la señal residual del bloque de referencia derivada en base a la información de movimiento y el bloque reconstruido. Entre las cantidades de datos, en el caso de que la cantidad de datos de la señal residual del bloque de referencia específico y el bloque reconstruido sea menor, el aparato de decodificación puede determinar actualizar la información de movimiento y el bloque de destino. Además, entre las cantidades de datos, en el caso de que la cantidad de datos de la señal residual del bloque de referencia específico y el bloque reconstruido no sea menor, el aparato de decodificación puede determinar no actualizar la información de movimiento y el bloque de destino.
Mientras tanto, el aparato de decodificación puede obtener la información adicional que indica si se actualizará el bloque de destino a través del flujo de bits. Por ejemplo, la información adicional que indica si se debe actualizar puede denominarse bandera de actualización. El caso de que el bloque de actualización sea 1 puede indicar que la información de movimiento está actualizada y el caso de que el bloque de actualización sea 0 puede indicar que la información de movimiento no está actualizada. Por ejemplo, la bandera de actualización puede transmitirse en una unidad de PU. Alternativamente, la bandera de actualización puede transmitirse en una unidad de CU, una unidad de CTU o una unidad de segmento y puede transmitirse a través de un nivel superior, como una unidad de conjunto de parámetros de imagen (PPS) o una unidad de conjunto de parámetros de secuencia (SPS).
Según la presente invención descrita anteriormente, después del procedimiento de decodificación de un bloque de destino, la información de movimiento modificado del bloque de destino se calcula, y puede actualizarse para información de movimiento más precisa, y por medio de esto, puede mejorarse la eficiencia general de codificación.
Además, según la presente invención, la información de movimiento de un siguiente bloque al lado del bloque de destino se puede derivar sobre la base de la información de movimiento actualizada del bloque de destino, y puede ser disminuida la propagación de distorsión, y a través de esta, se puede mejorar la eficiencia general de codificación.
El método según la presente descripción descrito anteriormente puede implementarse en software. El dispositivo de codificación y/o el dispositivo de decodificación según la presente descripción pueden incluirse en un dispositivo que realiza el procesamiento de imágenes, p. ej., para un televisor, una computadora, un teléfono inteligente, un decodificador o un dispositivo de visualización.
Cuando las realizaciones de la presente descripción se implementan en software, el método descrito anteriormente puede implementarse mediante módulos (procesos, funciones, y así sucesivamente) que realizan las funciones descritas anteriormente. Dichos módulos pueden almacenarse en la memoria y ser ejecutados por un procesador. La memoria puede ser interna o externa al procesador, y la memoria puede acoplarse al procesador utilizando varios medios bien conocidos. El procesador puede comprender un circuito integrado específico de la aplicación (ASIC), otros conjuntos de chips, un circuito lógico y/o un dispositivo de procesamiento de datos. La memoria puede incluir una ROM (memoria de solo lectura), una RAM (memoria de acceso aleatorio), una memoria flash, una tarjeta de memoria, un medio de almacenamiento y/u otro dispositivo de almacenamiento.

Claims (3)

REIVINDICACIONES
1. Un método de decodificación de imágenes realizado por un aparato (200) de decodificación, comprendiendo el método comprende:
la derivación de información de movimiento de un primer bloque de destino;
la derivación de información de movimiento modificada para el primer bloque de destino basándose en la información de movimiento y la bipredicción;
la obtención de información sobre una interpredicción e información residual de un flujo de bits, en donde la información sobre la interpredicción incluye información de modo que representa cómo se aplica un modo de fusión a un segundo bloque de destino y una información de índice de fusión para el segundo bloque de destino;
la determinación de que el modo de fusión se aplica al segundo bloque de destino basándose en la información de modo;
la configuración de una lista de candidatos a la fusión para el segundo bloque de destino basándose en bloques contiguos espaciales y un bloque contiguo temporal del segundo bloque de destino;
la selección de uno de los candidatos a la fusión que constituyen la lista de candidatos a la fusión basándose en la información de índice de fusión para el segundo bloque objetivo;
la derivación de la información de movimiento del segundo bloque de destino basándose en el candidato a la fusión seleccionado;
la generación de muestras de predicción para el segundo bloque de destino realizando la interpredicción basándose en la información de movimiento del segundo bloque de destino;
la generación de una señal residual basándose en la información residual; y
la generación de muestras reconstruidas basándose en las muestras de predicción y la señal residual, en donde los candidatos a la fusión incluyen candidatos de información de movimiento espacial y un candidato de información de movimiento temporal, en donde los candidatos de información de movimiento espacial se derivan basándose en los bloques contiguos espaciales y el candidato de información de movimiento temporal se deriva basándose en el bloque contiguo temporal,
en donde cuando el bloque contiguo temporal corresponde al primer bloque de destino, el candidato de información de movimiento temporal se deriva utilizando la información de movimiento modificada del primer bloque de destino,
caracterizado por que
cuando el bloque contiguo espacial corresponde al primer bloque de destino, el candidato de información de movimiento espacial se deriva utilizando la información de movimiento del primer bloque de destino.
2. Un método de codificación de imágenes realizado por un aparato de codificación, comprendiendo el método: la derivación de información de movimiento de un primer bloque de destino;
la derivación de información de movimiento modificada para el primer bloque de destino basándose en la información de movimiento y la bipredicción;
la determinación de que se aplica un modo de interpredicción a un segundo bloque de destino;
la determinación de que se aplica un modo de fusión al segundo bloque de destino basándose en el modo de interpredicción;
la configuración de una lista de candidatos a la fusión para el segundo bloque de destino basándose en bloques contiguos espaciales y un bloque contiguo temporal del segundo bloque de destino;
la selección de uno de los candidatos a la fusión que constituyen la lista de candidatos a la fusión; la generación de información de modo que represente que el modo de fusión se aplica al segundo bloque de destino;
la generación de información de índice de fusión que represente el candidato a la fusión seleccionado para el segundo bloque de destino;
la generación de información de movimiento del segundo bloque de destino basándose en el candidato a la fusión seleccionado;
la generación de información residual basándose en la información de movimiento del segundo bloque de destino; y
la codificación de información sobre la interpredicción incluyendo la información de modo,
la información de índice de fusión y la información residual en un flujo de bits,
en donde los candidatos a la fusión incluyen candidatos de información de movimiento espacial y un candidato de información de movimiento temporal, en donde los candidatos de información de movimiento espacial se derivan basándose en los bloques contiguos espaciales y el candidato de información de movimiento temporal se deriva basándose en el bloque contiguo temporal,
en donde cuando el bloque contiguo temporal corresponde al primer bloque de destino, la información de movimiento temporal candidata se deriva utilizando la información de movimiento modificada del primer bloque de destino,
caracterizado por que
cuando el bloque contiguo espacial corresponde al primer bloque de destino, la información de movimiento espacial candidata se deriva utilizando la información de movimiento del primer bloque de destino.
3. Un método de transmisión de datos para una imagen, comprendiendo el método:
la generación del flujo de bits según el método de codificación de imágenes de la reivindicación 2; y la transmisión de los datos que comprenden el flujo de bits.
ES22175536T 2016-12-05 2016-12-05 Video decoding method, video encoding method and transmission method Active ES3023748T3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP22175536.6A EP4090025B1 (en) 2016-12-05 2016-12-05 Video decoding method, video encoding method and transmission method
PCT/KR2016/014167 WO2018105757A1 (ko) 2016-12-05 2016-12-05 영상 코딩 시스템에서 영상 디코딩 방법 및 장치

Publications (1)

Publication Number Publication Date
ES3023748T3 true ES3023748T3 (en) 2025-06-03

Family

ID=62492214

Family Applications (3)

Application Number Title Priority Date Filing Date
ES16923451T Active ES2886871T3 (es) 2016-12-05 2016-12-05 Método y medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imágenes
ES22175536T Active ES3023748T3 (en) 2016-12-05 2016-12-05 Video decoding method, video encoding method and transmission method
ES21163358T Active ES2927560T3 (es) 2016-12-05 2016-12-05 Aparato de decodificación de vídeo, aparato de codificación de vídeo, medio de almacenamiento y método para la trasmisión

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES16923451T Active ES2886871T3 (es) 2016-12-05 2016-12-05 Método y medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imágenes

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES21163358T Active ES2927560T3 (es) 2016-12-05 2016-12-05 Aparato de decodificación de vídeo, aparato de codificación de vídeo, medio de almacenamiento y método para la trasmisión

Country Status (13)

Country Link
US (4) US10764598B2 (es)
EP (4) EP4535788A3 (es)
KR (5) KR102764504B1 (es)
CN (4) CN116527884B (es)
DK (2) DK3855745T3 (es)
ES (3) ES2886871T3 (es)
FI (1) FI4090025T3 (es)
HR (1) HRP20250444T1 (es)
HU (3) HUE059684T2 (es)
PL (3) PL3541073T3 (es)
PT (1) PT3855745T (es)
SI (2) SI4090025T1 (es)
WO (1) WO2018105757A1 (es)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3541073T3 (pl) * 2016-12-05 2021-12-13 Lg Electronics Inc. Sposób i nośnik pamięci do dekodowania obrazu w systemie kodowania obrazu
WO2019045392A1 (ko) 2017-08-29 2019-03-07 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019182329A1 (ko) * 2018-03-19 2019-09-26 인텔렉추얼디스커버리 주식회사 영상 복호화 방법/장치, 영상 부호화 방법/장치 및 비트스트림을 저장한 기록 매체
US11470346B2 (en) * 2018-05-09 2022-10-11 Sharp Kabushiki Kaisha Systems and methods for performing motion vector prediction using a derived set of motion vectors
US10965951B2 (en) 2018-06-22 2021-03-30 Avago Technologies International Sales Pte. Limited Memory latency management for decoder-side motion refinement
CN110662057B (zh) 2018-06-29 2022-06-21 北京字节跳动网络技术有限公司 视频处理方法、装置、设备以及存储比特流的方法
WO2020003284A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
WO2020003283A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating luts
KR102611261B1 (ko) 2018-06-29 2023-12-08 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 업데이트 대상 lut 또는 비업데이트 lut의 구별
WO2020003278A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: fifo, constrained fifo
EP4322533A3 (en) 2018-06-29 2024-03-06 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in lut
TWI752331B (zh) 2018-06-29 2022-01-11 大陸商北京字節跳動網絡技術有限公司 當向Merge/AMVP添加HMVP候選時的部分/完全修剪
JP7137008B2 (ja) 2018-06-29 2022-09-13 北京字節跳動網絡技術有限公司 1つまたは複数のルックアップテーブルを使用して、以前コーディングされた動き情報を順に記憶させてそれらを後続のブロックのコーディングに使用する概念
EP3815376A1 (en) 2018-07-02 2021-05-05 Beijing Bytedance Network Technology Co. Ltd. Luts with intra prediction modes and intra mode prediction from non-adjacent blocks
TWI703861B (zh) * 2018-07-06 2020-09-01 聯發科技股份有限公司 解碼器的視訊解碼方法及裝置
BR112021001384A2 (pt) * 2018-08-06 2021-04-20 Electronics And Telecommunications Research Institute método e dispositivo para codificação/decodificação de imagens, e mídia de gravação que armazena fluxo de bits
CN111064961B (zh) 2018-09-12 2023-06-09 北京字节跳动网络技术有限公司 视频处理方法和装置
EP3855737A4 (en) 2018-09-18 2022-08-10 Electronics and Telecommunications Research Institute IMAGE ENCODING/DECODING METHOD AND DEVICE, AND RECORDING MEDIUM WITH THE BITSTREAM STORED THEREON
GB2579763B (en) * 2018-09-21 2021-06-09 Canon Kk Video coding and decoding
GB2577318B (en) 2018-09-21 2021-03-10 Canon Kk Video coding and decoding
GB2595053B (en) 2018-10-18 2022-07-06 Canon Kk Video coding and decoding
GB2578151B (en) 2018-10-18 2021-06-09 Canon Kk Video coding and decoding
JP7073501B2 (ja) * 2018-12-12 2022-05-23 エルジー エレクトロニクス インコーポレイティド 履歴ベース動きベクトル予測に基づいてビデオ信号を処理するための方法及び装置
WO2020143741A1 (en) 2019-01-10 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Invoke of lut updating
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
WO2020147773A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Inserting order of motion candidates in lut
CN113615193B (zh) 2019-03-22 2024-06-25 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
WO2021054676A1 (ko) * 2019-09-19 2021-03-25 엘지전자 주식회사 Prof를 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
CN114667735B (zh) * 2019-09-25 2024-09-10 Lg电子株式会社 基于变换的图像编译方法及其设备
CN112995669B (zh) * 2021-04-27 2021-08-03 浙江华创视讯科技有限公司 一种帧间预测方法、装置、电子设备及存储介质
US12200204B2 (en) * 2021-10-11 2025-01-14 Tencent America LLC On intra mode propagation
WO2025208348A1 (zh) * 2024-04-02 2025-10-09 Oppo广东移动通信有限公司 编解码方法、编解码器、码流以及存储介质
WO2025216552A1 (ko) * 2024-04-10 2025-10-16 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100860690B1 (ko) * 2007-01-26 2008-09-26 삼성전자주식회사 외부 메모리 액세스를 최소화하는 움직임 탐색 방법 및장치
KR100939917B1 (ko) * 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 움직임 예측을 통한 부호화 시스템 및 움직임 예측을 통한부호화 방법
TWI566586B (zh) * 2009-10-20 2017-01-11 湯姆生特許公司 一序列形象的現時區塊之寫碼方法和重建方法
CN103039075B (zh) * 2010-05-21 2015-11-25 Jvc建伍株式会社 图像编码装置、图像编码方法、以及图像解码装置、图像解码方法
PL3554079T3 (pl) * 2011-01-07 2023-02-06 Lg Electronics Inc. Sposób kodowania informacji wideo, sposób dekodowania informacji wideo i urządzenie do dekodowania przeznaczone do dekodowania informacji wideo
JP5786478B2 (ja) * 2011-06-15 2015-09-30 富士通株式会社 動画像復号装置、動画像復号方法、及び動画像復号プログラム
JP2013042240A (ja) * 2011-08-11 2013-02-28 Jvc Kenwood Corp 画像復号装置、画像復号方法及び画像復号プログラム
WO2013030456A1 (en) * 2011-08-30 2013-03-07 Nokia Corporation An apparatus, a method and a computer program for video coding and decoding
EP2716047A4 (en) * 2011-10-19 2015-03-18 Mediatek Inc METHOD AND DEVICE FOR DERIVING MOTION VECTOR PREVIEW CANDIDATE SETS
US9992511B2 (en) * 2011-10-21 2018-06-05 Nokia Technologies Oy Method for video coding and an apparatus
TWI569634B (zh) * 2011-10-31 2017-02-01 Jvc Kenwood Corp Dynamic image decoding device, dynamic image decoding method and dynamic image decoding program
KR20130050403A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
JP2013102260A (ja) * 2011-11-07 2013-05-23 Jvc Kenwood Corp 動画像復号装置、動画像復号方法及び動画像復号プログラム
KR101960761B1 (ko) * 2011-11-24 2019-03-22 에스케이텔레콤 주식회사 모션 벡터의 예측 부호화/복호화 방법 및 장치
KR101934277B1 (ko) * 2011-11-28 2019-01-04 에스케이텔레콤 주식회사 개선된 머지를 이용한 영상 부호화/복호화 방법 및 장치
TWI618401B (zh) * 2011-12-28 2018-03-11 Jvc Kenwood Corp Motion picture coding device, motion picture coding method and memory medium
WO2013099285A1 (ja) * 2011-12-28 2013-07-04 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム
US20130188716A1 (en) * 2012-01-20 2013-07-25 Qualcomm Incorporated Temporal motion vector predictor candidate
US9426498B2 (en) * 2012-07-10 2016-08-23 Broadcom Corporation Real-time encoding system of multiple spatially scaled video based on shared video coding information
PL400344A1 (pl) * 2012-08-13 2014-02-17 Politechnika Poznanska Sposób wyznaczania predyktora wektora ruchu
US9124899B2 (en) * 2012-09-28 2015-09-01 Sharp Laboratories Of America, Inc. Motion derivation and coding for scaling video
JP5942818B2 (ja) * 2012-11-28 2016-06-29 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
US9800857B2 (en) * 2013-03-08 2017-10-24 Qualcomm Incorporated Inter-view residual prediction in multi-view or 3-dimensional video coding
GB2512829B (en) * 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme
US20140301463A1 (en) * 2013-04-05 2014-10-09 Nokia Corporation Method and apparatus for video coding and decoding
US9930363B2 (en) * 2013-04-12 2018-03-27 Nokia Technologies Oy Harmonized inter-view and view synthesis prediction for 3D video coding
JP6145002B2 (ja) * 2013-09-02 2017-06-07 株式会社日立ハイテクノロジーズ 自動分析装置
EP3059970B1 (en) * 2013-10-18 2020-01-08 LG Electronics Inc. Method predicting view synthesis in multi-view video coding and method for constituting merge candidate list by using same
US10531116B2 (en) * 2014-01-09 2020-01-07 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
US10484721B2 (en) * 2014-03-17 2019-11-19 Qualcomm Incorporated Method for motion estimation of non-natural video data
CN106031170B (zh) * 2014-04-01 2019-04-26 联发科技股份有限公司 运动信息编码的方法
KR101590493B1 (ko) * 2014-06-12 2016-02-02 에스케이텔레콤 주식회사 인터 예측을 이용한 영상 부호화 및 복호화 방법과 장치
KR101589725B1 (ko) * 2014-07-30 2016-01-28 엘아이지넥스원 주식회사 이동물체에서 획득한 영상에서의 프레임 간 영상 보간 방법
US9854237B2 (en) * 2014-10-14 2017-12-26 Qualcomm Incorporated AMVP and merge candidate list derivation for intra BC and inter prediction unification
KR101617796B1 (ko) * 2014-10-29 2016-05-03 삼성전자주식회사 영상 복호화 방법 및 장치
US11330284B2 (en) * 2015-03-27 2022-05-10 Qualcomm Incorporated Deriving motion information for sub-blocks in video coding
CN105149698B (zh) 2015-08-19 2017-04-19 天津市达鑫精密机械设备有限公司 一种汽车同步器齿套双面倒角连续加工系统
US10666936B2 (en) * 2015-12-17 2020-05-26 Samsung Electronics Co., Ltd. Video decoding method and video decoding apparatus using merge candidate list
KR101691553B1 (ko) * 2016-02-24 2016-12-30 삼성전자주식회사 영상 복호화 방법 및 장치
PL3541073T3 (pl) * 2016-12-05 2021-12-13 Lg Electronics Inc. Sposób i nośnik pamięci do dekodowania obrazu w systemie kodowania obrazu

Also Published As

Publication number Publication date
EP3855745B1 (en) 2022-07-13
HUE059684T2 (hu) 2022-12-28
ES2927560T3 (es) 2022-11-08
EP3541073A4 (en) 2019-12-11
CN116527886A (zh) 2023-08-01
KR20250021654A (ko) 2025-02-13
WO2018105757A1 (ko) 2018-06-14
EP4535788A2 (en) 2025-04-09
US20240422344A1 (en) 2024-12-19
HUE071089T2 (hu) 2025-07-28
EP3855745A1 (en) 2021-07-28
KR102322128B1 (ko) 2021-11-04
EP3541073A1 (en) 2019-09-18
US20190297343A1 (en) 2019-09-26
DK3855745T3 (da) 2022-10-10
EP3541073B1 (en) 2021-06-16
US12096020B2 (en) 2024-09-17
PL4090025T3 (pl) 2025-05-19
US11363289B2 (en) 2022-06-14
EP4535788A3 (en) 2025-06-11
PL3541073T3 (pl) 2021-12-13
KR102414924B1 (ko) 2022-06-30
SI3855745T1 (sl) 2022-11-30
HUE055198T2 (hu) 2021-11-29
PT3855745T (pt) 2022-09-19
SI4090025T1 (sl) 2025-06-30
KR102572286B1 (ko) 2023-08-29
KR20220093392A (ko) 2022-07-05
DK3541073T3 (da) 2021-09-20
EP4090025A1 (en) 2022-11-16
FI4090025T3 (fi) 2025-04-30
CN116527886B (zh) 2025-11-14
EP4090025B1 (en) 2025-03-26
CN116527884A (zh) 2023-08-01
US20200366922A1 (en) 2020-11-19
CN116527884B (zh) 2025-11-14
CN110121883A (zh) 2019-08-13
KR20230129582A (ko) 2023-09-08
US10764598B2 (en) 2020-09-01
US20220264141A1 (en) 2022-08-18
KR102764504B1 (ko) 2025-02-07
KR20210135347A (ko) 2021-11-12
CN110121883B (zh) 2023-07-04
KR20190084271A (ko) 2019-07-16
CN116527885A (zh) 2023-08-01
ES2886871T3 (es) 2021-12-21
CN116527885B (zh) 2025-11-21
PL3855745T3 (pl) 2022-11-07
HRP20250444T1 (hr) 2025-06-06

Similar Documents

Publication Publication Date Title
ES3023748T3 (en) Video decoding method, video encoding method and transmission method
US10856006B2 (en) Method and system using overlapped search space for bi-predictive motion vector refinement
ES3041525T3 (en) Size selective application of decoder side refining tools
US11146810B2 (en) Decoder-side motion vector refinement
ES2755573T3 (es) Predicción de vector de movimiento temporal avanzada basada en unidades de subpredicción
ES2841312T3 (es) Predicción de vectores de movimiento para modelos de movimiento afines en codificación de vídeo
ES2734574T3 (es) Modo avanzado de fusión/salto y modo avanzado de predicción de vector de movimiento (AMVP) para vídeo 3D
ES2841986T3 (es) Identificación de bloques usando vector de disparidad en la codificación de vídeo
ES2669399T3 (es) Vector de movimiento predicho entre visualizaciones para vídeo 3D
ES2799323T3 (es) Técnicas de codificación de vídeo usando particionamiento de movimiento asimétrica
ES2753958T3 (es) Predicción de vector de movimiento temporal basada en subunidad de predicción (PU) en la HEVC y diseño de sub-PU en la 3D-HEVC
BR112021015658A2 (pt) Restrições no refinamento de vetor de movimento no lado do decodificador
ES3010265T3 (en) Inter-prediction method and device based on dmvr and bdof
ES3041014T3 (en) Image encoding/decoding device for performing bdof, and device for transmitting bitstream
KR20240164524A (ko) 템플릿 매칭에 기초한 비디오 신호 처리 방법 및 이를 위한 장치
KR20240136982A (ko) 경계 밖 블록을 이용하는 비디오 신호 처리 방법 및 이를 위한 장치
KR20250097817A (ko) 블록 벡터 후보를 유도하는 방법 및 이를 위한 장치