ES2536543T3 - Dispositivo de codificación de imágenes en movimiento y dispositivo de decodificación de imágenes en movimiento - Google Patents

Dispositivo de codificación de imágenes en movimiento y dispositivo de decodificación de imágenes en movimiento Download PDF

Info

Publication number
ES2536543T3
ES2536543T3 ES03741394.5T ES03741394T ES2536543T3 ES 2536543 T3 ES2536543 T3 ES 2536543T3 ES 03741394 T ES03741394 T ES 03741394T ES 2536543 T3 ES2536543 T3 ES 2536543T3
Authority
ES
Spain
Prior art keywords
memory
data
image
frame
unit
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
Application number
ES03741394.5T
Other languages
English (en)
Inventor
Martin Schlockermann
Bernhard Schuur
Shinya Kadono
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Application granted granted Critical
Publication of ES2536543T3 publication Critical patent/ES2536543T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/423Methods 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 characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/16Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/423Methods 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 characterised by memory arrangements
    • H04N19/426Methods 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 characterised by memory arrangements using memory downsizing methods
    • H04N19/428Recompression, e.g. by spatial or temporal decimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

Un aparato para la gestión del almacenamiento de datos de imágenes en una memoria, utilizándose dicho aparato para la codificación o la decodificación de imágenes en movimiento, que comprende: una memoria que tiene áreas de memoria (41) en cada una de las cuales se pueden almacenar los datos de imagen correspondientes a un cuadro; una unidad de almacenamiento (52) operable para almacenar los datos de imágenes en la memoria; y una unidad de gestión de memoria (53) operable para gestionar un estado (44) de cada área de memoria (41) mediante el establecimiento de una información de almacenamiento de "usado" o "no usado", siendo el estado un estado de prohibición de almacenamiento de datos o un estado de autorización de almacenamiento de datos, caracterizado por que cuando unos primeros datos de campo se escriben en una primera área de memoria en el estado de autorización de almacenamiento de datos, dicha unidad de gestión de memoria es operable para prohibir que se escriban datos adicionales en la primera área de memoria, excepto cuando los segundos datos de campo emparejados con los primeros datos de campo se escriben en la primera área de memoria.

Description

15
25
35
45
55
65
E03741394
11-05-2015
DESCRIPCIÓN
Dispositivo de codificación de imágenes en movimiento y dispositivo de decodificación de imágenes en movimiento
Campo de la Invención
La presente invención se refiere al control de gestión de memoria de una memoria volátil de cuadros múltiples usada para almacenar datos de imágenes de referencia en codificación y decodificación de video, y particularmente a un método de gestión de memoria para datos de video entrelazados.
Antecedentes
Las imágenes en movimiento se usan en un número cada vez más alto de aplicaciones en campos que varían de telefonía de video y conferencias de video a DVD y televisión digital. Para transmitir imágenes en movimiento, es necesario transmitir un enorme volumen de datos por medio de un canal de transmisión existente en el cual un ancho de banda de frecuencia efectivo es limitado. Cuando los datos digitales se transmiten dentro de una banda de transmisión limitada, existe una necesidad absoluta de comprimir o reducir el volumen de los datos que serán transmitidos.
Con el propósito de hacer posible una interoperabilidad entre datos de video en una pluralidad de sistemas dedicados a aplicaciones que fueron diseñadas por diferentes fabricantes, se han desarrollado normas de codificación de video para comprimir el volumen de datos de video en un método común. Estas normas de codificación de video incluyen H.261 y H.263 desarrolladas por ITU, y MPEG-1, MPEG-2 y MPEG-4 desarrolladas por ISO/IEC.
Un enfoque básico para la codificación tomado por muchas de las normas anteriores comprende las siguientes etapas principales:
1.
dividir cada imagen en bloques formados de píxeles para hacer posible la realización de procesamiento a un nivel de bloques en imágenes que constituyan un video. Una imagen se refiere a un cuadro o campos;
2.
reducir la redundancia espacial en una imagen al realizar la codificación por transformación, cuantificación y entropía en datos de video en un bloque y
3.
codificar una diferencia entre cuadros consecutivos, utilizando la correlación entre las imágenes consecutivas.
Lo anterior se logra mediante el uso de una técnica de cálculo y compensación de movimiento. Para calcular, en una base de bloque a bloque, un vector de movimiento que indique datos de imagen predictivos que indiquen una fuerte correlación entre cuadros, un codificador realiza un cálculo de movimiento para buscar los cuadros codificados para una posición de datos de imagen que indique una fuerte correlación. Además, el codificador y el decodificador realizan la compensación de movimiento para extraer datos de imagen predictivos con respecto al vector de movimiento.
La figura 1 muestra una configuración ejemplar de un codificador de video (aparato de codificación de imágenes de movimiento). El codificador de video ilustrado en el diagrama comprende: una unidad de transformación 13 operable para transformar datos de video espaciales en un dominio de frecuencia; una unidad de cuantificación 14 que funciona para cuantificar los coeficientes de transformación obtenidos por la unidad de transformación 13; una unidad de codificación de longitud variable 15 que funciona para realizar una codificación por entropía en los coeficientes de transformación cuantificados; una memoria volátil de video 17 para suministrar un canal de transmisión con datos de video comprimidos a una velocidad de bits variable dependiendo de una velocidad de transmisión; un decodificador 16 y una unidad de cálculo de movimiento 19.
Los datos de video 10 que provienen del codificador mostrado en la figura 1 son ingresados en una forma de valores de píxel usando modulación de códigos por impulso (PCM). Un sustractor 11 calcula el valor diferencial entre los datos de video 10 y una imagen compensada en movimiento 12. La imagen compensada en movimiento 12 se obtiene como un resultado de decodificar una imagen ya codificada y realiza la compensación de movimiento en la imagen resultante ("una imagen decodificada actual"). Esto se realiza mediante un decodificador 16 en pares con el codificador de video. El decodificador 16 realiza el procedimiento de codificación en un orden inverso. Dicho de otra manera, el decodificador 16 comprende una unidad de cuantificación inversa (Q-1), una unidad de transformación de coseno individual inversa (IDCT) y un adicionador para añadir una diferencia decodificada y una imagen compensada en movimiento para generar así una imagen precedente que sea equivalente a la obtenida en el lado del decodificador.
En la codificación compensada en movimiento, los datos compensados en movimiento en una imagen actual se generan, con base al cálculo de movimiento que ha sido realizado en esa imagen y una imagen decodificada, de datos de imagen derivados de la imagen decodificada correspondiente. Un valor predicho en movimiento es representado por un vector de movimiento bidimensional que indica un desplazamiento de píxeles entre la imagen decodificada y la imagen actual. Normalmente, el cálculo de movimiento se realiza en una base de bloque a bloque.
15
25
35
45
55
65
E03741394
11-05-2015
Dicho de otra manera, un bloque en la imagen decodificada que está más fuertemente correlacionado con un bloque en el cuadro actual se considera como una imagen compensada en movimiento. La unidad de cálculo de movimiento 19 que funciona para realizar este cálculo de movimiento y una unidad de compensación de movimiento MC que funciona para generar una imagen compensada en movimiento a partir de la imagen que ha sido decodificada correspondiendo al vector de movimiento se incorporan en el codificador.
El codificador de video ilustrado en la figura 1 funciona de la siguiente manera. La imagen de video de la señal de video 10 es dividida en un grupo de un cierto número de bloques pequeños generalmente llamado macrobloque. Por ejemplo, una imagen de video 20 mostrada en la figura 2 es dividida en una pluralidad de macrobloques 21. Generalmente, cada uno de los macrobloques tiene un tamaño de 16 x 16 píxeles.
Además, una imagen es dividida en cierto número de cortes 22. Cada corte está formado de una pluralidad de macrobloques y sirve como una unidad de recuperación de alineación en el momento de la pérdida de datos. Obsérvese que una disposición de macrobloques que constituyen un corte no necesariamente está formada de macrobloques en la misma fila como se muestra en la figura 2, y por lo tanto también es posible que un corte incluya macrobloques en una pluralidad de filas y hay un delimitador de otro corte en medio de la fila.
Cuando los datos de imagen en video son codificados solo al reducir el volumen de redundancia espacial en la imagen, la imagen resultante es llamada imagen I. Una imagen I se codifica con referencia solo a valores de píxel en la imagen. El tamaño de los datos de una imagen I codificada es grande porque la información temporal usada para reducir el volumen de los datos no se puede usar para una imagen I.
Con el propósito de realizar una compresión eficiente utilizando la redundancia temporal entre imágenes consecutivas, la codificación por predicción se realiza en las imágenes consecutivas sobre la base del cálculo de movimiento y la compensación de movimiento. Cuando una imagen de referencia seleccionada en el cálculo de movimiento es una imagen que ya ha sido codificada y decodificada, es llamada imagen P. Mientras tanto, cuando dos imágenes son imágenes de referencia (normalmente, imágenes hacia adelante y hacia atrás en orden de presentación visual con respecto a una imagen actual), son llamadas imagen B.
De acuerdo con la norma H.26L en un método de codificación de imágenes en desarrollo, la compensación de movimiento para cada uno de los 16 x 16 macrobloques se puede realizar mediante el uso de un tamaño de bloque diferente. Cada vector de movimiento puede determinarse con respecto a un bloque con un tamaño de 4 x 4, 4 x 8, 8 x 4, 8 x 8, 8 x 16 o 16 x 16 píxeles. El efecto de usar un tamaño de bloque más pequeño para la compensación de movimiento es que se hace posible describir movimientos detallados.
Basándose en el resultado de la estimación de movimiento, la estimación se realiza en un vector de movimiento determinado como compensación de movimiento. Posteriormente, la información incluida en un bloque de error de predicción obtenido del bloque predicho se transforma en coeficientes de transformación en la unidad de transformación 13. Generalmente, se emplea la Transformación de Coseno Discreta (DCT) bidimensional. Estos coeficientes de transformación obtenidos se cuantifican, y la codificación de entropía (VLC) se realiza en el resultante mediante la unidad de codificación de entropía 15 en el extremo. Obsérvese que un vector de movimiento calculado por la unidad de cálculo de movimiento 19 se usa para la compensación de movimiento y se incorpora en los datos de video de compresión 18 por medio de la unidad de longitud variable 15 y la memoria volátil de video 17.
Una corriente de transmisión de los datos de video comprimidos 18 es transmitida al decodificador (aparato de decodificación de imágenes), donde una secuencia de imágenes de video codificadas se reproduce sobre la base de los datos recibidos. La configuración del decodificador coincide con la del decodificador 16 incluido en el codificador de video mostrado en la figura 1.
En un nuevo método de codificación, es posible usar una pluralidad de imágenes bidireccionalmente predictivas para lograr así una codificación de imágenes más eficiente. Por esta razón, una unidad de cálculo de movimiento y una unidad de compensación de movimiento incluyen memorias volátiles de cuadros múltiples para proporcionar varias imágenes de referencia. La información que indica una imagen de referencia individual se añade a un vector de movimiento.
La estructura interna de una memoria volátil de cuadros múltiples es como la mostrada por la figura 3, y la figura con un número de referencia 30 muestra toda la estructura. La memoria volátil de cuadros múltiples está compuesta de una pluralidad de áreas de memoria 31 y 32 para almacenar cuadros de la señal de video. Las áreas de memoria en la memoria volátil de cuadros múltiples 30 están divididas en dos tipos diferentes de áreas de memoria, es decir, un área de memoria de imágenes a corto plazo 33 principalmente para almacenar imágenes de referencia usadas como una imagen de referencia para un corto plazo y un área de memoria de imágenes a largo plazo 34 principalmente para almacenar imágenes de referencia usadas como una imagen de referencia para un largo plazo.
La memoria volátil de cuadros múltiples almacena imágenes de referencia seleccionadas según sea adecuado para codificar o decodificar imágenes especiales. El procedimiento para almacenar imágenes de referencia se divide en dos etapas de procesamiento, es decir, (1) una etapa de realinear imágenes de referencia y (2) una etapa de
15
25
35
45
55
65
E03741394
11-05-2015
memorización intermedia de imágenes de referencia.
(1)
las imágenes de referencia son alineadas basándose en la información del orden de imágenes de referencia que será transmitida en la capa de corte. El ordenamiento de imágenes de referencia tiene influencia en el procesamiento de codificación o decodificación de un grupo de macrobloques incluidos en un corte. El propósito de este procesamiento es el de reducir el número de bits de información que indica una imagen de referencia que será referida en el momento de la compensación de movimiento al asignar un número más pequeño a una imagen que será referida frecuentemente, en otras palabras, asignando un número de referencia con una longitud de señal más corta a una imagen con un número más pequeño.
(2)
En cuanto a la memorización intermedia de imágenes de referencia, la memorización intermedia de imágenes que serán codificadas o decodificadas se controla cuando se actualizan las imágenes de referencia almacenadas en la memoria volátil de cuadros múltiples para cada procesamiento de codificación o decodificación.
Con el propósito de la memorización intermedia de imágenes de referencia, puede usarse uno de los dos tipos diferentes de modos de control de gestión de memoria, es decir, un "modo de memorización intermedia de ventana de desplazamiento" o "modo de memorización intermedia de control de memoria adaptiva".
En el modo de memorización intermedia de ventana de desplazamiento, las imágenes como objetivos de cada codificación o decodificación se almacenan en la memoria volátil de cuadros múltiples. La imagen en el área de memoria de imágenes a corto plazo de la memoria volátil de cuadros múltiples se reemplaza periódicamente por una nueva imagen en un método de Primero Dentro Primero Fuera (FIFO). No existe la necesidad de borrar cualquier dato de imagen para almacenar imágenes bajo procesamiento siempre y cuando la memoria volátil tenga suficiente capacidad de un área de memoria no usada. Si el área no usada de la memoria volátil de cuadros múltiples se llena con datos de imagen nuevos que ya han sido procesados, los datos de imagen almacenados son reemplazados por datos de imagen de imágenes nuevas bajo la codificación o decodificación en el orden de almacenamiento.
En el modo de memorización intermedia de control de memoria adaptivo, se almacenan en la memoria volátil de cuadros múltiples, o cada imagen que será eliminada del lugar es explícitamente seleccionada. El control de la memoria se realiza de acuerdo con el parámetro de procesamiento de control de gestión de memoria que hace posible el control de la gestión de la memoria en el lado de codificación y en el lado de decodificación que están correlacionados uno con otro. Para realizar el procesamiento de reemplazo de estas imágenes, se asigna un número de identificación único para especificar explícitamente una imagen que será codificada o decodificada a cada área de memoria. Obsérvese que un índice que indique el orden de las imágenes después de realinear imágenes de referencia del (1) mencionado anteriormente se asigna a cada área de memoria, y el índice es llamado índice de referencia.
Borgwardt: "Multi-Picture Buffer Semantics for Interlaced Coding", Joint Video Team (JVT) de ISO/IEC MPEG & ITU-T VCEG Nº JVT-C049, 10 de mayo de 2002, es una propuesta para una estandarización de equipo de video conjunto respecto a una memoria volátil de múltiples imágenes para codificación entrelazada. Se sugiere referirse a los cuadros y campos mediante un número de imagen y liberar una memoria sobre una base de campo por campo, si la imagen actual es una primera imagen de campo, que solamente el campo más antiguo de la misma paridad en la memoria volátil se marca como no usada. El campo de la paridad opuesta permanece como una posible referencia para la segunda imagen de campo del cuadro.
Varios problemas se dejan en el modo de control de gestión de memoria anterior. En el modo de control de gestión de memoria convencional es imposible procesar eficientemente datos de video especialmente entrelazados. Los datos de video entrelazados comprenden cuadros de video compuestos de dos campos (un campo superior y un campo inferior), cada uno de los cuales tiene un tiempo diferente y una localización espacial vertical diferente. Las imágenes pueden ser codificadas campo por campo, lo cual lleva un problema de hacer complicada la gestión de la memoria.
Divulgación de la invención
Por lo tanto, un objetivo de la presente invención es proporcionar un aparato de codificación de imágenes en movimiento, un aparato de decodificación de imágenes en movimiento, un dispositivo de gestión de memoria y similares que hagan posible realizar eficientemente la gestión de memoria de imágenes en la codificación y decodificación de datos de video entrelazados.
Eso se consigue mediante las características de las reivindicaciones independientes.
Estos aparatos de codificación de imágenes en movimiento, aparato de decodificación de imágenes en movimiento y un dispositivo de gestión de memoria siempre realizan la gestión de memoria cuadro por cuadro sin importar qué unidad de cuadro y campo se use cuando se almacenan datos de imagen en cada área de memoria capaz de almacenar un dato de cuadro o dos datos de campo (un dato de campo superior y un dato de campo inferior) y leer los datos de imagen de cada una de las áreas de memoria, y de esta manera la gestión de la memoria en la codificación y decodificación de datos de video entrelazados se hace más simple y más eficiente. Especialmente,
15
25
35
45
55
65
E03741394
11-05-2015
cuando tanto imágenes codificadas cuadro por cuadro como imágenes codificadas campo por campo están incluidas en los datos de video entrelazados, la gestión de memoria eficiente se logra debido a que solo se requiere del control de memoria sobre la base de un cuadro unificado como la unidad.
Aquí, la unidad de gestión de memoria gestiona los datos de imagen en cada una de la pluralidad mencionada anteriormente de las áreas de memoria cuadro por cuadro para determinar así si pueden ser almacenadas o no, y la unidad de almacenamiento puede almacenar el campo en las áreas de memoria especificadas como almacenables por la unidad de gestión de memoria. En otras palabras, la unidad de gestión de memoria gestiona las áreas de memoria al establecer el indicador almacenado asociado con cada una de la pluralidad mencionada anteriormente de las áreas de memoria como "usado" o "no usado", y la unidad de almacenamiento puede almacenar el campo en las áreas de memoria especificadas como "no usado" mediante el indicador almacenado. Por ejemplo, la unidad de gestión de memoria establece el indicador almacenado asociado con el área de memoria como "usado" cuando almacena el cuadro, un campo superior o un campo inferior en el área de memoria, y establece el indicador almacenado asociado con la memoria como "no usado" cuando no se almacenan datos de imagen en el área de memoria; el cuadro almacenado se hace inútil, o tanto un campo superior como un campo inferior se hacen inútiles. Al hacer esto, 1 bit del indicador almacenado es asignado al área de memoria que almacena dos datos de campo; solo juzgar o cambiar la condición del indicador almacenado de 1 bit se hace posible el gestión de si los datos de imagen pueden almacenarse en cada área de memoria o no, lo cual hace posible simplificar el procesamiento en relación al gestión y reducir la capacidad de memoria requerida para la gestión.
Asimismo, la unidad de gestión de memoria puede gestionar si cada una de la pluralidad de las áreas de memoria es "área de memoria de imágenes a corto plazo" para la referencia a corto plazo o "área de memoria de imágenes a largo plazo" para la referencia a largo plazo cuadro por cuadro. En otras palabras, la unidad de gestión de memoria puede gestionar el área de memoria al establecer indicadores de largo plazo asociados con cada una de la pluralidad de áreas de memoria como "área de memoria de imágenes a corto plazo" o "área de memoria de imágenes a largo plazo". Por ejemplo, la unidad de gestión de memoria establece el indicador de largo plazo como "área de memoria de imágenes a largo plazo" cuando cambia cuadros, campos superiores o campos inferiores almacenados en el área de memoria para la cual el indicador de largo plazo se establece como "área de corto plazo". Al hacer esto, 1 bit del indicador de largo plazo es asignado al área de memoria que almacena dos datos de campo; solo juzgando o cambiando la condición del indicador a largo plazo de 1 bit se hace posible el gestión de los atributos de referencia ("para referencia a corto plazo" o "para referencia a largo plazo") de cada área de memoria, lo cual hace posible simplificar el procesamiento que se refiere al gestión y reduce la capacidad de memoria requerida para el gestión. Además, solo al cambiar el indicador de largo plazo de "área de memoria de imágenes a corto plazo" a "área de memoria de imágenes a largo plazo" se hace posible que los datos de imagen almacenados en el área de memoria de imágenes a corto plazo sean transmitidos al área de memoria de imágenes a largo plazo.
Obsérvese que la presente invención también se puede lograr como un método de codificación de imágenes en movimiento, un método de decodificación de imágenes en movimiento, un método de gestión de memoria, .un programa, un medio de almacenamiento legible por computadora en donde el programa sea almacenado aparte del aparato de codificación de imágenes en movimiento, el aparato de decodificación de imágenes en movimiento y el dispositivo de gestión de memoria mencionados anteriormente.
Información adicional acerca del antecedente técnico de esta solicitud
La solicitud de patente europea Nº 02015606.3, presentada el 15 de julio de 2002 se incorpora en el presente documento por referencia.
Breve descripción de las figuras
Éstos y otros objetivos, ventajas y características de la invención se harán evidentes a partir de la siguiente descripción de las mismas tomada en conjunto con las figuras adjuntas, que ilustran una realización específica de la invención. En los dibujos:
La figura 1 es un diagrama de bloques de un codificador de video DPCM en el que se realiza la compensación de movimiento. La figura 2 muestra una subdivisión de una imagen de video para el procesamiento de codificación y decodificación. La figura 3 muestra la estructura completa de una memoria volátil de cuadros múltiples usada para el cálculo de movimiento y la compensación de movimiento. La figura 4 muestra datos almacenados en asociación con un área de memoria. La figura 5 muestra un diagrama de bloques de una unidad de cálculo de movimiento y/o compensación de movimiento. La figura 6 muestra un ejemplo de un método de control de una memoria volátil de cuadros múltiples. La figura 7 es un diagrama de bloques que muestra la estructura de un codificador de video en la segunda realización. La figura 8 es un diagrama que muestra los tipos de señales de video que serán ingresados o unidades para
15
25
35
45
55
65
E03741394
11-05-2015
codificación:
La figura 8A muestra un ejemplo de señales de video que serán codificadas cuadro por cuadro. La figura 8B muestra un ejemplo de señales de video que serán codificadas campo por campo. La figura 8C muestra un ejemplo de una señal de video que será codificada en un estado en el que tanto cuadros como campos están incluidos.
La figura 9 es un diagrama de flujo que muestra el procedimiento operativo de una unidad de gestión de memoria. La figura 10 es una tabla que muestra un ejemplo de gestión de memoria mediante la unidad de gestión de memoria: La figura 10A muestra un ejemplo de gestión de memoria en asociación con la figura 8A. La figura 10B muestra un ejemplo de gestión de memoria en asociación con la figura 8B. La figura 10C muestra un ejemplo de gestión de memoria en asociación con la figura 8C. La figura 11 es un diagrama que muestra la condición de almacenamiento de la imagen de referencia en una memoria volátil. La figura 11A muestra la condición de almacenamiento de una memoria volátil cuando una señal de video que será ingresada es codificada cuadro por cuadro. La figura 11B muestra la condición de almacenamiento de una memoria volátil cuando una señal de video que será ingresada es codificada campo por campo. La figura 11C muestra la condición de almacenamiento de una memoria volátil cuando una señal de video que será ingresada es codificada en un estado donde los cuadros y los campos están incluidos. La figura 12 es un diagrama de bloques que muestra la estructura del decodificador de video de la presente invención. Las figura 13 es una ilustración que se refiere al medio de almacenamiento para almacenar un programa para lograr el codificador de video y el decodificador de video de la presente invención en un sistema de ordenadores. La figura 14 es un diagrama de bloques que muestra la estructura completa de un sistema de suministro de contenidos que logra un servicio de distribución de contenidos de la presente invención. La figura 15 es un diagrama que muestra un ejemplo de un teléfono móvil de la presente invención. La figura 16 es un diagrama de bloques que muestra la estructura del teléfono móvil. La figura 17 es un diagrama que muestra la configuración del sistema para transmisión digital de la presente invención.
Descripción detallada de la invención
(Primera realización)
La explicación de un codificador de video (un aparato de codificación de imágenes en movimiento) en la primera realización de la presente invención se hará ahora abajo con referencia a las figuras. Obsérvese que el codificador de video de la presente realización tiene una configuración mostrada en la figura 1 y una función de gestión de memoria característica mostrada en la figura 5 explicada más adelante. Diferentes puntos del codificador de video convencional serán enfocados en la siguiente explicación.
Como se mostró anteriormente, la figura 3 muestra la estructura completa de una memoria volátil de cuadros múltiples. La memoria volátil de cuadros múltiples 30 tiene una pluralidad de áreas de memoria 31 y 32 para almacenar imágenes de referencia compuestas de dos campos, es decir, un campo superior y un campo inferior. Los datos almacenados respectivamente en las áreas de memoria 31 y 32 son como los mostrados en la figura 4. Cada área de memoria 41 se usa para almacenar un campo superior 42 y un campo inferior 43. Cada dato de campo es independientemente escrito o leído del área de memoria.
Una unidad de gestión de memoria 53 mostrada en la figura 5 genera imágenes de referencia adecuadas para el cálculo de movimiento y la compensación de movimiento. Cuando se concluye la codificación y decodificación de cada imagen, una unidad de memoria (memoria volátil de cuadros múltiples) 52 es actualizada de acuerdo con la información de control de memoria. El área de memoria usada para almacenar imágenes nuevas tales como datos de imagen que serán codificados o decodificados se marca al establecer un indicador almacenado 44 asignado a cada área de memoria uno por uno. Las imágenes de referencia necesarias para el cálculo de movimiento o la compensación de movimiento de una serie de imágenes se guardan en una memoria volátil de cuadros al cancelar estos indicadores almacenados. Cuando se eliminan imágenes de la unidad de memoria (memoria volátil de cuadros múltiples) 52, el indicador almacenado 44 se establece como "no usado". El indicador almacenado 44 se convierte en un estado de uso cuando se establece cualquiera de un campo de un cuadro, ambos campos y un cuadro. El indicador almacenado 44 muestra el estado de un cuadro, lo que está almacenado ahí se gestiona memoria (campo) por memoria. Cuando solo un tipo de campo, es decir, un campo superior o un campo inferior se almacena ahí, es posible mostrar que el otro tipo de campo puede ser almacenado.
El indicador almacenado puede ser almacenado en la unidad de memoria (memoria volátil de cuadros múltiples) 52 o, en lugar de ello, la unidad de gestión de memoria 53 asociada con un área de memoria que corresponda a un
15
25
35
45
55
65
E03741394
11-05-2015
cuadro múltiple. Asociando un indicador almacenado 44 con un par de campo superior y un campo inferior se elimina la adición de cualquier hardware para procesar datos de video entrelazados.
Además, un indicador de largo plazo 45 puede ser asignado a cada área de memoria 41. Este indicador 45 se almacena en la unidad de gestión de memoria 53 asociada con la unidad de memoria (memoria volátil de cuadros múltiples) 52 o cada área de memoria. Usando este indicador de largo plazo 45 se muestra que cada área de memoria es almacenada en una de las imágenes de referencia a largo plazo. De esta manera, el establecimiento de un indicador de largo plazo 45 logra un procesamiento de desplazamiento de imágenes del área de memoria de imágenes a corto plazo 33 al área de memoria de imágenes a largo plazo 34.
Obsérvese que el área de memoria de imágenes a largo plazo 34 almacena un campo superior o un campo inferior, ya sea en un lugar de campo inferior o superior 42 o 43 en la realización de la presente invención, que realiza una mejora eficiente en el almacenamiento de datos de imágenes a largo plazo. Esto logra al establecer dos indicadores almacenados para cada área de memoria de imágenes a largo plazo que haga posible mostrar que cada lugar de campo está "no usado".
El método de ejemplo del control de gestión de memoria se muestra en la figura 6. Cuando se concluye la codificación o decodificación de imágenes en la etapa 61, como se muestra en la etapa 62, se inicia el procesamiento de control de memoria para una memoria volátil de cuadros múltiples. En la etapa 63, se selecciona primero un área de memoria que almacena dos campos innecesarios para el procesamiento de campo posterior, después de esto, el indicador almacenado 44 se establece como "no usado" en la etapa 64. Cuando existe un área de memoria que almacena un tipo de datos de campo que componen el mismo cuadro y la otra área de campo en el área de memoria está "no usada", el otro dato de campo se puede almacenar en el área de campo no usada. Por ejemplo, cuando los datos de campo superior del mismo cuadro ya han sido almacenados en el área de memoria y los datos de campo inferior no han sido almacenados aún, el campo inferior puede ser almacenado en el área de campo inferior no usada del área de memoria.
De esta manera, se hace posible escribir nuevos datos de imagen en cada espacio de memoria de un par de campos no usados. Esta selección se hace basándose en la información de control de memoria enviada desde el codificador de video. El codificador de video puede generar información de control basándose en la definición en la norma de codificación empleada.
Además, la información de control de memoria selecciona un área de memoria que tiene un dato de imagen a largo plazo (etapa 65). Después de eso, indicadores de largo plazo 45 en estas áreas de memoria se establecen en la etapa 66.
En la etapa 67, campos que serán procesados son almacenados en cada lugar de campo "no usado" del área de memoria de acuerdo con un parámetro de control de memoria, después de eso, el procesamiento de codificación o decodificación se reinicia en la etapa 68.
Como se mostró anteriormente, la presente invención se refiere a una unidad de cálculo de movimiento y compensación de movimiento que utiliza una pluralidad de imágenes de referencia, y la pluralidad de imágenes de referencia se almacenan en la unidad de memoria con un área de memoria de cada imagen de referencia. Cada área de memoria almacena datos de video de un cuadro que incluyen un campo superior y un campo inferior. El almacenamiento de datos de video en la unidad de memoria se controla mediante la unidad de gestión de memoria. Un indicador almacenado que permite almacenar datos de video de los dos campos consecutivos en un área de memoria se asigna a cada área de memoria. Al hacer esto, la codificación, la decodificación, el cálculo de movimiento y la compensación de movimiento de imágenes se realizan campo por campo o cuadro por cuadro cuando la señal de video es datos de video entrelazados, pero la gestión de la unidad de memoria (gestión de "usado" o "no usado" y similares) se realiza cuadro por cuadro, lo cual simplifica el procesamiento de la gestión de memoria.
Obsérvese que el indicador almacenado 44 y el indicador de largo plazo 45 se explican al mismo tiempo en la primera realización, también es posible usar solo uno de esos indicadores o emplear otro método.
(Segunda realización)
A continuación se explicará un codificador de video y un decodificador de video de la segunda realización de la presente invención. La presente realización es una versión detallada de la primera realización, y es igual que la primera realización en que la gestión de la memoria se realiza cuadro por cuadro.
La figura 7 es un diagrama de bloques que muestra la estructura de un codificador de video 70 de la segunda realización. La característica de este codificador de video 70 es que la gestión de memoria a una memoria volátil de cuadros múltiples se realiza cuadro por cuadro incluso cuando la estructura de la señal de video ingresada 10 y la unidad para codificar es cuadro por cuadro, campo por campo o una mezcla de los mismos. El codificador de video 70 comprende un sustractor 11, una unidad de transformación 13, una unidad de cuantificación 14, una unidad de
15
25
35
45
55
65
E03741394
11-05-2015
codificación de longitud variable 15, una memoria volátil de video 17, un decodificador 16 y una unidad de cálculo de movimiento 19 y una unidad de gestión de memoria 71. El decodificador 16 comprende una unidad de cuantificación inversa 16a, una unidad de transformación de coseno discreta inversa 16b, una memoria volátil 16c y una unidad de compensación de movimiento 16d. Obsérvese que el mismo número se asigna al mismo componente que el del codificador de video convencional mostrado en la figura 1 y el codificador de video de la primera realización, y las explicaciones de estos componentes se omiten.
El codificador de video 70 de esta realización tiene una unidad de gestión de memoria característica 71. Esta unidad de gestión de memoria 71 ordena a la unidad de compensación de movimiento 16d y a la unidad de cálculo de movimiento 19 seleccionar la misma unidad para procesamiento que la unidad basándose en la información externa que muestra qué unidad (cuadro por cuadro, campo por campo o una mezcla de estas unidades) se usa cuando se codifican las imágenes de la señal de video ingresada 10 y gestiona imágenes de referencia almacenadas en una memoria volátil de cuadros múltiples, es decir, la memoria volátil 16 cuadro por cuadro. Por ejemplo, como se muestra en la figura 8A, cuando las imágenes de la señal de video ingresada 10 son codificadas cuadro por cuadro en GOP (Grupo De Imágenes o secuencia), controla la unidad de compensación de movimiento 16d y la unidad de cálculo de movimiento 19 para procesar imágenes cuadro por cuadro y realiza el gestión de memoria cuadro por cuadro. Por otro lado, como se muestra en la figura 8B, cuando las imágenes de la señal de video ingresada 10 son codificadas campo por campo en GOP (o secuencia) o similares, controla la unidad de compensación de movimiento 16d y la unidad de cálculo de movimiento 19 para procesar imágenes campo por campo y realiza el gestión de memoria cuadro por cuadro. Además, como se muestra en la figura 8C, cuando las imágenes de la señal de video ingresada 10 son codificadas bajo la condición en la que tanto cuadros como campos están incluidos para cada GOP (o secuencia), controla la unidad de compensación de movimiento 16d y la unidad de cálculo de movimiento 19 para procesar imágenes cuadro por cuadro o campo por campo de acuerdo con la unidad que funcione para codificar en este caso y realiza la gestión de memoria cuadro por cuadro.
Obsérvese que los detalles de la gestión de la memoria son básicamente los mismos que los de la primera realización. Aquí, un bit de indicador almacenado y un bit de indicador de largo plazo se asignan a cada área de memoria que es una unidad que funciona para almacenar un dato de cuadro o dos datos de campo (datos de campo superior y datos de campo inferior), la condición de "usado" o "no usado" y el área de almacenamiento de "largo plazo" o "corto plazo" se juzgan y registran para cada dato de imagen (cada cuadro o cada par de un campo superior y un campo inferior en esta realización). Estos indicadores se establecen en la memoria volátil 16c o la unidad de gestión de memoria 71. Obsérvese que "no usado" muestra que es posible almacenar datos de imagen (datos de cuadro, datos de campo superior o datos de campo inferior) en el área de memoria correspondiente, y que "usado" muestra que está prohibido que los datos de imagen sean almacenados, Asimismo, "área de memoria de imágenes a largo plazo" y "área de memoria de imágenes a corto plazo" corresponde a cada área en el caso de dividir la memoria volátil 16c en dos tipos de áreas de almacenamiento, es decir, un área de almacenamiento principalmente para referencia a largo plazo y un área de almacenamiento principalmente para referencia a corto plazo, respectivamente.
La figura 9 es un diagrama de flujo que muestra el procedimiento operativo de la unidad de gestión de memoria 71. La unidad de gestión de memoria 71 juzga la unidad operable para codificar la señal de video 10 que será ingresada basándose en la información externa ingresada (etapa S70). Cuando las imágenes de la señal de video 10 son codificadas cuadro por cuadro ("cuadro por cuadro" en la etapa S70), la unidad de gestión de memoria 71 controla la unidad de compensación de movimiento 16d para realizar la compensación de movimiento cuadro por cuadro y la unidad de cálculo de movimiento 19 para realizar el cálculo de movimiento cuadro por cuadro, y almacena o elimina las imágenes de referencia en o de la memoria volátil 16c cuadro por cuadro y las almacena en el área de memoria de imágenes a largo plazo o el área de memoria de imágenes a corto plazo (etapa S71). Por otro lado, cuando las imágenes de la señal de video 10 son codificadas campo por campo ("campo por campó" en la etapa S70), la unidad de gestión de memoria 71 controla la unidad de compensación de movimiento 16d para realizar la compensación de movimiento campo por campo y la unidad de cálculo de movimiento 19 para realizar el cálculo de movimiento campo por campo, almacena o elimina las imágenes de referencia en o de la memoria volátil 16c cuadro por cuadro y las almacena en el área de memoria de imágenes a largo plazo o el área de memoria de imágenes a corto plazo (etapa S72).
La figura 10 es una tabla que muestra un ejemplo de la gestión de memoria por la unidad de gestión de memoria 71. Cuando la señal de video ingresada 10 es codificada cuadro por cuadro, usando el indicador almacenado y el indicador de largo plazo que corresponden a cada cuadro (es decir, área de memoria) se hace posible que la unidad de gestión de memoria 71 registre, se refiera o actualice el estado de "usado" o "no usado" en cuanto a cada cuadro, y qué área de "área de memoria de imágenes a largo plazo" o "área de memoria de imágenes a corto plazo" se usa para almacenamiento como se muestra en la figura 10A.
Por otro lado, cuando la señal de video ingresada es codificada campo por campo, usando el indicador almacenado y el indicador de largo plazo o similar que corresponden a cada par de un campo superior y un campo inferior (es decir, área de memoria) hace posible que la unidad de gestión de memoria 71 registre, se refiera o actualice el estado de "usado" o "no usado" en cuanto a cada cuadro, y qué área del "área de memoria de imágenes a largo plazo" o "área de memoria de imágenes a corto plazo" se usa para almacenamiento, como se muestra en la figura
10
15
20
25
30
35
40
45
50
55
60
65
E03741394
11-05-2015
10B. Este procedimiento detallado es como se muestra en el diagrama de flujo de la figura 6 en la primera realización.
Además, cuando la señal de video ingresada 10 se codifica usando tanto cuadro como campo como la unidad, el uso de un indicador almacenado y un indicador de largo plazo o similar que corresponda a cada cuadro en cuanto a cuadros y un indicador almacenado y un indicador de corto plazo o similar que corresponda a cada par de un campo superior y un campo inferior en cuanto a campos, hace posible que la unidad de gestión de memoria 71 registre, se refiera o actualice el estado de "usado" o "no usado" en cuanto a cada cuadro, y qué área de "área de memoria de imágenes de largo plazo" o "área de memoria de imágenes a corto plazo" se usa para el almacenamiento de cada cuadro o para cada par de un campo superior y un campo inferior, es decir, cuadro por cuadro como se muestra en la figura 10C.
Aquí, el procedimiento de control específico de indicadores almacenados es como sigue: cuando datos de imagen no han sido almacenados en el área de memoria, cuando datos de cuadro almacenados en el área de memoria se hacen innecesarios (cuando se determinan como no usados) o cuando datos de campo superior y datos de campo inferior almacenados en el área de memoria se hacen innecesarios (ambos datos de campo se determinan como no usados), los indicadores almacenados que corresponden al área de memoria se establecen como "no usados". Hacer esto hace posible almacenar nuevos datos de cuadro o datos de campo en el área de memoria.
Por otro lado, cuando se almacenan nuevos datos de cuadro, datos de campo superior o datos de campo inferior en el área de memoria "no usada", el indicador almacenado que corresponde al área de memoria se establece como "usado". Al hacer esto, se prohíbe que otros datos de cuadro o datos de campo sean almacenados en el área de memoria, y se asegura que datos de cuadro o datos de campo que ya hayan sido almacenados sean guardados en el área de memoria. Cuando datos de campo superior o datos de campo inferior son almacenados en el área de memoria "no usada", el indicador almacenado que corresponde al área de memoria se establece como "usado", pero gestiona datos del campo inferior y campo superior que componen el mismo cuadro considerándolos como almacenables respectivamente en cualquiera de las áreas de campo o el otra área de campo del área de memoria.
Asimismo, un procedimiento de control específico de indicadores de largo plazo es el siguiente: cuando se usan datos de imagen almacenados en el área de memoria para la referencia a corto plazo, los indicadores de corto plazo que corresponden al área de memoria se establecen como el "área de memoria de imágenes a corto plazo", los datos de imagen que son los datos de cuadro cuando datos de cuadro son almacenados, los datos de campo superior cuando solo datos de, campo superior son almacenados, los datos de campo inferior cuando solo datos de campo inferior son almacenados, o tanto datos de campo superior como datos de campo inferior cuando los datos de campo superior y los datos de campo inferior son almacenados. Al hacer esto, se hace posible usar el área de memoria como una memoria volátil de FIFO junto con el área de memoria de otra "área de memoria de imágenes a corto plazo".
Por otro lado, cuando se usan datos de imagen almacenados en el área de memoria para referencia a largo plazo, los indicadores de largo plazo que corresponden al área de memoria se establecen como el "área de memoria de imágenes a largo plazo", los datos de imagen que son los datos de cuadro cuando los datos de cuadro son almacenados, los datos de campo superior cuando solo los datos de campo superior son almacenados, los datos de campo inferior cuando solo los datos de campo inferior son almacenados, o tanto datos de campo superior como datos de campo inferior cuando datos de campo superior y datos de campo inferior son almacenados. Al hacer esto, se asegura que los datos de imagen sean almacenados en el área de memoria hasta que sean explícitamente eliminados del área de memoria (se vuelvan "no usados"). Asimismo, cuando se cambian los cuadros, los campos superiores o los campos inferiores que están almacenados en el área de memoria cuando indicadores de largo plazo se establecen como "área de memoria de imágenes a corto plazo" en indicadores para referencia a largo plazo, el indicador de largo plazo debe establecerse como el "área de memoria de imágenes a largo plazo". Hacer esto hace posible desplazar fácilmente los datos de imagen del "área de memoria de imágenes a corto plazo" al "área de memoria de imágenes a largo plazo".
La figura 11 es un diagrama que muestra la condición de almacenamiento de las imágenes de referencia en una memoria volátil. La figura 11A muestra la condición de almacenamiento de la memoria volátil 16c en el caso en el que la señal de video 10 que será ingresada se codifica cuadro por cuadro, la figura 11B muestra la memoria volátil 16C en el caso en el que la señal de video 10 que será ingresada se codifica campo por campo y la figura 11C muestra la condición de almacenamiento de la memoria volátil 16c en el caso en el que la señal de video 10 que se ingresará se codifica con la condición de que estén incluidos cuadros y campos.
Como se mostró anteriormente, el codificador de video 70 en la realización realiza la gestión de memoria cuadro por cuadro en cualquier caso donde la unidad que funciona para codificar la señal de video ingresada 10 es cuadro por cuadro, campo por campo, o una mezcla de los mismos. Por lo tanto, en comparación con un método de gestión de memoria complicado con la condición de que tanto un cuadro como un campo se usen como la unidad, una carga de procesamiento para la gestión de memoria se reduce y un tamaño de circuito para ésta es reducido en tamaño.
15
25
35
45
55
65
E03741394
11-05-2015
La unidad de gestión de memoria 71 de la realización puede aplicarse no solo para un codificador de video, sino también para un decodificador de video (aparato de decodificación de imágenes en movimiento). La figura 12 es un diagrama de bloques que muestra la estructura del decodificador de video 100 con la unidad de gestión de memoria 109 con la misma función que la de la unidad de gestión de memoria 71 mencionada anteriormente. El decodificador de video 100 comprende una memoria volátil de entrada 102 para guardar la señal de video codificada ingresada 101, un dispositivo de decodificación de longitud variable 103 para decodificar en correspondencia a la codificación por la unidad de codificación de longitud variable 15 equipada en el codificador de video 70, una unidad de cuantificación inversa 104 que funciona para realizar la cuantificación inversa en correspondencia a la cuantificación por la unidad de cuantificación 14 equipada en el codificador de video 70, una unidad de transformación de coseno discreta inversa 105 que funciona para realizar la transformación inversa a la transformación realizada por la unidad de transformación 13 equipada en el codificador de video 70, un adicionador 106 para emitir la señal de video 110 al añadir imágenes, una memoria volátil 107 como una memoria volátil de cuadros múltiples para almacenar imágenes de referencia, una unidad de compensación de movimiento 108 que funciona para realizar la compensación de movimiento en las imágenes de referencia almacenadas en la memoria volátil 107 usando los vectores de movimiento, los cuales están contenidos en la señal de video de codificación 101, obtenida a través del dispositivo de decodificación de longitud variable 103, y la unidad de gestión de memoria 109.
La unidad de gestión de memoria 109 ordena a la unidad de compensación de movimiento 108 seleccionar la misma unidad para el procesamiento basándose en la información externa que indique qué unidad (cuadro por cuadro, campo por campo) se usa para codificar las imágenes de la señal de video de codificación ingresada 101 y gestiona las imágenes de referencia almacenadas en una memoria volátil de cuadros múltiples, es decir, la memoria volátil 107 cuadro por cuadro. En forma más específica, cuando las imágenes de la señal de video codificada ingresada 101 son codificadas cuadro por cuadro en GOP (o secuencia) o similar, la unidad de gestión de memoria 109 controla la unidad de compensación de movimiento 108 para realizar la compensación de movimiento cuadro por cuadro, y realiza la gestión de memoria cuadro por cuadro. Por otro lado, cuando las imágenes de la señal de video codificada ingresada 101 son codificadas campo por campo en GOP (o secuencia), la unidad de gestión de memoria 109 controla la unidad de compensación de movimiento 108 para realizar la compensación de movimiento campo por campo, y realiza el gestión de memoria cuadro por cuadro. Los detalles sobre el gestión de memoria mediante este decodificador de video 100 son los mismos que los del decodificador de video 70 excepto que la compensación de movimiento se realiza usando vectores de movimiento contenidos en la señal de vídeo codificada ingresada 101.
Hasta este punto, se han explicado dos realizaciones de un aparato de codificación de imágenes en movimiento, un aparato de decodificación de imágenes en movimiento y una gestión de memoria de la presente invención, y la presente invención no está limitada a estas realizaciones.
No existe la necesidad de equipar el indicador almacenado 44 y el indicador de largo plazo 45 igual que en esta realización, en otras palabras, es posible usar solo uno de los mismos o emplear cualquier otro método.
Además, es posible realizar la gestión de memoria cuadro por cuadro o campo por campo de una manera mixta en lugar de solo cuadro por cuadro de una manera fija cuando se considere que mejora la función de una gestión de memoria y la eficiencia en el uso de una memoria volátil cuadro por cuadro superen simplificar la gestión de la memoria. Por ejemplo, es posible realizar la gestión en cuadro por cuadro "usado"/"no usado" y en "área de memoria de imágenes a corto plazo"/"área de memoria de imágenes a largo plazo" campo por campo al asignar 1 bit de indicador almacenado y 2 bits de indicador de largo plazo a cada una de las áreas de memoria.
La gestión de memoria ("usado"/"no usado", "área de memoria de imágenes a largo plazo"/"área de memoria de imágenes a corto plazo") se logra mediante el uso de indicadores que correspondan a imágenes (cuadros o campos) en la realización mencionada anteriormente, la presente invención no está limitada a la gestión de memoria en el que se usan indicadores. Por ejemplo, también es posible realizar una gestión de memoria similar al hacer una tabla de gestión en donde números de imagen de imágenes (o índices de referencia o números que muestren cada área de una memoria volátil) en un estado de "usado" (o "no usado) se seleccionen de las imágenes almacenadas en la memoria volátil se registren o una tabla de gestión donde números de imagen de imágenes (o índices de referencia
o números que muestren cada área de una memoria volátil) almacenados en un "área de memoria de imágenes a corto plazo" (o "área de memoria de imágenes a largo plazo") se registren.
Asimismo, también es posible lograr que el codificador de video y el decodificador de video equipen una función de gestión de memoria mostrada en la realización mencionada anteriormente como un programa. La distribución de este programa después de grabarlo en un medio de almacenamiento tal como un disco flexible hace posible hacer que computadoras de propósitos generales en cada lugar funcionen como un codificador de video o un decodificador de video de la presente invención.
La figura 13 es una ilustración de un medio de almacenamiento para almacenar un programa para lograr el codificador de video y el decodificador de video de la realización mencionada arriba usando un sistema de ordenador. La figura 13A muestra un ejemplo de un formato físico de un disco flexible como un cuerpo de medio de grabación. La figura 13B muestra un disco flexible y la vista frontal y la vista transversal de la apariencia en el disco flexible. Un disco flexible (FD) está contenido en un estuche F, una pluralidad de pistas (Tr) están formadas
15
25
35
45
55
65
E03741394
11-05-2015
concéntricamente sobre la superficie del disco desde la periferia hacia el radio interior del disco, y cada pista está dividida en 16 sectores (Se) en la dirección angular. Por lo tanto, en caso de que el disco flexible almacene el programa mencionado anteriormente, el codificador de video y el decodificador de video como el programa se graban en un área asignada para éstos sobre el disco flexible (FD). Asimismo, la figura 13C muestra la estructura para grabar y leer el programa en el disco flexible (FD). Cuando el programa está grabado sobre el disco flexible (FD), el sistema de ordenador (Cs) escribe en el codificador de video o el decodificador de vídeo como un programa por medio de una unidad de disco flexible. Cuando el codificador de video y el decodificador de video mencionados anteriormente están construidos en el sistema de ordenador por el programa en el disco flexible, el programa es leído del disco flexible a través de una unidad de disco flexible y transferido al sistema de ordenador. Obsérvese que el medio de grabación no está limitado a discos flexibles, y que también pueden usarse discos ópticos tales como DC-ROMs y DVD-ROMs, tarjetas de memoria, casetes ROM y similares.
Asimismo, el codificador de video y el decodificador de video de la presente invención se pueden aplicar a varios tipos de aparatos o sistemas. Las aplicaciones del codificador de video y del decodificador de video de la realización mencionada anteriormente se explicarán a continuación.
La figura 14 es un diagrama de bloques que muestra la configuración general de un sistema de suministro de contenidos ex100 para realizar el servicio de distribución de contenidos. El área para proporcionar el servicio de comunicación está dividida en células de tamaños deseados, y sitios celulares ex107 a ex110 de estaciones inalámbricas fijas están colocados en las células respectivas. Este sistema de suministro de contenidos ex100 está conectado a cada aparato, tal 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 con una cámara ex115 por medio de, por ejemplo, una combinación de Internet ex101, un proveedor de servicio de Internet ex102, una red telefónica ex104 y sitios celulares ex107 a ex110. Sin embargo, el sistema de suministro de contenidos ex100 no está limitado a la configuración mostrada en la figura 14, y puede conectarse a una combinación de cualquiera de los mismos. Asimismo, cada aparato puede conectarse directamente a la red telefónica ex104, no a través de los sitios celulares como estaciones de radio fijas ex107 a ex110.
La cámara ex113 es un aparato capaz de tomar video (imágenes en movimiento) tal como una cámara de video digital. El teléfono móvil puede ser un teléfono móvil de un sistema de Comunicaciones Digitales Personales (PDC), un sistema de Acceso Múltiple por División de Códigos (CDMA), un sistema de Acceso Múltiple por División de Códigos de Banda Ancha (W-CDMA) o un teléfono móvil que use un sistema del Sistema Global de Comunicaciones Móviles (GSM), un sistema del Sistema de Teléfono-Portátil Personal (PHS) o similares.
Un servidor de formación de corrientes ex103 está conectado a la cámara ex113 por medio del sitio celular ex109 y la red telefónica ex104, el cual logra una distribución en vivo o similar utilizando la cámara ex113 basándose en los datos codificados transmitidos desde el usuario. La cámara ex113 o el servidor para transmitir los datos pueden codificar los datos tomados. Además, los datos de imágenes en movimiento tomados por una cámara ex116 pueden ser transmitidos al servidor de formación de corrientes ex103 por medio del ordenador ex111. La cámara ex116 es un aparato capaz de tomar imágenes fijas y en movimiento, tal como una cámara digital. En este caso, la cámara ex116 o el ordenador ex111 pueden codificar los datos de imagen en movimiento. Un LSI ex117 incluido en el ordenador ex111 o la cámara ex116 realiza el procesamiento de codificación. Un software para codificar y decodificar imágenes puede estar integrado en cualquier tipo de medio de almacenamiento (tal como CD-ROMs, discos flexibles, discos duros y similares) que sea un medio de grabación que pueda ser leído por el ordenador ex111 o similar. Además, un teléfono móvil con una 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 contenidos ex100 codifica contenidos (tales como un video musical en vivo) tomados por usuarios que usen la cámara ex113, la cámara ex116 o similares de la misma manera que en las realizaciones mencionadas anteriormente, y los transmite al servidor de formación de corrientes ex103, mientras que el servidor de formación de corrientes ex103 hace la distribución de corrientes de los datos de contenidos a los clientes según su solicitud. Los clientes incluyen el ordenador ex111, la PDA ex112, la cámara ex113, el teléfono móvil ex114 y demás, que son capaces de decodificar los datos codificados mencionados anteriormente. De esta manera, el sistema de suministro de contenidos ex100 hace posible que los clientes reciban y reproduzcan los datos codificados, y además que reciban, decodifiquen y reproduzcan los datos en tiempo real para lograr así una transmisión personal.
Cuando cada aparato en este sistema realiza la codificación o decodificación, se puede usar el codificador de video
o decodificador de video mostrado en las realizaciones mencionadas anteriormente.
Un teléfono móvil será explicado como un ejemplo del aparato. La figura 15 es un diagrama que muestra al teléfono móvil ex115 utilizando el codificador de video y el decodificador de video explicados en las realizaciones mencionadas anteriormente. El teléfono móvil ex115 tiene una antena ex201 para comunicarse con el sitio celular ex110 mediante ondas de radio, una unidad de cámara ex203 capaz de tomar imágenes en movimiento y fijas, tal como una cámara CCD, una unidad de presentación visual ex202 tal como una pantalla de visualización de cristal
15
25
35
45
55
65
E03741394
11-05-2015
líquido para mostrar los datos obtenidos por imágenes decodificadas y similares tomadas por la unidad de cámara ex203 y recibidos por la antena ex201, una unidad de cuerpo que incluye un conjunto de teclas de operación ex204, una unidad de salida de voz ex208 tal como un altavoz para emitir voces, una unidad de entrada de voz ex205 tal como un micrófono para ingresar voces, un medio de almacenamiento ex207 para almacenar datos codificados o decodificados tales como datos de imágenes en movimiento o fijas tomadas por la cámara, datos de correos electrónicos recibidos y de imágenes en movimiento o fijas, y una unidad de ranura ex206 que funciona para unir el medio de almacenamiento ex207 al teléfono móvil ex115. El medio de almacenamiento ex207 está equipado con un elemento de memoria volátil, un tipo de Memoria de Sólo Lectura Eléctricamente Borrable y Programable (EEPROM) que es una memoria no volátil eléctricamente borrable y reescribible, en una carcasa de plástico tal como tarjetas SD.
A continuación se explicará el teléfono móvil ex115 con referencia a la figura 16. En el teléfono móvil ex115, una unidad de control principal ex311, la cual funciona para realizar el control centralizado en cada unidad de la unidad de cuerpo que incluye la unidad de presentación visual ex202 y teclas de operación ex204, está conectada a una unidad de circuito de suministro de energía ex310, una unidad de control de entrada de operación 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 decodificación de imágenes ex309, una unidad de desmultiplexión ex308, una unidad de grabación y reproducción ex307, una unidad de circuito de módem ex306 y una unidad de procesamiento de voz ex305 entre sí mediante de una barra colectora sincronizada ex313.
Cuando una tecla de fin de llamada o una tecla de encendido es activada por la operación de un usuario, la unidad de circuito de suministro de energía ex310 suministra a los componentes respectivos energía desde un paquete de baterías para activar de esta manera el teléfono móvil digital con una cámara ex115 para ponerla en 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, una ROM y una RAM, la unidad de circuito de módem ex306 que funciona para realizar el procesamiento de amplio espectro de los datos de voz digitales, y la unidad de circuito de comunicación ex301 que funciona para realizar la conversión digital a analógica y la transformación de frecuencia de los datos, para de esta forma transmitirlos por medio de la antena ex201. Además, en el teléfono móvil ex115, la unidad de circuito de comunicación ex301 amplifica los datos recibidos por la antena ex201 en el modo de conversación y realiza la transformación de frecuencia y la conversión analógica a digital de los datos, la unidad de circuito de módem ex306 realiza el procesamiento de amplio espectro inverso de los datos, y la unidad de procesamiento de voz ex305 los convierte en datos de voz analógicos para así emitirlos por medio de la unidad de emisión de voz ex208.
Además, cuando se transmite un correo electrónico en modo de comunicación de datos, los datos de texto del correo electrónico ingresados al operar las teclas de operación ex204 sobre la unidad de cuerpo son enviados a la unidad de control principal ex311 por medio de la unidad de control de entrada de operación ex304. En la unidad de control principal ex311, después de que la unidad de circuito de módem ex306 realice el procesamiento de amplio espectro de los datos de texto y la unidad de circuito de comunicación ex301 realiza la conversión digital a analógica y la transformación de frecuencia para los mismos, los datos son transmitidos al sitio celular ex110 por medio de la antena ex201.
Cuando los datos de imagen son transmitidos en modo de comunicación de datos, los datos de imágenes en movimiento tomados por la unidad de cámara ex203 son suministrados a la unidad de codificación de imágenes ex312 por medio de la unidad de interfaz de cámara ex303. Cuando los datos de imagen no son transmitidos, también es posible desplegar los datos de imagen tomados por la unidad de cámara ex203 directamente sobre la unidad de presentación visual ex202 por medio 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, la cual incluye el codificador de imágenes como el descrito en la presente invención, comprime y codifica los datos de imagen suministrados desde la unidad de cámara ex203 usando el método de codificación empleado por el codificador de video como el mostrado en las realizaciones mencionadas anteriormente para transformarlos de esta manera en datos de imagen codificados, y los envía a la unidad de desmultiplexió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 toma por la unidad de cámara ex203 a la unidad de desmultiplexión ex308 como datos de voz digitales por medio de la unidad de procesamiento de voz ex305.
La unidad de desmultiplexión ex308 multiplexa los datos de imagen codificados suministrados desde la unidad de codificación de imágenes ex312 y los datos de voz suministrados desde la unidad de procesamiento de voz ex305, usando un método predeterminado, la unidad de circuito de módem ex306 realiza el procesamiento de amplio espectro de los datos multiplexados obtenidos como un resultado de la multiplexión, y la unidad de circuito de comunicación ex301 realiza la conversión digital a analógica y la transformación de frecuencia de los datos para su transmisión por medio de la antena ex201.
15
25
35
45
55
65
E03741394
11-05-2015
Para recibir datos de un archivo de imágenes en movimiento que esté enlazado a una página de red o similar en el modo de comunicación de datos, la unidad de circuito de módem ex306 realiza procesamiento de amplio espectro de los datos recibidos desde el sitio celular ex110 por medio de la antena ex201, y envía los datos multiplexados obtenidos como resultado del procesamiento a la unidad de desmultiplexión ex308.
Para decodificar los datos multiplexados recibidos por medio de la antena ex201, la unidad de desmultiplexión ex308 separa los datos multiplexados en una corriente de bits de datos de imagen y una corriente de bits de datos de voz, y suministra los datos de imagen codificados actuales a la unidad de decodificación de imágenes ex309 y los datos de voz actuales a la unidad de procesamiento de voz ex305, respectivamente por medio de la barra colectora sincronizada ex313.
A continuación, la unidad de decodificación de imágenes ex309, que incluye el decodificador de video como el descrito en la presente invención, decodifica la corriente de bits de datos de imagen usando el método de decodificación que corresponde al método de codificación como el mostrado en las realizaciones mencionadas anteriormente para generar datos de imagen en movimiento reproducidos, y suministra estos datos a la unidad de presentación visual ex202 por medio de la unidad de control LCD ex302, y de esta manera los datos de imágenes en movimiento incluidos en el archivo de imágenes en movimiento enlazado a una página de red, por ejemplo, son desplegados. Al mismo tiempo, la unidad de procesamiento de voz ex305 convierte los datos de voz en datos de voz análogos, y suministra estos datos a la unidad de salida de voz ex208, y de esta manera son reproducidos los datos de voz incluidos en el archivo de imágenes en movimiento enlazado a una página de red, por ejemplo.
La presente invención no está limitada al sistema mencionado anteriormente, y al menos el codificador de video o el decodificador de video en las realizaciones mencionadas arriba puede incorporarse en un sistema de transmisión digital como el mostrado en la figura 17. Esta transmisión digital terrestre o vía satélite ha estado en boga recientemente. Más específicamente, una corriente de bits de información de video es transmitida desde una estación de transmisión ex409 a un satélite de comunicación o de transmisión ex410 por medio de ondas de radio. Después de su recepción, el satélite de transmisión ex410 transmite ondas de radio para su emisión, una antena de uso doméstico ex406 con una función de recepción de transmisión vía satélite recibe las ondas de radio, y una televisión (receptor) ex401 o un decodificador de caja (STB) ex407 o similar decodifica y reproduce la corriente de bits. El decodificador de video como el mostrado en las realizaciones mencionadas anteriormente puede implementarse en el aparato de reproducción ex403 para la lectura y la decodificación de la corriente de bits grabada sobre un medio de almacenamiento ex402 que sea un medio de grabación tal como un CD y un DVD. En este caso, las señales de video reproducidas son desplegadas sobre un monitor ex404. También se concibe implementar el decodificador de video en el decodificador de caja ex407 conectado a un cable ex405 para una televisión por cable o la antena ex406 para la transmisión vía satélite y/o terrestre para reproducirlos así en un monitor ex408 de la televisión. El codificador de video puede estar incorporado en la televisión, en lugar de en el decodificador de caja. Asimismo, un automóvil ex412 que tenga una antena ex411 puede recibir señales que provengan del satélite ex410, el sitio celular ex107 o similar para reproducir imágenes en movimiento sobre un aparato de presentación visual tal como un sistema de navegación para autos ex413.
Además, el decodificador de video como el mostrado en las realizaciones mencionadas anteriormente puede codificar señales de imagen y grabarlas sobre el medio de grabación. Como un ejemplo concreto, pueden citarse un grabador ex420 tal como un grabador de DVD para grabar señales de imágenes sobre un disco DVD ex421 y un grabador de discos para grabarlas en un disco duro. Pueden ser grabadas en una tarjeta SD ex422. Si el grabador ex420 incluye el decodificador de video mostrado en la realización mencionada anteriormente, las señales de imagen grabadas sobre el disco DVD ex421 o la tarjeta SD ex422 pueden ser reproducidos para su presentación visual sobre el monitor ex408.
Obsérvese que una configuración concebible del sistema de navegación para autos ex413 es la configuración obtenida al eliminar 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 los componentes mostrados en la figura 16. Lo mismo se aplica al ordenador ex111, la televisión (receptor) ex401 y similares.
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 implementado con un codificador y con un decodificador, un terminal de envío implementado con un codificador solamente, y un terminal de recepción implementado con un decodificador solamente.
Como se describió anteriormente, es posible usar el codificador de video o el decodificador de video de las realizaciones mencionadas anteriormente en cualquiera de los aparatos y sistemas descritos anteriormente, y mediante el uso de este método, pueden obtenerse los efectos descritos en las realizaciones anteriores.
A partir de la invención así descrita, será obvio que las realizaciones de la invención pueden variarse en muchas formas. Estas variaciones no deben considerarse como un alejamiento del espíritu y del alcance de la invención, y se pretende que todas las modificaciones que sean obvias para un experto en la técnica estén incluidas dentro del
E03741394
11-05-2015
alcance de las siguientes reivindicaciones.
Aplicabilidad industrial
El aparato de codificación de imágenes en movimiento, un aparato de decodificación de imágenes en movimiento y
5 un dispositivo de gestión de memoria de la presente invención pueden usarse como un codificador de video y un decodificador de video que se obtengan por software usando un circuito eléctrico tal como un LSI o un ordenador. Por ejemplo, son útiles como un codificador de video y un decodificador de video equipados con ordenadores, PDAs, dispositivos de envío de transmisión digital, teléfonos celulares y similares que se usan para codificar imágenes en movimiento, decodificar y reproducir las imágenes en movimiento codificadas.
10

Claims (2)

  1. REIVINDICACIONES
    1. Un aparato para la gestión del almacenamiento de datos de imágenes en una memoria, utilizándose dicho aparato para la codificación o la decodificación de imágenes en movimiento, que comprende:
    5 una memoria que tiene áreas de memoria (41) en cada una de las cuales se pueden almacenar los datos de imagen correspondientes a un cuadro; una unidad de almacenamiento (52) operable para almacenar los datos de imágenes en la memoria; y una unidad de gestión de memoria (53) operable para gestionar un estado (44) de cada área de memoria (41)
    10 mediante el establecimiento de una información de almacenamiento de "usado" o "no usado", siendo el estado un estado de prohibición de almacenamiento de datos o un estado de autorización de almacenamiento de datos,
    caracterizado por que
    cuando unos primeros datos de campo se escriben en una primera área de memoria en el estado de autorización de almacenamiento de datos, dicha unidad de gestión de memoria es operable para prohibir que se escriban 15 datos adicionales en la primera área de memoria, excepto cuando los segundos datos de campo emparejados con los primeros datos de campo se escriben en la primera área de memoria.
  2. 2. Un método para la gestión del almacenamiento de datos de imágenes en una memoria para ser utilizado por un aparato para la codificación o decodificación de imágenes en movimiento, que comprende:
    20 una etapa de almacenamiento (67) de almacenamiento de datos de imágenes en una memoria que tiene áreas de memoria (41), en cada una de las cuales se pueden almacenar datos de imágenes correspondientes a un cuadro; y una etapa de gestión de memoria (62-66, 68) de gestión de un estado (44) de cada área de memoria (41),
    25 mediante el establecimiento de una información de almacenamiento de "usado" o "no usado", siendo el estado un estado de prohibición de almacenamiento de datos o una estado de autorización de almacenamiento de datos,
    caracterizado por que
    en dicha etapa de gestión de memoria, cuando unos primeros datos de campo se escriben en una primera área
    30 de memoria en el estado de autorización de almacenamiento de datos, se prohíbe la escritura de datos adicionales en la primera área de memoria, excepto cuando los segundos datos de campo emparejados con los primeros datos de campo se escriben en la primera área de memoria.
    15
ES03741394.5T 2002-07-15 2003-07-15 Dispositivo de codificación de imágenes en movimiento y dispositivo de decodificación de imágenes en movimiento Expired - Lifetime ES2536543T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP02015606 2002-07-15
EP02015606A EP1383339A1 (en) 2002-07-15 2002-07-15 Memory management method for video sequence motion estimation and compensation
PCT/JP2003/008954 WO2004008776A1 (ja) 2002-07-15 2003-07-15 動画像符号化装置及び動画像復号化装置

Publications (1)

Publication Number Publication Date
ES2536543T3 true ES2536543T3 (es) 2015-05-26

Family

ID=29762616

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03741394.5T Expired - Lifetime ES2536543T3 (es) 2002-07-15 2003-07-15 Dispositivo de codificación de imágenes en movimiento y dispositivo de decodificación de imágenes en movimiento

Country Status (10)

Country Link
US (14) US7760803B2 (es)
EP (4) EP1383339A1 (es)
JP (7) JP4440572B2 (es)
CN (1) CN1307839C (es)
AU (1) AU2003281135B2 (es)
BR (1) BRPI0305554B8 (es)
CA (1) CA2460473C (es)
ES (1) ES2536543T3 (es)
MX (1) MXPA04002302A (es)
WO (1) WO2004008776A1 (es)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1383339A1 (en) 2002-07-15 2004-01-21 Matsushita Electric Industrial Co., Ltd. Memory management method for video sequence motion estimation and compensation
EP1422946A4 (en) * 2002-07-26 2008-04-02 Matsushita Electric Ind Co Ltd MOVING IMAGE PROCEDURE, MOVABLE IMAGE DECODING METHOD AND RECORD MEDIUM
US20040252197A1 (en) * 2003-05-05 2004-12-16 News Iq Inc. Mobile device management system
US7715479B2 (en) * 2003-07-21 2010-05-11 International Business Machines Corporation Power-aware on-chip memory management for video coding algorithms
WO2005034517A1 (en) * 2003-09-17 2005-04-14 Thomson Licensing S.A. Adaptive reference picture generation
US20050207490A1 (en) * 2004-03-18 2005-09-22 Wang Jason N Stored picture index for AVC coding
CN100568975C (zh) * 2005-04-15 2009-12-09 索尼株式会社 解码装置、解码方法
US8069466B2 (en) * 2005-08-04 2011-11-29 Nds Limited Advanced digital TV system
JP4762095B2 (ja) * 2006-09-20 2011-08-31 株式会社東芝 画像復号装置及び画像復号方法
US7777751B2 (en) * 2006-11-27 2010-08-17 Lsi Corporation Tiled memory array for full search motion estimation
US8363721B2 (en) 2009-03-26 2013-01-29 Cisco Technology, Inc. Reference picture prediction for video coding
CN103053160B (zh) 2011-01-14 2016-11-16 太阳专利托管公司 图像编码方法及图像编码装置
WO2013108616A1 (en) 2012-01-20 2013-07-25 Panasonic Corporation Methods and apparatuses for encoding and decoding video using temporal motion vector prediction
KR101996682B1 (ko) 2012-02-03 2019-07-04 선 페이턴트 트러스트 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치 및 화상 부호화 복호 장치
JP6421931B2 (ja) 2012-03-06 2018-11-14 サン パテント トラスト 動画像符号化方法及び動画像符号化装置
EP2837187A4 (en) * 2012-04-13 2015-10-21 Sharp Kk DEVICES FOR SENDING AND RECEIVING A LONG-TERM REFERENCE GAME INDICATOR
WO2014051409A1 (ko) * 2012-09-28 2014-04-03 삼성전자 주식회사 참조 픽처 정보를 이용한 병렬 처리 비디오 부호화 방법 및 장치, 병렬 처리 비디오 복호화 방법 및 장치
JP5845202B2 (ja) * 2013-03-22 2016-01-20 株式会社東芝 画像圧縮装置および画像処理システム
EP2854405A1 (en) * 2013-09-26 2015-04-01 Thomson Licensing Method and apparatus for encoding and decoding a motion vector representation in interlaced video using progressive video coding tools
JP6405664B2 (ja) * 2014-03-28 2018-10-17 日本電気株式会社 映像符号化装置、映像符号化方法、及びプログラム
JP6453652B2 (ja) * 2015-01-09 2019-01-16 株式会社東芝 映像伝送システム
CN106937168B (zh) * 2015-12-30 2020-05-12 掌赢信息科技(上海)有限公司 一种利用长期参考帧的视频编码方法、电子设备及系统
US11140413B2 (en) * 2017-10-03 2021-10-05 Amimon Ltd. Video compression system
US11044477B2 (en) * 2019-12-16 2021-06-22 Intel Corporation Motion adaptive encoding of video
CN116800976B (zh) * 2023-07-17 2024-03-12 武汉星巡智能科技有限公司 伴睡婴幼儿时音视频压缩和还原方法、装置及设备

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1984002799A1 (en) * 1982-12-30 1984-07-19 Ibm A hierarchical memory system including separate cache memories for storing data and instructions
US5317717A (en) * 1987-07-01 1994-05-31 Digital Equipment Corp. Apparatus and method for main memory unit protection using access and fault logic signals
EP0484140B1 (en) * 1990-10-31 1996-12-18 Victor Company Of Japan, Ltd. Compression method of interlace moving image signals
US5317397A (en) * 1991-05-31 1994-05-31 Kabushiki Kaisha Toshiba Predictive coding using spatial-temporal filtering and plural motion vectors
JPH05268594A (ja) * 1992-03-18 1993-10-15 Sony Corp 動画像の動き検出装置
JPH05292393A (ja) * 1992-04-14 1993-11-05 Fujitsu Ltd 動画編集処理方式
US5489943A (en) * 1994-02-14 1996-02-06 Sony Corporation One-pass adaptive bit rate control
US5576765A (en) * 1994-03-17 1996-11-19 International Business Machines, Corporation Video decoder
IT1269513B (it) * 1994-05-18 1997-04-01 Ausimont Spa Elastomeri termoplastici fluorurati dotati di migliorate proprieta' meccaniche ed elastiche,e relativo processo di preparazione
JPH0837662A (ja) * 1994-07-22 1996-02-06 Hitachi Ltd 画像符号化復号化装置
US6301299B1 (en) * 1994-10-28 2001-10-09 Matsushita Electric Industrial Co., Ltd. Memory controller for an ATSC video decoder
EP0710033A3 (en) * 1994-10-28 1999-06-09 Matsushita Electric Industrial Co., Ltd. MPEG video decoder having a high bandwidth memory
JP3307822B2 (ja) * 1995-03-01 2002-07-24 松下電器産業株式会社 画像処理装置
US6064803A (en) * 1995-03-01 2000-05-16 Matsushita Electric Industrial Co., Ltd. Image information decoder with a reduced capacity frame memory
JPH08272977A (ja) * 1995-03-30 1996-10-18 Fujitsu Ltd 予測符号化方式復号化装置
JP3803122B2 (ja) * 1995-05-02 2006-08-02 松下電器産業株式会社 画像メモリ装置および動きベクトル検出回路
JP3347954B2 (ja) * 1995-11-02 2002-11-20 三菱電機株式会社 動画像符号化装置及び動画像復号化装置
US5798788A (en) * 1996-02-01 1998-08-25 David Sarnoff Research Center, Inc. Method and apparatus for evaluating field display functionality of a video decoder
JP2942497B2 (ja) 1996-03-22 1999-08-30 ローム株式会社 画像データ復号表示方法および装置
KR100215824B1 (ko) * 1996-04-09 1999-08-16 구자홍 엠펙 디코더의 프레임 메모리 및 영상 데이타 디코딩방법
US5835636A (en) * 1996-05-28 1998-11-10 Lsi Logic Corporation Method and apparatus for reducing the memory required for decoding bidirectionally predictive-coded frames during pull-down
US6088391A (en) * 1996-05-28 2000-07-11 Lsi Logic Corporation Method and apparatus for segmenting memory to reduce the memory required for bidirectionally predictive-coded frames
EP0825781B1 (en) * 1996-08-22 2004-10-27 Matsushita Electric Industrial Co., Ltd. Image processor
JP3307856B2 (ja) * 1996-08-22 2002-07-24 松下電器産業株式会社 画像処理装置
JP2973964B2 (ja) * 1997-01-24 1999-11-08 日本電気株式会社 フレーム・バッファ管理方式
JPH114443A (ja) * 1997-06-11 1999-01-06 Matsushita Electric Ind Co Ltd 情報処理装置
US6072548A (en) 1997-07-28 2000-06-06 Lsi Logic Corporation Video decoder dynamic memory allocation system and method allowing variable decoded image size
JPH1155591A (ja) * 1997-08-04 1999-02-26 Furukawa Electric Co Ltd:The 画像処理装置およびその方法
US6249318B1 (en) * 1997-09-12 2001-06-19 8×8, Inc. Video coding/decoding arrangement and method therefor
JPH11120690A (ja) 1997-10-14 1999-04-30 Matsushita Electric Ind Co Ltd ディスク装置及びバッファ管理方法
JPH11127438A (ja) * 1997-10-21 1999-05-11 Toshiba Corp 動画復号化装置用メモリ管理方法及びその装置
JPH11136680A (ja) * 1997-10-29 1999-05-21 Matsushita Electric Ind Co Ltd 画像符号化方法及び装置
EP0921497B1 (en) * 1997-12-02 2004-03-24 Daewoo Electronics Corporation Interlaced binary shape coding apparatus
JP4026238B2 (ja) 1998-07-23 2007-12-26 ソニー株式会社 画像復号装置及び画像復号方法
JP2000209597A (ja) * 1999-01-19 2000-07-28 Matsushita Electric Ind Co Ltd 画像デ―タ符号化装置および方法
US6658056B1 (en) * 1999-03-30 2003-12-02 Sony Corporation Digital video decoding, buffering and frame-rate converting method and apparatus
JP3701825B2 (ja) 1999-11-01 2005-10-05 日本電信電話株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および動画像符号化、復号プログラムを記憶した記憶媒体
WO2001086960A2 (en) 2000-05-10 2001-11-15 Picturetel Corporation Video coding using multiple buffers
US20040008775A1 (en) * 2002-07-12 2004-01-15 Krit Panusopone Method of managing reference frame and field buffers in adaptive frame/field encoding
EP1383339A1 (en) 2002-07-15 2004-01-21 Matsushita Electric Industrial Co., Ltd. Memory management method for video sequence motion estimation and compensation

Also Published As

Publication number Publication date
JP2014143726A (ja) 2014-08-07
EP1383339A1 (en) 2004-01-21
JP5530541B2 (ja) 2014-06-25
US20100215093A1 (en) 2010-08-26
US20160309174A1 (en) 2016-10-20
EP1443772A4 (en) 2010-04-07
US20180192065A1 (en) 2018-07-05
US9001891B2 (en) 2015-04-07
US9473781B2 (en) 2016-10-18
JP2014143727A (ja) 2014-08-07
US8989264B2 (en) 2015-03-24
JP2004040816A (ja) 2004-02-05
US10230971B2 (en) 2019-03-12
US9420301B2 (en) 2016-08-16
JP5205343B2 (ja) 2013-06-05
US20150172725A1 (en) 2015-06-18
AU2003281135A1 (en) 2004-02-02
CN1307839C (zh) 2007-03-28
EP1443772A1 (en) 2004-08-04
JP2013110770A (ja) 2013-06-06
US20160198170A1 (en) 2016-07-07
WO2004008776A1 (ja) 2004-01-22
CA2460473A1 (en) 2004-01-22
US20150172685A1 (en) 2015-06-18
MXPA04002302A (es) 2005-04-08
JP5261592B2 (ja) 2013-08-14
JP2012182835A (ja) 2012-09-20
US20150172684A1 (en) 2015-06-18
JP2014143725A (ja) 2014-08-07
US9479790B2 (en) 2016-10-25
US20080062187A1 (en) 2008-03-13
CN1557098A (zh) 2004-12-22
EP2894858A1 (en) 2015-07-15
US8139637B2 (en) 2012-03-20
US9402081B2 (en) 2016-07-26
EP1443772B1 (en) 2015-03-04
US20120147964A1 (en) 2012-06-14
JP5658391B2 (ja) 2015-01-21
US9936210B2 (en) 2018-04-03
US9942561B2 (en) 2018-04-10
US20040190614A1 (en) 2004-09-30
US9906806B2 (en) 2018-02-27
JP5658390B2 (ja) 2015-01-21
US20120144143A1 (en) 2012-06-07
CA2460473C (en) 2012-08-28
US7760803B2 (en) 2010-07-20
JP2009296605A (ja) 2009-12-17
US20150172700A1 (en) 2015-06-18
US20150172686A1 (en) 2015-06-18
US7742523B2 (en) 2010-06-22
JP4440572B2 (ja) 2010-03-24
US20160309175A1 (en) 2016-10-20
BRPI0305554B8 (pt) 2021-06-29
EP2894859A1 (en) 2015-07-15
BR0305554A (pt) 2004-09-28
US9398305B2 (en) 2016-07-19
BRPI0305554B1 (pt) 2018-04-03
AU2003281135B2 (en) 2007-09-20
JP5687787B2 (ja) 2015-03-18

Similar Documents

Publication Publication Date Title
ES2536543T3 (es) Dispositivo de codificación de imágenes en movimiento y dispositivo de decodificación de imágenes en movimiento
ES2420583T3 (es) Gestión de memoria intermedia de postdescodificador para un flujo de bits MPEG H.264-SVC
ES2382991T3 (es) Procedimiento de codificación de video
JP5355807B2 (ja) 符号化データ配信方法および配信システム
ES2535957T3 (es) Dispositivo de codificación de imágenes, dispositivo de descodificación de imágenes y sus métodos
JP4405272B2 (ja) 動画像復号化方法、動画像復号化装置及びプログラム
JP2004228617A (ja) 動画像符号化装置および動画像復号化装置