ES2886871T3 - Método y medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imágenes - Google Patents
Método y medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imágenes Download PDFInfo
- Publication number
- ES2886871T3 ES2886871T3 ES16923451T ES16923451T ES2886871T3 ES 2886871 T3 ES2886871 T3 ES 2886871T3 ES 16923451 T ES16923451 T ES 16923451T ES 16923451 T ES16923451 T ES 16923451T ES 2886871 T3 ES2886871 T3 ES 2886871T3
- Authority
- ES
- Spain
- Prior art keywords
- block
- motion information
- target block
- modified
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 224
- 230000033001 locomotion Effects 0.000 claims abstract description 908
- 230000002123 temporal effect Effects 0.000 claims abstract description 31
- 230000004927 fusion Effects 0.000 claims abstract description 5
- 239000000155 melt Substances 0.000 claims abstract description 5
- 239000013598 vector Substances 0.000 claims description 217
- 230000003287 optical effect Effects 0.000 claims description 6
- 238000002844 melting Methods 0.000 claims 1
- 230000008018 melting Effects 0.000 claims 1
- 230000001052 transient effect Effects 0.000 claims 1
- 239000000523 sample Substances 0.000 description 105
- 230000003044 adaptive effect Effects 0.000 description 13
- 238000001914 filtration Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000013139 quantization Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 239000013074 reference sample Substances 0.000 description 4
- 239000013256 coordination polymer Substances 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy 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), comprendiendo el método: derivar la información de movimiento de un primer bloque diana; derivar información de movimiento modificado para el primer bloque diana en base a la información de movimiento y la bipredicción; cuando se aplica un modo de fusión a un segundo bloque diana, configurar una lista de candidatos de fusión para el segundo bloque diana en base a bloques vecinos espaciales y un bloque vecino temporal del segundo bloque diana; recibir un índice de fusión para el segundo bloque diana; seleccionar uno de los candidatos a la combinación que constituyen la lista de candidatos a la combinación en función del índice de combinación; derivar información de movimiento del segundo bloque diana basándose en el candidato de fusión seleccionado; y generar una muestra de predicción para el segundo bloque diana mediante la realización de interpredicción basada en la información de movimiento del segundo bloque diana, en donde los candidatos de fusión incluyen candidatos de información de movimiento espacial y un candidato de información de movimiento temporal, en donde el candidato de información de movimiento temporal se deriva basándose en el bloque vecino temporal, y en donde cuando el bloque vecino temporal corresponde al primer bloque diana, el candidato de información de movimiento temporal se deriva utilizando la información de movimiento modificado del primer bloque diana, caracterizado porque cuando el bloque vecino espacial corresponde al primer bloque diana, el candidato de información de movimiento espacial se deriva utilizando la información de movimiento del primer bloque diana.
Description
DESCRIPCIÓN
Método y medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imágenes
ANTECEDENTES DE LA INVENCIÓN
Campo de la invención
[0001] La presente invención se refiere a una técnica para codificación de imágenes y, más particularmente, a un método y un medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imagen.
Técnica relacionada
[0002] La demanda de alta resolución, imágenes de alta calidad, tales como imágenes de EH (alta definición) e imágenes de UHD (Ultra High Definition) 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 documentos del Equipo Conjunto de Exploración de Video (JVET) de ITU-T SG 16 WP 3 e ISO/IECJTC 1/SC 29/WG 11Con el título "Decoder-Side Motion Vector Refinement Based on Bilateral Template Matching" y el número de documento JVET-D0029 y el título "Algorithm Description FO Joint Exploration Test Model 4" y el número de documento JVETD0029.
[0003] Un objeto del presente documento es proporcionar una técnica de compresión de imágenes de alta eficiencia para la efectiva transmisión, almacenamiento y reproducción de información de imágenes de alta calidad y alta resolución.
RESUMEN DE LA INVENCIÓN
[0004] 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 presente invención se define en las reivindicaciones independientes. La descripción habilitante para la invención se encuentra en la realización de la Figura 8 y los pasajes correspondientes. Las realizaciones restantes deben entenderse como ejemplos que no describen partes de la presente invención.
[0005] La presente descripción también proporciona un método y un aparato para una inter-predicción que actualiza la información de movimiento de un bloque diana.
[0006] La presente descripción también proporciona un método y aparato para calcular información de movimiento modificado de un bloque diana después de procedimiento de decodificación del bloque diana, y la actualización basada en la información de movimiento modificado.
[0007] La presente descripción también proporciona un método y aparato para utilizar información de movimiento actualizada de un bloque dianas para la información de movimiento de un siguiente bloque al lado del bloque diana.
[0008] En un aspecto, un procedimiento de descodificación de imagen 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 diana a través de un acceso indirecto, derivar información de movimiento del bloque diana en base a la información de la interpredicción, derivar una muestra de predicción realizando la interpredicción para el bloque diana 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 diana en base al bloque reconstruido, y actualizando la información de movimiento del bloque diana en base a la información de movimiento modificado.
[0009] En otro aspecto, se proporciona un aparato de descodificación para realizar una descodificación de imagen. El aparato de decodificación incluye una unidad de decodificación de entropía configurada para obtener información sobre la interpredicción de un bloque diana a través de un acceso indirecto, una unidad de predicción configurada para derivar información de movimiento del bloque diana en base a la información de la interpredicción, derivar una muestra de predicción realizando la interpredicción para el bloque diana basada en la información de movimiento, generar un bloque reconstruido del bloque diana basado en la muestra de predicción y derivar información de movimiento modificado para el bloque diana basado en el bloque reconstruido, y una memoria configurada para actualizar la información de movimiento del bloque diana en función de la información de movimiento modificado.
[0010] En todavía otro aspecto, 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 diana, derivar una muestra de predicción realizando una interpredicción para el bloque diana 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 diana basado en el bloque reconstruido y actualización de la información de movimiento del bloque diana en base a la información de movimiento modificado.
[0011] En otro aspecto más, 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 diana, derivar una muestra de predicción realizando una interpredicción para el bloque diana 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 diana basado en el bloque reconstruido y una memoria configurada para actualizar la información de movimiento del bloque diana en base a la información de movimiento modificado.
[0012] De acuerdo con la presente descripción, después del procedimiento de decodificación de un bloque diana, información de movimiento modificado del bloque diana 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.
[0013] De acuerdo con la presente descripción, la información de movimiento de un siguiente bloque al lado del bloque diana puede ser derivada basada en la información de movimiento actualizada del bloque diana, 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
[0014]
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 divulgación.
La FIG. 2 es un diagrama esquemático que ilustra una configuración de un dispositivo de decodificación de video al que es aplicable la presente divulgació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 diana.
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 diana.
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 diana.
La FIG. 6 ilustra un ejemplo de un método para actualizar la información de movimiento del bloque diana 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 de fusión de un siguiente bloque vecino a los bloques diana en el caso de que la información de movimiento de los bloques diana se actualice a la información de movimiento modificado de los bloques diana.
La FIG. 9 ilustra un ejemplo de una lista de candidatos de fusión de un siguiente bloque vecino a los bloques diana en el caso de que la información de movimiento de los bloques diana se actualice a la información de movimiento modificado de los bloques diana.
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 diana en el caso de que la información de movimiento del bloque diana se actualice basándose en la información de movimiento modificado del bloque diana.
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 diana en el caso de que la información de movimiento del bloque diana se actualice basándose en la información de movimiento modificado del bloque diana.
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 video mediante un aparato de decodificación según la presente invención.
DESCRIPCIÓN DE FORMAS DE REALIZACIÓN EJEMPLARES
[0015] 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 divulgación sin apartarse del concepto de la divulgación.
[0016] 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.
[0017] 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.
[0018] 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.
[0019] 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.
[0020] La FIG. 1 ilustra brevemente una estructura de un dispositivo de codificación de video al que es aplicable la presente divulgación.
[0021] Haciendo referencia a la FIG. 1, un dispositivo de codificación de vídeo 100 incluye un divisor de imágenes 105, un predictor 110, un sustractor 115, un transformador 120, un cuantificador 125, un reorganizador 130, un codificador de entropía 135, un descuantificador 140, un transformador inverso 145, un sumador 150, un filtro 255, y una memoria 160.
[0022] El particionador de imagen 105 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 de acuerdo con 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 de acuerdo con las características del video. 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 subbloques. Un bloque de transformación puede dividirse de un bloque de unidad de codificación de acuerdo con 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.
[0023] 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).
[0024] 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.
[0025] El predictor 110 puede llevar a cabo la predicción en un bloque diana de procedimiento (en lo sucesivo, un bloque de corriente), y puede generar un bloque de predicción incluyendo muestras de predicción para el bloque de 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.
[0026] El predictor 110 puede determinar si se aplica intra-predicción o se aplica inter-predicción al bloque de corriente. Por ejemplo, el predictor 110 puede determinar si la intra-predicción o la inter-predicción se aplica en unidades de CU.
[0027] En el caso de la intra-predicción, el predictor 110 puede derivar una muestra de predicción para el bloque de corriente sobre la base de una muestra de referencia fuera del bloque de corriente en una imagen a la que pertenece el bloque de corriente (en lo sucesivo, una imagen de 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 vecinas del bloque de 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 vecinas del bloque de 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 intra-predicció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 de corriente utilizando el modo de predicción aplicado al bloque vecino.
[0028] En el caso de la inter-predicción, el predictor 110 puede derivar la muestra de predicción para el bloque de 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 de 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 vecino como información de movimiento del bloque de 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 vecino se usa como predictor de vector de movimiento y, por lo tanto, se usa como predictor de vector de movimiento del bloque de corriente para derivar un vector de movimiento del bloque de corriente.
[0029] En el caso de la inter-predicción, el bloque vecino puede incluir un bloque vecino espacial existente en la imagen de corriente y un bloque vecino temporal existente en la imagen de referencia. La imagen de referencia que incluye el bloque vecino 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 acceso indirecto.
[0030] Cuando la información de movimiento de un bloque vecino 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 pueden 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 de 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.
[0031] 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.
[0032] 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 intra-predicció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 y se transforma usando transformada de coseno discreta (DCT) en otros casos.
[0033] El cuantificador 125 puede cuantizar los coeficientes de transformada para generar un coeficiente de transformada cuantificado.
[0034] 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.
[0035] El codificador de entropía 135 puede realizar codificación de entropía en los coeficientes de transformación cuantificados. La codificación de entropía 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 de entropía 135 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 video 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 acceso indirecto.
[0036] El descuantificador 140 descuantifica valores (coeficientes de transformación) cuantificados por el cuantificador 125 y el transformador inverso 145 transforma inversamente valores descuantificados por el descuantificador 135 para generar una muestra residual.
[0037] 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.
[0038] 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.
[0039] 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 de acuerdo con un conjunto de imágenes de referencia o una lista de imágenes de referencia.
[0040] La FIG. 2 ilustra brevemente una estructura de un dispositivo de decodificación de video al que es aplicable la presente divulgación.
[0041] Haciendo referencia a la FIG. 2, un vídeo de dispositivo 200 de decodificación incluye un decodificador de entropía 210, un reorganizador 220, un descuantificador 230, un transformador inverso 240, un predictor 250, un sumador 260, un filtro 270, y una memoria 280.
[0042] Cuando se introduce un acceso indirecto que incluye información de video, el dispositivo de decodificación de video 200 puede reconstruir un video en asociación con un procedimiento mediante el cual se procesa la información de video en el dispositivo de codificación de video.
[0043] Por ejemplo, el vídeo del dispositivo 200 de decodificación 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 subbloques. 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.
[0044] El decodificador de entropía 210 puede analizar sintácticamente el acceso indirecto a la información de salida necesaria para la reconstrucción de vídeo o de reconstrucción de imagen. Por ejemplo, el decodificador de entropía 210 puede decodificar información en el acceso indirecto 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 video y un valor cuantificado de un coeficiente de transformada con respecto a un residual.
[0045] Más específicamente, un procedimiento de descodificación de entropía CABAC puede recibir un bin correspondiente a cada elemento de sintaxis en un acceso indirecto, determinan un modelo de contexto usando la descodificación de información de elemento de sintaxis diana y la decodificación de información de vecino y la decodificación de bloques o información de amabol diana/bin decodificado en un paso anterior, predice la probabilidad de generación de bin según el modelo de contexto determinado y realiza la decodificación aritmética del bin para generar un símbolo correspondiente a cada valor de elemento de sintaxis. Aquí, el método de decodificación de entropía 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.
[0046] La información sobre la predicción entre la información decodificada en el decodificador de entropía 210 puede proporcionarse al predictor 250 y los valores residuales, es decir, los coeficientes de transformación cuantificados, en los que la decodificación de entropía ha sido realizada por el decodificador de entropía 210 pueden introducirse en el reorganizador 220.
[0047] 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 cuantificador 230.
[0048] El descuantificador 230 puede de-cuantizar los coeficientes de transformada cuantificados sobre la base de una (de)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.
[0049] El transformador inverso 240 puede transformar inversamente los coeficientes de transformación a las muestras para derivar residuales.
[0050] El predictor 250 puede llevar a cabo la predicción de un bloque de corriente, y puede generar un bloque de predicción incluyendo muestras de predicción para el bloque de 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.
[0051] El predictor 250 puede determinar si debe aplicar intra-predicción o inter-predicción basada en información sobre una predicción. En este caso, una unidad para determinar cuál se utilizará entre la intra-predicción y la inter-predicció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 intra-predicción, la muestra de predicción se puede generar en la unidad de TU determinando el modo de predicción en unidad de PU.
[0052] En el caso de la intra-predicción, el predictor 250 puede derivar una muestra de predicción para un bloque de corriente sobre la base de una muestra de referencia vecina en una imagen de corriente. El predictor 250 puede derivar la muestra de predicción para el bloque de corriente aplicando un modo direccional o un modo no direccional basado en la muestra de referencia vecina del bloque de corriente. En este caso, se puede determinar un modo de predicción que se aplicará al bloque de corriente utilizando un modo de intra-predicción de un bloque vecino.
[0053] En el caso de inter-predicción, el predictor 250 puede derivar una muestra de predicción para un bloque de corriente sobre la base de una muestra especifica en una imagen de referencia de acuerdo con un vector de movimiento. El predictor 250 puede derivar la muestra de predicción para el bloque de 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 de corriente proporcionada por el dispositivo de codificación de video, 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.
[0054] En el modo de salto y el modo de combinación, la información de movimiento de un bloque vecino se puede usar como el movimiento de información del bloque de corriente. Aquí, el bloque vecino puede incluir un bloque vecino espacial y un bloque vecino temporal.
[0055] El predictor 250 puede construir una lista de candidatos de combinación que utiliza la información de movimiento de bloques vecinos 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 de 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 vecino 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.
[0056] 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.
[0057] En el caso del modo de MVP, el vector de movimiento del bloque de corriente se puede derivar usando un vector de movimiento de un bloque vecino como un predictor de vector de movimiento. Aquí, el bloque vecino puede incluir un bloque vecino espacial y un bloque vecino temporal.
[0058] Cuando se aplica el modo de mezcla, p. ej., una lista de candidatos de fusión se puede generar utilizando un vector de movimiento de un bloque reconstruido espacial vecino y/o un vector de movimiento correspondiente a un bloque de Col que es un bloque temporal vecino. Un vector de movimiento de un bloque candidato seleccionado de la lista de candidatos de fusión se utiliza como vector de movimiento del bloque de 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 de corriente usando el índice de fusión.
[0059] Cuando el modo de MVP (Motion Vector Prediction) 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 reconstruido vecino espacial y/o un movimiento de vector correspondiente a un bloque de Col que es un bloque vecino temporal. Es decir, el vector de movimiento del bloque vecino espacial reconstruido y/o el vector de movimiento correspondiente al bloque Col que es el bloque vecino 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 de 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 de corriente y un predictor de vector de movimiento, codificar el MVD y emitir el MVD codificado en forma de acceso indirecto. Es decir, el MVD se puede obtener restando el predictor del vector de movimiento del vector de movimiento del bloque de 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 de 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.
[0060] El sumador 260 puede añadir una muestra residual a una muestra de predicción para reconstruir un bloque de
corriente o una imagen de corriente. El sumador 260 puede reconstruir la imagen de 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.
[0061] 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.
[0062] 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 de acuerdo con 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.
[0063] Como se describió anteriormente, en el caso de que una interpredicción se realiza para un bloque diana, la información de movimiento para el bloque diana 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 diana, 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 diana puede no reflejarse perfectamente. Particularmente, en el caso de que el modo de fusión se aplique al bloque diana, la precisión de la información de movimiento para el bloque diana puede degradarse. Es decir, existe una gran diferencia entre un bloque de predicción derivado de la información de movimiento para el bloque diana y un bloque reconstruido del bloque diana. En este caso, la información de movimiento para el bloque diana se utiliza en un procedimiento de decodificación de un bloque siguiente vecino al bloque diana, y se puede propagar una distorsión y, a través de esto, se puede degradar la eficiencia de codificación general.
[0064] En consecuencia, en la presente invención, se propone un método en donde la información de movimiento modificado para el bloque diana se calcula basándose en un bloque reconstruido derivado después del procedimiento de decodificación del bloque diana, la información de movimiento del bloque diana se actualiza basándose en la información de movimiento modificado de tal modo que un siguiente bloque al lado del bloque diana pueda derivar información de movimiento más precisa. A través de esto, se puede mejorar la eficiencia de codificación general.
[0065] 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 diana. 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 diana destinado a imágenes de referencia que se codifica antes de la codificación de la imagen diana en donde se incluye el bloque diana. El bloque que coincide con el bloque diana puede definirse como un bloque de referencia, y una diferencia de posición entre el bloque diana se deriva suponiendo que el bloque de referencia está incluido en la imagen diana que es el mismo que el bloque diana y el bloque de referencia puede ser definido como un vector de movimiento del bloque diana. 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.
[0066] La información, incluyendo la información para el vector de movimiento para el bloque diana y la imagen de referencia puede ser definida como la información de movimiento del bloque diana. 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 diana para un siguiente bloque al lado del bloque diana que se codificará junto al bloque diana después de que el bloque diana se codifique o las imágenes se codifiquen junto a la imagen diana. 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 diana o las imágenes a codificar anidadas en el bloque diana. El método puede incluir el modo de fusión, que es un método para indexar la información de movimiento del bloque diana y transmitir la información de movimiento del siguiente bloque al lado del bloque diana 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 diana solo con un diferencial entre el vector de movimiento del siguiente bloque y el vector de movimiento del bloque diana.
[0067] La presente invención propone un método para actualizar la información de movimiento para la imagen diana o el
bloque diana después del procedimiento de codificación de la imagen diana o del bloque diana. Cuando se realiza y se codifica una interpredicción para el bloque diana, 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 diana, puede resultar difícil reflejar perfectamente un movimiento real del bloque diana. Dado que la información de movimiento del bloque diana puede usarse no solo en el procedimiento de interpredicciónna del bloque diana, sino que también influye en la imagen que se codifica después de la codificación de la imagen diana, incluido el siguiente bloque al lado del bloque diana codificado después de la codificación del bloque diana y la imagen diana, incluidos el siguiente bloque y el bloque diana, la eficiencia de codificación general puede degradarse.
[0068] 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 diana. Un aparato de codificación codifica un bloque diana (paso, S400). El aparato de codificación puede derivar una muestra de predicción realizando una interpredicción para el bloque diana y generar un bloque reconstruido del bloque diana en base a la muestra de predicción. El aparato de codificación puede derivar la información de movimiento del bloque diana para realizar la interpredicción y generar la información para la interpredicción del bloque diana que incluye la información de movimiento. La información de movimiento puede denominarse primera información de movimiento.
[0069] Después de realizar el procedimiento de codificación del bloque diana, el aparato de codificación calcula la información de movimiento modificado basada en el bloque reconstruido del bloque diana (paso, S410). El aparato de codificación puede calcular la información de movimiento modificado del bloque diana 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.
[0070] 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 diana debido a las características del cálculo la información de movimiento del bloque diana, 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 diana en donde se incluye el bloque diana, no después del procedimiento de codificación del bloque diana, por ejemplo. Es decir, el aparato de codificación puede realizar un procedimiento de codificación de la imagen diana 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 diana.
[0071] 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.
[0072] El aparato de codificación determina si se actualizará la información de movimiento del bloque diana (paso, 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 diana.
[0073] En el paso S420, en el caso de que se determine actualizar la información de movimiento del bloque diana, el aparato de codificación actualiza la información de movimiento del bloque diana basado en la información de movimiento modificado y almacenar la información de movimiento modificado (paso, 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 diana 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 diana 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.
[0074] Mientras tanto, en el paso S420, en el caso de que no se determina actualizar la información de movimiento del bloque diana, el aparato de codificación actualiza la (primera) información de movimiento (paso, 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.
[0075] 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 diana basándose en la información de movimiento modificado.
[0076] 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 diana. 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 acceso indirecto. 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).
[0077] 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 diana y la información de movimiento modificado basado en el bloque reconstruido del bloque diana sin recibir la bandera de actualización, y en el caso de que se determine que la información de movimiento del bloque diana se actualiza, el aparato de decodificación puede actualizar la información de movimiento del bloque diana 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 diana 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 diana 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 diana 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.
[0078] 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 diana, el procedimiento de codificación de un siguiente bloque al lado del bloque diana de la siguiente orden de codificación de bloque diana se puede realizar.
[0079] 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 diana. 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 diana (paso, S500). En el caso de que la interpredicción se aplique al bloque diana, el aparato de decodificación puede obtener información para la interpredicción del bloque diana a través de un acceso indirecto. El aparato de decodificación puede derivar información de movimiento del bloque diana basándose en la información para la interpredicción y derivar una muestra de predicción realizando la interpredicción para el bloque diana. 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 diana en base a la muestra de predicción.
[0080] El aparato de decodificación calcula información de movimiento modificado del bloque diana (paso, 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.
[0081] 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 diana debido a las características del cálculo de la información de movimiento del bloque diana, 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 diana en donde se incluye el
bloque diana, no después del procedimiento de decodificación del bloque diana, por ejemplo. Es decir, el aparato de decodificación puede realizar un procedimiento de decodificación de la imagen diana 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 diana.
[0082] 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 acceso indirecto. 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.
[0083] El aparato de decodificación determina si se actualizará la información de movimiento del bloque diana (paso, 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 diana. 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 diana.
[0084] 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 diana 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.
[0085] En el paso S520, en el caso de que se determine para actualizar la información de movimiento del bloque diana, el aparato de codificación actualiza la información de movimiento del bloque diana basado en la información de movimiento modificado y almacenar la información de movimiento actualizado (paso, 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 diana 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 diana 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.
[0086] Mientras tanto, en el paso S520, en el caso de que no se determina actualizar la información de movimiento del bloque diana, el aparato de decodificación almacena la (primera) información de movimiento (paso, 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.
[0087] 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 diana basada en la información de movimiento modificado.
[0088] 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 vecino 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 de acuerdo con el criterio de funcionamiento interno.
[0089] 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.
[0090] Un aparato de codificación puede medir un grado de distorsión mediante la acumulación de los valores diferenciales entre las muestras de acuerdo con las fases de un bloque diana 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 diana. Es decir, el aparato de codificación puede derivar la información de movimiento modificado del bloque diana basándose en un bloque de referencia cuyo residuo del bloque reconstruido (o bloque original) del bloque diana 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 diana y el bloque de referencia, puede derivarse en base a la siguiente ecuación.
[Ecuación 1]
altura anchura
SAD = 1 i 1 |BloqueCOrr (i, j) — Bloqueref (i, j) |
i
[0091] En la presente memoria, el Bloquecorr(i,j) representa una muestra reconstruida (o muestra original) de (ij) de coordenadas en el bloque reconstruido (o bloque original) del bloque diana, el Bloqueref (i,j) representa una muestra reconstruida de la coordenada (ij) 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).
[0092] 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 de acuerdo con las fases del bloque diana y el bloque de referencia, pueden derivarse sobre la base de la siguiente ecuación.
[Ecuación 2]
[0093] En la presente memoria, Bloquecorr(i,j) representa una muestra reconstruida (o muestra original) de (ij) de coordenadas en el bloque reconstruido (o bloque original) del bloque diana, Bloqueref( ij) representa una muestra reconstruida de la coordenada (ij) 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).
[0094] 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 diana 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 diana y, a través de esto, se puede mantener una baja complejidad de cálculo.
[0095] La FIG. 6 ilustra un ejemplo de un método para actualizar la información de movimiento del bloque diana a través del método de coincidencia de bloques por el aparato de decodificación. El aparato de decodificación decodifica el bloque diana (paso, S600). En el caso de que la interpredicción se aplique al bloque diana, el aparato de decodificación puede obtener información para la interpredicción del bloque diana a través de un acceso indirecto. Dado que el método de actualización de la información de movimiento del bloque diana 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 diana en base al bloque reconstruido del bloque diana.
[0096] 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 la imagen 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.
[0097] En el caso de que un tamaño del bloque reconstruido del bloque diana 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 (paso, S620). El tamaño específico puede estar preconfigurado y los bloques particionados pueden denominarse bloques sub reconstruidos. El aparato de decodificación puede dividir el bloque reconstruido en una pluralidad de subbloques reconstruidos y derivar un subbloque de referencia específico en una unidad de cada subbloque reconstruido dentro de una imagen de referencia para la información de movimiento modificado basada en los bloques sub reconstruidos y derivar los subbloques 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.
[0098] 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 diana 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 5x en el eje x y 5y en el eje y para el tiempo 8t, se puede establecer la siguiente ecuación.
[Ecuación 3]
[0099] En este documento, 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 diana.
[0100] 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]
[0101] Cuando se satisface la ecuación 4, se puede establecer la siguiente ecuación.
[Ecuación 5]
— ai Sx — ai 6y ai
dx dy J — dt St - 0
[0102] La ecuación 5 se reescribe, y la siguiente ecuación se puede derivar.
[Ecuación 6]
[0103] En este documento, Vx es un componente de vector en eje x del vector de movimiento calculado y Vy 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 (vx, vy) 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 diana que representa el objeto en muestras reconstruidas incluidas en una unidad de área de tamaño 3x3, y calcular el vector de movimiento (vx, vy) que acerca el término de la izquierda a 0 aplicando la ecuación a las muestras reconstruidas.
[0104] El formato de almacenamiento de la información de movimiento modificado del bloque diana 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 diana incluido en un siguiente bloque al lado del bloque diana o el bloque diana, 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 diana. 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.
[0105] En el caso de que solo haya una imagen de referencia de la imagen diana, 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 diana 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 diana 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 diana con la bipredicción a través del método descrito anteriormente. Sin embargo, incluso en el caso de que la imagen diana esté disponible para realizar la bipredicción, es decir, incluso en el caso de que un valor de POC de la imagen diana 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 diana es mayor que un valor umbral predeterminado. Por ejemplo, en el caso de que la información de movimiento modificado del bloque diana 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 diana es mayor que un valor umbral predeterminado, de acuerdo con 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 diana 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.
[0106] 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 diana se puede aplicar por el uso de la información de movimiento del bloque al lado del bloque diana y, alternativamente, el método de no actualizar la información de movimiento del bloque diana 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 diana en base a la información de movimiento modificado puede ser más apropiado.
[0107] 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 LI). 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.
[0108] 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.
[0109] 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 de 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 diana, incluido el bloque diana entre las imágenes de referencia incluidas en la lista de imágenes de referencia.
[0110] 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).
[0111] 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 diana 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.
[0112] 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.
[0113] 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.
[0114] La FIG. 7 ilustra imágenes de referencia que se pueden utilizar en la información de movimiento modificado.
[0115] Haciendo referencia a la FIG. 7, en el caso de que una imagen diana sea una imagen cuyo valor POC sea 3, se puede realizar la bipredicción para la imagen diana, 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 diana. L0 de la imagen diana 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 diana 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 diana como una imagen de referencia que tiene un POC del cual el valor absoluto de una diferencia de la imagen diana 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 diana. 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.
[0116] Además, en referencia a la FIG. 7, en el caso de que una imagen diana sea una imagen cuyo valor POC sea 8, la imagen diana puede realizar la predicción única y una imagen cuyo valor POC sea 0 puede derivarse como imagen de referencia de la imagen diana. L0 de la imagen diana 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 diana como una imagen de referencia que tiene un POC cuyo valor absoluto de una diferencia con el POC de la imagen diana 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 de 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.
[0117] Con referencia a las realizaciones descritas anteriormente, la imagen de referencia de la información de movimiento modificado de la imagen diana puede derivarse para indicar una imagen de referencia que tiene un POC cuyo valor absoluto de una diferencia del p Oc de la imagen diana 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 diana sea una imagen de la cual POC es 8, la
unipredicción se realiza ya que la imagen diana 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 diana es una imagen en donde POC es 3, la bipredicción está disponible y la información de movimiento modificado de la imagen diana puede determinarse como información de movimiento de bipredicción. Además, incluso en el caso de que la imagen diana 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 diana, 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.
[0118] 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 diana 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 diana 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 diana 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 diana, 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 diana 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 diana 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.
[0119] En el caso de que la información de movimiento del bloque diana 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 diana se puede realizar utilizando la información de movimiento modificado (el bloque diana 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 diana 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 diana 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.
[0120] La FIG. 8 ilustra un ejemplo de una lista de candidatos de fusión de un siguiente bloque al lado de los bloques diana en el caso de que la información de movimiento de los bloques diana se actualice a la información de movimiento modificado de los bloques diana. Haciendo referencia a la FIG. 8, el aparato de codificación configura la lista de candidatos de fusión del siguiente bloque que incluye los bloques diana. El aparato de codificación transmite 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 fusión. En este caso, la información de movimiento actualizada de los bloques diana se usa para la información de movimiento de un bloque candidato vecino espacial del siguiente bloque, o alternativamente, se usa para la información de movimiento de un bloque candidato vecino temporal. La información de movimiento de los bloques diana puede incluir la información de movimiento modificado de los bloques diana. Como se muestra en la FIG. 8, la información de movimiento del bloque candidato vecino 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 diana 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.
[0121] FIG. 9 ilustra un ejemplo de una lista de candidatos de fusión de un siguiente bloque al lado de los bloques diana en el caso de que la información de movimiento de los bloques diana se actualice a la información de movimiento modificado de los bloques diana. La (primera) información de movimiento y la información de movimiento modificado utilizadas en la predicción del bloque diana al lado del siguiente bloque pueden almacenarse. En este caso, el aparato de codificación puede configurar el bloque diana que indica la información de movimiento modificado del bloque diana que se calcula nuevamente en la lista de candidatos de fusión del siguiente bloque como un bloque de candidatos de fusión independiente. Como se muestra en la FIG. 9, el bloque diana que indica la información de movimiento modificado del bloque diana puede insertarse en la lista de candidatos de fusión junto al bloque diana que indica la (primera) información de movimiento que se aplica en el procedimiento de codificación del bloque diana al lado del siguiente bloque. Además, se puede cambiar la prioridad de la lista de candidatos de fusión y se puede configurar de manera diferente el número de posiciones insertadas.
[0122] Aunque A1 y B1 se ilustran como un ejemplo de los bloques diana 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.
[0123] Por ejemplo, el siguiente bloque puede estar ubicado en una imagen diferente del bloque diana, y el bloque de candidatos vecinos temporal del bloque siguiente puede ser incluido en la lista de candidatos de combinación. La información de movimiento del bloque candidato vecino temporal puede seleccionarse mediante el índice de fusión del siguiente bloque. En este caso, la información de movimiento del bloque candidato vecino temporal puede actualizarse a la información de movimiento modificado a través del método descrito anteriormente, y el bloque candidato vecino 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 vecino temporal pueden almacenarse por separado. En este caso, en el procedimiento de generar la lista de candidatos de fusión del siguiente bloque, el bloque de candidatos vecino temporal que indica la información de movimiento modificado puede insertarse como un candidato adicional de la lista de candidatos de fusión.
[0124] 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 vecinos del siguiente bloque.
[0125] 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 diana en el caso de que la información de movimiento del bloque diana se actualice basándose en la información de movimiento modificado del bloque diana. El aparato de codificación puede seleccionar la información de movimiento de acuerdo con 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 vecino en la lista de candidatos de fusión en el bloque de candidatos de 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 vecinos del modo AMVP se puede aplicar al método de insertar la información de movimiento actualizada del bloque vecino como un candidato de predictor de vector de movimiento espacial o temporal (MVP). Como se muestra en la f Ig .10, el aparato de codificación puede detectar si la información de movimiento actualizada del bloque diana A0 y el bloque diana A1 del siguiente bloque vecino está de acuerdo con una condición específica predefinida en el orden de la dirección de la flecha y derivar la información de movimiento actualizada de acuerdo con 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.
[0126] Además, el aparato de codificación puede detectar si la información de movimiento actualizada del bloque diana B0, bloque diana B1 y bloque diana B2 del siguiente bloque vecino está de acuerdo con una condición específica predefinida en un orden de la dirección de la flecha y derivar la información de movimiento actualizada de acuerdo con 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.
[0127] Además, el siguiente bloque se puede posicionar en una imagen diferente desde el bloque diana, 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á de acuerdo con una condición específica predefinida en un orden de la información de movimiento actualizado del bloque diana TO ubicado en la imagen de referencia del siguiente bloque a la información de movimiento actualizada del bloque diana T1 y derivar la información de movimiento actualizada de acuerdo con 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.
[0128] 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.
[0129] FIG. 11 ilustra un ejemplo de una lista de candidatos de predictores de vectores de movimiento de un siguiente bloque al lado del bloque diana en el caso de que la información de movimiento del bloque diana se actualice basándose en la información de movimiento modificado del bloque diana. En el caso de que la información de movimiento del bloque diana 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 diana A0 y el bloque diana A1 del siguiente bloque vecino está de acuerdo con una condición específica en el orden de la dirección de la flecha y deriva la información de movimiento existente de acuerdo con 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.
[0130] Además, el aparato de codificación puede detectar si la información de movimiento modificado del bloque diana A0 y el bloque diana A1 está de acuerdo con una condición específica en un orden de la dirección de la flecha y derivar la información de movimiento modificado de acuerdo con 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.
[0131] Además, el aparato de codificación puede detectar si la información de movimiento actual de bloque diana B0, bloque diana B1 y bloque diana B2 del siguiente bloque vecino está de acuerdo con una condición específica predefinida en un orden de la dirección de la flecha y derivar la información de movimiento existente de acuerdo con 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.
[0132] Además, el aparato de codificación puede detectar si la información de movimiento modificado de bloque diana B0, bloque diana B1 y bloque diana B2 está de acuerdo con 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.
[0133] Además, el aparato de codificación puede detectar si está de acuerdo con una condición específica en un orden de la información de movimiento existente del bloque diana TO ubicado en la imagen de referencia del siguiente bloque a la información de movimiento existente del bloque diana T1 y derivar la información de movimiento existente de acuerdo con 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.
[0134] Además, el aparato de codificación puede detectar si está de acuerdo con una condición específica en un orden de la información de movimiento modificado del bloque diana TO situado en la imagen de referencia del siguiente bloque a la información de movimiento modificada del bloque diana T1 y derivar la información de movimiento modificado de acuerdo con 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.
[0135] 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 la lista de candidatos de predictores de movimiento.
[0136] 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, los pasos S1200 a S1230 de la FIG. 12 pueden realizarse mediante una unidad de predicción del aparato de codificación y el paso S1240 puede realizarse mediante una memoria del aparato de codificación.
[0137] El aparato de codificación genera la información de movimiento para el bloque diana (paso, S1200). El aparato de codificación puede aplicar la predicción mutua al bloque diana. En el caso de que la interpredicción se aplique al bloque diana, el aparato de codificación puede generar la información de movimiento para el bloque diana 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 diana basándose en la información de movimiento de un bloque al lado del bloque diana. 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).
[0138] En el caso del modo AMVP, el aparato de codificación puede derivar el vector de movimiento del bloque diana utilizando el vector de movimiento del bloque al lado del bloque diana 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.
[0139] El aparato de codificación se deriva una muestra de predicción mediante la realización de la interpredicción para el bloque diana en base a la información de movimiento (paso, S1210). El aparato de codificación puede generar la muestra de predicción del bloque diana basándose en el índice de imagen de referencia y el vector de movimiento incluido en la información de movimiento.
[0140] El aparato de codificación genera un bloque reconstruido sobre la base de la muestra de predicción (paso, S1220). El aparato de codificación puede generar el bloque reconstruido del bloque diana basándose en la muestra de predicción o generar una señal residual del bloque diana y generar el bloque reconstruido del bloque diana basándose en la señal residual y la muestra de predicción.
[0141] El aparato de codificación genera información de movimiento modificado para el bloque diana en base al bloque reconstruido (paso, 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.
[0142] 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 de acuerdo con las fases del bloque reconstruido del bloque diana 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 el índice 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 diana entre los bloques de referencia en la imagen de referencia específica como el bloque de referencia específico 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.
[0143] 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.
[0144] 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 subreconstruidos, y un bloque subreconstruido específico puede derivar en una unidad de subbloque 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 subbloques reconstruidos específicos derivados.
[0145] 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 diana basándose en la suposición de que la velocidad de un objeto en el bloque diana 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 diana puede configurarse como un área de tamaño 3x3.
[0146] 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).
[0147] Además, la bipredicción está disponible para ser realizada en la imagen diana en donde está incluido el bloque diana, 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 diana es mayor que un valor umbral específico. El valor de umbral puede estar preconfigurado.
[0148] 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 diana 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.
[0149] 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 de acuerdo con 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 diana 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.
[0150] Además, en el caso de que el valor diferencial entre las muestras de acuerdo con 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 diana 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 diana 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 diana como la información de movimiento modificado o puede no calcular la información de movimiento modificado.
[0151] 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.
[0152] 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.
[0153] 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 diana 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 diana 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.
[0154] 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).
[0155] 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 diana 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.
[0156] 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.
[0157] Además, aunque no se muestra, el aparato de codificación puede generar la información de movimiento modificado
del bloque diana basado en el bloque original del bloque diana. 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.
[0158] El aparato de codificación actualiza la información de movimiento del bloque diana basado en la información de movimiento modificado (paso, S1240). El aparato de codificación puede almacenar la información de movimiento modificado y actualizar la información de movimiento del bloque diana. El aparato de codificación puede actualizar la información de movimiento del bloque diana mediante el documento sustituyendo la información de movimiento utilizada para predecir el bloque diana por la información de movimiento modificado. Además, el aparato de codificación puede actualizar la información de movimiento del bloque diana almacenando toda la información de movimiento y la información de movimiento modificado utilizada para predecir el bloque diana. La información de movimiento actualizada puede usarse para la información de movimiento del siguiente bloque al lado del bloque diana. Por ejemplo, el modo de fusión se aplica al siguiente bloque al lado del bloque diana, la lista de candidatos a fusionar del siguiente bloque puede incluir el bloque diana. En el caso de que la información de movimiento del bloque diana se almacene sustituyendo la información de movimiento utilizada en la predicción del bloque diana por la información de movimiento modificado, la lista de candidatos de fusión del siguiente bloque puede incluir el bloque diana 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 diana se almacenan en la información de movimiento del bloque diana, la lista de candidatos de fusión del siguiente bloque puede incluir el bloque diana que indica la información de movimiento utilizada para predecir el bloque diana y el bloque diana que indica la información de movimiento modificado. El bloque diana que indica la información de movimiento modificado puede insertarse como el bloque candidato vecino espacial en la lista de candidatos para la fusión o insertarse como el bloque candidato vecino temporal en la lista de candidatos para la fusión.
[0159] Para otro ejemplo, el modo AMVP se aplica al siguiente bloque al lado del bloque diana, como el método de insertar la información de movimiento actualizada del bloque diana vecino al siguiente bloque en la lista de candidatos de fusión en el modo de fusión descrito anteriormente como la información de movimiento vecino espacial o temporal, el método de insertar la información de movimiento actualizada del bloque vecino 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 diana vecino al siguiente bloque.
[0160] Por ejemplo, en el caso de que la información de movimiento actualizada del bloque diana 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.
[0161] En otro ejemplo, en el caso de que la información de movimiento actualizada del bloque diana al lado del siguiente bloque incluye la información de movimiento modificado y la información de movimiento existente del bloque diana, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado seleccionado de acuerdo con una condición específica entre la información de movimiento existente seleccionada de acuerdo con una condición específica y la información de movimiento modificado de los bloques diana adyacentes al siguiente bloque entre la información de movimiento existente del bloque diana adyacente al siguiente bloque como el respectivo candidato de predictor de vector de movimiento espacial.
[0162] 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.
[0163] 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.
[0164] 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 diana, 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.
[0165] Mientras tanto, aunque no se muestra, el aparato de codificación puede determinar si se actualizará la (primera) información de movimiento del bloque diana 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 diana. Por ejemplo, el aparato de codificación puede determinar si actualizar el bloque diana 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 diana 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 diana. 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 diana.
[0166] Además, el aparato de codificación puede determinar si actualizar la (primera) información de movimiento del bloque diana 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 diana. Por ejemplo, el aparato de codificación puede determinar si actualizar el bloque diana 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 diana 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 diana. 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 diana.
[0167] 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 acceso indirecto. 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).
[0168] 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.
[0169] Aunque no se muestra, el aparato de codificación puede codificar y emitir la información sobre la muestra residual para el bloque diana. La información sobre la muestra residual puede incluir coeficientes de transformación para la muestra residual.
[0170] La FIG. 13 ilustra esquemáticamente un método de decodificación de video 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, el paso S1300 de la FIG. 13 puede realizarse mediante una unidad de decodificación de entropía del aparato de decodificación, los pasos S1310 a S1340 pueden realizarse mediante una unidad de predicción del aparato de decodificación y el paso S1350 puede realizarse mediante una memoria del aparato de decodificación.
[0171] El aparato de decodificación obtiene la información para la interpredicción del bloque diana a través de un acceso indirecto (etapa, S1300). La interpredicción o una intrapredicción se pueden aplicar al bloque diana. En el caso de que la interpredicción se aplique al bloque diana, el aparato de decodificación puede obtener la información para la interpredicción del bloque diana a través del acceso indirecto. 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 diana y la información de movimiento modificado a través del acceso indirecto. Además, el aparato de decodificación puede obtener información adicional sobre si actualizar el bloque diana a través del acceso indirecto. Por ejemplo, la información adicional que indica si se debe actualizar puede denominarse bandera de actualización.
[0172] El aparato de decodificación deriva la información de movimiento del bloque diana basándose en la información sobre la interpredicción (paso, 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 diana 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 diana, el aparato de decodificación puede generar la lista de
candidatos de fusión que incluye bloques vecinos del bloque diana y obtener un índice de fusión que indica un bloque vecino entre los bloques vecinos incluidos en la lista de candidatos de 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 vecino indicado por el índice de fusión como la información de movimiento del bloque diana.
[0173] En el caso de que el modo AMVP se aplica al bloque diana, el aparato de decodificación puede generar una lista sobre la base de los bloques vecinos del bloque diana, como en el modo de combinación. El aparato de decodificación puede generar el índice que indica un bloque vecino entre los bloques vecinos incluidos en la lista generada y una diferencia de vector de movimiento (MVD) entre el vector de movimiento del bloque vecino indicado por el índice y el vector de movimiento del bloque diana. 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 diana basándose en el vector de movimiento del bloque vecino indicado por el índice y el MVD.
[0174] 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).
[0175] El aparato de decodificación se deriva una muestra de predicción mediante la realización de la interpredicción para el bloque diana sobre la base de la información de movimiento (paso, S1320). El aparato de decodificación puede generar la muestra de predicción del bloque diana basándose en el índice de imagen de referencia y el vector de movimiento incluido en la información de movimiento.
[0176] El aparato de decodificación genera un bloque reconstruido sobre la base de la muestra de predicción (paso, S1330). En el caso de que se aplique el modo de salto al bloque diana, el aparato de decodificación puede generar el bloque reconstruido del bloque diana 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 diana, el aparato de decodificación puede generar una señal residual del bloque diana a través del acceso indirecto y generar el bloque reconstruido del bloque diana en base a la señal residual y la muestra de predicción.
[0177] El aparato de codificación deriva información de movimiento modificado para el bloque diana en base al bloque reconstruido (paso, 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.
[0178] 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 de acuerdo con las fases del bloque reconstruido del bloque diana 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 el índice 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 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 diana entre los bloques de referencia en la imagen de referencia específica como bloque de referencia específico 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.
[0179] 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.
[0180] 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 subreconstruidos, y un bloque subreconstruido específico puede derivar en una unidad de subbloque 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 subbloques reconstruidos específicos derivados.
[0181] 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 diana basándose en la suposición de que la velocidad de un objeto en el bloque diana 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 diana puede configurarse como un área de tamaño 3x3.
[0182] 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).
[0183] Además, la bipredicción está disponible para ser realizada en la imagen diana en donde está incluido el bloque diana, 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 diana es mayor que un valor umbral específico. El valor de umbral puede estar preconfigurado.
[0184] 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 de acuerdo con 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 diana 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.
[0185] 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 de acuerdo con 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 diana 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.
[0186] Además, en el caso de que el valor diferencial entre las muestras de acuerdo con 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 diana es mayor que el valor umbral preconfigurado y en el caso de que el valor diferencial entre las muestras de acuerdo con 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 diana 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 diana como la información de movimiento modificado o puede no calcular la información de movimiento modificado.
[0187] 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.
[0188] 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.
[0189] 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 diana 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 diana 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.
[0190] 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).
[0191] 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 diana 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.
[0192] 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.
[0193] 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 diana y el vector de movimiento modificado a través de la acceso indirecto. 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 diana 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.
[0194] El aparato de decodificación actualiza la información de movimiento del bloque diana basado en la información de movimiento modificado (paso, S1350). El aparato de decodificación puede almacenar la información de movimiento modificado y actualizar la información de movimiento del bloque diana. El aparato de decodificación puede actualizar la información de movimiento del bloque diana sustituyendo la información de movimiento utilizada en la predicción del bloque diana por la información de movimiento modificado. Además, el aparato de decodificación puede actualizar la información de movimiento del bloque diana almacenando toda la información de movimiento y la información de movimiento modificado utilizada para predecir el bloque diana. La información de movimiento actualizada puede usarse para la información de movimiento del siguiente bloque al lado del bloque diana.
[0195] Por ejemplo, el modo de mezcla se aplica al siguiente bloque al lado del bloque diana, la lista de candidato de combinación del siguiente bloque puede incluir el bloque diana. En el caso de que la información de movimiento del bloque diana se almacene sustituyendo la información de movimiento utilizada en la predicción del bloque diana por la información de movimiento modificado, la lista de candidatos de fusión del siguiente bloque puede incluir el bloque diana 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 diana se almacenan en la información de movimiento del bloque diana, la lista de candidatos de fusión del siguiente bloque puede incluir el bloque diana que indica la información de movimiento utilizada para predecir el bloque diana y el bloque diana que indica la información de movimiento modificado. El bloque diana que indica la información de movimiento modificado puede insertarse como el bloque candidato vecino espacial en la lista de candidatos de fusión o insertarse como el bloque de candidatos vecinos temporal en la lista de candidatos de fusión.
[0196] En otro ejemplo, el modo de AMVP se aplica al siguiente bloque al lado del bloque diana, al igual que el método de inserción de la información de movimiento actualizada del bloque diana 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 vecino espacial o temporal, el método de insertar la información de movimiento actualizada del bloque vecino 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
diana al lado del siguiente bloque.
[0197] Por ejemplo, en el caso de que la información de movimiento actualizada del bloque diana 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.
[0198] En otro ejemplo, en el caso de que la información de movimiento actualizada del bloque diana al lado del siguiente bloque incluye la información de movimiento modificado y la información de movimiento existente del bloque diana, la lista de candidatos de predictores de vector de movimiento puede incluir la información de movimiento modificado seleccionado de acuerdo con una condición específica entre la información de movimiento existente seleccionada de acuerdo con una condición específica y la información de movimiento modificado de los bloques diana adyacentes al siguiente bloque entre la información de movimiento existente del bloque diana adyacente al siguiente bloque como el respectivo candidato de predictores de vector de movimiento espacial.
[0199] 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.
[0200] 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.
[0201] 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 diana, 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.
[0202] Mientras tanto, aunque no se muestra, el aparato de decodificación puede determinar si actualizará la (primera) información de movimiento de del bloque diana 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 diana. Por ejemplo, el aparato de decodificación puede determinar si actualizar el bloque diana 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 diana 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 diana. 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 diana.
[0203] Mientras tanto, el aparato de decodificación puede obtener la información adicional que indica si se actualizará el bloque diana a través del acceso indirecto. 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).
[0204] Según la presente invención descrita anteriormente, después del procedimiento de decodificación de un bloque diana, la información de movimiento modificado del bloque diana 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.
[0205] Además, de acuerdo con la presente invención, la información de movimiento de un siguiente bloque al lado del
bloque diana se puede derivar sobre la base de la información de movimiento actualizada del bloque diana, 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.
[0206] El método de acuerdo con 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 divulgació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.
[0207] Cuando las realizaciones de la presente divulgació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 (14)
1. Un método de decodificación de imágenes realizado por un aparato de decodificación (200), comprendiendo el método:
derivar la información de movimiento de un primer bloque diana;
derivar información de movimiento modificado para el primer bloque diana en base a la información de movimiento y la bipredicción;
cuando se aplica un modo de fusión a un segundo bloque diana, configurar una lista de candidatos de fusión para el segundo bloque diana en base a bloques vecinos espaciales y un bloque vecino temporal del segundo bloque diana;
recibir un índice de fusión para el segundo bloque diana;
seleccionar uno de los candidatos a la combinación que constituyen la lista de candidatos a la combinación en función del índice de combinación;
derivar información de movimiento del segundo bloque diana basándose en el candidato de fusión seleccionado; y
generar una muestra de predicción para el segundo bloque diana mediante la realización de interpredicción basada en la información de movimiento del segundo bloque diana, en donde los candidatos de fusión incluyen candidatos de información de movimiento espacial y un candidato de información de movimiento temporal, en donde el candidato de información de movimiento temporal se deriva basándose en el bloque vecino temporal, y en donde cuando el bloque vecino temporal corresponde al primer bloque diana, el candidato de información de movimiento temporal se deriva utilizando la información de movimiento modificado del primer bloque diana, caracterizado porque cuando el bloque vecino espacial corresponde al primer bloque diana, el candidato de información de movimiento espacial se deriva utilizando la información de movimiento del primer bloque diana.
2. El método de decodificación de imágenes de la reivindicación 1, que comprende además:
determinar si se debe actualizar la información de movimiento del primer bloque diana,
cuando se determina que la información de movimiento del primer bloque diana se actualiza, la información de movimiento del primer bloque diana es actualizada en base a la información de movimiento modificado del primer bloque diana.
3. El método de decodificación de imágenes de la reivindicación 2, en donde la información de movimiento actualizada se usa para derivar información de movimiento de un siguiente bloque espacialmente vecino al primer bloque diana en la primera imagen.
4. El método de decodificación de imágenes de la reivindicación 1, en donde cuando una unidad de vector de movimiento incluida en la información de movimiento del primer bloque diana representa una unidad de 1/4 de muestra fraccionaria, la unidad de vector de movimiento incluida en la información de movimiento modificado del primer bloque diana representa una unidad de 1/8 de muestra fraccionaria.
5. El método de decodificación de imágenes de la reivindicación 1, en donde el paso de derivar la información de movimiento modificado incluye:
derivar una imagen de referencia específica para la información de movimiento modificado entre las imágenes de referencia;
detectar un bloque de referencia específico entre los bloques de referencia en la imagen de referencia específica; y
derivar la información de movimiento modificado que incluye el índice de imagen de referencia modificada que indica la imagen de referencia específica y el vector de movimiento modificado que indica el bloque de referencia específico.
6. El método de decodificación de imágenes de la reivindicación 5, en donde el bloque de referencia específico se deriva como un bloque de referencia cuya suma de diferencia, SAD, del bloque de referencia es un mínimo entre los bloques de referencia en la imagen de referencia específica, en donde el SAD es determinado en base a la siguiente ecuación:
altura anchura
en este caso, el Bloquear (i,j) representa una muestra reconstruida de la coordenada (i,j) en el bloque reconstruido, el Bloqueref (i,j) representa una muestra reconstruida de la coordenada (i,j) en el bloque de referencia, 'ancho' representa un ancho del bloque reconstruido y 'alto' representa una altura del bloque reconstruido.
7. El método de decodificación de imágenes de la reivindicación 5,
en donde la imagen de referencia específica para la información de movimiento modificado se deriva como una imagen de referencia indicada por el índice de imagen de referencia incluido en la información de movimiento, y
en donde el bloque de referencia del cual se deriva SAD del bloque de referencia como el bloque de referencia específico entre los bloques de referencia incluidos en un área predeterminada del bloque de referencia que se deriva de la imagen de referencia específica en base al vector de movimiento incluido en la información de movimiento.
8. El método de decodificación de imágenes de la reivindicación 1, que comprende además:
cuando el tamaño de un primer bloque diana es mayor que un tamaño preconfigurado, dividir el primer bloque diana en una pluralidad de subbloques; y
derivar un subbloque de referencia en una unidad de cada subbloque en una imagen de referencia, en donde la información de movimiento modificado para los subbloques en el primer bloque diana se deriva en base a los subbloques de referencia derivados.
9. El método de decodificación de imágenes de la reivindicación 1, en donde la información de movimiento modificado para el primer bloque diana se deriva a través de un método de flujo óptico, FO, realizado basándose en el vector de movimiento L0 y el vector de movimiento L1 incluidos en la información de movimiento.
10. El método de decodificación de imágenes de la reivindicación 1,
en donde la información de movimiento modificado es información de movimiento de bipredicción, y
en donde la información de movimiento de bipredicción incluye vector de movimiento L0 e índice de imagen de referencia L0, y vector de movimiento L1 e índice de imagen de referencia L1.
11. El método de decodificación de imágenes de la reivindicación 10,
en donde el índice de imagen de referencia L0 de la información de movimiento modificado indica una imagen de referencia que tiene un recuento de orden de imágenes, POC, cuyo valor absoluto de una diferencia con el POC de la primera imagen en donde el primer bloque diana que se incluye es el más pequeño entre las imágenes de referencia incluidas en la lista de imágenes de referencia L0, y
en donde el índice de imágenes de referencia L1 de la información de movimiento modificado indica una imagen de referencia que tiene un recuento de orden de imágenes, POC, cuyo valor absoluto de una diferencia del POC de la primera imagen en donde se incluye el primer bloque diana es la más pequeña entre las imágenes de referencia incluidas en la lista de imágenes de referencia L1.
12. El método de decodificación de imágenes de la reivindicación 1, que comprende además:
determinar se puede determinar si actualizar la información de movimiento del primer bloque diana, en donde se puede determinar si actualizar la información de movimiento del primer bloque diana comparando una cantidad de datos de una señal residual entre un bloque de referencia específico derivado en base a la información de movimiento modificado y un bloque reconstruido del primer bloque y una cantidad de datos de una señal residual entre un bloque de referencia derivado en base a la información de movimiento y el bloque reconstruido del primer bloque.
13. Un método de codificación de imágenes realizado por un aparato de codificación (100), comprendiendo el método:
derivar información de movimiento de un primer bloque diana;
derivar información de movimiento modificado para el primer bloque diana en base a la información de movimiento y la bipredicción;
cuando se aplica un modo de fusión a un segundo bloque diana, configurar una lista de candidatos de fusión para el segundo bloque diana en base a bloques vecinos espaciales y un bloque vecino temporal del segundo bloque diana;
seleccionar uno de los candidatos combinados que constituyen la lista de candidatos combinados; generar un índice de fusión para el segundo bloque diana que indica el candidato de fusión seleccionado; y codificar información de imagen que incluye el índice de fusión,
en donde los candidatos de fusión incluyen candidatos de información de movimiento espacial y un candidato de información de movimiento temporal, en donde el candidato de información de movimiento temporal se deriva basándose en el bloque vecino temporal, y
en donde cuando el bloque vecino temporal corresponde al primer bloque diana, el candidato de información de movimiento temporal se deriva utilizando la información de movimiento modificado del primer bloque diana, caracterizado porque cuando el bloque vecino espacial corresponde al primer bloque diana, el candidato de información de movimiento espacial se deriva utilizando la información de movimiento del primer bloque diana.
14. Un medio de almacenamiento no transitorio legible por computadora que almacena datos de video codificados que comprenden información sobre instrucciones que, cuando son ejecutadas por una computadora, hacen que la computadora realice el método de cualquiera de las reivindicaciones 1 a 12.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/KR2016/014167 WO2018105757A1 (ko) | 2016-12-05 | 2016-12-05 | 영상 코딩 시스템에서 영상 디코딩 방법 및 장치 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2886871T3 true ES2886871T3 (es) | 2021-12-21 |
Family
ID=62492214
Family Applications (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| 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 |
| 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 Before (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| 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 |
Country Status (13)
| Country | Link |
|---|---|
| US (4) | US10764598B2 (es) |
| EP (4) | EP3541073B1 (es) |
| KR (5) | KR102322128B1 (es) |
| CN (4) | CN110121883B (es) |
| DK (2) | DK3541073T3 (es) |
| ES (3) | ES3023748T3 (es) |
| FI (1) | FI4090025T3 (es) |
| HR (1) | HRP20250444T1 (es) |
| HU (3) | HUE055198T2 (es) |
| PL (3) | PL3541073T3 (es) |
| PT (1) | PT3855745T (es) |
| SI (2) | SI3855745T1 (es) |
| WO (1) | WO2018105757A1 (es) |
Families Citing this family (34)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3541073B1 (en) * | 2016-12-05 | 2021-06-16 | LG Electronics Inc. | Method and storage medium for decoding an image in an image coding system |
| KR102620410B1 (ko) | 2017-08-29 | 2024-01-03 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
| CN117336506A (zh) * | 2018-03-19 | 2024-01-02 | 英迪股份有限公司 | 图像解码方法、图像编码方法和存储比特流的记录介质 |
| 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 |
| WO2020003282A1 (en) | 2018-06-29 | 2020-01-02 | Beijing Bytedance Network Technology Co., Ltd. | Managing motion vector predictors for video coding |
| CN110662052B (zh) | 2018-06-29 | 2022-07-08 | 北京字节跳动网络技术有限公司 | 更新查找表(lut)的条件 |
| EP4322533A3 (en) | 2018-06-29 | 2024-03-06 | Beijing Bytedance Network Technology Co., Ltd. | Checking order of motion candidates in lut |
| KR102680903B1 (ko) | 2018-06-29 | 2024-07-04 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | Hmvp 후보를 병합/amvp에 추가할 때의 부분/풀 프루닝 |
| KR102627814B1 (ko) | 2018-06-29 | 2024-01-23 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 룩업 테이블의 업데이트: fifo, 제약된 fifo |
| SG11202013028PA (en) | 2018-06-29 | 2021-01-28 | Beijing Bytedance Network Technology Co Ltd | Interaction between lut and amvp |
| KR102840294B1 (ko) | 2018-06-29 | 2025-07-30 | 두인 비전 컴퍼니 리미티드 | 하나 또는 다수의 룩업 테이블들을 사용하여 이전에 코딩된 모션 정보를 순서대로 저장하고 이를 사용하여 후속 블록들을 코딩하는 개념 |
| WO2020003265A1 (en) | 2018-06-29 | 2020-01-02 | Beijing Bytedance Network Technology Co., Ltd. | Conditions of usage of luts |
| CN110677669B (zh) * | 2018-07-02 | 2021-12-07 | 北京字节跳动网络技术有限公司 | 具有lic的lut |
| WO2020007362A1 (en) | 2018-07-06 | 2020-01-09 | Mediatek Inc. | Inherited motion information for decoding a current coding unit in a video coding system |
| US11838514B2 (en) | 2018-08-06 | 2023-12-05 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and device, and recording medium storing bitstream |
| WO2020053798A1 (en) | 2018-09-12 | 2020-03-19 | Beijing Bytedance Network Technology Co., Ltd. | Conditions for starting checking hmvp candidates depend on total number minus k |
| CN119996670A (zh) * | 2018-09-18 | 2025-05-13 | 韩国电子通信研究院 | 图像编码/解码方法和装置以及存储比特流的记录介质 |
| GB2577318B (en) | 2018-09-21 | 2021-03-10 | Canon Kk | Video coding and decoding |
| GB2579763B (en) * | 2018-09-21 | 2021-06-09 | 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 |
| BR112020014544A2 (pt) | 2018-12-12 | 2021-08-03 | Lg Electronics Inc. | método e aparelho para processamento de sinal de vídeo baseado em predição de vetor de movimento baseado em histórico |
| KR102648159B1 (ko) | 2019-01-10 | 2024-03-18 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | Lut 업데이트의 호출 |
| WO2020143824A1 (en) | 2019-01-13 | 2020-07-16 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between lut and shared merge list |
| CN113330739B (zh) | 2019-01-16 | 2025-01-10 | 北京字节跳动网络技术有限公司 | Lut中的运动候选的插入顺序 |
| CN113615193B (zh) | 2019-03-22 | 2024-06-25 | 北京字节跳动网络技术有限公司 | Merge列表构建和其他工具之间的交互 |
| JP7462740B2 (ja) * | 2019-09-19 | 2024-04-05 | エルジー エレクトロニクス インコーポレイティド | 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 | 엘지전자 주식회사 | 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체 |
| WO2026056827A1 (en) * | 2024-09-11 | 2026-03-19 | Douyin Vision Co., Ltd. | Method, apparatus, and medium for video processing |
Family Cites Families (40)
| 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建伍株式会社 | 图像编码装置、图像编码方法、以及图像解码装置、图像解码方法 |
| EP4557737A3 (en) * | 2011-01-07 | 2025-08-06 | LG Electronics Inc. | Method for encoding and decoding image information and device using same |
| JP5786478B2 (ja) * | 2011-06-15 | 2015-09-30 | 富士通株式会社 | 動画像復号装置、動画像復号方法、及び動画像復号プログラム |
| JP2013042240A (ja) * | 2011-08-11 | 2013-02-28 | Jvc Kenwood Corp | 画像復号装置、画像復号方法及び画像復号プログラム |
| IN2014CN01784A (es) * | 2011-08-30 | 2015-05-29 | Nokia Corp | |
| WO2013056656A1 (en) * | 2011-10-19 | 2013-04-25 | Mediatek Inc. | Method and apparatus for derivation of motion vector predictor candidate set |
| EP4472208A3 (en) * | 2011-10-21 | 2025-02-19 | Nokia Technologies Oy | Method for coding and an apparatus |
| TWI679876B (zh) * | 2011-10-31 | 2019-12-11 | 日商Jvc建伍股份有限公司 | 動態影像解碼裝置及動態影像解碼方法 |
| JP2013102260A (ja) * | 2011-11-07 | 2013-05-23 | Jvc Kenwood Corp | 動画像復号装置、動画像復号方法及び動画像復号プログラム |
| KR20130050403A (ko) * | 2011-11-07 | 2013-05-16 | 오수미 | 인터 모드에서의 복원 블록 생성 방법 |
| KR101960761B1 (ko) * | 2011-11-24 | 2019-03-22 | 에스케이텔레콤 주식회사 | 모션 벡터의 예측 부호화/복호화 방법 및 장치 |
| KR101934277B1 (ko) * | 2011-11-28 | 2019-01-04 | 에스케이텔레콤 주식회사 | 개선된 머지를 이용한 영상 부호화/복호화 방법 및 장치 |
| CN107707912B (zh) * | 2011-12-28 | 2020-05-22 | Jvc 建伍株式会社 | 动图像编码装置以及动图像编码方法 |
| WO2013099288A1 (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 | 株式会社日立ハイテクノロジーズ | 自動分析装置 |
| JP6545672B2 (ja) * | 2013-10-18 | 2019-07-17 | エルジー エレクトロニクス インコーポレイティド | マルチビュービデオコーディングにおいて、ビュー合成予測方法及びこれを利用したマージ候補リスト構成方法 |
| 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 | 삼성전자주식회사 | 영상 복호화 방법 및 장치 |
| US10200711B2 (en) * | 2015-03-27 | 2019-02-05 | Qualcomm Incorporated | Motion vector derivation in video coding |
| CN105149698B (zh) | 2015-08-19 | 2017-04-19 | 天津市达鑫精密机械设备有限公司 | 一种汽车同步器齿套双面倒角连续加工系统 |
| KR20180085714A (ko) * | 2015-12-17 | 2018-07-27 | 삼성전자주식회사 | 머지 후보 리스트를 이용한 비디오 복호화 방법 및 비디오 복호화 장치 |
| KR101691553B1 (ko) | 2016-02-24 | 2016-12-30 | 삼성전자주식회사 | 영상 복호화 방법 및 장치 |
| EP3541073B1 (en) * | 2016-12-05 | 2021-06-16 | LG Electronics Inc. | Method and storage medium for decoding an image in an image coding system |
-
2016
- 2016-12-05 EP EP16923451.5A patent/EP3541073B1/en active Active
- 2016-12-05 US US16/465,895 patent/US10764598B2/en active Active
- 2016-12-05 CN CN201680091905.1A patent/CN110121883B/zh active Active
- 2016-12-05 PL PL16923451T patent/PL3541073T3/pl unknown
- 2016-12-05 KR KR1020197016155A patent/KR102322128B1/ko active Active
- 2016-12-05 CN CN202310703397.XA patent/CN116527884B/zh active Active
- 2016-12-05 EP EP21163358.1A patent/EP3855745B1/en active Active
- 2016-12-05 EP EP25158811.7A patent/EP4535788A3/en active Pending
- 2016-12-05 HU HUE16923451A patent/HUE055198T2/hu unknown
- 2016-12-05 ES ES22175536T patent/ES3023748T3/es active Active
- 2016-12-05 PL PL21163358.1T patent/PL3855745T3/pl unknown
- 2016-12-05 KR KR1020227021390A patent/KR102572286B1/ko active Active
- 2016-12-05 EP EP22175536.6A patent/EP4090025B1/en active Active
- 2016-12-05 CN CN202310708056.1A patent/CN116527886B/zh active Active
- 2016-12-05 HU HUE21163358A patent/HUE059684T2/hu unknown
- 2016-12-05 KR KR1020237028920A patent/KR102764504B1/ko active Active
- 2016-12-05 HU HUE22175536A patent/HUE071089T2/hu unknown
- 2016-12-05 WO PCT/KR2016/014167 patent/WO2018105757A1/ko not_active Ceased
- 2016-12-05 SI SI201631609T patent/SI3855745T1/sl unknown
- 2016-12-05 KR KR1020257003477A patent/KR20250021654A/ko active Pending
- 2016-12-05 PL PL22175536.6T patent/PL4090025T3/pl unknown
- 2016-12-05 HR HRP20250444TT patent/HRP20250444T1/hr unknown
- 2016-12-05 ES ES21163358T patent/ES2927560T3/es active Active
- 2016-12-05 PT PT211633581T patent/PT3855745T/pt unknown
- 2016-12-05 CN CN202310707482.3A patent/CN116527885B/zh active Active
- 2016-12-05 ES ES16923451T patent/ES2886871T3/es active Active
- 2016-12-05 SI SI201631898T patent/SI4090025T1/sl unknown
- 2016-12-05 DK DK16923451.5T patent/DK3541073T3/da active
- 2016-12-05 DK DK21163358.1T patent/DK3855745T3/da active
- 2016-12-05 FI FIEP22175536.6T patent/FI4090025T3/fi active
- 2016-12-05 KR KR1020217035512A patent/KR102414924B1/ko active Active
-
2020
- 2020-08-04 US US16/985,118 patent/US11363289B2/en active Active
-
2022
- 2022-05-02 US US17/734,959 patent/US12096020B2/en active Active
-
2024
- 2024-08-28 US US18/818,416 patent/US12604028B2/en active Active
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2886871T3 (es) | Método y medio de almacenamiento para la decodificación de una imagen en un sistema de codificación de imágenes | |
| JP7630685B2 (ja) | 動きベクトル予測子の選択方法及び動きベクトル予測子の選択方法を利用する装置 | |
| 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 | |
| ES2755573T3 (es) | Predicción de vector de movimiento temporal avanzada basada en unidades de subpredicción | |
| ES2879366T3 (es) | Método de codificación y decodificación de video | |
| ES2799323T3 (es) | Técnicas de codificación de vídeo usando particionamiento de movimiento asimétrica | |
| ES2841312T3 (es) | Predicción de vectores de movimiento para modelos de movimiento afines en codificación de vídeo | |
| 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 | |
| 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 | |
| ES2842109T3 (es) | Predicción residual avanzada basada en bloques para la codificación de vídeo 3D | |
| ES2734574T3 (es) | Modo avanzado de fusión/salto y modo avanzado de predicción de vector de movimiento (AMVP) para vídeo 3D | |
| ES3010265T3 (en) | Inter-prediction method and device based on dmvr and bdof | |
| ES3040713T3 (en) | Signaling method and device for merge data syntax in video/image coding system | |
| US20190356922A1 (en) | Inter-prediction method and apparatus in image coding system | |
| ES2961328T3 (es) | Dispositivo de decodificación de imágenes, procedimiento de decodificación de imágenes y programa de decodificación de imágenes | |
| ES2960029T3 (es) | Método y aparato para inter predicción en un sistema de codificación de vídeo | |
| ES2820318T3 (es) | Dispositivo de decodificación de imágenes, procedimiento de decodificación de imágenes, programa de decodificación de imágenes, dispositivo de codificación de imágenes, procedimiento de codificación de imágenes, y programa de codificación de imágenes | |
| ES3041014T3 (en) | Image encoding/decoding device for performing bdof, and device for transmitting bitstream | |
| CN121569478A (zh) | 对具有双向预测运动矢量的gpm的自适应的基于样本的双向光流 | |
| CN121533022A (zh) | 针对具有双向预测运动矢量的gpm的双向光流 | |
| KR20160140622A (ko) | 동화상 부호화 장치 및 방법, 및 동화상 복호 장치 및 방법 |




