ES2685945T3 - Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento - Google Patents

Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento Download PDF

Info

Publication number
ES2685945T3
ES2685945T3 ES16193061.5T ES16193061T ES2685945T3 ES 2685945 T3 ES2685945 T3 ES 2685945T3 ES 16193061 T ES16193061 T ES 16193061T ES 2685945 T3 ES2685945 T3 ES 2685945T3
Authority
ES
Spain
Prior art keywords
block
fusion
candidate
prediction
motion vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES16193061.5T
Other languages
English (en)
Inventor
Toshiyasu Sugio
Takahiro Nishi
Youji Shibahara
Hisao Sasai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Patent Trust Inc
Original Assignee
Sun Patent Trust Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Patent Trust Inc filed Critical Sun Patent Trust Inc
Application granted granted Critical
Publication of ES2685945T3 publication Critical patent/ES2685945T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

Un procedimiento de codificación de imágenes en movimiento para codificar un bloque actual, comprendiendo: determinar un primer candidato de bloque de fusión en una lista de candidatos de bloques de fusión y un segundo candidato de bloque de fusión en la lista de candidatos de bloques de fusión, teniendo el primer candidato de bloque de fusión al menos (i) un primer vector de movimiento que ha sido usado para codificar un primer bloque vecino al bloque actual, (ii) una primera dirección de predicción correspondiente al primer vector de movimiento, y (iii) un primer valor del índice de imagen de referencia para identificar una primera imagen de referencia correspondiente con el primer vector de movimiento, y teniendo el segundo candidato de bloque de fusión al menos (i) un segundo vector de movimiento que ha sido usado para codificar un segundo bloque vecino al bloque actual y diferente del primer bloque, (ii) una segunda dirección de predicción correspondiente al segundo vector de movimiento, y (iii) un segundo valor del índice de imagen de referencia para identificar una segunda imagen de referencia correspondiente con el segundo vector de movimiento, en el que la segunda dirección de predicción es diferente de la primera dirección de predicción y la lista de candidatos de bloques de fusión incluye una pluralidad de candidatos de bloques de fusión uno de los cuales es seleccionado para ser usado para codificar el bloque actual; y generar un candidato de bloque de fusión combinado de predicción bidireccional mediante la asignación del primer vector de movimiento y el primer índice de imagen de referencia para la primera dirección de predicción del candidato de bloque de fusión combinado y mediante la asignación del segundo vector de movimiento y el segundo índice de imagen de referencia para la segunda dirección de predicción del candidato de bloque de fusión combinado; y codificar el bloque actual mediante el uso de un candidato de bloque de fusión seleccionado entre la pluralidad de candidatos de bloques de fusión incluyendo el primer candidato de bloque de fusión, el segundo candidato de bloque de fusión, y el candidato de bloque de fusión combinado.

Description

5
10
15
20
25
30
35
40
45
50
55
DESCRIPCION
Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento rCampo técnico]
La presente invención se relaciona con métodos de codificación de imágenes en movimiento de codificar de imágenes de entrada en un modo bloque a bloque utilizando predicción entre imágenes con referencia a una imagen o imágenes codificadas, y métodos de decodificación de imágenes en movimiento de decodificar un flujo de bits en un modo bloque a bloque utilizando predicción entre imágenes.
Antecedentes de la técnica]
En la codificación de imágenes en movimiento, generalmente, una cantidad de información es comprimida mediante el uso de una redundancia de una dirección espacial y una dirección temporal de imágenes en movimiento. Aquí, en general, uno de los métodos que usa una redundancia en una dirección espacial es la transformación a un dominio de la frecuencia, y uno de los métodos que usa una redundancia en una dirección temporal es la codificación de predicción entre imágenes (en adelante, referida como “predicción entre”). En la codificación de predicción entre, cuando una imagen actual va a ser codificada, una imagen codificada anterior o posterior a la imagen actual en orden de visualización es usada como imagen de referencia. Entonces, la estimación del movimiento es realizada en la imagen actual correspondiente a la imagen de referencia para estimar un vector de movimiento. Entonces, se obtiene una diferencia entre los datos de la imagen de predicción generada mediante una compensación de movimiento basada en el vector de movimiento estimado y los datos de la imagen de la imagen actual para eliminar una redundancia en la dirección temporal. Aquí, en la estimación de movimiento, se calcula un valor de diferencia entre el bloque actual en una imagen actual y un bloque en la imagen de referencia, y se determina un bloque que tiene el menor valor de diferencia en la imagen de referencia como bloque de referencia. Entonces, mediante el uso del bloque actual como el bloque de referencia, se estima un vector de movimiento.
En el esquema de codificación de imágenes en movimiento conocido como H.264 que ya ha sido estandarizado, para comprimir una cantidad de información, se usan tres tipos de imágenes, imagen I, imagen P, e imagen B. La imagen I es una imagen en la cual no se realiza la codificación de predicción entre, en otras palabras, en la cual se realiza la codificación intra imagen (en adelante, referida como “predicción intra”). La imagen P es una imagen en la cual se realiza la codificación de predicción entre con referencia a una imagen codificada ubicada antes o después de la imagen actual en orden de visualización. La imagen B es una imagen en la cual se realiza la codificación de predicción entre con referencia a dos imágenes codificadas ubicadas antes o después de la imagen actual en orden de visualización.
En la codificación de predicción entre, se genera una lista de imágenes de referencia para especificar una imagen de referencia. La lista de imágenes de referencia es una lista en la cual una imagen de referencia codificada a la que se referirá en la predicción entre es asignada con un o unos valores correspondientes de un índice de imágenes de referencia. Por ejemplo, dado que una imagen B puede ser codificada con referencia a dos imágenes, una imagen B tiene dos listas (L0, L1) de imágenes de referencia.
La FIG. 1A es un diagrama para explicar la asignación de índices de imágenes de referencia para cada una de las imágenes de referencia. Las FIGS. 1B y 1C muestran un ejemplo de un par de listas de imágenes de referencia para una imagen B. En la FIG. 1A, por ejemplo, se asume que una imagen 2 de referencia, una imagen 1 de referencia, una imagen 0 de referencia, y una imagen actual a ser codificada son dispuestas en orden de visualización. Bajo esa suposición, la lista 0 (L0) de imágenes de referencia es un ejemplo de una lista de imágenes de referencia en una dirección 0 (la primera dirección de predicción) de predicción para predicción bidireccional. Como se muestra en la FIG. 1B, se asigna un valor “0” de un índice 0 de imagen de referencia a la imagen 0 de referencia dispuesta en el orden 2 de visualización, se asigna un valor “1” del índice 0 de imagen de referencia a la imagen 1 de referencia dispuesta en el orden 1 de visualización, y se asigna un valor “2” del índice 0 de imagen de referencia a la imagen 2 de referencia dispuesta en el orden 0 de visualización. En pocas palabras, se asigna un mayor valor del índice de imagen de referencia a una imagen más cercana temporalmente a la imagen actual en el orden de visualización. Por otro lado, la lista 1 (L1) de imágenes de referencia es un ejemplo de una lista de imágenes de referencia en una dirección 1 de predicción (la segunda dirección de predicción) para una predicción bidireccional. En la lista 1 (L1) de imágenes de referencia, se asigna un valor “0” de un índice 1 de imagen de referencia a la imagen 1 de referencia dispuesta en el orden 1 de visualización, se asigna un valor “1” del índice 1 de imagen de referencia a la imagen 0 de referencia dispuesta en el orden 2 de visualización, y se asigna un valor “2” del índice 1 de imagen de referencia a la imagen 2 de referencia dispuesta en el orden 0 de visualización. Como se describió anteriormente, para cada una de las imágenes de referencia, es posible asignar diferentes índices de imágenes de referencia a las direcciones de predicción respectivas (las imágenes 0 y 1 de referencia en la FIG. 1A), o asignar el mismo índice de imagen de referencia a ambas direcciones de predicción (imagen 2 de referencia en la FIG. 1A).
Además, en el esquema del método de codificación de imágenes en movimiento conocido como H.264 (véase Literatura 1 de documentos que no son patentes), como un modo de codificación de predicción entre para cada bloque actual en una imagen B, hay un modo de estimación del vector de movimiento para codificar (a) un valor
diferente entre los datos de la imagen de predicción y los datos de la imagen de un bloque actual y (b) un vector de movimiento usado en la generación de los datos de la imagen de predicción. En el modo de estimación del vector de movimiento, se selecciona bien la predicción bidireccional o bien la predicción unidireccional. En la predicción bidireccional, se genera una imagen de predicción con referencia a dos imágenes codificadas ubicadas antes o 5 después de la imagen actual. Por otro lado, en la predicción unidireccional, se genera una imagen de predicción con referencia a una imagen codificada ubicada antes o después de la imagen actual.
Además, en el esquema de codificación de imágenes en movimiento conocido como H.264, en la codificación de la imagen B, cuando se han de derivar los vectores de movimiento, es posible seleccionar un modo de codificación llamado un modo de vector de movimiento de predicción temporal. El método de codificación de predicción entre en 10 el modo de vector de movimiento de predicción temporal se describe con referencia a la FIG. 2. La FIG. 2 es un diagrama explicativo que muestra vectores de movimiento en el modo de vector de movimiento de predicción temporal, y muestra la situación donde un bloque “a” en una imagen B2 es codificada en el modo de vector de movimiento de predicción temporal. En esta situación, se usa un vector vb de movimiento. El vector vb de movimiento ha sido usado para codificar un bloque “b” en una imagen P3 que es una imagen de referencia ubicada 15 antes de la imagen B2. El bloque “b” (en adelante, referido como “bloque co-ubicado”) es ubicado, en la imagen P3, en una posición correspondiente a la posición del bloque “a”. El vector vb de movimiento es un vector de movimiento que ha sido usado para codificar el bloque “b”, y se refiere a una imagen P1. Mediante el uso de un vector de movimiento en paralelo con el vector vb de movimiento, el bloque “a” obtiene bloques de referencia de la imagen P1 que es una imagen de referencia hacia delante y de la imagen P3 que es una imagen de referencia hacia atrás. De 20 este modo, la predicción bidireccional se realiza para codificar el bloque “a”. Más específicamente, los vectores de movimiento usados para codificar el bloque “a” son un vector va1 de movimiento sobre la imagen PI y un vector va2 de movimiento sobre la imagen P3.
[Lista de referencias]
[Documentos que son Patentes]
25 NPL-1: ITU-T Recomendación H. 264, “Advanced video coding for generic audiovisual services”.
Artículo por S. Kamp et al. “Multihypothesis prediction using decoder side-motion vector derivation in inter-frame video coding”, Conf. On Visual Communications and Image Processing, 20-22 Enero 2009, San Jose muestra la derivación de los vectores de movimiento en el lado del decodificador sin señalarlos explícitamente. Esto es realizado por correspondencias de plantillas dentro de las porciones de imágenes adyacentes ya reconstruidas.
30 El documento WO 2010/148919 muestra la selección de vectores de movimiento de un conjunto de candidatos con los vectores de movimiento de los bloques vecinos.
La contribución JVT-C121 por Jeon “New Syntax for Bi-dir pred. Mode in MH pictures”, 60th MPEG meeting, mayo 10, 2002 muestra la predicción bidireccional usando no solo un par de tramas hacia delante y hacia atrás como referencia sino también dos tramas hacia delante y dos hacia atrás. En consecuencia, se introduce un nuevo 35 elemento de sintaxis para señalar la información de dirección.
La invención se establece en el conjunto de reivindicaciones adjuntas.
[Compendio de la invención]
[Problema técnico]
Sin embargo, convencionalmente, hay una situación donde, en la codificación de un bloque actual, la selección de 40 bien la predicción bidireccional o bien la predicción unidireccional causa una disminución de la eficiencia de codificación.
Una realización ejemplar no limitante de la presente descripción proporciona un método de codificación de imágenes en movimiento y un método de decodificación de imágenes en movimiento que son capaces de mejorar la eficiencia de codificación.
45 [Solución al problema]
En un aspecto general, las técnicas descritas aquí presentan; un método de codificación de imágenes en movimiento de codificar un bloque actual mediante el copiado de al menos un valor del índice de imagen de referencia y al menos un vector de movimiento, el al menos un valor del índice de imagen de referencia que es para identificar una imagen de referencia que ha sido usada en la codificación de un bloque diferente al bloque actual, el 50 método de codificación de imágenes en movimiento incluye: determinar una pluralidad de primeros bloques candidatos de los cuales el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento han de ser copiados; generar un segundo bloque candidato que use la predicción bidireccional, el segundo bloque candidato que es generado mediante la combinación de los valores de los índices de imágenes de referencia y vectores de movimiento que han sido usados para al menos parte de los primeros bloques candidatos;
5
10
15
20
25
30
35
40
45
50
55
seleccionar, de los primeros bloques candidatos y el segundo bloque candidato, un bloque del cual el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento han de ser copiados para codificar el bloque actual; y copiar el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento del bloque seleccionado, y codificar el bloque actual usando el al menos un valor del índice de imagen de referencia copiado y el al menos un vector de movimiento copiado.
De este modo, es posible codificar la imagen actual usando vector o vectores de movimiento e imagen o imágenes de referencia que sean las más apropiadas para el bloque actual. Como resultado, la eficiencia de codificación puede ser mejorada.
Es también posible que la generación del segundo bloque candidato incluya: determinar si cada uno de los primeros bloques candidatos tiene uno o más valores de índice de imagen de referencia y uno o más vectores de movimiento o no; y generar el segundo bloque candidato, cuando al menos uno de los primeros bloques candidatos no tiene ningún valor del índice de imagen de referencia y ningún vector de movimiento.
Es además posible que el método de codificación de imágenes en movimiento incluya: determinar si el bloque actual ha de ser codificado mediante el uso de el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento o no, que son copiados de uno de los primeros bloques de candidatos o del segundo bloque candidato; establecer una bandera que indique un resultado de la determinación; y añadir la bandera a un flujo de bits que incluya el bloque actual.
Es además también posible que el método de codificación de imágenes en movimiento incluya además: determinar un valor del índice de bloque correspondiente al bloque seleccionado del cual el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento han de ser copiados para codificar el bloque actual, de una lista de candidatos en la cual los primeros bloques candidatos y el segundo bloque candidato son asignados con valores de los índices de bloques respectivos; y añadir el valor del índice de bloque determinado a un flujo de bits que incluya el bloque actual.
Es además también posible que la generación del segundo bloque candidato incluya: determinar si dos de los primeros bloques candidatos tienen valores de índice de imagen de referencia que indiquen diferentes direcciones de predicción y han sido codificadas mediante predicción bidireccional o no; y generar el segundo bloque candidato, cuando los dos de los primeros bloques candidatos tienen diferentes direcciones de predicción o han sido codificados mediante predicción bidireccional.
Es además también posible que la generación del segundo bloque candidato incluya además: determinar si uno de los dos primeros bloques candidatos han sido predichos en una primera dirección de predicción o codificados mediante predicción bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda dirección de predicción o codificado mediante predicción bidireccional; y cuando se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera dirección de predicción o codificado mediante predicción bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda dirección de predicción o codificado mediante predicción bidireccional, generar el segundo bloque candidato mediante (i) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la primera dirección de predicción para el uno de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la primera dirección de predicción para el segundo bloque candidato, y (ii) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la segunda dirección de predicción para el otro de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la segunda dirección de predicción para el segundo bloque candidato.
Es además también posible que la generación del segundo bloque candidato incluya además: determinar si uno de los dos primeros bloques candidatos ha sido predicho en una primera dirección de predicción o codificado mediante predicción bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda dirección de predicción o codificado mediante predicción bidireccional; y cuando no se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera dirección de predicción o codificado mediante predicción bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda dirección de predicción o codificado mediante predicción bidireccional, generar el segundo bloque candidato mediante (i) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la primera dirección de predicción para el otro de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la primera dirección de predicción para el segundo bloque candidato, y (ii) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la segunda dirección de predicción para el uno de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la segunda dirección de predicción para el segundo bloque candidato.
En otro aspecto, las técnicas descritas en esta memoria presentan; un método de decodificación de imágenes en movimiento de decodificar un bloque actual mediante el copiado de al menos un valor del índice de imagen de referencia y al menos un vector de movimiento, el al menos un valor del índice de imagen de referencia para
5
10
15
20
25
30
35
40
45
50
55
60
identificar una imagen de referencia que ha sido usada en la decodificación de un bloque diferente al bloque actual, el método de decodificación de imágenes en movimiento incluye: determinar una pluralidad de primeros bloques candidatos de los cuales el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento han de ser copiados; generar un segundo bloque candidato que use la predicción bidireccional, el segundo bloque candidato que es generado mediante la combinación de los valores de los índices de imágenes de referencia y vectores de movimiento que han sido usados para al menos parte de los primeros bloques candidatos; seleccionar, de los primeros bloques candidatos y el segundo bloque candidato, un bloque del cual el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento han de ser copiados para decodificar el bloque actual; y copiar el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento del bloque seleccionado, y decodificar el bloque actual usando el al menos un valor del índice de imagen de referencia copiado y el al menos un vector de movimiento copiado.
De este modo, es posible decodificar un flujo de bits usando el o los vectores de movimientos más apropiados y la o las imágenes de referencia más apropiadas.
Es también posible que la generación del segundo bloque candidato incluya: determinar si cada uno de los primeros bloques candidatos tiene un valor del índice de imagen de referencia y uno o más vectores de movimiento o no; y generar el segundo bloque candidato, cuando al menos uno de los primeros bloques candidatos no tiene ningún valor del índice de imagen de referencia y ningún vector de movimiento.
Es además posible que el método de decodificación de imágenes en movimiento incluya: obtener, de un flujo de bits que incluye el bloque actual, una bandera que indica si el bloque actual ha de ser decodificado o no usando el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento que son copiados de uno de los primeros bloques de candidatos o del segundo bloque candidato; y decodificar el bloque actual según la bandera.
Es además también posible que el método de decodificación de imágenes en movimiento incluya además: obtener un valor del índice de bloque de un flujo de bits que incluye el bloque actual; y seleccionar, mediante el uso del valor del índice de bloque obtenido, un bloque del cual el al menos un valor del índice de imagen de referencia y el al menos un vector de movimiento han de ser copiados para decodificar el bloque actual, de una lista de candidatos en la cual los primeros bloques candidatos y el segundo bloque candidato son asignados con valores de los índices de bloques respectivos.
Es además también posible que la generación del segundo bloque candidato incluya: determinar si dos de los primeros bloques candidatos tienen valores de índice de imagen de referencia que indiquen diferentes direcciones de predicción y han sido codificadas mediante predicción bidireccional o no; y generar el segundo bloque candidato, cuando los dos de los primeros bloques candidatos tienen diferentes direcciones de predicción o han sido codificados mediante predicción bidireccional.
Es además también posible que la generación del segundo bloque candidato incluya además: determinar si uno de los dos primeros bloques candidatos han sido predichos en una primera dirección de predicción o codificados mediante predicción bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda dirección de predicción o codificado mediante predicción bidireccional; y cuando se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera dirección de predicción o codificado mediante predicción bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda dirección de predicción o codificado mediante predicción bidireccional, generar el segundo bloque candidato mediante (i) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la primera dirección de predicción para el uno de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la primera dirección de predicción para el segundo bloque candidato, y (ii) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la segunda dirección de predicción para el otro de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la segunda dirección de predicción para el segundo bloque candidato.
Es además también posible que la generación del segundo bloque candidato incluya además: determinar si uno de los dos primeros bloques candidatos ha sido predicho en una primera dirección de predicción o codificado mediante predicción bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda dirección de predicción o codificado mediante predicción bidireccional; y cuando no se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera dirección de predicción o codificado mediante predicción bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda dirección de predicción o codificado mediante predicción bidireccional, generar el segundo bloque candidato mediante (i) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la primera dirección de predicción para el otro de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la primera dirección de predicción para el segundo bloque candidato, y (ii) la selección de un valor del índice de imagen de referencia y un vector de movimiento que han sido usados en la segunda dirección de predicción para el uno de los dos primeros bloques candidatos, como un valor del índice de imagen de referencia y un vector de movimiento que son usados en la
5
10
15
20
25
30
35
40
45
50
55
segunda dirección de predicción para el segundo bloque candidato.
Debería notarse que la presente descripción puede ser implementada no solo como el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento anteriores, sino también como: un aparato de codificación de imágenes en movimiento, un aparato de decodificación de imágenes en movimiento, y un aparato de codificación y decodificación de imágenes en movimiento cada uno de los cuales incluye unidades de procesamiento que realizan los pasos caracterizados incluidos en el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento; un programa que causa que un ordenador ejecute los pasos; y similares. La presente descripción puede ser implementada también como: un medio de grabación legible por un ordenador, tal como un Disco Compacto de Memoria de Solo Lectura (CD-ROM), en el cual el programa anterior es grabado; información, datos, señales que indican el programa, y similares. El programa, información, datos, o señales pueden ser distribuidos a través de un medio de transmisión tal como Internet.
En resumen, un aparato de codificación de una imagen en movimiento que codifica un bloque actual copiando al menos un valor de índice de imagen de referencia y al menos un vector de movimiento. El al menos un valor de índice de imagen de referencia siendo para identificar una imagen de referencia que se ha usado en la codificación de un bloque diferente del bloque actual, dicho aparato de codificación de imagen en movimiento comprendiendo una unidad de determinación configurada para determinar una pluralidad de primeros bloques candidatos de los cuales el al menos un valor de índice de imagen de referencia y el al menos un vector de movimiento se copian. Una unidad de generación configurada para generar al menos un segundo bloque candidato que usa predicción bidireccional, generándose el segundo bloque candidato combinando valores de índice de imagen de referencia y vectores de movimiento que se han usado para al menos parte de los primeros bloques candidatos; una unidad de selección configurada para seleccionar, desde los primeros bloques candidatos y el segundo bloque candidato, un bloque, desde el cual, el al menos un valor de índice de imagen de referencia y el al menos un vector de movimiento se copian para codificar el bloque actual y, una unidad de codificación configurada para (i) copiar el al menos un valor de índice de imagen de referencia y el al menos un vector de movimiento desde el bloque seleccionado por dicha unidad de selección y, (ii) codificar el bloque actual usando el al menos un valor de índice de imagen de referencia copiado y el al menos un vector de movimiento copiado.
Un aparato de decodificación de imagen en movimiento que decodifica un bloque actual copiando, al menos un valor de índice de imagen de referencia y al menos un vector de movimiento, siendo el al menos un valor de índice de referencia para identificar una imagen de referencia que se ha usado en la decodificación de un bloque diferente del bloque del bloque actual, comprendiendo dicho aparato de decodificación de imagen en movimiento una unidad de determinación configurada para determinar una pluralidad de primeros bloques candidatos desde los cuales el al menos un valor de índice de imagen de referencia y el al menos un vector de movimiento se copian. Una unidad de generación configurada para generar un segundo bloque candidato que usa predicción bidireccional, generándose el segundo bloque candidato combinando los valores de índice de imagen de referencia y los vectores de movimiento que se han usado para al menos parte de los primeros bloques candidatos.
Una unidad de selección configurada para seleccionar, de los primeros bloques candidatos y el segundo bloque candidato, un bloque desde el cual el al menos un valor de índice de imagen de referencia y el al menos un vector de movimiento se copian para decodificar el bloque actual y, una unidad de decodificación configurada para (i) copiar el al menos un valor de índice de imagen de referencia y el al menos un vector de movimiento desde el bloque seleccionado mediante dicha unidad de selección y, (ii) decodificar el bloque actual usando el al menos un valor de índice de imagen de referencia copiado y el al menos un vector de movimiento copiado.
Un aparato de codificación y decodificación de imagen en movimiento que comprende el aparato de codificación de imagen en movimiento y el aparato de decodificación de imagen en movimiento.
rEfectos ventajosos de la invención]
Según la presente descripción, un nuevo candidato de bloque de fusión de predicciones bidireccionales se calcula desde candidatos de bloques de fusión, para mejorar la eficiencia de codificación.
[Breve descripción de los dibujos]
[FIG. 1A] La FIG. 1A es un diagrama para explicar la asignación de índices de imágenes de referencia para cada imagen de referencia.
[FIG. 1B] La FIG. 1B es una tabla que muestra un ejemplo de una de las listas de imágenes de referencia para una imagen B.
[FIG. 1C] La FIG. 1C es una tabla que muestra un ejemplo de la otra lista de imágenes de referencia para una imagen B.
[FIG. 2] La FIG. 2 es un diagrama ejemplar que muestra vectores de movimiento en el modo de vector de movimiento de predicción temporal.
[FIG. 3A] La FIG. 3A es un diagrama que muestra una relación entre: un bloque actual a ser codificado; bloques vecinos; y vectores de movimiento de los bloques vecinos.
[FIG. 3B] La FIG. 3B es una tabla que muestra un ejemplo de una lista de candidatos de bloques de fusión en la cual cada valor de un índice de fusión es asignado a un vector de movimiento y un índice de imagen de
5
10
15
20
25
30
35
40
45
50
55
60
referencia que han de ser usados en el modo de fusión.
[FIG. 4] La FIG. 4 es un diagrama de bloques que muestra una estructura de un aparato de codificación de imágenes en movimiento que usa un método de codificación de imágenes en movimiento según una realización de la presente descripción.
[FIG. 5] La FIG. 5 es un diagrama de flujo de un compendio de un flujo de procesamiento del método de codificación de imágenes en movimiento según la realización de la presente descripción.
[FIG. 6] La FIG. 6 es una tabla que muestra un ejemplo de una lista de candidatos de bloques de fusión en la cual cada valor de un índice de fusión se asigna a un vector de movimiento y a un índice de imagen de referencia los cuales han de usarse en el modo de fusión según la Realización 1.
[FIG. 7] La FIG. 7 es un ejemplo de una tabla de codificación que es usada para realizar codificación de longitud variable en el índice de bloque de fusión.
[FIG. 8] La FIG. 8 es un diagrama de flujo de un flujo de procesamiento detallado para calcular un bloque de fusión combinado.
[FIG. 9] La FIG. 9 es un diagrama de flujo de un flujo de procesamiento detallado para comparar errores de predicción.
[FIG. 10] La FIG. 10 es un diagrama de bloques que muestra una estructura de un aparato de decodificación de imágenes en movimiento que usa un método de decodificación de imágenes en movimiento según una realización de la presente descripción.
[FIG. 11] La FIG. 11 es un diagrama de flujo de un compendio de un flujo de procesamiento de un método de decodificación de imágenes en movimiento según una realización de la presente descripción.
[FIG. 12] La FIG. 12 muestra una configuración general de un sistema que proporciona contendido para implementar servicios de distribución de contenidos;
[FIG. 13] La FIG. 13 muestra una configuración general de un sistema de difusión digital;
[FIG. 14] La FIG. 14 muestra un diagrama de bloques que ilustra un ejemplo de una configuración de un televisor.;
[FIG. 15] La FIG. 15 muestra un diagrama de bloques que ilustra un ejemplo de una configuración de una unidad de reproducción/grabación de información que lee y escribe información de y en un medio de grabación que es un disco óptico;
[FIG. 16] La FIG. 16 muestra un ejemplo de una configuración de un medio de grabación que es un disco óptico; [FIG. 17A] La FIG. 17A muestra un ejemplo de un teléfono móvil;
[FIG. 17B] La FIG. 17B es un diagrama de bloques que muestra un ejemplo de una configuración de un teléfono móvil;
[FIG. 18] La FIG. 18 ilustra una estructura de datos multiplexados;
[FIG. 19] La FIG. 19 muestra esquemáticamente cómo cada flujo es multiplexado en datos multiplexados;
[FIG. 20] La FIG. 20 muestra cómo un flujo de video es almacenado en un flujo de paquetes PES en más detalle;
[FIG. 21] La FIG. 21 muestra una estructura de paquetes TS y paquetes origen en los datos multiplexados;
[FIG. 22] La FIG. 22 muestra una estructura de datos de una PMT;
[FIG. 23] La FIG. 23 muestra una estructura interna de información de datos multiplexados;
[FIG. 24] La FIG. 24 muestra una estructura interna de información de atributos de flujo;
[FIG. 25] La FIG. 25 muestra pasos para identificar datos de video;
[FIG. 26] La FIG. 26 muestra un ejemplo de una configuración de un circuito integrado para implementar el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento según cada uno de las Realizaciones;
[FIG. 27] La FIG. 27 muestra una configuración para conmutar entre frecuencias portadoras;
[FIG. 28] La FIG. 28 muestra los pasos para identificar datos de video y conmutar entre frecuencias portadoras;
[FIG. 29] La FIG. 29 muestra un ejemplo de una tabla de búsqueda en la cual los estándares de datos de video
están asociados con frecuencias portadoras;
[FIG. 30A] La FIG. 30A es un diagrama que muestra un ejemplo de una configuración para compartir un módulo de una unidad de procesamiento de señal; y
[FIG. 30B] La FIG. 30B es un diagrama que muestra otro ejemplo de una configuración para compartir un módulo de la unidad de procesamiento de señal.
rDescripción de las realizaciones!
En el esquema de codificación de imágenes en movimiento, un modo de codificación llamado un modo de fusión ha sido examinado como un modo de predicción entre para cada bloque a ser codificado en una imagen B o una imagen P. En este modo de fusión, un vector de movimiento y un valor de un índice de imagen de referencia (en adelante, referido también como “valores de los índices de imágenes de referencia”) son copiados de un bloque vecino de un bloque actual a ser codificado, para codificar el bloque actual. Aquí, añadiendo el valor del índice y el mismo del bloque vecino desde el cual son copiados son añadidos a un flujo de bits. Como resultado, un vector de movimiento o un valor de un índice de imagen de referencia que han sido usados en la codificación pueden ser seleccionados en la decodificación. Se describe un ejemplo detallado con referencias a las figuras correspondientes.
La Fig. 3A es un diagrama de bloques que muestra una relación entre: un bloque actual a ser codificado; bloques vecinos; y vectores de movimiento de los bloques vecinos. La FIG. 3B es una tabla que muestra un ejemplo de una lista de candidatos de bloques de fusión en la cual cada valor de un índice de fusión es asignado a un vector de
5
10
15
20
25
30
35
40
45
50
55
movimiento y un índice de imagen de referencia que han de ser usados en el modo de fusión.
En la FIG. 3A, un bloque codificado inmediatamente a la izquierda del bloque actual es referido como un bloque A vecino, un bloque codificado inmediatamente encima del bloque actual es referido como un bloque B vecino, un bloque codificado inmediatamente arriba a la derecha del bloque actual es referido como un bloque C vecino, y un bloque codificado inmediatamente abajo a la izquierda del bloque actual es referido como bloque D vecino. Además, en la FIG. 3A, el bloque A vecino ha sido codificado mediante predicción unidireccional usando una dirección 0 de predicción (la primera dirección de predicción). El bloque A vecino tiene un vector MvL0_A de movimiento de la dirección 0 de predicción para una imagen de referencia indicada por un valor RefL0_A de índice en un índice de imagen de referencia de la dirección 0 de predicción. Aquí, el vector MvL0 de movimiento es un vector de movimiento que se refiere a una imagen de referencia especificada por la lista 0 (L0) de imágenes de referencia, y MvL1 es un vector de movimiento que se refiere a una imagen de referencia especificada por la lista 1 (L1) de imágenes de referencia. El bloque B vecino ha sido codificado mediante predicción unidireccional usando una dirección 1 de predicción (la segunda dirección de predicción). El bloque B vecino tiene un vector MvL1_B de movimiento de la dirección 1 de predicción para una imagen de referencia indicada por un valor RefL1_B de índice en un índice de imagen de referencia de la dirección 1 de predicción. El bloque C vecino ha sido codificado mediante predicción intra. El bloque D vecino ha sido codificado mediante predicción unidireccional usando una dirección 0 de predicción. El bloque D vecino tiene un vector MvL0_D de movimiento de la dirección 0 de predicción para una imagen de referencia indicada por un valor RefL0_D de índice en un índice de imagen de referencia de la dirección 0 de predicción.
En la situación como se muestra en la FIG. 3A, como un vector de movimiento y un valor del índice de imagen de referencia para el bloque actual, son seleccionados un vector de movimiento y un valor del índice de imagen de referencia que ofrecen la más alta eficiencia de codificación, por ejemplo, desde (a) los vectores de movimiento y los valores de los índices de imágenes de referencia de los bloques A, B, C y D vecinos, y (b) un vector de movimiento y un valor del índice de imagen de referencia del bloque co-ubicado que son obtenidos en el modo de vector de movimiento de predicción temporal. Entonces, un índice de bloque de fusión que indica el bloque vecino seleccionado o bloque co-ubicado es añadido al flujo de bits. Por ejemplo, si el bloque A vecino es seleccionado, el bloque actual es codificado usando el vector MvL0_A de movimiento y el valor ReL0_A de índice de imagen de referencia de la dirección 0 de predicción, y solo un valor “0” del índice del bloque de fusión que indica que el bloque A vecino es usado como se muestra en la FIG. 3B es añadido en el flujo de bits, de forma que una cantidad de información de vectores de movimiento y valores de los índices de imágenes de referencia pueden ser reducidas.
Sin embargo, en el modo de fusión descrito anteriormente, si un bloque a ser candidato a bloque de fusión no tiene ningún vector de movimiento ni valor del índice de imagen de referencia porque el bloque ha sido codificado mediante predicción intra (como el bloque C vecino), el bloque no puede ser usado como un candidato a bloque de fusión. En la situación anterior, se considera también que el número de candidatos de bloques de fusión disponibles disminuye, el intervalo de selección para un vector de movimiento y un valor del índice de imagen de referencia que ofrece la más alta eficiencia de codificación es reducido, y finalmente la eficiencia de codificación disminuye.
Para dirigir el problema anterior, una realización ejemplar no limitante proporciona un método de codificación de imágenes y un método de decodificación de imágenes que son capaces de mejorar la eficiencia de codificación sin disminuir el número de candidatos de bloques de fusión disponibles en el modo de fusión.
A continuación, se describen realizaciones según la presente descripción con referencias a los dibujos. Se debería anotar que todas las realizaciones descritas a continuación son ejemplos específicos de la presente descripción. Los valores numéricos, formas, materiales, elementos constituyentes, posiciones de disposiciones y la configuración de conexión de los elementos constituyentes, pasos, el orden de los pasos, y similares descritos en las siguientes realizaciones son meros ejemplos, y no pretenden limitar la presente descripción. La presente descripción se caracteriza solo por las reivindicaciones anexas. Por tanto, entre los elementos constituyentes en las siguientes realizaciones, los elementos constituyentes que no son descritos en reivindicaciones independientes que muestran el concepto más genérico de la presente descripción son descritos como elementos que constituyen las configuraciones más deseables, aunque tales elementos constituyentes no son requeridos necesariamente para alcanzar el objeto de la presente descripción.
(Realización 1)
La FIG. 4 es un diagrama de bloques que muestra una estructura de un aparato de codificación de imágenes en movimiento usando un método de codificación de imágenes en movimiento según la Realización 1.
Como se muestra en la FIG. 4, el aparato 100 de codificación de imágenes en movimiento incluye una unidad 101 de transformación ortogonal, una unidad 102 de cuantificación, una unidad 103 de cuantificación inversa, una unidad 104 de transformación ortogonal inversa, una memoria 105 de bloque, una memoria 106 de trama, una unidad 107 de predicción intra, una unidad 108 de predicción entre, una unidad 109 de control de predicción entre, una unidad 110 de determinación de tipo de imagen, una unidad 111 de cálculo de candidatos de bloque de fusión, una memoria 112 CoIPic, una unidad 113 de codificación de longitud variable, un sustractor 114, un sumador 115, y una unidad 116 conmutadora.
5
10
15
20
25
30
35
40
45
50
55
60
La unidad 101 de transformación ortogonal transforma los datos de errores de predicción que es una diferencia entre los datos de predicción generados como se describió anteriormente y una secuencia de imágenes de entrada, de un dominio de la imagen a un dominio de la frecuencia. La unidad 102 de cuantificación cuantifica los datos de errores de predicción que han sido transformados al dominio de la frecuencia. La unidad 103 de cuantificación inversa cuantifica a la inversa los datos de errores de predicción que han sido cuantificados por la unidad 102 de cuantificación. La unidad 104 de transformación ortogonal transforma los datos de errores de predicción cuantificados inversamente desde un dominio de la frecuencia a un dominio de la imagen. El sumador 115 suma los datos de predicción a los datos de error de predicción cuantificados inversamente para generar unos datos decodificados. La memoria 105 de bloque mantiene la imagen decodificada en una forma bloque a bloque. La memoria 106 de trama mantiene la imagen decodificada en una forma imagen a imagen. La unidad 110 de determinación de tipo de imagen determina mediante qué tipo de imagen entre una imagen I, una imagen B, o una imagen P, cada imagen en la secuencia de imágenes de entrada ha de ser codificada, y genera información de tipo de imagen. La unidad 107 de predicción intra codifica un bloque actual a ser codificado mediante predicción intra, mediante el uso de la imagen decodificada almacenada en un modo bloque a bloque en la memoria 105 de bloque, para generar la imagen de predicción. La unidad 108 de predicción entre codifica el bloque actual mediante predicción entre mediante el uso de la imagen decodificada almacenada en un modo imagen a imagen en la memoria 106 de tramas y un vector de movimiento derivado en la estimación de movimiento, para generar la imagen de predicción. El sustractor 114 sustrae los datos de predicción generados mediante la unidad 206 de predicción intra o la unidad 207 de predicción entre de la secuencia de imágenes de entrada, para calcular los datos de errores de predicción.
La unidad 111 de cálculo de candidatos de bloque de fusión especifica los candidatos de bloques de fusión (los primeros bloques candidatos) del modo de fusión, mediante el uso (a) de vectores de movimiento y valores de los índices de imágenes de referencia que han sido usados para codificar los bloques vecinos e (b) información de CoIPic tal como un vector de movimiento y similares del bloque co-ubicado que es almacenado en la memoria 112 de CoIPic respecto al bloque actual. Aquí, los candidatos de bloques de fusión son candidatos de un bloque del cual al menos un vector de movimiento y al menos un valor del índice de imagen de referencia son usados directamente (copiados) para el bloque actual. Además, la unidad 111 de cálculo de candidatos de bloque de fusión genera un bloque de fusión combinado (el segundo bloque candidato) mediante el método descrito anteriormente. Se debería anotar que el bloque de fusión combinado no es un bloque que realmente tenga valores de píxeles, sino un bloque virtual que tiene vectores de movimiento y valores de los índices de imágenes de referencia. Además, la unidad 111 de cálculo de candidatos de bloque de fusión asigna cada uno de los bloques de fusión especificados con un valor correspondiente del índice de bloque de fusión (índice de bloque). Entonces, la unidad 111 de cálculo de candidatos de bloque de fusión proporciona los candidatos de bloques de fusión y los valores de los índices de bloques de fusión (en adelante, referidos también como “valores de los índices de bloques de fusión”) a la unidad 109 de control de predicción entre. Se debería anotar en la presente realización 1 que los vectores de movimiento y los valores de los índices de imágenes de referencia usados para los bloques vecinos de la imagen actual se asumen que son almacenados en la unidad 111 de cálculo de candidatos de bloque de fusión.
La unidad 109 de control de predicción entre realiza codificación de predicción entre en un modo de predicción que tiene el menor error de predicción entre (a) un modo de predicción para una imagen de predicción entre generada mediante el uso de un vector de movimiento derivado por el modo de estimación de movimiento y (b) un modo de predicción para una imagen de predicción entre generada mediante el uso de un vector de movimiento derivado en el modo de fusión. Además, la unidad 109 de control de predicción entre provee a la unidad 113 de codificación de longitud variable de (a) una bandera de fusión que indica si el modo de predicción es el modo de fusión o no, (b) un valor del índice de bloque de fusión correspondiente al bloque de fusión determinado en el modo de fusión es seleccionado como el modo de predicción, e (c) información de error de predicción. Además, la unidad 109 de control de predicción entre transfiere información de ColPic que incluye el vector de movimiento y similares para el bloque actual, a la memoria 112 de ColPic.
La unidad 113 de codificación de longitud variable realiza codificación de longitud variable en los datos de errores de predicción cuantificados, bandera de fusión, valor del índice de bloque de fusión, e información de tipo de imagen, para generar un flujo de bits.
La FIG. 5 es un diagrama de flujo de un compendio de un flujo de procesamiento del método de codificación de imágenes en movimiento según la presente realización.
La unidad 111 de cálculo de candidatos de bloque de fusión especifica los candidatos de bloques de fusión de bloques de vecinos y un bloque co-ubicado de un bloque actual a ser codificado (Paso S11). Por ejemplo, en la situación mostrada en la FIG. 3A, la unidad 111 de cálculo de candidatos de bloque de fusión especifica los bloques A, B, C, D vecinos y un bloque de fusión co-ubicado, como candidatos de bloques de fusión. Aquí, el bloque de fusión co-ubicado incluye al menos un vector de movimiento y similares que son calculados en el modo de predicción temporal de al menos un vector de movimiento del bloque co-ubicado. Entonces, la unidad 111 de cálculo de candidatos de bloque de fusión asigna a cada uno de los candidatos de bloques de fusión un valor correspondiente del índice de bloque de fusión como se muestra en la FIG. 3B. En general, cuando un valor del índice de bloque de fusión es más pequeño, la cantidad de información necesaria disminuye. Por otro lado, cuando un valor del índice de bloque de fusión es más grande, la cantidad de información necesaria aumenta. Por lo tanto,
5
10
15
20
25
30
35
40
45
50
55
60
si un valor del índice de bloque de fusión correspondiente a un candidato de bloque de fusión que tiene una alta posibilidad de tener un vector de movimiento más preciso y un valor del índice de imagen de referencia más precisa disminuye, la eficiencia de codificación aumenta. Por ejemplo, se puede considerar contar cuántas veces cada candidato de bloque de fusión ha sido seleccionado como un bloque de fusión, y se asigna un valor más pequeño del índice de bloque de fusión a un bloque que tiene la mayor cuenta. Aquí, si un candidato de bloque de fusión objetivo no mantiene información tal como un vector de movimiento, por ejemplo, si el candidato de bloque de fusión es un bloque codificado mediante predicción intra, o si el candidato de bloque de fusión está ubicado fuera de un borde de imagen o un borde de porción, se asume que tal bloque no puede ser usado como un candidato de bloque de fusión. En la presente realización, si un bloque no puede ser usado como un candidato de bloque de fusión, el bloque es referido como un bloque no disponible, y si un bloque puede ser usado como un candidato de bloque de fusión, el bloque es referido como un bloque disponible. En la situación mostrada en la FIG. 3A, dado que el bloque C vecino es un bloque codificado mediante predicción intra, el bloque C vecino es considerado como no disponible como un bloque no disponible como un candidato de bloque de fusión.
Mediante el uso de candidatos de bloques de fusión especificados en el S11, la unidad 111 de cálculo de candidatos de bloque de fusión genera un bloque de fusión combinado mediante el método que se describirá más adelante, para actualizar la lista de candidatos de bloques de fusión (Paso S12). Por ejemplo, la lista de candidatos de bloques de fusión mostrada en la FIG. 6 es generada de la lista de candidatos de bloques de fusión mostrada en la FIG. 3B. En la lista de candidatos de bloques de fusión en la FIG. 3B, el bloque de fusión combinado generado mediante el método que se describirá más adelante es usado en vez de un candidato no disponible que tiene un valor “3” de índice de bloque de fusión. Mediante el uso de tal bloque de fusión combinado recién generado en vez del candidato no disponible, es posible mejorar la eficiencia de codificación sin cambiar un valor máximo del número de candidatos de bloques de fusión.
A continuación, la unidad 109 de control de predicción entre compara (a) el error de predicción de la imagen de predicción entre generada mediante el uso del vector de movimiento derivado por la estimación de movimiento con (b) el error de predicción de la imagen de predicción generada por el candidato de bloque de fusión mediante el método que se describirá más adelante, para determinar un modo de predicción para codificar el bloque actual. Aquí, si se determina que el modo de predicción es el modo de fusión, entonces la unidad 109 de control de predicción entre determina un valor del índice de bloque de fusión que indica qué candidato de bloque de fusión usar. Entonces, si el modo de predicción es el modo de fusión, la unidad 109 de control de predicción entre establece la bandera de fusión a 1, sino, establece la bandera de fusión a 0 (Paso S13). La unidad 109 de control de predicción entre determina si la bandera es 1 o no, en otras palabras, si el modo de predicción es el modo de fusión o no (Paso S14). Como resultado, si el modo de predicción es el modo de fusión (Sí en el Paso S14), entonces la unidad 109 de control de predicción entre provee a la unidad 113 de codificación de longitud variable de la bandera de fusión y el valor del índice de bloque de fusión a ser usado para la fusión, para añadir la bandera de fusión y el valor del índice en el flujo de bits (Paso S15). Por otro lado, si el modo de predicción no es el modo de fusión (No en el Paso S14), entonces la unidad 109 de control de predicción entre provee a la unidad 113 de codificación de longitud variable de la bandera de fusión e información del modo de vector de estimación de movimiento, para añadir la bandera de fusión y la información al flujo de bits (Paso S16).
Se debería anotar en la presente realización que, como se muestra en la FIG. 3B, respecto a los valores de los índices de bloques de fusión, un valor correspondiente con el bloque A vecino es “0”, un valor correspondiente con el bloque B vecino es “1”, y un valor correspondiente con el bloque de fusión co-ubicado es “2”, un valor correspondiente con el bloque C vecino es “3”, y un valor correspondiente con el bloque D vecino es “4”. Sin embargo, la forma de asignar valores de índice de bloque de fusión no está limitada solo a este ejemplo. Por ejemplo, también es posible que el valor más grande se asigne a un candidato no disponible como un candidato de bloque de fusión. También debería anotarse que los candidatos de bloques de fusión no están limitados a los bloques A, B, C y D vecinos. Por ejemplo, un bloque vecino o similar que está ubicado encima del bloque D inmediatamente abajo a la izquierda puede ser seleccionado como un candidato de bloque de fusión. Debería también anotarse que no es necesario usar todos los bloques vecinos, sino que solo los bloques A y B vecinos pueden ser usados como candidatos de bloques de fusión. También debería anotarse que no es necesario usar siempre el bloque de fusión co-ubicado.
También debería anotarse que se ha descrito en la presente realización en el S15 en la FIG. 5 que la unidad 109 de control de predicción entre proporciona un valor del índice de bloque de fusión a la unidad 113 de codificación de longitud variable para añadir el valor del índice de bloque de fusión en el flujo de bits, pero también es posible no añadir el valor del índice del bloque de fusión si el número de candidatos de bloques de fusión es 1. De este modo, es posible reducir una cantidad de información del índice de bloque de fusión.
También debería anotarse que se ha descrito en la presente realización en el S12 en la FIG. 5 que un bloque de fusión combinado es usado en vez de un candidato no disponible que tiene un valor “3” del índice de bloque de fusión. Sin embargo, la presente descripción no está limitada a lo anterior y el bloque de fusión combinado puede ser además añadido en la lista de candidatos de bloques de fusión. De este modo, es posible aumentar el intervalo de selección de los candidatos de bloques de fusión. Aquí, también es posible que el candidato no disponible sea tratado como un candidato que tiene el vector 0 de movimiento y el índice 0 de imagen de referencia.
5
10
15
20
25
30
35
40
45
50
55
60
La FIG. 7 muestra un ejemplo de una tabla de codificación que es usada para realizar codificación de longitud variable en valores de los índices de bloques de fusión.
En el ejemplo mostrado en la FIG. 7, un código que tiene una longitud de código más corta es asignado a un valor más pequeño del índice de bloque de fusión. Por lo tanto, si un valor del índice de bloque de fusión correspondiente a un candidato de bloque de fusión que tiene la posibilidad de una precisión de predicción alta es disminuido, es posible mejorar la eficiencia de codificación.
Se debería anotar que se ha descrito en la presente realización que la codificación de longitud variable es realizada en valores de los índices de bloques de fusión como se muestra en la FIG. 7, pero los valores de los índices de bloques de fusión pueden ser codificados con una longitud de código fija. De este modo, es posible reducir una carga en el proceso de codificación o decodificación.
La FIG. 8 es un diagrama de flujo de un flujo detallado del S12 en la FIG. 5. Lo siguiente describe el método para generar un bloque de fusión combinado desde los candidatos de bloques de fusión especificados en el S11 con referencia a la FIG. 8.
La unidad 111 de cálculo de candidatos de bloques de fusión inicializa un valor 1 (idx1) del índice a “0” (Paso S21). Entonces, la unidad 111 de cálculo de candidatos de bloques de fusión inicializa un valor 2 (idx2) del índice a “0” (Paso S22). La unidad 111 de cálculo de candidatos de bloques de fusión determina si el idx1 y el idx2 tienen diferentes valores o no y la lista de candidatos de bloques de fusión incluye cualquier candidato no disponible (Paso S23). Como resultado, si hay un candidato no disponible (Sí en el Paso S23), entonces la unidad 111 de cálculo de candidatos de bloques de fusión determina si el candidato [idx1] asignado con el valor idx1 del índice de bloque de fusión está disponible y el candidato [idx2] asignado con el valor idx2 del índice de bloque de fusión está disponible o no (Paso S24). Como resultado, si el candidato [idx1] de bloque de fusión está disponible y el candidato [idx2] de bloque de fusión también está disponible (Sí en el Paso S24), entonces la unidad 111 de cálculo de candidatos de bloques de fusión determina si el candidato [idx1] de bloque de fusión y el candidato [idx2] de bloque de fusión han sido predichos en diferentes direcciones de predicción, o si tanto el candidato [idx1] de bloque de fusión como el candidato [idx2] de bloque de fusión han sido codificados mediante predicción bidireccional (Paso S25). Como resultado, si el candidato [idx1] de bloque de fusión y el candidato [idx2] de bloque de fusión han sido predichos en diferentes direcciones de predicción, o tanto el candidato [idx1] de bloque de fusión como el candidato [idx2] de bloque de fusión han sido codificados mediante predicción bidireccional (Sí en el Paso S25), entonces la unidad 111 de cálculo de candidatos de bloques de fusión determina si el candidato [idx1] de bloque de fusión ha sido predicho en la dirección 0 de predicción (la primera dirección de predicción) o codificado mediante predicción bidireccional, y el candidato [idx2] de bloque de fusión ha sido predicho en la dirección 1 de predicción (la segunda dirección de predicción) o codificado mediante predicción bidireccional (Paso S26). Como resultado, si el candidato [idx1] de bloque de fusión ha sido predicho en la dirección 0 de predicción o codificado mediante predicción bidireccional, y el candidato [idx2] de bloque de fusión ha sido predicho en la dirección 1 de predicción o codificado mediante predicción bidireccional (Sí en el Paso S26), en otras palabras, si el candidato [idx1] de bloque de fusión tiene al menos un vector de movimiento de la dirección 0 de predicción y el candidato [idx2] de bloque de fusión tiene el menos un vector de movimiento de la dirección 1 de predicción, entonces la unidad 111 de cálculo de candidatos de bloques de fusión selecciona el vector de movimiento y el valor del índice de imagen de referencia de la dirección 0 de predicción del candidato [idx1] de bloque de fusión para la dirección 0 de predicción del bloque de fusión combinado (Paso S27). Además, la unidad 111 de cálculo de candidatos de bloques de fusión selecciona el vector de movimiento y el valor del índice de imagen de referencia de la dirección 1 de predicción del candidato [idx2] de bloque de fusión para la dirección 1 de predicción del bloque de fusión combinado, para generar el bloque de fusión combinado de predicción bidireccional (Paso S28). Por otro lado, si no se determina que el candidato [idx1] de bloque de fusión ha sido predicho en la dirección 0 de predicción o codificado mediante la predicción bidireccional, y el candidato [idx2] de bloque de fusión ha sido predicho en la dirección 1 de predicción o codificado mediante la predicción bidireccional (No en el Paso S26), entonces la unidad 111 de cálculo de candidatos de bloques de fusión selecciona el vector de movimiento y el valor del índice de imagen de referencia de la dirección 0 de predicción del candidato [idx2] de bloque de fusión para la dirección 0 de predicción del bloque de fusión combinado (Paso S29). Además, si la unidad 111 de cálculo de candidatos de bloques de fusión selecciona el vector de movimiento y el valor del índice de imagen de referencia de la dirección 1 de predicción del candidato [idx1] de bloque de fusión para la dirección 1 de predicción del bloque de fusión combinado, para generar el bloque de fusión combinado de predicción bidireccional (Paso S30). La unidad 111 de cálculo de candidatos de bloques de fusión añade el bloque de fusión combinado generado en la lista de bloques de fusión como un candidato disponible, en vez del candidato no disponible (Paso S31). A continuación, la unidad 111 de cálculo de candidatos de bloques de fusión añade un valor “1” al valor idx2 (Paso S32), y determina si el valor idx2 es igual o mayor que el valor máximo del número de candidatos de bloques de fusión (Paso S33). Como resultado, si el valor idx2 no es igual o mayor que el valor máximo del número de candidatos de bloques de fusión (No en el Paso S33), el procesamiento vuelve al Paso S23, entonces la unidad 111 de cálculo de candidatos de bloques de fusión determina otra vez si queda algún candidato o no, y genera un próximo bloque de fusión combinado (Pasos S23 a S32). Por otro lado, si el valor idx2 es igual o mayor que un valor máximo del número de candidatos de bloques de fusión (Sí en el Paso S33), entonces la unidad 111 de cálculo de candidatos de bloques de fusión añade un valor “1” al idx1 (Paso S34) y determina si el idx1 es igual o mayor que el valor máximo del número de candidatos de bloques de fusión (Paso S35). Como resultado, si el idx1 es igual o mayor que el valor máximo del número de candidatos de bloques de fusión (Sí en el Paso S35), en
5
10
15
20
25
30
35
40
45
50
55
otras palabras, si todas las combinaciones de candidatos de bloques de fusión han sido examinadas, el procesamiento se completa.
Debería anotarse que se ha descrito en la presente realización que el procesamiento se completa cuando todas las combinaciones de candidatos de bloques de fusión han sido examinadas, pero la presente descripción no está limitada por lo anterior. Por ejemplo, es posible completar el procesamiento cuando no hay más candidatos disponibles en la lista de candidatos de bloques de fusión. Como resultado, una cantidad de procesamiento puede ser reducida.
También debería anotarse que se ha descrito en la presente realización que los pasos en el método para generar un bloque de fusión combinado desde candidatos de bloques de fusión son realizados en el orden mostrado en el diagrama de flujo de la FIG. 8, pero la presente descripción no está limitada por lo anterior y el orden de los pasos puede cambiarse.
También debería anotarse que se ha descrito en la presente realización que, por ejemplo, cuando un vector de movimiento y un valor del índice de imagen de referencia de la dirección de predicción respecto a un bloque vecino es seleccionada para la dirección 0 de predicción del bloque de fusión combinado, si hay una pluralidad de candidatos de bloque de fusión que tienen un vector de movimiento y un valor del índice de imagen de referencia de la dirección 0 de predicción, se selección el vector de movimiento y el valor del índice de imagen de referencia de la dirección 0 de predicción con respecto al candidato de bloque de fusión que tiene el valor del índice de bloque de fusión más cercano a “0”. Sin embargo, la presente descripción no está limitada por lo anterior. Por ejemplo, también es posible seleccionar un vector de movimiento y un valor del índice de imagen de referencia de la dirección 0 de predicción con referencia a un candidato de bloque de fusión que tenga un valor del índice de bloque de fusión más cercano a un valor máximo.
También debería anotarse que se ha descrito en la presente realización en el S31 en al FIG. 8 que el bloque de fusión combinado generado es añadido a la lista de candidatos de bloques de fusión como un candidato disponible en vez de un candidato no disponible, peo la presente descripción no está limitada por lo anterior. Por ejemplo, es también posible que se determine si cualquier otro candidato de bloque de fusión que mantiene el mismo vector de movimiento y el mismo valor del índice de imagen de referencia que los bloques de fusión combinados ha sido ya incluido en la lista de candidatos de bloques de fusión, y si no hay tal candidato en la lista, el bloque de fusión combinado es añadido a la lista de candidatos de bloques de fusión como un candidato disponible en vez de un candidato no disponible. De este modo, evitando que el mismo candidato de bloque de fusión sea añadido otra vez, es posible añadir candidatos de bloques de fusión efectivos. Como resultado, la eficiencia de codificación puede ser mejorada.
También debería anotarse que se ha descrito en la presente realización que el bloque de fusión combinado generado es añadido a la lista de candidatos de bloques de fusión cuando hay un candidato no disponible en la lista de candidatos de bloques de fusión, pero la presente descripción no está limitada por lo anterior. Por ejemplo, es también posible en el S23 en la FIG. 8 que la determinación de si hay o no un candidato no disponible en la lista de candidatos de bloques de fusión no se tome, pero el bloque de fusión combinado se calcule y se añada a la lista de candidatos de bloques de fusión. De este modo, es posible aumentar el intervalo de selección de los candidatos de bloques de fusión. Como resultado, la eficiencia de codificación puede ser mejorada.
La FIG. 9 es un diagrama de flujo de un flujo detallado del S13 en la FIG. 5. Lo que sigue se describe con referencia a la FIG.9.
La unidad 109 de control de predicción entre establece un valor del índice de candidato de bloque de fusión a “0”, el error de predicción mínimo a un error de predicción (coste) del modo de estimación de vector de movimiento, y la bandera de fusión a “0” (Paso S41). Aquí, el coste se calcula mediante, por ejemplo, la siguiente Ecuación 1 del modelo de optimización R-D.
[Mat. 1]
Coste = D + A x R (Ecuación 1)
En la Ecuación 1, D representa una distorsión de codificación que es, por ejemplo, una suma de valores absolutos de diferencia de (a) un valor de pixel obtenido mediante la codificación y decodificación de un bloque actual mediante el uso de una imagen de predicción generada por un cierto vector de movimiento y (b) un valor de pixel original del bloque actual. Además, R representa una cantidad de codificación que es, por ejemplo, una cantidad de codificación requerida para codificar el vector de movimiento usado en la generación de la imagen de predicción. A representa un método de Lagrange de multiplicadores indeterminados.
Entonces, la unidad 109 de control de predicción entre determina si un valor del índice del candidato de fusión es menor o no que el número de candidatos de bloques de fusión del bloque actual, en otras palabras, si hay o no cualquier bloque que tenga la posibilidad de ser un candidato de bloque de fusión (Paso S42). Como resultado, si se determina que el valor del índice del candidato de bloque de fusión es menor que el número de candidatos de bloques de fusión (Sí en el Paso S42), entonces la unidad 109 de control de predicción entre calcula un coste del candidato de bloque de fusión asignado con el valor del índice del candidato de bloque de fusión (Paso S43). A
5
10
15
20
25
30
35
40
45
50
55
continuación, la unidad 109 de control de predicción entre determina si el coste calculado del candidato de bloque de fusión es menor que el error de predicción mínimo (Paso S44). Como resultado, si el coste calculado del candidato de bloque de fusión es menor que el error de predicción mínimo (Sí en el Paso S44), entonces la unidad 109 de control de predicción entre actualiza el error de predicción mínimo, el valor del índice del bloque de fusión, y el valor de la bandera de fusión (Paso S45). A continuación, la unidad 109 de control de predicción entre añade un valor “1” al valor del índice del candidato de bloque de fusión (Paso S46), y el procesamiento se repite desde el S42 al S46. Si el coste calculado del candidato de bloque de fusión no es menor que el error de predicción mínimo (No en el Paso S44), entonces el proceso de actualización en el S45 no se realiza, sino que el Paso 46 se realiza, y el procesamiento se repite desde el S42 al S46. Aquí, en el Paso S42, si el valor del índice del candidato de bloque de fusión no es menor que el número de candidatos de bloques de fusión (No en el Paso S42), en otras palabras, si no hay un candidato de bloque de fusión, entonces la unidad 109 de control de predicción entre finalmente determina la bandera de fusión dejada finalmente y el valor del índice de bloque de fusión (Paso S47).
Según la presente realización de la presente descripción, un nuevo candidato de bloque de fusión de predicción bidireccional se calcula desde los candidatos de bloques de fusión, para mejorar la eficiencia de codificación. Más específicamente, basado en los candidatos de bloques de fusión calculados desde bloques vecinos y el bloque coubicado, (a) un vector de movimiento y un valor del índice de imagen de referencia de la dirección 0 de predicción y (b) un vector de movimiento y un valor del índice de imagen de referencia de la dirección 1 de predicción son combinados para generar un bloque de fusión combinado de predicción bidireccional, y entonces añadido a la lista de candidatos de bloques de fusión. Como resultado, la eficiencia de codificación puede ser mejorada. Además, si hay un candidato no disponible en la lista de candidatos de bloques de fusión, un bloque de fusión combinado es generado y el candidato no disponible es reemplazado por el bloque de fusión combinado. De este modo, la eficiencia de codificación puede ser mejorada sin incrementar un valor máximo del número de candidatos de bloques de fusión.
Se debería anotar que ha sido descrito en la presente realización que la bandera de fusión es siempre añadida al flujo de bits en el modo de fusión, pero la presente descripción no está limitada por lo anterior. Por ejemplo, también es posible que sea forzada a seleccionar el modo de fusión según a una forma o similar del bloque actual. En este caso, es posible que una cantidad de información sea reducida mediante la no adición de la bandera de fusión al flujo de bits.
Se debería anotar que ha sido descrito en la presente realización que, en el modo de fusión, al menos un vector de movimiento y al menos un valor del índice de imagen de referencia son copiados desde un bloque vecino del bloque actual y entonces usados para codificar el bloque actual, pero la presente descripción no está limitada por lo anterior. Por ejemplo, lo siguiente es también posible. En la misma forma que el modo de fusión, mediante el uso de candidatos de bloques de fusión generados como se muestra en la FIG. 6, al menos un vector de movimiento y al menos un valor del índice de imagen de referencia son copiados desde un bloque vecino del bloque actual y entonces usados para codificar el bloque actual. Como resultado, si cada dato de error de predicción del bloque actual es 0, una bandera de omisión es establecida a 1 y añadida al flujo de bits. Por otro lado, si cada dato de error de predicción no es 0, la bandera de omisión es establecida a 0 y la bandera de omisión y el dato de error de predicción son añadidos al flujo de bits (modo de omisión de fusión).
También debería anotarse que ha sido descrito en la presente realización que, en el modo de fusión, al menos un vector de movimiento y al menos un valor del índice de imagen de referencia son copiados desde un bloque vecino del bloque actual y entonces usados para codificar el bloque actual, pero la presente descripción no está limitada por lo anterior. Por ejemplo, también es posible que un vector de movimiento en el modo de estimación de vector de movimiento sea codificado mediante el uso de la lista de candidatos de bloques de fusión como se muestra en la FIG. 6. Más específicamente, es posible que un vector de movimiento de un candidato de bloque de fusión designado por el valor del índice de bloque de fusión sea sustraído del vector de movimiento del modo de estimación de vector de movimiento, para obtener una diferencia, y que la diferencia y el valor del índice de candidato de bloque de fusión sean añadidos al flujo de bits. Además, lo siguiente también es posible. Mediante el uso del valor RefIdx_ME de índice de imagen de referencia del modo de estimación de movimiento y un valor RefIdx_Fusión de índice de imagen de referencia del modo de fusión, se realiza un escalado en un vector MV_Fusión de movimiento del candidato de bloque de fusión. Entonces, un vector escaladoMV_Fusión de movimiento del candidato de bloque de fusión escalado es sustraído de los vectores de movimiento en el modo de estimación de movimiento para obtener una diferencia. La diferencia y el valor del índice del candidato de bloque de fusión son añadidos al flujo de bits. Este escalado puede ser realizado mediante el uso de la Ecuación 2 siguiente:
escaladoMV_Fusión = MV_Fusiónx(POC(RefIdx_ME) - curPOC )/(POC(RefIdx_Fusión) - curPOC) (Ecuación 2)
Aquí, POC(RefIdx_ME) representa una ubicación en un orden de visualización de una imagen de referencia indicada por un valor RefIdx_ME de índice de imagen de referencia, POC(RefIdx_Fusión) representa una ubicación en el orden de visualización de una imagen de referencia indicada por el valor RefIdx_Fusión, y curPOC representa una ubicación en el orden de visualización de una imagen a ser codificada.
5
10
15
20
25
30
35
40
45
50
55
(Realización 2)
La FIG. 10 es un diagrama de bloques que muestra una estructura de un aparato de decodificación de imágenes en movimiento que usa un método de decodificación de imágenes en movimiento según la Realización 2 de la presente descripción.
Como se muestra en la FIG. 10, el aparato 200 de decodificación de imágenes en movimiento incluye una unidad 201 de decodificación de longitud variable, una unidad 202 de cuantificación inversa, una unidad 203 de transformación ortogonal inversa, una memoria 204 de bloques, una memoria 205 de tramas, una unidad 206 de predicción intra, una unidad 207 de predicción entre, una unidad 208 de control de predicción entre, una unidad 209 de cálculo de candidatos de bloques de fusión, una memoria 210 de colPic, un sumador 211, y un conmutador 212.
La unidad 201 de decodificación de longitud variable realiza decodificación de longitud variable en un flujo de bits de entrada para obtener la información del tipo de imagen, la bandera de fusión, y el índice del bloque de fusión, y un flujo de bits decodificado de longitud variable. La unidad 202 de cuantificación inversa cuantifica inversamente el flujo de bits decodificado de longitud variable. La unidad 203 de transformación ortogonal inversa transforma el flujo de bits cuantificado inversamente desde un dominio de la frecuencia a un dominio de la imagen, para generar datos de imagen de error de predicción. La memoria 204 de bloques mantiene una secuencia de imágenes generada mediante la adicción de los datos de imagen de error de predicción a la imagen de predicción en una forma bloque a bloque. La memoria 205 de tramas mantiene una secuencia de imágenes en una forma imagen a imagen. La unidad 206 de predicción intra realiza predicción intra en la secuencia de imágenes almacenada en la memoria 204 de bloques en una forma bloque a bloque, para generar datos de imagen de predicción de un bloque actual a ser decodificado. La unidad 207 de predicción entre realiza predicción entre en la secuencia de imágenes almacenada en la memoria de tramas en una forma imagen a imagen, para generar datos de imagen de predicción del bloque actual a ser decodificado.
La unidad 209 de cálculo de candidatos de bloques de fusión deriva candidatos de bloques de fusión del modo de fusión, mediante el uso de información de colPic tal como vectores de movimiento de bloques vecinos y un bloque co-ubicado almacenado en la memoria 210 de colPic respecto al bloque actual. Además, la unidad 209 de cálculo de candidatos de bloques de fusión asigna cada bloque de fusión derivado con un valor correspondiente del índice de bloque de fusión. Entonces, la unidad 209 de cálculo de candidatos de bloques de fusión proporciona los candidatos de bloques de fusión y los valores del índice de bloque de fusión a la unidad 208 de control de predicción entre.
Si la bandera de fusión decodificada mediante la unidad 210 de decodificación de longitud variable es “0”, en otras palabras, si el modo de predicción no es el modo de fusión, la unidad 208 de control de predicción entre genera imagen de predicción entre usando la información decodificada del modo de estimación de movimiento. Además, si la bandera de fusión es “1”, en otras palabras, si el modo de predicción es el modo de fusión, entonces la unidad 208 de control de predicción entre determina un vector de movimiento y un valor del índice de imagen de referencia a ser usados en la predicción entre desde la pluralidad de candidatos de bloques de fusión, basado en el valor del índice del bloque de fusión decodificado, para generar imagen de predicción entre. Además, la unidad 208 de control de predicción entre provee a la memoria 210 de colPic de información de colPic que incluye el vector de movimiento y similares del bloque actual.
El sumador 211 añade los datos de predicción generados por la unidad 206 de predicción intra o la unidad 207 de predicción entre a los datos de error de predicción desde la unidad 203 de transformación ortogonal inversa, para generar una secuencia de imágenes decodificadas.
La FIG. 11 es un diagrama de flujo de un compendio de un flujo de procesamiento de un método de decodificación de imágenes en movimiento según la presente realización.
La unidad 201 de decodificación de longitud variable decodifica una bandera de fusión desde un flujo de bits (Paso S51). La unidad 208 de control de predicción entre determina si la bandera de fusión es “1” o no (Paso S52). Como resultado, si la bandera de fusión es “1” (Sí en el Paso S52), entonces la unidad 209 de cálculo de candidatos de bloques de fusión especifica candidatos de bloques de fusión desde los bloques vecinos y un bloque co-ubicado de un bloque actual a ser decodificado (Paso S53). En el mismo método al mostrado en la FIG. 8, la unidad 209 de cálculo de candidatos de bloques de fusión genera un bloque de fusión combinado, y actualiza la lista de candidatos de bloques de fusión (Paso S54). De este modo, como en el procesamiento de codificación, por ejemplo, la lista de candidatos de bloques de fusión mostrada en la FIG. 6 es generada desde la lista de candidatos de bloques de fusión mostrada en la FIG. 3B. La unidad 208 de control de predicción entre determina un bloque de fusión desde el cual al menos un vector de movimiento y al menos un valor del índice de imagen de referencia son copiados, según el valor del índice de bloque de fusión decodificado por la unidad 201 de decodificación de longitud variable, y genera imagen de predicción entre usando el bloque de fusión determinado (Paso S55). Por otro lado, en el Paso S52, si la bandera de fusión es “0”, entonces la unidad 208 de control de predicción entre genera imagen de predicción entre usando la información del modo de estimación de vector de movimiento que es decodificado por la unidad 201 de decodificación de longitud variable (Paso S56). Se debería anotar que, si el número de candidatos de bloques de fusión especificado o generado en el S53 y S54 es uno, es posible no decodificar un valor del índice de bloque de fusión sino estimar el valor del índice de bloque de fusión como 0.
5
10
15
20
25
30
35
40
45
50
55
Según la realización presente de la presente descripción, un nuevo bloque de fusión de predicción bidireccional es calculado desde los candidatos de bloques de fusión, para decodificar apropiadamente un flujo de bits con eficiencia de codificación mejorada.
Más específicamente, basado en los candidatos de bloques de fusión calculados por los bloques vecinos y el bloque co-ubicado, (a) un vector de movimiento y un valor del índice de imagen de referencia de la dirección 0 de predicción y (b) un vector de movimiento y un valor del índice de imagen de referencia de la dirección 1 de predicción son combinados para generar un bloque de fusión combinado de predicción bidireccional, y añadido a la lista de candidatos de bloques de fusión. Como resultado, es posible decodificar apropiadamente el flujo de bits con eficiencia de codificación mejorada. Además, si hay un candidato no disponible en la lista de candidatos de bloques de fusión, un bloque de fusión combinado es calculado y el candidato no disponible es reemplazado por el bloque de fusión combinado. De este modo, es posible decodificar apropiadamente el flujo de bits con eficiencia de codificación mejorada, sin aumentar un valor máximo del número de candidatos de bloques de fusión.
(Realización 3)
El procesamiento descrito en cada una de las Realizaciones puede ser implementado simplemente en un sistema informático independiente, mediante la grabación, en un medio de grabación, de un programa para implementar las configuraciones del método de codificación de imágenes en movimiento (método de codificación de imágenes) y el método de decodificación de imágenes en movimiento (método de decodificación de imágenes) descritos en cada una de las Realizaciones. El medio de grabación puede ser cualquier medio de grabación siempre y cuando el programa pueda ser grabado, tal como un disco magnético, un disco óptico, un disco óptico magnético, una tarjeta IC, y una memoria de semiconductores.
En adelante, se describirán las aplicaciones al método de codificación de imágenes en movimiento (método de codificación de imágenes) y el método de decodificación de imágenes en movimiento (método de decodificación de imágenes) descritos en cada una de las Realizaciones y sistemas que usan los mismos. El sistema tiene una característica de tener un aparato de codificación y decodificación de imágenes que incluye un aparato de codificación de imágenes que usa el método de codificación de imágenes y un aparato de decodificación de imágenes que usa el método de decodificación de imágenes. Se pueden cambiar otras configuraciones en el sistema según sea apropiado dependiendo del caso.
La FIG. 12 ilustra una configuración general de un sistema ex100 que proporciona contendido para implementar servicios de distribución de contenidos. El área para proporcionar servicios de comunicación está dividida en celdas del tamaño deseado, y las estaciones base ex106, ex107, ex108, ex109, y ex110 que son estaciones inalámbricas fijas son emplazadas en cada celda.
El sistema ex100 que proporciona contenido está conectado a dispositivos, tales como un ordenador ex111, un asistente digital personal (PDA) ex112, una cámara ex113, un teléfono móvil ex114 y una consola de videojuegos ex115, a través de Internet ex101, un proveedor ex102 de servicios de Internet, una red ex104 telefónica, así como las estaciones base ex106 a ex110 respectivamente.
Sin embargo, la configuración del sistema ex100 que proporciona contenido no está limitada a la configuración mostrada en la FIG. 12, y una combinación en la cual cualquiera de los elementos esté conectados es aceptable. Además, cada dispositivo puede estar directamente conectado con la red ex104 telefónica, más que a través de las estaciones base ex106 a ex110, que son las estaciones inalámbricas fijas. Además, los dispositivos pueden estar interconectados entre ellos a través de una comunicación inalámbrica de corta distancia y otros.
La cámara ex113, tal como una video cámara digital, es capaz de capturar video. Una cámara ex116, tal como una video cámara digital, es capaz de capturar tanto imágenes fijas como video. Además, el teléfono móvil ex114 puede ser el que cumpla cualquiera de los estándares como Sistema Global para comunicaciones Móviles (GSM), Acceso Múltiple por División de Código (CDMA), Acceso Múltiple por División de Código de Banda Ancha (W-CDMA), Evolución a Largo Plazo (LTE) y Acceso de Paquetes de Alta Velocidad (HSPA). Alternativamente, el teléfono móvil ex114 puede ser un Sistema de Teléfono Útil Personal (PHS).
En el sistema ex100 que proporciona contenido, un servidor ex103 de flujo de transmisión está conectado a la cámara ex113 y otros a través de la red ex104 telefónica y la estación base ex109, que permiten la distribución de imágenes en un espectáculo en vivo y otros. En tal distribución, un contenido (por ejemplo, video de un espectáculo de música en vivo) capturado por el usuario usando la cámara ex113 es codificado como se describió anteriormente en cada una de las Realizaciones (esto es, las funciones de la cámara como el aparato de codificación de imágenes de la presente invención), y el contenido codificado es transmitido al servidor ex103 de flujo de transmisión. Por otro lado, el servidor ex103 de flujo de transmisión lleva a cabo distribución de flujos de los datos contenidos transmitidos a los clientes a su solicitud. Los clientes incluyen el ordenador ex111, el pDa ex112, la cámara ex113, el teléfono móvil ex114, y la consola de videojuegos ex115 que son capaces de decodificar los datos codificados mencionados anteriormente. Cada uno de los dispositivos que ha recibido los datos distribuidos decodifica y reproduce los datos codificados (esto es, los dispositivos funcionan como el aparato de decodificación de imágenes de la presente invención).
5
10
15
20
25
30
35
40
45
50
55
60
Los datos capturados pueden ser codificados por la cámara ex113 o el servidor ex103 de flujo de transmisión que transmite los datos, o los procesos de codificación pueden compartirse entre la cámara ex113 y el servidor ex103 de flujo de transmisión. Similarmente, los datos distribuidos pueden ser decodificados por los clientes o el servidor ex103 de flujo de transmisión, o los procesos de decodificación pueden compartirse entre los clientes y el servidor ex103 de flujo de transmisión. Además, los datos de las imágenes fijas y el video capturado por no solo la cámara ex113 sino también por la cámara ex116 pueden ser transmitidos al servidor ex103 de flujo de transmisión a través del ordenador ex111. Los procesos de codificación pueden realizarse mediante la cámara ex116, el ordenador ex111, o el servidor ex103 de flujo de transmisión, o compartidos entre ellos.
Además, los procesos de codificación y decodificación pueden ser realizados por un LSI ex500 generalmente incluido en cada ordenador ex111 y los dispositivos. El lSi ex500 puede estar configurado de un único chip o una pluralidad de chips. El software para codificar y decodificar el video puede estar integrado en algún tipo de medio de grabación (tal como un CD-ROM, un disco flexible, y un disco duro) que es legible por el ordenador ex111 y otros, y los procesos de codificación y decodificación pueden ser realizados usando el software. Además, cuando el teléfono móvil ex114 está equipado con una cámara, los datos de imágenes obtenidas por la cámara pueden ser transmitidos. Los datos de video son datos codificados por el LSI ex500 incluido en el teléfono móvil ex114.
Además, el servidor ex103 de flujo de transmisión puede estar compuesto de servidores y ordenadores, y puede descentralizar datos y procesar los datos descentralizados, grabar, o distribuir datos.
Como se describió anteriormente, los clientes pueden recibir y reproducir los datos codificados en el sistema ex100 que proporciona contenido. En otras palabras, los clientes pueden recibir y decodificar información transmitida por el usuario, y reproducir y decodificar datos en tiempo real en el sistema ex100 que proporciona contenido, de forma que el usuario que no tienen ningún derecho y un equipo particular puede implementar difusión personal.
Aparte del ejemplo del sistema ex100 que proporciona contenido, el menos un aparato de codificación de imágenes en movimiento (aparato de codificación de imágenes) y el aparato de decodificación de imágenes en movimiento (aparato de decodificación de imágenes) descritos en cada una de las Realizaciones puede ser implementado en un sistema ex200 de difusión digital ilustrado en la FIG. 13. Más específicamente, una estación ex201 de difusión se comunica o transmite, a través de ondas de radio a un satélite ex202 de difusión, datos multiplexados obtenidos mediante la multiplexación de datos de audio y otros en datos de video. Los datos de video son datos codificados por el método de codificación de imágenes en movimiento descrito en cada una de las Realizaciones (esto es, datos codificados por el aparato de codificación de imágenes de la presente invención). Tras recibir los datos multiplexados, el satélite ex202 de difusión transmite ondas de radio para difusión. Entonces, una antena ex204 de uso doméstico con una función de recepción de difusión de satélite recibe las ondas de radio. A continuación, un dispositivo como un televisor (receptor) ex300 y un decodificador de televisión (STB) ex217 decodifican los datos multiplexados recibidos, y reproducen los datos decodificados (esto es, el dispositivo funciona como el aparato de codificación de imágenes de la presente invención).
Además, un lector/grabador ex218 (i) lee y decodifica los datos multiplexados grabados en un medio ex215 de grabación, tal como un DVD y un BD, o (i) codifica señales de video en el medio ex215 de grabación, y en algunos casos, escribe datos obtenidos mediante la multiplexación de una señal de audio en los datos codificados. El lector/grabador ex218 puede incluir el aparato de decodificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento como se muestra en cada una de las Realizaciones. En este caso, las señales de video reproducidas son visualizadas en el monitor ex219, y pueden ser reproducidas por cualquier dispositivo o sistema que use el medio ex215 de grabación en el cual los datos multiplexados están grabados. Es también posible implementar el aparato de decodificación de imágenes en movimiento en el decodificador de televisión ex217 conectado al cable ex203 para televisión por cable o a la antena ex204 para difusión satelital y/o terrestre, para visualizar las señales de video en el monitor ex219 del televisor ex300. El aparato de decodificación de imágenes en movimiento puede implementarse no solo en el decodificador de televisión sino en el televisor ex300.
La FIG. 14 ilustra el televisor (receptor) ex300 que usa el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento descrito en cada una de las Realizaciones. El televisor ex300 incluye: un sintonizador ex301 que obtiene o proporciona datos multiplexados obtenidos mediante la multiplexación de datos de audio sobre datos de video, a través de la antena ex204 o el cable ex203, etc. que recibe una difusión; una unidad ex302 de modulación/demodulación que demodula los datos multiplexados recibidos o modula datos en datos multiplexados a ser suministrados fuera; y una unidad ex303 de multiplexación/demultiplexación que demultiplexa los datos multiplexados modulados en datos de video y datos de audio, o multiplexa datos de video y datos de audio codificados por una unidad ex306 de procesamiento de señal en datos.
El televisor ex300 además incluye: una unidad ex306 de procesamiento de señal que incluye una unidad ex304 de procesamiento de señal de audio y una unidad ex305 de procesamiento de señal de video que decodifica datos de audio y datos de video y codifica datos de audio y datos de video, (que funciona como el aparato de codificación de imágenes y el aparato de decodificación de imágenes), respectivamente; y una unidad ex309 de salida que incluye un altavoz ex307 que proporciona la señal de audio decodificada, y una unidad ex308 de visualización que muestra la señal de video decodificada, tal como un monitor. Además, el televisor ex300 incluye una unidad ex317 de interfaz
5
10
15
20
25
30
35
40
45
50
55
60
que incluye una unidad ex312 de entrada de operación que recibe una entrada de una operación de usuario. Además, el televisor ex300 incluye una unidad ex310 de control que controla en general cada elemento constituyente del televisor ex300, y una unidad ex311 de circuito de alimentación que suministra alimentación a cada uno de los elementos. Además de la unidad ex312 de entrada de operación, la unidad ex317 de interfaz puede incluir: un puente ex313 que está conectado a un dispositivo externo, tal como el lector/grabador ex218; una unidad ex314 de ranura para habilitar el acoplamiento del medio ex216 de grabación tal como una tarjeta SD; un controlador ex315 a ser conectado a un medio de grabación externo, tal como un disco duro; y un módem ex316 a ser conectado a la red telefónica. Aquí, el medio ex216 de grabación puede grabar eléctricamente información usando un elemento de memoria semiconductor no volátil/volátil de almacenamiento. Los elementos constituyentes del televisor ex300 están conectados entre ellos a través de un bus síncrono.
Primero, se describirá la configuración en la cual el televisor ex300 decodifica datos multiplexados obtenidos desde fuera a través de la antena ex204 y otros y reproduce los datos decodificados. En el televisor ex300, tras una operación de usuario a través de un mando ex220 a distancia y otros, la unidad ex303 de multiplexación/demultiplexación demultiplexa los datos multiplexados demodulados por la unidad ex302 de modulación/demodulación, bajo el control de la unidad ex310 de control que incluye una CPU. Además, la unidad ex304 de procesamiento de señal de audio decodifica los datos de audio demultiplexados, y la unidad ex305 de procesamiento de señal de video decodifica los datos de video demultiplexados, usando el método de decodificación descrito en cada una de las Realizaciones, en el televisor ex300. La unidad ex309 de salida proporciona la señal de video y la señal de audio decodificadas de salida, respectivamente. Cuando la unidad ex309 de salida proporciona la señal de video y la señal de audio, las señales pueden ser almacenadas temporalmente en las memorias intermedias (buffers) ex318 y ex319, y otras para que las señales se reproduzcan en sincronía entre ellas. Además, el televisor ex300 puede leer datos multiplexados no a través de una difusión y otros sino desde el medio ex215 y ex216 de grabación, tal como un disco magnético, un disco óptico, y una tarjeta SD. A continuación, se describirá una configuración en la cual el televisor ex300 codifica una señal de audio y una señal de video, y transmite los datos afuera o escribe los datos en un medio de grabación. En el televisor ex300, tras una operación de usuario a través de un mando ex220 a distancia y otros, la unidad ex304 de procesamiento de señal de audio codifica una señal de audio, y la unidad ex305 de procesamiento de señal de video codifica una señal de video, bajo el control de la unidad ex310 de control usando el método de codificación descrito en cada una de las Realizaciones. La unidad ex303 multiplexa la señal de video y la señal de audio codificadas, y proporciona la señal resultante afuera. Cuando la unidad ex303 de multiplexación/demultiplexación multiplexa la señal de video y la señal de audio, las señales pueden ser almacenadas temporalmente en las memorias intermedias (buffers) ex320 y ex321, y otras para que las señales se reproduzcan en sincronía entre ellas. Aquí, las memorias intermedias ex318, ex319, ex320 y ex321 pueden ser varias como se ilustra, o al menos una memoria intermedia puede ser compartida en el televisor ex300. Además, los datos pueden ser almacenados en una memoria intermedia para que se pueda evitar el exceso de flujo o la falta de flujo entre la unidad ex302 de modulación/demodulación y la unidad ex303 de multiplexación/demultiplexación, por ejemplo.
Además, el televisor ex300 puede incluir una configuración para recibir una entrada AV desde un micrófono o una cámara además de la configuración para obtener datos de audio y video desde una difusión o un medio de grabación, y puede codificar los datos obtenidos. Aunque el televisor ex300 puede codificar, multiplexar, y proporcionar datos de salida en la descripción, puede ser solo capaz de recibir, decodificar, y proporcionar datos de salida, pero no de codificar, multiplexar y proporcionar datos de salida.
Además, cuando el lector/grabador ex218 lee o escribe datos multiplexados desde o en un medio de grabación, uno entre el televisor ex300 y el lector/grabador ex218 puede decodificar y codificar los datos multiplexados, y el televisor ex300 y el lector/grabador ex218 pueden compartir la decodificación o codificación.
Como un ejemplo, la FIG. 15 ilustra una configuración de una unidad ex400 de reproducción/grabación de información cuando los datos se leen o escriben desde o en un disco óptico. La unidad ex400 de reproducción/grabación de información incluye elementos constituyentes ex401, ex402, ex403, ex404, ex405, ex406, y ex407 que serán descritos en adelante. El cabezal ex401 óptico irradia un punto laser en una superficie de grabación del medio ex215 de grabación que es un disco óptico para escribir información, y detecta luz reflejada desde la superficie de grabación en el medio ex215 de grabación para leer la información. La unidad ex402 de grabación de modulación dirige eléctricamente un láser semiconductor incluido en el cabezal ex401 óptico, y modula la luz láser según los datos grabados. La unidad ex403 de demodulación de reproducción amplifica una señal de reproducción obtenida mediante la detección eléctrica de la luz reflejada desde la superficie de grabación usando un foto detector incluido en el cabezal ex401 óptico, y demodula la señal de reproducción separando una componente de señal grabada en el medio ex215 de grabación para reproducir la información necesaria. La memoria intermedia ex404 mantiene temporalmente la información a ser grabada en el medio ex215 de grabación y la información reproducida desde el medio ex215 de grabación. El motor ex405 de disco rota el medio ex215 de grabación La unidad ex406 de control servo mueve el cabezal ex401 óptico a una pista de información predeterminada mientras controla el controlador de rotación del motor ex405 del disco para seguir el punto láser. La unidad ex407 de control del sistema controla en general la unidad ex400 de reproducción/grabación de información. Los procesos de lectura y escritura pueden ser implementados por la unidad ex407 de control del sistema usando varia información almacenada en la memoria intermedia ex404 y generando y añadiendo nueva información según sea necesario, y a través de la unidad ex402 de grabación de modulación, la unidad ex403 de demodulación de reproducción, y la
5
10
15
20
25
30
35
40
45
50
55
unidad ex406 de control servo que graba y reproduce información a través del cabeza ex401 óptico mientras son operados de manera coordinada. La unidad ex407 de control del sistema incluye, por ejemplo, un microprocesador, y ejecuta procesamiento causando que un ordenador ejecute un programa para leer y escribir.
Aunque el cabezal ex401 óptico irradia un punto láser en la descripción, puede realizar grabación de alta densidad usando luz de campo cercano.
La FIG. 16 ilustra el medio ex215 de grabación que es un disco óptico. En la superficie de grabación del medio ex215 de grabación, guías formadas por surcos en espiral, y una pista ex230 de información graba, por adelantado, información de dirección que indica una posición absoluta en el disco según los cambios y en la forma de los surcos de guía. La información de dirección incluye información para determinar posiciones de bloques ex231 de grabación que son una unidad para grabar datos. Reproducir la pista ex230 de información y leer la información de dirección en un aparato que graba y reproduce datos puede llevar a determinar las posiciones de los bloques de grabación. Además, el medio ex215 de grabación incluye un área ex233 de grabación de datos, un área ex232 de circunferencia interior, y un área ex234 de circunferencia exterior. El área ex233 de grabación de datos es un área para usar en la grabación de datos de usuario. El área ex232 de circunferencia interior y el área ex234 de circunferencia exterior que están dentro y fuera del área ex233 de grabación de datos, respectivamente son para uso específico excepto para grabar los datos de usuario. La unidad 400 de reproducción/grabación de información lee y escribe audio codificado, datos de video codificado, o datos multiplexados obtenidos mediante la multiplexación de audio y datos de video codificados, desde y en el área ex233 de grabación de datos del medio ex215 de grabación.
Aunque un disco óptico que tiene una capa, tal como un DVD y un BD se describen como un ejemplo en la descripción, el disco óptico no está limitado a tal, y puede ser un disco óptimo que tenga una estructura multicapa y que sea capaz de ser grabado en otra parte aparte de la superficie. Además, el disco óptico puede tener una estructura para grabación/reproducción multidimensional, tal como grabación de información usando luces de colores con diferentes longitudes de onda en la misma porción del disco óptico y para grabar información que tenga diferentes capas desde varios ángulos.
Además, un coche ex210 que tenga una antena ex205 puede recibir datos desde el satélite ex202 y otros, y reproducir video en un dispositivo de visualización tal como un sistema ex211 de navegación del coche instalado en el coche ex210, en el sistema ex200 de difusión digital. Aquí, una configuración del sistema ex211 de navegación del coche será una configuración, por ejemplo, que incluya una unidad de recepción de GPS desde la configuración ilustrada en la FIG. 14. Lo mismo será verdad para la configuración del ordenador ex111, el teléfono móvil ex114, y otros.
La FIG. 17A ilustra el teléfono móvil ex114 que usa el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento descritos en las Realizaciones. El teléfono móvil ex114 incluye: una antena ex350 para transmitir y recibir ondas de radio a través de la estación base ex110; una unidad ex365 de cámara capaz de capturar imágenes fijas y en movimiento; y una unidad ex358 de visualización tal como una pantalla de cristal líquido para visualizar los datos tales como video decodificado capturado por la unidad ex365 de cámara o recibidos por la antena ex350. El teléfono móvil ex114 además incluye: una unidad de cuerpo principal que incluye una unidad ex366 de teclas de operación; una unidad ex357 de salida de audio tal como un altavoz para salida de audio; una unidad ex356 de entrada de audio tal como un micrófono para entrada de audio; una unidad ex367 de memoria para almacenar video o imágenes fijas, audio grabado, datos codificados o decodificados del video recibido, las imágenes fijas, e-mails, u otros; y una unidad ex364 de ranura que es una unidad de interfaz para medios de grabación que almacena datos en el mismo modo que la unidad ex367 de memoria.
A continuación, se describirá un ejemplo de una configuración del teléfono móvil ex114 con referencia a la FIG. 17B. En el teléfono móvil ex114, una unidad ex360 de control principal diseñada para controlar en general cada unidad del cuerpo principal incluyendo la unidad ex358 de visualización además de la unidad ex366 de teclas de operación está conectada mutuamente, a través de un bus ex370 síncrono, a una unidad ex361 de circuito de alimentación, una unidad ex362 de control de entrada de operación, una unidad ex355 de procesamiento de señal de video, una unidad ex363 de interfaz de cámara, una unidad ex359 de control de pantalla de cristal líquido (LCD), una unidad ex352 de modulación/demodulación, una unidad ex353 de multiplexación/demultiplexación, una unidad ex354 de procesamiento de señal de audio, la unidad ex364 de ranura y la unidad ex367 de memoria.
Cuando una tecla de fin de llamada o una tecla de encendido es activada por una operación de usuario, la unidad ex361 de circuito de alimentación suministra a las unidades respectivas alimentación desde un paquete de baterías para activar el teléfono móvil ex114.
En el teléfono móvil ex114, la unidad ex354 de procesamiento de señal de audio convierte la señal de audio recogida por la unidad ex356 de entrada de audio en modo de conversación de voz en señales de audio digitales bajo el control de la unidad ex360 de control principal incluyendo una CPU, ROM, y RAM. Entonces, la unidad ex352 de modulación/demodulación realiza procesamiento de espectro ensanchado en las señales de audio digitales, y la unidad ex351 de transmisión y recepción realiza la conversión digital a analógico y conversión de frecuencia sobre los datos, para transmitir los datos resultantes a través de la antena ex350. También, en el teléfono móvil ex114, la
5
10
15
20
25
30
35
40
45
50
55
unidad ex351 de transmisión y recepción amplifica los datos recibidos por la antena ex350 en modo de conversación de voz y realiza conversión de frecuencia y la conversión analógica a digital sobre los datos. Entonces, la unidad ex352 de modulación/demodulación realiza el procesamiento de espectro ensanchado inverso sobre los datos, y la unidad ex354 de procesamiento de señal de audio la convierte en señales de audio analógicas, para sacarlas a través de la unidad ex357 de salida de audio.
Además, cuando se transmite un e-mail en el modo de comunicación de datos, los datos de texto del e-mail introducidos mediante la operación de la unidad ex366 de teclas de operación y otros del cuerpo principal son enviados a la unidad ex360 de control principal a través de la unidad ex362 de control de entrada de operación. La unidad ex360 de control principal causa que la unidad ex352 de modulación/demodulación realice procesamiento de espectro ensanchado en los datos de texto, y la unidad ex351 de transmisión y recepción realiza la conversión digital a analógico y la conversión de frecuencia en los datos resultantes para transmitir los datos a la estación base ex110 a través de la antena ex350. Cuando se recibe un e-mail, se realiza un procesamiento en los datos recibidos que es aproximadamente inverso al procesamiento de transmitir un e-mail, y los datos resultantes son proporcionados a la unidad ex358 de visualización.
Cuando se transmiten video, imágenes fijas, o video y audio en el modo de comunicación de datos, la unidad ex355 de procesamiento de señal de video comprime y codifica señales de video suministradas desde la unidad ex365 de cámara usando el método de codificación de imágenes en movimiento mostrado en cada una de las Realizaciones (esto eso, funciona como el aparato de codificación de imágenes de la presente invención), y transmite los datos de video codificado a la unidad ex353 de multiplexación/demultiplexación. En contraste, durante la captura de video, imágenes fijas, y otros, de la unidad ex365 de cámara, la unidad ex354 de procesamiento de señal de audio codifica señales de audio recogidas por la unidad ex356 de entrada de audio, y transmite los datos de audio codificados a la unidad ex353 de multiplexación/demultiplexación.
La unidad ex353 de multiplexación/demultiplexación multiplexa los datos de video codificado suministrado desde la unidad ex355 de procesamiento de señal de video y los datos de audio codificado suministrados desde la unidad ex354 de procesamiento de señal de audio, usando un método predeterminado. Entonces, la unidad ex352 de modulación/demodulación (unidad de circuito de modulación/demodulación) realiza procesamiento de espectro ensanchado en los datos multiplexados, y la unidad ex351 de transmisión y recepción realiza conversión digital a analógico y conversión de frecuencia en los datos para transmitir los datos resultantes a través de la antena ex350.
Cuando los datos recibidos de un archivo de video que está enlazado a una página Web y otros en el modo de comunicación de datos cuando se recibe un email con video y/o audio adjunto, para decodificar los datos multiplexados recibidos a través de la antena ex350, la unidad ex353 de multiplexación/demultiplexación demultiplexa los datos multiplexados en un flujo de bits de datos de video y un flujo de bits de datos de audio, y suministra a la unidad ex355 de procesamiento de señal de video los datos de video codificados y a la unidad ex354 de procesamiento de señal de audio los datos de audio codificados, a través del bus ex370 síncrono. La unidad ex355 de procesamiento de señal de video decodifica la señal de video usando un método de decodificación de imágenes en movimiento correspondiente con el método de codificación de imágenes en movimiento en cada una de las Realizaciones (esto es, funciona como el aparato de decodificación de imágenes de la presente invención), y entonces la unidad ex358 de visualización muestra, por ejemplo, el video e imágenes fijas incluidas en el archivo de video enlazado a la página Web a través de la unidad ex359 de control del LCD. Además, la unidad ex354 de procesamiento de señal de audio decodifica la señal de audio, y la unidad ex357 de salida de audio proporciona el audio.
Además, similarmente al televisor ex300, un terminal tal como el teléfono móvil ex114 probablemente tenga 3 tipos de configuraciones de implementación incluyendo no solo (i) un terminal de transmisión y recepción que incluye tanto un aparato de codificación como un aparato de decodificación, sino también (ii) un terminal de transmisión que incluye solo un aparato de codificación y (iii) un terminal de recepción que incluye solo un aparato de decodificación. Aunque el sistema ex200 de difusión digital recibe y transmite los datos multiplexados obtenidos mediante la multiplexación de datos de audio sobre datos de video en la descripción, los datos multiplexados pueden ser datos obtenidos mediante la multiplexación de datos que no son de audio sino datos de caracteres relacionados con el video sobre datos de video, y pueden no ser datos multiplexados sino datos de video en sí.
Como tal, el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento en cada una de las Realizaciones pueden ser usados en cualquiera de los dispositivos y sistemas descritos. Así, se pueden obtener las ventajas descritas en cada una de las Realizaciones.
Además, la presente invención no está limitada a las Realizaciones, y son posibles varias modificaciones y revisiones sin salirse del alcance de la presente invención.
(Realización 4)
Los datos de video pueden ser generados mediante la conmutación, según sea necesario, entre (i) el método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento mostrado en cada una de las Realizaciones y (ii) un método de codificación de imágenes en movimiento o un aparato de codificación
5
10
15
20
25
30
35
40
45
50
55
de imágenes en movimiento en conformidad con un estándar diferente, tal como MPEG-2, MPEG4-AVC, y VC-1.
Aquí, cuando se genera una pluralidad de datos de video conforme a los diferentes estándares y se decodifica a continuación, los métodos de decodificación necesitan ser seleccionados para ajustarse a los diferentes estándares. Sin embargo, dado que no se puede detectar con qué estándar de la pluralidad de los datos de video a ser decodificados, hay un problema de que no se pueda seleccionar un método de decodificación apropiado.
Para resolver el problema, los datos multiplexados obtenidos mediante la multiplexación de datos de audio y otros sobre datos de video tiene una estructura que incluye información de identificación que indica a qué estándar se ajustan los datos de video. En adelante se describirá la estructura específica de los datos multiplexados que incluyen los datos de video generados en el método de codificación de imágenes en movimiento y por el aparato de codificación de imágenes en movimiento mostrado en cada una de las Realizaciones. Los datos multiplexados es un flujo digital en el formato de Flujo de Transporte MPEG2.
La FIG. 18 ilustra una estructura de los datos multiplexados. Como se ilustra en la FIG. 18, los datos multiplexados se pueden obtener mediante la multiplexación de al menos uno entre un flujo de video, un flujo de audio, un flujo de gráficos de presentación (PG), y un flujo de gráficos interactivos. El flujo de video representa video primario y video secundario de una película, el flujo de audio (IG) representa una parte de audio primaria y una parte de audio secundaria a ser mezcladas con la parte de audio primaria, y el flujo de gráficos de representación representan subtítulos de la película. Aquí, el video primario es video normal a ser visualizado en una pantalla, y el video secundario es video a ser visualizado en una ventana más pequeña en el video primario. Además, el flujo de gráficos interactivo representa una pantalla interactiva a ser generada mediante la disposición de los componentes del GUI en una pantalla. El flujo de video es codificado en el método de codificación de imágenes en movimiento o mediante el aparato de codificación de imágenes en movimiento en cada una de las Realizaciones, o en un método de codificación de imágenes en movimiento o mediante un aparato de codificación de imágenes en movimiento en conformidad con un estándar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1. El flujo de audio está codificado según un estándar, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DtS-HD, y PCM lineal.
Cada flujo incluido en los datos multiplexados es identificado por PID. Por ejemplo, 0x1011 está asignado en el flujo de video a ser usado por el video de una película, 0x1100 a 0x111F están asignados a los flujos de audio, 0x1200 a 0x121F están asignados a los flujos de gráficos de presentación, 0x1400 a 0x141F están asignados a los flujos de gráficos interactivos, 0x1B00 a 0x1B1F están asignados a los flujos de video a ser usados por el video secundario de la película, y 0x1A00 a 0x1A1F están asignados a los flujos de audio a ser usados por el video secundario a ser mezclado con el audio primario.
La FIG. 19 ilustra esquemáticamente cómo cada flujo es multiplexado. Primero, un flujo ex235 de video compuesto de tramas de video y un flujo ex238 de audio compuesto de tramas de audio son transformados en un flujo de paquetes ex236 PES y un flujo de paquetes ex239 PES, y además en paquetes ex237 TS y paquetes ex240 TS, respectivamente. Similarmente, los datos del flujo ex241 de gráficos de presentación y datos de un flujo ex244 de gráficos interactivos son transformados en un flujo de paquetes ex242 PES y un flujo de paquetes ex245 PES, y además en paquetes ex243 TS y paquetes ex246 TS, respectivamente. Estos paquetes TS son multiplexados en un flujo para obtener datos ex247 multiplexados.
La FIG. 20 ilustra cómo un flujo de video es almacenado en un flujo de paquetes PES en más detalle. La primera barra en la FIG. 20 muestra un flujo de tramas de video en un flujo de video. La segunda barra muestra el flujo de paquetes PES. Como se indica por las flechas denotadas como yy1, yy2, yy3 y yy4 en la FIG. 20, el flujo de video es dividido en imágenes como imágenes I, imágenes B, e imágenes P cada una de las cuales es una unidad de presentación de video, y las imágenes son almacenadas en una carga de cada uno de los paquetes PES. Cada uno de los paquetes PES tiene una cabecera PES, y la cabecera PES almacena una Marca de Tiempo de Presentación (PTS) que indica un tiempo de visualización de la imagen, y una Marca de Tiempo de Decodificación (DTS) que indica un momento de decodificación de la imagen.
La FIG. 21 ilustra un formato de paquetes TS a ser finalmente escritos en los datos multiplexados. Cada uno de los paquetes TS es un paquete de longitud fija de 188 bytes que incluye una cabecera TS de 4 bytes que tiene información, tal como un PID para identificar un flujo y una carga de Ts de 184 bytes para almacenar datos. Los paquetes PES son divididos, y almacenados en las cargas TS, respectivamente. Cuando se usa una ROM BD, a cada uno de los paquetes TS se le da una Cabecera Extra TP de 4 bytes, resultando así en paquetes origen de 192 bytes. Los paquetes origen son escritos en los datos multiplexados. Las Cabeceras Extra TP almacenan información tal como una Marca de Tiempo de Llegada (ATS). La ATS muestra un momento de inicio de la transferencia en el cual cada uno de los paquetes TS ha de ser transferido a un filtro PID. Los paquetes origen son dispuestos en los datos multiplexados como se muestra en la parte inferior de la FIG. 21. Los números que aumentan desde la cabecera de los datos multiplexados son llamados números de paquetes origen (SPN).
Cada uno de los paquetes TS incluidos en los datos multiplexados incluye no solo flujos de audio, video, subtítulos y otros, sino también una Tabla Asociada del Programa (pAt), una Tabla de Correspondencia del Programa (PMT), y una Referencia de Reloj del Programa (PCR). La PAT muestra lo que un PID en una PMT usada en los datos multiplexados indica, y un PID de la PAT en sí es registrada a cero. La PMT almacena PIDs de los flujos de video,
5
10
15
20
25
30
35
40
45
50
55
60
audio, subtítulos y otros incluidos en los datos multiplexados, e información de atributos de los flujos correspondientes a los PIDs. La PMT también tiene varios descriptores relativos a los datos multiplexados. Los descriptores tienen información tal como información de control de copia que muestra si la copia de los datos multiplexados está permitida o no. La PCR almacena información de tiempo STC correspondiente a una ATS que muestra cuando el paquete PCR es transferido a un decodificador, para lograr la sincronización entre el Reloj de Tiempo de Llegada (ATC) que es un eje de tiempo de ATS, y un Reloj de Hora del Sistema (STC) que es un eje de tiempo de PTS y DTS.
La FIG. 22 ilustra la estructura de datos de una PMT en detalle. Una cabecera PMT es dispuesta en la parte superior de la PMT. La cabecera PMT describe la longitud de los datos incluidos en la PMT y otros. Una pluralidad de descriptores relativos a los datos multiplexados es dispuesta tras la cabecera PMT. Información tal como la información de control de copia es descrita en los descriptores. Tras los descriptores, se dispone una pluralidad de piezas de información de flujo relativos a los flujos incluidos en los datos multiplexados. Cada pieza de información de flujo incluye descriptores de flujo cada uno describiendo información, tal como un tipo de flujo para identificar un códec de compresión de un flujo, un PID del flujo, e información de atributos del flujo (tal como una tasa de trama o una relación de aspecto). Los descriptores de flujo son iguales en número al número de flujos en los datos multiplexados.
Cuando los datos multiplexados son grabados en un medio de grabación y otros, son grabados junto con archivos de información de datos multiplexados.
Cada uno de los archivos de información de datos multiplexados es información de gestión de los datos multiplexados como se muestra en la FIG. 23. Los archivos de información de datos multiplexados se corresponden uno a uno con los datos multiplexados, y cada uno de los archivos incluye información de datos multiplexados, información de atributos de flujo, y una correspondencia de entrada.
Como se ilustra en la FIG. 23, los datos multiplexados incluyen una tasa de sistema, un momento de inicio de reproducción, y un momento de fin de reproducción. La tasa de sistema indica la tasa de transferencia máxima en la cual un decodificador objetivo del sistema que será descrito más tarde transfiere los datos multiplexados a un filtro PID. Los intervalos de las ATS incluidas en los datos multiplexados son establecidas a no más altas que una tasa de sistema. El momento de inicio de reproducción indica un PTS en una trama de video en la cabecera de los datos multiplexados. Un intervalo de una trama es añadido a un PTS en una trama de video en el final de los datos multiplexados, y el PTS se establece al momento final de reproducción.
Como se muestra en la FIG. 24, una pieza de información de atributo es registrada en la información de atributo de flujo, para cada PID de cada flujo incluido en los datos multiplexados. Cada pieza de información de atributo tiene información diferente según si el flujo correspondiente es un flujo de video, un flujo de audio, un flujo de gráficos de representación, o un flujo de gráficos interactivos. Cada pieza de información de atributo de flujo de video porta información que incluye qué tipo de códec de compresión es usado para comprimir el flujo de video, y la resolución, relación de aspecto y tasa de trama de las piezas de datos de imágenes que son incluidas en el flujo de video. Cada pieza de información de atributo de flujo de audio porta información que incluye qué tipo de códec de compresión es usado para comprimir el flujo de audio, cuántos canales son incluidos en el flujo de audio, qué idioma soporta el flujo de audio, y cómo de alta es la frecuencia de muestreo. La información de atributo de flujo de video y la información de atributo de flujo de audio son usadas para inicializar un decodificador antes de que el reproductor reproduzca la información.
En la presente realización, los datos multiplexados a ser usados son de un tipo de flujo incluido en la PMT. Además, cuando los datos multiplexados son grabados en un medio de grabación, se usa la información de atributo del flujo de video incluida en la información de los datos multiplexados. Más específicamente, el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones incluyen un paso o una unidad para asignar información única que indique los datos de video generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las Realizaciones, al tipo de flujo incluido en la PMT o la información de atributo de flujo de video. Con la configuración, los datos de video generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones se pueden distinguir de datos de video que se ajustan a otro estándar.
Además, la FIG. 25 muestra pasos del método de decodificación de imágenes en movimiento según la presente realización. En el Paso exS100, el tipo de flujo incluido en la PMT o la información de atributo de flujo de video se obtiene desde los datos multiplexados. A continuación, en el Paso exS101, se determina si el tipo de flujo o la información de atributo de flujo de video indican o no que los datos multiplexados son generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las Realizaciones. Cuando se determina que el tipo de flujo o la información de atributo de flujo de video indican que los datos multiplexados son generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las Realizaciones, en el Paso exS102, se realiza la decodificación mediante el método de decodificación de imágenes en movimiento en cada una de las Realizaciones. Además, cuando el tipo de flujo o la información de atributo de flujo de video indican conformidad con los estándares
5
10
15
20
25
30
35
40
45
50
55
convencionales, tales como MPEG-2, MPEG4-AVC, y VC-1, en el Paso exS103, se realiza la decodificación mediante un método de decodificación de imágenes en movimiento en conformidad con los estándares convencionales.
Como tal, asignar un nuevo valor único al tipo de flujo o la información de atributo de flujo de video permite determinar si el método de decodificación de imágenes en movimiento o el aparato de decodificación de imágenes en movimiento que son descritos en cada una de las Realizaciones pueden realizar decodificación o no. Aun cuando los datos multiplexados se ajustan a un estándar diferente, se puede seleccionar un método o aparato de decodificación apropiado. Así, se vuelve posible decodificar información sin errores. Además, el método o aparato de codificación de imágenes en movimiento, o el método o aparato de decodificación de imágenes en movimiento en la presente realización se pueden usar en los dispositivos y sistemas descritos anteriormente.
(Realización 5)
Cada uno del método de codificación de imágenes en movimiento, el aparato de codificación de imágenes en movimiento, el método de decodificación de imágenes en movimiento, y el aparato de decodificación de imágenes en movimiento en cada una de las Realizaciones se consigue típicamente en la forma de un circuito integrado o un circuito Integrado a Gran Escala (LSI). Como un ejemplo del LSI, la FIG. 26 ilustra una configuración del LSI ex500 que está hecho en un chip. El LSI ex500 incluye los elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, y ex509 que serán descritos a continuación, y los elementos están conectados entre sí a través de un bus ex510. La unidad ex505 de circuito de alimentación es activada por el suministro a cada uno de los elementos cuando la unidad ex505 de circuito de alimentación se enciende.
Por ejemplo, cuando se realiza la codificación, el LSI ex500 recibe una señal AV desde un micrófono ex117, una cámara ex113, y otros a través de un AV IO ex509 bajo el control de una unidad ex501 de control que incluye una CPU ex502, un controlador ex503 de memoria, un controlador ex504 de flujo, y una unidad ex512 de control de frecuencia portadora. La señal AV recibida es almacenada temporalmente en una memoria ex511 externa tal como una SDRAM. Bajo el control de la unidad ex501 de control, los datos almacenados son segmentados en porciones de datos según la cantidad y velocidad de procesamiento a ser transmitidos a una unidad ex507 de procesamiento de señal. Entonces, la unidad ex507 de procesamiento de señal codifica una señal de audio y/o una señal de video. Aquí, la codificación de la señal de video es la codificación descrita en cada una de las Realizaciones. Además, la unidad ex507 de procesamiento de señal a veces multiplexa los datos de audio codificados y los datos de video codificados, y un flujo IO ex506 proporciona los datos multiplexados hacia afuera. Los datos multiplexados proporcionados son transmitidos a la estación base ex107, o escritos en el medio ex215 de grabación. Cuando los conjuntos de datos son multiplexados, los datos deberían ser almacenados temporalmente en la memoria intermedia ex508 para que los conjuntos de datos se sincronicen entre sí.
Aunque la memoria ex511 es un elemento fuera del LSI ex500, se puede incluir en el LSI ex500. La memoria intermedia ex508 no está limitada a una memoria intermedia, sino que puede estar compuesta de memorias intermedias. Además, el LSI ex500 puede estar hecho en un chip o una pluralidad de chips.
Además, aunque la unidad ex501 de control incluye la CPU ex502, el controlador ex503 de memoria, el controlador ex504 de flujo, la unidad ex512 de control de frecuencia portadora, la configuración de la unidad ex501 de control no está limitada a tales. Por ejemplo, la unidad ex507 de procesamiento de señal puede además incluir una CPU. La inclusión de otra CPU en la unidad ex507 de procesamiento de señal puede mejorar la velocidad de procesamiento. Además, como otro ejemplo, la CPU ex502 puede servir como o ser una parte de la unidad ex507 de procesamiento de señal, y, por ejemplo, puede incluir una unidad de procesamiento de señal de audio. En tal caso, la unidad ex501 de control incluye la unidad ex507 de procesamiento de señal o la CPU ex502 incluyendo una parte de la unidad ex507 de procesamiento de señal.
El nombre usado aquí es LSI, pero también puede llamarse IC, sistema LSI, super LSI, o ultra LSI dependiendo del grado de integración.
Además, los modos de conseguir la integración no están limitados al LSI, y un circuito especial o un procesador de propósito general etcétera pueden también conseguir la integración. La Matriz de Puertas Programables en Campo (FPGA) puede ser programada para permitir la reconfiguración de la conexión o se puede usar la configuración de un LSI para el mismo propósito.
En el futuro, con los adelantos en tecnología de semiconductores, una nueva tecnología puede reemplazar al LSI. Los bloques funcionales se pueden integrar usando tal tecnología. La posibilidad es que la presente invención sea aplicada en biotecnología.
(Realización 6)
Cuando los datos de video generados en el método de codificación de imágenes en movimiento o mediante el aparato de codificación de imágenes en movimiento descrito en cada una de las Realizaciones son decodificados, comparado con cuando los datos de video se ajustan a un estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1 son decodificados, la cantidad de procesamiento probablemente aumenta. Así, el LSI ex500 necesita ser
5
10
15
20
25
30
35
40
45
50
55
60
configurado a una frecuencia portadora más alta que la de la CPU ex502 para usarse cuando los datos de video son decodificados ajustándose a un estándar convencional. Sin embargo, cuando la frecuencia portadora se configura más alta, hay un problema de que el consumo de potencia aumenta.
Para solucionar el problema, el aparato de decodificación de imágenes en movimiento, tal como el televisor ex300 y el LSI ex500 son configurados para determinar a qué estándar se ajustan los datos de video, y conmutar entre las frecuencias portadoras según el estándar determinado. La FIG. 27 ilustra una configuración ex800 en la presente realización. Una unidad ex803 de conmutación de frecuencia portadora establece una frecuencia portadora a una frecuencia portadora más alta cuando los datos de video son generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones. Entonces, la unidad ex803 de conmutación de frecuencia portadora da instrucciones a una unidad ex801 de procesamiento de decodificación que ejecuta el método de decodificación de imágenes en movimiento descrito en cada una de las Realizaciones para decodificar los datos de video. Cuando los datos de video se ajustan al estándar convencional, la unidad ex803 de conmutación de frecuencia portadora establece una frecuencia portadora a una frecuencia portadora más baja que aquella de los datos de video generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones. Entonces, la unidad ex803 de conmutación de frecuencia portadora da instrucciones a la unidad ex802 de procesamiento de decodificación que se ajusta al estándar convencional para decodificar los datos de video.
Más específicamente, la unidad ex803 de conmutación de frecuencia portadora incluye la CPU ex502 y la unidad ex512 de control de frecuencia portadora en la FIG. 26. Aquí, cada una de la unidad ex801 de procesamiento de decodificación que ejecuta el método de decodificación de imágenes en movimiento descrito en cada una de las Realizaciones y la unidad ex802 de procesamiento de decodificación que se ajusta al estándar convencional se corresponden con la unidad ex507 de procesamiento de señal en la FIG. 26. La CPU ex502 determina a qué estándar se ajustan los datos de video. Entonces, la unidad ex512 de control de frecuencia portadora determina una frecuencia portadora basado en una señal de la CPU ex502. Además, la unidad ex507 de procesamiento de señal decodifica los datos de video basado en la señal de la CPU ex502. Por ejemplo, la información de identificación descrita en la Realización 4 es usada probablemente para identificar los datos de video. La información de identificación no está limitada a la descrita en la Realización 4 sino que puede ser cualquier información mientras que la información indique a qué estándar se ajustan los datos de video. Por ejemplo, cuando se puede determinar a qué estándar se ajustan los datos de video basándose en una señal externa para determinar que los datos de video son usados para un televisor o un disco, etc., la determinación puede hacerse basándose en tal señal externa. Además, la CPU ex502 selecciona una frecuencia portadora basándose en, por ejemplo, una tabla de búsqueda en la cual se asocian los estándares de los datos de video con las frecuencias portadoras como se muestra en la FIG. 29. La frecuencia portadora se puede seleccionar mediante el almacenamiento de la tabla de búsqueda en la memoria intermedia ex508 y en una memoria interna de un LSI, y con referencia a la tabla de búsqueda por la CPU ex502.
La FIG. 28 ilustra los pasos para ejecutar un método en la presente realización. Primero, en el Paso exS200, la unidad ex507 de procesamiento de señal obtiene información de identificación desde los datos multiplexados. A continuación, en el Paso exS201, la CPU ex502 determina si los datos de video son generados o no por el método de codificación y el aparato de codificación descritos en cada una de las Realizaciones, basándose en la información de identificación. Cuando se generan los datos de video mediante el método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones, en el Paso exS202, la CPU ex502 transmite una señal para establecer la frecuencia portadora a una frecuencia portadora más alta a la unidad ex512 de control de frecuencia portadora. Entonces, la unidad ex512 de control de frecuencia portadora establece la frecuencia portadora a la frecuencia portadora más alta. Por otro lado, cuando la información de identificación indica que los datos de video se ajustan al estándar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1, en el Paso exS203, la CPU ex502 transmite una señal para establecer la frecuencia portadora a una frecuencia portadora más baja a la unidad ex512 de control de frecuencia portadora. Entonces, la unidad ex512 de control de frecuencia portadora establece la frecuencia portadora a la frecuencia portadora más baja que en el caso donde los datos de video son generados por el método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones.
Además, junto con la conmutación de las frecuencias portadoras, el efecto de conservación de potencia se puede mejorar cambiando el voltaje a aplicar al LSI ex500 o a un aparato que incluye el LSI ex500. Por ejemplo, cuando la frecuencia portadora se establece más baja, el voltaje a aplicar al LSI ex500 o al aparato que incluye el LSI ex500 es probablemente establecido a un voltaje más bajo que en el caso donde la frecuencia portadora es establecida más alta.
Además, cuando la cantidad de procesamiento para decodificar es mayor, la frecuencia portadora puede establecerse más alta, y cuando la cantidad de procesamiento para decodificar es menor, la frecuencia portadora puede establecerse más baja como el método para establecer la frecuencia portadora. Así, el método de establecimiento no está limitado a los descritos anteriormente. Por ejemplo, cuando la cantidad de procesamiento para decodificar datos de video en conformidad con MPEG4-AVC es mayor que la cantidad de procesamiento para decodificar datos de video generados por el método de codificación de imágenes en movimiento y el aparato de
5
10
15
20
25
30
35
40
45
50
55
60
codificación de imágenes en movimiento descritos en cada una de las Realizaciones, la frecuencia portadora se establece probablemente en orden inverso a los establecimientos descritos anteriormente.
Además, el método para establecer la frecuencia portadora no está limitado al método para establecer la frecuencia portadora más baja. Por ejemplo, cuando la información de identificación indica que los datos de video son generados por el método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones, el voltaje a aplicar al LSI ex500 o el aparato que incluye el LSI ex500 es probablemente establecido más alto. Cuando la información de identificación indica que los datos de video se ajustan al estándar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1, el voltaje a ser aplicado al LSI ex500 o al aparato que incluye el LSI ex500 es establecido probablemente más bajo. Como otro ejemplo, cuando la información de identificación indica que los datos de video son generados por el método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones, la conducción de la CPU ex502 no es probable que tenga que ser suspendida. Cuando la información de identificación indica que los datos de video se ajustan al estándar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1, la conducción de la CPU ex502 es probablemente suspendida en un momento dado porque la CPU ex502 tiene capacidad de procesamiento extra. Aun cuando la información de identificación indica que los datos de video son generados por el método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Realizaciones, en el caso donde la CPU ex502 tiene capacidad de procesamiento extra, la conducción de la CPU ex502 es probablemente suspendida en un momento dado. En tal caso, el tiempo de suspensión es probablemente establecido más corto que aquel en el caso en que la información de identificación indica que los datos de video se ajustan al estándar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1.
En consecuencia, el efecto de conservación de potencia puede mejorarse mediante la conmutación entre las frecuencias portadoras según el estándar al cual se ajusten los datos de video. Además, cuando el LSI ex500 o el aparato que incluye el LSI ex500 son conducidos usando una batería, la vida de la batería puede extenderse con el efecto de conservación de potencia.
(Realización 7)
Hay casos donde una pluralidad de datos de video que se ajustan a diferentes estándares, son proporcionados a los dispositivos y sistemas, tal como un televisor y un teléfono móvil. Para permitir la decodificación de la pluralidad de datos de video que se ajustan a diferentes estándares, la unidad ex507 de procesamiento de señal del LSI ex500 necesita ajustarse a los diferentes estándares. Sin embargo, los problemas de aumentar la escala del circuito del LSI ex500 y aumentar el coste surgen con el uso individual de las unidades ex507 de procesamiento de señal que se ajustan a los estándares respectivos.
Para resolver el problema, lo que se concibe es una configuración en la cual la unidad de procesamiento de decodificación para implementar el método de decodificación de imágenes en movimiento descrito en cada una de las Realizaciones y la unidad de procesamiento de decodificación que se ajusta al estándar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1 son compartidas parcialmente. Ex900 en la FIG. 30A muestra un ejemplo de la configuración. Por ejemplo, el método de decodificación de imágenes en movimiento descrito en cada una de las Realizaciones y el método de decodificación de imágenes en movimiento que se ajusta a MPEG4-AVC tienen, parcialmente en común, los detalles del procesamiento, tal como codificación de entropía, cuantificación inversa, filtrado de desbloqueo, y predicción de compensación de movimiento. Los detalles del procesamiento a ser compartidos probablemente incluyen el uso de una unidad ex902 de procesamiento de decodificación que se ajusta a MPEG4-AVC. En contraste, una unidad ex901 de procesamiento de decodificación dedicada es usada probablemente para otros procesamientos únicos a la presente invención. Dado que la presente invención está caracterizada por procesamiento de predicción intra en particular, por ejemplo, la unidad ex901 de procesamiento de decodificación dedicada se usa para el procesamiento de predicción intra. De otra manera, la unidad de procesamiento de decodificación es compartida probablemente por uno entre codificación de entropía, cuantificación inversa, filtrado de desbloqueo, y compensación de movimiento, u otros los procesamientos. La unidad de procesamiento de decodificación para implementar el método de decodificación de imágenes en movimiento descrito en cada una de las Realizaciones puede compartirse para compartir el procesamiento, y una unidad de procesamiento de decodificación dedicada puede usarse para procesar únicamente la del MPEG4-AVC.
Además, ex1000 en la FIG. 30B muestra otro ejemplo en el que el procesamiento es parcialmente compartido. Este ejemplo usa una configuración que incluye una unidad ex1001 de procesamiento de decodificación dedicada que soporta el procesamiento único a la presente invención, una unidad ex1002 de procesamiento de decodificación dedicada que soporta el procesamiento único a otra estándar convencional, y una unidad ex1003 de procesamiento de decodificación que soporta el procesamiento compartido entre el método de decodificación de imágenes en movimiento en la presente invención y el método de decodificación de imágenes en movimiento convencional. Aquí, las unidades ex1001 y ex1002 de procesamiento de decodificación no están necesariamente especializadas para el procesamiento de la presente invención y el procesamiento de los estándares convencionales, respectivamente, y pueden ser las capaces de implementar procesamiento general. Además, la configuración de la presente realización puede implementarse mediante el LSI ex500.
5
10
15
20
25
30
35
40
Como tal, reducir la escala del circuito del LSI y reducir el coste es posible compartiendo la unidad de procesamiento de decodificación para el procesamiento a ser compartido entre el método de decodificación de imágenes en movimiento en la presente invención y el método de decodificación de imágenes en movimiento en conformidad con el estándar convencional.
rAplicabilidad Industrial]
El método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento según la presente descripción son capaces de ser aplicados a cualquier dato multimedia y mejorar una tasa de compresión. Por ejemplo, son adecuados como el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento para acumulación, transmisión, comunicaciones, y similares usando teléfonos móviles, aparatos de DVD, ordenadores personales, y similares.
[Lista de Signos de Referencia]
100 aparato de codificación de imágenes en movimiento
101 unidad de transformación ortogonal
102 unidad de cuantificación
103 unida de cuantificación inversa
104 unidad de transformación ortogonal inversa
105 memoria de bloques
106 memoria de tramas
107 unidad de predicción intra
108 unidad de predicción entre
109 unidad de control de predicción entre
110 unidad de determinación de tipo de imagen
111 unidad de cálculo de candidatos de bloques de fusión
112 memoria de coIPic
113 unidad de decodificación de longitud variable
114 sustractor
115 sumador
116 unidad de conmutación
200 aparato de decodificación de imagen en movimiento
201 unidad de decodificación de longitud variable
202 unidad de cuantificación inversa
203 unidad de transformación ortogonal inversa
204 memoria de bloques
205 memoria de tramas
206 unidad de predicción intra
207 unidad de predicción entre
208 unidad de control de predicción entre
209 unidad de cálculo de candidatos de bloque de fusión
210 memoria de colPic
211 sumador
212 conmutador

Claims (4)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    REIVINDICACIONES
    1. Un procedimiento de codificación de imágenes en movimiento para codificar un bloque actual, comprendiendo:
    determinar un primer candidato de bloque de fusión en una lista de candidatos de bloques de fusión y un segundo candidato de bloque de fusión en la lista de candidatos de bloques de fusión, teniendo el primer candidato de bloque de fusión al menos (i) un primer vector de movimiento que ha sido usado para codificar un primer bloque vecino al bloque actual, (ii) una primera dirección de predicción correspondiente al primer vector de movimiento, y (iii) un primer valor del índice de imagen de referencia para identificar una primera imagen de referencia correspondiente con el primer vector de movimiento, y teniendo el segundo candidato de bloque de fusión al menos (i) un segundo vector de movimiento que ha sido usado para codificar un segundo bloque vecino al bloque actual y diferente del primer bloque, (ii) una segunda dirección de predicción correspondiente al segundo vector de movimiento, y (iii) un segundo valor del índice de imagen de referencia para identificar una segunda imagen de referencia correspondiente con el segundo vector de movimiento, en el que la segunda dirección de predicción es diferente de la primera dirección de predicción y la lista de candidatos de bloques de fusión incluye una pluralidad de candidatos de bloques de fusión uno de los cuales es seleccionado para ser usado para codificar el bloque actual; y
    generar un candidato de bloque de fusión combinado de predicción bidireccional mediante la asignación del primer vector de movimiento y el primer índice de imagen de referencia para la primera dirección de predicción del candidato de bloque de fusión combinado y mediante la asignación del segundo vector de movimiento y el segundo índice de imagen de referencia para la segunda dirección de predicción del candidato de bloque de fusión combinado; y
    codificar el bloque actual mediante el uso de un candidato de bloque de fusión seleccionado entre la pluralidad de candidatos de bloques de fusión incluyendo el primer candidato de bloque de fusión, el segundo candidato de bloque de fusión, y el candidato de bloque de fusión combinado.
  2. 2. El procedimiento de codificación de imágenes en movimiento según la Reivindicación 1,
    en el que, cuando el candidato de bloque de fusión que es seleccionado para ser usado para codificar el bloque actual es el candidato de bloque de fusión combinado, el candidato de bloque de fusión combinado es usado para la primera dirección de predicción y la segunda dirección de predicción.
  3. 3. El procedimiento de codificación de imágenes en movimiento según la Reivindicación 1, en el que, cuando el candidato de bloque de fusión que es seleccionado para ser usado para codificar el bloque actual es el candidato de bloque de fusión combinado, el primer vector de movimiento y el segundo vector de movimiento del candidato de bloque de fusión combinado son usados para una dirección correspondiente con la primera dirección de predicción y una dirección correspondiente con la segunda dirección de predicción.
  4. 4. Un aparato de codificación de imágenes en movimiento que codifica un bloque actual, comprendiendo:
    una unidad de determinación configurada para determinar un primer candidato de bloque de fusión en una lista de candidatos de bloques de fusión y un segundo candidato de bloque de fusión en la lista de candidatos de bloques de fusión, teniendo el primer candidato de bloque de fusión al menos (i) un primer vector de movimiento que ha sido usado para codificar un primer bloque vecino al bloque actual, (ii) una primera dirección de predicción correspondiente al primer vector de movimiento, y (iii) un primer valor del índice de imagen de referencia para identificar una primera imagen de referencia correspondiente con el primer vector de movimiento, y teniendo el segundo candidato de bloque de fusión al menos (i) un segundo vector de movimiento que ha sido usado para codificar un segundo bloque vecino al bloque actual y diferente del primer bloque, (ii) una segunda dirección de predicción correspondiente al segundo vector de movimiento, y (iii) un segundo valor del índice de imagen de referencia para identificar una segunda imagen de referencia correspondiente con el segundo vector de movimiento, en donde la segunda dirección de predicción es diferente de la primera dirección de predicción y la lista de candidatos de bloques de fusión incluye una pluralidad de candidatos de bloques de fusión uno de los cuales es seleccionado para ser usado para codificar el bloque actual;
    una unidad de generación configurada para generar un candidato de bloque de fusión combinado de predicción bidireccional mediante la asignación del primer vector de movimiento y el primer índice de imagen de referencia para la primera dirección de predicción del nuevo candidato de bloque de fusión y mediante la asignación del segundo vector de movimiento y el segundo índice de imagen de referencia para la segunda dirección de predicción del nuevo candidato de bloque de fusión; y
    una unidad de decodificación configurada para codificar el bloque actual mediante el uso de un candidato de bloque de fusión seleccionado entre la pluralidad de candidatos de bloques de fusión incluyendo el primer candidato de bloque de fusión, el segundo candidato de bloque de fusión, y el candidato de bloque de fusión combinado.
ES16193061.5T 2011-04-12 2012-02-28 Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento Active ES2685945T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161474507P 2011-04-12 2011-04-12
US201161474507P 2011-04-12

Publications (1)

Publication Number Publication Date
ES2685945T3 true ES2685945T3 (es) 2018-10-15

Family

ID=47006367

Family Applications (2)

Application Number Title Priority Date Filing Date
ES12771702.3T Active ES2621231T3 (es) 2011-04-12 2012-02-28 Método de codificación de video de movimiento, aparato de codificación de video de movimiento, método de decodificación de video de movimiento, aparato de decodificación de video de movimiento y aparato de codificación/decodificación de video de movimiento
ES16193061.5T Active ES2685945T3 (es) 2011-04-12 2012-02-28 Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES12771702.3T Active ES2621231T3 (es) 2011-04-12 2012-02-28 Método de codificación de video de movimiento, aparato de codificación de video de movimiento, método de decodificación de video de movimiento, aparato de decodificación de video de movimiento y aparato de codificación/decodificación de video de movimiento

Country Status (15)

Country Link
US (11) US8982953B2 (es)
EP (2) EP3136727B1 (es)
JP (2) JP5837575B2 (es)
KR (1) KR101935620B1 (es)
CN (1) CN103444181B (es)
AR (1) AR085995A1 (es)
BR (1) BR112013023478B8 (es)
CA (1) CA2830036C (es)
ES (2) ES2621231T3 (es)
MX (1) MX2013010231A (es)
PL (2) PL3136727T3 (es)
RU (2) RU2600936C2 (es)
SA (1) SA112330447B1 (es)
TW (1) TWI547148B (es)
WO (1) WO2012140821A1 (es)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9066110B2 (en) 2011-03-08 2015-06-23 Texas Instruments Incorporated Parsing friendly and error resilient merge flag coding in video coding
US9648334B2 (en) * 2011-03-21 2017-05-09 Qualcomm Incorporated Bi-predictive merge mode based on uni-predictive neighbors in video coding
MX2013010231A (es) 2011-04-12 2013-10-25 Panasonic Corp Metodo de codificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de decodificacion de imagenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento.
US9247266B2 (en) * 2011-04-18 2016-01-26 Texas Instruments Incorporated Temporal motion data candidate derivation in video coding
CN103503450B (zh) 2011-05-24 2017-07-07 太阳专利托管公司 图像编码方法、图像编码装置、图像解码方法、图像解码装置及图像编解码装置
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
CA2834123C (en) 2011-05-27 2020-02-11 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
CN103548351B (zh) 2011-05-31 2017-07-11 太阳专利托管公司 运动图像解码方法及运动图像解码装置
US9866859B2 (en) * 2011-06-14 2018-01-09 Texas Instruments Incorporated Inter-prediction candidate index coding independent of inter-prediction candidate list construction in video coding
JP5886950B2 (ja) * 2011-06-14 2016-03-16 サムスン エレクトロニクス カンパニー リミテッド 動き情報の符号化方法及びその装置、その復号化方法及びその装置
US9313494B2 (en) * 2011-06-20 2016-04-12 Qualcomm Incorporated Parallelization friendly merge candidates for video coding
JP5678924B2 (ja) * 2011-06-30 2015-03-04 株式会社Jvcケンウッド 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
CN105430390B (zh) 2011-06-30 2017-04-12 Jvc建伍株式会社 图像解码装置、图像解码方法、接收装置及接收方法
JP5807621B2 (ja) * 2011-06-30 2015-11-10 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法および送信プログラム
PL2728878T3 (pl) 2011-06-30 2020-06-15 Sun Patent Trust Sposób dekodowania obrazów, sposób kodowania obrazów, urządzenie do dekodowania obrazów, urządzenie do kodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów
WO2013009104A2 (ko) 2011-07-12 2013-01-17 한국전자통신연구원 인터 예측 방법 및 그 장치
IN2014CN00729A (es) 2011-08-03 2015-04-03 Panasonic Corp
CN107295347B (zh) * 2011-08-29 2020-06-26 苗太平洋控股有限公司 用于解码合并模式下的运动信息的装置
CN107592528B (zh) 2011-09-09 2020-05-12 株式会社Kt 用于解码视频信号的方法
CN108881903B (zh) 2011-10-19 2022-01-04 太阳专利托管公司 图像编码方法及装置、图像解码方法及装置、编解码装置
US9992511B2 (en) * 2011-10-21 2018-06-05 Nokia Technologies Oy Method for video coding and an apparatus
US9571833B2 (en) * 2011-11-04 2017-02-14 Nokia Technologies Oy Method for coding and an apparatus
KR20130050403A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
KR20130050406A (ko) * 2011-11-07 2013-05-16 오수미 머지 모드에서의 움직임 정보 생성 방법
KR101934277B1 (ko) * 2011-11-28 2019-01-04 에스케이텔레콤 주식회사 개선된 머지를 이용한 영상 부호화/복호화 방법 및 장치
JP2015128252A (ja) * 2013-12-27 2015-07-09 日本電信電話株式会社 予測画像生成方法、予測画像生成装置、予測画像生成プログラム及び記録媒体
US10531116B2 (en) * 2014-01-09 2020-01-07 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
JP6467787B2 (ja) * 2014-05-27 2019-02-13 株式会社リコー 画像処理システム、撮像装置、画像処理方法およびプログラム
US10412387B2 (en) * 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
US9918105B2 (en) 2014-10-07 2018-03-13 Qualcomm Incorporated Intra BC and inter unification
KR102349788B1 (ko) * 2015-01-13 2022-01-11 인텔렉추얼디스커버리 주식회사 영상의 부호화/복호화 방법 및 장치
EP3654646A1 (en) * 2015-06-05 2020-05-20 Intellectual Discovery Co., Ltd. Methods for encoding and decoding intra-frame prediction based on block shape
US10812822B2 (en) * 2015-10-02 2020-10-20 Qualcomm Incorporated Intra block copy merge mode and padding of unavailable IBC reference region
CN114501006A (zh) 2016-09-20 2022-05-13 株式会社Kt 视频解码方法、视频编码方法和比特流解码装置
KR20180057789A (ko) * 2016-11-22 2018-05-31 광운대학교 산학협력단 전방향 카메라에서 효과적인 차분 움직임 백터 전송방법을 이용한 비디오 코딩 방법 및 방법 및 장치
WO2018097692A2 (ko) * 2016-11-28 2018-05-31 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN116320475A (zh) * 2016-12-22 2023-06-23 株式会社Kt 对视频进行解码或编码的方法和发送视频数据的方法
EP3571839B1 (en) 2017-02-06 2020-10-28 Huawei Technologies Co., Ltd. Video encoder and decoder for predictive partitioning
US10904565B2 (en) * 2017-06-23 2021-01-26 Qualcomm Incorporated Memory-bandwidth-efficient design for bi-directional optical flow (BIO)
JP6918661B2 (ja) * 2017-09-22 2021-08-11 キヤノン株式会社 符号化装置、符号化方法及びプログラム
US11070797B2 (en) * 2017-11-27 2021-07-20 Lg Electronics Inc. Image decoding method and apparatus based on inter prediction in image coding system
EP3777173A1 (en) * 2018-04-06 2021-02-17 ARRIS Enterprises LLC Reducing motion vector information transmission in bi-directional temporal prediction
US11477474B2 (en) * 2018-06-08 2022-10-18 Mediatek Inc. Methods and apparatus for multi-hypothesis mode reference and constraints
GB202307657D0 (en) * 2018-06-08 2023-07-05 Kt Corp Method and apparatus for processing a video signal
JP7459069B2 (ja) 2018-09-21 2024-04-01 オッポ広東移動通信有限公司 映像信号符号化/復号化方法及びその装置
BR112021008298A2 (pt) 2018-11-08 2021-08-03 Guangdong Oppo Mobile Telecommunications Corp., Ltd. método de decodificação de vídeo, método de codificação de vídeo, aparelho de decodificação de vídeo e codificador de vídeo
MX2021005271A (es) * 2018-11-08 2021-06-18 Guangdong Oppo Mobile Telecommunications Corp Ltd Metodo de codificacion/decodificacion de se?ales de imagen y el aparato para el mismo.
EP3869800B1 (en) 2018-11-08 2023-12-27 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for encoding/decoding image signal and device therefor
US10827171B2 (en) * 2018-11-14 2020-11-03 Tencent America LLC Method and apparatus for video coding
US11234007B2 (en) * 2019-01-05 2022-01-25 Tencent America LLC Method and apparatus for video coding
WO2020184461A1 (ja) * 2019-03-08 2020-09-17 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
EP3915254B1 (en) * 2019-03-12 2023-10-11 Beijing Dajia Internet Information Technology Co., Ltd. Video coding for geometric inter partition prediction
KR20210153738A (ko) 2019-06-14 2021-12-17 엘지전자 주식회사 예측 샘플을 생성하기 위한 가중치 인덱스 정보를 도출하는 영상 디코딩 방법 및 그 장치
KR20230022061A (ko) * 2021-08-06 2023-02-14 삼성전자주식회사 디코딩 장치 및 그의 동작 방법

Family Cites Families (152)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3883701T2 (de) 1987-10-30 1994-02-10 Nippon Telegraph & Telephone Verfahren und Vorrichtung für multiplexierte Vektorquantifizierung.
US5403479A (en) 1993-12-20 1995-04-04 Zenon Environmental Inc. In situ cleaning system for fouled membranes
FR2725577B1 (fr) 1994-10-10 1996-11-29 Thomson Consumer Electronics Procede de codage ou de decodage de vecteurs mouvement et dispositif de codage ou de decodage mettant en oeuvre ledit procede
TW330976B (en) 1995-12-18 1998-05-01 Lg Electronics Inc Constant temperature dehumidifying device for air regulator and control method thereof
US5995080A (en) 1996-06-21 1999-11-30 Digital Equipment Corporation Method and apparatus for interleaving and de-interleaving YUV pixel data
JP3263807B2 (ja) 1996-09-09 2002-03-11 ソニー株式会社 画像符号化装置および画像符号化方法
US6148026A (en) 1997-01-08 2000-11-14 At&T Corp. Mesh node coding to enable object based functionalities within a motion compensated transform video coder
JPH10224800A (ja) 1997-02-07 1998-08-21 Matsushita Electric Ind Co Ltd 動きベクトル符号化方法および復号化方法
JP2000011455A (ja) 1998-06-29 2000-01-14 Hitachi Ltd 光情報記録媒体
JP4004653B2 (ja) 1998-08-03 2007-11-07 カスタム・テクノロジー株式会社 動きベクトル検出方法および装置、記録媒体
US6192148B1 (en) 1998-11-05 2001-02-20 Winbond Electronics Corp. Method for determining to skip macroblocks in encoding video
US6192080B1 (en) 1998-12-04 2001-02-20 Mitsubishi Electric Research Laboratories, Inc. Motion compensated digital video signal processing
US6594313B1 (en) 1998-12-23 2003-07-15 Intel Corporation Increased video playback framerate in low bit-rate video applications
JP4487374B2 (ja) 1999-06-01 2010-06-23 ソニー株式会社 符号化装置及び符号化方法並びに多重化装置及び多重化方法
US6842483B1 (en) 2000-09-11 2005-01-11 The Hong Kong University Of Science And Technology Device, method and digital video encoder for block-matching motion estimation
JP2002152750A (ja) 2000-11-10 2002-05-24 Matsushita Electric Ind Co Ltd 動きベクトル検出方法および装置
AU2002343215C1 (en) 2001-11-06 2009-01-22 Panasonic Intellectual Property Corporation Of America Moving picture coding method, and moving picture decoding method
JP4015934B2 (ja) 2002-04-18 2007-11-28 株式会社東芝 動画像符号化方法及び装置
JP2004088722A (ja) 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
CN1277419C (zh) * 2002-04-19 2006-09-27 松下电器产业株式会社 运动矢量的计算方法
EP3054681B1 (en) 2002-04-19 2018-02-28 Panasonic Intellectual Property Corporation of America Motion vector calculating method
TWI259726B (en) 2002-04-19 2006-08-01 Matsushita Electric Ind Co Ltd Motion vector derivation method
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
EP1427216A1 (en) 2002-07-02 2004-06-09 Matsushita Electric Industrial Co., Ltd. Image encoding method and image decoding method
US8406301B2 (en) 2002-07-15 2013-03-26 Thomson Licensing Adaptive weighting of reference pictures in video encoding
US7372905B2 (en) 2002-07-11 2008-05-13 Matsushita Electric Industrial Co., Ltd. Filtering intensity decision method, moving picture encoding method, and moving picture decoding method
CN101039427B (zh) 2002-07-15 2010-06-16 株式会社日立制作所 动态图像的解码方法
US7154952B2 (en) 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
US7023921B2 (en) 2002-08-06 2006-04-04 Motorola, Inc. Method and apparatus for determining block match quality
KR100976017B1 (ko) 2002-08-08 2010-08-17 파나소닉 주식회사 동화상의 부호화 방법 및 복호화 방법
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
ES2729258T3 (es) * 2002-11-01 2019-10-31 Godo Kaisha Ip Bridge 1 Cálculo del vector de movimiento en modo directo evitando divisiones por cero
EP1909505B1 (en) 2002-11-25 2013-06-19 Panasonic Corporation Motion compensation method, picture coding method and picture decoding method
KR100711635B1 (ko) 2003-02-18 2007-04-25 노키아 코포레이션 화상 부호화 방법
KR100693669B1 (ko) 2003-03-03 2007-03-09 엘지전자 주식회사 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법
US7266147B2 (en) 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
JP2007531345A (ja) 2003-07-15 2007-11-01 トムソン ライセンシング 高速サーチ・ブロック・マッチングを用いた動き推定
US7426308B2 (en) 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
KR100579542B1 (ko) 2003-07-29 2006-05-15 삼성전자주식회사 블럭 간의 상관성을 고려한 움직임 추정 장치 및 방법
CN100469142C (zh) 2003-08-05 2009-03-11 Nxp股份有限公司 视频编码和解码方法以及相应的设备
US8064520B2 (en) 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
CN1225127C (zh) * 2003-09-12 2005-10-26 中国科学院计算技术研究所 一种用于视频编码的编码端/解码端双向预测方法
FR2860678A1 (fr) * 2003-10-01 2005-04-08 Thomson Licensing Sa Procede de codage differentiel
GB2407006A (en) 2003-10-08 2005-04-13 Sony Uk Ltd Communicating streamed payload data and packet based auxiliary data
JP3675464B2 (ja) 2003-10-29 2005-07-27 ソニー株式会社 動画像符号化装置および動画像符号化制御方法
TWI330976B (en) 2003-12-05 2010-09-21 Trident Microsystems Far East Method and apparatus for encoding/decoding dynamic graphic content
US7301482B1 (en) 2003-12-12 2007-11-27 Marvell International Ltd. Circuits, architectures, systems, methods, algorithms and software for conditional modulation coding
JP2005184042A (ja) 2003-12-15 2005-07-07 Sony Corp 画像復号装置及び画像復号方法並びに画像復号プログラム
KR100608050B1 (ko) 2004-01-14 2006-08-02 삼성전자주식회사 사용자의 요구에 의해 활성화되는 인터랙티브 그래픽스트림을 저장한 저장 매체, 재생 장치 및 그 재생 방법
US8190003B2 (en) 2004-01-14 2012-05-29 Samsung Electronics Co., Ltd. Storage medium storing interactive graphics stream activated in response to user's command, and reproducing apparatus for reproducing from the same
EP1583367A1 (en) 2004-03-30 2005-10-05 Matsushita Electric Industrial Co., Ltd. Motion estimation employing line and column vectors
DE602004030993D1 (de) 2004-04-30 2011-02-24 Panasonic Corp Bewegungsschätzung unter Verwendung von adaptiven räumlichen Verfeinerungsvektoren
JP4145275B2 (ja) 2004-07-27 2008-09-03 富士通株式会社 動きベクトル検出・補償装置
TWI250423B (en) 2004-07-30 2006-03-01 Ind Tech Res Inst Method for processing video images
TWI268715B (en) 2004-08-16 2006-12-11 Nippon Telegraph & Telephone Picture encoding method, picture decoding method, picture encoding apparatus, and picture decoding apparatus
EP1638333A1 (en) 2004-09-17 2006-03-22 Mitsubishi Electric Information Technology Centre Europe B.V. Rate adaptive video coding
JP4375305B2 (ja) 2004-10-26 2009-12-02 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4148228B2 (ja) 2005-02-10 2008-09-10 ソニー株式会社 画像記録装置、画像再生制御装置、画像記録再生制御装置、これらの装置の処理方法およびその方法をコンピュータに実行させるプログラム
US7660354B2 (en) 2005-05-11 2010-02-09 Fang Shi Temporal error concealment for bi-directionally predicted frames
US8761258B2 (en) 2005-06-17 2014-06-24 The Hong Kong University Of Science And Technology Enhanced block-based motion estimation algorithms for video compression
US9661376B2 (en) 2005-07-13 2017-05-23 Polycom, Inc. Video error concealment method
EP1753242A2 (en) 2005-07-18 2007-02-14 Matsushita Electric Industrial Co., Ltd. Switchable mode and prediction information coding
US7697783B2 (en) 2005-07-26 2010-04-13 Sony Corporation Coding device, coding method, decoding device, decoding method, and programs of same
US20070025444A1 (en) 2005-07-28 2007-02-01 Shigeyuki Okada Coding Method
JP4401336B2 (ja) 2005-08-31 2010-01-20 三洋電機株式会社 符号化方法
JP2008011455A (ja) 2006-06-30 2008-01-17 Sanyo Electric Co Ltd 符号化方法
JP4570532B2 (ja) 2005-08-02 2010-10-27 パナソニック株式会社 動き検出装置、動き検出方法、集積回路およびプログラム
US20070030894A1 (en) 2005-08-03 2007-02-08 Nokia Corporation Method, device, and module for improved encoding mode control in video encoding
JP2007142637A (ja) 2005-11-16 2007-06-07 Matsushita Electric Ind Co Ltd 画像情報符号化装置
EP1980112B1 (en) 2006-02-02 2012-10-24 Thomson Licensing Method and apparatus for adaptive weight selection for motion compensated prediction
BRPI0706803A2 (pt) 2006-02-02 2011-04-05 Thomson Licensing método e aparelho para estimativa de animação usando bi-predição de referências combinadas
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
JP4757080B2 (ja) 2006-04-03 2011-08-24 パナソニック株式会社 動き検出装置、動き検出方法、動き検出集積回路および画像符号化装置
WO2007124491A2 (en) 2006-04-21 2007-11-01 Dilithium Networks Pty Ltd. Method and system for video encoding and transcoding
CN101090491B (zh) 2006-06-16 2016-05-18 香港科技大学 用于视频压缩的增强的基于块的运动估计算法
WO2007148906A1 (en) 2006-06-19 2007-12-27 Lg Electronics, Inc. Method and apparatus for processing a vedeo signal
KR20070120416A (ko) 2006-06-19 2007-12-24 엘지전자 주식회사 비디오 신호 디코딩 방법 및 장치, 비디오 신호 인코딩방법 및 장치
DE102006043707A1 (de) 2006-09-18 2008-03-27 Robert Bosch Gmbh Verfahren zur Datenkompression in einer Videosequenz
US8250618B2 (en) 2006-09-18 2012-08-21 Elemental Technologies, Inc. Real-time network adaptive digital video encoding/decoding
US8213509B2 (en) 2006-10-06 2012-07-03 Calos Fund Limited Liability Company Video coding on parallel processing systems
US8565314B2 (en) 2006-10-12 2013-10-22 Qualcomm Incorporated Variable length coding table selection based on block type statistics for refinement coefficient coding
US9319700B2 (en) 2006-10-12 2016-04-19 Qualcomm Incorporated Refinement coefficient coding based on history of corresponding transform coefficient values
US8325819B2 (en) 2006-10-12 2012-12-04 Qualcomm Incorporated Variable length coding table selection based on video block type for refinement coefficient coding
US8599926B2 (en) 2006-10-12 2013-12-03 Qualcomm Incorporated Combined run-length coding of refinement and significant coefficients in scalable video coding enhancement layers
US8355438B2 (en) 2006-10-30 2013-01-15 Nippon Telegraph And Telephone Corporation Predicted reference information generating method, video encoding and decoding methods, apparatuses therefor, programs therefor, and storage media which store the programs
JP2008199587A (ja) 2007-01-18 2008-08-28 Matsushita Electric Ind Co Ltd 画像符号化装置、画像復号化装置および方法
JP5025286B2 (ja) 2007-02-28 2012-09-12 シャープ株式会社 符号化装置及び復号装置
TW200845758A (en) 2007-05-03 2008-11-16 Nat Univ Chung Cheng Fast intra coding algorithms for dynamic definition adjustment
KR101403341B1 (ko) 2007-03-28 2014-06-09 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
CN101682769B (zh) 2007-04-12 2016-11-09 汤姆森特许公司 用于视频编码和解码的跳过-直接模式的取决于环境的合并的方法和装置
EP2141930A4 (en) 2007-04-26 2011-03-23 Panasonic Corp MOTION DETECTION APPARATUS, MOTION DETECTION METHOD, AND MOTION DETECTION PROGRAM
JP2008283490A (ja) 2007-05-10 2008-11-20 Ntt Docomo Inc 動画像符号化装置、方法及びプログラム、並びに動画像復号化装置、方法及びプログラム
CN101682763B (zh) 2007-06-12 2013-09-11 汤姆森许可贸易公司 支持针对片数据的多通路视频语法结构的方法和设备
KR101495886B1 (ko) 2007-07-19 2015-02-26 한국전자통신연구원 하향링크 프레임 생성 방법 및 셀 탐색 방법
KR102313863B1 (ko) * 2007-10-16 2021-10-15 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR101228020B1 (ko) 2007-12-05 2013-01-30 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
CN101198064A (zh) * 2007-12-10 2008-06-11 武汉大学 一种分辨率分层技术中的运动矢量预测方法
KR20090095012A (ko) * 2008-03-04 2009-09-09 삼성전자주식회사 연속적인 움직임 추정을 이용한 영상 부호화, 복호화 방법및 장치
WO2009115901A2 (en) 2008-03-19 2009-09-24 Nokia Corporation Combined motion vector and reference index prediction for video coding
CN102067601B (zh) 2008-04-11 2014-03-12 汤姆森特许公司 视频编码和解码中模板匹配预测(tmp)的方法和装置
PL2288163T3 (pl) 2008-05-07 2015-11-30 Lg Electronics Inc Sposób i urządzenie do dekodowania sygnału wideo
PT104083A (pt) 2008-06-02 2009-12-02 Inst Politecnico De Leiria Método para transcodificar imagens de vídeo h.264/avc em mpeg-2
CN102308580B (zh) 2009-02-05 2016-05-04 汤姆森特许公司 用于自适应模式视频编码和解码的方法和装置
CN102883160B (zh) * 2009-06-26 2016-06-29 华为技术有限公司 视频图像运动信息获取方法、装置及设备、模板构造方法
KR101452859B1 (ko) 2009-08-13 2014-10-23 삼성전자주식회사 움직임 벡터를 부호화 및 복호화하는 방법 및 장치
US9060176B2 (en) 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
WO2011046008A1 (ja) 2009-10-16 2011-04-21 シャープ株式会社 動画像符号化装置、および、動画像復号装置
TWI566586B (zh) 2009-10-20 2017-01-11 湯姆生特許公司 一序列形象的現時區塊之寫碼方法和重建方法
KR101459714B1 (ko) 2009-10-28 2014-11-13 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101441905B1 (ko) 2009-11-18 2014-09-24 에스케이텔레콤 주식회사 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
JPWO2011061880A1 (ja) 2009-11-19 2013-04-04 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
KR101807170B1 (ko) 2009-11-24 2017-12-08 에스케이 텔레콤주식회사 적응적 2차예측 기반 영상 부호화/복호화 방법, 장치 및 기록 매체
WO2011064673A1 (en) 2009-11-30 2011-06-03 France Telecom Method of and apparatus for encoding video frames, method of and apparatus for decoding video frames
CN101860754B (zh) 2009-12-16 2013-11-13 香港应用科技研究院有限公司 运动矢量编码和解码的方法和装置
US9036692B2 (en) 2010-01-18 2015-05-19 Mediatek Inc. Motion prediction method
WO2011095259A1 (en) 2010-02-05 2011-08-11 Telefonaktiebolaget L M Ericsson (Publ) Selecting predicted motion vector candidates
KR20120129944A (ko) 2010-02-10 2012-11-28 엘지전자 주식회사 비디오 신호의 처리 방법 및 장치
US8995527B2 (en) * 2010-02-19 2015-03-31 Qualcomm Incorporated Block type signalling in video coding
CN102439978A (zh) 2010-03-12 2012-05-02 联发科技(新加坡)私人有限公司 运动预测方法
CN102210910B (zh) 2010-04-02 2013-02-13 重庆融海超声医学工程研究中心有限公司 一种超声换能器
KR101752418B1 (ko) 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
CN104811737B (zh) 2010-05-04 2018-06-15 Lg电子株式会社 处理视频信号的方法和设备
US9124898B2 (en) 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
EP3907999B1 (en) 2010-09-02 2023-11-22 LG Electronics, Inc. Inter prediction
US20120082228A1 (en) 2010-10-01 2012-04-05 Yeping Su Nested entropy encoding
US10104391B2 (en) 2010-10-01 2018-10-16 Dolby International Ab System for nested entropy encoding
JP2012109720A (ja) 2010-11-16 2012-06-07 Panasonic Corp 画像変換装置、画像再生装置及び画像変換方法
US8824558B2 (en) 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction
US8976873B2 (en) 2010-11-24 2015-03-10 Stmicroelectronics S.R.L. Apparatus and method for performing error concealment of inter-coded video frames
US8711940B2 (en) 2010-11-29 2014-04-29 Mediatek Inc. Method and apparatus of motion vector prediction with extended motion vector predictor
CN102986224B (zh) 2010-12-21 2017-05-24 英特尔公司 用于增强的解码器侧运动向量导出处理的系统及方法
US9049455B2 (en) 2010-12-28 2015-06-02 Panasonic Intellectual Property Corporation Of America Image coding method of coding a current picture with prediction using one or both of a first reference picture list including a first current reference picture for a current block and a second reference picture list including a second current reference picture for the current block
ES2930367T3 (es) 2011-01-07 2022-12-09 Lg Electronics Inc Método para codificar información de vídeo, método para decodificar información de vídeo y aparato de decodificación para decodificar información de vídeo
WO2012095467A1 (en) 2011-01-12 2012-07-19 Canon Kabushiki Kaisha Video encoding and decoding with low complexity
US9319716B2 (en) 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US9066110B2 (en) 2011-03-08 2015-06-23 Texas Instruments Incorporated Parsing friendly and error resilient merge flag coding in video coding
EP2687015A4 (en) 2011-03-14 2014-12-17 Mediatek Inc METHOD AND DEVICE FOR OBTAINING PREDICTIONS FOR TEMPORARY MOTION VECTORS
US9648334B2 (en) 2011-03-21 2017-05-09 Qualcomm Incorporated Bi-predictive merge mode based on uni-predictive neighbors in video coding
US9143795B2 (en) 2011-04-11 2015-09-22 Texas Instruments Incorporated Parallel motion estimation in video coding
MX2013010231A (es) 2011-04-12 2013-10-25 Panasonic Corp Metodo de codificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de decodificacion de imagenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento.
CN103503450B (zh) 2011-05-24 2017-07-07 太阳专利托管公司 图像编码方法、图像编码装置、图像解码方法、图像解码装置及图像编解码装置
CA2834123C (en) 2011-05-27 2020-02-11 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
CN103548351B (zh) 2011-05-31 2017-07-11 太阳专利托管公司 运动图像解码方法及运动图像解码装置
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
JP5886950B2 (ja) 2011-06-14 2016-03-16 サムスン エレクトロニクス カンパニー リミテッド 動き情報の符号化方法及びその装置、その復号化方法及びその装置
US9866859B2 (en) 2011-06-14 2018-01-09 Texas Instruments Incorporated Inter-prediction candidate index coding independent of inter-prediction candidate list construction in video coding
US9282338B2 (en) 2011-06-20 2016-03-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
KR102464103B1 (ko) 2011-06-30 2022-11-04 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
CN105430390B (zh) 2011-06-30 2017-04-12 Jvc建伍株式会社 图像解码装置、图像解码方法、接收装置及接收方法
IN2014CN00729A (es) 2011-08-03 2015-04-03 Panasonic Corp
CN103907346B (zh) 2011-10-11 2017-05-24 联发科技股份有限公司 运动矢量预测子及视差矢量导出方法及其装置

Also Published As

Publication number Publication date
US20160337660A1 (en) 2016-11-17
US20190132608A1 (en) 2019-05-02
BR112013023478A8 (pt) 2017-07-11
MX2013010231A (es) 2013-10-25
JP6112320B2 (ja) 2017-04-12
US20200195954A1 (en) 2020-06-18
JP2016015787A (ja) 2016-01-28
PL2698999T3 (pl) 2017-10-31
RU2013141795A (ru) 2015-05-20
EP3136727A1 (en) 2017-03-01
RU2016137964A (ru) 2018-12-13
US20190075314A1 (en) 2019-03-07
CA2830036A1 (en) 2012-10-18
EP2698999B1 (en) 2017-01-04
US20190132607A1 (en) 2019-05-02
US11012705B2 (en) 2021-05-18
ES2621231T3 (es) 2017-07-03
SA112330447B1 (ar) 2015-08-10
RU2719308C2 (ru) 2020-04-17
US9872036B2 (en) 2018-01-16
CA2830036C (en) 2019-03-05
US20210235106A1 (en) 2021-07-29
US8982953B2 (en) 2015-03-17
RU2600936C2 (ru) 2016-10-27
JPWO2012140821A1 (ja) 2014-07-28
US20120263235A1 (en) 2012-10-18
AR085995A1 (es) 2013-11-13
JP5837575B2 (ja) 2015-12-24
US20150146783A1 (en) 2015-05-28
BR112013023478A2 (pt) 2017-03-01
EP2698999A4 (en) 2014-03-05
KR101935620B1 (ko) 2019-01-04
US20180103264A1 (en) 2018-04-12
TWI547148B (zh) 2016-08-21
US9445120B2 (en) 2016-09-13
US11356694B2 (en) 2022-06-07
US20240171766A1 (en) 2024-05-23
RU2016137964A3 (es) 2019-10-08
WO2012140821A1 (ja) 2012-10-18
EP2698999A1 (en) 2014-02-19
US10609406B2 (en) 2020-03-31
KR20140010068A (ko) 2014-01-23
BR112013023478B8 (pt) 2022-09-13
PL3136727T3 (pl) 2018-11-30
CN103444181A (zh) 2013-12-11
US20220182656A1 (en) 2022-06-09
CN103444181B (zh) 2018-04-20
US11917186B2 (en) 2024-02-27
US10536712B2 (en) 2020-01-14
TW201246948A (en) 2012-11-16
US10178404B2 (en) 2019-01-08
EP3136727B1 (en) 2018-06-13
US10382774B2 (en) 2019-08-13
BR112013023478B1 (pt) 2021-01-19

Similar Documents

Publication Publication Date Title
ES2685945T3 (es) Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento
JP6167409B2 (ja) 画像復号化方法および画像復号化装置
ES2781868T3 (es) Procedimiento de decodificación de imágenes, procedimiento de codificación de imágenes, dispositivo de decodificación de imágenes, dispositivo de codificación de imágenes y dispositivo de codificación/decodificación de imágenes
ES2687685T3 (es) Procedimiento de codificación de instantáneas en movimiento, dispositivo de codificación de instantáneas en movimiento, procedimiento de decodificación de instantáneas en movimiento, dispositivo de decodificación de instantáneas en movimiento y dispositivo de codificación-decodificación de instantáneas en movimiento
JP6308495B2 (ja) 画像復号方法、および、画像復号装置
ES2971526T3 (es) Procedimiento de descodificación de vídeo, dispositivo de descodificación de vídeo
ES2780188T3 (es) Método de codificación de imagen, método de decodificación de imagen, aparato de codificación de imagen y aparato de decodificación de imagen
ES2780186T3 (es) Procedimiento de codificación de imágenes, procedimiento de decodificación de imágenes, dispositivo de codificación de imágenes, y dispositivo de decodificación de imágenes
JP6421931B2 (ja) 動画像符号化方法及び動画像符号化装置
ES2769378T3 (es) Procedimiento de codificación de imágenes y aparato de codificación de imágenes
JP6394966B2 (ja) 時間動きベクトル予測を用いた、符号化方法、復号方法、符号化装置、及び、復号装置
JP6422011B2 (ja) 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置
JP5850893B2 (ja) 動画像符号化復号装置
JP5893570B2 (ja) 画像符号化方法および画像復号化方法
WO2012090495A1 (ja) 画像符号化方法および画像復号方法