ES2767066T3 - Procedimiento de descodificación de imágenes en movimiento - Google Patents
Procedimiento de descodificación de imágenes en movimiento Download PDFInfo
- Publication number
- ES2767066T3 ES2767066T3 ES17188103T ES17188103T ES2767066T3 ES 2767066 T3 ES2767066 T3 ES 2767066T3 ES 17188103 T ES17188103 T ES 17188103T ES 17188103 T ES17188103 T ES 17188103T ES 2767066 T3 ES2767066 T3 ES 2767066T3
- Authority
- ES
- Spain
- Prior art keywords
- image
- linear prediction
- equation
- unit
- sets
- 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.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/177—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/58—Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un procedimiento de descodificación de imágenes para descodificar un flujo de bits de una señal de imagen codificada, comprendiendo el procedimiento de descodificación de imágenes: descodificar un flujo de bits de una señal de imagen codificada para obtener: (1) comandos que indican la correspondencia entre índices de referencia e imágenes de referencia; (2) información que indica un valor máximo de índice de referencia; (3) una pluralidad de conjuntos de coeficientes de ponderación utilizados para generar una imagen predictiva; (4) un índice de referencia que identifica una imagen de referencia para un bloque objetivo de descodificación; 10 y (5) un error de predicción; designar, basándose en los comandos y el índice de referencia, una imagen de referencia a la que se hace referencia cuando el bloque objetivo de descodificación se descodifica mediante compensación de movimiento; especificar un conjunto de coeficientes de ponderación que corresponde al índice de referencia, de entre la pluralidad de conjuntos de coeficientes de ponderación; generar la imagen predictiva llevando a cabo predicción lineal, utilizando el conjunto de coeficientes de ponderación especificado, sobre valores de píxel de un bloque de referencia obtenido a partir de la imagen de referencia designada en dicha designación; y generar una imagen reconstruida a partir de la imagen predictiva y el error de predicción, donde cada uno de la pluralidad de conjuntos de coeficientes de ponderación se especifica mediante uno correspondiente de la pluralidad de índices de referencia, donde, en dicha especificación, se especifica un conjunto de coeficientes de ponderación que corresponde al índice de referencia que se obtiene mediante la descodificación del bloque objetivo de descodificación, de entre los al menos dos conjuntos de coeficientes de ponderación, y caracterizado porque al menos dos índices de referencia entre la pluralidad de índices de referencia se asignan a una imagen de referencia a la que hace referencia en los comandos, y al menos dos conjuntos de coeficientes de ponderación entre la pluralidad de conjuntos de coeficientes de ponderación se asignan a dicha una imagen de referencia mediante dichos al menos dos índices de referencia.
Description
DESCRIPCIÓN
Procedimiento de descodificación de imágenes en movimiento
Campo técnico
La presente invención se refiere a un procedimiento de codificación de imágenes en movimiento y a un procedimiento de descodificación de imágenes en movimiento y, en particular, a un procedimiento de codificación y a un procedimiento de descodificación que utilizan una predicción inter-imagen con referencia a imágenes codificadas previamente.
Técnica anterior
Con el desarrollo de las aplicaciones multimedia, manejar de manera íntegra todo tipo de información multimedia tal como vídeo, audio y texto se ha convertido en algo habitual. Para ese fin, la digitalización de toda esta información multimedia permite tratarla de manera íntegra. Sin embargo, puesto que las imágenes digitalizadas tienen una enorme cantidad de datos, las técnicas de compresión de información de imágenes son absolutamente necesarias para almacenar y transmitir tal información. También es importante normalizar tales técnicas de compresión para el interfuncionamiento de los datos de imágenes comprimidas. Existen normas internacionales para las técnicas de compresión de imágenes, tales como H.261 y H.263 normalizadas por la Unión Internacional de Telecomunicaciones - Sector de Normalización de las Telecomunicaciones (ITU-T) y MPEG-1, MPEG-4 y otras normas normalizadas por la Organización Internacional de Normalización (ISO). La ITU está trabajando actualmente en la normalización de H.26L como la norma más reciente para la codificación de imágenes.
En general, en la codificación de imágenes en movimiento, la cantidad de información se comprime reduciendo las redundancias tanto en direcciones temporales como espaciales. Por lo tanto, en la codificación de predicción inter imagen, que tiene como objetivo reducir la redundancia temporal, el movimiento de una imagen actual se estima por cada bloque con referencia a imágenes anteriores o posteriores para crear una imagen predictiva, codificándose posteriormente valores diferenciales entre las imágenes predictivas obtenidas y la imagen actual.
En este caso, el término “imagen” representa una única capa de una imagen y representa un cuadro cuando se utiliza en el contexto de una imagen progresiva, mientras que representa un cuadro o un campo en un contexto de una imagen entrelazada. En este caso, la imagen entrelazada es un único cuadro que está formado por dos campos que tienen tiempos diferentes, respectivamente. En el procedimiento de codificación y de descodificación de la imagen entrelazada, un único cuadro puede tratarse como un cuadro, como dos campos, como una estructura de cuadros o una estructura de campos en cada bloque del cuadro.
La siguiente descripción se proporcionará suponiendo que una imagen es un cuadro en una imagen progresiva, pero puede darse la misma descripción incluso suponiendo que una imagen es un cuadro o un campo en una imagen entrelazada.
La FIG. 30 es un diagrama que explica tipos de imágenes y las relaciones de referencia entre las mismas.
Una imagen tal como la imagen I1, que es una predicción intra-imagen codificada sin hacer referencia a ninguna imagen, se denomina como una imagen I. Una imagen tal como la imagen P10, que es una predicción inter-imagen codificada con referencia a solamente una imagen, se denomina como una imagen P. Y una imagen, que puede ser una predicción inter-imagen codificada con referencia a dos imágenes al mismo tiempo, se denomina como una imagen B.
Las imágenes B, como las imágenes B6, B12 y B18, pueden hacer referencia a dos imágenes ubicadas en direcciones temporales arbitrarias. Las imágenes de referencia pueden estar designadas en cada bloque, con respecto a las cuales se estima el movimiento, y se discriminan entre una primera imagen de referencia descrita anteriormente en un flujo codificado obtenido codificando imágenes y una segunda imagen de referencia descrita posteriormente en el flujo codificado.
Sin embargo, para codificar y descodificar imágenes anteriores es necesario que las imágenes de referencia ya estén codificadas y descodificadas. Las FIG. 31A y 31B muestran ejemplos de orden de codificación y descodificación de imágenes B. La FIG. 31A muestra un orden de visualización de las imágenes, y la FIG. 31B muestra un orden de codificación y descodificación reordenado a partir del orden de visualización mostrado en la FIG. 31A. Estos diagramas muestran que las imágenes se reordenan de manera que las imágenes a las que se
hace referencia mediante las imágenes B3 y B6 ya están codificadas y descodificadas.
Un procedimiento para crear una imagen predictiva en caso de que la imagen B mencionada anteriormente esté codificada con referencia a dos imágenes al mismo tiempo se explicará en detalle utilizando la FIG. 32. Debe observarse que una imagen predictiva se crea descodificándose exactamente de la misma manera.
La imagen B4 es una imagen B actual que va a codificarse, y los bloques BL01 y BL02 son bloques actuales que van a codificarse y que pertenecen a la imagen B actual. Haciendo referencia a un bloque BL11 que pertenece a la imagen P2 como una primera imagen de referencia y a un bloque BL21 que pertenece a la imagen P3 como una segunda imagen de referencia, se crea una imagen predictiva para el bloque b L01. Asimismo, haciendo referencia a un bloque BL12 que pertenece a la imagen P2 como una primera imagen de referencia y a un bloque BL22 que pertenece a la imagen P1 como una segunda imagen de referencia, se crea una imagen predictiva para el bloque BL02 (véase el documento 1, el cual no es una patente).
La FIG. 33 es un diagrama que explica un procedimiento para crear una imagen predictiva para el bloque actual BL01 que va a codificarse utilizando los dos bloques BL11 y BL21 a los que se hace referencia. La siguiente explicación supondrá en este caso que el tamaño de cada bloque es de 4 por 4 píxeles. Suponiendo que Q1(i) es un valor de píxel de BL11, que Q2(i) es un valor de píxel de BL21 y que P(i) es un valor de píxel de la imagen predictiva para el bloque objetivo BL01, el valor de píxel P(i) puede calcularse mediante una ecuación de predicción lineal como la siguiente ecuación 1. “i” indica la posición de un píxel y, en este ejemplo, “i” tiene valores comprendidos entre 0 y 15.
P(i) = (w1 x Q1(i) w2 x Q2(i))/pow(2, d) c ...Ecuación 1
(donde pow(2, d) indica la “d”-ésima potencia de 2)
“w1”, “w2”, “c” y “d” son los coeficientes para llevar a cabo una predicción lineal, y estos cuatro coeficientes se tratan como un conjunto de coeficientes de ponderación. Este conjunto de coeficientes de ponderación se determina mediante un índice de referencia que designa una imagen a la que cada bloque hace referencia. Por ejemplo, cuatro valores de w1_1, w2_1, c_1 y d_1 se utilizan para BL01, y w1_2, w2_2, c_2 y d_2 se utilizan para BL02, respectivamente.
A continuación, se explicarán los índices de referencia que designan imágenes de referencia con relación a la FIG.
34 y la FIG. 35. Un valor denominado como número de imagen, que aumenta en valores de uno cada vez que una imagen se almacena en una memoria, se asigna a cada imagen. Dicho de otro modo, un número de imagen con un valor resultante de sumar uno al valor máximo de números de imagen existentes, se asigna a una imagen recién almacenada. Sin embargo, una imagen de referencia no se designa realmente utilizando este número de imagen, sino utilizando un valor denominado como índice de referencia, el cual se define por separado. Los índices que indican primeras imágenes de referencia se denominan primeros índices de referencia, y los índices que indican segundas imágenes de referencia se denominan segundos índices de referencia, respectivamente.
La FIG. 34 es un diagrama que explica un procedimiento para asignar dos índices de referencia a números de imagen. Cuando hay una secuencia de imágenes ordenadas en el orden de visualización, los números de imagen se asignan en el orden de codificación. Los comandos para asignar los índices de referencia a los números de imagen se describen en una cabecera de una sección que es una subdivisión de una imagen, como la unidad de codificación, y, por tanto, la asignación de los mismos se actualiza cada vez que se codifica una sección. El comando indica el valor diferencial entre un número de imagen que tiene asignado un índice de referencia actual y un número de imagen que tiene asignado un índice de referencia inmediatamente antes de la asignación actual, en serie mediante el número de índices de referencia.
Tomando el primer índice de referencia de la FIG. 34 como un ejemplo, puesto que primero se proporciona “-1” como un comando, se resta 1 al número de imagen 16 de la imagen actual que va a codificarse y, por tanto, el índice de referencia 0 se asigna al número de imagen 15. Después, puesto que se proporciona “-4”, se resta 4 al número de imagen 15 y, por tanto, el índice de referencia 1 se asigna al número de imagen 11. Los índices de referencia posteriores se asignan a números de imagen respectivos en el mismo procesamiento. Lo mismo se aplica a los segundos índices de referencia.
La FIG. 35 muestra el resultado de la asignación de los índices de referencia. Los primeros índices de referencia y los segundos índices de referencia se asignan a respectivos números de imagen por separado, pero, examinando cada índice de referencia, resulta evidente que un índice de referencia se asigna a un número de imagen.
A continuación, se explicará, con referencia a la FIG. 36 y a la FIG. 37, un procedimiento para determinar los conjuntos de coeficientes de ponderación que se utilizarán.
Un flujo codificado de una imagen está formado por un área de información común de imagen y por una pluralidad de áreas de datos de sección. La FIG. 36 muestra una estructura de un área de datos de sección de las mismas. El área de datos de sección está formada por un área de cabecera de sección y por una pluralidad de áreas de datos de bloque. Como un ejemplo de un área de datos de bloque, en este caso se muestran áreas de bloque correspondientes a BL01 y BL02 en la FIG. 32.
“re fl” y “ref2” incluidos en el bloque BL01 indican el primer índice de referencia y el segundo índice que indican dos imágenes de referencia para este bloque, respectivamente. En el área de cabecera de sección, datos (pconjunto0, pconjunto1, pconjunto2, pconjunto3 y pconjunto4) para determinar los conjuntos de coeficientes de ponderación para la predicción lineal se describen para refl y ref2, respectivamente. La FIG. 37 muestra tablas de los datos mencionados anteriormente incluidos en el área de cabecera de sección, a modo de ejemplo.
Cada dato indicado por un identificador “pconjunto” tiene cuatro valores, w1, w2, c y d, y está estructurado para ser referenciado directamente mediante los valores de ref1 y ref1. Además, en el área de cabecera de sección se describe una secuencia de comandos idx_cmd1 e idx_cmd2 para asignar los índices de referencia a los números de imagen.
Utilizando ref1 y ref2 descritos en BL01 en la FIG. 36, un conjunto de coeficientes de ponderación se selecciona a partir de la tabla para ref1 y otro conjunto de los mismos se selecciona a partir de la tabla para ref2. Llevando a cabo una predicción lineal de la ecuación 1 utilizando conjuntos de coeficientes de ponderación respectivos, se generan dos imágenes predictivas. Una imagen predictiva deseada puede obtenerse calculando el promedio de estas dos imágenes predictivas por cada píxel.
Además, hay otro procedimiento para obtener una imagen predictiva utilizando una ecuación fija predeterminada, diferente al procedimiento mencionado anteriormente para generar una imagen predictiva utilizando una ecuación de predicción obtenida mediante conjuntos de coeficientes de ponderación de coeficientes de predicción lineal. En el primer procedimiento, en caso de que una imagen designada por un primer índice de referencia aparezca, en el orden de visualización, después de una imagen designada por un segundo índice de referencia, se selecciona la siguiente ecuación 2a, que es una ecuación fija compuesta por coeficientes fijos, y, en otros casos, se selecciona la siguiente ecuación 2b, que es una ecuación fija compuesta por coeficientes fijos, para generar una imagen predictiva.
P(i) = 2 x Qi(i) - Q2(i) ...Ecuación 2a
P8i) = (Q1(i) Q2(i))/2 ...Ecuación 2b
Como resulta evidente a partir de lo anterior, este procedimiento tiene la ventaja de que no es necesario codificar ni transmitir los conjuntos de coeficientes de ponderación para obtener la imagen predictiva ya que la ecuación de predicción es fija. Este procedimiento tiene otra ventaja ya que no es necesario codificar ni transmitir un indicador para designar los conjuntos de coeficientes de ponderación de coeficientes de predicción lineal ya que la ecuación fija se selecciona en función de la relación posicional entre las imágenes. Además, este procedimiento permite una reducción significativa de la cantidad de procesamiento para la predicción lineal gracias a una fórmula sencilla de predicción lineal.
(Documento 1, que no es una patente)
ITU-T Rec. H.264 | ISO/IEC 14496-10 AVC
Borrador del Comité Conjunto (CD)
(10/05/2002)
(P.348.4.3 Re-Mapping of frame numbers indicator,
P.10511.5 Prediction signal generation procedure)
(Documento 2, que no es una patente)
ITU-T Rec. H.264 I ISO/IEC 14496-10 AVC
Borrador del comité final (FCD)
MPEG documento N4920
ISSN 0000-0365
(2002-08-11)
(P.37-47, 7.4.3 Slice header semantics to 7.4.5.1 Macroblock Prediction Semantics,
P. 53-60, 8.3.6 Decoder process for management and use of the reference picture buffer, P.119-121, 10.4 Weighted prediction signal generation procedure)
En el procedimiento para crear una imagen predictiva utilizando conjuntos de coeficientes de ponderación según la ecuación 1, puesto que el número de comandos para asignar índices de referencia a imágenes de referencia es el mismo que el número de imágenes de referencia, solo se asigna un índice de referencia a una imagen de referencia y, por tanto, los conjuntos de coeficientes de ponderación utilizados para la predicción lineal de los bloques que hacen referencia a la misma imagen de referencia tienen exactamente los mismos valores. No hay ningún problema si las imágenes cambian de manera uniforme en una imagen en su totalidad, pero hay una alta probabilidad de que no pueda generarse la imagen predictiva óptima si las imágenes respectivas cambian de diferente manera. Además, existe el problema adicional de que aumenta la cantidad de procesamiento para la predicción lineal debido a que la ecuación incluye multiplicaciones.
Descripción de la invención
En este contexto, un objeto de la presente invención es proporcionar un procedimiento y aparato de descodificación de imágenes según las reivindicaciones adjuntas. La siguiente descripción proporciona ejemplos con el fin de implementar aspectos particulares de la invención reivindicada.
Breve descripción de los dibujos
La FIG. 1 es un diagrama de bloques que muestra una estructura de un aparato de codificación en una primera realización de la presente invención.
La FIG. 2 es un diagrama de bloques que muestra una estructura de un aparato de descodificación en una sexta realización de la presente invención.
La FIG. 3 es un diagrama esquemático para explicar un procedimiento para asignar índices de referencia a números de imagen.
La FIG. 4 es un diagrama esquemático que muestra un ejemplo de relación entre índices de referencia y números de imagen.
La FIG. 5 es un diagrama esquemático para explicar operaciones para compensación de movimiento.
La FIG. 6 es un diagrama esquemático para explicar una estructura de un flujo codificado.
La FIG. 7 es un diagrama esquemático que muestra un ejemplo de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal.
La FIG. 8 es un diagrama de bloques funcionales que muestra la generación de una imagen predictiva en un aparato de codificación.
La FIG. 9 es otro diagrama de bloques funcionales que muestra la generación de una imagen predictiva en el aparato de codificación.
Las FIG. 10A y 10B son otros diagramas de bloques funcionales adicionales que muestran la generación de una imagen predictiva en el aparato de codificación.
La FIG. 11 es otro diagrama de bloques funcionales adicional que muestra la generación de una imagen predictiva en el aparato de codificación.
La FIG. 12 es un diagrama esquemático para explicar una estructura de un flujo codificado.
La FIG. 13 es un diagrama esquemático que muestra un ejemplo de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal.
La FIG. 14 es un diagrama esquemático para explicar una estructura de un flujo codificado.
La FIG. 15 es un diagrama esquemático que muestra un ejemplo de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal.
La FIG. 16 es un diagrama de bloques funcionales que muestra la generación de una imagen predictiva en el aparato de codificación.
Las FIG. 17A y 17B son diagramas esquemáticos para explicar una estructura de un flujo codificado y un ejemplo de indicadores.
La FIG. 18 es un diagrama de bloques funcionales que muestra la generación de una imagen predictiva en un aparato de descodificación.
La FIG. 19 es otro diagrama de bloques funcionales que muestra la generación de una imagen predictiva en el aparato de descodificación.
Las FIG. 20A y 20B son otros diagramas de bloques funcionales adicionales que muestran la generación de una imagen predictiva en el aparato de descodificación.
La FIG. 21 es otro diagrama de bloques funcionales adicional que muestra la generación de una imagen predictiva en el aparato de descodificación.
La FIG. 22 es otro diagrama de bloques funcionales adicional que muestra la generación de una imagen predictiva en el aparato de descodificación.
La FIG. 23 es un diagrama esquemático para explicar una estructura de un flujo codificado.
La FIG. 24 es un diagrama esquemático para explicar una estructura de un flujo codificado.
Las FIG. 25A, B y C son ilustraciones de un medio de grabación para almacenar un programa para llevar a cabo el procedimiento de codificación de imágenes en movimiento y el procedimiento de descodificación de imágenes en movimiento de cada una de las realizaciones mencionadas anteriormente utilizando un sistema informático.
La FIG. 26 es un diagrama de bloques que muestra una configuración global de un sistema de suministro de contenido.
La FIG. 27 es una vista externa de un teléfono móvil.
La FIG. 28 es un diagrama de bloques que muestra una estructura del teléfono móvil.
La FIG. 29 es un diagrama que muestra un ejemplo de un sistema de radiodifusión digital.
La FIG. 30 es un diagrama esquemático para explicar las relaciones de referencia entre imágenes en una técnica anterior.
Las FIG. 31A y B son diagramas esquemáticos para explicarla reordenación de imágenes en la técnica anterior. La FIG. 32 es un diagrama esquemático para explicar operaciones para compensación de movimiento en la técnica anterior.
La FIG. 33 es un diagrama esquemático para explicar operaciones para procesamiento de predicción lineal en la técnica anterior.
La FIG. 34 es un diagrama esquemático para explicar un procedimiento para asignar índices de referencia a números de imagen en la técnica anterior.
La FIG. 35 es un diagrama esquemático que muestra un ejemplo de relación entre índices de referencia y números de imagen en la técnica anterior.
La FIG. 36 es un diagrama esquemático para explicar una estructura de un flujo codificado en la técnica anterior. La FIG. 37 es un diagrama esquemático que muestra un ejemplo de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal en la técnica anterior.
La FIG. 38 es un diagrama esquemático para explicar una estructura de un flujo codificado en la técnica anterior. La FIG. 39 es un diagrama esquemático para explicar la relación entre números de imagen e información de orden de visualización.
Las FIG. 40A y 40B son diagramas esquemáticos para explicar una estructura de un flujo codificado y un ejemplo de indicadores.
Las FIG. 41A y 41B son diagramas esquemáticos para explicar una estructura de un flujo codificado y un ejemplo de indicadores.
Mejor modo de llevar a cabo la invención
(Primera realización)
La FIG. 1 es un diagrama de bloques que muestra la estructura de un aparato de codificación de imágenes en movimiento en la primera realización de la presente invención. El procedimiento de codificación de imágenes en movimiento ejecutado en este aparato de codificación de imágenes en movimiento, específicamente, (1) una visión general de la codificación, (2) un procedimiento para asignar índices de referencia y (3) un procedimiento para generar una imagen predictiva, se explicará en este orden utilizando el diagrama de bloques mostrado en la FIG. 1.
(1) Visión general de la codificación
Una imagen en movimiento que va a codificarse se introduce en una memoria de imágenes 101, imagen a imagen en el orden de visualización, y las imágenes introducidas se reordenan en el orden de codificación. Las FIG. 31A y 31B son diagramas que muestran un ejemplo de reordenación de imágenes. La FIG. 31A muestra un ejemplo de imágenes en el orden de visualización y la FIG. 31B muestra un ejemplo de las imágenes reordenadas en el orden de codificación. En este caso, puesto que las imágenes B3 y B6 hacen referencia a imágenes anteriores y posteriores en el tiempo, las imágenes de referencia necesitan codificarse antes de codificar estas imágenes actuales y, por tanto, las imágenes están reordenadas en la FIG. 31B de manera que las imágenes P4 y P7 se han codificado con anterioridad. Cada una de las imágenes está dividida en bloques, cada uno de los cuales se denomina como un macrobloque de 16 píxeles horizontales por 16 píxeles verticales, por ejemplo, llevándose a cabo el siguiente procedimiento en cada bloque.
Una señal de imagen de entrada leída de la memoria de imágenes 101 se introduce en una unidad de cálculo diferencial 112. La unidad de cálculo diferencial 112 calcula una diferencia entre la señal de imagen de entrada y la señal de imagen predictiva proporcionada por una unidad de codificación de compensación de movimiento 107 y
proporciona la señal de imagen diferencial obtenida (señal de error de predicción) a una unidad de codificación de errores de predicción 102. La unidad de codificación de errores de predicción 102 lleva a cabo un procesamiento de codificación de imágenes, tal como una transformación y cuantificación de frecuencia, y proporciona una señal de error codificada. La señal de error codificada se introduce en una unidad de descodificación de errores de predicción 104, que lleva a cabo un procesamiento de descodificación de imágenes, tal como una cuantificación inversa y una transformación de frecuencia inversa, y proporciona una señal de error descodificada. Una unidad de suma 113 suma la señal de error descodificada y la señal de imagen predictiva para generar una señal de imagen reconstruida y almacena, en una memoria de imágenes 105, las señales de imágenes reconstruidas a las que puede hacerse referencia en la predicción inter-imagen posterior a partir de las señales de imágenes reconstruidas obtenidas. Por otra parte, la señal de imagen de entrada leída por macrobloque a partir de la memoria de imágenes 101 también se introduce en una unidad de estimación de vectores de movimiento 106. Aquí, las señales de imágenes reconstruidas almacenadas en la memoria de imágenes 105 se buscan para estimar un área de imagen que sea lo más similar a la señal de imagen de entrada y, por tanto, determinar un vector de movimiento que apunte a la posición del área de imagen. La estimación de vectores de movimiento se lleva a cabo por cada bloque, que es una subdivisión de un macrobloque, y los vectores de movimiento obtenidos se almacenan en una unidad de almacenamiento de vectores de movimiento 108.
En este momento, puesto que una pluralidad de imágenes puede utilizarse como referencia en la norma H.26L, la cual está considerándose actualmente para su normalización, en cada bloque se necesitan números de identificación para designar imágenes de referencia. Los números de identificación se denominan índices de referencia, y una unidad de conversión de índice de referencia / número de imagen 111 establece una correspondencia entre los índices de referencia y los números de imagen de las imágenes almacenadas en la memoria de imágenes 105 para permitir la designación de las imágenes de referencia. El funcionamiento de la unidad de conversión de índice de referencia / número de imagen 111 se explicará en detalle en la sección (2). La unidad de codificación de compensación de movimiento 107 extrae el área de imagen más adecuada para la imagen predictiva de entre las señales de imágenes reconstruidas almacenadas en la memoria de imágenes 105 utilizando los vectores de movimiento estimados mediante el procesamiento mencionado anteriormente y los índices de referencia. El procesamiento de conversión de valores de píxel, tal como el procesamiento de interpolación mediante predicción lineal, se lleva a cabo en los valores de píxel del área de imagen obtenida para obtener la imagen predictiva final. Los coeficientes de predicción lineal utilizados para ese fin se generan por la unidad de generación de coeficientes de predicción lineal 110 y se almacenan en la unidad de almacenamiento de coeficientes de predicción lineal 109. Este procedimiento de generación de imágenes predictivas se explicará en detalle en la sección (3).
La unidad de generación de flujos codificados 103 lleva a cabo una codificación de longitud variable para la información codificada, tal como los coeficientes de predicción lineal, los índices de referencia, los vectores de movimiento y las señales de error codificadas proporcionadas como resultado de la anterior serie de procesamiento para obtener un flujo codificado que va a proporcionarse desde este aparato de codificación.
El flujo de operaciones en el caso de la codificación de predicción inter-imagen se ha descrito anteriormente, y un conmutador 114 y un conmutador 115 conmutan entre una codificación de predicción inter-imagen y una codificación de predicción intra-imagen. En el caso de la codificación de predicción intra-imagen, una imagen predictiva no se genera mediante compensación de movimiento, sino que una señal de imagen diferencial se genera calculando la diferencia entre un área actual y una imagen predictiva del área actual que se genera a partir de un área codificada en la misma imagen. La unidad de codificación de errores de predicción 102 convierte la señal de imagen diferencial en la señal de error codificada de la misma manera que la codificación de predicción inter-imagen, y la unidad de generación de flujos codificados 103 lleva a cabo una codificación de longitud variable para la señal para obtener un flujo codificado que va a proporcionarse.
(2) Procedimiento de asignación de índices de referencia
A continuación, se explicará, utilizando la FIG. 3 y la FIG. 4, el procedimiento mediante el cual la unidad de conversión de índice de referencia / número de imagen 111 mostrada en la FIG. 1 asigna índices de referencia. La FIG. 3 es un diagrama que explica el procedimiento para asignar dos índices de referencia a números de imagen. Suponiendo que hay una secuencia de imágenes ordenadas en el orden de visualización, como se muestra en este diagrama, se asignan números de imagen a las imágenes en el orden de codificación. Los comandos para asignar índices de referencia a números de imagen están descritos en una cabecera de cada sección, que es una
subdivisión de una imagen, como la unidad de codificación, y, por tanto, la asignación de los mismos se actualiza cada vez que se codifica una sección. El comando indica, en serie mediante el número de índices de referencia, el valor diferencial entre un número de imagen que tiene asignado un índice de referencia actual y un número de imagen que tiene asignado un índice de referencia inmediatamente antes de la asignación actual.
Tomando los primeros índices de referencia de la FIG. 3 como ejemplo, puesto que primero se proporciona “-1” como un comando, una imagen con número de imagen 15 se asigna al número de índice de referencia 0 restando 1 al número de imagen actual 16. Después, se proporciona "-4" como un comando, por lo que una imagen con número de imagen 11 se asigna al número de índice de referencia 1 restando 4 al número de imagen 15 que se ha asignado junto antes del mismo. Cada uno de los números de imagen posteriores se asigna de la misma manera. Lo mismo se aplica a los segundos índices de referencia.
Según el procedimiento de asignación de índices de referencia convencional mostrado en la FIG. 34, todos los índices de referencia se hacen corresponder con números de imagen respectivos. Por otro lado, en el ejemplo de la FIG. 3, aunque se utiliza exactamente el mismo procedimiento de asignación, una pluralidad de índices de referencia se hace corresponder con el mismo número de imagen modificando los valores de los comandos.
La FIG. 4 muestra el resultado de la asignación de los índices de referencia. Este diagrama muestra que el primer índice de referencia y el segundo índice de referencia se asignan a cada número de imagen por separado, pero una pluralidad de índices de referencia se asigna a un número de imagen en algunos casos. En el procedimiento de codificación de la presente invención, se supone que una pluralidad de índices de referencia se asigna a al menos un número de imagen, como este ejemplo.
Si los índices de referencia se utilizan solamente para determinar imágenes de referencia, el procedimiento convencional de asignación uno a uno de índices de referencia a números de imagen es el procedimiento de codificación más eficaz. Sin embargo, en caso de que un conjunto de coeficientes de ponderación de coeficientes de predicción lineal se seleccione para generar una imagen predictiva utilizando índices de referencia, tienen que utilizarse los mismos coeficientes de predicción lineal para todos los bloques que tengan las mismas imágenes de referencia, por lo que hay una posibilidad extremadamente alta de que no pueda generarse la imagen predictiva óptima.
Por lo tanto, si es posible asignar una pluralidad de índices de referencia a un número de imagen como en el caso de la presente invención, el conjunto de coeficientes de ponderación óptimo de coeficientes de predicción lineal puede seleccionarse para cada bloque de entre una pluralidad de conjuntos candidatos incluso si todos los bloques tienen la misma imagen de referencia y, por tanto, puede generarse la imagen predictiva con una mayor eficacia de codificación.
Debe observarse que la descripción anterior muestra el caso en que los números de imagen se proporcionan suponiendo que todas las imágenes de referencia están almacenadas en una memoria de referencia. Sin embargo, a una imagen actual se le proporciona un número de imagen que es superior en un valor de uno al número de una imagen que se ha codificado inmediatamente antes que la imagen actual, solamente cuando se almacena la imagen actual que se ha codificado en último lugar, por lo que la continuidad de los números de imagen se mantiene en la memoria de referencia incluso si algunas imágenes no se almacenan y, por tanto, el procedimiento mencionado anteriormente puede utilizarse sin cambios.
(3) Procedimiento para generar imágenes predictivas
A continuación, se explicará, utilizando la FIG. 5, el procedimiento de generación de imágenes predictivas en la unidad de codificación de compensación de movimiento 107 mostrada en la FIG. 1. Aunque el procedimiento de generación de imágenes predictivas mediante predicción lineal es exactamente igual al procedimiento convencional, la flexibilidad en la selección de coeficientes de predicción lineal aumenta debido a que una pluralidad de números de índices de referencia puede hacerse corresponder con la misma imagen.
La imagen B16 es una imagen B actual que va a codificarse, y los bloques BL01 y BL02 son bloques actuales que van a codificarse y que pertenecen a la imagen B. La imagen P11 y la imagen B15 se utilizan como la primera imagen de referencia y como la segunda imagen de referencia para BL01, y la imagen predictiva se genera con referencia a los bloques BL11 y BL21 que pertenecen a las imágenes P11 y B15, respectivamente. De la misma manera, la imagen P11 y la imagen B15 se utilizan como la primera imagen de referencia y como la segunda imagen de referencia para BL02, la imagen predictiva se genera con referencia a los bloques BL12 y BL22 que pertenecen a esas imágenes de referencia, respectivamente.
Aunque BL01 y BL02 hacen referencia a las mismas imágenes como su primera imagen de referencia y la segunda imagen de referencia, es posible asignar diferentes valores al primer índice de referencia refl y al segundo índice de referencia ref2 para BL01 y BL02 utilizando el procedimiento de asignación de índices de referencia explicado en la sección (2). Tomando la FIG. 4 como un ejemplo, 1 y 3 se asignan al primer índice de referencia correspondiente al número de imagen 11, mientras que 1 y 6 se asignan al segundo índice de referencia correspondiente al número de imagen 15.
Como resultado, se supone que hay cuatro combinaciones de estos índices de referencia, (ref1, ref2) = (1, 1), (1,6), (3, 1) y (3, 6) y, por tanto, es posible seleccionar la combinación para obtener el conjunto de coeficientes de ponderación óptimo para cada bloque de entre estas combinaciones. En la FIG. 5, ref1 = 1 y ref2 = 1 se asignan a BL01, y ref1 = 3 y ref2 = 6 se asignan a BL02, por ejemplo.
Según el procedimiento de asignación de referencia convencional mostrado en la FIG. 35, solo una combinación de (ref1, ref2) = (1, 1) puede seleccionarse para BL01 y BL02 en el caso de la FIG. 5, y, por tanto, solo puede seleccionarse un conjunto de coeficientes de ponderación de coeficientes de predicción lineal. Por otro lado, según la presente invención, hay cuatro opciones disponibles y puede decirse que la posibilidad de seleccionar el conjunto de coeficientes de ponderación óptimo aumenta.
Un flujo codificado de una imagen está formado por un área de información común de imagen y por una pluralidad de áreas de datos de sección. La FIG. 6 muestra la estructura del área de datos de sección en el flujo codificado. El área de datos de sección está formada además por un área de cabecera de sección y por una pluralidad de áreas de datos de bloque. Este diagrama muestra cada una de las áreas de bloque correspondientes a BL01 y BL02 en la FIG. 5 como un ejemplo del área de datos de bloque. "ref1" y "ref2" incluidos en BL01 designan el primer índice de referencia y el segundo índice de referencia, respectivamente, indicando dos imágenes a las que hace referencia el bloque BL01.
Además, en el área de cabecera de sección, datos (pconjuntoO, pconjunto1, pconjunto2...) para proporcionar los conjuntos de coeficientes de ponderación para llevar a cabo la predicción lineal mencionada anteriormente se describen para ref1 y ref2, respectivamente. En esta área, pueden fijarse “pconjuntos” en un número equivalente al número de índices de referencia explicados en la sección (2). De manera más específica, en caso de que diez índices de referencia, comprendidos entre 0 y 9, se utilicen como cada uno del primer índice de referencia y del segundo índice de referencia, diez "pconjuntos" de 0 a 9 también pueden fijarse para ref1 y ref2.
La FIG. 7 muestra un ejemplo de tablas de los conjuntos de coeficientes de ponderación incluidos en el área de cabecera de sección. Cada dato indicado por un pconjunto identificador tiene cuatro valores w1, w2, c y d, y estas tablas están estructuradas de manera que los valores de ref1 y ref2 pueden hacer referencia a los datos directamente. Además, las secuencias de comandos idx_cmd1 e idx_cmd2 para asignar los índices de referencia a los números de imagen están descritas en el área de cabecera de sección.
Utilizando ref1 y ref2 descritos en BL01 en la FIG. 6, un conjunto de coeficientes de ponderación se selecciona de cada una de las tablas para ref1 y ref2 de la FIG. 7. Llevando a cabo una predicción lineal en los valores de píxel de las imágenes de referencia utilizando estos dos conjuntos de coeficientes de ponderación, se genera una imagen predictiva.
Tal y como se ha descrito anteriormente, utilizando el procedimiento de codificación donde una pluralidad de índices de referencia se asigna a un número de imagen, puede generarse una pluralidad de candidatos para los conjuntos de coeficientes de ponderación de coeficientes de predicción lineal y, por tanto, puede seleccionarse el mejor de los mismos. Por ejemplo, en caso de que se asignen dos primeros índices de referencia y dos segundos índices de referencia, hay cuatro conjuntos de coeficientes de ponderación disponibles como candidatos para su selección, y en caso de se asignen tres primeros índices de referencia y tres segundos índices de referencia, hay nueve conjuntos de coeficientes de ponderación disponibles como candidatos para su selección.
En particular, este procedimiento de predicción lineal tiene un efecto importante en caso de que el brillo de toda la imagen o de parte de la misma cambie significativamente, como un desvanecimiento y un centelleo. En muchos casos, el grado de cambio en el brillo es diferente entre las partes de una imagen. Por lo tanto, la estructura de la presente invención donde puede seleccionarse el mejor conjunto para cada bloque de entre una pluralidad de conjuntos de coeficientes de ponderación es muy eficaz en la codificación de imágenes.
A continuación, se explicará en detalle el flujo de procesamiento desde la determinación de conjuntos de
coeficientes de ponderación hasta la generación de una imagen predictiva.
La FIG. 8 es un diagrama de bloques funcionales que muestra la estructura funcional para generar una imagen predictiva en la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109 y la unidad de codificación de compensación de movimiento 107.
Una imagen predictiva se genera a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109a, la unidad de almacenamiento de coeficientes de predicción lineal 109b, la unidad de cálculo de promedios 107a y la unidad de operaciones de predicción lineal 107b.
Los conjuntos de coeficientes de ponderación generados por la unidad de generación de coeficientes de predicción lineal 110 se almacenan en la unidad de almacenamiento de coeficientes de predicción lineal 109a y en la unidad de almacenamiento de coeficientes lineales 109b. La unidad de cálculo de promedios 107a obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109a, un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por el primer índice de referencia ref1 determinado por el procesamiento de estimación de movimiento y, además, obtiene, a partir de la unidad de almacenamiento de coeficientes lineales 109b, un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por el segundo índice de referencia ref2.
Después, la unidad de cálculo de promedios 107a calcula el promedio, para parámetros respectivos, de los conjuntos de coeficientes de ponderación a partir de las unidades de almacenamiento de coeficientes de predicción lineal 109a y 109b para considerarlo como el conjunto de coeficientes de ponderación (w1, w2, c, d) que va a utilizarse para la predicción lineal real, y lo proporciona a la unidad de operaciones de predicción lineal 107b. La unidad de operaciones de predicción lineal 107b calcula la imagen predictiva utilizando la ecuación 1 en función del conjunto de coeficientes de ponderación obtenido (w1, w2, c, d) para proporcionarse.
La FIG. 9 es un diagrama de bloques funcionales que muestra otra estructura funcional para generar una imagen predictiva. Una imagen predictiva se genera a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109a, la unidad de almacenamiento de coeficientes de predicción lineal 109b, la unidad de funcionamiento de predicción lineal 107c, la unidad de operaciones de predicción lineal 107d y la unidad de cálculos de promedios 107e.
Los conjuntos de coeficientes de ponderación generados por la unidad de generación de coeficientes de predicción lineal 110 se almacenan en la unidad de almacenamiento de coeficientes de predicción lineal 109a y en la unidad de almacenamiento de coeficientes de predicción lineal 109b. La unidad de operaciones de predicción lineal 107c obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109a, un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por el primer índice de referencia ref1 determinado por el procesamiento de estimación de movimiento, y calcula la imagen predictiva utilizando la ecuación 1 en función del conjunto de coeficientes de ponderación para proporcionarse a la unidad de cálculo de promedios 107e.
De la misma manera, la unidad de operaciones de predicción lineal 107d obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109b, un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por el segundo índice de referencia determinado por el procesamiento de estimación de movimiento, y calcula la imagen predictiva utilizando la ecuación 1 basándose en el conjunto de coeficientes de ponderación para proporcionarse a la unidad de cálculo de promedios 107e.
La unidad de cálculo de promedios 107e calcula el promedio de valores de píxel respectivos de imágenes predictivas proporcionadas por la unidad de operaciones de predicción lineal 107c y por la unidad de operaciones de predicción lineal 107d respectivamente para generar la imagen predictiva final que va a proporcionarse.
La FIG. 10A es un diagrama de bloques funcionales que muestra otra estructura funcional para generar una imagen predictiva. Una imagen predictiva se genera a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109c, la unidad de almacenamiento de predicción lineal 109d, la unidad de cálculo de promedios 107f y la unidad de operaciones de predicción lineal 107g. Los conjuntos de coeficientes de ponderación generados por la unidad de generación de coeficientes de predicción lineal 110 se almacenan en la unidad de almacenamiento de coeficientes de predicción lineal 109c y en la unidad de almacenamiento de coeficientes de predicción lineal 109d. La unidad de cálculo de promedios 107f obtiene, a partir
de la unidad de almacenamiento de coeficientes de predicción lineal 109c, los parámetros de c_1 y d_1 en un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por el primer índice de referencia refl determinado por el procesamiento de estimación de movimiento y, asimismo, obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109d, los parámetros de c_2 y d_2 en un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por el segundo índice de referencia ref2. La unidad de cálculo de promedios 107f calcula el promedio de c_1 y c_2 y el promedio de d_1 y d_2 obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109c y de la unidad de almacenamiento de coeficientes de predicción lineal 109d para obtener c y d para proporcionarse a la unidad de operaciones de predicción lineal 107g.
Además, la unidad de operaciones de predicción lineal 107g obtiene el parámetro de w1_1 del conjunto de coeficientes de ponderación mencionado anteriormente (w1_1, w2_1, c_1, d_1) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109c, obtiene el parámetro de w2_2 del conjunto de coeficientes de ponderación mencionado anteriormente (w1_2, w2_2, c_2, d_2) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109d, y obtiene c y d que son los promedios calculados por la unidad de cálculo de promedios 107f, y después calcula la imagen predictiva utilizando la ecuación 1 para proporcionarse.
De manera más específica, cuando se determina el conjunto de coeficientes de ponderación (w1, w2, c, d), que se utiliza realmente para la predicción lineal, de entre el conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal y el conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109d, la unidad de operaciones de predicción lineal 107g utiliza la siguiente regla: w1 = w1_1
w2 = w2_2
c = (promedio de c_1 y c_2)
d = (promedio de d_1 y d_2)
Tal y como se ha descrito anteriormente, en la generación de la imagen predictiva como se explicó en la FIG. 10A, la unidad de almacenamiento de coeficientes de predicción lineal 109c no necesita a w2_1 del conjunto de coeficientes de ponderación. Por lo tanto, w2 no es necesario para el conjunto de coeficientes de ponderación para ref1 y, por tanto, la cantidad de datos de un flujo codificado puede reducirse.
Además, la unidad de almacenamiento de coeficientes de predicción lineal 109d no necesita a w1_2 del conjunto de coeficientes de ponderación. Por lo tanto, w1 no es necesario para el conjunto de coeficientes de ponderación para ref2 y, por tanto, la cantidad de datos de un flujo codificado puede reducirse.
La FIG. 10B es un diagrama de bloques funcionales que muestra otra estructura funcional para generar una imagen predictiva. Una imagen predictiva se genera a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109e, la unidad de almacenamiento de coeficientes de predicción lineal 109f y la unidad de operaciones de predicción lineal 107h.
Los conjuntos de coeficientes de ponderación generados por la unidad de generación de coeficientes de predicción lineal 110 se almacenan en la unidad de almacenamiento de coeficientes de predicción lineal 109e y en la unidad de almacenamiento de coeficientes de predicción lineal 109f. La unidad de operaciones de predicción lineal 107h obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109e, los parámetros de w1_1, c_1 y d_1 que son parte de un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por el primer índice de referencia ref1 determinado por el procesamiento de estimación de movimiento y, asimismo, obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109f, el parámetro de w2_2 que es parte de un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado en función del segundo índice de referencia ref2. La unidad de operaciones de predicción lineal 107h calcula una imagen predictiva utilizando la ecuación 1 basándose en w1_1, c_1, d_1, w2_2 obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109e y de la unidad de almacenamiento de coeficientes de predicción 109f para proporcionarse.
De manera más específica, cuando se determina el conjunto de coeficientes de ponderación (w1, w2, c, d), que se utiliza realmente para la predicción lineal, de entre el conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109e y el conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) obtenido a partir de la unidad de almacenamiento de
coeficientes de predicción lineal 109f, la unidad de operaciones de predicción lineal 107h utiliza las siguiente regla. w1 = w1_1
w2 = w2_2
c = c_1
d = d_1
En la generación de la imagen predictiva como se explicó en la FIG. 10B, la unidad de almacenamiento de coeficientes de predicción lineal 109e no necesita a w2_1 del conjunto de coeficientes de ponderación. Por lo tanto, w2 no es necesario para el conjunto de coeficientes de ponderación de refl y, por tanto, la cantidad de datos de un flujo codificado puede reducirse.
Además, la unidad de almacenamiento de coeficientes de predicción lineal 109f no necesita a w1_2, c_2 y d_2 del conjunto de coeficientes de ponderación. Por lo tanto, w1, c y d no son necesarios para el conjunto de coeficientes de ponderación para ref2 y, por tanto, la cantidad de datos de un flujo codificado puede reducirse.
Además, también es posible utilizar uno o más parámetros de entre w1, w2, c y d como valores fijos. La FIG. 11 es un diagrama de bloques funcionales en el caso en que solo se utiliza "d" como un valor fijo para la estructura funcional de la FIG. 10A. Una imagen predictiva se genera a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109i, la unidad de almacenamiento de coeficientes de predicción lineal 109j, la unidad de cálculo de promedios 107j y la unidad de operaciones de predicción lineal 107k.
Los coeficientes seleccionados por el primer índice de referencia ref1 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109i son solamente (w1_1, c_1), y los coeficientes seleccionados por el segundo índice de referencia ref2 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109j son solamente (w2_2, c_2). La unidad de cálculo de promedios 107j calcula el promedio de c_1 y c_2 obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción 109i y de la unidad de almacenamiento de coeficientes de predicción lineal 109j para obtener "c" y lo proporciona a la unidad de operaciones de predicción lineal 107k.
La unidad de operaciones de predicción lineal 107k obtiene el parámetro de w1_1 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109i, el parámetro de w2_2 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109j, y el parámetro de c a partir de la unidad de cálculo de promedios 107j y después calcula la imagen predictiva basándose en la ecuación 1 utilizando un valor fijo predeterminado como un parámetro de d, y proporciona la imagen predictiva. De manera más específica, los siguientes valores se introducen como los coeficientes (w1, w2, c, d) de la ecuación 1.
w1 = w1_1
w2 = w2_2
c = (promedio de c_1 y c_2)
d = (valor fijo)
La asignación de los valores anteriores en la ecuación 1 proporciona la siguiente ecuación 1a.
P(i) = (w1_1 x Q1(i) w2_2 x Q2(i))/pow(2, d) (c_1 c_2)/2 ...Ecuación 1a
(donde pow(2, d) indica la “d”-ésima potencia de 2)
Además, modificando la ecuación 1a se obtiene la siguiente ecuación 1b. Es posible que la unidad de operaciones de predicción lineal 107k trate el procedimiento de operaciones de predicción lineal exactamente de la misma manera en el formato de la ecuación 1b o de la ecuación 1.
P(i) = (w1_1 x Q1(i)/pow(2, d-1) c_1 w2_2 x Q2(i)/pow(2, d-1) c_2)/2 ...Ecuación 1b
(donde pow(2, d-1) indica la “d-1”-ésima potencia de 2)
Aunque en la ecuación 1b se utiliza pow(2, d-1), el sistema puede estructurarse utilizando pow(2, d') introduciendo d' (suponiendo que d' = d-1) en la unidad de operaciones de predicción lineal 107k, ya que d es un valor fijo.
Además, en la generación de la imagen predictiva como se explica en la FIG. 11, la unidad de almacenamiento de coeficientes de predicción lineal 109i solo necesita w1_1 y c_1 de entre los conjuntos de coeficientes de ponderación para ello, y la unidad de almacenamiento de coeficientes de predicción lineal 109j solo necesita a w2_2 y c_2 de entre los conjuntos de coeficientes de ponderación para ello. Por lo tanto, no es necesario codificar parámetros diferentes a los parámetros requeridos anteriormente y, por tanto, la cantidad de datos del flujo codificado puede reducirse.
Debe observarse que es posible utilizar un valor fijo predeterminado como un valor de d en cualquiera de los casos, pero el valor fijo puede conmutar por cada sección describiéndose el valor fijo en la cabecera de sección. Asimismo, el valor fijo puede conmutar por cada imagen o por cada secuencia describiéndose en el área de información común de imagen o en el área de información común de secuencia.
La FIG. 12 muestra un ejemplo de una estructura de un área de datos de sección en caso de que se utilice el procedimiento de predicción lineal mencionado anteriormente. Esto es diferente de la FIG. 6 en que solamente "d" se describe en el área de cabecera de sección y solamente se describen w1_1 y c_1 como pconjunto para ref1. La FIG.
13 muestra tablas que muestran un ejemplo de los conjuntos de coeficientes de ponderación anteriores incluidos en el área de cabecera de sección. Cada dato indicado por el identificador “pconjunto” tiene dos valores de w1_1 y c_1 o w2_2 y c_2, y está estructurado para que los valores de ref1 y ref2 hagan referencia a los mismos directamente. Debe observarse que la unidad de generación de coeficientes de predicción lineal 110 genera los conjuntos de coeficientes de ponderación examinando las características de una imagen, y la unidad de codificación de compensación de movimiento 107 crea una imagen predictiva utilizando cualquiera de los procedimientos explicados en la FIG. 8, la FIG. 9, la FIG. 10 y la FIG. 11, y determina la combinación de dos índices de referencia ref1 y ref2 para minimizar el error de predicción. En caso de que se utilice cualquiera de los procedimientos de la FIG. 10a , la FIG. 10B y la FIG. 11 que no requieren todos los parámetros, es posible omitir el procesamiento de crear parámetros innecesarios en la fase donde la unidad de generación de coeficientes de predicción lineal 110 del aparato de codificación crea los conjuntos de coeficientes de ponderación.
En los procedimientos de la FIG. 10A, la FIG. 10B y la FIG. 11, la unidad de generación de coeficientes de predicción lineal 110 puede buscar y crear los conjuntos óptimos de coeficientes de ponderación para ref1 y ref2, w1_1 y w2_2, por ejemplo, por separado, cuando se crean tales conjuntos de coeficientes de ponderación. Dicho de otro modo, utilizando estos procedimientos, es posible reducir la cantidad de procesamiento ejecutado por el aparato de codificación para crear conjuntos de coeficientes de ponderación.
Debe observarse que los procedimientos de codificación mencionados anteriormente se refieren a una imagen B que tiene dos imágenes de referencia, pero también es posible ejecutar el mismo procesamiento en el modo de codificación de una imagen de referencia para una imagen P o una imagen B que tiene solamente una imagen de referencia. En este caso, utilizando solamente uno de entre el primer índice de referencia y el segundo índice de referencia, pconjunto e idx_cmd para ref1 o ref2 se describen solamente en el área de cabecera de sección incluida en el flujo codificado de la FIG. 6, según el índice de referencia descrito en el área de datos de bloque.
Además, como un procedimiento de predicción lineal, se utiliza la siguiente ecuación 3 en lugar de la ecuación 1 explicada en el procedimiento convencional. En este caso, Q1(i) es un valor de píxel de un bloque al que se hace referencia, P(i) es un valor de píxel de una imagen predictiva de un bloque actual que va a codificarse, y w1, w2, c y d son coeficientes de predicción lineal proporcionados por el conjunto de coeficientes de ponderación seleccionado. P(i) = (w1 x Q1(i) w2 x Q1(i))/pow(2, d) c ...Ecuación 3
(donde pow(2, d) indica la "d"-ésima potencia de 2)
Debe observarse que es posible utilizar la ecuación 4 como una ecuación de predicción lineal, en lugar de la ecuación 3. En este caso, Q1(i) es un valor de píxel de un bloque al que se hace referencia, P(i) es un valor de píxel de una imagen predictiva de un bloque actual que va a codificarse, y w1, c y d son coeficientes de predicción lineal proporcionados por el conjunto de coeficientes de ponderación seleccionado.
P(i) = (w1 x Q1(i))/pow(2, d) c ...Ecuación 4
(donde pow(2, d) indica la “d”-ésima potencia de 2)
La utilización de la ecuación 1 y de la ecuación 3 requiere cuatro parámetros w1, w2, c y d, mientras que la
utilización de la ecuación 4 requiere solamente tres parámetros w1, c y d para la predicción lineal. Dicho de otro modo, en caso de que cualquiera de entre el primer índice de referencia y el segundo índice de referencia se utilice para una imagen en su totalidad, como una imagen P, es posible reducir a tres el número de elementos de datos de cada conjunto de coeficientes de ponderación que va a describirse en el área de cabecera de sección.
Cuando se utiliza la ecuación 3, es posible realizar una predicción lineal disponible para imágenes B e imágenes P de manera adaptativa sin cambios en la estructura. Cuando se utiliza la ecuación 4, la cantidad de datos que va a describirse en el área de cabecera de una imagen P puede reducirse y, por tanto, es posible conseguir la reducción de la cantidad de procesamiento gracias a un cálculo simplificado. Sin embargo, puesto que el procedimiento de asignación de índices de referencia sugerido por la presente invención puede aplicarse directamente a cualquiera de los procedimientos anteriores, puede crearse una imagen predictiva con una alta eficacia de codificación, que es extremadamente eficaz en la codificación de imágenes.
Por cierto, las imágenes a las que se hace referencia en una compensación de movimiento se determinan designando los índices de referencia asignados a las respectivas imágenes. En ese caso, el número máximo de imágenes que están disponibles como referencia se ha descrito en el área de información común de imagen del flujo codificado.
La FIG. 38 es un diagrama esquemático de un flujo codificado donde se describe el número máximo de imágenes que están disponibles como referencia. Como muestra este diagrama, el número máximo de imágenes para Max_pic1 de ref1 y el número máximo de imágenes para Max_pic2 de ref2 están descritos en la información común de imagen del flujo codificado.
La información requerida para la codificación no es el número máximo de imágenes reales, sino el valor máximo de índice de referencia disponible para designar imágenes.
Puesto que en el procedimiento convencional se asigna un índice de referencia a una imagen, la descripción mencionada anteriormente del número máximo de imágenes no genera ninguna contradicción. Sin embargo, el diferente número de índices de referencia y de imágenes influye significativamente en caso de que una pluralidad de índices de referencia se asigne a un número de imagen, como la presente invención.
Tal y como se ha descrito anteriormente, las secuencias de comandos idx_cmd1 e idx_cmd2 se describen en un flujo codificado con el fin de asignar índices de referencia a números de imagen. Los números de imagen y los índices de referencia se hacen corresponder entre sí en función de cada comando de estas secuencias de comandos idx_cmd1 e idx_cmd2. Para ese fin, conocer el valor máximo de índice de referencia muestra que todos los índices de referencia y los números de imagen se han hecho corresponder entre sí, concretamente, el final de los comandos de las secuencias de comandos idx_cmd1 e idx_cmd2.
Por lo tanto, en la presente realización, el número máximo de índices de referencia disponibles, en lugar del número máximo de imágenes en la técnica anterior, se describe en el área de información común de imagen, que es la cabecera de la imagen. Como alternativa, se describen tanto el número máximo de imágenes como el número máximo de índices de referencia.
La FIG. 23 muestra un área de información común de imagen en un flujo codificado de una imagen donde está descrito el número máximo de índices de referencia. En el área de información común de imagen están descritos el número máximo de índices de referencia disponibles para Max_idx1 de ref1 y el número máximo de índices de referencia disponibles para Max_idx2 de ref2.
En la FIG. 23, el número máximo de índices de referencia está descrito en la información común de imagen, pero puede estar estructurado de manera que el número máximo de índices de referencia esté descrito en el área de datos de sección así como en la información común de imagen. Por ejemplo, el número máximo de índices de referencia requerido para cada sección puede describirse claramente, en caso de que el número máximo de índices de referencia requeridos para cada sección sea significativamente diferente del número máximo de los mismos descrito en el área de información común de imagen, de sección a sección; por ejemplo, el número máximo de índices de referencia en una imagen es 8, el número máximo de índices de referencia requeridos para la sección 1 de la imagen es 8 y el número máximo de índices de referencia requeridos para la sección 2 es 4.
Dicho de otro modo, puede estar estructurado de manera que el número máximo de índices de referencia descrito en la información común de imagen esté fijado como un valor por defecto común a todas las secciones de la imagen y que el número máximo de índices de referencia requerido para una sección, que es diferente del valor por defecto,
esté descrito en la cabecera de sección.
Aunque la FIG. 23 y la FIG. 38 muestran ejemplos donde un flujo codificado está formado por un área de información común de imagen y por áreas de datos de sección, el área de información común de imagen y las áreas de datos de sección pueden tratarse como flujos codificados diferentes exactamente de la misma manera que un flujo codificado.
(Segunda realización)
A continuación, se explicará el procedimiento de codificación de imágenes en movimiento de la segunda realización de la presente invención. Puesto que la estructura del aparato de codificación, el flujo de procesamiento de codificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la primera realización, no se repetirá la explicación de los mismos.
En la primera realización, la predicción lineal se lleva a cabo en cada píxel para generar una imagen predictiva en una compensación de movimiento utilizando la ecuación 1, la ecuación 3 o la ecuación 4. Sin embargo, todas estas ecuaciones incluyen multiplicaciones, lo que provoca un aumento significativo de la cantidad de procesamiento considerando que estas multiplicaciones se llevan a cabo en todos los píxeles.
Por lo tanto, es posible utilizar la ecuación 5 en lugar de la ecuación 1, la ecuación 6 en lugar de la ecuación 3, y la ecuación 7 en lugar de la ecuación 4. Estas ecuaciones permiten cálculos utilizando solamente operaciones de desplazamiento de bits sin utilizar multiplicaciones y, por tanto, permiten reducir la cantidad de procesamiento. En las siguientes ecuaciones, Q1(i) y Q2(i) son valores de píxel de bloques a los que se hace referencia, P(i) es un valor de píxel de una imagen predictiva de un bloque actual que va a codificarse, y 'm', 'n' y 'c' son coeficientes de predicción lineal proporcionados por un conjunto de coeficientes de ponderación seleccionado.
P(i) = ± pow(2, m) x Q1(i) ± pow(2, n) * Q2(i) c ...Ecuación 5
p(i) = ± pow(2, m) * Q1(i) ± pow(2, n) * Q1(i) c ...Ecuación 6
P(i) = ± pow(2, m) * Q1(i) c ...Ecuación 7
(donde pow(2, m) indica la “m”-ésima potencia de 2, y pow(2, n) indica la "n"-ésima potencia de 2)
Al igual que en la primera realización, la ecuación 5 se utiliza para generar una imagen predictiva con referencia a dos imágenes al mismo tiempo, y la ecuación 6 o la ecuación 7 se utiliza para generar una imagen predictiva con referencia a solamente una imagen. Puesto que estas ecuaciones requieren identificadores que indican signos más o menos, conjuntos de coeficientes de ponderación requeridos para las operaciones de predicción son (signo1, m, signo2, n, c) para las ecuaciones 5 y 6, y (signo1, m, c) para la ecuación 7. "signo1" y "signo2" son parámetros que identifican el primer y el segundo signo más y menos, respectivamente. Aunque el número de parámetros es mayor que en la primera realización, la cantidad de procesamiento aumenta poco ya que el signo1 y el signo2 pueden representarse mediante 1 bit.
A continuación, se explicará en detalle el flujo de procesamiento desde la determinación de conjuntos de coeficientes de ponderación hasta la generación de una imagen predictiva con referencia a dos imágenes a la vez utilizando la ecuación 5.
En primer lugar, se explicará el caso en que la estructura funcional para la generación de una imagen predictiva es como la mostrada en la FIG. 8. La unidad de cálculo de promedios 107a obtiene el conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109a. Además, la unidad de cálculo de promedios 107a obtiene el conjunto de coeficientes de ponderación (signo1_2, m_2, signo2_2, n_2, c_2) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109b.
La unidad de cálculo de promedios 107a calcula, para parámetros respectivos, el promedio de los conjuntos de coeficientes de ponderación obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109a y de la unidad de almacenamiento de coeficientes de predicción lineal 109b para considerar el promedio como el conjunto de coeficientes de ponderación (signo1, m, signo2, n, c). La unidad de operaciones de predicción lineal 107b calcula la imagen predictiva utilizando la ecuación 5 basándose en el conjunto de coeficientes de ponderación (signo1, m, signo2, n, c) proporcionado por la unidad de cálculo de promedios 107a.
Debe observarse que la FIG. 8 muestra el conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1), y
similares obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109a y similares, que se calculan en caso de utilizar la ecuación 1 explicada en la primera realización, y no muestra los parámetros utilizados en caso de que la imagen predictiva se obtenga utilizando la ecuación 5, ya que los parámetros utilizados en el primer caso pueden sustituirse por los parámetros del segundo caso. Esto también se aplica a los casos de la FIG. 9 y de la FIG. 10 que se describen más adelante.
A continuación, se explicará el caso en que la estructura funcional para la generación de una imagen predictiva es como la mostrada en la FIG. 9. La unidad de operaciones de predicción lineal 107c calcula una imagen predictiva 1 basándose en el conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109a. La unidad de operaciones de predicción lineal 107d calcula una imagen predictiva 2 basándose en el conjunto de coeficientes de ponderación (signo1_2, m_2, signo2_2, n_2, c_2) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109b. Además, la unidad de cálculo de promedios 107e calcula, para píxeles respectivos, el promedio de las imágenes predictivas calculadas por las unidades de operaciones de predicción lineal 107c y 107d para obtener una imagen predictiva.
En este caso, la unidad de operaciones de predicción lineal 107c calcula en primer lugar la imagen predictiva utilizando la ecuación 5 basándose en el conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1), por lo que es posible calcular la imagen predictiva utilizando operaciones de desplazamiento de bits sin utilizar multiplicaciones. Esto también se aplica a la unidad de operaciones de predicción lineal 107d. Por otro lado, en el caso de la FIG. 8, puesto que se calcula en primer lugar el promedio del conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1) y del conjunto de coeficientes de ponderación (signo1_2, m_2, signo2_2, n_2, c_2), el promedio de m_1 y de m_2 o el promedio de n_1 y de n_2, en concreto los exponentes de 2, pueden no ser números enteros y, por tanto, existe la posibilidad de que aumente la cantidad de procesamiento. Además, si los exponentes de 2 se redondean a números enteros, existe otra posibilidad de aumenten los errores.
A continuación, se explicará el caso en que una imagen predictiva se genera en la estructura funcional mostrada en la FIG. 10A. La unidad de operaciones de predicción lineal 107g calcula una imagen predictiva utilizando la ecuación 5, basándose en los parámetros signo1_1 y m_1 que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109c y utilizados para operaciones de desplazamiento de bits, los parámetros signo2_2 y n_2 que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109d y utilizados para operaciones de desplazamiento de bits, y el promedio c calculado por la unidad de cálculo de promedios 107f a partir de los parámetros c_1 y c_2 que se obtienen a partir de las unidades de almacenamiento de coeficientes de predicción lineal 109c y 109d.
En este caso, puesto que los coeficientes utilizados para las operaciones de desplazamiento de bits son los valores que se obtienen directamente a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109c o de la unidad de almacenamiento de coeficientes de predicción lineal 109d, los exponentes de 2 en la ecuación 5 son números enteros. Por lo tanto, los cálculos pueden llevarse a cabo utilizando operaciones de desplazamiento de bits y, por tanto, puede reducirse la cantidad de procesamiento.
Se explicará el caso en que una imagen predictiva se genera en la estructura funcional mostrada en la FIG. 10B. La unidad de operaciones de predicción lineal 107h calcula una imagen predictiva utilizando la ecuación 5 basándose en los parámetros signo1_1, m_1 y c_1, que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109e, y en los parámetros signo2_2 y n_2, que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109f.
En este caso, puesto que los coeficientes utilizados para las operaciones de desplazamiento de bits son valores que se obtienen directamente a partir de la unidad de almacenamiento de coeficientes de predicción lineal 109e o de la unidad de almacenamiento de coeficientes de predicción lineal 109f, los exponentes de 2 en la ecuación 5 son números enteros. Por lo tanto, la imagen predictiva puede calcularse utilizando operaciones de desplazamiento de bits y, por tanto, puede reducirse la cantidad de procesamiento.
En los casos de las FIG. 10A y 10B, hay parámetros que no necesitan añadirse al flujo codificado para su transmisión, como es el caso de las FIG. 10A y 10B en la primera realización, y la cantidad de datos del flujo codificado puede reducirse.
Utilizando las ecuaciones de predicción lineal explicadas en la segunda realización, los cálculos pueden realizarse utilizando operaciones de desplazamiento de bits sin utilizar multiplicaciones, por lo que la cantidad de procesamiento puede reducirse significativamente con respecto a la primera realización.
En la presente realización, la predicción lineal se lleva a cabo utilizando las ecuaciones 5, 6 y 7 en lugar de las ecuaciones 1, 3 y 4, y utilizando el conjunto de parámetros que va a codificarse (signo1, m, signo2, n, c) en lugar de (w1, w2, c, d), de manera que los cálculos pueden realizarse utilizando solamente operaciones de desplazamiento de bits y, por tanto, se consigue una reducción de la cantidad de procesamiento. Sin embargo, también es posible, como otro enfoque, utilizar las ecuaciones 1, 3 y 4 y (w1, w2, c, d) tal cual, limitando los valores seleccionables de w1 y w2 a solamente los valores disponibles para operaciones de desplazamiento de bits, de manera que los cálculos pueden realizarse utilizando solamente operaciones de desplazamiento de bits, consiguiendo por tanto una reducción de la cantidad de procesamiento.
Cuando se determinan los valores de w1 y w2, la unidad de generación de coeficientes de predicción lineal 110 de la FIG. 1 selecciona solamente, como una de las opciones, los valores disponibles para operaciones de desplazamiento de bits y describe los valores seleccionados directamente en los flujos codificados de la FIG. 6 y de la FIG. 12, como los valores de w1 y w2 en los mismos. Como resultado, es posible reducir la cantidad de procesamiento para la predicción lineal incluso exactamente en la misma estructura que la de la primera realización. También es posible determinar los coeficientes fácilmente ya que las opciones de los coeficientes son limitadas. Además, como un procedimiento para tal limitación, es posible limitar los valores de w1 y w2 de manera que siempre se seleccione 1 para tales valores y generar los valores óptimos de solamente c1 y c2, que son componentes de Cc , en la unidad de generación de coeficientes de predicción 110. Tomando la estructura de la FIG. 11 como ejemplo, (1, c_1) para ref1 y (1, c_2) para ref2 se codifican como conjuntos de parámetros. En este caso, el valor de píxel P(i) de la imagen predictiva se calcula mediante la siguiente ecuación donde w1_1 y w2_2 de la ecuación 1a se sustituyen por 1.
P(i) = (Q1(i) Q2(i))/pow(2, d) (c_1 c_2)/2
(donde pow(2, d) indica la “d”-ésima potencia de 2)
Por consiguiente, es posible reducir significativamente la cantidad de procesamiento para la predicción lineal incluso exactamente en la misma estructura que la de la primera realización. También es posible simplificar significativamente el procedimiento para determinar coeficientes ya que los coeficientes necesarios son solamente c_1 y c_2.
La FIG. 24 muestra un ejemplo donde un indicador sft_flg, que indica si es posible o no llevar a cabo una predicción lineal utilizando solamente operaciones de desplazamiento de bits, y un indicador cc_flg, que indica si es posible o no llevar a cabo una predicción lineal utilizando solamente c, que una componente de cc, están descritos en información común de imágenes en un flujo codificado de una imagen. Un aparato de descodificación puede descodificar la imagen sin hacer referencia a estos indicadores. Sin embargo, haciendo referencia a estos indicadores, es posible llevar a cabo una descodificación en la estructura adecuada para una predicción lineal utilizando solamente operaciones de desplazamiento de bits, o una descodificación en la estructura adecuada para una predicción lineal utilizando solamente una componente de CC, por lo que estos indicadores pueden ser información muy importante dependiendo de la estructura del aparato de descodificación.
Aunque la FIG. 24 muestra el ejemplo donde un flujo codificado está formado por un área de información común de imagen y por áreas de datos de sección, el área de información común de imagen y las áreas de datos de sección pueden tratarse como flujos codificados diferentes exactamente de la misma manera que un flujo codificado. Además, en el ejemplo de la FIG. 24, sft_flg y cc_flg están descritos en el área de información común de imagen, pero pueden tratarse exactamente de la misma manera incluso si están descritos en el área de información común de secuencia o en otra área de información común independiente. Además, no solo es posible utilizar los dos indicadores sft_flg y cc_flg al mismo tiempo, sino que también puede utilizarse uno de ellos, y pueden tratarse de la misma manera en el segundo caso.
(Tercera realización)
Se explicará el procedimiento de codificación de imágenes en movimiento de la tercera realización de la presente invención. Puesto que la estructura del aparato de codificación, el flujo de procesamiento de codificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la primera realización, no se repetirá la explicación de los mismos.
Como se explicó en el apartado de la técnica anterior, existe un procedimiento para generar una imagen predictiva
utilizando una ecuación fija predeterminada, tal como la ecuación 2a y la ecuación 2b, a diferencia de la primera y de la segunda realización donde una imagen predictiva se genera utilizando una ecuación de predicción obtenida a partir de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal. Este procedimiento convencional tiene la ventaja de que la cantidad de datos para la codificación puede reducirse gracias a que no es necesario codificar ni transmitir los conjuntos de coeficientes de ponderación utilizados para generar la imagen predictiva. Además, la cantidad de procesamiento para la predicción lineal puede reducirse significativamente ya que las ecuaciones de la predicción lineal son simples. Sin embargo, el procedimiento que utiliza las ecuaciones fijas tiene el problema de que la precisión de predicción es menor debido a que solo pueden seleccionarse dos ecuaciones de predicción lineal, la 2a y la 2b.
Por lo tanto, en la presente realización, las ecuaciones 8a y 8b se utilizan en lugar de las ecuaciones 2a y 2b. Estas ecuaciones 8a y 8b se obtienen añadiendo C1 y C2 a las ecuaciones 2a y 2b. Puesto que solo aumenta el número de sumas en la operación, la cantidad de procesamiento aumenta muy poco en comparación con las ecuaciones originales 2a y 2b. En las siguientes ecuaciones, Q1(i) y Q2(i) son valores de píxel de bloques a los que se hace referencia, P(i) es un valor de píxel de una imagen predictiva de un bloque actual que va a codificarse, y C1 y C2 son coeficientes de predicción lineal proporcionados por un conjunto de coeficientes de ponderación seleccionado. P(i) = 2 x (Qi(i) C1) -(Q2(i) C2) ...Ecuación 8a
P(i) = (Q1(i) C1 Q2(i) C2)/2 ...Ecuación 8b
Las ecuaciones 8a y 8b son ecuaciones de predicción para generar una imagen predictiva con referencia a dos imágenes al mismo tiempo, pero cuando se genera una imagen predictiva con referencia a una imagen solamente, la ecuación 9 se utiliza en lugar de la ecuación 3 ó la ecuación 4 explicadas en las realizaciones anteriores.
P(i) = Q1(i) C1 ...Ecuación 9
Los conjuntos de coeficientes de ponderación para utilizar este procedimiento son solamente (C1) para refl y (C2) para ref2. Por lo tanto, un ejemplo de un flujo codificado de una imagen obtenida utilizando este procedimiento es como el mostrado en la FIG. 14. En el área de cabecera de sección, los conjuntos de coeficientes de ponderación para la predicción lineal (pconjuntoO, pconjuntol, pconjunto2...) se describen para refl y ref2 por separado, y cada uno de los conjuntos de coeficientes de ponderación incluye solamente a C. Asimismo, la FIG. 15 muestra un ejemplo de conjuntos de coeficientes de ponderación incluidos en el área de cabecera de sección. A diferencia de la FIG. 7, cada uno de los conjuntos de coeficientes de ponderación de la FIG. 15 incluye solamente a C.
La FIG. 16 es un diagrama de bloques que muestra la estructura funcional para generar una imagen predictiva a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109 y la unidad de codificación de compensación de movimiento 107 de la FIG. 1. Una imagen predictiva se genera a través de la unidad de generación de coeficientes de predicción lineal 110, la unidad de almacenamiento de coeficientes de predicción lineal 109g, la unidad de almacenamiento de coeficientes de predicción lineal 109h y la unidad de operaciones de predicción lineal 107i.
Los conjuntos de coeficientes de ponderación generados por la unidad de generación de coeficientes de predicción lineal 110 se almacenan en la unidad de almacenamiento de coeficientes de predicción lineal 109g y en la unidad de almacenamiento de coeficientes de predicción lineal 109h. Utilizando el primer índice de referencia ref1 y el segundo índice de referencia ref2 determinados por el procesamiento de estimación de movimiento, los conjuntos de coeficientes de ponderación (C1) y (C2), que tienen un elemento respectivamente, se obtienen a partir de las unidades de almacenamiento de coeficientes de predicción lineal 109g y 109h. Estos valores se introducen en la unidad de operaciones de predicción lineal 107i, donde se lleva a cabo una predicción lineal en los mismos utilizando las ecuaciones 8a y 8b, generándose entonces la imagen predictiva.
Asimismo, cuando la predicción lineal se lleva a cabo con referencia a una imagen solamente, se obtiene uno cualquiera de los conjuntos de coeficientes de ponderación (C1) y (C2) utilizando solamente uno de entre ref1 y ref2 de la FIG. 16, la predicción lineal se lleva a cabo utilizando la ecuación 9, y después se genera la imagen predictiva. Debe observarse que la unidad de generación de coeficientes de predicción lineal 110 genera los conjuntos de coeficientes de ponderación (C1) y (C2) examinando las características de una imagen, crea una imagen predictiva utilizando el procedimiento explicado en la FIG. 16 y después determina una combinación de los dos índices de referencia ref1 y ref2 para minimizar el error de predicción.
Puesto que la presente realización requiere solamente que se utilice un parámetro para refl y ref2, el aparato de codificación puede determinar fácilmente los valores de los parámetros y, además, la cantidad de datos que va a describirse en el flujo codificado puede reducirse. Además, puesto que las ecuaciones de predicción lineal no requieren operaciones complicadas tales como multiplicaciones, la cantidad de operaciones también puede minimizarse. Además, la utilización de los coeficientes C1 y C2 permite una mejora radical de la baja precisión de predicción, considerada como una desventaja del procedimiento convencional que utiliza una ecuación fija.
Debe observarse que es posible utilizar el procedimiento de predicción lineal explicado En la presente realización, independientemente de si una pluralidad de índices de referencia puede hacer referencia o no a la misma imagen.
(Cuarta realización)
Se explicará el procedimiento de codificación de imágenes en movimiento de la cuarta realización de la presente invención. Puesto que la estructura del aparato de codificación, el flujo de procesamiento de codificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la primera realización, no se repetirá la explicación de los mismos.
Información de orden de visualización que indica el tiempo de visualización, o una alternativa a la misma, así como un número de imagen se asignan a cada imagen. La FIG. 39 es un diagrama que muestra un ejemplo de números de imagen y la información de orden de visualización correspondiente. Determinados valores se asignan a la información de orden de visualización según el orden de visualización. En este ejemplo se utiliza el valor que aumenta de uno en uno para cada imagen. En la cuarta realización se explicará un procedimiento para generar valores de coeficientes utilizados en una ecuación para una predicción lineal que utiliza esta información de orden de visualización.
En la primera realización, la predicción lineal se lleva a cabo para cada píxel utilizando la ecuación 1, la ecuación 3 o la ecuación 4 cuando se genera una imagen predictiva en la compensación de movimiento. Sin embargo, puesto que la predicción lineal requiere datos de coeficientes, tales datos de coeficientes se describen en las áreas de cabecera de sección en un flujo codificado como conjuntos de coeficientes de ponderación que van a utilizarse para la creación de la imagen predictiva. Aunque este procedimiento consigue una alta eficacia de codificación, requiere un procesamiento adicional para crear datos de los conjuntos de coeficientes de ponderación y provoca un aumento en la cantidad de bits ya que los conjuntos de coeficientes de ponderación se describen en el flujo codificado.
Por lo tanto, también es posible llevar a cabo una predicción lineal utilizando la ecuación 10, la ecuación 11a y la ecuación 12a en lugar de la ecuación 1. Utilizando estas ecuaciones, los coeficientes de ponderación pueden determinarse en función de solamente la información de orden de visualización de cada imagen de referencia, por lo que no es necesario codificar los conjuntos de coeficientes de ponderación por separado.
En las siguientes ecuaciones, Q1(i) y Q2(i) son valores de píxel de bloques a los que se hace referencia, P(i) es un valor de píxel de una imagen predictiva de un bloque actual que va a codificarse, V0 y V1 son coeficientes de ponderación, T0 es la información de orden de visualización de la imagen actual que va a codificarse, T1 es la información de orden de visualización de la imagen designada por el primer índice de referencia y T2 es la información de orden de visualización de la imagen designada por el segundo índice de referencia.
P(i) = V1 x Q1(i) V2 x Q2(i) ...Ecuación 10
V1 = (T2 - T0)/(T2 - T1) ...Ecuación 11a
V2 = (T0 - T1)/(T2 -T 1 ) ...Ecuación 12a
Cuando se supone, por ejemplo, que la imagen actual que va a codificarse en la n° 16, que la imagen designada por el primer índice de referencia es la n° 11 y que la imagen designada por el segundo índice de referencia es la n° 10, la información de orden de visualización de las imágenes respectivas es 15, 13 y 10 y, por tanto, se determinan las siguientes ecuaciones de predicción lineal.
V1 = (10 - 15)/(10 -13 ) = 5/3
V2 = (15 -13 ) / (10 -13 ) = -2/3
P(i) = 5/3 x Q1(i) -2 /3 x Q2(i)
En comparación con el procedimiento que lleva a cabo una predicción lineal utilizando los conjuntos de coeficientes de ponderación de la ecuación 1, las ecuaciones anteriores tienen una menor flexibilidad en lo que respecta a valores de coeficiente y, por tanto, puede decirse que es imposible crear la imagen predictiva óptima. Sin embargo,
en comparación con el procedimiento de conmutar las dos ecuaciones fijas 2a y 2b dependiendo de la relación posicional entre dos imágenes de referencia, las ecuaciones anteriores son ecuaciones de predicción lineal más eficientes.
Cuando el primer índice de referencia y el segundo índice de referencia hacen referencia a la misma imagen, la ecuación 11a y la ecuación 12a no se cumplen porque T1 es igual a T2. Por tanto, cuando las dos imágenes de referencia tienen la misma información de orden de visualización, se llevará a cabo una predicción lineal utilizándose 1/2 como el valor de V1 y V2. En ese caso, las ecuaciones de predicción lineal son las siguientes.
V1 = 1/2
V2 = 1/2
P(i) = 1/2 x Q1(i) 1/2 x Q2(i)
Además, las ecuaciones 11a y 12a no se cumplen porque T1 es igual a T2 cuando el primer índice de referencia y el segundo índice de referencia hacen referencia a imágenes diferentes pero estas imágenes tienen la misma información de orden de visualización. Como se mencionó anteriormente, cuando las dos imágenes de referencia tienen la misma información de orden de visualización, se llevará a cabo una predicción lineal utilizando 1/2 como el valor de V1 y V2.
Tal y como se ha descrito anteriormente, cuando dos imágenes de referencia tienen la misma información de orden de visualización, es posible utilizar un valor predeterminado como coeficiente. Tal coeficiente predeterminado puede ser uno que tenga el mismo peso que 1/2 como se mostró en el ejemplo anterior.
Por otro lado, la utilización de la ecuación 10 en las realizaciones anteriores requiere multiplicaciones y divisiones para la predicción lineal. Puesto que la operación de predicción lineal que utiliza la ecuación 10 es la operación para todos los píxeles de un bloque actual que va a codificarse, la adición de multiplicaciones provoca un aumento significativo en la cantidad de procesamiento.
Por tanto, la aproximación de V1 y V2 a las potencias de 2 como el caso de la segunda realización hace posible llevar a cabo una operación de predicción lineal utilizando solamente operaciones de desplazamiento y, por tanto, reducir la cantidad de procesamiento. Las ecuaciones 11b y 12b se utilizan como ecuaciones de predicción lineal para ese caso en lugar de las ecuaciones 11a y 12a. En las siguientes ecuaciones, v1 y v2 son números enteros. V1 = ± pow(2, v1) = apx((T2 -T0)/(T2 -T1)) ...Ecuación 11b
V2 = ± pow(2, v2) = apx((T0 -T1)/(T2 -T1)) ...Ecuación 12b
(donde pow(2, v1) indica la “v1”-ésima potencia de 2 y pow(2, v2) indica la “v2”-ésima potencia de 2)
(donde = apx() indica que el valor dentro de () se aproximará al valor de la izquierda)
Debe observarse que también es posible utilizar las ecuaciones 11c y 12c en lugar de las ecuaciones 11a y 12a, donde v1 es un número entero.
V1 = ± pow(2, v1) = apx((T2 -T0)/(T2 -T 1 ) ...Ecuación 11c
V2 = 1 - V1 ...Ecuación 12c
(donde pow(2, v1) indica la “v1”-ésima potencia de 2)
(donde = apx() indica que el valor dentro de () se aproximará al valor de la izquierda)
Debe observarse que también es posible utilizar las ecuaciones 11d y 12d en lugar de las ecuaciones 11a y 12a, donde v1 es un número entero.
V1 = 1 - V2 ...Ecuación 11d
V2 = ± pow(2, v2) = apx((T0 -T1)/(T2 -T 1 ) ...Ecuación 12d
(donde pow(2, v2) indica la “v2”-ésima potencia de 2)
(donde = apx() indica que el valor dentro de () se aproximará al valor de la izquierda)
Debe observarse que el valor de V1 y V2 aproximado a la potencia de 2 será, tomando la ecuación 11b como ejemplo, el valor de pow(2, v1) obtenido cuando los valores de pow(2, v1) y (T2 - T0) / (T2 - T1) se aproximan mucho entre sí a medida que el valor de v1 cambia en valores de uno.
Por ejemplo, en la FIG. 39, cuando la imagen actual que va a codificarse es la n° 16, la imagen designada por el primer índice de referencia es la n° 11 y la imagen designada por el segundo índice de referencia es la n° 10, la información de orden de visualización de las respectivas imágenes es 15, 13 y 10, de manera que (T2 -T0) / (T2 -T1) y pow(2, v1) se determinan de la siguiente manera.
(T2 - T0)/(T2 - T1) = (10 - 15)/(10 - 13) = 5/3
+pow(2, 0) = 1
+pow(2, 1) = 2
Puesto que 5/3 tiene un valor más aproximado a 2 que a 1, como resultado de la aproximación se obtiene que V1 = 2.
Como otro procedimiento de aproximación, también es posible conmutar entre una aproximación de redondeo por exceso y una aproximación de redondeo por defecto dependiendo de la relación entre dos valores de información de orden de visualización T1 y T2.
En ese caso, la aproximación de redondeo por exceso se lleva a cabo en V1 y en V2 cuando T1 es posterior a T2, y la aproximación de redondeo por defecto se lleva a cabo en V1 y en V2 cuando T1 es anterior a T2. También es posible, de manera inversa, llevar a cabo una aproximación de redondeo por defecto de V1 y de V2 cuando T1 es posterior a T2, y una aproximación de redondeo por exceso de V1 y de V2 cuando T1 es anterior a T2.
Como otro procedimiento de aproximación que utiliza información de orden de visualización, la aproximación de redondeo por exceso se lleva a cabo en una ecuación para V1 y la aproximación de redondeo por defecto se lleva a cabo en una ecuación para V2 cuando T1 es posterior a T2. Como resultado, la diferencia entre los valores de los dos coeficientes aumenta y es posible obtener valores adecuados para una extrapolación. Por el contrario, cuando T1 es anterior a T2, se comparan el valor de la ecuación para V1 y el valor en la ecuación para V2 y después se lleva a cabo una aproximación de redondeo por exceso en el valor inferior y se lleva a cabo una aproximación de redondeo por defecto en el valor superior. Como resultado, la diferencia entre los valores de los dos coeficientes disminuye, por lo que es posible obtener valores adecuados para una interpolación.
Por ejemplo, en la FIG. 39, cuando la imagen actual que va a codificarse es la n° 16, la imagen designada por el primer índice de referencia es la n° 11 y la imagen designada por el segundo índice de referencia es la n° 10, la información de orden de visualización de las imágenes respectivas es 15, 13 y 10. Puesto que T1 es posterior a T2, se lleva a cabo una aproximación de redondeo por exceso en la ecuación para V1 y se lleva a cabo una aproximación de redondeo por defecto en la ecuación para V2. Como resultado, las ecuaciones 11b y 12b se calculan de la siguiente manera.
(1) Ecuación 11b
(T2 -T0)/(T2 - T1) = (10 - 15)/(10 - 13) = 5/3
+pow(2, 0) = 1
+pow(2, 1) = 2
Como resultado de la aproximación de redondeo por exceso, se obtiene que V1 = 2.
(2) Ecuación 12b
(T0 -T1)/(T2 - T1) = (15 - 13)/(10 - 13) = -2/3
-pow(2, 0) = -1
-pow(2, -1) = -1/2
Como resultado de la aproximación de redondeo por defecto, se obtiene que V2 = -1. Debe observarse que, aunque la ecuación 10 es solamente una ecuación para una predicción lineal en las realizaciones anteriores, también es posible combinar este procedimiento con el procedimiento de predicción lineal mediante la utilización de las dos ecuaciones fijas 2a y 2b explicadas en la sección de la técnica anterior. En ese caso, la ecuación 10 se utiliza en lugar de la ecuación 2a, y la ecuación 2b se utiliza tal cual. Dicho de otro modo, la ecuación 10 se utiliza cuando la imagen designada por el primer índice de referencia aparece detrás de la imagen designada por el segundo índice de referencia en el orden de visualización, mientras que la ecuación 2b se utiliza en otros casos.
Por el contrario, también es posible utilizar la ecuación 10 en lugar de la ecuación 2b y utilizar la ecuación 2a tal cual. Dicho de otro modo, la ecuación 2a se utiliza cuando la imagen designada por el primer índice de referencia
aparece detrás de la imagen designada por el segundo índice de referencia, y la ecuación 10 se utiliza en otros casos. Sin embargo, cuando las dos imágenes de referencia tienen la misma información de orden de visualización, se lleva a cabo una predicción lineal utilizando 1/2 como el valor de V1 y V2.
También es posible describir solamente el coeficiente C en las áreas de cabecera de sección que van a utilizarse para la predicción lineal, de la misma manera que el concepto de la tercera realización. En ese caso, se utiliza la ecuación 13 en lugar de la ecuación 10. V1 y V2 se obtienen de la misma manera que las realizaciones anteriores. P(i) = V1 x (Q1(i) C1) V2 x (Q2(i) C2) ...Ecuación 13
El procesamiento para generar coeficientes C es necesario y, además, el coeficiente C necesita codificarse en el área de cabecera de sección, pero la utilización de C1 y de C2 permite una predicción lineal más precisa incluso si la precisión de V1 y V2 es baja. Esto es particularmente eficaz en caso de que V1 y V2 se aproximen a las potencias de 2 para llevar a cabo una predicción lineal.
Debe observarse que utilizando la ecuación 13, la predicción lineal puede llevarse a cabo de la misma manera en caso de que se asigne un índice de referencia a una imagen y en caso de que se asigne una pluralidad de índices de referencia a una imagen.
En el cálculo de los valores de cada una de las ecuaciones 11a, 12a, 11b, 12b, 11c, 12c, 11d y 12d, las combinaciones de los valores disponibles están limitadas en cierto modo en cada sección. Por tanto, solo es necesaria una operación para codificar una sección, a diferencia de la ecuación 10 o la ecuación 13 donde la operación necesita llevarse a cabo para todos los píxeles de un bloque actual que va a codificarse y, por tanto, parece que no afecta en gran medida a la cantidad de procesamiento total.
Debe observarse que la información de orden de visualización En la presente realización, no está limitada al orden de visualización, sino que puede ser el tiempo de visualización real o el orden de imágenes respectivas empezando por una imagen predeterminada, cuyo valor aumenta según transcurre el tiempo de visualización.
(Quinta realización)
Se explicará el procedimiento de codificación de imágenes en movimiento de la quinta realización de la presente invención. Puesto que la estructura del aparato de codificación, el flujo de procesamiento de codificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la primera realización, no se repetirá la explicación de los mismos.
En el procedimiento convencional, es posible conmutar entre la generación de una imagen predictiva mediante la utilización de ecuaciones fijas y la generación de una imagen predictiva mediante la utilización de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal, utilizando indicadores descritos en un área de información común de imagen en un flujo codificado, si fuera necesario.
En la presente realización, se explicará otro procedimiento para conmutar los diversos procedimientos de predicción lineal explicados de la primera a la cuarta realizaciones anteriores.
La FIG. 17A muestra la estructura utilizada para el caso en que cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag) para controlar la conmutación anterior están descritos en el área de cabecera de sección del flujo codificado. Tal y como se muestra en la FIG. 17B, p_flag es un indicador que indica si los coeficientes de ponderación se han codificado o no. c_flag es un indicador que indica si sólo se han codificado o no los datos del parámetro C (C1 y C2), de entre los parámetros para ref1 y ref2. t_flag es un indicador que indica si los coeficientes de ponderación para la predicción lineal van a codificarse o no utilizando la información de orden de visualización de las imágenes de referencia. Por último, s_flag es un indicador que indica si los coeficientes de ponderación para la predicción lineal van a aproximarse o no a las potencias de 2 para el cálculo mediante la utilización de operaciones de desplazamiento.
Además, d_flag es un indicador que indica si conmutar o no dos ecuaciones fijas predeterminadas, como las ecuaciones 2a y 2b, dependiendo de la relación posicional temporal entre la imagen designada por ref1 y la imagen designada por ref2, cuando se lleva a cabo una predicción lineal utilizando tales dos ecuaciones fijas. De manera más específica, cuando este indicador indica la conmutación de las ecuaciones, la ecuación 2a se utiliza en caso de que la imagen designada por ref1 sea posterior a la imagen designada por ref2 en el orden de visualización, y la
ecuación 2b se utiliza en otros casos para llevar a cabo una predicción lineal, como es el caso del procedimiento convencional. Por otro lado, cuando este indicador indica no conmutar las ecuaciones, la ecuación 2b siempre se utiliza para llevar a cabo la predicción lineal, independientemente de la relación posicional entre la imagen designada por refl y la imagen designada por ref2.
Debe observarse que incluso si se utiliza la ecuación 2a en lugar de la ecuación 2b como una ecuación que va a utilizarse sin conmutación, la ecuación 2a puede tratarse de la misma manera que la ecuación 2b.
En el aparato de codificación mostrado en la FIG. 1, la unidad de codificación de compensación de movimiento 107 determina si codificar o no los datos relacionados con los conjuntos de coeficientes de ponderación por cada sección, proporciona la información del indicador p_flag a la unidad de generación de flujos codificados 103 en función de la determinación y describe la información en el flujo codificado mostrado en la FIG. 17A. Como resultado, es posible utilizar los conjuntos de coeficientes de ponderación en un aparato de mayor rendimiento para llevar a cabo una predicción lineal y no utilizar los conjuntos de coeficientes de ponderación en un aparato de menor rendimiento para llevar a cabo la predicción lineal.
Asimismo, en el aparato de codificación mostrado en la FIG. 1, la unidad de codificación de compensación de movimiento 107 determina, por cada sección, si codificar o no solamente los datos relacionados con el parámetro C (C1 y C2) correspondiente a las componentes de CC de los datos de imagen, proporciona la información del indicador c_flag a la unidad de generación de flujos codificados 103 en función de la determinación y describe la información en el flujo codificado mostrado en la FIG. 17A. Como resultado, es posible utilizar todos los conjuntos de coeficientes de ponderación en un aparato de mayor rendimiento para llevar a cabo una predicción lineal y utilizar solamente las componentes de CC en un aparato de menor rendimiento para llevar a cabo la predicción lineal. Asimismo, en el aparato de codificación mostrado en la FIG. 1, cuando la predicción lineal se lleva a cabo utilizando ecuaciones fijas, la unidad de codificación de compensación de movimiento 107 determina, por cada sección, si llevar a cabo o no una codificación conmutando dos ecuaciones, proporciona la información del indicador d_flag a la unidad de generación de flujos codificados 103 en función de la determinación y describe la información en el flujo codificado mostrado en la FIG. 17A. Como resultado, es posible utilizar una cualquiera de las ecuaciones fijas para la predicción lineal en caso de que haya un ligero cambio temporal en el brillo de una imagen y conmutar entre las dos ecuaciones fijas para la predicción lineal en caso de que el brillo de la imagen cambie a medida que pasa el tiempo.
Asimismo, en el aparato de codificación mostrado en la FIG. 1, la unidad de codificación de compensación de movimiento 107 determina, para cada sección, si generar o no coeficientes para la predicción lineal utilizando la información de orden de visualización de las imágenes de referencia, proporciona la información del indicador t_flag a la unidad de generación de flujos codificados 103 en función de la determinación y describe la información en el flujo codificado mostrado en la FIG. 17A. Como resultado es posible codificar los conjuntos de coeficientes de ponderación para la predicción lineal en caso de que haya suficiente espacio a codificar en el flujo codificado y generar los coeficientes a partir de la información de orden de visualización para la predicción lineal en caso de que haya más espacio a codificar.
Asimismo, en el aparato de codificación mostrado en la FIG. 1, la unidad de codificación de compensación de movimiento 107 determina, por cada sección, si aproximar o no los coeficientes para la predicción lineal a las potencias de 2 para permitir el cálculo de estos coeficientes mediante operaciones de desplazamiento, proporciona la información del indicador s_flag a la unidad de generación de flujos codificados 103 en función de la determinación y describe la información en el flujo codificado mostrado en la FIG. 17A. Como resultado, es posible utilizar los coeficientes de ponderación sin aproximarse en un aparato de mayor rendimiento para llevar a cabo una predicción lineal y utilizar los coeficientes de ponderación aproximándose a las potencias de 2 en un aparato de menor rendimiento para llevar a cabo la predicción lineal que puede realizarse solamente mediante operaciones de desplazamiento.
Por ejemplo, el caso de (1) (p, c, d, t, s_flag) = (1, 0, 0, 0, 1) muestra que se codifican todos los conjuntos de coeficientes de ponderación y que se lleva a cabo una predicción lineal solamente mediante operaciones de desplazamiento representándose los coeficientes como las potencias de 2 explicadas en la segunda realización para generar una imagen predictiva.
El caso de (2) (p, c, d, t, s_flag) = (1, 1, 1, 0, 0) muestra que solamente se codifican los datos relacionados con el parámetro C (C1 y C2), se utiliza el procedimiento para generar una imagen predictiva añadiendo el coeficiente C a las ecuaciones fijas como explicadas en la tercera realización y, además, las dos ecuaciones fijas conmutan para su
utilización.
En el caso de (3) (p, c, d, t, s_flag) = (0, 0, 0, 0, 0), ningún conjunto de coeficiente de ponderación se codifica. Dicho de otro modo, muestra que se utiliza el procedimiento para generar una imagen predictiva utilizando solamente la ecuación 2b de entre las ecuaciones fijas del procedimiento convencional.
El caso de (4) (p, c, d, t, s_flag) = (0, 0, 1, 1, 1) muestra que no se codifica ningún conjunto de coeficientes de ponderación, sino que los coeficientes de ponderación se generan a partir de la información de orden de visualización de las imágenes de referencia y la predicción lineal se lleva a cabo solamente mediante operaciones de desplazamiento aproximándose los coeficientes generados a las potencias de 2 y, después, dos ecuaciones fijas conmutan para utilizarse en la generación de una imagen predictiva.
Debe observarse que, en la presente realización, las determinaciones se realizan utilizando cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag), cada uno de los cuales es 1 bit, pero también es posible representar las determinaciones solamente con un indicador de 5 bits en lugar de estos cinco indicadores. En ese caso es posible una codificación utilizando una codificación de longitud variable, no mediante la representación con 5 bits.
Debe observarse que, en la presente realización, se utilizan los cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag), cada uno de los cuales es 1 bit, pero esto también puede aplicarse al caso en que el procedimiento de predicción lineal conmuta utilizando solamente algunos de estos indicadores. En ese caso, sólo se codifican y se describen los indicadores necesarios para la predicción lineal de entre los indicadores mostrados en la FIG. 17A. El procedimiento convencional permite conmutar, en cada imagen, entre el procedimiento de generación de imágenes predictivas mediante la utilización de ecuaciones fijas y el procedimiento de generación de imágenes predictivas mediante la utilización de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal, proporcionando un indicador para conmutar estos procedimientos en un área de información común de imagen en un flujo codificado. Sin embargo, en el procedimiento convencional, el procedimiento de generación de imágenes predictivas solo puede conmutarse por cada imagen.
Tal y como se ha explicado anteriormente, la presente realización permite conmutar el procedimiento de generación de imágenes predictivas en cada sección, que es una subdivisión de una imagen, proporcionando este indicador de conmutación en una cabecera de sección de un flujo codificado. Por lo tanto, es posible generar una imagen predictiva utilizando los coeficientes de ponderación en una sección que tiene imágenes complejas y generar una imagen predictiva utilizando ecuaciones fijas en una sección que tiene imágenes simples y, por tanto, es posible mejorar la calidad de la imagen minimizando al mismo tiempo el aumento de la cantidad de procesamiento.
Debe observarse que, en la presente realización, cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag) están descritos en un área de cabecera de sección para determinar si los coeficientes se codifican o no para cada sección, pero también es posible conmutar la determinación por cada imagen describiendo estos indicadores en el área de información común de imagen. Además, también es posible generar una imagen predictiva utilizando el procedimiento óptimo en cada bloque proporcionando el indicador de conmutación en cada bloque, que es una subdivisión de una sección.
Debe observarse que la información de orden de visualización En la presente realización, no está limitada al orden de visualización, sino que puede ser el tiempo de visualización real o el orden de imágenes respectivas empezando por una imagen predeterminada, cuyo valor aumenta a medida que transcurre el tiempo de visualización.
(Sexta realización)
La FIG. 2 es un diagrama de bloques que muestra la estructura de un aparato de descodificación de imágenes en movimiento de la sexta realización de la presente invención. Utilizando este diagrama de bloques mostrado en la FIG. 2, el procedimiento de descodificación de imágenes en movimiento ejecutado por este aparato de descodificación de imágenes en movimiento se explicará en el siguiente orden: (1) una visión general de descodificación, (2) un procedimiento para asignar índices de referencia y (3) un procedimiento para generar una imagen predictiva. En este caso, se supone que un flujo codificado que se generó mediante el procedimiento de codificación de imágenes en movimiento de la primera realización se introduce en el presente aparato de descodificación.
(1) Visión general de descodificación
En primer lugar, la unidad de análisis de flujos codificados 201 extrae del área de cabecera de sección la secuencia de datos de conjuntos de coeficientes de ponderación para la predicción lineal y la secuencia de comandos para la asignación de índices de referencia, y del área de información de bloques codificados diversa información tal como la información de índices de referencia, la información de vectores de movimiento y los datos de errores de predicción codificados. La FIG. 6 muestra la diversa información codificada mencionada anteriormente del flujo codificado.
La secuencia de datos de los conjuntos de coeficientes de ponderación para la predicción lineal extraída por la unidad de análisis de flujos codificados 201 se proporciona a una unidad de almacenamiento de coeficientes de predicción lineal 206, la secuencia de comandos para la asignación de índices de referencia se proporciona a una unidad de conversión de índice de referencia / número de imagen 207, los índices de referencia se proporcionan a una unidad de descodificación de compensación de movimiento 204, la información de vector de movimiento se proporciona a una unidad de almacenamiento de vectores de movimiento 205 y la señal de error de predicción codificada se proporciona a una unidad de descodificación de errores de predicción 202, respectivamente.
La unidad de descodificación de errores de predicción 202 lleva a cabo un procesamiento de descodificación de imágenes, tal como una cuantificación inversa y una transformada de frecuencia inversa para la señal de error de predicción codificada introducida, y proporciona una señal de error descodificada. La unidad de suma 208 suma la señal de error de predicción descodificada y la señal de imagen predictiva proporcionada por la unidad de descodificación de compensación de movimiento 204 para generar una señal de imagen reconstruida. La señal de imagen reconstruida obtenida se almacena en una memoria de imágenes 203 para su utilización como referencia en la predicción inter-imagen posterior y se proporciona para su visualización.
La unidad de descodificación de compensación de movimiento 204 extrae el área de imagen más adecuada como una imagen predictiva de entre las señales de imágenes reconstruidas almacenadas en la memoria de imágenes 203, utilizando los vectores de movimiento introducidos desde la unidad de almacenamiento de vectores de movimiento 205 y los índices de referencia introducidos desde la unidad de análisis de flujos codificados 201. En este momento, la unidad de conversión de índice de referencia / número de imagen 207 designa las imágenes de referencia en la memoria de imágenes 203 basándose en la correspondencia entre los índices de referencia proporcionados por la unidad de análisis de flujos codificados 201 y los números de imagen.
El funcionamiento de la unidad de conversión de índice de referencia / número de imagen 207 se explicará en detalle en la sección (2). Además, la unidad de descodificación de compensación de movimiento 204 lleva a cabo un procesamiento de conversión de valores de píxel, tal como un procesamiento de interpolación mediante una predicción lineal en valores de píxel en el área de imagen extraída, para generar la imagen predictiva final. Los coeficientes de predicción lineal utilizados para ese procesamiento se obtienen a partir de los datos almacenados en la unidad de almacenamiento de coeficientes de predicción lineal 206 utilizando los índices de referencia como claves de búsqueda.
Este procedimiento de generación de imágenes predictivas se explicará en detalle en la sección (3).
La imagen descodificada generada a través de la serie de procedimientos mencionada anteriormente se almacena en la memoria de imágenes 203 y se proporciona como una señal de imagen para su visualización según el tiempo de visualización.
El flujo de operaciones en el caso de la descodificación de predicción inter-imagen se ha descrito anteriormente, pero un conmutador 209 conmuta entre la descodificación de predicción inter-imagen y la descodificación de predicción intra-imagen. En el caso de la descodificación intra-imagen, una imagen predictiva no se genera mediante compensación de movimiento, sino que una imagen descodificada se genera generando una imagen predictiva de un área actual que va a descodificarse a partir de un área descodificada de la misma imagen y añadiendo la imagen predictiva. La imagen descodificada se almacena en la memoria de imágenes 203, como en el caso de la descodificación de predicción inter-imagen, y se proporciona como una señal de imagen para su visualización según el tiempo de visualización.
(2) Procedimiento de asignación de índices de referencia
A continuación, se explicará, utilizando la FIG. 3 y la FIG. 4, un procedimiento de asignación de índices de referencia en la unidad de conversión de índice de referencia / número de imagen 207 de la FIG. 2.
La FIG. 3 es un diagrama que explica un procedimiento para asignar dos índices de referencia a números de
imagen. Cuando hay una secuencia de imágenes ordenadas en el orden de visualización, los números de imagen se asignan en el orden de descodificación. Los comandos para asignar los índices de referencia a los números de imagen se describen en una cabecera de una sección, que es una subdivisión de una imagen, como la unidad de descodificación y, por tanto, la asignación de los mismos se actualiza cada vez que se descodifica una sección. El comando indica, en serie mediante el número de índices de referencia, el valor diferencial entre un número de imagen que tiene asignado un índice de referencia actual y un número de imagen al que se le asigna un índice de referencia inmediatamente antes que la asignación actual.
Tomando el primer índice de referencia de la FIG. 3 como un ejemplo, puesto que primero se proporciona “-1” como un comando, se resta 1 al número de imagen 16 de la imagen actual que va a descodificarse y, por tanto, el índice de referencia 0 se asigna al número de imagen 15. Después, puesto que se proporciona "-4", se resta 4 al número de imagen 15 y, por tanto, el índice de referencia 1 se asigna al número de imagen 11. Los índices de referencia posteriores se asignan a números de imagen respectivos de la misma manera. Lo mismo se aplica a los segundos índices de referencia.
Según el procedimiento de asignación de índices de referencia convencional mostrado en la FIG. 34, todos los índices de referencia se hacen corresponder con números de imagen respectivos. Por otro lado, en el ejemplo de la FIG. 3, el procedimiento de asignación es exactamente igual al procedimiento convencional, pero una pluralidad de índices de referencia se hacen corresponder con el mismo número de imagen modificando los valores de los comandos.
La FIG. 4 muestra el resultado de la asignación de los índices de referencia. Este diagrama muestra que los primeros índices de referencia y los segundos índices de referencia se asignan a números de imagen respectivos por separado, pero una pluralidad de índices de referencia se asigna a un número de imagen en algunos casos. En el procedimiento de descodificación de la presente invención, se supone que una pluralidad de índices de referencia se asigna a al menos un número de imagen, como este ejemplo.
Si los índices de referencia se utilizan solamente para determinar imágenes de referencia, el procedimiento convencional de asignación uno a uno de índices de referencia a números de imagen es el procedimiento más eficaz. Sin embargo, en caso de que un conjunto de coeficientes de ponderación de coeficientes de predicción lineal se seleccione para la generación de una imagen predictiva utilizando índices de referencia, los mismos coeficientes de predicción lineal tienen que utilizarse para todos los bloques que tengan las mismas imágenes de referencia, de manera que hay una probabilidad extremadamente alta de que no pueda generarse la imagen predictiva óptima. Por tanto, si es posible asignar una pluralidad de índices de referencia a un número de imagen como en el caso de la presente invención, el conjunto de coeficientes de ponderación óptimo de coeficientes de predicción lineal puede seleccionarse de entre una pluralidad de conjuntos candidatos para cada bloque incluso si todos los bloques tienen la misma imagen de referencia y, por tanto, puede generarse la imagen predictiva con una mayor precisión de predicción.
Debe observarse que la descripción anterior muestra el caso en que los números de imagen se proporcionan suponiendo que todas las imágenes de referencia se almacenan en una memoria de referencia. Sin embargo, puesto que a una imagen actual se le proporciona un número de imagen que supera en un valor de uno al número de una imagen que se codificó inmediatamente antes que la imagen actual, solo cuando se almacena la imagen actual que se codificó en último lugar, la continuidad de los números de imagen se mantiene en la memoria de referencia incluso si algunas imágenes no se almacenan y, por tanto, el procedimiento mencionado anteriormente puede utilizarse sin cambios.
(3) Procedimiento de generación de imágenes predictivas
A continuación, se explicará, utilizando la FIG. 5, el procedimiento de generación de imágenes predictivas en la unidad de descodificación de compensación de movimiento 204 de la FIG. 2. Aunque el procedimiento de generación de imágenes predictivas mediante predicción lineal es exactamente idéntico al procedimiento convencional, la flexibilidad en la selección de coeficientes de predicción lineal aumenta debido a que una pluralidad de números de índices de referencia puede hacerse corresponder con la misma imagen.
La imagen B16 es una imagen B actual que va a descodificarse, y los bloques BL01 y BL02 son bloques actuales que van a descodificarse y que pertenecen a la imagen B. La imagen P11 y la imagen B15 se utilizan como la primera imagen de referencia y la segunda imagen de referencia para BL01, y la imagen predictiva se genera con referencia a los bloques BL11 y BL21 que pertenecen a las imágenes P11 y B15, respectivamente. De la misma manera, la imagen P11 y la imagen B15 se utilizan como la primera imagen de referencia y la segunda imagen de
referencia para BL02, y la imagen predictiva se genera con referencia a los bloques BL12 y BL22, respectivamente. Aunque BL01 y BL02 hacen referencia a las mismas imágenes como su primera imagen de referencia y su segunda imagen de referencia, es posible asignar diferentes valores al primer índice de referencia ref1 y al segundo índice de referencia ref2 para BL01 y BL02, respectivamente, utilizando el procedimiento de asignación de índices de referencia explicado en la sección (2). Tomando la FIG. 4 como un ejemplo, 1 y 3 se asignan al primer índice de referencia correspondiente al número de imagen 11, mientras que 1 y 6 se asignan al segundo índice de referencia correspondiente al número de imagen 15. Como resultado, se suponen cuatro combinaciones de estos índices de referencia (ref1, ref2) = (1, 1), (1, 6), (3, 1) y (3, 6) y, por tanto, es posible seleccionar la combinación para obtener el conjunto de coeficientes de ponderación óptimo por cada bloque de entre estas combinaciones. En la FIG. 5, ref1 = 1 y ref2 = 1 se asignan para BL01, y ref1 = 3 y ref2 = 6 se asignan para BL02, por ejemplo.
Según el procedimiento de asignación de referencia convencional mostrado en la FIG. 35, solo una combinación de (ref1, ref2) = (1, 1) puede seleccionarse para BL01 y BL02 en el caso de la FIG. 5 y, por tanto, solo puede seleccionarse un conjunto de coeficientes de ponderación de coeficientes de predicción lineal. Por otro lado, según la presente invención, hay cuatro opciones disponibles y puede decirse que la posibilidad de selección del conjunto de coeficientes de ponderación óptimo aumenta.
Un flujo codificado de una imagen está formado por un área de información común de imagen y por una pluralidad de áreas de datos de sección. La FIG. 6 muestra la estructura del área de datos de sección en el flujo codificado. El área de datos de sección está formada además por un área de cabecera de sección y por una pluralidad de áreas de datos de bloque. Este diagrama muestra cada área de bloque correspondiente a BL01 y a BL02 de la FIG. 5 como un ejemplo del área de datos de bloque.
“ref1” y “ref2” incluidos en BL01 designan el primer índice de referencia y el segundo índice de referencia, respectivamente, que indican dos imágenes a las que hace referencia el bloque BL01. Además, en el área de cabecera de sección, datos para proporcionar los conjuntos de coeficientes de ponderación para la predicción lineal mencionada anteriormente (pconjunto0, pconjunto1, pconjunto2...), se describen para ref1 y ref2, respectivamente. En esta área puede fijarse un número de “pconjuntos” equivalente al número de índices de referencia explicado en la sección (2). De manera más específica, en caso de que diez índices de referencia, comprendidos entre 0 y 9, se utilicen como cada uno del primer índice de referencia y del segundo índice de referencia, diez "pconjuntos" comprendidos entre 0 y 9 pueden fijarse para ref1 y ref2.
La FIG. 7 muestra un ejemplo de tablas de los conjuntos de coeficientes de ponderación incluidos en el área de cabecera de sección. Cada dato indicado por un identificador pconjunto tiene cuatro valores w1, w2, c y d, y estas tablas están estructuras de manera que los valores de ref1 y ref2 pueden hacer referencia directa a esos valores. Además, las secuencias de comandos idx_cmd1 e idx_cmd2 para asignar los índices de referencia a los números de imagen se describen en el área de cabecera de sección.
Utilizando ref1 y ref2 descritos en BL01 en la FIG. 6, un conjunto de coeficientes de ponderación se selecciona a partir de cada una de las tablas para ref1 y ref2 en la FIG. 7. Llevando a cabo una predicción lineal en los valores de píxel de las imágenes de referencia utilizando estos dos conjuntos de coeficientes de ponderación, se genera una imagen predictiva.
A continuación, se explicará el flujo de procesamiento desde la determinación de conjuntos de coeficientes de ponderación hasta la generación de una imagen predictiva.
La FIG. 18 es un diagrama de bloques funcionales que muestra una estructura funcional para generar una imagen predictiva en la unidad de almacenamiento de coeficientes de predicción lineal 206 y en la unidad de descodificación de compensación de movimiento 204.
Una imagen predictiva se genera a través de la unidad de almacenamiento de coeficientes de predicción lineal 206a, la unidad de almacenamiento de coeficientes de predicción lineal 206b, la unidad de cálculo de promedios 204a y la unidad de operaciones de predicción lineal 204b.
La unidad de cálculo de promedios 204a obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206a, un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por ref1 proporcionado por la unidad de análisis de flujos codificados 201 y obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206b, un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por ref2 proporcionado por la unidad de análisis de flujos codificados 201.
La unidad de cálculo de promedios 204a calcula el promedio, para parámetros respectivos, de los conjuntos de coeficientes de ponderación obtenidos a partir de las unidades de almacenamiento de coeficientes de predicción lineal 206a y 206b, respectivamente, para proporcionar los promedios a la unidad de operaciones de predicción lineal 204b como el conjunto de coeficientes de ponderación (w1, w2, c, d) que se utiliza realmente para la predicción lineal. La unidad de operaciones de predicción lineal 204b calcula la imagen predictiva utilizando la ecuación 1 basándose en el conjunto de coeficientes de ponderación (w1, w2, c, d) para proporcionarse.
La FIG. 19 es un diagrama de bloques funcionales que muestra otra estructura funcional para generar una imagen predictiva. Una imagen predictiva se genera a través de la unidad de almacenamiento de coeficientes de predicción lineal 206a, la unidad de almacenamiento de coeficientes de predicción lineal 206b, la unidad de operaciones de predicción lineal 204c, la unidad de operaciones de predicción lineal 204d y la unidad de cálculo de promedios 204e.
La unidad de operaciones de predicción lineal 204c obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206a, un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por refl proporcionado por la unidad de análisis de flujos codificados 201, y calcula la imagen predictiva utilizando la ecuación 1 basándose en el conjunto de coeficientes de ponderación para proporcionarse a la unidad de cálculo de promedios 204e.
De la misma manera, la unidad de operaciones de predicción lineal 204d obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206b, un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por ref2 proporcionado por la unidad de análisis de flujos codificados 201, y calcula la imagen predictiva utilizando la ecuación 1 basándose en el conjunto de coeficientes de ponderación para proporcionarse a la unidad de cálculo de promedios 204e.
La unidad de cálculo de promedios 204e calcula el promedio, para valores de píxel respectivos, de las imágenes predictivas proporcionadas por la unidad de operaciones de predicción lineal 204c y la unidad de operaciones de predicción lineal 204d, respectivamente, para generar la imagen predictiva final a proporcionar.
La FIG. 20A es un diagrama de bloques funcionales que muestra otra estructura funcional para generar una imagen predictiva. Una imagen predictiva se genera a través de la unidad de almacenamiento de coeficientes de predicción lineal 206c, la unidad de almacenamiento de predicción lineal 206d, la unidad de cálculo de promedios 204f y la unidad de operaciones de predicción lineal 204g.
La unidad de cálculo de promedios 204f obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206c, los parámetros de c_1 y d_1 de un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por ref1 proporcionado por la unidad de análisis de flujos codificados 201 y, asimismo, obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206d, los parámetros de c_2 y d_2 de un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por ref2 proporcionado por la unidad de análisis de flujos codificados 201. La unidad de cálculo de promedios 204f calcula el promedio de c_1 y c_2 y el promedio de d_1 y d_2 obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206c y la unidad de almacenamiento de coeficientes de predicción lineal 206d para obtener ‘c' y ‘d' y proporcionarse a la unidad de operaciones de predicción lineal 204g.
Además, la unidad de operaciones de predicción lineal 204g obtiene el parámetro de w1_1 del conjunto de coeficientes de ponderación mencionado anteriormente (w1_1, w2_1, c_1, d_1) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206c, obtiene el parámetro de w2_2 del conjunto de coeficientes de ponderación mencionado anteriormente (w1_2, w2_2, c_2, d_2) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206d, obtiene c y d que son los promedios calculados por la unidad de cálculo de promedios 204f y después calcula la imagen predictiva utilizando la ecuación 1 para proporcionarse.
De manera más específica, cuando se determina el conjunto de coeficientes de ponderación (w1, w2, c, d), que se utiliza realmente para la predicción lineal, de entre el conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206c y el conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206d, la unidad de operaciones de predicción lineal 204g utiliza la siguiente regla.
w1 = w1_1
w2 = w2_2
c = (promedio de c_1 y c_2)
d = (promedio de d_1 y d_2)
La FIG. 20B es un diagrama de bloques funcionales que muestra otra estructura funcional para generar una imagen predictiva. Una imagen predictiva se genera a través de la unidad de almacenamiento de coeficientes de predicción lineal 206e, la unidad de almacenamiento de coeficientes de predicción lineal 206f y la unidad de operaciones de predicción lineal 204h.
La unidad de operaciones de predicción lineal 204h obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206e, los parámetros de w1_1, c_1 y d_1 que forman parte de un conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) seleccionado por refl proporcionado por la unidad de análisis de flujos codificados 201 y, asimismo, obtiene, a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206f, el parámetro de w2_2 que forma parte de un conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) seleccionado por ref2 proporcionado por la unidad de análisis de flujos codificados 201. La unidad de operaciones de predicción lineal 204h calcula la imagen predictiva utilizando la ecuación 1 basándose en w1_1, c_1, d_1, w2_2 obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206e y la unidad de almacenamiento de coeficientes de predicción lineal 206f para proporcionarse.
De manera más específica, cuando se determina el conjunto de coeficientes de ponderación (w1, w2, c, d), que se utiliza realmente para la predicción lineal, de entre el conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206e y el conjunto de coeficientes de ponderación (w1_2, w2_2, c_2, d_2) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206f, la unidad de operaciones de predicción lineal 204h utiliza la siguiente regla. w1 = w1_1
w2 = w2_2
c = c_1
d = d_1
Además, es posible utilizar uno o más parámetros de entre w1, w2, c y d como valores fijos. La FIG. 21 es un diagrama de bloques funcionales en el caso en que solo se utiliza “d” como un valor fijo para la estructura funcional de la FIG. 20A. Una imagen predictiva se genera a través de la unidad de almacenamiento de coeficientes de predicción lineal 206g, la unidad de almacenamiento de coeficientes de predicción lineal 206h, la unidad de cálculo de promedios 204i y la unidad de operaciones de predicción lineal 204j.
Los coeficientes seleccionados por el primer índice de referencia ref1 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206g son solamente (w1_1, c_1), y los coeficientes seleccionados por el segundo índice de referencia ref2 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206h son solamente (w2_2, c_2). La unidad de cálculo de promedios 204i calcula el promedio de c_1 y de c_2 obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206g y de la unidad de almacenamiento de coeficientes de predicción lineal 206h para obtener “c”, y lo proporciona a la unidad de operaciones de predicción lineal 204j.
La unidad de operaciones de predicción lineal 204j obtiene el parámetro de w1_1 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206g, obtiene el parámetro de w2_2 a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206h, obtiene el parámetro de c a partir de la unidad de cálculo de promedios 204i, y después calcula la imagen predictiva utilizando un valor fijo predeterminado como un parámetro de d y la ecuación 1 para proporcionarse. En este caso, también es posible transformar la ecuación 1 en la ecuación 1b para su utilización según se explicó en la primera realización.
Es posible utilizar un valor fijo predeterminado como un valor de d en muchos casos, pero en caso de que el aparato de codificación describa el valor fijo anterior en la cabecera de sección, ese valor fijo puede conmutarse por cada sección extrayéndolo en la unidad de análisis de flujos codificados 201. Asimismo, el valor fijo puede conmutarse por cada imagen o por cada secuencia describiéndose en el área de información común de imagen o en el área de información común de secuencia.
Debe observarse que los procedimientos de descodificación mencionados anteriormente están relacionados con una imagen B que tiene dos imágenes de referencia, pero también es posible ejecutar el mismo procesamiento en el modo de descodificación de una imagen de referencia para una imagen P o una imagen B que tiene solamente una imagen de referencia. En este caso, utilizando solamente uno de entre el primer índice de referencia y el segundo
índice de referencia, pconjunto e idx_cmd para refl o ref2 solo se describen en el área de cabecera de sección incluida en el flujo codificado de la FIG. 6, según el índice de referencia descrito en el área de datos de bloque. Además, como un procedimiento de predicción lineal, se utiliza la siguiente ecuación 3 o la ecuación 4 en lugar de la ecuación 1 explicada en el procedimiento convencional.
La utilización de la ecuación 1 y de la ecuación 3 requiere cuatro parámetros w1, w2, c y d, pero la utilización de la ecuación 4 permite una predicción lineal utilizando solamente tres parámetros w1, c y d. Dicho de otro modo, es posible reducir a tres el número de elementos de datos del conjunto de coeficientes de ponderación que va a describirse en cada área de cabecera de sección, cuando el primer índice de referencia o el segundo índice de referencia se utiliza para una imagen completa como imagen P.
Si se utiliza la ecuación 3, es posible realizar una predicción lineal disponible para las imágenes B y las imágenes P de manera adaptativa sin cambios en la estructura. Si se utiliza la ecuación 4, la cantidad de datos que va a describirse en el área de cabecera de una imagen P puede reducirse y, por tanto, es posible reducir la cantidad de procesamiento gracias a un cálculo simplificado. Sin embargo, puesto que el procedimiento de asignación de índices de referencia sugerido por la presente invención puede aplicarse directamente a cualquiera de los procedimientos anteriores, puede crearse una imagen predictiva con una mayor precisión de predicción, lo que es extremadamente eficaz en la descodificación de imágenes.
Por otro lado, las imágenes a las que se hace referencia en una compensación de movimiento se determinan designando los índices de referencia asignados a imágenes respectivas. En ese caso, el número máximo de imágenes que están disponibles como referencia se ha descrito en el área de información común de imagen del flujo codificado.
La FIG. 38 es un diagrama esquemático de un flujo codificado donde está descrito el número máximo de imágenes que están disponibles como referencia. Tal y como muestra este diagrama, el número máximo de imágenes para “Max_pic1” de ref1 y el número máximo de imágenes para “Max_pic2” de ref2 están descritos en la información común de imagen en el flujo codificado.
La información requerida para la descodificación no es el número máximo de imágenes reales, sino el valor máximo de índice de referencia disponible para designar imágenes.
Puesto que en el procedimiento convencional se asigna un índice de referencia a una imagen, la descripción mencionada anteriormente del número máximo de imágenes no genera ninguna contradicción. Sin embargo, el diferente número de índices de referencia y de imágenes influye significativamente en caso de que una pluralidad de índices de referencia se asigne a un número de imagen, como la presente invención.
Tal y como se ha descrito anteriormente, las secuencias de comandos idx_cmd1 e idx_cmd2 se describen en un flujo codificado con el fin de asignar índices de referencia a números de imagen. Los números de imagen y los índices de referencia se hacen corresponder entre sí en función de cada comando de estas secuencias de comandos idx_cmd1 e idx_cmd2. Para ese fin, conocer el valor máximo de índice de referencia muestra que todos los índices de referencia y los números de imagen se han hecho corresponder entre sí, en concreto, el final de los comandos de las secuencias de comandos idx_cmd1 e idx_cmd2.
Por lo tanto, en la presente realización, el número máximo de índices de referencia disponibles, en lugar del número máximo de imágenes en la técnica anterior, se describe en el área de información común de imagen, que es una cabecera de la imagen. Como alternativa, se describen tanto el número máximo de imágenes como el número máximo de índices de referencia.
La FIG. 23 muestra un área de información común de imagen de un flujo codificado de una imagen donde está descrito el número máximo de índices de referencia. En el área de información común de imagen están descritos el número máximo de índices de referencia disponibles para “Max_idx1” de ref1 y el número máximo de índices de referencia disponibles para “Max_idx2” de ref2.
En la FIG. 23, el número máximo de índices de referencia está descrito en la información común de imagen, pero puede estar estructurado de manera que el número máximo de índices de referencia se describa en el área de datos de sección, así como en la información de común de imagen. Por ejemplo, el número máximo de índices de referencia requerido para cada sección puede describirse claramente, en caso de que el número máximo de índices de referencia requeridos para cada sección sea significativamente diferente al número máximo de los mismos descrito en el área de información común de imagen, de sección a sección; por ejemplo, el número máximo de
índices de referencia en una imagen es 8, el número máximo de índices de referencia requeridos para la sección 1 en la imagen es 8, y el número máximo de índices de referencia requeridos para la sección 2 es 4.
Dicho de otro modo, puede estar estructurado de manera que el número máximo de índices de referencia descrito en la información común de imagen se fije para que sea el valor por defecto común a todas las secciones de la imagen, y el número máximo de índices de referencia requerido para cada sección, que es diferente del valor por defecto, se describa en la cabecera de sección.
Aunque la FIG. 23 y la FIG. 38 muestran ejemplos donde un flujo codificado está formado por un área de información común de imagen y por áreas de datos de sección, el área de información común de imagen y las áreas de datos de sección pueden tratarse como flujos codificados distintos exactamente de la misma manera que un flujo codificado.
(Séptima realización)
A continuación, se explicará el procedimiento de descodificación de imágenes en movimiento de la séptima realización de la presente invención. Puesto que la estructura del aparato de descodificación, el flujo de procesamiento de descodificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la sexta realización, no se repetirá la explicación de los mismos.
En la sexta realización, la predicción lineal se lleva a cabo en cada píxel utilizando la ecuación 1, la ecuación 3 o la ecuación 4 para generar una imagen predictiva en una compensación de movimiento. Sin embargo, todas estas ecuaciones incluyen multiplicaciones, que provocan un aumento significativo en la cantidad de procesamiento, considerando que estas multiplicaciones se llevan a cabo en todos los píxeles.
Por lo tanto, es posible utilizar la ecuación 5 en lugar de la ecuación 1, la ecuación 6 en lugar de la ecuación 3 y la ecuación 7 en lugar de la ecuación 4. Estas ecuaciones sólo permiten cálculos mediante operaciones de desplazamiento de bits sin utilizar multiplicaciones y, por tanto, permiten reducir la cantidad de procesamiento. Al igual que en el caso de la sexta realización, la ecuación 5 se utiliza para generar una imagen predictiva con referencia a dos imágenes al mismo tiempo, y la ecuación 6 o la ecuación 7 se utiliza para generar una imagen predictiva con referencia a una imagen solamente. Puesto que estas ecuaciones requieren identificadores que indican signos más y menos, los conjuntos de coeficientes de ponderación requeridos para las operaciones de predicción son (signo1, m, signo2, n, c) para las ecuaciones 5 y 6, y (signo1, m, c) para la ecuación 7. "signo1" y "signo2" son parámetros que identifican el primer y el segundo signo más y menos, respectivamente. Aunque el número de parámetros sea mayor que en la tercera realización, solo hay un ligero incremento en la cantidad de procesamiento ya que tanto signo1 como signo2 pueden representarse mediante 1 bit.
A continuación, se explicará en detalle el flujo de procesamiento desde la determinación de conjuntos de coeficientes de ponderación hasta la generación de una imagen predictiva con referencia a dos imágenes al mismo tiempo utilizando la ecuación 5.
En primer lugar, se explicará el caso en que la estructura funcional para la generación de una imagen predictiva es como la mostrada en la FIG. 18. La unidad de cálculo de promedios 204a obtiene el conjunto de coeficientes de ponderación (signo1, m_1, signo2_1, n_1, c_1) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206a. Además, la unidad de cálculo de promedios 204a obtiene el conjunto de coeficientes de ponderación (signo1_2, m_2, signo2_2, n_2, c_2) a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206b.
La unidad de cálculo de promedios 204a calcula, para parámetros respectivos, el promedio de los conjuntos de coeficientes de ponderación obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206a y de la unidad de almacenamiento de coeficientes de predicción lineal 206b para considerar el promedio como el conjunto de coeficientes de ponderación (signo1, m, signo2, n, c). La unidad de operaciones de predicción lineal 204b calcula la imagen predictiva utilizando la ecuación 5 basándose en el conjunto de coeficientes de ponderación (signo1, m, signo2, n, c) proporcionado por la unidad de cálculo de promedios 204a.
Debe observarse que la FIG. 18 muestra el conjunto de coeficientes de ponderación (w1_1, w2_1, c_1, d_1) y similares obtenidos a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206a y similares, que se calculan en caso de que se utilice la ecuación 1 explicada en la sexta realización, y no muestra los parámetros utilizados en caso de que la imagen predictiva se obtenga utilizando la ecuación 5, ya que los
parámetros utilizados en el primer caso pueden sustituirse por los parámetros del segundo caso. Lo mismo se aplica para los casos de la FIG. 19 y la FIG. 20, que se describen a continuación.
A continuación, se explicará el caso en que la estructura funcional para la generación de una imagen predictiva es como la mostrada en la FIG. 19. La unidad de operaciones de predicción lineal 204c calcula una imagen predictiva 1 basándose en el conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206a. La unidad de operaciones de predicción lineal 204d calcula una imagen predictiva 2 basándose en el conjunto de coeficientes de ponderación (signo1_2, m_2, signo2_2, n_2, c_2) obtenido a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206b. Además, la unidad de cálculo de promedios 204e calcula, para píxeles respectivos, el promedio de las imágenes predictivas calculadas por las unidades de operaciones de predicción lineal 204c y 204d, respectivamente, para obtener una imagen predictiva.
En este caso, la unidad de operaciones de predicción lineal 204c calcula en primer lugar la imagen predictiva utilizando la ecuación 5 basándose en el conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1), de manera que es posible calcular la imagen predictiva utilizando operaciones de desplazamiento de bits sin utilizar multiplicaciones. Lo mismo se aplica a la unidad de operaciones de predicción lineal 204d. Por otro lado, en el caso de la FIG. 18, puesto que el promedio del conjunto de coeficientes de ponderación (signo1_1, m_1, signo2_1, n_1, c_1) y del conjunto de coeficientes de ponderación (signo1_2, m_2, signo2_2, n_2, c_2) se calcula primero, el promedio de m_1 y m_2 o el promedio de n_1 y n_2, en concreto, los exponentes de 2, pueden no ser números enteros y, por tanto, existe la posibilidad de que aumente la cantidad de procesamiento. Además, si los exponentes de 2 se redondean a números enteros, existe la posibilidad de que aumenten los errores.
A continuación, se explicará el caso en que una imagen predictiva se genera en la estructura funcional mostrada en la FIG. 20A. La unidad de operaciones de predicción lineal 204g calcula una imagen predictiva utilizando la ecuación 5, en función de los parámetros signo1_1 y m_1 que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206c y utilizados para operaciones de desplazamiento de bits, los parámetros signo2_2 y n_2 que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206d y utilizados para operaciones de desplazamientos de bits, y el promedio c calculado por la unidad de cálculo de promedios 204f de los parámetros c_1 y c_2 que se obtienen a partir de las unidades de almacenamiento de coeficientes de predicción lineal 206c y 206d.
En este caso, puesto que los coeficientes utilizados para las operaciones de desplazamiento de bits son los valores obtenidos directamente a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206c o de la unidad de almacenamiento de coeficientes de predicción lineal 206d, los exponentes de 2 de la ecuación 5 son números enteros. Por lo tanto, los cálculos pueden llevarse a cabo utilizando operaciones de desplazamiento de bits y, por tanto, puede reducirse la cantidad de procesamiento.
A continuación, se explicará el caso en que se genera una imagen predictiva en la estructura funcional mostrada en la FIG. 20B. La unidad de operaciones de predicción lineal 204h calcula una imagen predictiva utilizando la ecuación 5 basándose en los parámetros signo1_1, m_1 y c_1 que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206e y los parámetros signo2_2 y n_2 que se obtienen a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206f.
En este caso, puesto que los coeficientes utilizados para las operaciones de desplazamiento de bits son valores que se obtuvieron directamente a partir de la unidad de almacenamiento de coeficientes de predicción lineal 206e o de la unidad de almacenamiento de coeficientes de predicción lineal 206f, los exponentes de 2 de la ecuación 5 son números enteros. Por lo tanto, la imagen predictiva puede calcularse utilizándose operaciones de desplazamiento de bits y, por tanto, puede reducirse la cantidad de procesamiento.
En los casos de las FIG. 20A y 20B, hay parámetros que no necesitan añadirse al flujo codificado para su transmisión, como es el caso de las FIG. 10A y 10B en la sexta realización, y la cantidad de datos del flujo codificado puede reducirse.
Utilizando las ecuaciones de predicción lineal explicadas en la séptima realización, los cálculos pueden llevarse a cabo utilizando operaciones de desplazamiento de bits sin utilizar multiplicaciones, de manera que la cantidad de procesamiento puede reducirse significativamente con respecto a la sexta realización.
En la presente realización, la predicción lineal se lleva a cabo utilizando las ecuaciones 5, 6 y 7 en lugar de las ecuaciones 1, 3 y 4, y utilizando el conjunto de parámetros que va a codificarse (signo1, m, signo2, n, c) en lugar de
(w1, w2, c, d), de manera que los cálculos pueden realizarse utilizando solamente operaciones de desplazamiento de bits y, por tanto, se reduce la cantidad de procesamiento. Sin embargo, también es posible, como otro enfoque, utilizar las ecuaciones 1, 3 y 4 y (w1, w2, c, d) tal cual, limitando los valores seleccionables de w1 y de w2 a solamente los valores disponibles para operaciones de desplazamiento de bits, de manera que los cálculos pueden realizarse utilizando solamente operaciones de desplazamiento de bits y, por tanto, la reducción de la cantidad de procesamiento se consigue exactamente en la misma estructura que la de la sexta realización.
Además, como un procedimiento para tal limitación, es posible limitar los valores de w1 y de w2 de manera que siempre se seleccione 1 para tales valores y se introduzca un flujo codificado que tenga valores arbitrarios de solamente c1 y 2, que son componentes de c C. Tomando la estructura de la FIG. 21 como un ejemplo, (1, c_1) para refl y (1, c_2) para ref2 se codificarán como conjuntos de parámetros. En este caso, el valor de píxel P(i) de la imagen predictiva se calcula mediante la siguiente ecuación donde w1_1 y w2_2 en la ecuación 1a se sustituyen por 1.
P(i) = (Q1(i) (Q2(i)/pow(2, d) (c_1 c_2)/2
(donde pow(2, d) indica la “d”-ésima potencia de 2)
Por consiguiente, es posible reducir significativamente la cantidad de procesamiento para la predicción lineal incluso exactamente en la misma estructura que la de la sexta realización.
Además, tal y como se muestra en la FIG. 24, en caso de que un indicador sft_flg, que indica si es posible o no realizar una predicción lineal utilizando solamente operaciones de desplazamiento de bits, y un indicador cc_flg, que indica si es posible o no llevar a cabo una predicción lineal utilizando solamente c, que es una componente de Cc , estén descritos en la información común de imagen de un flujo codificado de una imagen, el aparato de descodificación puede llevar a cabo una descodificación, haciendo referencia a estos indicadores, en la estructura adecuada para la predicción lineal utilizando solamente operaciones de desplazamiento de bits o una descodificación en la estructura adecuada para la predicción lineal utilizando solamente una componente de CC. Por consiguiente, la cantidad de procesamiento puede reducirse significativamente dependiendo de la estructura del aparato de descodificación.
(Octava realización)
A continuación, se explicará el procedimiento de descodificación de imágenes en movimiento de la octava realización de la presente invención. Puesto que la estructura del aparato de descodificación, el flujo de procesamiento de descodificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la sexta realización, no se repetirá la explicación de los mismos.
Tal y como se explicó en la sección de la técnica anterior, existe un procedimiento para generar una imagen predictiva utilizando una ecuación fija predeterminada, tal como la ecuación 2a y la ecuación 2b, a diferencia de la sexta y séptima realizaciones donde una imagen predictiva se genera utilizando una ecuación de predicción obtenida a partir de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal. Este procedimiento convencional tiene la ventaja de que puede reducirse la cantidad de datos de codificación ya que no es necesario codificar ni transmitir el conjunto de coeficientes de ponderación utilizado para generar la imagen predictiva. Además, la cantidad de procesamiento para la predicción lineal puede reducirse significativamente ya que las ecuaciones de predicción lineal son simples. Sin embargo, este procedimiento que utiliza las ecuaciones fijas tiene el problema de que la precisión de predicción es menor debido a que solo pueden seleccionarse dos ecuaciones de predicción lineal, la 2a y la 2b.
Por tanto, En la presente realización, se utilizan las ecuaciones 8a y 8b en lugar de las ecuaciones 2a y 2b. Las ecuaciones 8a y 8b se obtienen añadiendo C1 y C2 a las ecuaciones 2a y 2b. Puesto que solo aumenta el número de sumas para la operación, la cantidad de procesamiento aumenta ligeramente en comparación con las ecuaciones originales 2a y 2b.
Las ecuaciones 8a y 8b son ecuaciones de predicción para generar una imagen predictiva con referencia a dos imágenes al mismo tiempo, pero cuando se genera una imagen predictiva con referencia a una imagen solamente, la ecuación 9 se utiliza en lugar de la ecuación 3 o la ecuación 4, explicadas en las realizaciones anteriores.
Los conjuntos de coeficientes de ponderación para utilizar este procedimiento son solamente (C1) para ref1 y (C2) para ref2. Por lo tanto, un ejemplo de un flujo codificado de una imagen obtenida utilizando este procedimiento es
como el mostrado en la FIG. 14. En el área de cabecera de sección, los conjuntos de coeficientes de ponderación para la predicción lineal (pconjunto0, pconjunto1, pconjunto2...) se describen por separado para refl y ref2, y cada uno de los conjuntos de coeficientes de ponderación incluye solamente a C. Asimismo, la FIG. 15 muestra un ejemplo de conjuntos de coeficientes de ponderación incluidos en el área de cabecera de sección. A diferencia de la FIG. 7, cada uno de los conjuntos de coeficientes de ponderación de la FIG. 15 incluye solamente a C.
La FIG. 22 es un diagrama de bloques que muestra la estructura funcional para generar una imagen predictiva a través de la unidad de almacenamiento de coeficientes de predicción lineal 206 y de la unidad de descodificación de compensación de movimiento 204 de la FIG. 2.
Una imagen predictiva se genera a través de la unidad de almacenamiento de coeficientes de predicción lineal 206a, la unidad de almacenamiento de coeficientes de predicción lineal 206b y la unidad de operaciones de predicción lineal 204a.
Los conjuntos de coeficientes de ponderación (C1) y (C2), que tienen un elemento respectivamente, se obtienen a partir de las unidades de almacenamiento de coeficientes de predicción lineal 206a y 206b mediante el primer índice de referencia ref1 y el segundo índice de referencia ref2 proporcionados por la unidad de análisis de flujos codificados 201. Estos valores se introducen en la unidad de operaciones de predicción lineal 204a, donde se lleva a cabo una predicción lineal en los mismos utilizando las ecuaciones 8a y 8b, generándose después la imagen predictiva.
Asimismo, cuando se lleva a cabo una predicción lineal con referencia a una imagen solamente, se obtiene cualquiera de los conjuntos de coeficientes de ponderación (C1) y (C2) utilizando solamente uno de entre ref1 y ref2 de la FIG. 22, se lleva a cabo una predicción lineal utilizando la ecuación 9 y después se genera una imagen predictiva.
Puesto que la presente realización solamente requiere utilizar un parámetro para cada uno de ref1 y ref2, puede reducirse la cantidad de datos que va a describirse en el flujo codificado. Además, puesto que las ecuaciones de predicción lineal no requieren operaciones complejas tales como multiplicaciones, la cantidad de operaciones también puede minimizarse. Además, la utilización de los coeficientes C1 y C2 permite una mejora radical en la baja precisión de predicción, considerada como una desventaja del procedimiento convencional de utilizar ecuaciones fijas.
Debe observarse que es posible utilizar el procedimiento de predicción lineal explicado En la presente realización, independientemente de si una pluralidad de índices de referencia puede hacer referencia o no a la misma imagen.
(Novena realización)
A continuación, se explicará el procedimiento de descodificación de imágenes en movimiento de la novena realización de la presente invención. Puesto que la estructura del aparato de descodificación, el flujo de procesamiento de descodificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la sexta realización, no se repetirá la explicación de los mismos.
Información de orden de visualización que indica el tiempo de visualización, o una alternativa a la misma, así como un número de imagen se asignan a cada imagen. La FIG. 39 es un diagrama que muestra un ejemplo de números de imagen y la información de orden de visualización correspondiente. Determinados valores se asignan a la información de orden de visualización según el orden de visualización. En este ejemplo se utiliza un valor que aumenta de uno en uno para cada imagen. En la novena realización se explicará un procedimiento para generar valores de coeficientes utilizados en una ecuación de predicción lineal utilizando esta información de orden de visualización.
En la sexta realización, la predicción lineal se lleva a cabo para cada píxel utilizando la ecuación 1, la ecuación 3 o la ecuación 4 durante la generación de una imagen predictiva en una compensación de movimiento. Sin embargo, puesto que la predicción lineal requiere datos de coeficientes, tales datos de coeficientes se describen en áreas de cabecera de sección en un flujo codificado como conjuntos de coeficientes de ponderación que se utilizan para la creación de la imagen predictiva. Aunque este procedimiento consigue una alta eficacia de codificación, requiere un procesamiento adicional para crear datos de los conjuntos de coeficientes de ponderación y provoca un incremento en la cantidad de bits ya que los conjuntos de coeficientes de ponderación se describen en el flujo codificado.
Por lo tanto, también es posible llevar a cabo la predicción lineal utilizando la ecuación 10, la ecuación 11a o la
ecuación 12a en lugar de la ecuación 1. Utilizando estas ecuaciones, los coeficientes de ponderación pueden determinarse solamente en función de la información de orden de visualización de cada imagen de referencia, por lo que no hay necesidad de codificar los conjuntos de coeficientes de ponderación por separado.
Cuando se supone, por ejemplo, que la imagen actual que va a descodificarse es la n° 16, que la imagen designada por el primer índice de referencia es la n° 11 y que la imagen designada por el segundo índice de referencia es la n° 10, la información de orden de visualización de imágenes respectivas es 15, 13 y 10 y, por tanto, se determinan las siguientes educaciones de predicción lineal.
V1 = (10 - 15)/(10 -13 ) = 5/3
V2 = (15 - 13)/(10 -13 ) = -2/3
P(i) = 5/3 x Q1(i) -2 /3 x Q2(i)
En comparación con el procedimiento para llevar a cabo la predicción lineal utilizando los conjuntos de coeficientes de ponderación de la ecuación 1, las ecuaciones anteriores tienen una menor flexibilidad en lo que respecta a los valores de coeficiente y, por tanto, puede decirse que es imposible crear la imagen predictiva óptima. Sin embargo, en comparación con el procedimiento de conmutar las dos ecuaciones fijas 2a y 2b dependiendo de la relación posicional entre dos imágenes de referencia, las ecuaciones anteriores son ecuaciones de predicción lineal más eficaces.
Cuando el primer índice de referencia y el segundo índice de referencia hacen referencia a la misma imagen, la ecuación 11a y la ecuación 12a no se cumplen porque T1 es igual a T2. Por tanto, cuando las dos imágenes de referencia tienen la misma información de orden de visualización, puede llevarse a cabo una predicción lineal utilizando 1/2 como el valor de V1 y V2. En ese caso, las ecuaciones de predicción lineal son las siguientes.
V1 = 1/2
V2 = 1/2
P(i) = 1/2 x Q1(i) 1/2 x Q2(i)
Además, las ecuaciones 11a y 12a no se cumplen porque T1 es igual a T2 cuando el primer índice de referencia y el segundo índice de referencia hacen referencia a diferentes imágenes pero estas imágenes tienen la misma información de orden de visualización. Cuando las dos imágenes de referencia tienen la misma información de orden de visualización que la mencionada anteriormente, la predicción lineal se llevará a cabo utilizando 1/2 como el valor de V1 y V2.
Tal y como se ha descrito anteriormente, cuando dos imágenes de referencia tienen la misma información de orden de visualización, es posible utilizar un valor predeterminado como coeficiente. Tal coeficiente predeterminado puede ser uno que tenga el mismo peso que 1/2, como se muestra en el ejemplo anterior.
Por otro lado, la utilización de la ecuación 10 en la presente realización, requiere multiplicaciones y divisiones para la predicción lineal. Puesto que la operación de predicción lineal que utiliza la ecuación 10 es una operación en todos los píxeles de un bloque actual que va a descodificarse, la adición de multiplicaciones provoca un aumento significativo de la cantidad de procesamiento.
Por lo tanto, la aproximación de V1 y de V2 a las potencias de 2, como en el caso de la séptima realización, hace posible llevar a cabo una operación de predicción lineal solamente mediante operaciones de desplazamiento y, por lo tanto, reducir la cantidad de procesamiento. Las ecuaciones 11b y 12b se utilizan como ecuaciones de predicción lineal para ese caso en lugar de las ecuaciones 11a y 12a.
Debe observarse que también es posible utilizar las ecuaciones 11c y 12c en lugar de las ecuaciones 11a y 12a. Debe observarse que también es posible utilizar las ecuaciones 11d y 12d en lugar de las ecuaciones 11a y 12a. Debe observarse que el valor de V1 y de V2 aproximados a la potencia de 2 será, tomando la ecuación 11b como ejemplo, el valor de pow(2, v1) obtenido cuando los valores de pow(2, v1) y (T2 - T0) / (T2 - T1) se aproximan mucho entre sí a medida que el valor de v1 cambia en valores de 1.
Por ejemplo, en la FIG. 39, cuando una imagen actual que va a descodificarse es la n° 16, la imagen designada por el primer índice de referencia es la n° 11 y la imagen designada por el segundo índice de referencia es la n° 10, la información de orden de visualización de las respectivas imágenes es 15, 13 y 10, por lo que (T2 - T0) / (T2 - T1) y
+pow(2, v1) se determinan de la siguiente manera.
(T2 - T0)/(T2 - T1) = (10 - 15)/(10 - 13) = 5/3
+ pow(2, 0) = °
+ pow(2, 1) = 2
Puesto que 5/3 tiene un valor más aproximado a 2 que a 1, como resultado de la aproximación se obtiene que V1 = 2.
Como otro procedimiento de aproximación, también es posible conmutar entre una aproximación de redondeo por exceso y una aproximación de redondeo por defecto, dependiendo de la relación entre dos valores de información de orden de visualización T1 y T2.
En ese caso, la aproximación de redondeo por exceso se lleva a cabo en V1 y en V2 cuando T1 es posterior a T2, y la aproximación de redondeo por defecto se lleva a cabo en V1 y en V2 cuando T1 es anterior a T2. También es posible, de manera inversa, llevar a cabo una aproximación de aproximación de redondeo por defecto en V1 y en V2 cuando T1 es posterior a T2 y una aproximación de redondeo por exceso en V1 y en V2 cuando T1 es anterior a T2. Como otro procedimiento de aproximación que utiliza información de orden de visualización, una aproximación de redondeo por exceso se lleva a cabo en una ecuación para V1 y una aproximación de redondeo por defecto se lleva a cabo en una ecuación para V2 cuando T1 es posterior a T2. Como resultado, la diferencia entre los valores de los dos coeficientes aumenta, por lo que es posible obtener valores adecuados para una extrapolación. Por el contrario, cuando T1 es anterior a T2, se comparan el valor en la ecuación para V1 y el valor en la ecuación para V2 y, después, se lleva a cabo una aproximación de redondeo por exceso en el valor inferior y se lleva a cabo una aproximación de redondeo por defecto en el valor superior. Como resultado, la diferencia entre los valores de los dos coeficientes disminuye, por lo que es posible obtener valores adecuados para una interpolación.
Por ejemplo, en la FIG. 39, cuando una imagen actual que va a descodificarse es la n° 16, la imagen designada por el primer índice de referencia es la n° 11 y la imagen designada por el segundo índice de referencia es la n° 10, la información de orden de visualización de las respectivas imágenes es 15, 13 y 10. Puesto que T1 es posterior a T2, una aproximación de redondeo por exceso se lleva a cabo en la ecuación para V1 y una aproximación de redondeo por defecto se lleva a cabo en la ecuación para V2. Como resultado, las ecuaciones 11b y 12b se calculan de la siguiente manera.
(1) Ecuación 11b
(T2 - T0)/(T2 - T1) = (10 - 15)/(10 -13 ) = 5/3
+ pow(2, 0) = 1
+ pow(2, 1) = 2
Como resultado de la aproximación de redondeo por exceso, se obtiene que V1 = 2.
(2) Ecuación 12b
(T0 - T1)/(T2 -T 1 ) = (15 - 13)/(10 -13 ) = -2/3
- pow(2, 0) = - 1
- pow(2, - 1) = -1/2
Como resultado de la aproximación de redondeo por defecto, se obtiene que V2 = -1.
Debe observarse que aunque la ecuación 10 es solamente una ecuación para la predicción lineal en las realizaciones anteriores, también es posible combinar este procedimiento con el procedimiento de predicción lineal mediante la utilización de las dos ecuaciones fijas 2a y 2b explicadas en la sección de la técnica anterior. En ese caso, la ecuación 10 se utiliza en lugar de la ecuación 2a y la ecuación 2b se utiliza tal cual. De manera más específica, la ecuación 10 se utiliza cuando la imagen designada por el primer índice de referencia aparece detrás de la imagen designada por el segundo índice de referencia en el orden de visualización, mientras que la ecuación 2b se utiliza en otros casos.
Por el contrario, también es posible utilizar la ecuación 10 en lugar de la ecuación 2b y utilizar la ecuación 2a tal cual. De manera más específica, la ecuación 2a se utiliza cuando la imagen designada por el primer índice de referencia aparece detrás de la imagen designada por el segundo índice de referencia, y la ecuación 10 se utiliza en otros casos. Sin embargo, cuando las dos imágenes de referencia tienen la misma información de orden de
visualización, la predicción lineal se lleva a cabo utilizando 1/2 como el valor de V1 y V2.
También es posible describir solamente el coeficiente C en las áreas de cabecera de sección que van a utilizarse para la predicción lineal, de la misma manera que el concepto de la octava realización. En ese caso, la ecuación 13 se utiliza en lugar de la ecuación 10. V1 y V2 se obtienen de la misma manera que las realizaciones anteriores.
El procesamiento para generar coeficientes es necesario y, además, los datos de coeficientes necesitan descodificarse en el área de cabecera de sección, pero la utilización de C1 y de C2 permite una predicción lineal más precisa incluso si la precisión de V1 y de V2 es baja. Esto es particularmente eficaz en caso de que V1 y V2 se aproximen a las potencias de 2 para la predicción lineal.
Debe observarse que utilizando la ecuación 13, la predicción lineal puede llevarse a cabo de la misma manera en caso de asignar un índice de referencia a una imagen y en caso de asignar una pluralidad de índices de referencia a una imagen.
En el cálculo de los valores de cada una de las ecuaciones 11a, 12a, 11b, 12b, 11c, 12c, 11d y 12d, las combinaciones de los valores permitidos están limitadas hasta cierto punto en cada sección. Por lo tanto, una sola operación es suficiente para descodificar una sección, a diferencia de la ecuación 10 o de la ecuación 13 donde la operación necesita llevarse a cabo para todos los píxeles de un bloque actual que va a descodificarse y, por lo tanto, parece que influye poco en la cantidad de procesamiento global.
Debe observarse que la información de orden de visualización En la presente realización, no está limitada al orden de visualización, sino que puede ser el tiempo de visualización real o el orden de las imágenes respectivas empezando por una imagen predeterminada, cuyo valor aumenta a medida que transcurre el tiempo de visualización.
(Décima realización)
A continuación, se explicará el procedimiento de descodificación de imágenes en movimiento de la décima realización de la presente invención. Puesto que la estructura del aparato de descodificación, el flujo de procesamiento de descodificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la sexta realización, no se repetirá la explicación de los mismos.
En el procedimiento convencional es posible conmutar, si es necesario, entre la generación de una imagen predictiva mediante la utilización de ecuaciones fijas y la generación de una imagen predictiva mediante la utilización de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal, utilizando indicadores descritos en un área de información común de imagen de un flujo codificado.
En la presente realización, se explicará otro procedimiento para conmutar los diversos procedimientos de predicción lineal explicados de la sexta a la novena realizaciones anteriores utilizando indicadores.
La FIG. 17A muestra la estructura utilizada para el caso en que cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag) para controlar la conmutación anterior están descritos en el área de cabecera de sección del flujo codificado. Tal y como se muestra en la FIG. 17B, p_flag es un indicador que indica si los coeficientes de ponderación se han codificado o no. c_flag es un indicador que indica si sólo se han codificado o no los datos del parámetro C (C1 y C2), de entre los parámetros para ref1 y ref2. t_flag es un indicador que indica si los coeficientes de ponderación para la predicción lineal van a generarse o no utilizando la información de orden de visualización de las imágenes de referencia. Por último, s_flag es un indicador que indica si los coeficientes de ponderación para la predicción lineal van a aproximarse o no a las potencias de 2 para el cálculo mediante la utilización de operaciones de desplazamiento.
Además, d_flag es un indicador que indica si conmutar o no dos ecuaciones fijas predeterminadas, como las ecuaciones 2a y 2b, dependiendo de la relación posicional temporal entre la imagen designada por ref1 y la imagen designada por ref2, cuando se lleva a cabo una predicción lineal utilizando tales dos ecuaciones fijas. De manera más específica, cuando este indicador indica la conmutación de las ecuaciones, la ecuación 2a se utiliza en caso de que la imagen designada por ref1 sea posterior a la imagen designada por ref2 en el orden de visualización, y la ecuación 2b se utiliza en otros casos para llevar a cabo una predicción lineal, como es el caso del procedimiento convencional. Por otro lado, cuando este indicador indica no conmutar las ecuaciones, la ecuación 2b siempre se utiliza para la predicción lineal, independientemente de la relación posicional entre la imagen designada por ref1 y la
imagen designada por ref2.
Debe observarse que incluso si se utiliza la ecuación 2a en lugar de la ecuación 2b como una ecuación que va a utilizarse sin conmutación, la ecuación 2a puede tratarse de la misma manera que la ecuación 2b.
En el aparato de descodificación mostrado en la FIG. 2, la unidad de análisis de flujos codificados 201 analiza el valor del indicador p_flag y proporciona a la unidad de descodificación de compensación de movimiento 204 una instrucción que indica si descodificar o no los datos relacionados con los conjuntos de coeficientes de ponderación para generar una imagen predictiva en función del resultado del análisis y, después, la unidad de descodificación de compensación de movimiento 204 lleva a cabo una compensación de movimiento mediante una predicción lineal. Como resultado, es posible utilizar los conjuntos de coeficientes de ponderación en un aparato de mayor rendimiento para llevar a cabo la predicción lineal y no utilizar los conjuntos de coeficientes de ponderación en un aparato de menor rendimiento para llevar a cabo la predicción lineal.
Asimismo, en el aparato de descodificación mostrado en la FIG. 2, la unidad de análisis de flujos codificados 201 analiza el valor del indicador c_flag y proporciona a la unidad de descodificación de compensación de movimiento 204 una instrucción que indica si descodificar o no solamente los datos relacionados con el parámetro C (C1 y C2) correspondiente a las componentes de CC de los datos de imagen para generar una imagen predictiva mediante la utilización de ecuaciones fijas, en función de los resultados del análisis, y después la unidad de descodificación de compensación de movimiento 204 lleva a cabo una compensación de movimiento mediante predicción lineal. Como resultado, es posible utilizar los conjuntos de coeficientes de ponderación en un aparato de mayor rendimiento para llevar a cabo una predicción lineal y utilizar solamente las componentes de CC en un aparato de menor rendimiento para llevar a cabo la predicción lineal.
Asimismo, en el aparato de descodificación mostrado en la FIG. 2, cuando la unidad de análisis de flujos codificados 201 analiza el valor del indicador d_flag y se lleva a cabo una predicción lineal utilizando ecuaciones fijas en función del resultado del análisis, la unidad de análisis de flujos codificados 201 proporciona una instrucción, que indica si conmutar o no dos ecuaciones de descodificación, a la unidad de descodificación de compensación de movimiento 204, donde se lleva a cabo una compensación de movimiento. Como resultado, es posible conmutar el procedimiento de manera que cualquiera de las ecuaciones fijas se utiliza para la predicción lineal en caso de que se produzca un ligero cambio temporal en el brillo de una imagen, y las dos ecuaciones fijas conmutan para la predicción lineal en caso de que el brillo de la imagen cambie a medida que pasa el tiempo.
Asimismo, en el aparato de descodificación mostrado en la FIG. 2, la unidad de análisis de flujos codificados 201 analiza el valor del indicador t_flag y, en función del resultado del análisis, proporciona a la unidad de descodificación de compensación de movimiento 204 una instrucción que indica si generar o no los coeficientes para una predicción lineal utilizando la información de orden de visualización de las imágenes de referencia, y la unidad de descodificación de compensación de movimiento 204 lleva a cabo una compensación de movimiento. Como resultado, es posible que el aparato de codificación codifique los conjuntos de coeficientes de ponderación para la predicción lineal en caso de que pueda llevarse a cabo una codificación adicional y generar los coeficientes a partir de la información de orden de visualización para la predicción lineal en caso de que no pueda llevarse a cabo una codificación adicional.
Asimismo, en el aparato de codificación mostrado en la FIG. 2, la unidad de análisis de flujos codificados 201 analiza el valor del indicador s_flag y, en función del resultado del análisis, proporciona a la unidad de descodificación de compensación de movimiento 204 una instrucción que indica si aproximar o no los coeficientes de predicción lineal a las potencias de 2 para permitir el cálculo de estos coeficientes mediante operaciones de desplazamiento, y la unidad de descodificación de compensación de movimiento 204 lleva a cabo una compensación de movimiento. Como resultado, es posible utilizar los coeficientes de ponderación sin aproximarse en un aparato de mayor rendimiento para llevar a cabo la predicción lineal, y utilizar los coeficientes de ponderación aproximándose a las potencias de 2 en un aparato de menor rendimiento para llevar a cabo la predicción lineal que puede realizarse mediante operaciones de desplazamiento.
Por ejemplo, el caso de (1) (p, c, d, t, s_flag) = (1, 0, 0, 0, 1) muestra que se descodifican todos los conjuntos de coeficientes de ponderación y que se lleva a cabo una predicción lineal solamente mediante operaciones de desplazamiento representándose los coeficientes como las potencias de 2 explicadas en la séptima realización para generar una imagen predictiva.
El caso de (2) (p, c, d, t, s_flag) = (1, 1, 1, 0, 0) muestra que solamente se descodifican los datos relacionados con el parámetro C (C1 y C2), se utiliza el procedimiento para generar una imagen predictiva añadiendo el coeficiente C a
las ecuaciones fijas como explicadas en la octava realización y, además, las dos ecuaciones fijas se conmutan para su utilización.
En el caso de (3) (p, c, d, t, s_flag) = (0, 0, 0, 0, 0), ningún conjunto de coeficientes de ponderación se descodifica. Dicho de otro modo, muestra que se utiliza el procedimiento para generar una imagen predictiva utilizando solamente la ecuación 2b de entre las ecuaciones fijas del procedimiento convencional.
El caso de (4) (p, c, d, t, s_flag) = (0, 0, 1, 1, 1) muestra que no se descodifica ningún conjunto de coeficientes de ponderación, sino que la predicción lineal se lleva a cabo solamente mediante operaciones de desplazamiento generando los coeficientes de ponderación a partir de información de orden de visualización de las imágenes de referencia y aproximando adicionalmente los coeficientes a las potencias de 2, como se explicó en la novena realización, y después las dos ecuaciones fijas se conmutan para utilizarse y generar una imagen predictiva.
Debe observarse que, en la presente realización, las determinaciones se realizan utilizando cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag), cada uno de los cuales es 1 bit, pero también es posible representar las determinaciones solamente con un indicador de 5 bits en lugar de estos cinco indicadores. En ese caso es posible una descodificación utilizando una descodificación de longitud variable, no mediante la representación con 5 bits. Debe observarse que, en la presente realización, se utilizan los cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag), cada uno de los cuales es 1 bit, pero esto también puede aplicarse al caso en que el procedimiento de predicción lineal conmuta utilizando solamente algunos de estos indicadores. En ese caso, sólo se codifican y describen los indicadores necesarios para la predicción lineal de entre los indicadores mostrados en la FIG. 17A. En el procedimiento convencional se proporciona un indicador en un área de información común de imagen de un flujo codificado para conmutar entre la generación de una imagen predictiva mediante la utilización de ecuaciones fijas y la generación de una imagen predictiva mediante la utilización de conjuntos de coeficientes de ponderación de coeficientes de predicción lineal, para permitir la conmutación entre las mismas en cada imagen. Sin embargo, en este procedimiento, el procedimiento de generación de imágenes predictivas solo puede conmutarse por cada imagen.
Por el contrario, en la presente realización, como se ha mencionado anteriormente, es posible conmutar el procedimiento de generación de una imagen predictiva para cada sección, que es una subdivisión de una imagen, proporcionando el indicador de conmutación en una cabecera de sección de un flujo codificado. Por lo tanto, es posible, por ejemplo, generar la imagen predictiva utilizando los conjuntos de coeficientes de ponderación en una sección que contiene imágenes complejas y generar la imagen predictiva utilizando las ecuaciones fijas en una sección que contiene imágenes simples. Como resultado, la calidad de la imagen puede mejorarse minimizándose al mismo tiempo el aumento de la cantidad de procesamiento.
Debe observarse que, en la presente realización, cinco indicadores (p_flag, c_flag, d_flag, t_flag, s_flag) están descritos en un área de cabecera de sección para la determinación del procedimiento en cada sección, pero también es posible conmutar la determinación por cada imagen describiendo estos indicadores en el área de información común de imagen. Además, también es posible generar una imagen predictiva utilizando el procedimiento óptimo en cada bloque proporcionando el indicador de conmutación en cada bloque, que es una subdivisión de una sección. Debe observarse que la información de orden de visualización En la presente realización, no está limitada al orden de visualización, sino que puede ser el tiempo de visualización real o el orden de imágenes respectivas empezando por una imagen predeterminada, cuyo valor aumenta a medida que transcurre el tiempo de visualización.
(Decimoprimera realización)
A continuación, se explicará el procedimiento de codificación de imágenes en movimiento y el procedimiento de descodificación de imágenes en movimiento de la decimoprimera realización de la presente invención. Puesto que las estructuras del aparato de codificación y del aparato de descodificación, los flujos de procesamiento de codificación y de procesamiento de descodificación y el procedimiento de asignación de índices de referencia son exactamente idénticos a los de la primera y sexta realizaciones, no se repetirá la explicación de los mismos.
En la presente realización, se explicará una tecnología similar a la explicada en la quinta y décima realizaciones. El indicador p_flag indica si se codifica o no un conjunto de parámetros y el indicador c_flag indica si se codifican o no solamente los datos relacionados con el parámetro C (C1 y C2), de entre los parámetros para ref1 y ref2,
descritos en cada sección.
En el aparato de codificación mostrado en la FIG. 1, la unidad de codificación de compensación de movimiento 107 determina, por cada sección o por cada bloque, si codificar o no los datos relacionados con el conjunto de parámetros y proporciona, basándose en la determinación, la información del indicador p_flag a la unidad de generación de flujos codificados 103, donde la información se describe en el flujo codificado, como se muestra en la FIG. 40A.
Asimismo, en el aparato de codificación mostrado en la FIG. 1, la unidad de codificación de compensación de movimiento 107 determina, por cada sección o por cada bloque, si codificar o no solamente los datos relacionados con el parámetro C (C1 y C2) correspondiente a las componentes de CC de los datos de imagen y proporciona, basándose en la determinación, la información del indicador c_flag a la unidad de generación de flujos codificados 103, donde la información se describe en el flujo codificado, como se muestra en la FIG. 40A.
Por otro lado, en el aparato de descodificación mostrado en la FIG. 2, la unidad de análisis de flujos codificados 201 analiza los valores de los indicadores de conmutación p_flag y c_flag y, en función del análisis, proporciona a la unidad de descodificación de compensación de movimiento 204 una instrucción que indica si generar una imagen predictiva mediante la utilización de los conjuntos de parámetros descargados o si generar una imagen predictiva mediante la utilización de ecuaciones fijas, por ejemplo, y la unidad de descodificación de compensación de movimiento 204 lleva a cabo una compensación de movimiento mediante una predicción lineal.
Por ejemplo, tal y como se muestra en la FIG. 40B, (1) cuando el indicador p_flag es 1 y el indicador c_flag es 0, el aparato de codificación codifica todos los conjuntos de parámetros, (2) cuando el indicador p_flag es 1 y el indicador c_flag es 1, el aparato de codificación codifica solamente los datos relacionados con el parámetro C (C1 y C2) y, además, (3) cuando el indicador p_flag es 0 y el indicador c_flag es 0, el aparato de codificación no codifica ningún conjunto de parámetros. Debe observarse que determinando los valores de indicador mostrados en la FIG. 40B puede determinarse si la componente de c C de los datos de imagen se ha codificado o no utilizando el valor del indicador p_flag.
El aparato de codificación procesa los parámetros como se explicó de la FIG. 8 a la FIG. 10, por ejemplo, en el anterior caso (1). Procesa los parámetros como se explicó en la FIG. 16, por ejemplo, en el anterior caso (2). Procesa los parámetros utilizando ecuaciones fijas, por ejemplo, en el anterior caso (3).
El aparato de descodificación procesa los parámetros como se explicó de la FIG. 18 a la FIG. 20, por ejemplo, en el anterior caso (1). Procesa los parámetros como se explicó en la FIG. 22, por ejemplo, en el anterior caso (2). Procesa los parámetros utilizando ecuaciones fijas, por ejemplo, en el anterior caso (3).
A continuación, se explicará de manera específica otro ejemplo de una combinación de los anteriores casos (1) a (3).
En el ejemplo anterior, la codificación de parámetros (tanto si aparato de descodificación recibe los parámetros como si no) conmuta de manera explícita utilizando los indicadores p_flag y c_flag, pero también es posible utilizar una tabla de codificación de longitud variable (tabla VLC) en lugar de los indicadores anteriores.
Tal y como se muestra en las FIG. 41A y 41B, también es posible seleccionar de manera explícita si conmutar entre la ecuación fija 2a y la ecuación fija 2b.
En este caso, la no conmutación de la ecuación 2 significa lo siguiente. En la sección de la técnica anterior se explicó que, por ejemplo, para generar una imagen predictiva, la ecuación fija 2a que incluye los coeficientes fijos se selecciona cuando la imagen designada por el primer índice de referencia aparece detrás, en el orden de visualización, de la imagen designada por el segundo índice de referencia, y la ecuación 2b que incluye coeficientes fijos se selecciona en otros casos. Por otro lado, cuando se ordena no conmutar la ecuación, como se muestra en el ejemplo de la FIG. 41B, esto significa que la ecuación fija 2b que incluye coeficientes fijos se selecciona incluso cuando la imagen designada por el primer índice de referencia aparece detrás, en el orden de codificación, de la imagen designada por el segundo índice de referencia para generar una imagen predictiva.
La información del indicador v_flag para seleccionar de manera explícita si conmutar entre la ecuación fija 2a y la ecuación fija 2b se proporciona por la unidad de generación de flujos codificados 103 y se describe en el flujo codificado mostrado en la FIG. 41A.
La FIG. 41B muestra un ejemplo de procesamiento mediante la utilización del indicador v_flag. Tal y como se muestra en la FIG. 41B, cuando el indicador v_flag vale 1, los parámetros no se codifican (los parámetros no se descargan en el aparato de descodificación. Esto también se aplica a lo descrito a continuación) y la ecuación fija 2 no conmuta. Cuando el indicador v_flag vale 01, los parámetros no se codifican y la ecuación fija 2 conmuta. Cuando el indicador v_flag vale 0000, solo se codifica el parámetro C y la ecuación 2 no conmuta.
Además, cuando el indicador v_flag vale 0001, solo se codifica el parámetro C y la ecuación 2 conmuta. Cuando el indicador v_flag vale 0010, todos los parámetros se codifican y la ecuación 2 no conmuta. Cuando el indicador v_flag vale 0011, todos los parámetros se codifican y la ecuación fija 2 conmuta.
Debe observarse que puesto que todos los parámetros se codifican cuando v_flag vale 0010 y 0011, es posible llevar a cabo una predicción lineal utilizando parámetros de ponderación, sin utilizar ecuaciones fijas, y en ese caso, la determinación de si conmutar o no la ecuación fija se ignora.
Debe observarse que el indicador v_flag puede conmutarse por la unidad de codificación de compensación de movimiento 107 del aparato de codificación mostrado en la FIG. 1 y por la unidad de descodificación de compensación de movimiento 204 del aparato de descodificación mostrado en la FIG. 2. También es posible utilizar el indicador d_flag que indica si conmutar o no la ecuación fija, en lugar del indicador v_flag, además de los indicadores anteriores p_flag y c_flag.
Tal y como se ha descrito anteriormente, la utilización de indicadores permite la conmutación de si el aparato de descodificación recibe (descarga) o no parámetros codificados después de que el aparato de codificación codifique los parámetros. Como resultado, los parámetros que van a codificarse (o recibirse) pueden conmutar de manera explícita según las características de la aplicación y el rendimiento del aparato de descodificación.
Además, puesto que la ecuación fija puede conmutar de manera explícita, la variedad de medios para mejorar la calidad de la imagen aumenta y, por tanto, la eficacia de codificación también mejora. Además, incluso si el aparato de descodificación no tiene ninguna ecuación fija, puede conmutar a la ecuación fija de manera explícita y, por tanto, generar una imagen predictiva utilizando la ecuación fija seleccionada explícitamente.
Debe observarse que la ubicación de los indicadores no está limitada a lo mostrado en la FIG. 40. Además, los valores de los indicadores no están limitados a los explicados anteriormente. Además, puesto que cuatro tipos de usos de parámetros pueden mostrarse de manera explícita utilizando dos tipos de indicadores, los parámetros pueden asignarse de manera diferente a lo explicado anteriormente. Además, todos los parámetros se transmiten en el ejemplo anterior, pero todos los conjuntos de parámetros necesarios pueden transmitirse, como se explicó en la FIG. 10 y en la FIG. 20, por ejemplo.
(Decimosegunda realización)
Si un programa para realizar las estructuras del procedimiento de codificación de imágenes o del procedimiento de descodificación de imágenes mostrados en las realizaciones anteriores se graba en un medio de memoria tal como un disco flexible, entonces es posible llevar a cabo fácilmente el procesamiento mostrado en cada una de las realizaciones en un sistema informático independiente.
Las FIG. 25A, 25B y 25C son ilustraciones que muestran el caso en que el procesamiento se lleva a cabo en un sistema informático que utiliza un disco flexible que almacena el procedimiento de codificación de imágenes o el procedimiento de descodificación de imágenes de la primera a la decimoprimera realizaciones anteriores.
La FIG. 25B muestra una vista delantera y una vista en sección transversal de la apariencia de un disco flexible, y el propio disco flexible, y la FIG. 25A muestra un ejemplo de un formato físico de un disco flexible como un cuerpo de medio de grabación. El disco flexible FD está contenido en una funda F, y una pluralidad de pistas Tr están formadas de manera concéntrica en la superficie del disco en la dirección del radio desde la periferia y cada pista está dividida en 16 sectores Se en la dirección angular. Por lo tanto, en lo que respecta al disco flexible que almacena el programa mencionado anteriormente, el procedimiento de codificación de imágenes como programa se graba en un área asignada para ello en el disco flexible FD.
La FIG. 25C muestra la estructura para grabar y reproducir el programa en y desde el disco flexible FD. Cuando el programa se graba en el disco flexible FD, el procedimiento de codificación de imágenes o el procedimiento de descodificación de imágenes como programa se escribe en el disco flexible desde el sistema informático Cs a través de una unidad de disco flexible. Cuando el procedimiento de codificación de imágenes está generado en el sistema
informático mediante el programa en el disco flexible, el programa se lee del disco flexible utilizando la unidad de disco flexible y se transfiere al sistema informático.
La explicación anterior se realiza bajo la suposición de que un medio de grabación es un disco flexible, pero el mismo procesamiento también puede llevarse a cabo utilizando un disco óptico. Además, el medio de grabación no está limitado a un disco flexible y a un disco óptico, sino que puede utilizarse cualquier otro medio, tal como una tarjeta de CI y un casete ROM, que pueda grabar un programa.
(Decimotercera realización)
Las FIG. 26 a 29 son ilustraciones de dispositivos para llevar a cabo el procesamiento de codificación o el procesamiento de descodificación descritos en las realizaciones anteriores y un sistema que los utiliza.
La FIG. 26 es un diagrama de bloques que muestra la configuración global de un sistema de suministro de contenido ex100 para llevar a cabo un servicio de distribución de contenido. El área para proporcionar el servicio de comunicación está dividida en células de tamaño deseado y estaciones base ex107 a ex110, que son estaciones inalámbricas fijas, están situadas en células respectivas.
En este sistema de suministro de contenido ex100, dispositivos tales como un ordenador ex111, un asistente digital personal (PDA) ex112, una cámara ex113, un teléfono móvil ex114 y un teléfono móvil equipado con cámara ex115 están conectados a Internet ex101 a través de un proveedor de servicios de Internet ex102, una red telefónica ex104 y estaciones base ex107 a ex110.
Sin embargo, el sistema de suministro de contenido ex100 no está limitado a la configuración mostrada en la FIG.
26, y una combinación de cualquiera de los dispositivos puede conectarse. Además, cada dispositivo puede estar conectado directamente a la red telefónica ex104, no a través de las estaciones base ex107 a ex110.
La cámara ex113 es un dispositivo tal como una videocámara digital que puede capturar imágenes en movimiento. El teléfono móvil puede ser un teléfono móvil de un sistema de comunicaciones digitales personales (PDC), de un sistema de acceso múltiple por división de código (CDMA), de un sistema de acceso múltiple por división de código de banda ancha (W-CDMA), de un sistema global para comunicaciones móviles (GSM), de un sistema de teléfono portátil personal (PHS), o similar.
Un servidor de flujo continuo (streaming) ex103 está conectado a la cámara ex113 a través de la estación base ex109 y la red telefónica ex104, que permite una distribución en directo o similar utilizando la cámara ex113 en función de los datos codificados transmitidos desde un usuario. La cámara ex113 o el servidor para transmitir los datos puede codificar los datos.
Además, los datos de imágenes en movimiento capturados por una cámara ex116 pueden transmitirse al servidor de flujo continuo ex103 a través del ordenador ex111. La cámara ex116 es un dispositivo tal como una cámara digital que puede capturar imágenes fijas y en movimiento. La cámara ex116 o el ordenador ex111 pueden codificar los datos de imágenes en movimiento. Un LSI ex117 incluido en el ordenador ex111 o en la cámara ex116 lleva a cabo realmente el procesamiento de codificación.
El software para codificar y descodificar imágenes en movimiento puede estar integrado en cualquier tipo de medio de almacenamiento (tal como un CD-ROM, un disco flexible y un disco duro) que sea un medio de grabación que pueda leerse por el ordenador ex111 o similar. Además, un teléfono móvil equipado con cámara ex115 puede transmitir los datos de imágenes en movimiento. Estos datos de imágenes en movimiento son los datos codificados por el LSI incluido en el teléfono móvil ex115.
El sistema de suministro de contenido ex100 codifica contenidos (tales como vídeo de actuaciones musicales en directo) capturados por usuarios utilizando la cámara ex113, la cámara ex116, o similares, de la misma manera que las realizaciones anteriores y los transmite al servidor de flujo continuo ex103, mientras que el servidor de flujo continuo ex103 realiza una distribución de flujo de los datos de contenido a los clientes bajo solicitud. Los clientes incluyen el ordenador ex111, el PDA ex112, la cámara ex113, el teléfono móvil ex114, y similares, capaces de descodificar los datos codificados mencionados anteriormente. En el sistema de suministro de contenido ex100, los clientes pueden recibir y reproducir por tanto los datos codificados y, además, los clientes pueden recibir, descodificar y reproducir los datos en tiempo real para realizar una radiodifusión personal.
Cuando cada dispositivo de este sistema lleva a cabo la codificación o la descodificación, puede utilizarse el aparato
de codificación de imágenes en movimiento o el aparato de descodificación de imágenes en movimiento, mostrados en cada una de las realizaciones mencionadas anteriormente.
A continuación, se explicará un teléfono móvil como un ejemplo del dispositivo.
La FIG. 27 es un diagrama que muestra el teléfono móvil ex115 que utiliza el procedimiento de codificación de imágenes en movimiento y el procedimiento de descodificación de imágenes en movimiento explicados en las realizaciones anteriores. El teléfono móvil ex115 tiene una antena ex201 para enviar y recibir ondas de radio hacia y desde la estación base ex110, una unidad de cámara ex203, tal como una cámara CCD que puede capturar imágenes estáticas y de vídeo, una unidad de visualización ex202, tal como una pantalla de cristal líquido para mostrar los datos obtenidos descodificando vídeo, y similares, capturado por la unidad de cámara ex203 y recibido a través de la antena ex201, una unidad de cuerpo que incluye un conjunto de teclas de funcionamiento ex204, una unidad de salida de voz ex208, tal como un altavoz para emitir voz, una unidad de entrada de voz 205, tal como un micrófono para introducir voz, un medio de almacenamiento ex207 para almacenar datos codificados o descodificados, tales como datos de imágenes estáticas o en movimiento capturadas por la cámara, datos de texto y datos de imágenes estáticas o en movimiento de correos electrónicos recibidos, y una unidad de ranura ex206 para acoplar el medio de almacenamiento ex207 al teléfono móvil ex115. El medio de almacenamiento ex207 incluye un elemento de memoria flash, un tipo de memoria de solo lectura eléctricamente programable y borrable (EEPROM), que es una memoria no volátil que puede reescribirse y borrarse eléctricamente, en un recubrimiento de plástico tal como una tarjeta SD.
El teléfono móvil ex115 se explicará además con referencia a la FIG. 28. En el teléfono móvil ex115, una unidad de circuito de suministro de energía ex310, una unidad de control de entrada de operaciones ex304, una unidad de codificación de imágenes ex312, una unidad de interfaz de cámara ex303, una unidad de control de pantalla de cristal líquido (LCD) ex302, una unidad de descodificación de imágenes ex309, una unidad de multiplexación / desmultiplexación ex308, una unidad de grabación / reproducción ex307, una unidad de circuito de módem ex306 y una unidad de procesamiento de voz ex305 están conectadas a una unidad de control principal ex311 estructurada para controlar de manera global la unidad de visualización ex202 y la unidad de cuerpo que incluye las teclas de funcionamiento ex204, y están conectadas entre sí a través de un bus síncrono ex313.
Cuando un usuario pulsa la tecla de fin de llamada o la tecla de encendido, la unidad de circuito de suministro de energía ex310 suministra energía a las unidades respectivas desde un paquete de baterías para activar el teléfono móvil digital equipado con cámara ex115 para hacer que pase a un estado preparado.
En el teléfono móvil ex115, la unidad de procesamiento de voz ex305 convierte las señales de voz recibidas por la unidad de entrada de voz ex205, en modo de conversación, en datos de voz digitales bajo el control de la unidad de control principal ex311 que incluye una CPU, ROM, RAM y otros dispositivos, la unidad de circuito de módem ex306 lleva a cabo un procesamiento de espectro ensanchado de los datos de voz digitales y la unidad de circuito de envío / recepción ex301 lleva a cabo una conversión de digital a analógico y una transformada de frecuencia de los datos para transmitirlos a través de la antena ex201. Además, en el teléfono móvil ex115, después de que los datos recibidos por la antena ex201 en el modo de conversación se amplifiquen y se sometan a una transformada de frecuencia y a una conversión de analógico a digital, la unidad de circuito de módem ex306 lleva a cabo un procesamiento de espectro ensanchado inverso de los datos, y la unidad de procesamiento de voz ex305 los convierte en datos de voz analógicos para proporcionarlos a través de la unidad de salida de voz 208.
Además, cuando se transmiten correos electrónicos en el modo de comunicación de datos, los datos de texto del correo electrónico introducidos mediante el funcionamiento de las teclas de funcionamiento ex204 de la unidad de cuerpo se envían a la unidad de control principal ex311 a través de la unidad de control de entrada de operaciones ex304. En la unidad de control principal ex311, después de que la unidad de circuito de módem ex306 lleve a cabo el procesamiento de espectro ensanchado de los datos de texto y la unidad de circuito de envío / recepción ex301 lleve a cabo una conversión de digital a analógico y una transformada de frecuencia en los mismos, los datos se transmiten a la estación base ex110 a través de la antena ex201.
Cuando los datos de imagen se transmiten en el modo de comunicación de datos, los datos de imagen capturados por la unidad de cámara ex203 se suministran a la unidad de codificación de imágenes ex312 a través de la unidad de interfaz de cámara ex303. Cuando no se transmiten datos de imagen, también es posible mostrar los datos de imagen capturados por la unidad de cámara ex203 directamente en la unidad de visualización 202 a través de la unidad de interfaz de cámara ex303 y la unidad de control LCD ex302.
La unidad de codificación de imágenes ex312, que incluye el aparato de codificación de imágenes explicado en la
presente invención, comprime y codifica los datos de imagen suministrados por la unidad de cámara ex203 mediante el procedimiento de codificación utilizado para el aparato de codificación de imágenes mostrado en las realizaciones anteriores para transformarlos en datos de imagen codificados y los envía a la unidad de multiplexación / desmultiplexación ex308. En este momento, el teléfono móvil ex115 envía las voces recibidas por la unidad de entrada de voz ex205 durante la captura por medio de la unidad de cámara ex203 a la unidad de multiplexación / desmultiplexación ex308 como datos de voz digitales a través de la unidad de procesamiento de voz ex305.
La unidad de multiplexación / desmultiplexación ex308 multiplexa los datos de imagen codificados suministrados por la unidad de codificación de imágenes ex312 y los datos de voz suministrados por la unidad de procesamiento de voz ex305 mediante un procedimiento predeterminado, la unidad de circuito de módem ex306 lleva a cabo un procesamiento de espectro ensanchado en los datos multiplexados obtenidos como resultado de la multiplexación, y la unidad de circuito de envío / recepción ex301 lleva a cabo una conversión de digital a analógico y una transformada de frecuencia en los datos para su transmisión a través de la antena ex201.
En lo que respecta a la recepción de datos de un archivo de imágenes en movimiento que está enlazado a una página web o similar en el modo de comunicación de datos, la unidad de circuito de módem ex306 lleva a cabo un procesamiento de espectro ensanchado inverso de la señal recibida desde la estación base ex110 a través de la antena ex201 y envía los datos multiplexados obtenidos como resultado del procesamiento a la unidad de multiplexación / desmultiplexación ex308.
Con el fin de descodificar los datos multiplexados recibidos a través de la antena ex201, la unidad de multiplexación / desmultiplexación ex308 separa los datos multiplexados en un flujo de bits codificado de datos de imagen y un flujo de bits codificado de datos de voz y suministra los datos de imagen codificados a la unidad de descodificación de imágenes ex309 y los datos de voz a la unidad de procesamiento de voz ex305, respectivamente, a través del bus síncrono ex313.
Después, la unidad de descodificación de imágenes ex309, que incluye el aparato de descodificación de imágenes explicado en la presente invención, descodifica el flujo de bits codificado de datos de imagen mediante el procedimiento de descodificación correspondiente al procedimiento de codificación mostrado en las realizaciones mencionadas anteriormente para generar datos de imágenes en movimiento reproducidos y suministra estos datos a la unidad de visualización ex202 a través de la unidad de control LCD ex302 y, por tanto, se muestran los datos de imágenes en movimiento incluidos en un archivo de imágenes en movimiento enlazado a una página web, por ejemplo. Al mismo tiempo, la unidad de procesamiento de voz ex305 convierte los datos de voz en datos de voz analógicos y después suministra estos datos a la unidad de salida de voz ex208 y, por tanto, se reproducen los datos de voz incluidos en un archivo de imágenes en movimiento enlazado a una página web, por ejemplo.
La presente invención no está limitada al sistema mencionado anteriormente, y al menos cualquiera del aparato de codificación de imágenes y el aparato de descodificación de imágenes de las realizaciones mencionadas anteriormente pueden incorporarse en un sistema de radiodifusión digital mostrado en la FIG. 29. Esta radiodifusión digital por satélite o terrestre ha aparecido recientemente en los medios de comunicación. De manera más específica, un flujo de bits codificado de información de vídeo se transmite desde una estación de radiodifusión ex409 hasta un satélite de comunicaciones o de radiodifusión ex410 a través de ondas de radio. Tras la recepción del mismo, el satélite de radiodifusión ex410 transmite ondas de radio para la radiodifusión, una antena de uso doméstico ex406 con una función de recepción de radiodifusión por satélite recibe las ondas de radio y una televisión (receptor) ex401 o una unidad de adaptación multimedia (STB) ex407 descodifica el flujo de bits codificado para su reproducción.
El aparato de descodificación de imágenes mostrado en las realizaciones mencionadas anteriormente puede implementarse en el aparato de reproducción ex403 para leer y descodificar el flujo de bits codificado grabado en un medio de almacenamiento ex402, es decir, un medio de grabación tal como un CD y un DVD. En este caso, las señales de vídeo reproducidas se muestran en un monitor ex404. También se concibe implementar el aparato de descodificación de imágenes en la unidad de adaptación multimedia ex407 conectada a un cable ex405 para una televisión por cable o la antena ex406 para la radiodifusión por satélite y/o terrestre para su reproducción en el monitor ex408 de la televisión ex401. El aparato de descodificación de imágenes puede estar incorporado en la televisión, no en la unidad de adaptación multimedia. Como alternativa, un coche ex412 que tiene una antena ex411 puede recibir señales desde el satélite ex410, la estación base ex107 o similar para reproducir imágenes en movimiento en un dispositivo de visualización tal como un sistema de navegación para coches ex413.
Además, el aparato de codificación de imágenes mostrado en las realizaciones mencionadas anteriormente puede codificar señales de imágenes para su grabación en un medio de grabación. Como un ejemplo concreto, hay un
grabador ex420, tal como un grabador de DVD para grabar señales de imágenes en un disco DVD ex421 y un grabador de disco para la grabación en un disco duro. También pueden grabarse en una tarjeta SD ex422. Si el grabador ex420 incluye el aparato de descodificación de imágenes mostrado en las realizaciones mencionadas anteriormente, las señales de imágenes grabadas en el disco DVD ex421 o la tarjeta SD ex422 pueden reproducirse para su visualización en el monitor ex408.
La estructura sin la unidad de cámara ex203, la unidad de interfaz de cámara ex303 y la unidad de codificación de imágenes ex312, de entre las unidades mostradas en la FIG. 28, pueden concebirse como la estructura del sistema de navegación para coches ex413. Lo mismo se aplica al ordenador ex111, a la televisión (receptor) ex401 y a otros dispositivos.
Además, tres tipos de implementaciones pueden concebirse para un terminal tal como el teléfono móvil ex114 mencionado anteriormente: un terminal de envío / recepción que incluye tanto un codificador como un descodificador, un terminal de envío que incluye solamente un codificador y un terminal de recepción que incluye solamente un descodificador.
Tal y como se ha descrito anteriormente, es posible utilizar el procedimiento de codificación de imágenes en movimiento o el procedimiento de descodificación de imágenes en movimiento en las realizaciones mencionadas anteriormente en cualquiera de los aparatos y sistemas mencionados anteriormente y, utilizando este procedimiento, pueden obtenerse los efectos descritos en las realizaciones anteriores.
Aplicabilidad industrial
La presente invención es adecuada para que un aparato de codificación de imágenes lleve a cabo una codificación inter-imagen para generar una imagen predictiva generando comandos que indican una correspondencia entre números de imagen e índices de referencia para designar imágenes de referencia y coeficientes utilizados para la generación de imágenes predictivas, designando una imagen de referencia a la que se hace referencia utilizando un índice de referencia, cuando se lleva a cabo una compensación de movimiento en un bloque de una imagen actual que va a codificarse, y llevando a cabo una predicción lineal utilizando un coeficiente correspondiente al índice de referencia en un bloque obtenido mediante compensación de movimiento en la imagen de referencia designada. Además, la presente invención es adecuada para que un aparato de descodificación de imágenes descodifique una señal codificada obtenida como resultado de la codificación realizada por el aparato de codificación de imágenes.
Claims (2)
1. Un procedimiento de descodificación de imágenes para descodificar un flujo de bits de una señal de imagen codificada, comprendiendo el procedimiento de descodificación de imágenes:
descodificar un flujo de bits de una señal de imagen codificada para obtener: (1) comandos que indican la correspondencia entre índices de referencia e imágenes de referencia; (2) información que indica un valor máximo de índice de referencia; (3) una pluralidad de conjuntos de coeficientes de ponderación utilizados para generar una imagen predictiva; (4) un índice de referencia que identifica una imagen de referencia para un bloque objetivo de descodificación; y (5) un error de predicción;
designar, basándose en los comandos y el índice de referencia, una imagen de referencia a la que se hace referencia cuando el bloque objetivo de descodificación se descodifica mediante compensación de movimiento; especificar un conjunto de coeficientes de ponderación que corresponde al índice de referencia, de entre la pluralidad de conjuntos de coeficientes de ponderación;
generar la imagen predictiva llevando a cabo predicción lineal, utilizando el conjunto de coeficientes de ponderación especificado, sobre valores de píxel de un bloque de referencia obtenido a partir de la imagen de referencia designada en dicha designación; y
generar una imagen reconstruida a partir de la imagen predictiva y el error de predicción,
donde cada uno de la pluralidad de conjuntos de coeficientes de ponderación se especifica mediante uno correspondiente de la pluralidad de índices de referencia,
donde, en dicha especificación, se especifica un conjunto de coeficientes de ponderación que corresponde al índice de referencia que se obtiene mediante la descodificación del bloque objetivo de descodificación, de entre los al menos dos conjuntos de coeficientes de ponderación, y
caracterizado porque
al menos dos índices de referencia entre la pluralidad de índices de referencia se asignan a una imagen de referencia a la que hace referencia en los comandos, y al menos dos conjuntos de coeficientes de ponderación entre la pluralidad de conjuntos de coeficientes de ponderación se asignan a dicha una imagen de referencia mediante dichos al menos dos índices de referencia.
2. Un aparato de descodificación de imágenes que descodifica un flujo de bits de una señal de imagen codificada, comprendiendo el aparato de descodificación de imágenes:
una unidad de descodificación de señal de imagen codificada que puede hacerse funcionar para descodificar un flujo de bits de una señal de imagen codificada para obtener: (1) comandos que indican la correspondencia entre índices de referencia e imágenes de referencia; (2) información que indica un valor máximo de índice de referencia; (3) una pluralidad de conjuntos de coeficientes de ponderación utilizados para generar una imagen predictiva; (4) un índice de referencia que identifica una imagen de referencia para un bloque objetivo de descodificación; y (5) un error de predicción;
una unidad de designación de imágenes de referencia que puede hacerse funcionar para designar, basándose en los comandos y el índice de referencia, una imagen de referencia a la que se hace referencia cuando se descodifica el bloque objetivo mediante compensación de movimiento;
una unidad de especificación de coeficientes de ponderación que puede hacerse funcionar para especificar un conjunto de coeficientes de ponderación que corresponde al índice de referencia, de entre la pluralidad de conjuntos de coeficientes de ponderación;
una unidad de generación de imágenes predictivas que puede hacerse funcionar para generar la imagen predictiva llevando a cabo predicción lineal, utilizando el conjunto de coeficientes de ponderación especificado, sobre valores de píxel de un bloque de referencia obtenido a partir de la imagen de referencia designada por dicha unidad de designación de imágenes de referencia; y
una unidad de generación de imagen reconstruida que puede hacerse funcionar para generar una imagen reconstruida a partir de la imagen predictiva y el error de predicción,
donde cada uno de la pluralidad de conjuntos de coeficientes de ponderación se especifica mediante uno correspondiente de la pluralidad de índices de referencia,
donde dicha unidad de especificación de coeficientes de ponderación especifica un conjunto de coeficientes de ponderación que corresponde al índice de referencia que se obtiene mediante descodificación del bloque objetivo de descodificación, de entre los al menos dos conjuntos de coeficientes de ponderación, y
caracterizado porque
al menos dos índices de referencia entre la pluralidad de índices de referencia se asignan a la una imagen de referencia en los comandos, y al menos dos conjuntos de coeficientes de ponderación entre la pluralidad de conjuntos de coeficientes de ponderación se asignan a dicha una imagen de referencia mediante dichos al menos dos índices de referencia.
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002232160 | 2002-08-08 | ||
JP2002273992 | 2002-09-19 | ||
JP2002289294 | 2002-10-01 | ||
JP2002296726 | 2002-10-09 | ||
JP2002370722 | 2002-12-20 | ||
JP2003008751 | 2003-01-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2767066T3 true ES2767066T3 (es) | 2020-06-16 |
Family
ID=31721895
Family Applications (10)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14197727.2T Expired - Lifetime ES2636947T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES10178507.9T Expired - Lifetime ES2524117T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación y procedimiento de descodificación de imágenes en movimiento |
ES17188120T Expired - Lifetime ES2767954T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES14197723.1T Expired - Lifetime ES2650068T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación y procedimiento de descodificación de imágenes en movimiento |
ES14177815.9T Expired - Lifetime ES2656106T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de decodificación de imágenes en movimiento |
ES03741520T Expired - Lifetime ES2401774T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación y procedimiento de descodificación de imágenes en movimiento |
ES17188103T Expired - Lifetime ES2767066T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES14197718.1T Expired - Lifetime ES2673393T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación de imágenes en movimiento y procedimiento de descodificación de imágenes en movimiento |
ES14197725.6T Expired - Lifetime ES2638189T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES14177707.8T Expired - Lifetime ES2653437T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
Family Applications Before (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14197727.2T Expired - Lifetime ES2636947T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES10178507.9T Expired - Lifetime ES2524117T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación y procedimiento de descodificación de imágenes en movimiento |
ES17188120T Expired - Lifetime ES2767954T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES14197723.1T Expired - Lifetime ES2650068T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación y procedimiento de descodificación de imágenes en movimiento |
ES14177815.9T Expired - Lifetime ES2656106T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de decodificación de imágenes en movimiento |
ES03741520T Expired - Lifetime ES2401774T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación y procedimiento de descodificación de imágenes en movimiento |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14197718.1T Expired - Lifetime ES2673393T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de codificación de imágenes en movimiento y procedimiento de descodificación de imágenes en movimiento |
ES14197725.6T Expired - Lifetime ES2638189T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
ES14177707.8T Expired - Lifetime ES2653437T3 (es) | 2002-08-08 | 2003-07-22 | Procedimiento de descodificación de imágenes en movimiento |
Country Status (9)
Country | Link |
---|---|
US (15) | US7308145B2 (es) |
EP (13) | EP1906671A3 (es) |
KR (5) | KR100976017B1 (es) |
CN (7) | CN101873491B (es) |
DK (2) | DK1530374T3 (es) |
ES (10) | ES2636947T3 (es) |
HU (2) | HUE047568T2 (es) |
PT (4) | PT1530374E (es) |
WO (1) | WO2004015999A1 (es) |
Families Citing this family (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7003035B2 (en) | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
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 |
US8406301B2 (en) * | 2002-07-15 | 2013-03-26 | Thomson Licensing | Adaptive weighting of reference pictures in video encoding |
US7903742B2 (en) * | 2002-07-15 | 2011-03-08 | Thomson Licensing | Adaptive weighting of reference pictures in video decoding |
US7154952B2 (en) * | 2002-07-19 | 2006-12-26 | Microsoft Corporation | Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures |
KR100976017B1 (ko) | 2002-08-08 | 2010-08-17 | 파나소닉 주식회사 | 동화상의 부호화 방법 및 복호화 방법 |
MXPA05003464A (es) * | 2002-10-01 | 2005-07-05 | Thomson Licensing Sa | Ponderacion implicita de imagenes de referencia en un codificador de video. |
US7542510B2 (en) * | 2002-11-20 | 2009-06-02 | Panasonic Corporation | Moving picture predicting method, moving image encoding method and device, and moving image decoding method and device |
JP2004179687A (ja) * | 2002-11-22 | 2004-06-24 | Toshiba Corp | 動画像符号化/復号化方法及び装置 |
ATE515883T1 (de) * | 2004-04-28 | 2011-07-15 | Panasonic Corp | Stream-erzeugungsvorrichtung, stream- erzeugungsverfahren, codierungsvorrichtung, codierungsverfahren, aufzeichnungsmedium und programm dafür |
US8731054B2 (en) | 2004-05-04 | 2014-05-20 | Qualcomm Incorporated | Method and apparatus for weighted prediction in predictive frames |
US20060083298A1 (en) * | 2004-10-14 | 2006-04-20 | Nokia Corporation | Reference picture management in video coding |
US8621543B2 (en) * | 2004-12-08 | 2013-12-31 | Imagine Communications Ltd. | Distributed statistical multiplexing of multi-media |
KR100703749B1 (ko) * | 2005-01-27 | 2007-04-05 | 삼성전자주식회사 | 잔차 재 추정을 이용한 다 계층 비디오 코딩 및 디코딩방법, 이를 위한 장치 |
TWI280803B (en) * | 2005-07-20 | 2007-05-01 | Novatek Microelectronics Corp | Method and apparatus for motion estimation |
US8233535B2 (en) * | 2005-11-18 | 2012-07-31 | Apple Inc. | Region-based processing of predicted pixels |
CN101998120B (zh) * | 2006-05-24 | 2014-07-30 | 松下电器产业株式会社 | 图像编码装置、图像编码方法及图像编码集成电路 |
BRPI0622046B1 (pt) * | 2006-09-30 | 2020-01-21 | Interdigital Vc Holdings Inc | método e dispositivo para codificar e decodificar camada de aprimoramento de cor para vídeo |
US8256005B2 (en) * | 2007-01-08 | 2012-08-28 | Apple Inc. | Protection of audio or video data in a playback device |
JP2008177907A (ja) * | 2007-01-19 | 2008-07-31 | Fujitsu Ltd | 動画データ復号装置、情報機器、動画データ復号方法および動画データ復号プログラム |
US8494049B2 (en) * | 2007-04-09 | 2013-07-23 | Cisco Technology, Inc. | Long term reference frame management with error video feedback for compressed video communication |
US8254455B2 (en) * | 2007-06-30 | 2012-08-28 | Microsoft Corporation | Computing collocated macroblock information for direct mode macroblocks |
AU2007237313A1 (en) * | 2007-12-03 | 2009-06-18 | Canon Kabushiki Kaisha | Improvement for error correction in distributed vdeo coding |
US8270483B1 (en) * | 2008-01-18 | 2012-09-18 | Maxim Integrated Products, Inc. | Method and apparatus for applying accurate parameter estimation and efficient fade detection in weighted prediction for video compression |
US20100303155A1 (en) * | 2008-01-29 | 2010-12-02 | Yuki Maruyama | Image coding device, image coding method, image coding integrated circuit and image coding program |
KR101353304B1 (ko) * | 2008-10-24 | 2014-01-21 | 에스케이 텔레콤주식회사 | 적응적 보간 필터 계수를 이용한 영상 부호화/복호화 방법 및 장치 |
US8189666B2 (en) * | 2009-02-02 | 2012-05-29 | Microsoft Corporation | Local picture identifier and computation of co-located information |
US20110023548A1 (en) | 2009-07-29 | 2011-02-03 | Garner Sean M | Glass substrate comprising an edge web portion |
WO2011037420A2 (ko) * | 2009-09-25 | 2011-03-31 | 에스케이텔레콤 주식회사 | 인접 화소를 이용한 인터 예측 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
CN103826131B (zh) * | 2010-04-08 | 2017-03-01 | 株式会社东芝 | 图像解码方法以及图像解码装置 |
WO2011125211A1 (ja) | 2010-04-08 | 2011-10-13 | 株式会社 東芝 | 画像符号化方法及び画像復号化方法 |
WO2011142277A1 (ja) * | 2010-05-13 | 2011-11-17 | シャープ株式会社 | 予測画像生成装置、動画像復号装置、及び、動画像符号化装置 |
KR101341993B1 (ko) | 2010-10-06 | 2013-12-16 | 에스케이텔레콤 주식회사 | 고정밀 필터를 이용한 영상 부호화/복호화 방법 및 장치 |
WO2012047047A2 (ko) * | 2010-10-06 | 2012-04-12 | 에스케이텔레콤 주식회사 | 고정밀 필터를 이용한 영상 부호화/복호화 방법 및 장치 |
CN107105270B (zh) | 2010-12-13 | 2020-04-24 | 韩国电子通信研究院 | 帧间预测方法 |
JP2014501091A (ja) | 2010-12-17 | 2014-01-16 | エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート | インター予測方法及びその装置 |
EP2698999B1 (en) | 2011-04-12 | 2017-01-04 | Sun Patent Trust | Motion-video encoding method, motion-video encoding apparatus, motion-video decoding method, motion-video decoding apparatus, and motion-video encoding/decoding apparatus |
JP5865366B2 (ja) | 2011-05-27 | 2016-02-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置、および、画像符号化復号装置 |
US9485518B2 (en) | 2011-05-27 | 2016-11-01 | Sun Patent Trust | Decoding method and apparatus with candidate motion vectors |
PL2717579T3 (pl) | 2011-05-31 | 2020-07-27 | Sun Patent Trust | Sposób dekodowania obrazu i urządzenie do dekodowania obrazu |
EP4228264B1 (en) | 2011-06-23 | 2024-07-31 | Sun Patent Trust | Image decoding device, image encoding device |
KR102067683B1 (ko) | 2011-06-24 | 2020-01-17 | 선 페이턴트 트러스트 | 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치 |
CN106878722B (zh) | 2011-06-24 | 2019-11-12 | 太阳专利托管公司 | 解码方法、解码装置、编码方法、编码装置 |
RU2608244C2 (ru) | 2011-06-27 | 2017-01-17 | Сан Пэтент Траст | Способ кодирования изображений, способ декодирования изображений, устройство кодирования изображений, устройство декодирования изображений и устройство кодирования и декодирования изображений |
CN103563377B (zh) | 2011-06-28 | 2017-05-10 | 太阳专利托管公司 | 解码方法及解码装置 |
MX2013010892A (es) | 2011-06-29 | 2013-12-06 | Panasonic Corp | Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes. |
MY167090A (en) | 2011-06-30 | 2018-08-10 | Sun Patent Trust | Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus |
AU2012277219A1 (en) | 2011-06-30 | 2013-09-19 | Sun Patent Trust | Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device |
RU2604680C2 (ru) | 2011-07-11 | 2016-12-10 | Сан Пэтент Траст | Способ декодирования изображений, способ кодирования изображений, устройство декодирования изображений, устройство кодирования изображений и устройство кодирования и декодирования изображений |
MX341415B (es) | 2011-08-03 | 2016-08-19 | Panasonic Ip Corp America | Metodo de codificacion de video, aparato de codificacion de video, metodo de decodificacion de video, aparato de decodificacion de video y aparato de codificacion/decodificacion de video. |
BR112014004797B1 (pt) | 2011-10-17 | 2022-02-15 | Kabushiki Kaisha Toshiba | Método de decodificação |
JP5698644B2 (ja) * | 2011-10-18 | 2015-04-08 | 株式会社Nttドコモ | 動画像予測符号化方法、動画像予測符号化装置、動画像予測符号化プログラム、動画像予測復号方法、動画像予測復号装置及び動画像予測復号プログラム |
BR112014008403B1 (pt) | 2011-10-19 | 2022-05-10 | Sun Patent Trust | Método de codificação de imagem, aparelho de codificação de imagem, método de decodificação de imagem, e aparelho de decodificação de imagem |
CN110830799B (zh) | 2012-01-18 | 2023-09-15 | 韩国电子通信研究院 | 视频解码装置、视频编码装置和传输比特流的方法 |
TWI644564B (zh) * | 2012-06-29 | 2018-12-11 | 維洛思媒介國際公司 | 資訊處理設備及資訊處理方法 |
JP6309010B2 (ja) * | 2012-09-26 | 2018-04-11 | トムソン ライセンシングThomson Licensing | 画像間予測の方法及びデバイス並びに対応する符号化方法及び装置 |
US9628790B1 (en) | 2013-01-03 | 2017-04-18 | Google Inc. | Adaptive composite intra prediction for image and video compression |
JP6365924B2 (ja) * | 2013-05-09 | 2018-08-01 | サン パテント トラスト | 画像復号方法及び画像復号装置 |
US9609343B1 (en) | 2013-12-20 | 2017-03-28 | Google Inc. | Video coding using compound prediction |
US10148965B2 (en) * | 2015-03-04 | 2018-12-04 | Panasonic Intellectual Property Management Co., Ltd. | Moving image coding apparatus and moving image coding method |
CN117061736A (zh) | 2017-01-13 | 2023-11-14 | 谷歌有限责任公司 | 视频代码化的复合预测 |
CN110710205B (zh) * | 2017-05-19 | 2023-05-05 | 松下电器(美国)知识产权公司 | 编码装置、解码装置、编码方法和解码方法 |
US10880573B2 (en) | 2017-08-15 | 2020-12-29 | Google Llc | Dynamic motion vector referencing for video coding |
US10284869B2 (en) | 2017-09-28 | 2019-05-07 | Google Llc | Constrained motion field estimation for hardware efficiency |
US11789874B2 (en) | 2018-01-09 | 2023-10-17 | Qualcomm Incorporated | Method, apparatus, and system for storing memory encryption realm key IDs |
EP3599693A1 (de) * | 2018-07-27 | 2020-01-29 | Fronius International GmbH | Lichtbogenerkennung |
JP7304153B2 (ja) * | 2018-12-27 | 2023-07-06 | Kddi株式会社 | 動画像復号装置、動画像復号方法及びプログラム |
CN110147330B (zh) * | 2019-05-23 | 2023-09-01 | 深圳市创维软件有限公司 | 一种字模数据的缓存方法、装置、设备和存储介质 |
CN112584142B (zh) * | 2019-09-30 | 2022-09-30 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
JP2021061501A (ja) * | 2019-10-04 | 2021-04-15 | シャープ株式会社 | 動画像変換装置及び方法 |
CN111343462B (zh) * | 2020-03-08 | 2021-10-22 | 苏州浪潮智能科技有限公司 | 一种图像数据压缩传输方法、装置及存储介质 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59200592A (ja) * | 1983-04-27 | 1984-11-13 | Fuji Photo Film Co Ltd | カラ−画像の適応形圧縮方式 |
JP2853553B2 (ja) * | 1994-02-22 | 1999-02-03 | 日本電気株式会社 | 動画像符号化方式 |
JP3089941B2 (ja) | 1994-02-28 | 2000-09-18 | 日本ビクター株式会社 | 画像間予測符号化装置 |
US5708473A (en) | 1994-08-30 | 1998-01-13 | Hughes Aircraft Company | Two stage video film compression method and system |
KR0181034B1 (ko) * | 1995-03-18 | 1999-05-01 | 배순훈 | 특징점 기반 움직임 추정을 이용한 움직임 벡터 검출 방법 및 장치 |
EP0935395A2 (en) * | 1998-02-06 | 1999-08-11 | Sony Corporation | Video encoding methods and apparatus |
KR20010052624A (ko) * | 1999-04-06 | 2001-06-25 | 요트.게.아. 롤페즈 | 움직임 추정 |
GB2381403B (en) * | 2000-05-10 | 2004-12-01 | Picturetel Corp | Video coding using multiple buffers |
JP2001333389A (ja) * | 2000-05-17 | 2001-11-30 | Mitsubishi Electric Research Laboratories Inc | ビデオ再生システムおよびビデオ信号処理方法 |
KR100747958B1 (ko) * | 2001-09-18 | 2007-08-08 | 마쯔시다덴기산교 가부시키가이샤 | 화상 부호화 방법 및 화상 복호화 방법 |
EP1833261A1 (en) * | 2002-01-18 | 2007-09-12 | Kabushiki Kaisha Toshiba | Video encoding method and apparatus and video decoding method and apparatus |
JP4015934B2 (ja) | 2002-04-18 | 2007-11-28 | 株式会社東芝 | 動画像符号化方法及び装置 |
JP2004007379A (ja) * | 2002-04-10 | 2004-01-08 | Toshiba Corp | 動画像符号化方法及び動画像復号化方法 |
KR100508798B1 (ko) * | 2002-04-09 | 2005-08-19 | 엘지전자 주식회사 | 쌍방향 예측 블록 예측 방법 |
KR100931746B1 (ko) * | 2002-04-19 | 2009-12-14 | 파나소닉 주식회사 | 움직임 벡터 계산방법 |
JP2004023458A (ja) * | 2002-06-17 | 2004-01-22 | Toshiba Corp | 動画像符号化/復号化方法及び装置 |
CN1666532A (zh) * | 2002-07-02 | 2005-09-07 | 松下电器产业株式会社 | 图像编码方法和图像解码方法 |
US7903742B2 (en) * | 2002-07-15 | 2011-03-08 | Thomson Licensing | Adaptive weighting of reference pictures in video decoding |
AU2003241696A1 (en) * | 2002-07-26 | 2004-02-16 | Matsushita Electric Industrial Co., Ltd. | Moving picture encoding method, moving picture decoding method, and recording medium |
KR100976017B1 (ko) * | 2002-08-08 | 2010-08-17 | 파나소닉 주식회사 | 동화상의 부호화 방법 및 복호화 방법 |
JP2004179687A (ja) * | 2002-11-22 | 2004-06-24 | Toshiba Corp | 動画像符号化/復号化方法及び装置 |
BR0307119A (pt) * | 2002-11-25 | 2004-12-28 | Matsushita Electric Ind Co Ltd | Método de codificação de imagens móveis e método de decodificação de imagens móveis |
EP1644835A4 (en) * | 2003-07-15 | 2011-12-07 | Thomson Licensing | MOTION ESTIMATION WITH FAST SEARCH BLOCK COMPARISON |
WO2009041215A1 (ja) * | 2007-09-25 | 2009-04-02 | Sharp Kabushiki Kaisha | 動画像符号化装置及び動画像復号装置 |
WO2014078068A1 (en) * | 2012-11-13 | 2014-05-22 | Intel Corporation | Content adaptive transform coding for next generation video |
KR102063385B1 (ko) * | 2013-01-30 | 2020-01-07 | 인텔 코포레이션 | 차세대 비디오용 콘텐츠 적응적 엔트로피 코딩 |
-
2003
- 2003-07-22 KR KR1020087016268A patent/KR100976017B1/ko active IP Right Review Request
- 2003-07-22 EP EP07123844A patent/EP1906671A3/en not_active Withdrawn
- 2003-07-22 EP EP17188120.4A patent/EP3288261B1/en not_active Expired - Lifetime
- 2003-07-22 PT PT37415205T patent/PT1530374E/pt unknown
- 2003-07-22 CN CN2010101550509A patent/CN101873491B/zh not_active Expired - Lifetime
- 2003-07-22 ES ES14197727.2T patent/ES2636947T3/es not_active Expired - Lifetime
- 2003-07-22 EP EP10178519A patent/EP2302931A3/en not_active Withdrawn
- 2003-07-22 CN CN200710104187XA patent/CN101083770B/zh not_active Expired - Lifetime
- 2003-07-22 EP EP14197727.2A patent/EP2903278B1/en not_active Expired - Lifetime
- 2003-07-22 DK DK03741520.5T patent/DK1530374T3/da active
- 2003-07-22 EP EP14197723.1A patent/EP2928185B1/en not_active Expired - Lifetime
- 2003-07-22 ES ES10178507.9T patent/ES2524117T3/es not_active Expired - Lifetime
- 2003-07-22 CN CN038012561A patent/CN1568622B/zh not_active Expired - Lifetime
- 2003-07-22 EP EP17188103.0A patent/EP3285486B1/en not_active Expired - Lifetime
- 2003-07-22 ES ES17188120T patent/ES2767954T3/es not_active Expired - Lifetime
- 2003-07-22 DK DK14197725.6T patent/DK2903277T3/en active
- 2003-07-22 CN CN2010101550706A patent/CN101873501B/zh not_active Expired - Lifetime
- 2003-07-22 EP EP14177815.9A patent/EP2824928B1/en not_active Expired - Lifetime
- 2003-07-22 WO PCT/JP2003/009228 patent/WO2004015999A1/ja active Application Filing
- 2003-07-22 KR KR1020107011292A patent/KR101000609B1/ko active IP Right Grant
- 2003-07-22 HU HUE18155299A patent/HUE047568T2/hu unknown
- 2003-07-22 ES ES14197723.1T patent/ES2650068T3/es not_active Expired - Lifetime
- 2003-07-22 CN CN2010101550763A patent/CN101873492B/zh not_active Expired - Lifetime
- 2003-07-22 EP EP10178507.9A patent/EP2320659B1/en not_active Expired - Lifetime
- 2003-07-22 ES ES14177815.9T patent/ES2656106T3/es not_active Expired - Lifetime
- 2003-07-22 EP EP03741520A patent/EP1530374B1/en not_active Expired - Lifetime
- 2003-07-22 EP EP18155299.3A patent/EP3349447B1/en not_active Expired - Lifetime
- 2003-07-22 ES ES03741520T patent/ES2401774T3/es not_active Expired - Lifetime
- 2003-07-22 ES ES17188103T patent/ES2767066T3/es not_active Expired - Lifetime
- 2003-07-22 EP EP14197718.1A patent/EP2903272B1/en not_active Expired - Lifetime
- 2003-07-22 HU HUE14197723A patent/HUE035701T2/en unknown
- 2003-07-22 PT PT141977256T patent/PT2903277T/pt unknown
- 2003-07-22 US US10/491,153 patent/US7308145B2/en active Active
- 2003-07-22 KR KR1020107011290A patent/KR101000635B1/ko active IP Right Grant
- 2003-07-22 CN CN2010101550829A patent/CN101867823B/zh not_active Expired - Lifetime
- 2003-07-22 ES ES14197718.1T patent/ES2673393T3/es not_active Expired - Lifetime
- 2003-07-22 PT PT141977272T patent/PT2903278T/pt unknown
- 2003-07-22 KR KR1020047003839A patent/KR100969057B1/ko active IP Right Grant
- 2003-07-22 PT PT101785079T patent/PT2320659E/pt unknown
- 2003-07-22 CN CN2010101550956A patent/CN101883279B/zh not_active Expired - Lifetime
- 2003-07-22 KR KR1020107011291A patent/KR101011561B1/ko active IP Right Grant
- 2003-07-22 EP EP14197725.6A patent/EP2903277B1/en not_active Expired - Lifetime
- 2003-07-22 EP EP14177707.8A patent/EP2824927B1/en not_active Expired - Lifetime
- 2003-07-22 ES ES14197725.6T patent/ES2638189T3/es not_active Expired - Lifetime
- 2003-07-22 ES ES14177707.8T patent/ES2653437T3/es not_active Expired - Lifetime
-
2007
- 2007-10-29 US US11/976,845 patent/US7817867B2/en not_active Expired - Lifetime
- 2007-10-29 US US11/976,860 patent/US7817868B2/en not_active Expired - Lifetime
- 2007-10-29 US US11/976,842 patent/US7813568B2/en not_active Expired - Lifetime
- 2007-10-29 US US11/976,843 patent/US7492952B2/en not_active Expired - Lifetime
-
2010
- 2010-09-09 US US12/878,350 patent/US8023753B2/en not_active Expired - Lifetime
-
2011
- 2011-08-12 US US13/208,677 patent/US8150180B2/en not_active Expired - Fee Related
-
2012
- 2012-02-08 US US13/368,708 patent/US8355588B2/en not_active Expired - Lifetime
- 2012-12-13 US US13/713,198 patent/US8606027B2/en not_active Expired - Lifetime
- 2012-12-13 US US13/713,211 patent/US9456218B2/en active Active
-
2013
- 2013-11-01 US US14/069,859 patent/US9002124B2/en not_active Expired - Lifetime
- 2013-11-01 US US14/069,708 patent/US9113149B2/en not_active Expired - Lifetime
-
2016
- 2016-08-17 US US15/239,207 patent/US9888239B2/en not_active Expired - Lifetime
- 2016-08-17 US US15/239,170 patent/US9942547B2/en not_active Expired - Lifetime
-
2018
- 2018-02-28 US US15/907,643 patent/US10321129B2/en not_active Expired - Lifetime
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2767066T3 (es) | Procedimiento de descodificación de imágenes en movimiento | |
ES2788382T3 (es) | Método para codificar y descodificar imágenes B en modo directo | |
ES2320209T3 (es) | Procedimiento de codificacion de imagenes en movimiento y procedimiento de decodificacion de imagenes en movimiento. | |
ES2408241T3 (es) | Aparato de codificación de imágenes en movimiento | |
ES2535957T3 (es) | Dispositivo de codificación de imágenes, dispositivo de descodificación de imágenes y sus métodos | |
ES2368908T3 (es) | Procedimiento de codificación y decodificación de imágenes en movimiento. | |
JP4485157B2 (ja) | 画像復号化方法および画像復号化装置 | |
JP4485494B2 (ja) | 画像復号化方法および画像復号化装置 |