ES2621231T3 - 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 - Google Patents

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 Download PDF

Info

Publication number
ES2621231T3
ES2621231T3 ES12771702.3T ES12771702T ES2621231T3 ES 2621231 T3 ES2621231 T3 ES 2621231T3 ES 12771702 T ES12771702 T ES 12771702T ES 2621231 T3 ES2621231 T3 ES 2621231T3
Authority
ES
Spain
Prior art keywords
block
fusion
prediction
candidate
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
ES12771702.3T
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 ES2621231T3 publication Critical patent/ES2621231T3/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

Abstract

Un método de decodificación de imágenes en movimiento para decodificar 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, el primer candidato de bloque de fusión teniendo al menos (i) un primer vector de movimiento que ha sido usado para decodificar 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 el segundo candidato de bloque de fusión teniendo al menos (i) un segundo vector de movimiento que ha sido usado para decodificar 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 decodificar el bloque actual; 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 decodificar 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
Metodo de codificacion de video de movimiento, aparato de codificacion de video de movimiento, metodo de decodificacion de video de movimiento, aparato de decodificacion de video de movimiento, y aparato de codificacion/decodificacion de video de movimiento
[Campo tecnico]
La presente invencion se relaciona con metodos de codificacion de imagenes en movimiento de codificar de imagenes de entrada en un modo bloque a bloque utilizando prediccion entre imagenes con referencia a una imagen o imagenes codificadas, y metodos de decodificacion de imagenes en movimiento de decodificar un flujo de bits en un modo bloque a bloque utilizando prediccion entre imagenes.
[Antecedentes de la tecnica]
En la codificacion de imagenes en movimiento, generalmente, una cantidad de informacion es comprimida mediante el uso de una redundancia de una direccion espacial y una direccion temporal de imagenes en movimiento. Aquf, en general, uno de los metodos que usa una redundancia en una direccion espacial es la transformacion a un dominio de la frecuencia, y uno de los metodos que usa una redundancia en una direccion temporal es la codificacion de prediccion entre imagenes (en adelante, referida como “prediccion entre”). En la codificacion de prediccion entre, cuando una imagen actual va a ser codificada, una imagen codificada anterior o posterior a la imagen actual en orden de visualizacion es usada como imagen de referencia. Entonces, la estimacion 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 prediccion generada mediante una compensacion 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 direccion temporal. Aquf, en la estimacion 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 codificacion de imagenes en movimiento conocido como H.264 que ya ha sido estandarizado, para comprimir una cantidad de informacion, se usan tres tipos de imagenes, imagen I, imagen P, e imagen B. La imagen I es una imagen en la cual no se realiza la codificacion de prediccion entre, en otras palabras, en la cual se realiza la codificacion intra imagen (en adelante, referida como “prediccion intra”). La imagen P es una imagen en la cual se realiza la codificacion de prediccion entre con referencia a una imagen codificada ubicada antes o despues de la imagen actual en orden de visualizacion. La imagen B es una imagen en la cual se realiza la codificacion de prediccion entre con referencia a dos imagenes codificadas ubicadas antes o despues de la imagen actual en orden de visualizacion.
En la codificacion de prediccion entre, se genera una lista de imagenes de referencia para especificar una imagen de referencia. La lista de imagenes de referencia es una lista en la cual una imagen de referencia codificada a la que se referira en la prediccion entre es asignada con un o unos valores correspondientes de un fndice de imagenes de referencia. Por ejemplo, dado que una imagen B puede ser codificada con referencia a dos imagenes, una imagen B tiene dos listas (L0, Li) de imagenes de referencia.
La FIG. 1A es un diagrama para explicar la asignacion de indices de imagenes de referencia para cada una de las imagenes de referencia. Las FIGS. 1B y 1C muestran un ejemplo de un par de listas de imagenes 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 visualizacion. Bajo esa suposicion, la lista 0 (L0) de imagenes de referencia es un ejemplo de una lista de imagenes de referencia en una direccion 0 (la primera direccion de prediccion) de prediccion para prediccion bidireccional. Como se muestra en la FIG. 1B, se asigna un valor “0” de un rndice 0 de imagen de referencia a la imagen 0 de referencia dispuesta en el orden 2 de visualizacion, se asigna un valor “1” del rndice 0 de imagen de referencia a la imagen 1 de referencia dispuesta en el orden 1 de visualizacion, y se asigna un valor “2” del rndice 0 de imagen de referencia a la imagen 2 de referencia dispuesta en el orden 0 de visualizacion. En pocas palabras, se asigna un mayor valor del fndice de imagen de referencia a una imagen mas cercana temporalmente a la imagen actual en el orden de visualizacion. Por otro lado, la lista 1 (L1) de imagenes de referencia es un ejemplo de una lista de imagenes de referencia en una direccion 1 de prediccion (la segunda direccion de prediccion) para una prediccion bidireccional. En la lista 1 (L1) de imagenes de referencia, se asigna un valor “0” de un rndice 1 de imagen de referencia a la imagen 1 de referencia dispuesta en el orden 1 de visualizacion, se asigna un valor “1” del rndice 1 de imagen de referencia a la imagen 0 de referencia dispuesta en el orden 2 de visualizacion, y se asigna un valor “2” del fndice 1 de imagen de referencia a la imagen 2 de referencia dispuesta en el orden 0 de visualizacion. Como se describio anteriormente, para cada una de las imagenes de referencia, es posible asignar diferentes indices de imagenes de referencia a las direcciones de prediccion respectivas (las imagenes 0 y 1 de referencia en la FIG. 1A), o asignar el mismo fndice de imagen de referencia a ambas direcciones de prediccion (imagen 2 de referencia en la FIG. 1A).
5
10
15
20
25
30
35
40
45
50
Ademas, en el esquema del metodo de codificacion de imageries en movimiento conocido como H.264 (vease Literatura 1 de documentos que no son patentes), como un modo de codificacion de prediccion entre para cada bloque actual en una imagen B, hay un modo de estimacion del vector de movimiento para codificar (a) un valor diferente entre los datos de la imagen de prediccion y los datos de la imagen de un bloque actual y (b) un vector de movimiento usado en la generacion de los datos de la imagen de prediccion. En el modo de estimacion del vector de movimiento, se selecciona bien la prediccion bidireccional o bien la prediccion unidireccional. En la prediccion bidireccional, se genera una imagen de prediccion con referencia a dos imagenes codificadas ubicadas antes o despues de la imagen actual. Por otro lado, en la prediccion unidireccional, se genera una imagen de prediccion con referencia a una imagen codificada ubicada antes o despues de la imagen actual.
Ademas, en el esquema de codificacion de imagenes en movimiento conocido como H.264, en la codificacion de la imagen B, cuando se han de derivar los vectores de movimiento, es posible seleccionar un modo de codificacion llamado un modo de vector de movimiento de prediccion temporal. El metodo de codificacion de prediccion entre en el modo de vector de movimiento de prediccion 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 prediccion temporal, y muestra la situacion donde un bloque “a” en una imagen B2 es codificada en el modo de vector de movimiento de prediccion temporal. En esta situacion, 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 u bicada antes de la imagen B2. El bloque “b” (en adelante, referido como “bloque co-ubicado”) es ubicado, en la imagen P3, en una posicion correspondiente a la posicion 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 atras. De este modo, la prediccion bidireccional se realiza para codificar el bloque “a”. Mas espedficamente, 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]
NPL-1: ITU-T Recomendacion H. 264, “Advanced video coding for generic audiovisual services”, Marzo 2010.
Artfculo 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 derivacion de los vectores de movimiento en el lado del decodificador sin senalarlos explfcitamente. Esto es realizado por correspondencias de plantillas dentro de las porciones de imagenes adyacentes ya reconstruidas.
El documento WO 2010/148919 muestra la seleccion de vectores de movimiento de un conjunto de candidatos con los vectores de movimiento de los bloques vecinos.
La contribucion JVT-C121 por Jeon “New Syntax for Bi-dir pred. Mode in MH pictures”, 60th MPEG meeting, Mayo 10, 2002 muestra la prediccion bidireccional usando no solo un par de tramas hacia delante y hacia atras como referencia sino tambien dos tramas hacia delante y dos hacia atras. En consecuencia se introduce un nuevo elemento de sintaxis para senalar la informacion de direccion.
[Compendio de la invencion]
[Problema tecnico ]
Sin embargo, convencionalmente, hay una situacion donde, en la codificacion de un bloque actual, la seleccion de bien la prediccion bidireccional o bien la prediccion unidireccional causa una disminucion de la eficiencia de codificacion.
Una realizacion ejemplar no limitante de la presente descripcion proporciona un metodo de codificacion de imagenes en movimiento y un metodo de decodificacion de imagenes en movimiento que son capaces de mejorar la eficiencia de codificacion.
[Solucion al problema]
Esto es definido por las caracterfsticas de las reivindicaciones independientes.
En un aspecto general, las tecnicas descritas aquf presentan; un metodo de codificacion de imagenes en movimiento de codificar un bloque actual mediante el copiado de al menos un valor del fndice de imagen de referencia y al menos un vector de movimiento, el al menos un valor del fndice de imagen de referencia que es para identificar una imagen de referencia que ha sido usada en la codificacion de un bloque diferente al bloque actual, el metodo de codificacion de imagenes en movimiento incluye: determinar una pluralidad de primeros bloques candidatos de los cuales el al menos un valor del fndice de imagen de referencia y el al menos un vector de
5
10
15
20
25
30
35
40
45
50
55
movimiento han de ser copiados; generar un segundo bloque candidato que use la prediccion bidireccional, el segundo bloque candidato que es generado mediante la combinacion de los valores de los indices de imagenes 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 mdice 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 mdice 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 mdice 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 imagenes de referencia que sean las mas apropiadas para el bloque actual. Como resultado, la eficiencia de codificacion puede ser mejorada.
Es tambien posible que la generacion del segundo bloque candidato incluya: determinar si cada uno de los primeros bloques candidatos tiene uno o mas valores de mdice de imagen de referencia y uno o mas vectores de movimiento o no; y generar el segundo bloque candidato, cuando al menos uno de los primeros bloques candidatos no tiene ningun valor del mdice de imagen de referencia y ningun vector de movimiento.
Es ademas posible que el metodo de codificacion de imagenes en movimiento incluya: determinar si el bloque actual ha de ser codificado mediante el uso de el al menos un valor del mdice 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 determinacion; y anadir la bandera a un flujo de bits que incluya el bloque actual.
Es ademas tambien posible que el metodo de codificacion de imagenes en movimiento incluya ademas: determinar un valor del mdice de bloque correspondiente al bloque seleccionado del cual el al menos un valor del mdice 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 indices de bloques respectivos; y anadir el valor del mdice de bloque determinado a un flujo de bits que incluya el bloque actual.
Es ademas tambien posible que la generacion del segundo bloque candidato incluya: determinar si dos de los primeros bloques candidatos tienen valores de mdice de imagen de referencia que indiquen diferentes direcciones de prediccion y han sido codificadas mediante prediccion bidireccional o no; y generar el segundo bloque candidato, cuando los dos de los primeros bloques candidatos tienen diferentes direcciones de prediccion o han sido codificados mediante prediccion bidireccional.
Es ademas tambien posible que la generacion del segundo bloque candidato incluya ademas: determinar si uno de los dos primeros bloques candidatos han sido predichos en una primera direccion de prediccion o codificados mediante prediccion bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda direccion de prediccion o codificado mediante prediccion bidireccional; y cuando se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera direccion de prediccion o codificado mediante prediccion bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda direccion de prediccion o codificado mediante prediccion bidireccional, generar el segundo bloque candidato mediante (i) la seleccion de un valor del mdice de imagen de referencia y un vector de movimiento que han sido usados en la primera direccion de prediccion para el uno de los dos primeros bloques candidatos, como un valor del mdice de imagen de referencia y un vector de movimiento que son usados en la primera direccion de prediccion para el segundo bloque candidato, y (ii) la seleccion de un valor del mdice de imagen de referencia y un vector de movimiento que han sido usados en la segunda direccion de prediccion para el otro de los dos primeros bloques candidatos, como un valor del mdice de imagen de referencia y un vector de movimiento que son usados en la segunda direccion de prediccion para el segundo bloque candidato.
Es ademas tambien posible que la generacion del segundo bloque candidato incluya ademas: determinar si uno de los dos primeros bloques candidatos ha sido predicho en una primera direccion de prediccion o codificado mediante prediccion bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda direccion de prediccion o codificado mediante prediccion bidireccional; y cuando no se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera direccion de prediccion o codificado mediante prediccion bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda direccion de prediccion o codificado mediante prediccion bidireccional, generar el segundo bloque candidato mediante (i) la seleccion de un valor del mdice de imagen de referencia y un vector de movimiento que han sido usados en la primera direccion de prediccion para el otro de los dos primeros bloques candidatos, como un valor del mdice de imagen de referencia y un vector de movimiento que son usados en la primera direccion de prediccion para el segundo bloque candidato, y (ii) la seleccion de un valor del mdice de imagen de referencia y un vector de movimiento que han sido usados en la segunda direccion de prediccion para el uno de los dos primeros bloques candidatos, como un valor del mdice de imagen de referencia y un vector de movimiento que son usados en la segunda direccion de prediccion para el segundo bloque candidato.
5
10
15
20
25
30
35
40
45
50
55
60
En otro aspecto, las tecnicas descritas en esta memoria presentan; un metodo de decodificacion de imageries en movimiento de decodificar un bloque actual mediante el copiado de al menos un valor del fndice de imagen de referencia y al menos un vector de movimiento, el al menos un valor del fndice de imagen de referencia para identificar una imagen de referencia que ha sido usada en la decodificacion de un bloque diferente al bloque actual, el metodo de decodificacion de imagenes en movimiento incluye: determinar una pluralidad de primeros bloques candidatos de los cuales el al menos un valor del fndice de imagen de referencia y el al menos un vector de movimiento han de ser copiados; generar un segundo bloque candidato que use la prediccion bidireccional, el segundo bloque candidato que es generado mediante la combinacion de los valores de los indices de imagenes 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 fndice 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 fndice 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 fndice 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 mas apropiados y la o las imagenes de referencia mas apropiadas.
Es tambien posible que la generacion del segundo bloque candidato incluya: determinar si cada uno de los primeros bloques candidatos tiene un valor del fndice de imagen de referencia y uno o mas vectores de movimiento o no; y generar el segundo bloque candidato, cuando al menos uno de los primeros bloques candidatos no tiene ningun valor del fndice de imagen de referencia y ningun vector de movimiento.
Es ademas posible que el metodo de decodificacion de imagenes 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 fndice 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 segun la bandera.
Es ademas tambien posible que el metodo de decodificacion de imagenes en movimiento incluya ademas: obtener un valor del fndice de bloque de un flujo de bits que incluye el bloque actual; y seleccionar, mediante el uso del valor del fndice de bloque obtenido, un bloque del cual el al menos un valor del fndice 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 indices de bloques respectivos.
Es ademas tambien posible que la generacion del segundo bloque candidato incluya: determinar si dos de los primeros bloques candidatos tienen valores de fndice de imagen de referencia que indiquen diferentes direcciones de prediccion y han sido codificadas mediante prediccion bidireccional o no; y generar el segundo bloque candidato, cuando los dos de los primeros bloques candidatos tienen diferentes direcciones de prediccion o han sido codificados mediante prediccion bidireccional.
Es ademas tambien posible que la generacion del segundo bloque candidato incluya ademas: determinar si uno de los dos primeros bloques candidatos han sido predichos en una primera direccion de prediccion o codificados mediante prediccion bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda direccion de prediccion o codificado mediante prediccion bidireccional; y cuando se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera direccion de prediccion o codificado mediante prediccion bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda direccion de prediccion o codificado mediante prediccion bidireccional, generar el segundo bloque candidato mediante (i) la seleccion de un valor del fndice de imagen de referencia y un vector de movimiento que han sido usados en la primera direccion de prediccion para el uno de los dos primeros bloques candidatos, como un valor del fndice de imagen de referencia y un vector de movimiento que son usados en la primera direccion de prediccion para el segundo bloque candidato, y (ii) la seleccion de un valor del fndice de imagen de referencia y un vector de movimiento que han sido usados en la segunda direccion de prediccion para el otro de los dos primeros bloques candidatos, como un valor del fndice de imagen de referencia y un vector de movimiento que son usados en la segunda direccion de prediccion para el segundo bloque candidato.
Es ademas tambien posible que la generacion del segundo bloque candidato incluya ademas: determinar si uno de los dos primeros bloques candidatos ha sido predicho en una primera direccion de prediccion o codificado mediante prediccion bidireccional o no, y el otro de los dos primeros bloques candidatos ha sido predicho en una segunda direccion de prediccion o codificado mediante prediccion bidireccional; y cuando no se ha determinado que el uno de los dos primeros bloques candidatos ha sido predicho en la primera direccion de prediccion o codificado mediante prediccion bidireccional, y el otro de los dos primeros bloques candidatos ha sido predicho en la segunda direccion de prediccion o codificado mediante prediccion bidireccional, generar el segundo bloque candidato mediante (i) la seleccion de un valor del fndice de imagen de referencia y un vector de movimiento que han sido usados en la primera direccion de prediccion para el otro de los dos primeros bloques candidatos, como un valor del fndice de imagen de referencia y un vector de movimiento que son usados en la primera direccion de prediccion para el
5
10
15
20
25
30
35
40
45
50
segundo bloque candidato, y (ii) la seleccion de un valor del fndice de imagen de referencia y un vector de movimiento que han sido usados en la segunda direccion de prediccion para el uno de los dos primeros bloques candidatos, como un valor del fndice de imagen de referencia y un vector de movimiento que son usados en la segunda direccion de prediccion para el segundo bloque candidato.
Deberfa notarse que la presente descripcion puede ser implementada no solo como el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento anteriores, sino tambien como: un aparato de codificacion de imagenes en movimiento, un aparato de decodificacion de imagenes en movimiento, y un aparato de codificacion y decodificacion de imagenes en movimiento cada uno de los cuales incluye unidades de procesamiento que realizan los pasos caracterizados incluidos en el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento; un programa que causa que un ordenador ejecute los pasos; y similares. La presente descripcion puede ser implementada tambien como: un medio de grabacion legible por un ordenador, tal como un Disco Compacto de Memoria de Solo Lectura (CD-ROM), en el cual el programa anterior es grabado; informacion, datos, senales que indican el programa, y similares. El programa, informacion, datos, o senales pueden ser distribuidos a traves de un medio de transmision tal como Internet.
[Efectos ventajosos de la invencion]
Segun la presente descripcion, un nuevo candidato de bloque de fusion de predicciones bidireccionales se calcula desde candidatos de bloques de fusion, para mejorar la eficiencia de codificacion.
[Breve descripcion de los dibujos]
[FIG. 1A] La FIG. 1A es un diagrama para explicar la asignacion de indices de imagenes 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 imagenes de referencia para una imagen B.
[FIG. 1C] La FIG. 1C es una tabla que muestra un ejemplo de la otra lista de imagenes 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 prediccion temporal.
[FIG. 3A] La FIG. 3A es un diagrama que muestra una relacion 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 fusion en la cual cada valor de un fndice de fusion es asignado a un vector de movimiento y un fndice de imagen de referencia que han de ser usados en el modo de fusion.
[FIG. 4] La FIG. 4 es un diagrama de bloques que muestra una estructura de un aparato de codificacion de imagenes en movimiento que usa un metodo de codificacion de imagenes en movimiento segun una realizacion de la presente descripcion.
[FIG. 5] La FIG. 5 es un diagrama de flujo de un compendio de un flujo de procesamiento del metodo de codificacion de imagenes en movimiento segun la realizacion de la presente descripcion.
[FIG. 6] La FIG. 6 es una tabla que muestra un ejemplo de una lista de candidatos de bloques de fusion en la cual cada valor de un fndice de fusion se asigna a un vector de movimiento y a un fndice de imagen de referencia los cuales han de usarse en el modo de fusion segun la Realizacion 1.
[FIG. 7] La FIG. 7 es un ejemplo de una tabla de codificacion que es usada para realizar codificacion de longitud variable en el fndice de bloque de fusion.
[FIG. 8] La FIG. 8 es un diagrama de flujo de un flujo de procesamiento detallado para calcular un bloque de fusion combinado.
[FIG. 9] La FIG. 9 es un diagrama de flujo de un flujo de procesamiento detallado para comparar errores de prediccion.
[FIG. 10] La FIG. 10 es un diagrama de bloques que muestra una estructura de un aparato de decodificacion de imagenes en movimiento que usa un metodo de decodificacion de imagenes en movimiento segun una realizacion de la presente descripcion.
[FIG. 11] La FIG. 11 es un diagrama de flujo de un compendio de un flujo de procesamiento de un metodo de decodificacion de imagenes en movimiento segun una realizacion de la presente descripcion.
5
10
15
20
25
30
35
40
45
[FIG. 12] La FIG. 12 muestra una configuracion general de un sistema que proporciona contendido para implementar servicios de distribucion de contenidos;
[FIG. 13] La FIG. 13 muestra una configuracion general de un sistema de difusion digital;
[FIG. 14] La FIG. 14 muestra un diagrama de bloques que ilustra un ejemplo de una configuracion de un televisor.;
[FIG. 15] La FIG. 15 muestra un diagrama de bloques que ilustra un ejemplo de una configuracion de una unidad de
reproduccion/grabacion de informacion que lee y escribe informacion de y en un medio de grabacion que es un disco optico;
[FIG. 16] La FIG. 16 muestra un ejemplo de una configuracion de un medio de grabacion que es un disco optico;
[FIG. 17A] La FIG. 17A muestra un ejemplo de un telefono movil;
[FIG. 17B] La FIG. 17B es un diagrama de bloques que muestra un ejemplo de una configuracion de un telefono movil;
[FIG. 18] La FIG. 18 ilustra una estructura de datos multiplexados;
[FIG. 19] La FIG. 19 muestra esquematicamente como cada flujo es multiplexado en datos multiplexados;
[FIG. 20] La FIG. 20 muestra como un flujo de video es almacenado en un flujo de paquetes PES en mas 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 informacion de datos multiplexados;
[FIG. 24] La FIG. 24 muestra una estructura interna de informacion 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 configuracion de un circuito integrado para implementar el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento segun cada uno de las Realizaciones;
[FIG. 27] La FIG. 27 muestra una configuracion 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 busqueda en la cual los estandares de datos de video estan asociados con frecuencias portadoras;
[FIG. 30A] La FIG. 30A es un diagrama que muestra un ejemplo de una configuracion para compartir un modulo de una unidad de procesamiento de senal; y
[FIG. 30B] La FIG. 30B es un diagrama que muestra otro ejemplo de una configuracion para compartir un modulo de la unidad de procesamiento de senal.
[Descripcion de las realizaciones]
En el esquema de codificacion de imagenes en movimiento, un modo de codificacion llamado un modo de fusion ha sido examinado como un modo de prediccion entre para cada bloque a ser codificado en una imagen B o una imagen P. En este modo de fusion, un vector de movimiento y un valor de un fndice de imagen de referencia (en adelante, referido tambien como “valores de los indices de imagenes de referencia”) son copiados de un bloque vecino de un bloque actual a ser codificado, para codificar el bloque actual. Aquf, anadiendo el valor del fndice y el mismo del bloque vecino desde el cual son copiados son anadidos a un flujo de bits. Como resultado, un vector de movimiento o un valor de un fndice de imagen de referencia que han sido usados en la codificacion pueden ser seleccionados en la decodificacion. Se describe un ejemplo detallado con referencias a las figuras correspondientes.
La Fig. 3A es un diagrama de bloques que muestra una relacion 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 fusion en la cual cada valor de un fndice de fusion es asignado a un vector de movimiento y un fndice de imagen de referencia que han de ser usados en el modo de fusion.
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
5
10
15
20
25
30
35
40
45
50
55
bloque codificado inmediatamente abajo a la izquierda del bloque actual es referido como bloque D vecino. Ademas, en la FIG. 3A, el bloque A vecino ha sido codificado mediante prediccion unidireccional usando una direccion 0 de prediccion (la primera direccion de prediccion). El bloque A vecino tiene un vector MvL0_A de movimiento de la direccion 0 de prediccion para una imagen de referencia indicada por un valor RefL0_A de fndice en un fndice de imagen de referencia de la direccion 0 de prediccion. Aquf, 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 imagenes de referencia, y MvL1 es un vector de movimiento que se refiere a una imagen de referencia especificada por la lista 1 (L1) de imagenes de referencia. El bloque B vecino ha sido codificado mediante prediccion unidireccional usando una direccion 1 de prediccion (la segunda direccion de prediccion). El bloque B vecino tiene un vector MvL1_B de movimiento de la direccion 1 de prediccion para una imagen de referencia indicada por un valor RefL1_B de fndice en un fndice de imagen de referencia de la direccion 1 de prediccion. El bloque C vecino ha sido codificado mediante prediccion intra. El bloque D vecino ha sido codificado mediante prediccion unidireccional usando una direccion 0 de prediccion. El bloque D vecino tiene un vector MvL0_D de movimiento de la direccion 0 de prediccion para una imagen de referencia indicada por un valor RefL0_D de fndice en un fndice de imagen de referencia de la direccion 0 de prediccion.
En la situacion como se muestra en la FIG. 3A, como un vector de movimiento y un valor del fndice de imagen de referencia para el bloque actual, son seleccionados un vector de movimiento y un valor del fndice de imagen de referencia que ofrecen la mas alta eficiencia de codificacion, por ejemplo, desde (a) los vectores de movimiento y los valores de los indices de imagenes de referencia de los bloques A, B, C y D vecinos, y (b) un vector de movimiento y un valor del fndice de imagen de referencia del bloque co-ubicado que son obtenidos en el modo de vector de movimiento de prediccion temporal. Entonces, un fndice de bloque de fusion que indica el bloque vecino seleccionado o bloque co-ubicado es anadido 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 fndice de imagen de referencia de la direccion 0 de prediccion, y solo un valor “0” del mdice del bloque de fusion que indica que el bloque A vecino es usado como se muestra en la FIG. 3B es anadido en el flujo de bits, de forma que una cantidad de informacion de vectores de movimiento y valores de los indices de imagenes de referencia pueden ser reducidas.
Sin embargo, en el modo de fusion descrito anteriormente, si un bloque a ser candidato a bloque de fusion no tienen ningun vector de movimiento ni valor del fndice de imagen de referencia porque el bloque ha sido codificado mediante prediccion intra (como el bloque C vecino), el bloque no puede ser usado como un candidato a bloque de fusion. En la situacion anterior, se considera tambien que el numero de candidatos de bloques de fusion disponibles disminuye, el intervalo de seleccion para un vector de movimiento y un valor del fndice de imagen de referencia que ofrece la mas alta eficiencia de codificacion es reducido, y finalmente la eficiencia de codificacion disminuye.
Para dirigir el problema anterior, una realizacion ejemplar no limitante proporciona un metodo de codificacion de imagenes y un metodo de decodificacion de imagenes que son capaces de mejorar la eficiencia de codificacion sin disminuir el numero de candidatos de bloques de fusion disponibles en el modo de fusion.
A continuacion se describen realizaciones segun la presente descripcion con referencias a los dibujos. Se deberfa anotar que todas las realizaciones descritas a continuacion son ejemplos especfficos de la presente descripcion. Los valores numericos, formas, materiales, elementos constituyentes, posiciones de disposiciones y la configuracion de conexion 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 descripcion. La presente descripcion 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 mas generico de la presente descripcion son descritos como elementos que constituyen las configuraciones mas deseables, aunque tales elementos constituyentes no son requeridos necesariamente para alcanzar el objeto de la presente descripcion.
(Realizacion 1)
La FIG. 4 es un diagrama de bloques que muestra una estructura de un aparato de codificacion de imagenes en movimiento usando un metodo de codificacion de imagenes en movimiento segun la Realizacion 1.
Como se muestra en la FIG. 4, el aparato 100 de codificacion de imagenes en movimiento incluye una unidad 101 de transformacion ortogonal, una unidad 102 de cuantificacion, una unidad 103 de cuantificacion inversa, una unidad 104 de transformacion ortogonal inversa, una memoria 105 de bloque, una memoria 106 de trama, una unidad 107 de prediccion intra, una unidad 108 de prediccion entre, una unidad 109 de control de prediccion entre, una unidad 110 de determinacion de tipo de imagen, una unidad 111 de calculo de candidatos de bloque de fusion, una memoria 112 CoIPic, una unidad 113 de codificacion de longitud variable, un sustractor 114, un sumador 115, y una unidad 116 conmutadora.
La unidad 101 de transformacion ortogonal transforma los datos de errores de prediccion que es una diferencia entre los datos de prediccion generados como se describio anteriormente y una secuencia de imagenes de entrada, de un dominio de la imagen a un dominio de la frecuencia. La unidad 102 de cuantificacion cuantifica los datos de errores de prediccion que han sido transformados al dominio de la frecuencia. La unidad 103 de cuantificacion inversa
5
10
15
20
25
30
35
40
45
50
55
60
cuantifica a la inversa los datos de errores de prediccion que han sido cuantificados por la unidad 102 de cuantificacion. La unidad 104 de transformacion ortogonal transforma los datos de errores de prediccion cuantificados inversamente desde un dominio de la frecuencia a un dominio de la imagen. El sumador 115 suma los datos de prediccion a los datos de error de prediccion 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 determinacion de tipo de imagen determina mediante que tipo de imagen entre una imagen I, una imagen B, o una imagen P, cada imagen en la secuencia de imagenes de entrada ha de ser codificada, y genera informacion de tipo de imagen. La unidad 107 de prediccion intra codifica un bloque actual a ser codificado mediante prediccion 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 prediccion. La unidad 108 de prediccion entre codifica el bloque actual mediante prediccion 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 estimacion de movimiento, para generar la imagen de prediccion. El sustractor 114 sustrae los datos de prediccion generados mediante la unidad 206 de prediccion intra o la unidad 207 de prediccion entre de la secuencia de imagenes de entrada, para calcular los datos de errores de prediccion.
La unidad 111 de calculo de candidatos de bloque de fusion especifica los candidatos de bloques de fusion (los primeros bloques candidatos) del modo de fusion, mediante el uso (a) de vectores de movimiento y valores de los indices de imagenes de referencia que han sido usados para codificar los bloques vecinos e (b) informacion de ColPic tal como un vector de movimiento y similares del bloque co-ubicado que es almacenado en la memoria 112 de ColPic respecto al bloque actual. Aqui, los candidatos de bloques de fusion son candidatos de un bloque del cual al menos un vector de movimiento y al menos un valor del indice de imagen de referencia son usados directamente (copiados) para el bloque actual. Ademas, la unidad 111 de calculo de candidatos de bloque de fusion genera un bloque de fusion combinado (el segundo bloque candidato) mediante el metodo descrito anteriormente. Se deberia anotar que el bloque de fusion combinado no es un bloque que realmente tenga valores de pixeles, sino un bloque virtual que tiene vectores de movimiento y valores de los indices de imagenes de referencia. Ademas, la unidad 111 de calculo de candidatos de bloque de fusion asigna cada uno de los bloques de fusion especificados con un valor correspondiente del indice de bloque de fusion (indice de bloque). Entonces, la unidad 111 de calculo de candidatos de bloque de fusion proporciona los candidatos de bloques de fusion y los valores de los indices de bloques de fusion (en adelante, referidos tambien como “valores de los indices de bloques de fusion”) a la unidad 109 de control de prediccion entre. Se deberia anotar en la presente realizacion 1 que los vectores de movimiento y los valores de los indices de imagenes de referencia usados para los bloques vecinos de la imagen actual se asumen que son almacenados en la unidad 111 de calculo de candidatos de bloque de fusion.
La unidad 109 de control de prediccion entre realiza codificacion de prediccion entre en un modo de prediccion que tiene el menor error de prediccion entre (a) un modo de prediccion para una imagen de prediccion entre generada mediante el uso de un vector de movimiento derivado por el modo de estimacion de movimiento y (b) un modo de prediccion para una imagen de prediccion entre generada mediante el uso de un vector de movimiento derivado en el modo de fusion. Ademas, la unidad 109 de control de prediccion entre provee a la unidad 113 de codificacion de longitud variable de (a) una bandera de fusion que indica si el modo de prediccion es el modo de fusion o no, (b) un valor del indice de bloque de fusion correspondiente al bloque de fusion determinado en el modo de fusion es seleccionado como el modo de prediccion, e (c) informacion de error de prediccion. Ademas, la unidad 109 de control de prediccion entre transfiere informacion de ColPic que incluye el vector de movimiento y similares para el bloque actual, a la memoria 112 de ColPic.
La unidad 113 de codificacion de longitud variable realiza codificacion de longitud variable en los datos de errores de prediccion cuantificados, bandera de fusion, valor del indice de bloque de fusion, e informacion 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 metodo de codificacion de imagenes en movimiento segun la presente realizacion.
La unidad 111 de calculo de candidatos de bloque de fusion especifica los candidatos de bloques de fusion de bloques de vecinos y un bloque co-ubicado de un bloque actual a ser codificado (Paso S11). Por ejemplo, en la situacion mostrada en la FIG. 3A, la unidad 111 de calculo de candidatos de bloque de fusion especifica los bloques A, B, C, D vecinos y un bloque de fusion co-ubicado, como candidatos de bloques de fusion. Aqui, el bloque de fusion co-ubicado incluye al menos un vector de movimiento y similares que son calculados en el modo de prediccion temporal de al menos un vector de movimiento del bloque co-ubicado. Entonces, la unidad 111 de calculo de candidatos de bloque de fusion asigna a cada uno de los candidatos de bloques de fusion un valor correspondiente del indice de bloque de fusion como se muestra en la FIG. 3B. En general, cuando un valor del indice de bloque de fusion es mas pequeno, la cantidad de informacion necesaria disminuye. Por otro lado, cuando un valor del indice de bloque de fusion es mas grande, la cantidad de informacion necesaria aumenta. Por lo tanto, si un valor del indice de bloque de fusion correspondiente a un candidato de bloque de fusion que tiene una alta posibilidad de tener un vector de movimiento mas preciso y un valor del indice de imagen de referencia mas precisa disminuye, la eficiencia de codificacion aumenta. Por ejemplo, se puede considerar contar cuantas veces cada candidato de bloque de fusion ha sido seleccionado como un bloque de fusion, y se asigna un valor mas pequeno
5
10
15
20
25
30
35
40
45
50
55
del fndice de bloque de fusion a un bloque que tiene la mayor cuenta. Aquf, si un candidato de bloque de fusion objetivo no mantiene informacion tal como un vector de movimiento, por ejemplo, si el candidato de bloque de fusion es un bloque codificado mediante prediccion intra, o si el candidato de bloque de fusion esta ubicado fuera de un borde de imagen o un borde de porcion, se asume que tal bloque no puede ser usado como un candidato de bloque de fusion. En la presente realizacion, si un bloque no puede ser usado como un candidato de bloque de fusion, el bloque es referido como un bloque no disponible, y si un bloque puede ser usado como un candidato de bloque de fusion, el bloque es referido como un bloque disponible. En la situacion mostrada en la FIG. 3A, dado que el bloque C vecino es un bloque codificado mediante prediccion intra, el bloque C vecino es considerado como no disponible como un bloque no disponible como un candidato de bloque de fusion.
Mediante el uso de candidatos de bloques de fusion especificados en el S11, la unidad 111 de calculo de candidatos de bloque de fusion genera un bloque de fusion combinado mediante el metodo que se describira mas adelante, para actualizar la lista de candidatos de bloques de fusion (Paso S12). Por ejemplo, la lista de candidatos de bloques de fusion mostrada en la FIG. 6 es generada de la lista de candidatos de bloques de fusion mostrada en la FIG. 3B. En la lista de candidatos de bloques de fusion en la FIG. 3B, el bloque de fusion combinado generado mediante el metodo que se describira mas adelante es usado en vez de un candidato no disponible que tiene un valor “3” de fndice de bloque de fusion. Mediante el uso de tal bloque de fusion combinado recien generado en vez del candidato no disponible, es posible mejorar la eficiencia de codificacion sin cambiar un valor maximo del numero de candidatos de bloques de fusion.
A continuacion, la unidad 109 de control de prediccion entre compara (a) el error de prediccion de la imagen de prediccion entre generada mediante el uso del vector de movimiento derivado por la estimacion de movimiento con (b) el error de prediccion de la imagen de prediccion generada por el candidato de bloque de fusion mediante el metodo que se describira mas adelante, para determinar un modo de prediccion para codificar el bloque actual. Aquf, si se determina que el modo de prediccion es el modo de fusion, entonces la unidad 109 de control de prediccion entre determina un valor del fndice de bloque de fusion que indica que candidato de bloque de fusion usar. Entonces, si el modo de prediccion es el modo de fusion, la unidad 109 de control de prediccion entre establece la bandera de fusion a 1, sino, establece la bandera de fusion a 0 (Paso S13). La unidad 109 de control de prediccion entre determina si la bandera es 1 o no, en otras palabras, si el modo de prediccion es el modo de fusion o no (Paso S14). Como resultado, si el modo de prediccion es el modo de fusion (Sf en el Paso S14), entonces la unidad 109 de control de prediccion entre provee a la unidad 113 de codificacion de longitud variable de la bandera de fusion y el valor del fndice de bloque de fusion a ser usado para la fusion, para anadir la bandera de fusion y el valor del fndice en el flujo de bits (Paso S15). Por otro lado, si el modo de prediccion no es el modo de fusion (No en el Paso S14), entonces la unidad 109 de control de prediccion entre provee a la unidad 113 de codificacion de longitud variable de la bandera de fusion e informacion del modo de vector de estimacion de movimiento, para anadir la bandera de fusion y la informacion al flujo de bits (Paso S16).
Se deberfa anotar en la presente realizacion que, como se muestra en la FIG. 3B, respecto a los valores de los indices de bloques de fusion, 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 fusion 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 fndice de bloque de fusion no esta limitada solo a este ejemplo. Por ejemplo, tambien es posible que el valor mas grande se asigne a un candidato no disponible como un candidato de bloque de fusion. Tambien deberfa anotarse que los candidatos de bloques de fusion no estan limitados a los bloques A, B, C y D vecinos. Por ejemplo, un bloque vecino o similar que esta ubicado encima del bloque D inmediatamente abajo a la izquierda puede ser seleccionado como un candidato de bloque de fusion. Deberfa tambien 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 fusion. Tambien deberfa anotarse que no es necesario usar siempre el bloque de fusion co-ubicado.
Tambien deberfa anotarse que se ha descrito en la presente realizacion en el S15 en la FIG. 5 que la unidad 109 de control de prediccion entre proporciona un valor del fndice de bloque de fusion a la unidad 113 de codificacion de longitud variable para anadir el valor del fndice de bloque de fusion en el flujo de bits, pero tambien es posible no anadir el valor del fndice del bloque de fusion si el numero de candidatos de bloques de fusion es 1. De este modo, es posible reducir una cantidad de informacion del fndice de bloque de fusion.
Tambien deberfa anotarse que se ha descrito en la presente realizacion en el S12 en la FIG. 5 que un bloque de fusion combinado es usado en vez de un candidato no disponible que tiene un valor “3” del rndice de bloque de fusion. Sin embargo, la presente descripcion no esta limitada a lo anterior y el bloque de fusion combinado puede ser ademas anadido en la lista de candidatos de bloques de fusion. De este modo, es posible aumentar el intervalo de seleccion de los candidatos de bloques de fusion. Aquf, tambien es posible que el candidato no disponible sea tratado como un candidato que tiene el vector 0 de movimiento y el fndice 0 de imagen de referencia.
La FIG. 7 muestra un ejemplo de una tabla de codificacion que es usada para realizar codificacion de longitud variable en valores de los indices de bloques de fusion.
5
10
15
20
25
30
35
40
45
50
55
60
En el ejemplo mostrado en la FIG. 7, un codigo que tiene una longitud de codigo mas corta es asignado a un valor mas pequeno del fndice de bloque de fusion. Por lo tanto, si un valor del fndice de bloque de fusion correspondiente a un candidato de bloque de fusion que tiene la posibilidad de una precision de prediccion alta es disminuido, es posible mejorar la eficiencia de codificacion.
Se deberfa anotar que se ha descrito en la presente realizacion que la codificacion de longitud variable es realizada en valores de los indices de bloques de fusion como se muestra en la FIG. 7, pero los valores de los indices de bloques de fusion pueden ser codificados con una longitud de codigo fija. De este modo, es posible reducir una carga en el proceso de codificacion o decodificacion.
La FIG. 8 es un diagrama de flujo de un flujo detallado del S12 en la FIG. 5. Lo siguiente describe el metodo para generar un bloque de fusion combinado desde los candidatos de bloques de fusion especificados en el S11 con referencia a la FIG. 8.
La unidad 111 de calculo de candidatos de bloques de fusion inicializa un valor 1 (idx1) del mdice a “0” (Paso S21). Entonces, la unidad 111 de calculo de candidatos de bloques de fusion inicializa un valor 2 (idx2) del mdice a “0” (Paso S22). La unidad 111 de calculo de candidatos de bloques de fusion determina si el idx1 y el idx2 tienen diferentes valores o no y la lista de candidatos de bloques de fusion incluye cualquier candidato no disponible (Paso S23). Como resultado, si hay un candidato no disponible (Si en el Paso S23), entonces la unidad 111 de calculo de candidatos de bloques de fusion determina si el candidato [idx1] asignado con el valor idx1 del fndice de bloque de fusion esta disponible y el candidato [idx2] asignado con el valor idx2 del fndice de bloque de fusion esta disponible o no (Paso S24). Como resultado, si el candidato [idx1] de bloque de fusion esta disponible y el candidato [idx2] de bloque de fusion tambien esta disponible (Sf en el Paso S24), entonces la unidad 111 de calculo de candidatos de bloques de fusion determina si el candidato [idx1] de bloque de fusion y el candidato [idx2] de bloque de fusion han sido predichos en diferentes direcciones de prediccion, o si tanto el candidato [idx1] de bloque de fusion como el candidato [idx2] de bloque de fusion han sido codificados mediante prediccion bidireccional (Paso S25). Como resultado, si el candidato [idx1] de bloque de fusion y el candidato [idx2] de bloque de fusion han sido predichos en diferentes direcciones de prediccion, o tanto el candidato [idx1] de bloque de fusion como el candidato [idx2] de bloque de fusion han sido codificados mediante prediccion bidireccional (Sf en el Paso S25), entonces la unidad 111 de calculo de candidatos de bloques de fusion determina si el candidato [idx1] de bloque de fusion ha sido predicho en la direccion 0 de prediccion (la primera direccion de prediccion) o codificado mediante prediccion bidireccional, y el candidato [idx2] de bloque de fusion ha sido predicho en la direccion 1 de prediccion (la segunda direccion de prediccion) o codificado mediante prediccion bidireccional (Paso S26). Como resultado, si el candidato [idx1] de bloque de fusion ha sido predicho en la direccion 0 de prediccion o codificado mediante prediccion bidireccional, y el candidato [idx2] de bloque de fusion ha sido predicho en la direccion 1 de prediccion o codificado mediante prediccion bidireccional (Sf en el Paso S26), en otras palabras, si el candidato [idx1] de bloque de fusion tiene al menos un vector de movimiento de la direccion 0 de prediccion y el candidato [idx2] de bloque de fusion tiene el menos un vector de movimiento de la direccion 1 de prediccion, entonces la unidad 111 de calculo de candidatos de bloques de fusion selecciona el vector de movimiento y el valor del fndice de imagen de referencia de la direccion 0 de prediccion del candidato [idx1] de bloque de fusion para la direccion 0 de prediccion del bloque de fusion combinado (Paso S27). Ademas, la unidad 111 de calculo de candidatos de bloques de fusion selecciona el vector de movimiento y el valor del fndice de imagen de referencia de la direccion 1 de prediccion del candidato [idx2] de bloque de fusion para la direccion 1 de prediccion del bloque de fusion combinado, para generar el bloque de fusion combinado de prediccion bidireccional (Paso S28). Por otro lado, si no se determina que el candidato [idx1] de bloque de fusion ha sido predicho en la direccion 0 de prediccion o codificado mediante la prediccion bidireccional, y el candidato [idx2] de bloque de fusion ha sido predicho en la direccion 1 de prediccion o codificado mediante la prediccion bidireccional (No en el Paso S26), entonces la unidad 111 de calculo de candidatos de bloques de fusion selecciona el vector de movimiento y el valor del fndice de imagen de referencia de la direccion 0 de prediccion del candidato [idx2] de bloque de fusion para la direccion 0 de prediccion del bloque de fusion combinado (Paso S29). Ademas, si la unidad 111 de calculo de candidatos de bloques de fusion selecciona el vector de movimiento y el valor del fndice de imagen de referencia de la direccion 1 de prediccion del candidato [idx1] de bloque de fusion para la direccion 1 de prediccion del bloque de fusion combinado, para generar el bloque de fusion combinado de prediccion bidireccional (Paso S30). La unidad 111 de calculo de candidatos de bloques de fusion anade el bloque de fusion combinado generado en la lista de bloques de fusion como un candidato disponible, en vez del candidato no disponible (Paso S31). A continuacion, la unidad 111 de calculo de candidatos de bloques de fusion anade un valor “1” al valor idx2 (Paso S32), y determina si el valor idx2 es igual o mayor que el valor maximo del numero de candidatos de bloques de fusion (Paso S33). Como resultado, si el valor idx2 no es igual o mayor que el valor maximo del numero de candidatos de bloques de fusion (No en el Paso S33), el procesamiento vuelve al Paso S23, entonces la unidad 111 de calculo de candidatos de bloques de fusion determina otra vez si queda algun candidato o no, y genera un proximo bloque de fusion combinado (Pasos S23 a S32). Por otro lado, si el valor idx2 es igual o mayor que un valor maximo del numero de candidatos de bloques de fusion (Sf en el Paso S33), entonces la unidad 111 de calculo de candidatos de bloques de fusion anade un valor “1” al idxl (Paso S34) y determina si el idxl es igual o mayor que el valor maximo del numero de candidatos de bloques de fusion (Paso S35). Como resultado, si el idx1 es igual o mayor que el valor maximo del numero de candidatos de bloques de fusion (Sf en el Paso S35), en otras palabras, si todas las combinaciones de candidatos de bloques de fusion han sido examinadas, el procesamiento se completa.
5
10
15
20
25
30
35
40
45
50
55
Deberfa anotarse que se ha descrito en la presente realizacion que el procesamiento se completa cuando todas las combinaciones de candidatos de bloques de fusion han sido examinadas, pero la presente descripcion no esta limitada por lo anterior. Por ejemplo, es posible completar el procesamiento cuando no hay mas candidatos disponibles en la lista de candidatos de bloques de fusion. Como resultado, una cantidad de procesamiento puede ser reducida.
Tambien deberfa anotarse que se ha descrito en la presente realizacion que los pasos en el metodo para generar un bloque de fusion combinado desde candidatos de bloques de fusion son realizados en el orden mostrado en el diagrama de flujo de la FIG. 8, pero la presente descripcion no esta limitada por lo anterior y el orden de los pasos puede cambiarse.
Tambien deberfa anotarse que se ha descrito en la presente realizacion que, por ejemplo, cuando un vector de movimiento y un valor del fndice de imagen de referencia de la direccion de prediccion respecto a un bloque vecino es seleccionada para la direccion 0 de prediccion del bloque de fusion combinado, si hay una pluralidad de candidatos de bloque de fusion que tienen un vector de movimiento y un valor del fndice de imagen de referencia de la direccion 0 de prediccion, se seleccion el vector de movimiento y el valor del fndice de imagen de referencia de la direccion 0 de prediccion con respecto al candidato de bloque de fusion que tiene el valor del fndice de bloque de fusion mas cercano a “0”. Sin embargo, la presente descripcion no esta limitada por lo anterior. Por ejemplo, tambien es posible seleccionar un vector de movimiento y un valor del fndice de imagen de referencia de la direccion 0 de prediccion con referencia a un candidato de bloque de fusion que tenga un valor del fndice de bloque de fusion mas cercano a un valor maximo.
Tambien deberfa anotarse que se ha descrito en la presente realizacion en el S31 en al FIG. 8 que el bloque de fusion combinado generado es anadido a la lista de candidatos de bloques de fusion como un candidato disponible en vez de un candidato no disponible, peo la presente descripcion no esta limitada por lo anterior. Por ejemplo, es tambien posible que se determine si cualquier otro candidato de bloque de fusion que mantiene el mismo vector de movimiento y el mismo valor del fndice de imagen de referencia que los bloques de fusion combinados ha sido ya incluido en la lista de candidatos de bloques de fusion, y si no hay tal candidato en la lista, el bloque de fusion combinado es anadido a la lista de candidatos de bloques de fusion como un candidato disponible en vez de un candidato no disponible. De este modo, evitando que el mismo candidato de bloque de fusion sea anadido otra vez, es posible anadir candidatos de bloques de fusion efectivos. Como resultado, la eficiencia de codificacion puede ser mejorada.
Tambien deberfa anotarse que se ha descrito en la presente realizacion que el bloque de fusion combinado generado es anadido a la lista de candidatos de bloques de fusion cuando hay un candidato no disponible en la lista de candidatos de bloques de fusion, pero la presente descripcion no esta limitada por lo anterior. Por ejemplo, es tambien posible en el S23 en la FIG. 8 que la determinacion de si hay o no un candidato no disponible en la lista de candidatos de bloques de fusion no se tome, pero el bloque de fusion combinado se calcule y se anada a la lista de candidatos de bloques de fusion. De este modo, es posible aumentar el intervalo de seleccion de los candidatos de bloques de fusion. Como resultado, la eficiencia de codificacion 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 prediccion entre establece un valor del rndice de candidato de bloque de fusion a “0”, el error de prediccion mfnimo a un error de prediccion (coste) del modo de estimacion de vector de movimiento, y la bandera de fusion a “0” (Paso S41). Aqm, el coste se calcula mediante, por ejemplo, la siguiente Ecuacion 1 del modelo de optimizacion R-D.
Coste = D + A x R (Ecuacion 1)
En la Ecuacion 1, D representa una distorsion de codificacion que es, por ejemplo, una suma de valores absolutos de diferencia de (a) un valor de pixel obtenido mediante la codificacion y decodificacion de un bloque actual mediante el uso de una imagen de prediccion generada por un cierto vector de movimiento y (b) un valor de pixel original del bloque actual. Ademas, R representa una cantidad de codificacion que es, por ejemplo, una cantidad de codificacion requerida para codificar el vector de movimiento usado en la generacion de la imagen de prediccion. A representa un metodo de Lagrange de multiplicadores indeterminados.
Entonces, la unidad 109 de control de prediccion entre determina si un valor del fndice del candidato de fusion es menor o no que el numero de candidatos de bloques de fusion del bloque actual, en otras palabras, si hay o no cualquier bloque que tenga la posibilidad de ser un candidato de bloque de fusion (Paso S42). Como resultado, si se determina que el valor del fndice del candidato de bloque de fusion es menor que el numero de candidatos de bloques de fusion (Sf en el Paso S42), entonces la unidad 109 de control de prediccion entre calcula un coste del candidato de bloque de fusion asignado con el valor del fndice del candidato de bloque de fusion (Paso S43). A continuacion, la unidad 109 de control de prediccion entre determina si el coste calculado del candidato de bloque de fusion es menor que el error de prediccion mfnimo (Paso S44). Como resultado, si el coste calculado del candidato de bloque de fusion es menor que el error de prediccion mfnimo (Sf en el Paso S44), entonces la unidad 109 de
5
10
15
20
25
30
35
40
45
50
55
control de prediccion entre actualiza el error de prediccion minimo, el valor del fndice del bloque de fusion, y el valor de la bandera de fusion (Paso S45). A continuacion, la unidad 109 de control de prediccion entre anade un valor “1” al valor del fndice del candidato de bloque de fusion (Paso S46), y el procesamiento se repite desde el S42 al S46. Si el coste calculado del candidato de bloque de fusion no es menor que el error de prediccion minimo (No en el Paso S44), entonces el proceso de actualizacion en el S45 no se realiza sino que el Paso 46 se realiza, y el procesamiento se repite desde el S42 al S46. Aquf, en el Paso S42, si el valor del fndice del candidato de bloque de fusion no es menor que el numero de candidatos de bloques de fusion (No en el Paso S42), en otras palabras, si no hay un candidato de bloque de fusion, entonces la unidad 109 de control de prediccion entre finalmente determina la bandera de fusion dejada finalmente y el valor del fndice de bloque de fusion (Paso S47).
Segun la presente realizacion de la presente descripcion, un nuevo candidato de bloque de fusion de prediccion bidireccional se calcula desde los candidatos de bloques de fusion, para mejorar la eficiencia de codificacion. Mas especfficamente, basado en los candidatos de bloques de fusion calculados desde bloques vecinos y el bloque co- ubicado, (a) un vector de movimiento y un valor del fndice de imagen de referencia de la direccion 0 de prediccion y (b) un vector de movimiento y un valor del fndice de imagen de referencia de la direccion 1 de prediccion son combinados para generar un bloque de fusion combinado de prediccion bidireccional, y entonces anadido a la lista de candidatos de bloques de fusion. Como resultado, la eficiencia de codificacion puede ser mejorada. Ademas, si hay un candidato no disponible en la lista de candidatos de bloques de fusion, un bloque de fusion combinado es generado y el candidato no disponible es reemplazado por el bloque de fusion combinado. De este modo, la eficiencia de codificacion puede ser mejorada sin incrementar un valor maximo del numero de candidatos de bloques de fusion.
Se deberfa anotar que ha sido descrito en la presente realizacion que la bandera de fusion es siempre anadida al flujo de bits en el modo de fusion, pero la presente descripcion no esta limitada por lo anterior. Por ejemplo, tambien es posible que sea forzada a seleccionar el modo de fusion segun a una forma o similar del bloque actual. En este caso, es posible que una cantidad de informacion sea reducida mediante la no adicion de la bandera de fusion al flujo de bits.
Se deberfa anotar que ha sido descrito en la presente realizacion que, en el modo de fusion, al menos un vector de movimiento y al menos un valor del fndice de imagen de referencia son copiados desde un bloque vecino del bloque actual y entonces usados para codificar el bloque actual, pero la presente descripcion no esta limitada por lo anterior. Por ejemplo, lo siguiente es tambien posible. En la misma forma que el modo de fusion, mediante el uso de candidatos de bloques de fusion generados como se muestra en la FIG. 6, al menos un vector de movimiento y al menos un valor del fndice 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 prediccion del bloque actual es 0, una bandera de omision es establecida a 1 y anadida al flujo de bits. Por otro lado, si cada dato de error de prediccion no es 0, la bandera de omision es establecida a 0 y la bandera de omision y el dato de error de prediccion son anadidos al flujo de bits (modo de omision de fusion).
Tambien deberfa anotarse que ha sido descrito en la presente realizacion que, en el modo de fusion, al menos un vector de movimiento y al menos un valor del fndice de imagen de referencia son copiados desde un bloque vecino del bloque actual y entonces usados para codificar el bloque actual, pero la presente descripcion no esta limitada por lo anterior. Por ejemplo, tambien es posible que un vector de movimiento en el modo de estimacion de vector de movimiento sea codificado mediante el uso de la lista de candidatos de bloques de fusion como se muestra en la FIG. 6. Mas especfficamente, es posible que un vector de movimiento de un candidato de bloque de fusion designado por el valor del fndice de bloque de fusion sea sustrafdo del vector de movimiento del modo de estimacion de vector de movimiento, para obtener una diferencia, y que la diferencia y el valor del fndice de candidato de bloque de fusion sean anadidos al flujo de bits. Ademas, lo siguiente tambien es posible. Mediante el uso del valor RefIdx_ME de fndice de imagen de referencia del modo de estimacion de movimiento y un valor RefIdx_Fusion de fndice de imagen de referencia del modo de fusion, se realiza un escalado en un vector MV_Fusion de movimiento del candidato de bloque de fusion. Entonces, un vector escaladoMV_Fusion de movimiento del candidato de bloque de fusion escalado es sustrafdo de los vectores de movimiento en el modo de estimacion de movimiento para obtener una diferencia. La diferencia y el valor del fndice del candidato de bloque de fusion son anadidos al flujo de bits. Este escalado puede ser realizado mediante el uso de la Ecuacion 2 siguiente:
escaladoMV_Fusion = MV_Fusionx(POC(RefIdx_ME) - curPOC )/(POC(RefIdx_Fusion) - curPOC) (Ecuacion 2)
Aquf, POC(RefIdx_ME) representa una ubicacion en un orden de visualizacion de una imagen de referencia indicada por un valor RefIdx_ME de fndice de imagen de referencia, POC(RefIdx_Fusion) representa una ubicacion en el orden de visualizacion de una imagen de referencia indicada por el valor RefIdx_Fusion, y curPOC representa una ubicacion en el orden de visualizacion de una imagen a ser codificada.
(Realizacion 2)
La FIG. 10 es un diagrama de bloques que muestra una estructura de un aparato de decodificacion de imagenes en movimiento que usa un metodo de decodificacion de imagenes en movimiento segun la Realizacion 2 de la presente descripcion.
5
10
15
20
25
30
35
40
45
50
55
Como se muestra en la FIG. 10, el aparato 200 de decodificacion de imageries en movimiento incluye una unidad 201 de decodificacion de longitud variable, una unidad 202 de cuantificacion inversa, una unidad 203 de transformacion ortogonal inversa, una memoria 204 de bloques, una memoria 205 de tramas, una unidad 206 de prediccion intra, una unidad 207 de prediccion entre, una unidad 208 de control de prediccion entre, una unidad 209 de calculo de candidatos de bloques de fusion, una memoria 210 de colPic, un sumador 211, y un conmutador 212.
La unidad 201 de decodificacion de longitud variable realiza decodificacion de longitud variable en un flujo de bits de entrada para obtener la informacion del tipo de imagen, la bandera de fusion, y el fndice del bloque de fusion, y un flujo de bits decodificado de longitud variable. La unidad 202 de cuantificacion inversa cuantifica inversamente el flujo de bits decodificado de longitud variable. La unidad 203 de transformacion 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 prediccion. La memoria 204 de bloques mantiene una secuencia de imagenes generada mediante la adiccion de los datos de imagen de error de prediccion a la imagen de prediccion en una forma bloque a bloque. La memoria 205 de tramas mantiene una secuencia de imagenes en una forma imagen a imagen. La unidad 206 de prediccion intra realiza prediccion intra en la secuencia de imagenes almacenada en la memoria 204 de bloques en una forma bloque a bloque, para generar datos de imagen de prediccion de un bloque actual a ser decodificado. La unidad 207 de prediccion entre realiza prediccion entre en la secuencia de imagenes almacenada en la memoria de tramas en una forma imagen a imagen, para generar datos de imagen de prediccion del bloque actual a ser decodificado.
La unidad 209 de calculo de candidatos de bloques de fusion deriva candidatos de bloques de fusion del modo de fusion, mediante el uso de informacion 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. Ademas, la unidad 209 de calculo de candidatos de bloques de fusion asigna cada bloque de fusion derivado con un valor correspondiente del fndice de bloque de fusion. Entonces, la unidad 209 de calculo de candidatos de bloques de fusion proporciona los candidatos de bloques de fusion y los valores del fndice de bloque de fusion a la unidad 208 de control de prediccion entre.
Si la bandera de fusion decodificada mediante la unidad 210 de decodificacion de longitud variable es “0”, en otras palabras, si el modo de prediccion no es el modo de fusion, la unidad 208 de control de prediccion entre genera imagen de prediccion entre usando la informacion decodificada del modo de estimacion de movimiento. Ademas, si la bandera de fusion es “1”, en otras palabras, si el modo de prediccion es el modo de fusion, entonces la unidad 208 de control de prediccion entre determina un vector de movimiento y un valor del fndice de imagen de referencia a ser usados en la prediccion entre desde la pluralidad de candidatos de bloques de fusion, basado en el valor del fndice del bloque de fusion decodificado, para generar imagen de prediccion entre. Ademas, la unidad 208 de control de prediccion entre provee a la memoria 210 de colPic de informacion de colPic que incluye el vector de movimiento y similares del bloque actual.
El sumador 211 anade los datos de prediccion generados por la unidad 206 de prediccion intra o la unidad 207 de prediccion entre a los datos de error de prediccion desde la unidad 203 de transformacion ortogonal inversa, para generar una secuencia de imagenes decodificadas.
La FIG. 11 es un diagrama de flujo de un compendio de un flujo de procesamiento de un metodo de decodificacion de imagenes en movimiento segun la presente realizacion.
La unidad 201 de decodificacion de longitud variable decodifica una bandera de fusion desde un flujo de bits (Paso S51). La unidad 208 de control de prediccion entre determina si la bandera de fusion es “1” o no (Paso S52). Como resultado, si la bandera de fusion es “1” (Sf en el Paso S52), entonces la unidad 209 de calculo de candidatos de bloques de fusion especifica candidatos de bloques de fusion desde los bloques vecinos y un bloque co-ubicado de un bloque actual a ser decodificado (Paso S53). En el mismo metodo al mostrado en la FIG. 8, la unidad 209 de calculo de candidatos de bloques de fusion genera un bloque de fusion combinado, y actualiza la lista de candidatos de bloques de fusion (Paso S54). De este modo, como en el procesamiento de codificacion, por ejemplo, la lista de candidatos de bloques de fusion mostrada en la FIG. 6 es generada desde la lista de candidatos de bloques de fusion mostrada en la FIG. 3B. La unidad 208 de control de prediccion entre determina un bloque de fusion desde el cual al menos un vector de movimiento y al menos un valor del fndice de imagen de referencia son copiados, segun el valor del fndice de bloque de fusion decodificado por la unidad 201 de decodificacion de longitud variable, y genera imagen de prediccion entre usando el bloque de fusion determinado (Paso S55). Por otro lado, en el Paso S52, si la bandera de fusion es “0”, entonces la unidad 208 de control de prediccion entre genera imagen de prediccion entre usando la informacion del modo de estimacion de vector de movimiento que es decodificado por la unidad 201 de decodificacion de longitud variable (Paso S56). Se deberfa anotar que, si el numero de candidatos de bloques de fusion especificado o generado en el S53 y S54 es uno, es posible no decodificar un valor del fndice de bloque de fusion sino estimar el valor del fndice de bloque de fusion como 0.
Segun la realizacion presente de la presente descripcion, un nuevo bloque de fusion de prediccion bidireccional es calculado desde los candidatos de bloques de fusion, para decodificar apropiadamente un flujo de bits con eficiencia de codificacion mejorada.
5
10
15
20
25
30
35
40
45
50
55
Mas especfficamente, basado en los candidatos de bloques de fusion calculados por los bloques vecinos y el bloque co-ubicado, (a) un vector de movimiento y un valor del fndice de imagen de referencia de la direccion 0 de prediccion y (b) un vector de movimiento y un valor del fndice de imagen de referencia de la direccion 1 de prediccion son combinados para generar un bloque de fusion combinado de prediccion bidireccional, y anadido a la lista de candidatos de bloques de fusion. Como resultado, es posible decodificar apropiadamente el flujo de bits con eficiencia de codificacion mejorada. Ademas, si hay un candidato no disponible en la lista de candidatos de bloques de fusion, un bloque de fusion combinado es calculado y el candidato no disponible es reemplazado por el bloque de fusion combinado. De este modo, es posible decodificar apropiadamente el flujo de bits con eficiencia de codificacion mejorada, sin aumentar un valor maximo del numero de candidatos de bloques de fusion.
(Realizacion 3)
El procesamiento descrito en cada una de las Realizaciones puede ser implementado simplemente en un sistema informatico independiente, mediante la grabacion, en un medio de grabacion, de un programa para implementar las configuraciones del metodo de codificacion de imagenes en movimiento (metodo de codificacion de imagenes) y el metodo de decodificacion de imagenes en movimiento (metodo de decodificacion de imagenes) descritos en cada una de las Realizaciones. El medio de grabacion puede ser cualquier medio de grabacion siempre y cuando el programa pueda ser grabado, tal como un disco magnetico, un disco optico, un disco optico magnetico, una tarjeta IC, y una memoria de semiconductores.
En adelante, se describiran las aplicaciones al metodo de codificacion de imagenes en movimiento (metodo de codificacion de imagenes) y el metodo de decodificacion de imagenes en movimiento (metodo de decodificacion de imagenes) descritos en cada una de las Realizaciones y sistemas que usan los mismos. El sistema tiene una caracterfstica de tener un aparato de codificacion y decodificacion de imagenes que incluye un aparato de codificacion de imagenes que usa el metodo de codificacion de imagenes y un aparato de decodificacion de imagenes que usa el metodo de decodificacion de imagenes. Se pueden cambiar otras configuraciones en el sistema segun sea apropiado dependiendo del caso.
La FIG. 12 ilustra una configuracion general de un sistema ex100 que proporciona contendido para implementar servicios de distribucion de contenidos. El area para proporcionar servicios de comunicacion esta dividida en celdas del tamano deseado, y las estaciones base ex106, ex107, ex108, ex109, y ex110 que son estaciones inalambricas fijas son emplazadas en cada celda.
El sistema ex100 que proporciona contenido esta conectado a dispositivos, tales como un ordenador ex111, un asistente digital personal (PDA) ex112, una camara ex113, un telefono movil ex114 y una consola de videojuegos ex115, a traves de Internet ex101, un proveedor ex102 de servicios de Internet, una red ex104 telefonica, asf como las estaciones base ex106 a ex110 respectivamente.
Sin embargo, la configuracion del sistema ex100 que proporciona contenido no esta limitada a la configuracion mostrada en la FIG. 12, y una combinacion en la cual cualquiera de los elementos esten conectados es aceptable. Ademas, cada dispositivo puede estar directamente conectado con la red ex104 telefonica, mas que a traves de las estaciones base ex106 a ex110, que son las estaciones inalambricas fijas. Ademas, los dispositivos pueden estar interconectados entre ellos a traves de una comunicacion inalambrica de corta distancia y otros.
La camara ex113, tal como una video camara digital, es capaz de capturar video. Una camara ex116, tal como una video camara digital, es capaz de capturar tanto imagenes fijas como video. Ademas, el telefono movil ex114 puede ser el que cumpla cualquiera de los estandares como Sistema Global para comunicaciones Moviles (GSM), Acceso Multiple por Division de Codigo (CDMA), Acceso Multiple por Division de Codigo de Banda Ancha (W-CDMA), Evolucion a Largo Plazo (LTE) y Acceso de Paquetes de Alta Velocidad (HSPA). Alternativamente, el telefono movil ex114 puede ser un Sistema de Telefono Util Personal (PHS).
En el sistema ex100 que proporciona contenido, un servidor ex103 de flujo de transmision esta conectado a la camara ex113 y otros a traves de la red ex104 telefonica y la estacion base ex109, que permiten la distribucion de imagenes en un espectaculo en vivo y otros. En tal distribucion, un contenido (por ejemplo, video de un espectaculo de musica en vivo) capturado por el usuario usando la camara ex113 es codificado como se describio anteriormente en cada una de las Realizaciones (esto es, las funciones de la camara como el aparato de codificacion de imagenes de la presente invencion), y el contenido codificado es transmitido al servidor ex103 de flujo de transmision. Por otro lado, el servidor ex103 de flujo de transmision lleva a cabo distribucion de flujos de los datos contenidos transmitidos a los clientes a su solicitud. Los clientes incluye el ordenador ex111, el pDa ex112, la camara ex113, el telefono movil 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 decodificacion de imagenes de la presente invencion).
Los datos capturados pueden ser codificados por la camara ex113 o el servidor ex103 de flujo de transmision que transmite los datos, o los procesos de codificacion pueden compartirse entre la camara ex113 y el servidor ex103 de flujo de transmision. Similarmente, los datos distribuidos pueden ser decodificados por los clientes o el servidor
5
10
15
20
25
30
35
40
45
50
55
60
ex103 de flujo de transmision, o los procesos de decodificacion pueden compartirse entre los clientes y el servidor ex103 de flujo de transmision. Ademas, los datos de las imagenes fijas y el video capturado por no solo la camara ex113 sino tambien por la camara ex116 pueden ser transmitidos al servidor ex103 de flujo de transmision a traves del ordenador ex111. Los procesos de codificacion pueden realizarse mediante la camara ex116, el ordenador ex111, o el servidor ex103 de flujo de transmision, o compartidos entre ellos.
Ademas, los procesos de codificacion y decodificacion pueden ser realizados por un LSI ex500 generalmente incluido en cada ordenador ex111 y los dispositivos. El LSI ex500 puede estar configurado de un unico chip o una pluralidad de chips. El software para codificar y decodificar el video puede estar integrado en algun tipo de medio de grabacion (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 codificacion y decodificacion pueden ser realizados usando el software. Ademas, cuando el telefono movil ex114 esta equipado con una camara, los datos de imagenes obtenidas por la camara pueden ser transmitidos. Los datos de video son datos codificados por el LSI ex500 incluido en el telefono movil ex114.
Ademas, el servidor ex103 de flujo de transmision puede estar compuesto de servidores y ordenadores, y puede descentralizar datos y procesar los datos descentralizados, grabar, o distribuir datos.
Como se describio 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 informacion 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 ningun derecho y un equipo particular puede implementar difusion personal.
Aparte del ejemplo del sistema ex100 que proporciona contenido, el menos un aparato de codificacion de imagenes en movimiento (aparato de codificacion de imagenes) y el aparato de decodificacion de imagenes en movimiento (aparato de decodificacion de imagenes) descritos en cada una de las Realizaciones puede ser implementado en un sistema ex200 de difusion digital ilustrado en la FIG. 13. Mas especfficamente, una estacion ex201 de difusion se comunica o transmite, a traves de ondas de radio a un satelite ex202 de difusion, datos multiplexados obtenidos mediante la multiplexacion de datos de audio y otros en datos de video. Los datos de video son datos codificados por el metodo de codificacion de imagenes en movimiento descrito en cada una de las Realizaciones (esto es, datos codificados por el aparato de codificacion de imagenes de la presente invencion). Tras recibir los datos multiplexados, el satelite ex202 de difusion transmite ondas de radio para difusion. Entonces, una antena ex204 de uso domestico con una funcion de recepcion de difusion de satelite recibe las ondas de radio. A continuacion, un dispositivo como un televisor (receptor) ex300 y un decodificador de television (STB) ex217 decodifican los datos multiplexados recibidos, y reproducen los datos decodificados (esto es, el dispositivo funciona como el aparato de codificacion de imagenes de la presente invencion).
Ademas, un lector/grabador ex218 (i) lee y decodifica los datos multiplexados grabados en un medio ex215 de grabacion, tal como un DVD y un BD, o (i) codifica senales de video en el medio ex215 de grabacion, y en algunos casos, escribe datos obtenidos mediante la multiplexacion de una senal de audio en los datos codificados. El lector/grabador ex218 puede incluir el aparato de decodificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento como se muestra en cada una de las Realizaciones. En este caso, las senales de video reproducidas son visualizadas en el monitor ex219, y pueden ser reproducidas por cualquier dispositivo o sistema que use el medio ex215 de grabacion en el cual los datos multiplexados estan grabados. Es tambien posible implementar el aparato de decodificacion de imagenes en movimiento en el decodificador de television ex217 conectado al cable ex203 para television por cable o a la antena ex204 para difusion satelital y/o terrestre, para visualizar las senales de video en el monitor ex219 del televisor ex300. El aparato de decodificacion de imagenes en movimiento puede implementarse no solo en el decodificador de television sino en el televisor ex300.
La FIG. 14 ilustra el televisor (receptor) ex300 que usa el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes 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 multiplexacion de datos de audio sobre datos de video, a traves de la antena ex204 o el cable ex203, etc. que recibe una difusion; una unidad ex302 de modulacion/demodulacion que demodula los datos multiplexados recibidos o modula datos en datos multiplexados a ser suministrados fuera; y una unidad ex303 de multiplexacion/demultiplexacion 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 senal en datos.
El televisor ex300 ademas incluye: una unidad ex306 de procesamiento de senal que incluye una unidad ex304 de procesamiento de senal de audio y una unidad ex305 de procesamiento de senal 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 codificacion de imagenes y el aparato de decodificacion de imagenes), respectivamente; y una unidad ex309 de salida que incluye un altavoz ex307 que proporciona la senal de audio decodificada, y una unidad ex308 de visualizacion que muestra la senal de video decodificada, tal como un monitor. Ademas, el televisor ex300 incluye una unidad ex317 de interfaz que incluye una unidad ex312 de entrada de operacion que recibe una entrada de una operacion de usuario. Ademas, 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 alimentacion que suministra alimentacion a cada
5
10
15
20
25
30
35
40
45
50
55
60
uno de los elementos. Ademas de la unidad ex312 de entrada de operacion, la unidad ex317 de interfaz puede incluir: un puente ex313 que esta conectado a un dispositivo externo, tal como el lector/grabador ex218; una unidad ex314 de ranura para habilitar el acoplamiento del medio ex216 de grabacion tal como una tarjeta SD; un controlador ex315 a ser conectado a un medio de grabacion externo, tal como un disco duro; y un modem ex316 a ser conectado a la red telefonica. Aquf, el medio ex216 de grabacion puede grabar electricamente informacion usando un elemento de memoria semiconductor no volatil/volatil de almacenamiento. Los elementos constituyentes del televisor ex300 estan conectados entre ellos a traves de un bus sfncrono.
Primero, se describira la configuracion en la cual el televisor ex300 decodifica datos multiplexados obtenidos desde fuera a traves de la antena ex204 y otros y reproduce los datos decodificados. En el televisor ex300, tras una operacion de usuario a traves de un mando ex220 a distancia y otros, la unidad ex303 de multiplexacion/demultiplexacion demultiplexa los datos multiplexados demodulados por la unidad ex302 de modulacion/demodulacion, bajo el control de la unidad ex310 de control que incluye una CPU. Ademas, la unidad ex304 de procesamiento de senal de audio decodifica los datos de audio demultiplexados, y la unidad ex305 de procesamiento de senal de video decodifica los datos de video demultiplexados, usando el metodo de decodificacion descrito en cada una de las Realizaciones, en el televisor ex300. La unidad ex309 de salida proporciona la senal de video y la senal de audio decodificadas de salida, respectivamente. Cuando la unidad ex309 de salida proporciona la senal de video y la senal de audio, las senales pueden ser almacenadas temporalmente en las memorias intermedias (buffers) ex318 y ex319, y otras para que las senales se reproduzcan en sincronfa entre ellas. Ademas, el televisor ex300 puede leer datos multiplexados no a traves de una difusion y otros sino desde el medio ex215 y ex216 de grabacion, tal como un disco magnetico, un disco optico, y una tarjeta SD. A continuacion, se describira una configuracion en la cual el televisor ex300 codifica una senal de audio y una senal de video, y transmite los datos afuera o escribe los datos en un medio de grabacion. En el televisor ex300, tras una operacion de usuario a traves de un mando ex220 a distancia y otros, la unidad ex304 de procesamiento de senal de audio codifica una senal de audio, y la unidad ex305 de procesamiento de senal de video codifica una senal de video, bajo el control de la unidad ex310 de control usando el metodo de codificacion descrito en cada una de las Realizaciones. La unidad ex303 multiplexa la senal de video y la senal de audio codificadas, y proporciona la senal resultante afuera. Cuando la unidad ex303 de multiplexacion/demultiplexacion multiplexa la senal de video y la senal de audio, las senales pueden ser almacenadas temporalmente en las memorias intermedias (buffers) ex320 y ex321, y otras para que las senales se reproduzcan en sincronfa entre ellas. Aquf, 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. Ademas, 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 modulacion/demodulacion y la unidad ex303 de multiplexacion/demultiplexacion, por ejemplo.
Ademas, el televisor ex300 puede incluir una configuracion para recibir una entrada AV desde un microfono o una camara ademas de la configuracion para obtener datos de audio y video desde una difusion o un medio de grabacion, y puede codificar los datos obtenidos. Aunque el televisor ex300 puede codificar, multiplexar, y proporcionar datos de salida en la descripcion, puede ser solo capaz de recibir, decodificar, y proporcionar datos de salida pero no de codificar, multiplexar y proporcionar datos de salida.
Ademas, cuando el lector/grabador ex218 lee o escribe datos multiplexados desde o en un medio de grabacion, 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 decodificacion o codificacion.
Como un ejemplo, la FIG. 15 ilustra una configuracion de una unidad ex400 de reproduccion/grabacion de informacion cuando los datos se leen o escriben desde o en un disco optico. La unidad ex400 de reproduccion/grabacion de informacion incluye elementos constituyentes ex401, ex402, ex403, ex404, ex405, ex406, y ex407 que seran descritos en adelante. El cabezal ex401 optico irradia un punto laser en una superficie de grabacion del medio ex215 de grabacion que es un disco optico para escribir informacion, y detecta luz reflejada desde la superficie de grabacion en el medio ex215 de grabacion para leer la informacion. La unidad ex402 de grabacion de modulacion dirige electricamente un laser semiconductor incluido en el cabezal ex401 optico, y modula la luz laser segun los datos grabados. La unidad ex403 de demodulacion de reproduccion amplifica una senal de reproduccion obtenida mediante la deteccion electrica de la luz reflejada desde la superficie de grabacion usando un foto detector incluido en el cabezal ex401 optico, y demodula la senal de reproduccion separando una componente de senal grabada en el medio ex215 de grabacion para reproducir la informacion necesaria. La memoria intermedia ex404 mantiene temporalmente la informacion a ser grabada en el medio ex215 de grabacion y la informacion reproducida desde el medio ex215 de grabacion. El motor ex405 de disco rota el medio ex215 de grabacion La unidad ex406 de control servo mueve el cabezal ex401 optico a una pista de informacion predeterminada mientras controla el controlador de rotacion del motor ex405 del disco para seguir el punto laser. La unidad ex407 de control del sistema controla en general la unidad ex400 de reproduccion/grabacion de informacion. Los procesos de lectura y escritura pueden ser implementados por la unidad ex407 de control del sistema usando varia informacion almacenada en la memoria intermedia ex404 y generando y anadiendo nueva informacion segun sea necesario, y a traves de la unidad ex402 de grabacion de modulacion, la unidad ex403 de demodulacion de reproduccion, y la unidad ex406 de control servo que graba y reproduce informacion a traves del cabeza ex401 optico 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.
5
10
15
20
25
30
35
40
45
50
55
Aunque el cabezal ex401 optico irradia un punto laser en la descripcion, puede realizar grabacion de alta densidad usando luz de campo cercano.
La FIG. 16 ilustra el medio ex215 de grabacion que es un disco optico. En la superficie de grabacion del medio ex215 de grabacion, gufas formadas por surcos en espiral, y una pista ex230 de informacion graba, por adelantado, informacion de direccion que indica una posicion absoluta en el disco segun los cambios y en la forma de los surcos de gufa. La informacion de direccion incluye informacion para determinar posiciones de bloques ex231 de grabacion que son una unidad para grabar datos. Reproducir la pista ex230 de informacion y leer la informacion de direccion en un aparato que graba y reproduce datos puede llevar a determinar las posiciones de los bloques de grabacion. Ademas, el medio ex215 de grabacion incluye un area ex233 de grabacion de datos, un area ex232 de circunferencia interior, y un area ex234 de circunferencia exterior. El area ex233 de grabacion de datos es un area para usar en la grabacion de datos de usuario. El area ex232 de circunferencia interior y el area ex234 de circunferencia exterior que estan dentro y fuera del area ex233 de grabacion de datos, respectivamente son para uso especffico excepto para grabar los datos de usuario. La unidad 400 de reproduccion/grabacion de informacion lee y escribe audio codificado, datos de video codificado, o datos multiplexados obtenidos mediante la multiplexacion de audio y datos de video codificados, desde y en el area ex233 de grabacion de datos del medio ex215 de grabacion.
Aunque un diso optico que tiene una capa, tal como un DVD y un BD se describen como un ejemplo en la descripcion, el disco optico no esta limitado a tal, y puede ser un disco optimo que tenga una estructura multicapa y que sea capaz de ser grabado en otra parte aparte de la superficie. Ademas, el disco optico puede tener una estructura para grabacion/reproduccion multidimensional, tal como grabacion de informacion usando luces de colores con diferentes longitudes de onda en la misma porcion del disco optico y para grabar informacion que tenga diferentes capas desde varios angulos.
Ademas, un coche ex210 que tenga una antena ex205 puede recibir datos desde el satelite ex202 y otros, y reproducir video en un dispositivo de visualizacion tal como un sistema ex211 de navegacion del coche instalado en el coche ex210, en el sistema ex200 de difusion digital. Aquf, una configuracion del sistema ex211 de navegacion del coche sera una configuracion, por ejemplo, que incluya una unidad de recepcion de GPS desde la configuracion ilustrada en la FIG. 14. Lo mismo sera verdad para la configuracion del ordenador ex111, el telefono movil ex114, y otros.
La FIG. 17A ilustra el telefono movil ex114 que usa el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento descritos en las Realizaciones. El telefono movil ex114 incluye: una antena ex350 para transmitir y recibir ondas de radio a traves de la estacion base ex110; una unidad ex365 de camara capaz de capturar imagenes fijas y en movimiento; y una unidad ex358 de visualizacion tal como una pantalla de cristal lfquido para visualizar los datos tales como video decodificado capturado por la unidad ex365 de camara o recibidos por la antena ex350. El telefono movil ex114 ademas incluye: una unidad de cuerpo principal que incluye una unidad ex366 de teclas de operacion; 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 microfono para entrada de audio; una unidad ex367 de memoria para almacenar video o imagenes fijas, audio grabado, datos codificados o decodificados del video recibido, las imagenes fijas, e-mails, u otros; y una unidad ex364 de ranura que es una unidad de interfaz para medios de grabacion que almacena datos en el mismo modo que la unidad ex367 de memoria.
A continuacion, se describira un ejemplo de una configuracion del telefono movil ex114 con referencia a la FIG. 17B. En el telefono movil ex114, una unidad ex360 de control principal disenada para controlar en general cada unidad del cuerpo principal incluyendo la unidad ex358 de visualizacion ademas de la unidad ex366 de teclas de operacion esta conectada mutuamente, a traves de un bus ex370 sfncrono, a una unidad ex361 de circuito de alimentacion, una unidad ex362 de control de entrada de operacion, una unidad ex355 de procesamiento de senal de video, una unidad ex363 de interfaz de camara, una unidad ex359 de control de pantalla de cristal lfquido (LCD), una unidad ex352 de modulacion/demodulacion, una unidad ex353 de multiplexacion/demultiplexacion, una unidad ex354 de procesamiento de senal 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 operacion de usuario, la unidad ex361 de circuito de alimentacion suministra a las unidades respectivas alimentacion desde un paquete de baterfas para activar el telefono movil ex114.
En el telefono movil ex114, la unidad ex354 de procesamiento de senal de audio convierte la senal de audio recogida por la unidad ex356 de entrada de audio en modo de conversacion de voz en senales de audio digitales bajo el control de la unidad ex360 de control principal incluyendo una CPU, ROM, y RAM. Entonces, la unidad ex352 de modulacion/demodulacion realiza procesamiento de espectro ensanchado en las senales de audio digitales, y la unidad ex351 de transmision y recepcion realiza la conversion digital a analogico y conversion de frecuencia sobre los datos, para transmitir los datos resultantes a traves de la antena ex350. Tambien, en el telefono movil ex114, la unidad ex351 de transmision y recepcion amplifica los datos recibidos por la antena ex350 en modo de conversacion de voz y realiza conversion de frecuencia y la conversion analogica a digital sobre los datos. Entonces, la unidad ex352 de modulacion/demodulacion realiza el procesamiento de espectro ensanchado inverso sobre los datos, y la
5
10
15
20
25
30
35
40
45
50
55
unidad ex354 de procesamiento de senal de audio la convierte en senales de audio analogicas, para sacarlas a traves de la unidad ex357 de salida de audio.
Ademas, cuando se transmite un e-mail en el modo de comunicacion de datos, los datos de texto del e-mail introducidos mediante la operacion de la unidad ex366 de teclas de operacion y otros del cuerpo principal son enviados a la unidad ex360 de control principal a traves de la unidad ex362 de control de entrada de operacion. La unidad ex360 de control principal causa que la unidad ex352 de modulacion/demodulacion realice procesamiento de espectro ensanchado en los datos de texto, y la unidad ex351 de transmision y recepcion realiza la conversion digital a analogico y la conversion de frecuencia en los datos resultantes para transmitir los datos a la estacion base ex110 a traves 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 visualizacion.
Cuando se transmiten video, imagenes fijas, o video y audio en el modo de comunicacion de datos, la unidad ex355 de procesamiento de senal de video comprime y codifica senales de video suministradas desde la unidad ex365 de camara usando el metodo de codificacion de imagenes en movimiento mostrado en cada una de las Realizaciones (esto eso, funciona como el aparato de codificacion de imagenes de la presente invencion), y transmite los datos de video codificado a la unidad ex353 de multiplexacion/demultiplexacion. En contraste, durante la captura de video, imagenes fijas, y otros, de la unidad ex365 de camara, la unidad ex354 de procesamiento de senal de audio codifica senales de audio recogidas por la unidad ex356 de entrada de audio, y transmite los datos de audio codificados a la unidad ex353 de multiplexacion/demultiplexacion.
La unidad ex353 de multiplexacion/demultiplexacion multiplexa los datos de video codificado suministrado desde la unidad ex355 de procesamiento de senal de video y los datos de audio codificado suministrados desde la unidad ex354 de procesamiento de senal de audio, usando un metodo predeterminado. Entonces, la unidad ex352 de modulacion/demodulacion (unidad de circuito de modulacion/demodulacion) realiza procesamiento de espectro ensanchado en los datos multiplexados, y la unidad ex351 de transmision y recepcion realiza conversion digital a analogico y conversion de frecuencia en los datos para transmitir los datos resultantes a traves de la antena ex350.
Cuando los datos recibidos de un archivo de video que esta enlazado a una pagina Web y otros en el modo de comunicacion de datos cuando se recibe un email con video y/o audio adjunto, para decodificar los datos multiplexados recibidos a traves de la antena ex350, la unidad ex353 de multiplexacion/demultiplexacion 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 senal de video los datos de video codificados y a la unidad ex354 de procesamiento de senal de audio los datos de audio codificados, a traves del bus ex370 sfncrono. La unidad ex355 de procesamiento de senal de video decodifica la senal de video usando un metodo de decodificacion de imagenes en movimiento correspondiente con el metodo de codificacion de imagenes en movimiento en cada una de las Realizaciones (esto es, funciona como el aparato de decodificacion de imagenes de la presente invencion), y entonces la unidad ex358 de visualizacion muestra, por ejemplo, el video e imagenes fijas incluidas en el archivo de video enlazado a la pagina Web a traves de la unidad ex359 de control del LCD. Ademas, la unidad ex354 de procesamiento de senal de audio decodifica la senal de audio, y la unidad ex357 de salida de audio proporciona el audio.
Ademas, similarmente al televisor ex300, un terminal tal como el telefono movil ex114 probablemente tenga 3 tipos de configuraciones de implementacion incluyendo no solo (i) un terminal de transmision y recepcion que incluye tanto un aparato de codificacion como un aparato de decodificacion, sino tambien (ii) un terminal de transmision que incluye solo un aparato de codificacion y (iii) un terminal de recepcion que incluye solo un aparato de decodificacion. Aunque el sistema ex200 de difusion digital recibe y transmite los datos multiplexados obtenidos mediante la multiplexacion de datos de audio sobre datos de video en la descripcion, los datos multiplexados pueden ser datos obtenidos mediante la multiplexacion 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 si.
Como tal, el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento en cada una de las Realizaciones pueden ser usados en cualquiera de los dispositivos y sistemas descritos. Asf, se pueden obtener las ventajas descritas en cada una de las Realizaciones.
Ademas, la presente invencion no esta limitada a las Realizaciones, y son posibles varias modificaciones y revisiones sin salirse del alcance de la presente invencion.
(Realizacion 4)
Los datos de video pueden ser generados mediante la conmutacion, segun sea necesario, entre (i) el metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes en movimiento mostrado en cada una de las Realizaciones y (ii) un metodo de codificacion de imagenes en movimiento o un aparato de codificacion de imagenes en movimiento en conformidad con un estandar diferente, tal como MPEG-2, MPEG4-AVC, y VC-1.
Aquf, cuando se genera una pluralidad de datos de video conforme a los diferentes estandares y se decodifica a continuacion, los metodos de decodificacion necesitan ser seleccionados para ajustarse a los diferentes estandares.
5
10
15
20
25
30
35
40
45
50
55
60
Sin embargo, dado que no se puede detectar con que estandar de la pluralidad de los datos de video a ser decodificados, hay un problema de que no se pueda seleccionar un metodo de decodificacion apropiado.
Para resolver el problema, los datos multiplexados obtenidos mediante la multiplexacion de datos de audio y otros sobre datos de video tiene una estructura que incluye informacion de identificacion que indica a que estandar se ajustan los datos de video. En adelante se describira la estructura especffica de los datos multiplexados que incluyen los datos de video generados en el metodo de codificacion de imagenes en movimiento y por el aparato de codificacion de imagenes 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 multiplexacion de al menos uno entre un flujo de video, un flujo de audio, un flujo de graficos de presentacion (PG), y un flujo de graficos interactivos. El flujo de video representa video primario y video secundario de una pelfcula, 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 graficos de representacion representan subtftulos de la pelfcula. Aquf, el video primario es video normal a ser visualizado en una pantalla, y el video secundario es video a ser visualizado en una ventana mas pequena en el video primario. Ademas, el flujo de graficos interactivo representa una pantalla interactiva a ser generada mediante la disposicion de los componentes del GUI en una pantalla. El flujo de video es codificado en el metodo de codificacion de imagenes en movimiento o mediante el aparato de codificacion de imagenes en movimiento en cada una de las Realizaciones, o en un metodo de codificacion de imagenes en movimiento o mediante un aparato de codificacion de imagenes en movimiento en conformidad con un estandar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1. El flujo de audio esta codificado segun un estandar, 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 esta asignado en el flujo de video a ser usado por el video de una pelfcula, 0x1100 a 0x111F estan asignados a los flujos de audio, 0x1200 a 0x121F estan asignados a los flujos de graficos de presentacion, 0x1400 a 0x141F estan asignados a los flujos de graficos interactivos, 0x1B00 a 0x1B1F estan asignados a los flujos de video a ser usados por el video secundario de la pelfcula, y 0x1A00 a 0x1A1F estan asignados a los flujos de audio a ser usados por el video secundario a ser mezclado con el audio primario.
La FIG. 19 ilustra esquematicamente como 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 ademas en paquetes ex237 TS y paquetes ex240 TS, respectivamente. Similarmente, los datos del flujo ex241 de graficos de presentacion y datos de un flujo ex244 de graficos interactivos son transformados en un flujo de paquetes ex242 PES y un flujo de paquetes ex245 PES, y ademas 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 como un flujo de video es almacenado en un flujo de paquetes PES en mas 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 imagenes como imagenes I, imagenes B, e imagenes P cada una de las cuales es una unidad de presentacion de video, y las imagenes 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 Presentacion (PTS) que indica un tiempo de visualizacion de la imagen, y una Marca de Tiempo de Decodificacion (DTS) que indica un momento de decodificacion 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 informacion, 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 asf en paquetes origen de 192 bytes. Los paquetes origen son escritos en los datos multiplexados. Las Cabeceras Extra TP almacenan informacion 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 numeros que aumentan desde la cabecera de los datos multiplexados son llamados numeros de paquetes origen (SPN).
Cada uno de los paquetes TS incluidos en los datos multiplexados incluye no solo flujos de audio, video, subtftulos y otros, sino tambien 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 sf es registrada a cero. La PMT almacena PIDs de los flujos de video, audio, subtftulos y otros incluidos en los datos multiplexados, e informacion de atributos de los flujos correspondientes a los PIDs. La PMT tambien tiene varios descriptores relativos a los datos multiplexados. Los descriptores tienen informacion tal como informacion de control de copia que muestra si la copia de los datos multiplexados esta permitida o no. La PCR almacena informacion de tiempo STC correspondiente a una ATS que
5
10
15
20
25
30
35
40
45
50
55
muestra cuando el paquete PCR es transferido a un decodificador, para lograr la sincronizacion 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. Informacion tal como la informacion de control de copia es descrita en los descriptores. Tras los descriptores, se dispone una pluralidad de piezas de informacion de flujo relativos a los flujos incluidos en los datos multiplexados. Cada pieza de informacion de flujo incluye descriptores de flujo cada uno describiendo informacion, tal como un tipo de flujo para identificar un codec de compresion de un flujo, un PID del flujo, e informacion de atributos del flujo (tal como una tasa de trama o una relacion de aspecto). Los descriptores de flujo son iguales en numero al numero de flujos en los datos multiplexados.
Cuando los datos multiplexados son grabados en un medio de grabacion y otros, son grabados junto con archivos de informacion de datos multiplexados.
Cada uno de los archivos de informacion de datos multiplexados es informacion de gestion de los datos multiplexados como se muestra en la FIG. 23. Los archivos de informacion de datos multiplexados se corresponden uno a uno con los datos multiplexados, y cada uno de los archivos incluye informacion de datos multiplexados, informacion 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 reproduccion, y un momento de fin de reproduccion. La tasa de sistema indica la tasa de transferencia maxima en la cual un decodificador objetivo del sistema que sera descrito mas tarde transfiere los datos multiplexados a un filtro PID. Los intervalos de las ATS incluidas en los datos multiplexados son establecidas a no mas altas que una tasa de sistema. El momento de inicio de reproduccion indica un PTS en una trama de video en la cabecera de los datos multiplexados. Un intervalo de una trama es anadido a un PTS en una trama de video en el final de los datos multiplexados, y el PTS se establece al momento final de reproduccion.
Como se muestra en la FIG. 24, una pieza de informacion de atributo es registrada en la informacion de atributo de flujo, para cada PID de cada flujo incluido en los datos multiplexados. Cada pieza de informacion de atributo tiene informacion diferente segun si el flujo correspondiente es un flujo de video, un flujo de audio, un flujo de graficos de representacion, o un flujo de graficos interactivos. Cada pieza de informacion de atributo de flujo de video porta informacion que incluye que tipo de codec de compresion es usado para comprimir el flujo de video, y la resolucion, relacion de aspecto y tasa de trama de las piezas de datos de imagenes que son incluidas en el flujo de video. Cada pieza de informacion de atributo de flujo de audio porta informacion que incluye que tipo de codec de compresion es usado para comprimir el flujo de audio, cuantos canales son incluidos en el flujo de audio, que idioma soporta el flujo de audio, y como de alta es la frecuencia de muestreo. La informacion de atributo de flujo de video y la informacion de atributo de flujo de audio son usadas para inicializar un decodificador antes de que el reproductor reproduzca la informacion.
En la presente realizacion, los datos multiplexados a ser usados son de un tipo de flujo incluido en la PMT. Ademas, cuando los datos multiplexados son grabados en un medio de grabacion, se usa la informacion de atributo del flujo de video incluida en la informacion de los datos multiplexados. Mas especfficamente, el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones incluyen un paso o una unidad para asignar informacion unica que indique los datos de video generados por el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento en cada una de las Realizaciones, al tipo de flujo incluido en la PMT o la informacion de atributo de flujo de video. Con la configuracion, los datos de video generados por el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones se pueden distinguir de datos de video que se ajustan a otro estandar.
Ademas, la FIG. 25 muestra pasos del metodo de decodificacion de imagenes en movimiento segun la presente realizacion. En el Paso exS100, el tipo de flujo incluido en la PMT o la informacion de atributo de flujo de video se obtiene desde los datos multiplexados. A continuacion, en el Paso exS101, se determina si el tipo de flujo o la informacion de atributo de flujo de video indican o no que los datos multiplexados son generados por el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento en cada una de las Realizaciones. Cuando se determina que el tipo de flujo o la informacion de atributo de flujo de video indican que los datos multiplexados son generados por el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento en cada una de las Realizaciones, en el Paso exS102, se realiza la decodificacion mediante el metodo de decodificacion de imagenes en movimiento en cada una de las Realizaciones. Ademas, cuando el tipo de flujo o la informacion de atributo de flujo de video indican conformidad con los estandares convencionales, tales como MPEG-2, MPEG4-AVC, y VC-1, en el Paso exS103, se realiza la decodificacion mediante un metodo de decodificacion de imagenes en movimiento en conformidad con los estandares convencionales.
5
10
15
20
25
30
35
40
45
50
55
Como tal, asignar un nuevo valor unico al tipo de flujo o la informacion de atributo de flujo de video permite determinar si el metodo de decodificacion de imagenes en movimiento o el aparato de decodificacion de imagenes en movimiento que son descritos en cada una de las Realizaciones pueden realizar decodificacion o no. Aun cuando los datos multiplexados se ajustan a un estandar diferente, se puede seleccionar un metodo o aparato de decodificacion apropiado. Asf, se vuelve posible decodificar informacion sin errores. Ademas, el metodo o aparato de codificacion de imagenes en movimiento, o el metodo o aparato de decodificacion de imagenes en movimiento en la presente realizacion se pueden usar en los dispositivos y sistemas descritos anteriormente.
(Realizacion 5)
Cada uno del metodo de codificacion de imagenes en movimiento, el aparato de codificacion de imagenes en movimiento, el metodo de decodificacion de imagenes en movimiento, y el aparato de decodificacion de imagenes en movimiento en cada una de las Realizaciones se consigue tfpicamente 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 configuracion del LSI ex500 que esta hecho en un chip. El LSI ex500 incluye los elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, y ex509 que seran descritos a continuacion, y los elementos estan conectados entre si a traves de un bus ex510. La unidad ex505 de circuito de alimentacion es activada por el suministro a cada uno de los elementos cuando la unidad ex505 de circuito de alimentacion se enciende.
Por ejemplo, cuando se realiza la codificacion, el LSI ex500 recibe una senal AV desde un microfono ex117, una camara ex113, y otros a traves 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 senal 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 segun la cantidad y velocidad de procesamiento a ser transmitidos a una unidad ex507 de procesamiento de senal. Entonces, la unidad ex507 de procesamiento de senal codifica una senal de audio y/o una senal de video. Aquf, la codificacion de la senal de video es la codificacion descrita en cada una de las Realizaciones. Ademas, la unidad ex507 de procesamiento de senal 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 estacion base ex107, o escritos en el medio ex215 de grabacion. Cuando los conjuntos de datos son multiplexados, los datos deberfan ser almacenados temporalmente en la memoria intermedia ex508 para que los conjuntos de datos se sincronicen entre si.
Aunque la memoria ex511 es un elemento fuera del LSI ex500, se puede incluir en el LSI ex500. La memoria intermedia ex508 no esta limitada a una memoria intermedia, sino que puede estar compuesta de memorias intermedias. Ademas, el LSI ex500 puede estar hecho en un chip o una pluralidad de chips.
Ademas, 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 configuracion de la unidad ex501 de control no esta limitada a tales. Por ejemplo, la unidad ex507 de procesamiento de senal puede ademas incluir una CPU. La inclusion de otra CPU en la unidad ex507 de procesamiento de senal puede mejorar la velocidad de procesamiento. Ademas, como otro ejemplo, la CPU ex502 puede servir como o ser una parte de la unidad ex507 de procesamiento de senal, y, por ejemplo, puede incluir una unidad de procesamiento de senal de audio. En tal caso, la unidad ex501 de control incluye la unidad ex507 de procesamiento de senal o la CPU ex502 incluyendo una parte de la unidad ex507 de procesamiento de senal.
El nombre usado aquf es LSI, pero tambien puede llamarse IC, sistema LSI, super LSI, o ultra LSI dependiendo del grado de integracion.
Ademas, los modos de conseguir la integracion no estan limitados al LSI, y un circuito especial o un procesador de proposito general etcetera pueden tambien conseguir la integracion. La Matriz de Puertas Programables en Campo (FPGA) puede ser programada para permitir la reconfiguracion de la conexion o se puede usar la configuracion de un LSI para el mismo proposito.
En el futuro, con los adelantos en tecnologfa de semiconductores, una nueva tecnologfa puede reemplazar al LSI. Los bloques funcionales se pueden integrar usando tal tecnologfa. La posibilidad es que la presente invencion sea aplicada en biotecnologfa.
(Realizacion 6)
Cuando los datos de video generados en el metodo de codificacion de imagenes en movimiento o mediante el aparato de codificacion de imagenes en movimiento descrito en cada una de las Realizaciones son decodificados, comparado con cuando los datos de video se ajustan a un estandar convencional, tal como MPEG-2, MPEG4-AVC y VC-1 son decodificados, la cantidad de procesamiento probablemente aumenta. Asf, el LSI ex500 necesita ser configurado a una frecuencia portadora mas alta que la de la CPU ex502 para usarse cuando los datos de video son decodificados ajustandose a un estandar convencional. Sin embargo, cuando la frecuencia portadora se configura mas alta, hay un problema de que el consumo de potencia aumenta.
5
10
15
20
25
30
35
40
45
50
55
60
Para solucionar el problema, el aparato de decodificacion de imageries en movimiento, tal como el televisor ex300 y el LSI ex500 son configurados para determinar a que estandar se ajustan los datos de video, y conmutar entre las frecuencias portadoras segun el estandar determinado. La FIG. 27 ilustra una configuracion ex800 en la presente realizacion. Una unidad ex803 de conmutacion de frecuencia portadora establece una frecuencia portadora a una frecuencia portadora mas alta cuando los datos de video son generados por el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones. Entonces, la unidad ex803 de conmutacion de frecuencia portadora da instrucciones a una unidad ex801 de procesamiento de decodificacion que ejecuta el metodo de decodificacion de imagenes en movimiento descrito en cada una de las Realizaciones para decodificar los datos de video. Cuando los datos de video se ajustan al estandar convencional, la unidad ex803 de conmutacion de frecuencia portadora establece una frecuencia portadora a una frecuencia portadora mas baja que aquella de los datos de video generados por el metodo de codificacion de imagenes en movimiento o el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones. Entonces, la unidad ex803 de conmutacion de frecuencia portadora da instrucciones a la unidad ex802 de procesamiento de decodificacion que se ajusta al estandar convencional para decodificar los datos de video.
Mas especfficamente, la unidad ex803 de conmutacion de frecuencia portadora incluye la CPU ex502 y la unidad ex512 de control de frecuencia portadora en la FIG. 26. Aquf, cada una de la unidad ex801 de procesamiento de decodificacion que ejecuta el metodo de decodificacion de imagenes en movimiento descrito en cada una de las Realizaciones y la unidad ex802 de procesamiento de decodificacion que se ajusta al estandar convencional se corresponden con la unidad ex507 de procesamiento de senal en la FIG. 26. La CPU ex502 determina a que estandar se ajustan los datos de video. Entonces, la unidad ex512 de control de frecuencia portadora determina una frecuencia portadora basado en una senal de la CPU ex502. Ademas, la unidad ex507 de procesamiento de senal decodifica los datos de video basado en la senal de la CPU ex502. Por ejemplo, la informacion de identificacion descrita en la Realizacion 4 es usada probablemente para identificar los datos de video. La informacion de identificacion no esta limitada a la descrita en la Realizacion 4 sino que puede ser cualquier informacion mientras que la informacion indique a que estandar se ajustan los datos de video. Por ejemplo, cuando se puede determinar a que estandar se ajustan los datos de video basandose en una senal externa para determinar que los datos de video son usados para un televisor o un disco, etc., la determinacion puede hacerse basandose en tal senal externa. Ademas, la CPU ex502 selecciona una frecuencia portadora basandose en, por ejemplo, una tabla de busqueda en la cual se asocian los estandares 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 busqueda en la memoria intermedia ex508 y en una memoria interna de un LSI, y con referencia a la tabla de busqueda por la CPU ex502.
La FIG. 28 ilustra los pasos para ejecutar un metodo en la presente realizacion. Primero, en el Paso exS200, la unidad ex507 de procesamiento de senal obtiene informacion de identificacion desde los datos multiplexados. A continuacion, en el Paso exS201, la CPU ex502 determina si los datos de video son generados o no por el metodo de codificacion y el aparato de codificacion descritos en cada una de las Realizaciones, basandose en la informacion de identificacion. Cuando se generan los datos de video mediante el metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones, en el Paso exS202, la CPU ex502 transmite una senal para establecer la frecuencia portadora a una frecuencia portadora mas 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 mas alta. Por otro lado, cuando la informacion de identificacion indica que los datos de video se ajustan al estandar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1, en el Paso exS203, la CPU ex502 transmite una senal para establecer la frecuencia portadora a una frecuencia portadora mas 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 mas baja que en el caso donde los datos de video son generados por el metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones.
Ademas, junto con la conmutacion de las frecuencias portadoras, el efecto de conservacion 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 mas baja, el voltaje a aplicar al LSI ex500 o al aparato que incluye el LSI ex500 es probablemente establecido a un voltaje mas bajo que en el caso donde la frecuencia portadora es establecida mas alta.
Ademas, cuando la cantidad de procesamiento para decodificar es mayor, la frecuencia portadora puede establecerse mas alta, y cuando la cantidad de procesamiento para decodificar es menor, la frecuencia portadora puede establecerse mas baja como el metodo para establecer la frecuencia portadora. Asf, el metodo de establecimiento no esta 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 metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones, la frecuencia portadora se establece probablemente en orden inverso a los establecimientos descritos anteriormente.
5
10
15
20
25
30
35
40
45
50
55
60
Ademas, el metodo para establecer la frecuencia portadora no esta limitado al metodo para establecer la frecuencia portadora mas baja. Por ejemplo, cuando la informacion de identificacion indica que los datos de video son generados por el metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes 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 mas alto. Cuando la informacion de identificacion indica que los datos de video se ajustan al estandar 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 mas bajo. Como otro ejemplo, cuando la informacion de identificacion indica que los datos de video son generados por el metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones, la conduccion de la CPU ex502 no es probable que tenga que ser suspendida. Cuando la informacion de identificacion indica que los datos de video se ajustan al estandar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1, la conduccion de la CPU ex502 es probablemente suspendida en un momento dado porque la CPU ex502 tiene capacidad de procesamiento extra. Aun cuando la informacion de identificacion indica que los datos de video son generados por el metodo de codificacion de imagenes en movimiento y el aparato de codificacion de imagenes en movimiento descritos en cada una de las Realizaciones, en el caso donde la CPU ex502 tiene capacidad de procesamiento extra, la conduccion de la CPU ex502 es probablemente suspendida en un momento dado. En tal caso, el tiempo de suspension es probablemente establecido mas corto que aquel en el caso en que la informacion de identificacion indica que los datos de video se ajustan al estandar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1.
En consecuencia, el efecto de conservacion de potencia puede mejorarse mediante la conmutacion entre las frecuencias portadoras segun el estandar al cual se ajusten los datos de video. Ademas, cuando el LSI ex500 o el aparato que incluye el LSI ex500 son conducidos usando una baterfa, la vida de la baterfa puede extenderse con el efecto de conservacion de potencia.
(Realizacion 7)
Hay casos donde una pluralidad de datos de video que se ajustan a diferentes estandares, son proporcionados a los dispositivos y sistemas, tal como un televisor y un telefono movil. Para permitir la decodificacion de la pluralidad de datos de video que se ajustan a diferentes estandares, la unidad ex507 de procesamiento de senal del LSI ex500 necesita ajustarse a los diferentes estandares. 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 senal que se ajustan a los estandares respectivos.
Para resolver el problema, lo que se concibe es una configuracion en la cual la unidad de procesamiento de decodificacion para implementar el metodo de decodificacion de imagenes en movimiento descrito en cada una de las Realizaciones y la unidad de procesamiento de decodificacion que se ajusta al estandar convencional, tal como MPEG-2, MPEG4-AVC, y VC-1 son compartidas parcialmente. Ex900 en la FIG. 30A muestra un ejemplo de la configuracion. Por ejemplo, el metodo de decodificacion de imagenes en movimiento descrito en cada una de las Realizaciones y el metodo de decodificacion de imagenes en movimiento que se ajusta a MPEG4-AVC tienen, parcialmente en comun, los detalles del procesamiento, tal como codificacion de entropfa, cuantificacion inversa, filtrado de desbloqueo, y prediccion de compensacion de movimiento. Los detalles del procesamiento a ser compartidos probablemente incluyen el uso de una unidad ex902 de procesamiento de decodificacion que se ajusta a MPEG4-AVC. En contraste, una unidad ex901 de procesamiento de decodificacion dedicada es usada probablemente para otros procesamientos unicos a la presente invencion. Dado que la presente invencion esta caracterizada por procesamiento de prediccion intra en particular, por ejemplo, la unidad ex901 de procesamiento de decodificacion dedicada se usa para el procesamiento de prediccion intra. De otra manera, la unidad de procesamiento de decodificacion es compartida probablemente por uno entre codificacion de entropfa, cuantificacion inversa, filtrado de desbloqueo, y compensacion de movimiento, u otros los procesamientos. La unidad de procesamiento de decodificacion para implementar el metodo de decodificacion de imagenes en movimiento descrito en cada una de las Realizaciones puede compartirse para compartir el procesamiento, y una unidad de procesamiento de decodificacion dedicada puede usarse para procesar unicamente la del MPEG4-AVC.
Ademas, ex1000 en la FIG. 30B muestra otro ejemplo en el que el procesamiento es parcialmente compartido. Este ejemplo usa una configuracion que incluye una unidad ex1001 de procesamiento de decodificacion dedicada que soporta el procesamiento unico a la presente invencion, una unidad ex1002 de procesamiento de decodificacion dedicada que soporta el procesamiento unico a otra estandar convencional, y una unidad ex1003 de procesamiento de decodificacion que soporta el procesamiento compartido entre el metodo de decodificacion de imagenes en movimiento en la presente invencion y el metodo de decodificacion de imagenes en movimiento convencional. Aquf, las unidades ex1001 y ex1002 de procesamiento de decodificacion no estan necesariamente especializadas para el procesamiento de la presente invencion y el procesamiento de los estandares convencionales, respectivamente, y pueden ser las capaces de implementar procesamiento general. Ademas, la configuracion de la presente realizacion puede implementarse mediante el LSI ex500.
Como tal, reducir la escala del circuito del LSI y reducir el coste es posible compartiendo la unidad de procesamiento de decodificacion para el procesamiento a ser compartido entre el metodo de decodificacion de imagenes en
5
10
15
20
25
30
35
40
movimiento en la presente invencion y el metodo de decodificacion de imagenes en movimiento en conformidad con el estandar convencional.
[Aplicabilidad Industrial]
El metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento segun la presente descripcion son capaces de ser aplicados a cualquier dato multimedia y mejorar una tasa de compresion. Por ejemplo, son adecuados como el metodo de codificacion de imagenes en movimiento y el metodo de decodificacion de imagenes en movimiento para acumulacion, transmision, comunicaciones, y similares usando telefonos moviles, aparatos de DVD, ordenadores personales, y similares.
[Lista de Signos de Referencia]
100 aparato de codificacion de imagenes en movimiento
101 unidad de transformacion ortogonal
102 unidad de cuantificacion
103 unida de cuantificacion inversa
104 unidad de transformacion ortogonal inversa
105 memoria de bloques
106 memoria de tramas
107 unidad de prediccion intra
108 unidad de prediccion entre
109 unidad de control de prediccion entre
110 unidad de determinacion de tipo de imagen
111 unidad de calculo de candidatos de bloques de fusion
112 memoria de colPic
113 unidad de decodificacion de longitud variable
114 sustractor
115 sumador
116 unidad de conmutacion
200 aparato de decodificacion de imagen en movimiento
201 unidad de decodificacion de longitud variable
202 unidad de cuantificacion inversa
203 unidad de transformacion ortogonal inversa
204 memoria de bloques
205 memoria de tramas
206 unidad de prediccion intra
207 unidad de prediccion entre
208 unidad de control de prediccion entre
209 unidad de calculo de candidatos de bloque de fusion
210 memoria de colPic
211 sumador
212 conmutador

Claims (4)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    REIVINDICACIONES
    1. Un metodo de decodificacion de imageries en movimiento para decodificar un bloque actual, comprendiendo:
    determinar un primer candidato de bloque de fusion en una lista de candidatos de bloques de fusion y un segundo candidato de bloque de fusion en la lista de candidatos de bloques de fusion, el primer candidato de bloque de fusion teniendo al menos (i) un primer vector de movimiento que ha sido usado para decodificar un primer bloque vecino al bloque actual, (ii) una primera direccion de prediccion correspondiente al primer vector de movimiento, y (iii) un primer valor del fndice de imagen de referencia para identificar una primera imagen de referencia correspondiente con el primer vector de movimiento, y el segundo candidato de bloque de fusion teniendo al menos (i) un segundo vector de movimiento que ha sido usado para decodificar un segundo bloque vecino al bloque actual y diferente del primer bloque, (ii) una segunda direccion de prediccion correspondiente al segundo vector de movimiento, y (iii) un segundo valor del fndice de imagen de referencia para identificar una segunda imagen de referencia correspondiente con el segundo vector de movimiento, en donde la segunda direccion de prediccion es diferente de la primera direccion de prediccion y la lista de candidatos de bloques de fusion incluye una pluralidad de candidatos de bloques de fusion uno de los cuales es seleccionado para ser usado para decodificar el bloque actual;
    generar un candidato de bloque de fusion combinado de prediccion bidireccional mediante la asignacion del primer vector de movimiento y el primer fndice de imagen de referencia para la primera direccion de prediccion del candidato de bloque de fusion combinado y mediante la asignacion del segundo vector de movimiento y el segundo fndice de imagen de referencia para la segunda direccion de prediccion del candidato de bloque de fusion combinado; y
    decodificar el bloque actual mediante el uso de un candidato de bloque de fusion seleccionado entre la pluralidad de candidatos de bloques de fusion incluyendo el primer candidato de bloque de fusion, el segundo candidato de bloque de fusion, y el candidato de bloque de fusion combinado.
  2. 2. El metodo de decodificacion de imagenes en movimiento segun la Reivindicacion 1, en donde, cuando el candidato de bloque de fusion que es seleccionado para ser usado para decodificar el bloque actual es el candidato de bloque de fusion combinado, el candidato de bloque de fusion combinado es usado para la primera direccion de prediccion y la segunda direccion de prediccion.
  3. 3. El metodo de decodificacion de imagenes en movimiento segun la Reivindicacion 1, en donde, cuando el candidato de bloque de fusion que es seleccionado para ser usado para decodificar el bloque actual es el candidato de bloque de fusion combinado, el primer vector de movimiento y el segundo vector de movimiento del candidato de bloque de fusion combinado son usados para una direccion correspondiente con la primera direccion de prediccion y una direccion correspondiente con la segunda direccion de prediccion.
  4. 4. Un aparato de decodificacion de imagenes en movimiento que decodifica un bloque actual, comprendiendo:
    una unidad de determinacion configurada para determinar un primer candidato de bloque de fusion en una lista de candidatos de bloques de fusion y un segundo candidato de bloque de fusion en la lista de candidatos de bloques de fusion, el primer candidato de bloque de fusion teniendo al menos (i) un primer vector de movimiento que ha sido usado para decodificar un primer bloque vecino al bloque actual, (ii) una primera direccion de prediccion correspondiente al primer vector de movimiento, y (iii) un primer valor del fndice de imagen de referencia para identificar una primera imagen de referencia correspondiente con el primer vector de movimiento, y el segundo candidato de bloque de fusion teniendo al menos (i) un segundo vector de movimiento que ha sido usado para decodificar un segundo bloque vecino al bloque actual y diferente del primer bloque, (ii) una segunda direccion de prediccion correspondiente al segundo vector de movimiento, y (iii) un segundo valor del fndice de imagen de referencia para identificar una segunda imagen de referencia correspondiente con el segundo vector de movimiento, en donde la segunda direccion de prediccion es diferente de la primera direccion de prediccion y la lista de candidatos de bloques de fusion incluye una pluralidad de candidatos de bloques de fusion uno de los cuales es seleccionado para ser usado para decodificar el bloque actual;
    una unidad de generacion configurada para generar un candidato de bloque de fusion combinado de prediccion bidireccional mediante la asignacion del primer vector de movimiento y el primer fndice de imagen de referencia para la primera direccion de prediccion del candidato de bloque de fusion combinado y mediante la asignacion del segundo vector de movimiento y el segundo fndice de imagen de referencia para la segunda direccion de prediccion del candidato de bloque de fusion combinado; y
    una unidad de decodificacion configurada para decodificar el bloque actual mediante el uso de un candidato de bloque de fusion seleccionado entre la pluralidad de candidatos de bloques de fusion incluyendo el primer candidato de bloque de fusion, el segundo candidato de bloque de fusion, y el candidato de bloque de fusion combinado.
ES12771702.3T 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 Active ES2621231T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161474507P 2011-04-12 2011-04-12
US201161474507P 2011-04-12
PCT/JP2012/001351 WO2012140821A1 (ja) 2011-04-12 2012-02-28 動画像符号化方法、動画像符号化装置、動画像復号化方法、動画像復号化装置、および動画像符号化復号化装置

Publications (1)

Publication Number Publication Date
ES2621231T3 true ES2621231T3 (es) 2017-07-03

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 After (1)

Application Number Title Priority Date Filing Date
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

Country Status (15)

Country Link
US (10) 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) PL2698999T3 (es)
RU (2) RU2719308C2 (es)
SA (1) SA112330447B1 (es)
TW (1) TWI547148B (es)
WO (1) WO2012140821A1 (es)

Families Citing this family (54)

* 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
PL2698999T3 (pl) 2011-04-12 2017-10-31 Sun Patent Trust Sposób kodowania ruchomych obrazów, urządzenie do kodowania ruchomych obrazów, sposób dekodowania ruchomych obrazów, urządzenie do dekodowania ruchomych obrazów, oraz urządzenie do kodowania/dekodowania ruchomych obrazów
US9247266B2 (en) 2011-04-18 2016-01-26 Texas Instruments Incorporated Temporal motion data candidate derivation in video coding
CA2833893C (en) 2011-05-24 2024-02-27 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
PL3614665T3 (pl) 2011-05-27 2022-07-04 Sun Patent Trust Sposób kodowania obrazów, urządzenie do kodowania obrazów, sposób dekodowania obrazów, urządzenie do dekodowania obrazów, i urządzenie do kodowania i dekodowania obrazów
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
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
CA2834191C (en) 2011-05-31 2019-04-09 Panasonic Corporation Video encoding method, video encoding device, video decoding method, video decoding device, and video encoding/decoding device
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
EP2723076A4 (en) 2011-06-14 2015-03-04 Samsung Electronics Co Ltd METHOD AND APPARATUS FOR ENCODING MOVEMENT INFORMATION, AND METHOD AND APPARATUS FOR DECODING THE SAME
US9313494B2 (en) * 2011-06-20 2016-04-12 Qualcomm Incorporated Parallelization friendly merge candidates for video coding
KR101900986B1 (ko) 2011-06-30 2018-09-20 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치, 및, 화상 부호화 복호 장치
JP5807621B2 (ja) * 2011-06-30 2015-11-10 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法および送信プログラム
JP5678924B2 (ja) * 2011-06-30 2015-03-04 株式会社Jvcケンウッド 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
KR20150088909A (ko) 2011-06-30 2015-08-03 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
US9819963B2 (en) 2011-07-12 2017-11-14 Electronics And Telecommunications Research Institute Inter prediction method and apparatus for same
IN2014CN00729A (es) 2011-08-03 2015-04-03 Panasonic Corp
KR101210894B1 (ko) * 2011-08-29 2012-12-11 주식회사 아이벡스피티홀딩스 머지 모드 움직임 정보 복호화 장치
EP3179723B1 (en) * 2011-09-09 2023-01-25 KT Corporation Method for deriving a temporal predictive motion vector, and apparatus using the method
KR101999869B1 (ko) 2011-10-19 2019-07-12 선 페이턴트 트러스트 화상 부호화 방법, 화상 부호화 장치, 화상 복호 방법, 및, 화상 복호 장치
KR102014332B1 (ko) * 2011-10-21 2019-08-26 노키아 테크놀로지스 오와이 비디오 코딩 방법 및 장치
US9571833B2 (en) * 2011-11-04 2017-02-14 Nokia Technologies Oy Method for coding and an apparatus
KR20130050406A (ko) * 2011-11-07 2013-05-16 오수미 머지 모드에서의 움직임 정보 생성 방법
KR20130050403A (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 인텔렉추얼디스커버리 주식회사 영상의 부호화/복호화 방법 및 장치
US10812822B2 (en) * 2015-10-02 2020-10-20 Qualcomm Incorporated Intra block copy merge mode and padding of unavailable IBC reference region
WO2018056703A1 (ko) 2016-09-20 2018-03-29 주식회사 케이티 비디오 신호 처리 방법 및 장치
KR20180057789A (ko) 2016-11-22 2018-05-31 광운대학교 산학협력단 전방향 카메라에서 효과적인 차분 움직임 백터 전송방법을 이용한 비디오 코딩 방법 및 방법 및 장치
KR102328179B1 (ko) * 2016-11-28 2021-11-18 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN116320476A (zh) * 2016-12-22 2023-06-23 株式会社Kt 对视频进行解码或编码的方法和发送视频数据的方法
WO2018141416A1 (en) 2017-02-06 2018-08-09 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 キヤノン株式会社 符号化装置、符号化方法及びプログラム
WO2019103564A1 (ko) * 2017-11-27 2019-05-31 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측에 따른 영상 디코딩 방법 및 장치
CN112106369A (zh) * 2018-04-06 2020-12-18 艾锐势有限责任公司 减少双向时间预测中的运动矢量信息传输
KR20190139786A (ko) 2018-06-08 2019-12-18 주식회사 케이티 비디오 신호 처리 방법 및 장치
US11477474B2 (en) * 2018-06-08 2022-10-18 Mediatek Inc. Methods and apparatus for multi-hypothesis mode reference and constraints
KR20200034646A (ko) 2018-09-21 2020-03-31 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
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.
EP4287619A3 (en) 2018-11-08 2024-01-31 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for encoding/decoding image signal and device therefor
CA3118269C (en) 2018-11-08 2023-10-03 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for encoding/decoding image signal, and apparatus therefor
CN113678434A (zh) * 2018-11-14 2021-11-19 腾讯美国有限责任公司 视频编解码的方法和装置
US11234007B2 (en) 2019-01-05 2022-01-25 Tencent America LLC Method and apparatus for video coding
EP3937489A4 (en) * 2019-03-08 2022-08-03 Jvckenwood Corporation MOVING PICTURE CODING DEVICE, MOVING PICTURE CODING METHOD, MOVING PICTURE CODING PROGRAM, MOVING PICTURE DECODING DEVICE, MOVING PICTURE DECODING METHOD, AND MOVING PICTURE DECODING PROGRAM
DK3915254T3 (da) * 2019-03-12 2024-01-08 Beijing Dajia Internet Information Tech Co Ltd Videokodning til forudberegning af geometrisk inter-partition
CA3143538A1 (en) 2019-06-14 2020-12-17 Lg Electronics Inc. Image decoding method and device for deriving weight index information for generation of prediction sample
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 動きベクトル検出方法および装置
WO2003041385A2 (en) 2001-11-06 2003-05-15 Matsushita Electric Industrial Co., Ltd. Moving image coding method, and moving image decoding method
JP4015934B2 (ja) 2002-04-18 2007-11-28 株式会社東芝 動画像符号化方法及び装置
JP2004088722A (ja) 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
PT3525464T (pt) 2002-04-19 2021-04-06 Panasonic Ip Corp America Método e sistema de codificação e descodificação de imagem
EP3324623B1 (en) * 2002-04-19 2019-06-12 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
WO2004008773A1 (ja) 2002-07-11 2004-01-22 Matsushita Electric Industrial Co., Ltd. フィルタリング強度の決定方法、動画像符号化方法、および動画像復号化方法
WO2004008775A1 (ja) 2002-07-15 2004-01-22 Hitachi, Ltd. 動画像符号化方法及び復号化方法
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
ES2767954T3 (es) 2002-08-08 2020-06-19 Godo Kaisha Ip Bridge 1 Procedimiento de descodificación de imágenes en movimiento
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
KR100990829B1 (ko) * 2002-11-01 2010-10-29 파나소닉 주식회사 동화상 부호화 방법 및 동화상 복호화 방법
CN100591138C (zh) 2002-11-25 2010-02-17 松下电器产业株式会社 图像编码方法及其装置、图像解码方法及其装置
JP5068947B2 (ja) 2003-02-18 2012-11-07 ノキア コーポレイション ピクチャの符号化方法
KR100693669B1 (ko) 2003-03-03 2007-03-09 엘지전자 주식회사 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법
US7266147B2 (en) 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
US7523234B2 (en) 2003-07-15 2009-04-21 Thomson Licensing Motion estimation with fast search block matching
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 삼성전자주식회사 블럭 간의 상관성을 고려한 움직임 추정 장치 및 방법
EP1654706B1 (en) 2003-08-05 2012-10-10 Trident Microsystems (Far East) Ltd. Video encoding and decoding methods and corresponding devices
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
EP1592258B1 (en) 2004-04-30 2011-01-12 Panasonic Corporation Motion estimation employing adaptive spatial update vectors
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
JP2008011455A (ja) 2006-06-30 2008-01-17 Sanyo Electric Co Ltd 符号化方法
US20070025444A1 (en) 2005-07-28 2007-02-01 Shigeyuki Okada Coding Method
JP4401336B2 (ja) 2005-08-31 2010-01-20 三洋電機株式会社 符号化方法
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 画像情報符号化装置
CN101379829B (zh) 2006-02-02 2016-05-18 汤姆逊许可公司 用于运动补偿预测的自适应加权选择的方法和设备
WO2007092192A2 (en) 2006-02-02 2007-08-16 Thomson Licensing Method and apparatus for motion estimation using combined reference bi-prediction
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
JP4757080B2 (ja) 2006-04-03 2011-08-24 パナソニック株式会社 動き検出装置、動き検出方法、動き検出集積回路および画像符号化装置
US7672377B2 (en) 2006-04-21 2010-03-02 Dilithium Holdings, Inc. Method and system for video encoding and transcoding
CN101090491B (zh) 2006-06-16 2016-05-18 香港科技大学 用于视频压缩的增强的基于块的运动估计算法
US8325814B2 (en) 2006-06-19 2012-12-04 Lg Electronics Inc. Method and apparatus for processing a video 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
US9319700B2 (en) 2006-10-12 2016-04-19 Qualcomm Incorporated Refinement coefficient coding based on history of corresponding transform coefficient values
US8565314B2 (en) 2006-10-12 2013-10-22 Qualcomm Incorporated Variable length coding table selection based on block type statistics 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
US8325819B2 (en) 2006-10-12 2012-12-04 Qualcomm Incorporated Variable length coding table selection based on video block type for refinement coefficient coding
EP2079242A4 (en) 2006-10-30 2010-11-03 Nippon Telegraph & Telephone METHOD FOR GENERATING PREDICTIVE REFERENCE INFORMATION, DYNAMIC IMAGE ENCODING AND DECODING METHOD, DEVICE THEREOF, PROGRAM THEREOF, AND STORAGE MEDIUM CONTAINING THE PROGRAM
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 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
BRPI0809512A2 (pt) 2007-04-12 2016-03-15 Thomson Licensing método e aparelho para mesclagem dependente de contexto para modos salto-direto para codificação e decodificação de vídeo
US20100086053A1 (en) 2007-04-26 2010-04-08 Panasonic Corporation Motion estimation device, motion estimation method, and motion estimation program
JP2008283490A (ja) 2007-05-10 2008-11-20 Ntt Docomo Inc 動画像符号化装置、方法及びプログラム、並びに動画像復号化装置、方法及びプログラム
WO2008156548A1 (en) 2007-06-12 2008-12-24 Thomson Licensing Methods and apparatus supporting multi-pass video syntax structure for slice data
KR101495886B1 (ko) 2007-07-19 2015-02-26 한국전자통신연구원 하향링크 프레임 생성 방법 및 셀 탐색 방법
US8462853B2 (en) * 2007-10-16 2013-06-11 Lg Electronics Inc. Method and an apparatus for processing a video signal
KR101228020B1 (ko) 2007-12-05 2013-01-30 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
CN101198064A (zh) * 2007-12-10 2008-06-11 武汉大学 一种分辨率分层技术中的运动矢量预测方法
KR20090095012A (ko) * 2008-03-04 2009-09-09 삼성전자주식회사 연속적인 움직임 추정을 이용한 영상 부호화, 복호화 방법및 장치
ES2812473T3 (es) 2008-03-19 2021-03-17 Nokia Technologies Oy Vector de movimiento combinado y predicción de índice de referencia para la codificación de vídeo
EP2269379B1 (en) 2008-04-11 2019-02-27 InterDigital Madison Patent Holdings Methods and apparatus for template matching prediction (tmp) in video encoding and decoding
KR101596829B1 (ko) 2008-05-07 2016-02-23 엘지전자 주식회사 비디오 신호의 디코딩 방법 및 장치
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
WO2010090629A1 (en) 2009-02-05 2010-08-12 Thomson Licensing Methods and apparatus for adaptive mode video encoding and decoding
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 에스케이텔레콤 주식회사 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2011061880A1 (ja) 2009-11-19 2011-05-26 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
US9288495B2 (en) 2009-11-24 2016-03-15 Sk Telecom Co., Ltd. Adaptive secondary prediction-based image encoding/decoding method, device and recording medium
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
EP2532160A1 (en) 2010-02-05 2012-12-12 Telefonaktiebolaget L M Ericsson (PUBL) Managing predicted motion vector candidates
WO2011099792A2 (ko) 2010-02-10 2011-08-18 엘지전자 주식회사 비디오 신호의 처리 방법 및 장치
US8995527B2 (en) 2010-02-19 2015-03-31 Qualcomm Incorporated Block type signalling in video coding
US20130003843A1 (en) 2010-03-12 2013-01-03 Mediatek Singapore Pte. Ltd. Motion Prediction Method
CN102210910B (zh) 2010-04-02 2013-02-13 重庆融海超声医学工程研究中心有限公司 一种超声换能器
KR101752418B1 (ko) 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR101789635B1 (ko) 2010-05-04 2017-10-25 엘지전자 주식회사 비디오 신호의 처리 방법 및 장치
US9124898B2 (en) 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
CN103081470B (zh) 2010-09-02 2016-08-03 Lg电子株式会社 编码和解码视频的方法和使用该方法的装置
US10104391B2 (en) 2010-10-01 2018-10-16 Dolby International Ab System for nested entropy encoding
US20120082228A1 (en) 2010-10-01 2012-04-05 Yeping Su 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
EP3554079B1 (en) 2011-01-07 2022-10-19 LG Electronics Inc. Method for encoding video information, method of decoding video information and decoding apparatus for decoding video information
US20130301734A1 (en) 2011-01-12 2013-11-14 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
KR101532665B1 (ko) 2011-03-14 2015-07-09 미디어텍 인크. 시간적 움직임 백터 예측을 도출하기 위한 방법 및 장치
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
PL2698999T3 (pl) 2011-04-12 2017-10-31 Sun Patent Trust Sposób kodowania ruchomych obrazów, urządzenie do kodowania ruchomych obrazów, sposób dekodowania ruchomych obrazów, urządzenie do dekodowania ruchomych obrazów, oraz urządzenie do kodowania/dekodowania ruchomych obrazów
CA2833893C (en) 2011-05-24 2024-02-27 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
PL3614665T3 (pl) 2011-05-27 2022-07-04 Sun Patent Trust Sposób kodowania obrazów, urządzenie do kodowania obrazów, sposób dekodowania obrazów, urządzenie do dekodowania obrazów, i urządzenie do kodowania i dekodowania obrazów
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
CA2834191C (en) 2011-05-31 2019-04-09 Panasonic Corporation Video encoding method, video encoding device, video decoding method, video decoding device, and video encoding/decoding device
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
EP2723076A4 (en) 2011-06-14 2015-03-04 Samsung Electronics Co Ltd METHOD AND APPARATUS FOR ENCODING MOVEMENT INFORMATION, AND METHOD AND APPARATUS FOR DECODING THE SAME
US9131239B2 (en) 2011-06-20 2015-09-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
WO2013001803A1 (ja) 2011-06-30 2013-01-03 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法および画像復号プログラム
KR20150088909A (ko) 2011-06-30 2015-08-03 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
IN2014CN00729A (es) 2011-08-03 2015-04-03 Panasonic Corp
AU2012323631B2 (en) 2011-10-11 2015-09-17 Mediatek Inc. Method and apparatus of motion and disparity vector derivation for 3D video coding and HEVC

Also Published As

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

Similar Documents

Publication Publication Date Title
ES2621231T3 (es) 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
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
ES2637615T3 (es) Procedimiento de codificación de imagen y dispositivo de codificación de imagen
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) 画像復号方法、および、画像復号装置
ES2673180T3 (es) Procedimiento de codificación de imágenes, aparato de codificación de imágenes, procedimiento de decodificación de imágenes, aparato de decodificación de imágenes y aparato de codificación/decodificación de imágenes
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
ES2728146T3 (es) Procedimientos y aparato de codificación y decodificación de vídeo utilizando predicción temporal de vector de movimiento
JP6421931B2 (ja) 動画像符号化方法及び動画像符号化装置
ES2769378T3 (es) Procedimiento de codificación de imágenes y aparato de codificación de imágenes
JP5850893B2 (ja) 動画像符号化復号装置
JP6422011B2 (ja) 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置
JP5893570B2 (ja) 画像符号化方法および画像復号化方法
JP2017060189A (ja) 動画像復号化方法および動画像復号化装置
WO2012090495A1 (ja) 画像符号化方法および画像復号方法