ES2899780T3 - Dispositivo y procedimiento de codificación de imagen en movimiento, dispositivo y procedimiento de decodificación de imagen en movimiento, flujo de bits - Google Patents
Dispositivo y procedimiento de codificación de imagen en movimiento, dispositivo y procedimiento de decodificación de imagen en movimiento, flujo de bitsInfo
- Publication number
- ES2899780T3 ES2899780T3 ES16181069T ES16181069T ES2899780T3 ES 2899780 T3 ES2899780 T3 ES 2899780T3 ES 16181069 T ES16181069 T ES 16181069T ES 16181069 T ES16181069 T ES 16181069T ES 2899780 T3 ES2899780 T3 ES 2899780T3
- Authority
- ES
- Spain
- Prior art keywords
- unit
- image
- prediction
- encoding
- macroblock
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/567—Motion estimation based on rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un dispositivo de decodificación de imagen en movimiento que decodifica un flujo de bits generado al dividir una imagen de un vídeo en una pluralidad de macrobloques y al codificar por compresión los macrobloques y que obtiene la imagen en movimiento, comprendiendo el dispositivo de decodificación de imagen en movimiento: una unidad de predicción compensada por movimiento que genera una imagen de interpredicción de uno de los macrobloques sobre la base de información de modo de codificación que indica una asignación de subbloque para el procesamiento de interpredicción en el macrobloque; y una unidad de decodificación de longitud variable para la decodificación por entropía del flujo de bits con el fin de obtener una cadena binaria y para la obtención de la información de modo de codificación de la cadena binaria, caracterizado porque la unidad de decodificación de longitud variable obtiene un identificador del flujo de bits para uno de los macrobloques, el identificador especificando una tabla de una pluralidad de tablas de binarización, cada una de las cuales define una asignación de cadena binaria a la información de modo de codificación, y obtiene información para identificar una posición de dicho macrobloque, y obtiene la información de modo de codificación mediante la binarización inversa de la cadena binaria según la tabla de binarización especificada.
Description
DESCRIPCIÓN
Dispositivo y procedimiento de codificación de imagen en movimiento, dispositivo y procedimiento de decodificación de imagen en movimiento, flujo de bits
CAMPO DE LA INVENCIÓN
[0001] La presente invención se refiere a un dispositivo de codificación de imagen en movimiento que divide una imagen en movimiento en áreas predeterminadas y codifica la imagen en movimiento en unidades de un área, y un dispositivo de decodificación de imagen en movimiento que decodifica una imagen en movimiento codificada en unidades de un área predeterminada.
ANTECEDENTES DE LA INVENCIÓN
[0002] Convencionalmente, en un sistema de codificación de vídeo estándar internacional, tal como MPEG o ITU-T H.26x, se utiliza un procedimiento para definir datos de bloque (denominado «macrobloque» a partir de ahora) como una unidad, los datos de bloque siendo una combinación de 16x16 píxeles de señal de brillo y 8x8 píxeles de señal de diferencia de color correspondientes a los 16x16 píxeles de señal de brillo, y que comprime cada cuadro de una señal de vídeo en unidades de datos de bloque según una técnica de compensación de movimiento, y una técnica de cuantización de coeficiente de transformación/transformada ortogonal.
[0003] La técnica de compensación de movimiento se utiliza para reducir la redundancia de una señal en una dirección de tiempo para cada macrobloque mediante el uso de una alta correlación existente entre cuadros de vídeo. Según esta técnica de compensación de movimiento, un cuadro ya codificado que se ha codificado previamente se almacena en una memoria como una imagen de referencia, y un área de bloque que proporciona la menor diferencia de energía eléctrica entre el área de bloque en sí y el macrobloque actual que es un bloque objetivo para la predicción compensada por movimiento se busca a través de un intervalo de búsqueda predeterminado en la imagen de referencia, y un desplazamiento espacial entre la posición espacial del macrobloque actual y la posición espacial del área de bloque en la imagen de referencia que se determina como el resultado de la búsqueda se codifica a continuación como un vector de movimiento.
[0004] Además, según la técnica de cuantización de coeficiente de transformación/transformada ortogonal, una señal diferencial que se adquiere sustrayendo una señal de predicción adquirida como resultado de la predicción compensada por movimiento mencionada anteriormente del macrobloque actual se transforma y cuantifica ortogonalmente para que la cantidad de información se comprima.
[0005] En el caso de MPEG-4 Visual, cada bloque que se utiliza como una unidad para la predicción compensada por movimiento tiene un tamaño mínimo de 8x8 píxeles, y DCT (transformada de coseno discreta) que tiene un tamaño de 8x8 píxeles se utiliza también para la transformación ortogonal. En contraste con esto, en el caso de MPEG-4 AVC (Moving Picture Experts Group-4 Advanced Video Coding, Codificación de Vídeo Avanzada del Grupo de Expertos en Codificación de Vídeo-4) (UIT-T H.264), se prepara una predicción compensada por movimiento con un tamaño de bloque inferior a 8x8 píxeles para llevar a cabo de manera eficiente la codificación incluso en un área, como un límite entre objetos, que tiene una pequeña correlación entre píxeles en una dirección espacial. Además, en la transformación ortogonal, la compresión y codificación se pueden llevar a cabo mediante el cambio adaptativo entre DCT de 8x8 píxeles que tiene precisión de píxel entero y DCT de 4x4 píxeles que tiene precisión de píxel entero sobre una base por macrobloque.
[0006] Según dicho procedimiento convencional de codificación de imagen de vídeo estándar internacional, particularmente cuando la resolución de la imagen es mayor debido a que el tamaño del macrobloque es fijo, un área que está cubierta por cada macrobloque se localiza fácilmente porque el tamaño del macrobloque es fijo. Como resultado, se produce un caso en el que un macrobloque periférico se coloca en el mismo modo de codificación o el mismo vector de movimiento se asigna a un macrobloque periférico. En tal caso, debido a que el encabezamiento de la información del modo de codificación, la información del vector de movimiento etc., que se codifican a pesar de que la eficiencia de predicción que no se mejora aumenta, la eficiencia de codificación de todo el codificador se reduce.
[0007] Para resolver tal problema, se describe un dispositivo que conmuta entre tamaños de macrobloque según la resolución o el contenido de una imagen (por ejemplo, consulte la referencia de patente 1). El dispositivo de codificación de imagen en movimiento descrito por la referencia de patente 1 puede llevar a cabo compresión y codificación conmutando entre tamaños de bloque de transformación ortogonal seleccionables o entre conjuntos seleccionables de tamaños de bloque de transformación ortogonal según el tamaño de macrobloque.
Referencia de patente
[0008] Referencia de patente 1: WO 2007/034918
[0009] El documento EP 1445956 A1 describe un procedimiento de codificación de imagen en el que una imagen de cuadro se divide en bloques y los datos de imagen se codifican para cada uno de los bloques. El procedimiento comprende una etapa de compensación de movimiento, en la que un modo de codificación que se aplicará a los datos de imagen se selecciona entre una pluralidad de modos de codificación preparados para la compensación de movimiento; y una etapa de codificación de generación de datos codificados, en la que la información de modo de codificación que representa el modo de codificación seleccionado y los datos de imagen se binarizan mediante el uso de una tabla de binarización predeterminada para generar un patrón de binarización, y
el patrón de binarización se somete a una codificación de longitud variable mediante codificación aritmética utilizando una tabla de probabilidad predeterminada.
[0010] El documento US 2010/054615 A1 se refiere a un procedimiento y aparato para codificar/decodificar una imagen, en el que el procedimiento incluye seleccionar una tabla de binarización predeterminada de una pluralidad de tablas de binarización en función de los valores de predicción de un píxel actual y binarizar o binarizar inversamente valores residuales mediante el uso de la tabla de binarización seleccionada.
[0011] JVT: «Output document new draft of JVT Codec (JVT-C167)», 16a REUNIÓN DEL VCEG; 60. REUNIÓN DEL MPEG; 6-5-2002 - 10-5-2002; FAIRFAX, VIRGINIA, EE. UU.; (GRUPO DE EXPERTOS EN CODIFICACIÓN DE VÍDEO del UIT-T SG.16), N.° VCEG-PO7, 23 de mayo de 2002 (23-05-2002), XP030003397, párrafo [10.3.1], describe el modelado de contexto y la binarización para la codificación de información de movimiento y módulo, y especialmente los modelos de contexto y la binarización para un tipo de macrobloque que dependen del tipo de rebanada. Se proporciona una descripción detallada para los distintos casos de rebanadas I, P y B.
RESUMEN DE LA INVENCIÓN PROBLEMAS QUE SOLUCIONAR POR LA INVENCIÓN
[0012] Sin embargo, un problema con los procedimientos convencionales de codificación de imagen de vídeo estándar internacional y la invención descrita por la referencia de patente 1 se debe a que la transformación no se puede llevar a cabo conmutando entre una pluralidad de tamaños de bloque de transformación ortogonal dentro de cada macrobloque, la eficiencia de codificación se reduce particularmente cuando un objeto que tiene un movimiento diferente o un patrón diferente existe en un macrobloque.
[0013] La presente invención se realiza con el fin de resolver el problema mencionado anteriormente, y por lo tanto es un objetivo de la presente invención proporcionar un dispositivo de codificación de imagen en movimiento que puede llevar a cabo la compresión y codificación mediante la conmutación adaptativa entre los tamaños de bloque de transformación ortogonal para cada área que es una unidad para la predicción compensada por movimiento en cada macrobloque, y un dispositivo de decodificación de imagen en movimiento.
MEDIOS PARA RESOLVER EL PROBLEMA
[0014] El objetivo mencionado anteriormente se resuelve mediante el dispositivo de decodificación de imagen en movimiento según la reivindicación 1, el dispositivo de codificación de imagen en movimiento según la reivindicación 3, el procedimiento de decodificación de imagen en movimiento según la reivindicación 2, el procedimiento de codificación de imagen en movimiento según la reivindicación 4, así como el flujo de bits según la reivindicación 5.
[0015] Según la presente invención, se proporciona un dispositivo de codificación de imagen en movimiento que incluye una unidad de control de codificación para seleccionar un determinado tamaño de bloque de transformación de un conjunto de tamaños de bloque de transformación predeterminados según un tamaño de bloque de una imagen de bloque para notificar el tamaño de bloque de transformación seleccionado de este modo a una unidad de transformación/cuantización, en la que la unidad de transformación/cuantización divide una señal de diferencia de predicción en bloques que tienen el tamaño de bloque de transformación notificado a la misma desde la unidad de control de codificación, y lleva a cabo un procedimiento de transformación y cuantización en cada uno de los bloques para generar datos comprimidos.
[0016] Según la presente invención, se proporciona un dispositivo de decodificación de imagen en movimiento en el que una unidad de cuantización inversa/transformación inversa determina un tamaño de bloque de transformación sobre la base de un modo de codificación decodificado y la información de tamaño de bloque de transformación incluida en los parámetros de compresión, y lleva a cabo un procedimiento de transformación inversa y un cuantización inversa en los datos comprimidos en unidades de un bloque que tiene el tamaño de bloque de transformación.
VENTAJAS DE LA INVENCIÓN
[0017] Según la presente invención, debido a que un determinado tamaño de bloque de transformación se selecciona de entre un conjunto de tamaños de bloque de transformación que están predeterminados según el tamaño de bloque de una imagen de bloque, y una señal de diferencia de predicción se divide en bloques que tienen el tamaño de bloque de transformación y se lleva a cabo un procedimiento de transformación y cuantización en cada uno de los bloques para generar datos comprimidos, se puede proporcionar un dispositivo de codificación de imagen en movimiento y un dispositivo de decodificación de imagen en movimiento que pueden llevar a cabo la compresión y la codificación mediante la conmutación adaptativa entre los tamaños de bloque de transformación para cada área que es una unidad para la predicción compensada por movimiento en cada macrobloque.
BREVE DESCRIPCIÓN DE LAS FIGURAS
[0018]
La Fig. 1 es un diagrama de bloques que muestra la estructura de un dispositivo de codificación de imagen en movimiento según la Realización 1 de la presente invención;
La Fig. 2A es una vista que muestra un ejemplo de modos de codificación para imágenes en cada una de las cuales se realiza la codificación predictiva en una dirección de tiempo;
La Fig. 2B es una vista que muestra otro ejemplo de los modos de codificación para imágenes en cada una de las cuales se lleva a cabo la codificación predictiva en una dirección de tiempo;
La Fig. 3 es un diagrama de bloques que muestra la estructura interna de una unidad de predicción compensada por movimiento del dispositivo de codificación de imagen en movimiento según la Realización 1;
La Fig. 4 es una vista que explica un procedimiento de determinación para determinar un valor predicho de un vector de movimiento según un modo de codificación;
La Fig. 5 es una vista que muestra un ejemplo de adaptación de un tamaño de bloque de transformación según un modo de codificación;
La Fig. 6 es una vista que muestra otro ejemplo de la adaptación de un tamaño de bloque de transformación según un modo de codificación;
La Fig. 7 es un diagrama de bloques que muestra la estructura interna de una unidad de transformación/cuantización del dispositivo de codificación de imagen en movimiento según la Realización 1; La Fig. 8 es un diagrama de bloques que muestra la estructura de un dispositivo de decodificación de imagen en movimiento según la Realización 1 de la presente invención;
La Fig. 9 es un diagrama de bloques que muestra la estructura interna de una unidad de codificación de longitud variable de un dispositivo de codificación de imagen en movimiento según la Realización 2 de la presente invención; La Fig. 10 es una vista que muestra un ejemplo de una tabla de binarización en un estado en el que la tabla de binarización aún no se ha actualizado;
La Fig. 11 es una vista que muestra un ejemplo de una tabla de probabilidad;
La Fig. 12 es una vista que muestra un ejemplo de una tabla de transición de estado;
La Fig. 13 es una vista que explica un procedimiento de generación de información de identificación de contexto, la Fig. 13(a) es una vista que muestra la tabla de binarización en representación de árbol binario, y la Fig. 13(b) es una vista que muestra una relación posicional entre un macrobloque que se codificará y los bloques periféricos; La Fig. 14 es una vista que muestra un ejemplo de la tabla de binarización en un estado en el que la tabla de binarización se ha actualizado;
La Fig. 15 es un diagrama de bloques que muestra la estructura interna de una unidad de decodificación de longitud variable de un dispositivo de decodificación de imagen en movimiento según la Realización 2 de la presente invención; y
La Fig. 16 es un diagrama de bloques que muestra la estructura interna de una unidad de generación de imágenes interpoladas con la que se proporciona una unidad de predicción compensada por movimiento de un dispositivo de codificación de imagen en movimiento según la Realización 3 de la presente invención.
REALIZACIONES DE LA INVENCIÓN
[0019] A continuación, las realizaciones preferidas de la presente invención se explicarán en detalle con referencia a los dibujos.
Realización 1.
[0020] En esta Realización 1, se explicará un dispositivo de codificación de imagen en movimiento que lleva a cabo una predicción compensada por movimiento entre cuadros adyacentes mediante el uso de cada imagen de cuadro de una imagen de vídeo como entrada y lleva a cabo un procedimiento de compresión mediante el uso de transformación ortogonal y cuantización en una señal de diferencia de predicción adquirida y, después de eso, lleva a cabo una codificación de longitud variable para generar un flujo de bits y un dispositivo de decodificación de imagen en movimiento que decodifica el flujo de bits.
[0021] La Fig. 1 es un diagrama de bloques que muestra la estructura de un dispositivo de codificación de
imagen en movimiento según la Realización 1 de la presente invención. El dispositivo de codificación de imagen en movimiento que se muestra en la Fig. 1 incluye una unidad de división de bloques 2 para dividir cada imagen de cuadro de una señal de vídeo introducida 1 en imágenes de macrobloque de una pluralidad de más bloques, cada uno teniendo un tamaño de macrobloque 4 y además dividiendo cada una de las imágenes de macrobloque en una imagen de macro/subbloque 5 de uno o más subbloques según un modo de codificación 7 para producir esta imagen de macro/subbloque 5, una unidad de intrapredicción 8 para, cuando se recibe una imagen de macro/subbloque 5 introducida en la misma, llevar a cabo una predicción intracuadro en la imagen de macro/subbloque 5 mediante el uso de una señal de imagen almacenada en una memoria 28 para la intrapredicción para generar una imagen de predicción 11, una unidad de predicción compensada por movimiento 9 para, cuando se recibe una imagen de macro/subbloque 5 introducida en la misma, llevar a cabo una predicción compensada por movimiento en la imagen de macro/subbloque 5 mediante el uso de una imagen de referencia 15 almacenada en una memoria de cuadro de predicción compensada por movimiento 14 para generar una imagen de predicción 17, una unidad de conmutación 6 para introducir una imagen de macro/subbloque 5 en cualquiera de la unidad de intrapredicción 8 y la unidad de predicción compensada por movimiento 9 según el modo de codificación 7, una unidad de sustracción 12 para sustraer la imagen de predicción 11 o 17 que se produce desde cualquiera de la unidad de intrapredicción 8 y la unidad de predicción compensada por movimiento 9 de la imagen de macro/subbloque 5 producida desde la unidad de división de bloques 2 para generar una señal de diferencia de predicción 13, una unidad de transformación/cuantización 19 para llevar a cabo un procedimiento de transformación y cuantización en la señal de diferencia de predicción 13 para generar datos comprimidos 21, una unidad de codificación de longitud variable 23 para codificar por entropía los datos comprimidos 21 para multiplexar estos datos comprimidos en el flujo de bits 30, unidad de cuantización inversa/transformación inversa 22 para llevar a cabo un procedimiento de transformación inversa y cuantización inversa en los datos comprimidos 21 para generar una señal de diferencia de predicción decodificada local 24, una unidad de adición 25 para agregar la imagen de predicción 11 o 17 emitida desde cualquiera de la unidad de intrapredicción 8 y la unidad de predicción compensada por movimiento 9 a la salida de la unidad de cuantización inversa/transformación inversa 22 para generar una señal de imagen decodificada local 26, la memoria 28 para intrapredicción para almacenar la señal de imagen decodificada local 26, una unidad de filtro de bucle 27 para llevar a cabo el filtrado en la señal de imagen decodificada local 26 para generar una imagen local decodificada 29, y la memoria de cuadro de predicción compensada por movimiento 14 para almacenar la imagen decodificada local 29.
[0022] Una unidad de control de codificación 3 emite elementos de información requeridos para el procedimiento llevado a cabo por cada unidad (el tamaño de macrobloque 4, modos de codificación 7, un modo de codificación óptimo 7a, parámetros de predicción 10, parámetros de predicción óptimos 10a o 18a, parámetros de compresión 20 y parámetros de compresión óptimos 20a). En lo sucesivo, se explicarán los detalles del tamaño del macrobloque 4 y el modo de codificación 7. Los detalles de los otros elementos de información se mencionarán más adelante.
[0023] La unidad de control de codificación 3 notifica a la unidad de división de bloques 2 el tamaño de macrobloque 4 de cada imagen de cuadro de la señal de vídeo introducida 1, y también notifica a la unidad de división de bloques 2 todos los modos de codificación seleccionables 7 según el tipo de imagen para cada macrobloque a codificar. Aunque la unidad de control de codificación 3 puede seleccionar un determinado modo de codificación de entre un conjunto de modos de codificación, este conjunto de modos de codificación se configura arbitrariamente. Por ejemplo, la unidad de control de codificación puede seleccionar un determinado modo de codificación de entre un conjunto que se muestra en la Fig. 2A o 2B que se mencionará a continuación.
[0024] La Fig. 2A es una vista que muestra un ejemplo de modos de codificación para una imagen P (predictiva) en cada uno de los cuales se lleva a cabo la codificación predictiva en una dirección de tiempo. En la Fig. 2A, mb_modo0 a mb_modo2 muestran modos (inter) en cada uno de los cuales se codifica un macrobloque (bloque de píxeles MxL) mediante el uso de una predicción intercuadro. mb_modo0 es el modo en el que se asigna un vector de movimiento a la totalidad de un macrobloque, mc_modo1 y mc_modo2 son los modos en los que un macrobloque se divide en partes iguales que se alinean horizontal o verticalmente, y se asignan diferentes vectores de movimiento a los subbloques en los que se divide el macrobloque, respectivamente. mc_modo3 es el modo en el que se divide un macrobloque en cuatro partes, y se asignan diferentes modos de codificación (sub_mb_modo) a los cuatro subbloques en los que se divide el macrobloque, respectivamente.
[0025] sub_mb_modo0 a sub_mb_modo4 son los modos cada uno de los cuales, cuando se selecciona mb_modo3 como el modo de codificación de un macrobloque, se pueden asignar a cada uno de los cuatro subbloques (bloques de píxeles mxl) en los que se divide el macrobloque. sub_mb_modo0 es el modo (intra) en el que se codifica un subbloque usando una predicción intracuadro. Los otros modos son los modos (inter) en los que se codifica un subbloque mediante el uso de una predicción intracuadro. sub_mb_modo1 es el modo en el que un vector de movimiento se asigna a la totalidad de un subbloque, sub_mc_modo2 y sub_mc_modo3 son los modos en los que un subbloque se divide en partes iguales que están alineadas horizontal o verticalmente, y se asignan diferentes vectores de movimiento a los subbloques en los que se divide el subbloque, respectivamente, y sub_mb_modo4 es el modo en el que un subbloque se divide en cuatro partes, y se asignan diferentes vectores de movimiento a los cuatro subbloques en los que se divide el subbloque, respectivamente.
[0026] Además, la Fig. 2B es una vista que muestra otro ejemplo de modos de codificación para una imagen P en cada uno de los cuales se lleva a cabo la codificación predictiva en una dirección de tiempo. En la Fig. 2B, mb_modo 0 a 6 son los modos (inter) en los que se codifica un macrobloque (bloque de píxeles MxL) mediante el uso de una predicción intercuadro. mb_modo0 es el modo en el que se asigna un vector de movimiento a la totalidad de un macrobloque, y mb_modo1 a mb_modo6 son los modos en los que un macrobloque se divide en dos partes que se alinean horizontal, vertical o diagonalmente, y se asignan diferentes vectores de movimiento a los dos subbloques en los que se divide el macrobloque, respectivamente. mb_modo7 es el modo en el que se divide un macrobloque en cuatro partes, y se asignan diferentes modos de codificación (sub_mb_modo) a los cuatro subbloques en los que se divide el macrobloque, respectivamente.
[0027] sub_mb_modo0 a sub_mb_modo8 son los modos cada uno de los cuales, cuando se selecciona mb_modo7 como el modo de codificación de un macrobloque, se pueden asignar a cada uno de los cuatro subbloques (bloques de píxeles mxl) en los que se divide el macrobloque. sub_mb_modo0 es el modo (intra) en el que se codifica un subbloque utilizando una predicción intracuadro. Los otros modos son los modos (inter) en los que se codifica un subbloque mediante el uso de una predicción intercuadro. sub_mb_modo1 es el modo en el que un vector de movimiento se asigna a la totalidad de un subbloque, sub_mb_modo2 a sub_mb_modo7 son los modos en los que un subbloque se divide en dos partes que se alinean horizontal, vertical o diagonalmente, y se asignan diferentes vectores de movimiento a los dos subbloques en los que se divide el subbloque, respectivamente. sub_mb_modo8 es el modo en el que un subbloque se divide en cuatro partes, y se asignan diferentes vectores de movimiento a los cuatro subbloques en los que se divide el subbloque, respectivamente.
[0028] La unidad de división de bloques 2 divide cada imagen de cuadro de la señal de vídeo introducida 1 introducida en el dispositivo de codificación de imagen en movimiento en imágenes de macrobloque, cada una teniendo el tamaño de macrobloque 4 notificado a la misma por la unidad de control de codificación 3. Además, cuando un modo de codificación 7 notificado a esta desde la unidad de control de codificación 3 incluye un modo (uno de sub_mb_modo1 a 4 de la Fig. 2A o uno de sub_mb_modo1 a sub_mb_modo8 de la Fig. 2B) en el que diferentes modos de codificación se asignan respectivamente a subbloques en los que se divide un macrobloque, la unidad de división de bloques 2 divide cada imagen de macrobloque en imágenes de subbloque mostradas por el modo de codificación 7. Por lo tanto, una imagen de bloque emitida desde la unidad de división de bloques 2 es una de una imagen de macrobloque o una imagen de subbloque según el modo de codificación 7. En lo sucesivo, esta imagen de bloque se denomina imagen de macro/subbloque 5.
[0029] Cuando cada cuadro de la señal de vídeo introducida 1 tiene un tamaño horizontal o vertical que no es un múltiplo integral del tamaño horizontal o tamaño vertical del tamaño de macrobloque 4, un cuadro (cuadro extendido) en el que los píxeles se proporcionan adicionalmente en una dirección horizontal o vertical de tal manera que cada cuadro de la señal de vídeo introducida 1 tiene un tamaño horizontal o vertical que es un múltiplo integral del tamaño horizontal o tamaño vertical del tamaño de macrobloque para cada cuadro de la señal de vídeo introducida 1. Como un procedimiento de generación de píxeles en la región extendida cuando se agregan píxeles para ampliar cada cuadro en, por ejemplo, una dirección vertical, hay un procedimiento para llenar la región extendida copiando repetidamente una línea de píxeles que discurren en un borde inferior del cuadro original o generando repetidamente una línea de píxeles que tienen un valor fijo de píxeles (gris, negro, blanco o similar). También cuando se agregan píxeles para ampliar cada cuadro en una dirección horizontal, existe un procedimiento para llenar la región extendida copiando repetidamente una línea de píxeles que discurren en un borde derecho del cuadro original o generando repetidamente una línea de píxeles que tienen un valor fijo de píxeles (gris, negro, blanco o similar). El cuadro extendido que se genera para cada cuadro de la señal de vídeo introducida 1 y cuyo tamaño de cuadro es un múltiplo integral del tamaño de macrobloque, en lugar de cada imagen de cuadro de la señal de vídeo introducida 1, se introduce en la unidad de división de bloques 2.
[0030] El tamaño de macrobloque 4 y el tamaño de cuadro (tamaño horizontal y tamaño vertical) de cada cuadro de la señal de vídeo introducida 1 se emiten en la unidad de codificación de longitud variable 23 para multiplexarse en el flujo de bits en unidades de una secuencia que consiste en uno o más cuadros o en unidades de una imagen.
[0031] El valor del tamaño de macrobloque se puede definir alternativamente por un perfil o similar, en lugar de ser multiplexado directamente en el flujo de bits. En este caso, la información de identificación para identificar el perfil sobre una base por secuencia se multiplexa en el flujo de bits.
[0032] La unidad de conmutación 6 es un conmutador para conmutar entre los destinos de entrada de la imagen de macro/subbloque 5 según el modo de codificación 7. Cuando el modo de codificación 7 es el modo en el que se codifica la imagen de macro/subbloque mediante el uso de una predicción intracuadro (a la que se hace referencia como el modo de predicción intracuadro a partir de ahora), esta unidad de conmutación 6 introduce la imagen de macro/subbloque 5 en la unidad de predicción 8, mientras que cuando el modo de codificación 7 es el modo en el que se codifica la imagen de macro/subbloque mediante el uso de una predicción intercuadro (a la que se hace referencia como el modo de predicción intercuadro a partir de ahora), la unidad de conmutación introduce la imagen de macro/subbloque 5 en la unidad de predicción compensada por movimiento 9.
[0033] La unidad de intrapredicción 8 lleva a cabo una predicción intracuadro en la imagen de macro/subbloque 5 introducida en esta en unidades de un macrobloque que se codificará teniendo un tamaño especificado por el tamaño de macrobloque 4 o en unidades de un subbloque especificado por el modo de codificación 7. La unidad de intrapredicción 8 genera una imagen de predicción 11 mediante el uso de la señal de imagen en el cuadro almacenado en la memoria 28 para la intrapredicción para cada uno de todos los modos de intrapredicción incluidos en los parámetros de predicción 10 notificados a la misma desde la unidad de control de codificación 3.
[0034] En lo sucesivo, se explicarán los detalles de los parámetros de predicción 10. Cuando el modo de codificación 7 es el modo de predicción intracuadro, la unidad de control de codificación 3 especifica un modo de intrapredicción como un parámetro de predicción 10 correspondiente al modo de codificación 7. Como este modo de intrapredicción, por ejemplo, puede haber un modo en el que el macrobloque o subbloque se divide en bloques de 4x4 píxeles, y una imagen de predicción se genera mediante el uso de píxeles en las proximidades de un bloque de unidad de la señal de imagen almacenada en la memoria 28 para la intrapredicción, un modo en el que el macrobloque o subbloque se divide en bloques de 8x8 píxeles, y una imagen de predicción se genera mediante el uso de píxeles en las proximidades de un bloque de unidad de la señal de imagen almacenada en la memoria 28 para la intrapredicción, un modo en el que el macrobloque o subbloque se divide en bloques de 16x16 píxeles, y una imagen de predicción se genera mediante el uso de píxeles en las proximidades de un bloque de unidad de la señal de imagen almacenada en la memoria 28 para la intrapredicción, y un modo en el que una imagen de predicción se genera a partir de una imagen de un interior reducido del macrobloque o subbloque.
[0035] La unidad de predicción compensada por movimiento 9 especifica una imagen de referencia 15 que se utiliza para la generación de una imagen de predicción a partir de los datos sobre uno o más cuadros de imágenes de referencia almacenadas en la memoria de cuadro de predicción compensada por movimiento 14, y lleva a cabo una predicción compensada por movimiento mediante el uso de esta imagen de referencia 15 y la imagen de macro/subbloque 5 según el modo de codificación 7 notificado a esta desde la unidad de control de codificación 3 para generar parámetros de predicción 18 y una imagen de predicción 17.
[0036] En lo sucesivo, se explicarán los detalles de los parámetros de predicción 18. Cuando el modo de codificación 7 es el modo de predicción intercuadro, la unidad de predicción 9 compensada por movimiento determina los vectores de movimiento y el número de identificación (índice de imagen de referencia) o similar de la imagen de referencia indicada por cada uno de los vectores de movimiento como los parámetros de predicción 18 correspondientes al modo de codificación 7. Los detalles de un procedimiento de generación para generar parámetros de predicción 18 se mencionarán más adelante.
[0037] La unidad de sustracción 12 sustrae una de la imagen de predicción 11 y la imagen de predicción 17 de la imagen de macro/subbloque 5 para adquirir una señal de diferencia de predicción 13. La señal de diferencia de predicción 13 se genera para cada una de todas las imágenes de predicción 11 que la unidad de intrapredicción 8 genera según todos los modos de intrapredicción especificados por los parámetros de predicción 10.
[0038] La señal de diferencia de predicción 13 que se genera según cada uno de todos los modos de intrapredicción especificados por los parámetros de predicción 10 es evaluada por la unidad de control de codificación 3, y se determinan los parámetros de predicción óptimos 10a que incluyen un modo de intrapredicción óptimo. Como un procedimiento para evaluar la señal de diferencia de predicción, la unidad de control de codificación utiliza, por ejemplo, un procedimiento para calcular un costo de codificación J2, que se mencionará a continuación, mediante el uso de los datos comprimidos 21 generados mediante la transformación y cuantización de la señal de diferencia de predicción 13. La unidad de control de codificación selecciona entonces el modo de intrapredicción que minimiza el costo de codificación J2.
[0039] La unidad de control de codificación 3 evalúa la señal de diferencia de predicción 13 que se genera para cada uno de todos los modos incluidos en los modos de codificación 7 ya sea por la unidad de intrapredicción 8 o la unidad de predicción compensada por movimiento 9, y determina un modo de codificación óptimo 7a que proporciona un grado óptimo de eficiencia de codificación de entre los modos de codificación 7 sobre la base del resultado de la evaluación. La unidad de control de codificación 3 determina además los parámetros de predicción óptimos 10a o 18a y los parámetros de compresión óptimos 20a correspondientes al modo de codificación óptimo 7a a partir de los parámetros de predicción 10 o 18 y los parámetros de compresión 20. Más adelante se mencionará un procedimiento para determinar los parámetros de predicción óptimos y un procedimiento para determinar los parámetros de compresión óptimos. Tal como se mencionó anteriormente, en el caso del modo de predicción intracuadro, el modo de intrapredicción se incluye en los parámetros de predicción 10 y en los parámetros de predicción óptimos 10a. Por el contrario, en el caso del modo de predicción intercuadro, los vectores de movimiento, el número de identificación (índice de imagen de referencia) de la imagen de referencia indicada por cada uno de los vectores de movimiento, etc. se incluyen en los parámetros de predicción 18 y en los parámetros de predicción óptimos 18a. Además, un tamaño de bloque de transformación, un tamaño de etapa de cuantización, etc. se incluyen en los parámetros de compresión 20 y en los parámetros de compresión óptimos 20a.
[0040] Como resultado de llevar a cabo este procedimiento de determinación, la unidad de control de codificación 3 emite el modo de codificación óptimo 7a, los parámetros de predicción óptimos 10a o 18a, y los parámetros de compresión óptimos 20a para el macrobloque o subbloque que se codificará a la unidad de codificación de longitud variable 23. La unidad de control de codificación 3 también emite los parámetros de compresión óptimos 20a de los parámetros de compresión 20 a la unidad de transformación/cuantización 19 y a la unidad de cuantización inversa/transformación inversa 22.
[0041] La unidad de transformación/cuantización 19 selecciona la señal de diferencia de predicción 13 (referida como la señal diferencial de predicción óptima 13a a partir de aquí) que corresponde a la imagen de predicción 11 o 17 generada sobre la base del modo de codificación óptimo 7a y los parámetros de predicción óptimos 10a o 18a que la unidad de control de codificación 3 ha determinado de entre la pluralidad de señales de diferencia de predicción 13 que se generan respectivamente para todos los modos incluidos en los modos de codificación 7, lleva a cabo un procedimiento de transformación, tal como una DCT, en esta señal diferencial de predicción óptima 13a sobre la base del tamaño del bloque de transformación en los parámetros de compresión óptimos 20a determinados por la unidad de control de codificación 3 para calcular los coeficientes de transformada y también cuantifica estos coeficientes de transformada sobre la base del tamaño de la etapa de cuantización en los parámetros de compresión óptimos 20a notificados a la misma desde la unidad de control de codificación 3, y a continuación emite los datos comprimidos 21 que son los coeficientes de transformada cuantificados de este modo a la unidad de cuantización inversa/transformación inversa 22 y a la unidad de codificación de longitud variable 23.
[0042] La unidad de cuantización inversa/transformación inversa 22 cuantifica de forma inversa los datos comprimidos 21 introducidos en esta desde la unidad de transformación/cuantización 19 mediante el uso de los parámetros de compresión óptimos 20a y a continuación lleva a cabo un procedimiento de transformación inversa, tal como una DCT inversa, para generar una señal de diferencia de predicción decodificada local 24 de la señal de diferencia de predicción 13a, y emite esta señal de diferencia de predicción decodificada local 24 a la unidad de adición 25.
[0043] La unidad de adición 25 agrega la señal de diferencia de predicción decodificada local 24 y la imagen de predicción 11 o 17 para generar una señal de imagen decodificada local 26, y emite esta señal de imagen decodificada local 26 a la unidad de filtro de bucle 27 mientras almacena la señal de imagen decodificada local en la memoria 28 para la intrapredicción. Esta señal de imagen decodificada local 26 sirve como una señal de imagen para la predicción intracuadro.
[0044] La unidad de filtro de bucle 27 lleva a cabo un procedimiento de filtrado predeterminado en la señal de imagen decodificada local 26 introducida en esta desde la unidad de adición 25, y almacena la imagen decodificada local 29 en la que la unidad de filtro de bucle ha llevado a cabo el procedimiento de filtrado en la memoria de cuadro de predicción compensada por movimiento 14. Esta imagen decodificada local 29 sirve como una imagen de referencia 15 para la predicción compensada por movimiento. El procedimiento de filtrado por la unidad de filtro de bucle 27 puede llevarse a cabo en unidades de un macrobloque de la señal de imagen decodificada local 26 introducida en la unidad de filtro de bucle, o puede llevarse a cabo en una trama de macrobloques después de que la señal de imagen decodificada local 26 correspondiente a la trama de macrobloques se introduzca en la unidad de filtro de bucle.
[0045] La unidad de codificación de longitud variable 23 codifica por entropía los datos comprimidos 21 emitidos a la misma desde la unidad de transformación/cuantización 19, el modo de codificación óptimo 7a emitido a la misma desde la unidad de control de codificación 3, los parámetros de predicción óptimos 10a o 18a, y los parámetros de compresión óptimos 20a para generar un flujo de bits 30 que muestra los resultados de esas codificaciones. Los parámetros de predicción óptimos 10a o 18a y los parámetros de compresión óptimos 20a se codifican en unidades de un elemento según el modo de codificación indicado por el modo de codificación óptimo 7a.
[0046] Como se mencionó anteriormente, en el dispositivo de codificación de imagen en movimiento según esta Realización 1, la unidad de predicción compensada por movimiento 9 y la unidad de transformación/cuantización 19 operan en cooperación con la unidad de control de codificación 3 para determinar el modo de codificación, los parámetros de predicción y los parámetros de compresión que proporcionan un grado óptimo de eficiencia de codificación (es decir, el modo de codificación óptimo 7a, los parámetros de predicción óptimos 10a o 18a y los parámetros de compresión óptimos 20a).
[0047] En lo sucesivo, el procedimiento de determinación, que se lleva a cabo por la unidad de control de codificación 3, para determinar el modo de codificación que proporciona un grado óptimo de eficiencia de codificación, los parámetros de predicción y los parámetros de compresión se explicarán en el orden de 1. los parámetros de predicción, 2. los parámetros de compresión y 3. el modo de codificación.
1. Procedimiento para determinar los parámetros de predicción
[0048] En lo sucesivo, se explicará un procedimiento para cuando el modo de codificación 7 es el modo de predicción intercuadro, determinar los parámetros de predicción 18 que incluyen vectores de movimiento relacionados
con la predicción intercuadro, y el número de identificación (índice de imagen de referencia) o similar de la imagen de referencia indicada por cada uno de los vectores de movimiento.
[0049] La unidad de predicción compensada por movimiento 9 determina los parámetros de predicción 18 para cada uno de todos los modos de codificación 7 (por ejemplo, el conjunto de modos de codificación que se muestran en la Fig. 2A o 2B) que se notifican desde la unidad de control de codificación 3 a la unidad de predicción de compensación de movimiento 9, en cooperación con la unidad de control de codificación 3. En lo sucesivo, se explicarán los detalles del procedimiento.
[0050] La Fig. 3 es un diagrama de bloques que muestra la estructura interna de la unidad de predicción compensada por movimiento 9. La unidad de predicción compensada por movimiento 9 que se muestra en la Fig. 3 incluye una unidad de división de región de compensación de movimiento 40, una unidad de detección de movimiento 42 y una unidad de generación de imágenes interpoladas 43. Además, los datos de entrada introducidos en la unidad de predicción compensada por movimiento incluyen el modo de codificación 7 introducido en esta desde la unidad de control de codificación 3, la imagen de macro/subbloque 5 introducida en esta desde la unidad de conmutación 6, y la imagen de referencia 15 introducida en esta desde la memoria de cuadro de predicción compensada por movimiento 14.
[0051] La unidad de división de región de compensación de movimiento 40 divide la imagen de macro/subbloque 5 introducida desde la unidad de conmutación 6 en imágenes de bloques, cada uno de las cuales es una unidad para compensación de movimiento según el modo de codificación 7 notificado a esta desde la unidad de control de codificación 3, y emite esta imagen de bloque de región de compensación de movimiento 41 a la unidad de detección de movimiento 42.
[0052] La unidad de generación de imágenes interpoladas 43 especifica la imagen de referencia 15 que se utiliza para la generación de una imagen de predicción a partir de los datos sobre el uno o más cuadros de imágenes de referencia almacenados en la memoria de cuadro de predicción compensada por movimiento 14, y la unidad de detección de movimiento 42 detecta un vector de movimiento 44 en un intervalo de búsqueda de movimiento predeterminado en la imagen de referencia 15 especificada por la unidad de generación de imágenes interpoladas. La unidad de detección de movimiento lleva a cabo la detección del vector de movimiento mediante el uso de un vector de movimiento que tiene precisión de muestra virtual, como en el caso de los estándares MPEG-4 AVC o similares. Este procedimiento de detección incluye las etapas de, para la información de píxeles (denominados píxeles enteros) que tiene la imagen de referencia, generar muestras virtuales (píxeles) entre píxeles enteros mediante la implementación de una operación aritmética de interpolación en los píxeles enteros y el uso de las muestras virtuales como una imagen de predicción. En el caso de los estándares MPEG-4 AVC, según el procedimiento de detección, se pueden generar y utilizar muestras virtuales con una precisión de 1/8 píxeles. En el caso de los estándares MPEG-4 AVC, las muestras virtuales que tienen una precisión de 1/2 píxeles se generan mediante la implementación de una operación aritmética de interpolación con un filtro de 6 muestras utilizando seis píxeles enteros que discurren en una dirección vertical u horizontal. Las muestras virtuales que tienen una precisión de 1/4 píxeles se generan mediante la implementación de una operación aritmética de interpolación utilizando un filtro para adquirir un valor medio de 1/2 píxeles adyacentes o píxeles enteros.
[0053] También en la unidad de predicción compensada por movimiento 9 según esta Realización 1, la unidad de generación de imágenes interpoladas 43 genera una imagen de predicción 45 de píxeles virtuales según la precisión del vector de movimiento 44 notificado a esta desde la unidad de detección de movimiento 42. A continuación, se mostrará un ejemplo de un procedimiento de detección para detectar un vector de movimiento que tiene precisión de píxeles virtuales.
Procedimiento de detección de vector de movimiento I
[0054] La unidad de generación de imágenes interpoladas 43 genera una imagen de predicción 45 para el vector de movimiento 44 que tiene precisión de píxeles enteros en el intervalo de búsqueda de movimiento predeterminado de la imagen de bloque de región de compensación de movimiento 41. La imagen de predicción 45 (imagen de predicción 17) generada con una precisión de píxeles enteros se emite a la unidad de sustracción 12 y se sustrae de la imagen de bloque de región de compensación de movimiento 41 (imagen de macro/subbloque 5) por la unidad de sustracción 12, de modo que el resultado de la sustracción se define como una señal de diferencia de predicción 13. La unidad de control de codificación 3 evalúa un grado de eficiencia de predicción para la señal de diferencia de predicción 13 y para el vector de movimiento 44 (parámetro de predicción 18) que tiene precisión de píxeles enteros. En la evaluación del grado de eficiencia de predicción, se calcula un costo de predicción J1 según, por ejemplo, la siguiente ecuación (1), y se determina el vector de movimiento 44 que tiene precisión de píxeles enteros que minimiza el costo de predicción J1 en el intervalo de búsqueda de movimiento predeterminado.
J i=D i+Á R i (1)
[0055] Se asume que D1 y R1 se utilizan como valores evaluados. D1 es la suma de valores absolutos (SAD)
en el macrobloque o subbloque de la señal de diferencia de predicción, Ri es una cantidad de código estimada del vector de movimiento y el número de identificación de la imagen de referencia indicada por este vector de movimiento, y A es un número positivo.
[0056] Al determinar el valor evaluado Ri, la cantidad de código del vector de movimiento se predice mediante el uso del valor de un vector de movimiento adyacente como el valor del vector de movimiento en cada modo mostrado en la Fig. 2A o 2B, y el valor de diferencia de predicción se codifica por entropía sobre la base de una distribución de probabilidad. Como alternativa, el valor evaluado se determina realizando una estimación de una cantidad de código correspondiente al valor evaluado.
[0057] La Fig. 4 es una vista que explica un procedimiento de determinación para determinar un valor predicho del vector de movimiento (denominado vector predicho a partir de ahora) en cada modo de codificación 7 que se muestra en la Fig. 2B. Con referencia a la Fig. 4, para un bloque rectangular en mb_modo0, sub_mb_modo1 o similar, un vector predicho PMV de este bloque rectangular se calcula según la siguiente ecuación (2) mediante el uso de vectores de movimiento MVa, MVb y MVc ya codificados de bloques ubicados en un lado izquierdo (posición A), un lado superior (posición B) y un lado superior derecho (posición C) del bloque rectangular. La mediana () corresponde a la mediana de un procedimiento de filtro y es una función de salida de la mediana de los vectores de movimiento MVa, MVb y MVc.
PMV=mediana(MVa,MVb,MVc) (2)
[0058] Por el contrario, en el caso de bloques en forma de L que tienen una forma de letra L mb_modo1, sub_mb_modo2, mb_modo2, sub_mb_modo3, mb_modo3, sub_mb_modo4, mb_modo4 y sub_mb_modo5, las posiciones A, B y C en las que se opera la mediana se cambian según la forma de letra L para hacer posible aplicar el mismo procedimiento que el realizado en bloques rectangulares a cada bloque en forma de L. Como resultado, un valor predicho del vector de movimiento se puede calcular según la forma de cada región de asignación de vector de movimiento sin cambiar el procedimiento de cálculo de un vector predicho PMV, y el costo del valor evaluado R1 se puede reducir a uno pequeño. Procedimiento de detección de vector de movimiento II
[0059] La unidad de generación de imágenes interpoladas 43 genera una imagen de predicción 45 para uno o más vectores de movimiento 44 que tienen una precisión de 1/2 píxeles ubicada cerca del vector de movimiento que tiene una precisión de píxeles enteros que se determina según el «procedimiento de detección de vector de movimiento I» mencionado anteriormente. Después de eso, de la misma manera que se lleva a cabo el «procedimiento de detección de vector de movimiento I» mencionado anteriormente, la imagen de predicción 45 (imagen de predicción 17) generada con una precisión de 1/2 píxeles se sustrae de la imagen de bloque de región de compensación de movimiento 41 (imagen de macro/subbloque 5) por la unidad de sustracción 12, de modo que se adquiere una señal de diferencia de predicción 13. A continuación, la unidad de control de codificación 3 evalúa un grado de eficiencia de predicción para esta señal de diferencia de predicción 13 y para el vector de movimiento 44 (parámetro de predicción 18) que tiene una precisión de 1/2 píxeles, y determina un vector de movimiento 44 que tiene una precisión de 1/2 píxeles que minimiza el costo de predicción J1 del uno o más vectores de movimiento que tienen una precisión de 1/2 píxeles ubicada en las proximidades del vector de movimiento que tiene una precisión de píxeles enteros.
Procedimiento de detección de vector de movimiento III
[0060] También para los vectores de movimiento que tienen una precisión de 1/4 píxeles, la unidad de control de codificación 3 y la unidad de predicción compensada por movimiento 9 determinan un vector de movimiento 44 que tiene una precisión de 1/4 píxeles que minimiza el costo de predicción J1 de uno o más vectores de movimiento que tienen una precisión de 1/4 píxeles ubicada cerca del vector de movimiento que tiene una precisión de 1/2 píxeles que se determina según el «procedimiento de detección de vector de movimiento II» mencionado anteriormente.
Procedimiento de detección de vector de movimiento IV
[0061] Después de eso, la unidad de control de codificación 3 y la unidad de predicción compensada por movimiento 9 detectan de manera similar un vector de movimiento que tiene una precisión de píxeles virtuales hasta que el vector de movimiento detectado tiene un grado predeterminado de precisión.
[0062] Aunque en esta realización, se muestra el ejemplo en el que la unidad de control de codificación y la unidad de predicción compensada por movimiento detectan un vector de movimiento que tiene precisión de píxeles virtuales hasta que el vector de movimiento detectado tiene un grado predeterminado de precisión, la detección de un vector de movimiento que tiene precisión de píxeles virtuales se puede abortar cuando, por ejemplo, se predetermina un umbral para el costo de predicción y el costo de predicción J1 se vuelve más pequeño que el umbral predeterminado antes de que el vector de movimiento detectado tenga un grado predeterminado de precisión.
[0063] Se puede hacer que el vector de movimiento se refiera a un píxel ubicado fuera del cuadro definido por el tamaño del cuadro de referencia. En este caso, es necesario generar píxeles ubicados fuera del cuadro. Como un
procedimiento para generar píxeles ubicados fuera del cuadro, existe un procedimiento para llenar una región exterior con píxeles que discurren en un borde de pantalla del cuadro.
[0064] Cuando el tamaño de cuadro de cada cuadro de la señal de vídeo introducida 1 no es un múltiplo integral del tamaño de macrobloque y se introduce un cuadro extendido en lugar de cada cuadro de la señal de vídeo introducida 1, el tamaño que se extiende a un múltiplo integral del tamaño de macrobloque (el tamaño del cuadro extendido) se define como el tamaño de cuadro del cuadro de referencia. Por el contrario, cuando no se hace referencia a la porción decodificada local de la región extendida, sino que solo se hace referencia a la porción decodificada local del cuadro original como píxeles en el cuadro, el tamaño de cuadro de la señal de vídeo introducida original se define como el tamaño de cuadro del cuadro de referencia.
[0065] Para la imagen de bloque de región de compensación de movimiento 41 de cada una de una pluralidad de bloques en los que se divide la imagen de macro/subbloque 5 y que es una unidad para la compensación de movimiento indicada por el modo de codificación 7, la unidad de predicción compensada por movimiento 9 emite tanto el vector de movimiento preciso de píxeles virtuales que tiene un grado predeterminado de precisión que se determina para la imagen de bloque de región de compensación de movimiento, como el número de identificación de la imagen de referencia indicada por el vector de movimiento como los parámetros de predicción 18. La unidad de predicción 9 compensada por movimiento también emite la imagen de predicción 45 (imagen de predicción 17) generada usando los parámetros de predicción 18 a la unidad de sustracción 12, y la imagen de predicción se sustrae de la imagen de macro/subbloque 5 por la unidad de sustracción 12, de modo que se adquiere una señal de diferencia de predicción 13. La señal de diferencia de predicción 13 emitida desde la unidad de sustracción 12 se emite a la unidad de transformación/cuantización 19.
2. Procedimiento de determinación para determinar los parámetros de compresión
[0066] En lo sucesivo, se explicará el procedimiento para determinar un parámetro de compresión 20 (tamaño de bloque de transformación) que se utiliza al llevar a cabo un procedimiento de transformación y cuantización en la señal de diferencia de predicción 13 generada sobre la base de los parámetros de predicción 18 determinados para cada modo de codificación 7 según el anteriormente mencionado «1. Procedimiento de determinación para determinar los parámetros de predicción».
[0067] La Fig. 5 es una vista que muestra un ejemplo de adaptación del tamaño del bloque de transformación según un modo de codificación 7 que se muestra en la Fig.2B. Con referencia a la Fig. 5, se utiliza un bloque de 32x32 píxeles como ejemplo de un bloque de MxL píxeles. Cuando el modo indicado por el modo de codificación 7 es uno de mb_modo0 a mb_modo6, ya sea el tamaño de 16x16 píxeles o el tamaño de 8x8 píxeles es seleccionable adaptativamente como el tamaño del bloque de transformación. Cuando el modo de codificación 7 indica mb_modo7, ya sea el tamaño de 8x8 píxeles o el tamaño de 4x4 píxeles es seleccionable adaptativamente como el tamaño del bloque de transformación para cada uno de los 16x16 subbloques de píxeles en los que se divide cada macrobloque. El conjunto de tamaños de bloque de transformación seleccionables para cada modo de codificación se puede definir entre tamaños de bloques rectangulares arbitrarios, cada uno de los cuales es igual o menor que el tamaño de subbloques iguales en los que se divide un macrobloque según el modo de codificación.
[0068] La Fig. 6 es una vista que muestra otro ejemplo de la adaptación del tamaño del bloque de transformación según un modo de codificación 7 que se muestra en la Fig. 2B. En el ejemplo de la Fig. 6, cuando el modo indicado por el modo de codificación 7 es el mb_modo0, mb_modo5, o mb_modo6 antes mencionado, además del tamaño de 16x16 píxeles y el tamaño de 8x8 píxeles, el tamaño del bloque de transformación según la forma de cada subbloque que es una unidad para la compensación de movimiento es seleccionable como un tamaño de bloque de transformación seleccionable. En el caso de mb_modo0, el tamaño del bloque de transformación se puede seleccionar adaptativamente entre el tamaño de 16x16 píxeles, el tamaño de 8x8 píxeles y el tamaño de 32x32 píxeles. En el caso de mb_modo5, el tamaño del bloque de transformación se puede seleccionar adaptativamente entre el tamaño de 16x16 píxeles, el tamaño de 8x8 píxeles y el tamaño de 16x32 píxeles. En el caso de mb_modo6, el tamaño del bloque de transformación se puede seleccionar adaptativamente entre el tamaño de 16x16 píxeles, el tamaño de 8x8 píxeles y el tamaño de 32x16 píxeles. Además, aunque no se ilustra, en el caso de mb_modo7, el tamaño del bloque de transformación se puede seleccionar de forma adaptativa de entre el tamaño de 16x16 píxeles, el tamaño de 8x8 píxeles y el tamaño de 16x32 píxeles. En el caso de uno de mb_modo1 a mb_modo4, la adaptación puede llevarse a cabo de tal manera que el tamaño del bloque de transformación se seleccione del tamaño de 16x16 píxeles y el tamaño de 8x8 píxeles para una región que no es un rectángulo, mientras que el tamaño del bloque de transformación se selecciona del tamaño de 8x8 píxeles y el tamaño de 4x4 píxeles para una región que es un rectángulo.
[0069] La unidad de control de codificación 3 define el conjunto de tamaños de bloque de transformación según el modo de codificación 7 ilustrado en las Figs. 5 y 6 como un parámetro de compresión 20. Aunque en los ejemplos mostrados en las Figs. 5 y 6, el conjunto de tamaños de bloque de transformación seleccionables se determina de antemano según el modo de codificación 7 de cada macrobloque, y un tamaño de bloque de transformación se puede seleccionar adaptativamente para cada macrobloque o subbloque, el conjunto de tamaños de bloque de
transformación seleccionables se puede determinar alternativamente de antemano según el modo de codificación 7 (uno de sub_mb_modo1 a sub_mb_modo8 que se muestra en la Fig. 2B) de cada uno de los subbloques en los que cada macrobloque se divide de manera similar, y un tamaño de bloque de transformación se puede seleccionar adaptativamente para cada uno de los subbloques o cada uno de los bloques en los que cada subbloque se divide adicionalmente. De manera similar, cuando se utiliza un modo de codificación 7 que se muestra en la Fig. 2A, la unidad de control de codificación 3 puede determinar el conjunto de tamaños de bloque de transformación según el modo de codificación 7 de antemano, y puede seleccionar adaptativamente un tamaño de bloque de transformación del conjunto.
[0070] La unidad de transformación/cuantización 19 determina un tamaño óptimo de bloque de transformación a partir de los tamaños de bloque de transformación en unidades de un macrobloque que tiene un tamaño especificado por el tamaño de macrobloque 4 o en unidades de uno de los subbloques en los que cada macrobloque se divide adicionalmente según el modo de codificación 7, en cooperación con la unidad de control de codificación 3. En lo sucesivo, se explicarán los detalles de un procedimiento para determinar un tamaño del bloque de transformación óptimo.
[0071] La Fig. 7 es un diagrama de bloques que muestra la estructura interna de la unidad de transformación/cuantización 19. La unidad de transformación/cuantización 19 que se muestra en la Fig. 7 incluye una unidad de división de tamaño de bloque de transformación 50, una unidad de transformación 52 y una unidad de cuantización 54. Además, los datos de entrada introducidos en la unidad de transformación/cuantización incluyen los parámetros de compresión 20 (el tamaño del bloque de transformación, el tamaño de etapa de cuantización, etc.) introducidos en esta desde la unidad de control de codificación 3 y la señal de diferencia de predicción 13 introducida en esta desde la unidad de control de codificación 3.
[0072] La unidad de división de tamaño de bloque de transformación 50 convierte la señal de diferencia de predicción 13 de cada macrobloque o subbloque que es el objetivo para la determinación del tamaño de bloque de transformación en bloques según el tamaño de bloque de transformación en los parámetros de compresión 20, y emite cada uno de los bloques a la unidad de transformación 52 como un bloque objetivo de transformación 51. Cuando se selecciona y especifica una pluralidad de tamaños de bloque de transformación para un macrobloque o subbloque mediante los parámetros de compresión 20, la pluralidad de tamaños de bloque de transformación de bloques objetivo de transformación 51 se emiten secuencialmente a la unidad de transformación 52.
[0073] La unidad de transformación 52 lleva a cabo una DCT, una transformación de número entero en la que los coeficientes de transformación de una DCT se aproximan por números enteros, y un procedimiento de transformación según un procedimiento de transformación, tal como la transformada de Hadamard, en el bloque de objeto de transformación 51 introducido en esta para generar coeficientes de transformada 53, y emite los coeficientes de transformada 53 generados de este modo a la unidad de cuantización 54.
[0074] La unidad de cuantización 54 cuantifica los coeficientes de transformada 53 introducidos en la misma según el tamaño de etapa de cuantización en los parámetros de compresión 20 notificados a la misma desde la unidad de control de codificación 3, y emite datos comprimidos 21 que son los coeficientes de transformada cuantificados a la unidad de cuantización inversa/transformación inversa 22 y a la unidad de control de codificación 3. Cuando se selecciona y especifica una pluralidad de tamaños de bloque de transformación para un macrobloque o subbloque mediante los parámetros de compresión 20, la unidad de transformación 52 y la unidad de cuantización 54 llevan a cabo el procedimiento de transformación y cuantización mencionado anteriormente en todos los tamaños de bloque de transformación de bloques objetivo de transformación, y emite los datos comprimidos 21 asociados con cada uno de todos los tamaños de bloque de transformación.
[0075] Los datos comprimidos 21 emitidos desde la unidad de cuantización 54 se introducen en la unidad de control de codificación 3, y se utilizan para la evaluación de un grado de eficiencia de codificación para el tamaño de bloque de transformación en los parámetros de compresión 20. La unidad de control de codificación 3 utiliza los datos comprimidos 21 adquiridos para cada uno de todos los tamaños de bloque de transformación seleccionables en cada modo de codificación incluido en los modos de codificación 7 para calcular un costo de codificación J2 según, por ejemplo, la siguiente ecuación (3), y para seleccionar el tamaño de bloque de transformación que minimiza el costo de codificación J2 de entre los tamaños de bloque de transformación seleccionables.
J2=D2+AR2 (3)
[0076] Se asume que D2 y R2 se utilizan como valores evaluados. Como D2, se puede utilizar la suma de distorsión de diferencias cuadradas o similares entre la señal de imagen decodificada local 26, que se adquiere mediante la entrada de los datos comprimidos 21 adquiridos para el tamaño de bloque de transformación a la unidad de cuantización inversa/transformación inversa 22, y la adición de la imagen de predicción 17 a una señal de diferencia de predicción decodificada local 24 que se adquiere mediante la realización de un procedimiento de transformación inversa y cuantización inversa en los datos comprimidos 21, y la imagen de macro/subbloque 5. Como R2, se utiliza la cantidad de código (o cantidad de código estimada) adquirida mediante la codificación real de los datos comprimidos
21 adquiridos para el tamaño de bloque de transformación, y el modo de codificación 7 y los parámetros de predicción 10 o 18 asociados con los datos comprimidos 21 por medio de la unidad de codificación de longitud variable 23.
[0077] Después de determinar el modo de codificación óptimo 7a según «3. Procedimiento de determinación para determinar el modo de codificación» que se mencionará a continuación, la unidad de control de codificación 3 selecciona el tamaño de bloque de transformación correspondiente al modo de codificación óptimo determinado 7a e incluye el tamaño de bloque de transformación en los parámetros de compresión óptimos 20a, y a continuación emite los parámetros de compresión óptimos a la unidad de codificación de longitud variable 23. Después de codificar por entropía estos parámetros de compresión óptimos 20a, la unidad de codificación de longitud variable 23 multiplexa los parámetros de compresión óptimos codificados por entropía de este modo en el flujo de bits 30.
[0078] Debido a que el tamaño del bloque de transformación se selecciona de entre el conjunto de tamaños de bloque de transformación (ilustrados en las Figs. 5 y 6) que se definen de antemano según el modo de codificación óptimo 7a del macrobloque o subbloque, lo que es necesario es simplemente asignar información de identificación, tal como una ID, a cada tamaño de bloque de transformación incluido en cada conjunto de tamaños de bloque de transformación, codificar por entropía la información de identificación como información sobre el tamaño de bloque de transformación y multiplexar la información de identificación en el flujo de bits 30. En este caso, la información de identificación de cada conjunto de tamaños de bloque de transformación se configura de antemano en el dispositivo de decodificación. Sin embargo, debido a que el dispositivo de decodificación puede determinar el tamaño de bloque de transformación automáticamente a partir del conjunto de tamaños de bloque de transformación cuando solo se incluye un tamaño de bloque de transformación en el conjunto de tamaños de bloque de transformación, el dispositivo de codificación no tiene que multiplexar la información de identificación del tamaño de bloque de transformación en el flujo de bits 30.
3. Procedimiento de determinación para determinar el modo de codificación
[0079] Después de que los parámetros de predicción 10 o 18 y los parámetros de compresión 20 para cada uno de todos los modos de codificación 7 especificados por la unidad de control de codificación 3 se determinen según los mencionados anteriormente «1. Procedimiento de determinación para determinar los parámetros de predicción «, y «2. Procedimiento de determinación para determinar los parámetros de compresión», la unidad de control de codificación 3 utiliza los datos comprimidos 21 que se adquieren mediante la transformación y cuantización adicional de la señal de diferencia de predicción 13 que se adquiere mediante el uso de cada uno de los modos de codificación 7, y los parámetros de predicción 10 o 18 y los parámetros de compresión 20 en ese modo de codificación para determinar el modo de codificación 7 que reduce el costo de codificación J2 a un mínimo según la ecuación mencionada anteriormente (3), y selecciona el modo de codificación 7 como el modo de codificación óptimo 7a del macrobloque que se está procesando actualmente.
[0080] Como alternativa, la unidad de control de codificación puede determinar el modo de codificación óptimo 7a de entre todos los modos de codificación que incluyen un modo de salto como un modo del macrobloque o subbloque además de los modos de codificación mostrados en la Fig. 2A y 2B. El modo de salto es el modo en el que una imagen de predicción en la que se lleva a cabo la compensación de movimiento mediante el uso del vector de movimiento de un macrobloque o subbloque adyacente se define como la señal de imagen decodificada local en el dispositivo de codificación. Debido a que no es necesario calcular los parámetros de predicción que no sean los modos de codificación, y los parámetros de compresión para multiplexarlos en el flujo de bits, la imagen introducida puede codificarse mientras se suprime la cantidad de código. El dispositivo de decodificación emite la imagen de predicción en la cual se lleva a cabo la compensación de movimiento mediante el uso del vector de movimiento de un macrobloque o subbloque adyacente según el mismo procedimiento que el llevado a cabo por el dispositivo de codificación como la señal de imagen decodificada.
[0081] Cuando el tamaño de cuadro de cada cuadro de la señal de vídeo introducida 1 no es un múltiplo integral del tamaño de macrobloque y se introduce un cuadro extendido en lugar de cada cuadro de la señal de vídeo introducida 1, se puede llevar a cabo una operación de control de seleccionar solo el modo de salto para un macrobloque o subbloque que incluye una región extendida, y se puede determinar un modo de codificación de tal manera que se pueda suprimir la cantidad de código gastada en la región extendida.
[0082] La unidad de control de codificación 3 emite el modo de codificación óptimo 7a proporcionando el grado óptimo de eficiencia de codificación que se determina según los anteriormente mencionados «1. Procedimiento de determinación para determinar los parámetros de predicción», «2. Procedimiento de determinación para determinar los parámetros de compresión», y «3. Procedimiento de determinación para determinar el modo de codificación» a la unidad de codificación de longitud variable 23, mientras se seleccionan los parámetros de predicción 10 o 18 correspondientes al modo de codificación óptimo 7a como los parámetros de predicción óptimos 10a o 18a y, de manera similar, seleccionar los parámetros de compresión 20 correspondientes al modo de codificación óptimo 7a como los parámetros de compresión óptimos 20a, y a continuación emitir estos parámetros de predicción y compresión óptimos a la unidad de codificación de longitud variable 23. La unidad de codificación de longitud variable 23 codifica por entropía el modo de codificación óptimo 7a, los parámetros de predicción óptimos 10a o 18a, y los parámetros de
compresión óptimos 20a, y a continuación los multiplexa en el flujo de bits 30.
[0083] Además, la señal diferencial de predicción óptima 13a adquirida a partir de la imagen de predicción 11 o 17 en función del modo de codificación óptimo 7a, los parámetros de predicción óptimos 10a o 18a, y el parámetro de compresión óptimo 20a que se determinan como se indicó anteriormente se transforma y cuantifica en datos comprimidos 21 mediante la unidad de transformación/cuantización 19, como se mencionó anteriormente, y estos datos comprimidos 21 se codifican por entropía mediante la unidad de codificación de longitud variable 23 y se multiplexan en el flujo de bits 30. Además, estos datos comprimidos 21 se hacen pasar a través de la unidad de cuantización inversa/transformación inversa 22 y la unidad de adición 25, y a continuación se convierten en una señal de imagen decodificada local 26 y se introducen en la unidad de filtro de bucle 27.
[0084] A continuación, se explicará el dispositivo de decodificación de imagen en movimiento según esta Realización 1. La Fig. 8 es un diagrama de bloques que muestra la estructura de un dispositivo de decodificación de imagen en movimiento según la Realización 1 de la presente invención. El dispositivo de decodificación de imagen en movimiento que se muestra en la Fig. 8 incluye una unidad de decodificación de longitud variable 61 para decodificar por entropía el modo de codificación óptimo 62 multiplexado en el flujo de bits 60 en unidades de un macrobloque mientras se decodifican por entropía los parámetros de predicción óptimos 63, los datos comprimidos 64 y los parámetros de compresión óptimos 65 del flujo de bits 60 en unidades de un macrobloque o subbloque dividido según el modo de codificación óptimo decodificado 62, una unidad de intrapredicción 69 para, cuando se introducen los parámetros de predicción óptimos 63, generar una imagen de predicción 71 mediante el uso del modo de intrapredicción incluido en los parámetros de predicción óptimos 63, y una imagen decodificada 74a almacenada en una memoria 77 para la intrapredicción, una unidad de predicción compensada por movimiento 70 para, cuando se introducen los parámetros de predicción óptimos 63, llevar a cabo una predicción compensada por movimiento mediante el uso del vector de movimiento incluido en los parámetros de predicción óptimos 63, y la imagen de referencia 76 en una memoria de cuadro de predicción compensada por movimiento 75 que se especifica por el índice de imagen de referencia incluido en los parámetros de predicción óptimos 63 para generar una imagen de predicción 72, una unidad de conmutación 68 para introducir los parámetros de predicción óptimos 63 que la unidad de decodificación de longitud variable 61 ha decodificado ya sea una de la unidad de intrapredicción 69 y la unidad de predicción compensada por movimiento 70 según el modo de codificación óptimo decodificado 62, una unidad de cuantización inversa/transformación inversa 66 para llevar a cabo un procedimiento de cuantización inversa y transformación inversa en los datos comprimidos 64 mediante el uso de los parámetros de compresión óptimos 65 para generar valores decodificados de señal de diferencia de predicción 67, una unidad de adición 73 para agregar la imagen de predicción 71 o 72 emitida desde cualquiera de la unidad de intrapredicción 69 y la unidad de predicción compensada por movimiento 70 a los valores decodificados de señal de diferencia de predicción 67 para generar una imagen decodificada 74, la memoria 77 para intrapredicción para almacenar la imagen decodificada 74, una unidad de filtro de bucle 78 para llevar a cabo el filtrado en la imagen decodificada 74 para generar una imagen reproducida 79, y la memoria de cuadro de predicción compensada por movimiento 75 para almacenar la imagen reproducida 79.
[0085] Cuando el dispositivo de decodificación de imagen en movimiento según esta Realización 1 recibe el flujo de bits 60, la unidad de decodificación de longitud variable 61 lleva a cabo un procedimiento de decodificación por entropía en el flujo de bits 60 para adquirir el tamaño de macrobloque y el tamaño de cuadro en unidades de una secuencia que consiste en uno o más cuadros de imágenes o en unidades de una imagen. En un caso en el que el tamaño de macrobloque se define por un perfil o similar sin ser multiplexado directamente en el flujo de bits, el tamaño de macrobloque se determina sobre la base de la información de identificación del perfil que se decodifica del flujo de bits en unidades de una secuencia. La cantidad de macrobloques incluidos en cada cuadro se determina en función del tamaño de macrobloque decodificado de cada cuadro y el tamaño de cuadro decodificado, y el modo de codificación óptimo 62, los parámetros de predicción óptimos 63, los datos comprimidos 64 (es decir, datos de coeficiente cuantificados y transformados), los parámetros de compresión óptimos 65 (la información de tamaño de bloque de transformación y el tamaño de etapa de cuantización), etc. de cada macrobloque incluido en el cuadro se decodifican. El modo de codificación óptimo 62, los parámetros de predicción óptimos 63, los datos comprimidos 64 y los parámetros de compresión óptimos 65 que son decodificados por el dispositivo de decodificación corresponden al modo de codificación óptimo 7a, los parámetros de predicción óptimos 10a o 18a, los datos comprimidos 21 y los parámetros de compresión óptimos 20a que son codificados por el dispositivo de codificación, respectivamente.
[0086] En este momento, debido a que la información de tamaño de bloque de transformación en los parámetros de compresión óptimos 65 es la información de identificación para identificar el tamaño de bloque de transformación que ha sido seleccionado del conjunto de tamaños de bloque de transformación definidos de antemano para cada macrobloque o subbloque (o sobre una base por macrobloque o por subbloque) según el modo de codificación 7 por el dispositivo de codificación, el dispositivo de decodificación especifica el tamaño de bloque de transformación del macrobloque o subbloque del modo de codificación óptimo 62 y la información de tamaño de bloque de transformación en los parámetros de compresión óptimos 65.
[0087] La unidad de cuantización inversa/transformación inversa 66 lleva a cabo un procedimiento de cuantización inversa y transformación inversa mediante el uso de los datos comprimidos 64 y los parámetros de compresión óptimos 65 que se introducen desde la unidad de decodificación de longitud variable 61 en unidades de
un bloque cuyo tamaño se especifica mediante la información de tamaño de bloque de transformación para calcular los valores decodificados de la señal de diferencia de predicción 67.
[0088] Además, al decodificar el vector de movimiento, la unidad de decodificación de longitud variable 61 se refiere a los vectores de movimiento de bloques periféricos ya decodificados y determina un vector predicho mediante la realización de un procedimiento que se muestra en la Fig. 4 para adquirir un valor decodificado del vector de movimiento mediante la adición de los valores de diferencia de predicción decodificados del flujo de bits 60 al vector predicho. La unidad de decodificación de longitud variable 61 incluye el valor decodificado de este vector de movimiento en los parámetros de predicción óptimos 63, y emite estos parámetros de predicción óptimos a la unidad de conmutación 68.
[0089] La unidad de conmutación 68 es un conmutador para conmutar entre los destinos de entrada de los parámetros de predicción óptimos 63 según el modo de codificación óptimo 62. Cuando el modo de codificación óptimo 62 introducido desde la unidad de decodificación de longitud variable 61 muestra el modo de predicción dentro del cuadro, esta unidad de conmutación 68 emite los parámetros de predicción óptimos 63 (modo de intrapredicción) introducidos de manera similar desde la unidad de decodificación de longitud variable 61 a la unidad de intrapredicción 69, mientras que cuando el modo de codificación óptimo 62 muestra el modo de predicción intercuadro, la unidad de conmutación emite los parámetros de predicción óptimos 63 (los vectores de movimiento, el número de identificación (índice de imagen de referencia) de la imagen de referencia indicada por cada uno de los vectores de movimiento, etc.) a la unidad de predicción compensada por movimiento 70.
[0090] La unidad de intrapredicción 69 se refiere a la imagen decodificada 74a en el cuadro almacenado en la memoria 77 para la intrapredicción (señal de imagen decodificada en el cuadro), y genera y emite una imagen de predicción 71 correspondiente al modo de intrapredicción indicado por los parámetros de predicción óptimos 63.
[0091] Aunque un procedimiento de generación para generar una imagen de predicción 71 que utiliza la unidad de intrapredicción 69 es el mismo que la operación llevada a cabo por la unidad de intrapredicción 8 en el dispositivo de codificación, la unidad de intrapredicción 8 genera una imagen de predicción 11 correspondiente a cada uno de todos los modos de intrapredicción indicados por los modos de codificación 7, mientras que la unidad de intrapredicción 69 difiere de la unidad de intrapredicción 8 en que la unidad de intrapredicción 69 genera solo una imagen de predicción 71 correspondiente al modo de intrapredicción indicado por el modo de codificación óptimo 62.
[0092] La unidad de predicción compensada por movimiento 70 genera una imagen de predicción 72 a partir del uno o más cuadros de imágenes de referencia 76 almacenados en la memoria de cuadro de predicción compensada por movimiento 75 en función del vector de movimiento, el índice de imagen de referencia, etc., que se indican por los parámetros de predicción óptimos introducidos 63, y emite la imagen de predicción 72.
[0093] Un procedimiento de generación para generar una imagen de predicción 72 que se implementa mediante la unidad de predicción compensada por movimiento 70 corresponde a la operación de la unidad de predicción compensada por movimiento 9 en el dispositivo de codificación desde el cual se excluye el procedimiento de búsqueda a través de una pluralidad de imágenes de referencia para vectores de movimiento (correspondiente a las operaciones de la unidad de detección de movimiento 42 y la unidad de generación de imágenes interpoladas 43 que se muestra en la Fig. 3). La unidad de predicción compensada por movimiento lleva a cabo solo el procedimiento de generación de una imagen de predicción 72 según los parámetros de predicción óptimos 63 proporcionados a esta a partir de la unidad de decodificación de longitud variable 61. Cuando el vector de movimiento se refiere a un píxel ubicado fuera del cuadro que se define por el tamaño de cuadro de referencia, la unidad de predicción compensada por movimiento 70 genera una imagen de predicción 72 mediante el uso, por ejemplo, de un procedimiento para rellenar una región de píxeles ubicada fuera del cuadro con píxeles que discurren en un borde de pantalla del cuadro, como el del dispositivo de codificación. El tamaño de cuadro de referencia puede definirse por el tamaño de cuadro decodificado que se extiende de tal manera que sea un múltiplo integral del tamaño de macrobloque decodificado, o puede definirse por el tamaño de cuadro decodificado, y el dispositivo de decodificación determina el tamaño de cuadro de referencia según el mismo procedimiento que el llevado a cabo por el dispositivo de codificación.
[0094] La unidad de adición 73 agrega ya sea una de la imagen de predicción 71 y la imagen de predicción 72 y los valores decodificados de señal de diferencia de predicción 67 emitidos a la misma desde la unidad de cuantización inversa/transformación inversa 66 para generar una imagen decodificada 74.
[0095] Si bien esta imagen decodificada 74 se almacena en la memoria 77 para la intrapredicción con el fin de utilizar la imagen decodificada como una imagen de referencia (imagen decodificada 74a) para la generación de una imagen de intrapredicción para un macrobloque posterior, la imagen decodificada 74 se introduce en la unidad de filtro de bucle 78.
[0096] La unidad de filtro de bucle 78 lleva a cabo la misma operación que la de la unidad de filtro de bucle 27 en el dispositivo de codificación para generar una imagen reproducida 79, y emite esta imagen reproducida al exterior del dispositivo de decodificación de imagen en movimiento. Además, esta imagen reproducida 79 se almacena en la
memoria de cuadro de predicción compensada por movimiento 75 para utilizar la imagen reproducida como una imagen de referencia 76 para la generación posterior de una imagen de predicción. El tamaño de la imagen reproducida adquirida después de decodificar todos los macrobloques en el cuadro es un múltiplo integral del tamaño del macrobloque. Cuando el tamaño de la imagen reproducida es mayor que el tamaño de cuadro decodificado correspondiente al tamaño de cuadro de cada cuadro de la señal de vídeo introducida en el dispositivo de codificación, se incluye una región extendida que se extiende en una dirección horizontal o vertical en la imagen reproducida. En este caso, una imagen decodificada en la que la imagen decodificada de la región extendida se elimina de la imagen reproducida se emite desde el dispositivo de decodificación.
[0097] Cuando el tamaño del cuadro de referencia se define por el tamaño del cuadro decodificado, no se hace referencia a la imagen decodificada de la región extendida de la imagen reproducida almacenada en la memoria de cuadro de predicción compensada por movimiento 75 para la generación posterior de una imagen de predicción. Por lo tanto, la imagen decodificada en la que se elimina la imagen decodificada de la región extendida de la imagen reproducida se puede almacenar en la memoria de cuadro de predicción compensada por movimiento 75.
[0098] Como se mencionó anteriormente, debido a que el dispositivo de codificación de imagen en movimiento según la Realización 1 está construido de tal manera que para cada una de las imágenes de macro/subbloque 5 en las que se divide una imagen en movimiento introducida según el modo de codificación 7 de cada macrobloque, el dispositivo de codificación de imagen en movimiento predetermina un conjunto de bloques de transformación que incluyen una pluralidad de tamaños de bloque de transformación según el tamaño de un macrobloque o subbloque, la unidad de control de codificación 3 selecciona un tamaño de bloque de transformación que proporciona un grado óptimo de eficiencia de codificación del conjunto de tamaños de bloque de transformación e incluye el tamaño de bloque de transformación seleccionado de este modo en los parámetros de compresión óptimos 20a, y a continuación notifica estos parámetros de compresión óptimos a la unidad de transformación/cuantización 19, y la unidad de transformación/cuantización 19 divide una señal diferencial de predicción óptima 13a en bloques, cada uno con el tamaño de bloque de transformación incluido en los parámetros de compresión óptimos 20a, y lleva a cabo un procedimiento de transformación y cuantización en cada uno de los bloques para generar datos comprimidos 21, el dispositivo de codificación de imagen en movimiento puede mejorar la calidad del vídeo codificado con una cantidad de código similar en comparación con un procedimiento convencional de uso de un conjunto fijo de tamaños de bloque de transformación independientemente del tamaño de un macrobloque o subbloque.
[0099] Además, mientras que la unidad de codificación de longitud variable 23 se construye de tal manera que multiplexe el tamaño del bloque de transformación que se selecciona adaptativamente según el modo de codificación 7 del conjunto de tamaños de bloque de transformación en el flujo de bits 30, el dispositivo de decodificación de imagen en movimiento según la Realización 1 se construye de tal manera que la unidad de decodificación de longitud variable 61 decodifica los parámetros de compresión óptimos 65 del flujo de bits 60 en unidades de un macrobloque o subbloque (o en una base por macrobloque o por subbloque), y la unidad de cuantización inversa/transformación inversa 66 determina un tamaño de bloque de transformación en función de la información de tamaño de bloque de transformación incluida en estos parámetros de compresión óptimos 65 y lleva a cabo un procedimiento de transformación inversa y cuantización inversa en los datos comprimidos 64 en unidades de un bloque que tiene el tamaño de bloque de transformación. Por lo tanto, debido a que el dispositivo de decodificación de imagen en movimiento puede seleccionar el tamaño de bloque de transformación que ha sido utilizado por el dispositivo de codificación del conjunto de tamaños de bloque de transformación que se define de la misma manera que el conjunto de tamaños de bloque de transformación se define por el dispositivo de codificación de imagen en movimiento para decodificar los datos comprimidos, el dispositivo de decodificación de imagen en movimiento puede decodificar correctamente el flujo de bits codificado por el dispositivo de codificación de imagen en movimiento según la Realización 1.
Realización 2.
[0100] En esta Realización 2, se explicará una variante de la unidad de codificación de longitud variable 23 del dispositivo de codificación de imagen en movimiento según la Realización 1 mencionada anteriormente, y se explicará de manera similar una variante de la unidad de decodificación de longitud variable 61 del dispositivo de decodificación de imagen en movimiento según la Realización 1 mencionada anteriormente.
[0101] En primer lugar, se explicará una unidad de codificación de longitud variable 23 de un dispositivo de codificación de imagen en movimiento según esta Realización 2. La Fig. 9 es un diagrama de bloques que muestra la estructura interna de la unidad de codificación de longitud variable 23 del dispositivo de codificación de imagen en movimiento según la Realización 2 de la presente invención. En la Fig. 9, los mismos componentes que los que se muestran en la Fig. 1 o componentes similares se designan mediante los mismos números de referencia que los que se muestran en la figura, y la explicación de los componentes se omitirá a continuación. Además, debido a que la estructura del dispositivo de codificación de imagen en movimiento según esta Realización 2 es la misma que la según la Realización 1 mencionada anteriormente, y la operación de cada componente excepto la unidad de codificación de longitud variable 23 es la misma que la según la Realización 1 mencionada anteriormente, se hará una explicación mediante el uso de las Figs. 1 a 8. Además, en aras de la simplicidad, aunque se asume en lo sucesivo que el dispositivo de codificación de imagen en movimiento según esta Realización 2 tiene una estructura y un procedimiento
de procesamiento basados en el uso del conjunto de modos de codificación mostrados en la Fig. 2A, es innecesario decir que la Realización 2 también se puede aplicar a una estructura y un procedimiento de procesamiento basados en el uso del conjunto de modos de codificación mostrados en la Fig. 2b .
[0102] La unidad de codificación de longitud variable 23 que se muestra en la Fig. 9 incluye una memoria de tabla de binarización 105 para almacenar una tabla de binarización que indica una correspondencia entre los valores de índice que puede tener una señal de valor múltiple que muestra un modo de codificación 7 (o un parámetro de predicción óptimo 10a o 18a, o un parámetro de compresión óptimo 20a), y señales binarias, una unidad de binarización 92 para usar esta tabla de binarización para convertir un modo de codificación óptimo 7a (o un parámetro de predicción óptimo 10a o 18a, o un parámetro de compresión óptimo 20a) que se muestra por la señal de valor múltiple que se selecciona mediante una unidad de control de codificación 3 en una señal binaria 103, una unidad de operación de procesamiento de codificación aritmética 104 para hacer referencia a la información de identificación de contexto 102 que se genera mediante una unidad de generación de contexto 99, una memoria de información de contexto 96, una memoria de tabla de probabilidad 97 y una memoria de tabla de transición de estado 98 para llevar a cabo la codificación aritmética en la señal binaria 103 en la que la unidad de binarización 92 convierte el modo de codificación óptimo y emite una secuencia de bits codificada 111, y para multiplexar esta secuencia de bits codificada 111 en un flujo de bits 30, una unidad de generación de información de frecuencia 93 para contar la frecuencia de ocurrencia del modo de codificación óptimo 7a (o un parámetro de predicción óptimo 10a o 18a, o un parámetro de compresión óptimo 20a) para generar información de frecuencia 94, y una unidad de actualización de tabla de binarización 95 para actualizar la correspondencia entre los valores posibles de la señal de múltiples valores y señales binarias en la tabla de binarización almacenada en la memoria de tabla de binarización 105 en función de la información de frecuencia 94.
[0103] A continuación, un procedimiento de codificación de longitud variable llevado a cabo por la unidad de codificación de longitud variable 23 se explicará tomando el modo de codificación óptimo 7a de un macrobloque emitido desde la unidad de control de codificación 3 como un ejemplo de un parámetro que se codificará por entropía. Un parámetro de predicción óptimo 10a o 18a, o un parámetro de compresión óptimo 20a, que es de manera similar un parámetro a codificar, puede codificarse por longitud variable según el mismo procedimiento según el cual la unidad de codificación de longitud variable codifica el modo de codificación óptimo 7a, la explicación del procedimiento llevado a cabo en un parámetro de predicción óptimo o un parámetro de compresión óptimo se omitirá a continuación.
[0104] La unidad de control de codificación 3 según esta Realización 2 emite un indicador de inicialización de información de contexto 91, una señal indicadora de tipo 100, información de bloque periférico 101 y un indicador de actualización de tabla de binarización 113. Los detalles de cada uno de los elementos de información se mencionarán más adelante.
[0105] Una unidad de inicialización 90 inicializa la información de contexto 106 almacenada en la memoria de información de contexto 96 según el indicador de inicialización de información de contexto 91 notificada a esta desde la unidad de control de codificación 3 para colocar la información de contexto 106 en su estado inicial. Los detalles del procedimiento de inicialización llevado a cabo por la unidad de inicialización 90 se mencionarán más adelante.
[0106] La unidad de binarización 92 se refiere a la tabla de binarización almacenada en la memoria de tabla de binarización 105 para convertir el valor de índice de la señal de múltiples valores que muestra el tipo del modo de codificación óptimo 7a introducido en esta desde la unidad de control de codificación 3 en una señal binaria 103, y emite esta señal binaria a la unidad de operación de procesamiento de codificación aritmética 104.
[0107] La Fig. 10 es una vista que muestra un ejemplo de la tabla de binarización contenida por la memoria de la tabla de binarización 105. En una columna de «modo de codificación» que se muestra en la Fig. 10, hay cinco tipos de modos de codificación 7 que incluyen un modo de salto (mb_salto: un modo en el que el dispositivo de decodificación utiliza una imagen de predicción, en el que la compensación de movimiento se ha llevado a cabo mediante el uso de los vectores de movimiento de macrobloques adyacentes por el dispositivo de codificación, para una imagen decodificada) además de los modos de codificación (mb_modo0 a mb_modo3) que se muestran en la Fig. 2A. Un valor de «índice» correspondiente a cada uno de los modos de codificación se almacena en la tabla de binarización. Además, el valor de índice de cada uno de estos modos de codificación se binariza en un número binario que tiene uno o tres bits, y se almacena como una «señal binaria». En este caso, cada bit de la señal binaria se denomina número «binario». Aunque se menciona más adelante en detalle, en el ejemplo de la Fig. 10, se asigna un valor de índice más pequeño a un modo de codificación que tiene una mayor frecuencia de ocurrencia, y una señal binaria correspondiente también se establece para que sea de longitud corta, es decir, 1 bit de longitud.
[0108] El modo de codificación óptimo 7a emitido desde la unidad de control de codificación 3 se introduce en la unidad de binarización 92, y también se introduce en la unidad de generación de información de frecuencia 93.
[0109] La unidad de generación de información de frecuencia 93 cuenta la frecuencia de ocurrencia del valor de índice del modo de codificación incluido en este modo de codificación óptimo 7a (la frecuencia de selección del modo de codificación que la unidad de control de codificación ha seleccionado) para generar información de frecuencia
94, y emite esta información de frecuencia a la unidad de actualización de tabla de binarización 95 que se mencionará más adelante.
[0110] La memoria de tabla de probabilidad 97 contiene una tabla para almacenar dos o más conjuntos de un símbolo (MPS: Símbolo Más Probable) que tiene una mayor probabilidad de ocurrencia de los valores de símbolo «0» y «1» en cada binario incluido en la señal binaria 103, y la probabilidad de ocurrencia del símbolo.
[0111] La Fig. 11 es una vista que muestra un ejemplo de una tabla de probabilidad contenida por la memoria de tabla de probabilidad 97. Con referencia a la Fig. 11, se asigna un «número de tabla de probabilidad» a cada uno de los valores de probabilidad discretos que varían de 0,5 a 1,0 («probabilidades de ocurrencia»).
[0112] La memoria de tabla de transición de estado 98 contiene una tabla para almacenar una pluralidad de conjuntos, cada uno de los cuales teniendo un «número de tabla de probabilidad» almacenado en la memoria de tabla de probabilidad 97, y una transición de estado de un estado de probabilidad en el que el MPS de «0» o «1», que se muestra por el número de tabla de probabilidad, no se ha codificado a un estado de probabilidad en el que el MPS de «0» o «1» se ha codificado.
[0113] La Fig. 12 es una vista que muestra un ejemplo de una tabla de transición de estado contenida por la memoria de tabla de transición de estado 98. Cada conjunto de un «número de tabla de probabilidad», una «transición de probabilidad después de que se codifique LPS» y una «transición de probabilidad después de que se codifique MPS», que se muestran en la Fig. 12, corresponde a un número de tabla de probabilidad que se muestra en la Fig. 11. Por ejemplo, esta figura muestra que en el momento de un estado de probabilidad que tiene el «número de tabla de probabilidad 1» encerrado por una casilla que se muestra en la Fig. 12 (en el momento en que la probabilidad de ocurrencia del MPS es 0,527, como se muestra en la Fig. 11), la codificación de un símbolo tiene una menor probabilidad de ocurrencia (LPS: Símbolo Menos Probable) de «0» y «1» hace que el estado de probabilidad haga una transición al que tiene el número de tabla de probabilidad 0 (la probabilidad de ocurrencia del MPS es 0,500, como se muestra en la Fig. 11), como se puede ver a partir de la «transición de probabilidad después de que se codifique el LPS». Más específicamente, debido a que el LPS ocurre, la probabilidad de ocurrencia del MPS se vuelve pequeña. En contraste con esto, la figura muestra que la codificación del MPS hace que el estado de probabilidad haga una transición a uno que tiene el número de tabla de probabilidad 2 (la probabilidad de ocurrencia del MPS es 0,550, como se muestra en la Fig. 11), como se puede ver a partir de la «transición de probabilidad después de que se codifique el MPS». Más específicamente, debido a que el MPS ocurre, la probabilidad de ocurrencia del MPS se vuelve más grande.
[0114] La unidad de generación de contexto 99 se refiere a la señal indicadora de tipo 100 que indica el tipo del parámetro a codificar (el modo de codificación óptimo 7a, un parámetro de predicción óptimo 10a o 18a, o un parámetro de compresión óptimo 20a) que se introduce desde la unidad de control de codificación 3, y la información de bloque periférico 101 para generar información de identificación de contexto 102 para cada binario de la señal binaria 103 adquirida mediante la realización de binarización en el parámetro a codificar. En esta explicación, la señal indicadora de tipo 100 indica el modo de codificación óptimo 7a del macrobloque que se codificará. Además, la información de bloque periférico 101 indica los modos de codificación óptimos 7a de macrobloques adyacentes al macrobloque que se va a codificar. A continuación, se explicará un procedimiento de generación para generar la información de identificación de contexto que se lleva a cabo en la unidad de generación de contexto 99.
[0115] La Fig. 13 (a) es una vista que muestra la tabla de binarización que se muestra en la Fig. 10 en representación de árbol binario. A continuación, se realizará una explicación tomando un macrobloque que se codificará denotado por una casilla de borde grueso que se muestra en la Fig. 13(b) y los bloques periféricos A y B que son adyacentes a este macrobloque que se codificará como un ejemplo. En la Fig. 13(a), cada punto negro se denomina nodo, y cada línea que se conecta entre nodos se denomina trayectoria. Los índices de la señal de múltiples valores a binarizar se asignan a los nodos terminales del árbol binario, respectivamente. Además, la posición de cada nodo en una dirección de la profundidad del árbol binario, que se extiende hacia abajo desde una parte superior a una parte inferior en la página, corresponde a su número binario, y una secuencia de bits que se adquiere mediante la conexión de los símbolos (cada 0 o 1) asignados respectivamente a trayectorias que se extienden desde el nodo raíz a cada nodo terminal muestra una señal binaria 103 que corresponde al índice de la señal de múltiples valores asignada al nodo terminal. Para cada nodo parental (un nodo que no es ningún nodo terminal) del árbol binario, se preparan uno o más elementos de información de identificación de contexto según la información sobre los bloques periféricos A y B.
[0116] Por ejemplo, cuando se preparan tres elementos de información de identificación de contexto C0, C1 y C2 para el nodo raíz en el ejemplo de la Fig. 13 (a), la unidad de generación de contexto 99 se refiere a los elementos de información de bloque periférico 101 sobre los bloques periféricos adyacentes A y B para seleccionar cualquiera de los tres elementos de información de identificación de contexto C0, C1 y C2 según la siguiente ecuación (4). La unidad de generación de contexto 99 emite la información de identificación de contexto seleccionada como la información de identificación de contexto 102.
í 0 (cuando el modo de codificación del macrobloquc X no es cero) nx) 11 (cuando el modo de codi licación del macrobloque X es cero)
C0:r(A) r(B) = 0 (4) Cl:r(A) r(B) = l
C 2 : T( A) r (B) = 2
[0117] La ecuación anterior (4) se prepara en el supuesto de que cuando cada uno de los bloques periféricos A y B se define como un macrobloque X, hay una alta probabilidad de que el modo de codificación del macrobloque a codificar sea «0» (mb_salto) cuando el modo de codificación de cada uno de los bloques periféricos A y B es «0» (mb_salto). Por lo tanto, la información de identificación de contexto 102 seleccionada según la ecuación anterior (4) se basa en el mismo supuesto.
[0118] Se asigna una información de identificación de contexto (C3, C4 o C5) a cada uno de los nodos parentales distintos del nodo raíz.
[0119] La información de contexto identificada por la información de identificación de contexto 102 contiene el valor (0 o 1) del MPS y el número de tabla de probabilidad que se aproxima a la probabilidad de ocurrencia del valor. Ahora, la información de contexto se coloca en su estado inicial. La memoria de información de contexto 96 almacena esta información de contexto.
[0120] La unidad de operación de procesamiento de codificación aritmética 104 lleva a cabo codificación aritmética en cada binario de la señal binaria 103 con uno o tres bits introducidos desde la unidad de binarización 92 para generar una secuencia de bits codificada 111, y multiplexa esta secuencia de bits codificada en el flujo de bits 30. A continuación, se explicará un procedimiento de codificación aritmética basado en la información del contexto.
[0121] La unidad de operación de procesamiento de codificación aritmética 104 se refiere primero a la memoria de información de contexto 96 para adquirir la información de contexto 106 en función de la información de identificación de contexto 102 correspondiente al binario 0 de la señal binaria 103. A continuación, la unidad de operación de procesamiento de codificación aritmética 104 se refiere a la memoria de tabla de probabilidad 97 para especificar la probabilidad 108 de ocurrencia del MPS del binario 0 correspondiente al número de tabla de probabilidad 107 contenido por la información de contexto 106.
[0122] A continuación, la unidad de operación de procesamiento de codificación aritmética 104 lleva a cabo una codificación aritmética en el valor de símbolo 109 (0 o 1) del binario 0 en función del valor (0 o 1) del MPS contenido por la información de contexto 106 y la probabilidad especificada 108 de ocurrencia del MPS. A continuación, la unidad de operación de procesamiento de codificación aritmética 104 se refiere a la memoria de tabla de transición de estado 98 y adquiere el número de tabla de probabilidad 110 en un momento posterior a la codificación del símbolo del binario 0 en función tanto del número de tabla de probabilidad 107 contenido por la información de contexto 106, como del valor de símbolo 109 del binario 0 en el que se ha llevado a cabo previamente la codificación aritmética.
[0123] A continuación, la unidad de operación de procesamiento de codificación aritmética 104 actualiza el valor del número de tabla de probabilidad (es decir, el número de tabla de probabilidad 107) de la información de contexto 106 del binario 0 almacenado en la memoria de información de contexto 96 al número de tabla de probabilidad en un momento posterior a la transición de estado (es decir, el número de tabla de probabilidad 110 en un momento posterior a la codificación del símbolo del binario 0, que se ha adquirido previamente de la memoria de tabla de transición de estado 98).
[0124] La unidad de operación de procesamiento de codificación aritmética 104 también lleva a cabo la codificación aritmética en función de la información de contexto 106 identificada por la información de identificación de contexto 102 en el símbolo de cada uno de los binarios 1 y 2, y a continuación actualiza la información de contexto 106 después de codificar el símbolo de cada uno de los binarios, como en el caso de llevar a cabo la codificación aritmética en el símbolo del binario 0. La unidad de operación de procesamiento de codificación aritmética 104 emite una secuencia de bits codificada 111 que la unidad de operación de procesamiento de codificación aritmética ha adquirido mediante la realización de codificación aritmética en los símbolos de todos los binarios, y la unidad de codificación de longitud variable 23 multiplexa la secuencia de bits codificada en el flujo de bits 30.
[0125] Tal como se mencionó anteriormente, la información de contexto 106 identificada por la información de identificación de contexto 102 se actualiza cada vez que se lleva a cabo la codificación aritmética en el símbolo de cada binario. Más específicamente, esta actualización significa que el estado de probabilidad de cada nodo hace una transición cada vez que se codifica el símbolo de cada binario. La inicialización de la información de contexto 106, es decir, el restablecimiento del estado de probabilidad se lleva a cabo mediante la unidad de inicialización 90 mencionada anteriormente. Mientras que la unidad de inicialización 90 inicializa la información de contexto según una instrucción
mostrada por el indicador de inicialización de información de contexto 91 de la unidad de control de codificación 3, la unidad de inicialización 90 lleva a cabo esta inicialización en la cabecera de cada rebanada o similar. Una pluralidad de conjuntos se puede preparar de antemano para el estado inicial de cada información de contexto 106 (el valor del MPS y el valor inicial del número de tabla de probabilidad que se aproxima a la probabilidad de ocurrencia del valor), y la unidad de control de codificación 3 puede incluir información que muestra qué estado inicial se debe seleccionar de la pluralidad de conjuntos en el indicador de inicialización de información de contexto 91 y notificar este indicador de inicialización de información de contexto a la unidad de inicialización 90.
[0126] La unidad de actualización de tabla de binarización 95 se refiere a la información de frecuencia 94 que muestra la frecuencia de ocurrencia del valor de índice del parámetro a codificar (en este caso, el modo de codificación óptimo 7a) que es generado por la unidad de generación de información de frecuencia 93 sobre la base del indicador de actualización de tabla de binarización 113 notificado a la misma desde la unidad de control de codificación 3 para actualizar la memoria de tabla de binarización 105. A continuación, se explicará un procedimiento para actualizar la tabla de binarización que se lleva a cabo mediante la unidad de actualización de la tabla de binarización 95.
[0127] En este ejemplo, la unidad de actualización de la tabla de binarización actualiza una correspondencia entre los modos de codificación en la tabla de binarización y los índices según la frecuencia de ocurrencia del modo de codificación especificado por el modo de codificación óptimo 7a que es el parámetro a codificar de tal manera que sea capaz de binarizar el modo de codificación que tiene la frecuencia más alta de ocurrencia en una palabra clave corta, reduciendo así la cantidad de código.
[0128] La Fig. 14 es una vista que muestra un ejemplo de la tabla de binarización actualizada. Suponiendo que la tabla de binarización que aún no se ha actualizado se coloca en un estado que se muestra en la Fig. 10, la Fig. 14 muestra un estado en el que se ha actualizado la tabla de binarización. Por ejemplo, cuando la frecuencia de ocurrencia de mb_modo3 es la más alta, la unidad de actualización de tabla de binarización 95 asigna el valor de índice más pequeño a mb_modo3 según la información de frecuencia 94 de tal manera que una señal binaria que tiene una palabra clave corta se asigna a mb_modo3.
[0129] Además, después de actualizar la tabla de binarización, la unidad de actualización de tabla de binarización 95 necesita generar información de identificación de actualización de tabla de binarización 112 para permitir que el dispositivo de decodificación identifique la tabla de binarización actualizada y multiplexe la información de identificación de actualización de tabla de binarización en el flujo de bits 30. Por ejemplo, cuando hay una pluralidad de tablas de binarización para cada parámetro que se va a codificar, se puede proporcionar de antemano una ID para permitir la identificación de cada parámetro que se va a codificar tanto para el dispositivo de codificación como para el dispositivo de decodificación, y la unidad de actualización de tabla de binarización 95 se puede construir de tal manera que produzca la ID de la tabla de binarización actualizada como información de identificación de actualización de tabla de binarización 112, y multiplexar esta información de identificación de actualización de tabla de binarización en el flujo de bits 30.
[0130] La unidad de control de codificación 3 lleva a cabo el control de un tiempo de actualización haciendo referencia a la información de frecuencia 94 del parámetro que se codificará en la cabecera de cada rebanada y, cuando se determina que la distribución de la frecuencia de ocurrencia del parámetro que se codificará ha cambiado y se ha desviado de un intervalo permitido predeterminado, emite un indicador de actualización de tabla de binarización 113. La unidad de codificación de longitud variable 23 debería simplemente multiplexar el indicador de actualización de tabla de binarización 113 en la cabecera de rebanada del flujo de bits 30. Además, cuando el indicador de actualización de tabla de binarización 113 muestra «hay una actualización de la tabla de binarización», la unidad de codificación de longitud variable 23 multiplexa la información de identificación de actualización de tabla de binarización 112 que muestra qué tabla de binarización de las tablas de binarización del modo de codificación, un parámetro de compresión y un parámetro de predicción se han actualizado en el flujo de bits 30.
[0131] Además, la unidad de control de codificación 3 puede notificar la actualización de la tabla de binarización en un momento que no sea el momento en que la unidad de control de codificación procesa la cabecera de cada rebanada. Por ejemplo, la unidad de control de codificación puede emitir el indicador de actualización de tabla de binarización 113 en el momento en que la unidad de control de codificación procesa la cabecera de un macrobloque arbitrario para indicar una actualización de la tabla de binarización. En este caso, la unidad de actualización de la tabla de binarización 95 necesita emitir información para identificar la posición del macrobloque para el cual se ha actualizado la tabla de binarización, y la unidad de codificación de longitud variable 23 también necesita multiplexar la información en el flujo de bits 30.
[0132] Al emitir el indicador de actualización de tabla de binarización 113 a la unidad de actualización de tabla de binarización 95 para hacer que esta unidad de actualización de tabla de binarización actualice la tabla de binarización, la unidad de control de codificación 3 necesita emitir el indicador de inicialización de información de contexto 91 a la unidad de inicialización 90 para hacer que la unidad de inicialización inicialice la memoria de información de contexto 96.
[0133] A continuación, se explicará una unidad de decodificación de longitud variable 61 del dispositivo de decodificación de imagen en movimiento según esta Realización 2. La Fig. 15 es un diagrama de bloques que muestra la estructura interna de la unidad de decodificación de longitud variable 61 del dispositivo de decodificación de imagen en movimiento según la Realización 2 de la presente invención. Además, debido a que la estructura del dispositivo de decodificación de imagen en movimiento según esta Realización 2 es la misma que la según la Realización 1 mencionada anteriormente, y la operación de cada componente excepto la unidad de decodificación de longitud variable 61 es la misma que la según la Realización 1 mencionada anteriormente, se hará una explicación mediante el uso de las Figs. 1 a 8.
[0134] La unidad de decodificación de longitud variable 61 que se muestra en la Fig. 15 incluye una unidad de operación de procesamiento de decodificación aritmética 127 para hacer referencia a la información de identificación de contexto 126 que genera una unidad de generación de contexto 122, una memoria de información de contexto 128, una memoria de tabla de probabilidad 131 y una memoria de tabla de transición de estado 135 para llevar a cabo la decodificación aritmética en una secuencia de bits codificada 133 que muestra un modo de codificación óptimo 62 (o un parámetro de predicción óptimo 63 o un parámetro de compresión óptimo 65) multiplexado en un flujo de bits 60 para generar una señal binaria 137, una memoria de tabla de binarización 143 para almacenar una señal binaria 139 que indica una correspondencia entre el modo de codificación óptimo 62 expresado por una señal binaria (o un parámetro de predicción óptimo 63 o un parámetro de compresión óptimo 65) y una señal de valor múltiple, y una unidad de binarización inversa 138 para convertir la señal binaria 137 que la unidad de operación de procesamiento de decodificación aritmética 127 ha generado en un valor descodificado 140 de una señal de múltiples valores mediante el uso de la tabla de binarización 139.
[0135] A continuación, un procedimiento de decodificación de longitud variable llevado a cabo por la unidad de decodificación de longitud variable 61 se explicará tomando el modo de codificación óptimo 62 de un macrobloque incluido en el flujo de bits 60 como un ejemplo de un parámetro que se va a decodificar por entropía. Debido a que la unidad de decodificación de longitud variable 61 también puede decodificar por longitud variable un parámetro de predicción óptimo 63 o un parámetro de compresión óptimo 65 que es de manera similar un parámetro que se decodificará según el mismo procedimiento según el cual la unidad de decodificación de longitud variable decodifica por longitud variable el modo de codificación óptimo 62, se omitirá la explicación del procedimiento de decodificación de longitud variable llevado a cabo en un parámetro de predicción óptimo o un parámetro de compresión óptimo.
[0136] La información de inicialización de contexto 121, una secuencia de bits codificada 133, un indicador de actualización de tabla de binarización 142 y la información de identificación de actualización de tabla de binarización
144 que se multiplexan en el flujo de bits 60 mediante el dispositivo de codificación se incluyen en el flujo de bits 60 según esta Realización 2. Los detalles de cada uno de estos elementos de información se mencionarán más adelante.
[0137] Una unidad de inicialización 120 inicializa la información de contexto almacenada en la memoria de información de contexto 128 en la cabecera de cada rebanada o similar. Como alternativa, se puede preparar una pluralidad de conjuntos para un estado inicial de la información de contexto (el valor del MPS y un valor inicial del número de tabla de probabilidad que se aproxima a la probabilidad de ocurrencia del valor de MPS) en la unidad de inicialización 120, y un estado inicial correspondiente al valor decodificado de la información de inicialización de contexto 121 se puede seleccionar de la pluralidad de conjuntos.
[0138] La unidad de generación de contexto 122 se refiere tanto a una señal indicadora de tipo 123 que muestra el tipo del parámetro a decodificar (el modo de codificación óptimo 62, un parámetro de predicción óptimo 63 o un parámetro de compresión óptimo 65) como a información de bloque periférico 124 para generar información de identificación de contexto 126.
[0139] La señal indicadora de tipo 123 muestra el tipo del parámetro a decodificar, y el dispositivo de decodificación determina cuál es el parámetro a decodificar según una sintaxis contenida por la unidad d decodificación de longitud variable 61. Por lo tanto, el dispositivo de codificación y el dispositivo de decodificación necesitan contener la misma sintaxis y, en esta realización, se asume que la unidad de control de codificación 3 del dispositivo de codificación contiene la sintaxis. El dispositivo de codificación emite secuencialmente el tipo del parámetro que se codificará a continuación y el valor (valor de índice) del parámetro, es decir, la señal indicadora de tipo 100 a la unidad de codificación de longitud variable 23 según la sintaxis contenida por la unidad de control de codificación 3.
[0140] Además, la información de bloque periférico 124 incluye el modo de codificación que se adquiere mediante la decodificación de cada macrobloque o subbloque, y se almacena en una memoria (no mostrada) en la unidad de decodificación de longitud variable 61 con el fin de utilizar la información de bloque periférico 124 como información utilizada para la decodificación posterior de un macrobloque o subbloque y se emite a la unidad de generación de contexto 122 según sea necesario.
[0141] Un procedimiento de generación para generar información de identificación de contexto 126 que es llevado a cabo por la unidad de generación de contexto 122 es el mismo que la operación de la unidad de generación
de contexto 99 dispuesta en el dispositivo de codificación. Además, la unidad de generación de contexto 122 en el dispositivo de decodificación genera información de identificación de contexto 126 para cada binario de la tabla de binarización 139 al que se hará referencia mediante la unidad de binarización inversa 138.
[0142] En la información de contexto de cada binario, el valor (0 o 1) del MPS, y el número de tabla de probabilidad para especificar la probabilidad de ocurrencia del valor del MPS se contienen como información de probabilidad utilizada para llevar a cabo la decodificación aritmética en el binario. Además, la memoria de tabla de probabilidad 131 y la memoria de tabla de transición de estado 135 almacenan la misma tabla de probabilidad (Fig. 11) que la memoria de tabla de probabilidad 97 del dispositivo de codificación y la misma tabla de transición de estado (Fig. 12) que la memoria de tabla de transición de estado 98 del dispositivo de codificación, respectivamente.
[0143] La unidad de operación de procesamiento de decodificación aritmética 127 lleva a cabo la decodificación aritmética en la secuencia de bits codificada 133 multiplexada en el flujo de bits 60 sobre una base por binario para generar una señal binaria 137, y emite esta señal binaria a la unidad de binarización inversa 138.
[0144] La unidad de operación de procesamiento de decodificación aritmética 127 se refiere primero a la memoria de información de contexto 128 para adquirir la información de contexto 129 en función de la información de identificación de contexto 126 correspondiente a cada binario de la secuencia de bits codificada 133. A continuación, la unidad de operación de procesamiento de decodificación aritmética 127 se refiere a la memoria de tabla de probabilidad 131 para especificar la probabilidad 132 de ocurrencia del MPS de cada binario correspondiente al número de tabla de probabilidad 130 contenido por la información de contexto 129.
[0145] La unidad de operación de procesamiento de decodificación aritmética 127 a continuación lleva a cabo la decodificación aritmética en la secuencia de bits codificada 133 introducida en la unidad de operación de procesamiento de decodificación aritmética 127 en función del valor (0 o 1) del MPS contenido por la información de contexto 129 y la probabilidad especificada 132 de ocurrencia del MPS para adquirir el valor de símbolo 134 (0 o 1) de cada binario. Después de adquirir el valor de símbolo de cada binario a través de la decodificación, la unidad de operación de procesamiento de decodificación aritmética 127 se refiere a la memoria de tabla de transición de estado 135, y adquiere el número de tabla de probabilidad 136 en un momento posterior a la decodificación del símbolo de cada binario (en un momento posterior a la realización de una transición de estado) sobre la base del valor de símbolo 134 de cada binario decodificado y el número de tabla de probabilidad 130 contenido por la información de contexto 129 y según el mismo procedimiento que el llevado a cabo por la unidad de operación de procesamiento de codificación aritmética 104 del dispositivo de codificación.
[0146] A continuación, la unidad de operación de procesamiento de decodificación aritmética 127 actualiza el valor del número de tabla de probabilidad (es decir, el número de tabla de probabilidad 130) de la información de contexto 129 de cada binario que se almacena en la memoria de información de contexto 128 al número de tabla de probabilidad en un momento posterior de la realización de una transición de estado (es decir, el número de tabla de probabilidad 136 en un momento posterior a la decodificación del símbolo de cada binario que se ha adquirido previamente de la memoria de tabla de transición de estado 135). La unidad de operación de procesamiento de decodificación aritmética 127 emite una señal binaria 137 en la que los símbolos de los binarios adquiridos como resultado de la realización de la decodificación aritmética mencionada anteriormente en la secuencia de bits codificada se conectan entre sí a la unidad de binarización inversa 138.
[0147] La unidad de binarización inversa 138 selecciona la misma tabla de binarización 139 que se utiliza en el momento de la codificación de entre las tablas de binarización almacenadas en la memoria de tabla de binarización 143 y preparadas para todos los tipos de parámetros que se decodificarán y se refiere a la tabla de binarización seleccionada de este modo, y emite selectivamente el valor descodificado 140 del parámetro que se decodificará de la señal binaria 137 introducida en esta desde la unidad de operación de procesamiento de decodificación aritmética 127. Cuando el tipo del parámetro a decodificar es el modo de codificación (modo de codificación óptimo 62) de un macrobloque, la tabla de binarización 139 es la misma que la tabla de binarización en el dispositivo de codificación que se muestra en la Fig. 10.
[0148] La unidad de actualización de tabla de binarización 141 actualiza la tabla de binarización almacenada en la memoria de tabla de binarización 143 sobre la base del indicador de actualización de tabla de binarización 142 y la información de identificación de actualización de tabla de binarización 144 que se decodifican del flujo de bits 60.
[0149] El indicador de actualización de tabla de binarización 142 es información que corresponde al indicador de actualización de tabla de binarización 113 en el dispositivo de codificación, y que se incluye en la información de cabecera o similar del flujo de bits 60 y muestra si hay o no una actualización a la tabla de binarización. Cuando el valor descodificado del indicador de actualización de tabla de binarización 142 muestra «hay una actualización a la tabla de binarización», la información de identificación de actualización de tabla de binarización 144 se descodifica del flujo de bits 60.
[0150] La tabla de binarización que actualiza la información de identificación 144 es información que
corresponde a la tabla de binarización que actualiza la información de identificación 112 en el dispositivo de codificación, y que se utiliza para identificar la tabla de binarización de un parámetro actualizado por el dispositivo de codificación. Por ejemplo, cuando se proporciona de antemano una pluralidad de tablas de binarización para cada parámetro que se codificará, como se mencionó anteriormente, una ID que permite a cada parámetro que ha de ser codificado ser identificado y se proporciona de antemano una ID de cada una de las tablas de binarización tanto en el lado del dispositivo de codificación como en el dispositivo de decodificación, y la unidad de actualización de tabla de binarización 141 actualiza la tabla de binarización correspondiente al valor de ID en la tabla de binarización que actualiza la información de identificación 144 que se decodifica del flujo de bits 60. En este ejemplo, dos tipos de tablas de binarización que se muestran en las Figs. 10 y 14, y las ID de estas tablas de binarización se preparan de antemano en la memoria de tabla de binarización 143, y, cuando se asume que la tabla de binarización aún por actualizar se coloca en un estado que se muestra en la Fig. 10, la unidad de actualización de tabla de binarización 141 debe seleccionar necesariamente la tabla de binarización correspondiente a la ID incluida en la información de identificación de actualización de tabla de binarización 144 simplemente llevando a cabo un procedimiento de actualización según el indicador de actualización de tabla de binarización 142 y la información de identificación de actualización de tabla de binarización 144. Por lo tanto, la tabla de binarización actualizada entra en un estado mostrado en la Fig. 14, y se vuelve la misma que la tabla de binarización que se ha actualizado en el dispositivo de codificación.
[0151] Como se mencionó anteriormente, el dispositivo de codificación de imagen en movimiento según la Realización 2 está construido de tal manera que la unidad de control de codificación 3 selecciona y emite un parámetro a codificar, tal como un modo de codificación óptimo 7a que proporciona un grado óptimo de eficiencia de codificación, un parámetro de predicción óptimo 10a o 18a, o un parámetro de compresión óptimo 20a, la unidad de binarización 92 de la unidad de codificación de longitud variable 23 convierte el parámetro a codificar expresado por una señal de múltiples valores en una señal binaria 103 mediante el uso de la tabla de binarización almacenada en la memoria de tabla de binarización 105, la unidad de operación de procesamiento de codificación aritmética 104 lleva a cabo codificación aritmética en la señal binaria 103 para emitir una secuencia de bits codificada 111, la unidad de generación de información de frecuencia 93 genera información de frecuencia 94 del parámetro a codificar, y la unidad de actualización de tabla de binarización 95 actualiza la correspondencia entre la señal de múltiples valores en la tabla de binarización y la señal binaria en función de la información de frecuencia 94, la cantidad de código se puede reducir mientras se genera el vídeo codificado que tiene la misma calidad, en comparación con el procedimiento convencional que tiene la tabla de binarización que se fija en todo momento.
[0152] Además, debido a que la unidad de actualización de la tabla de binarización 95 se construye de tal manera que se multiplexa tanto la información de identificación de actualización de la tabla de binarización 112 que muestra si hay o no una actualización a la tabla de binarización, como la información de identificación de actualización de la tabla de binarización 112 para identificar la tabla de binarización actualizada en el flujo de bits 30, el dispositivo de decodificación de imagen en movimiento según la Realización 2 se construye según la estructura de la unidad de actualización de la tabla de binarización de tal manera que la unidad de operación de procesamiento de decodificación aritmética 127 de la unidad de decodificación de longitud variable 61 lleva a cabo la decodificación aritmética en la secuencia de bits codificada 133 multiplexada en el flujo de bits 60 para generar una señal binaria 137, la unidad de binarización inversa 138 utiliza la tabla de binarización 139 de la memoria de tabla de binarización 143 para convertir la señal binaria 137 en una señal de múltiples valores y adquirir un valor decodificado 140, y la unidad de actualización de tabla de binarización 141 actualiza una tabla de binarización predeterminada almacenada en la memoria de tabla de binarización 143 en función del indicador de actualización de tabla de binarización 142 y la información de identificación de actualización de tabla de binarización 144 que se adquieren a través de la decodificación de la información de encabezado multiplexada en el flujo de bits 60. Por lo tanto, debido a que el dispositivo de decodificación de imagen en movimiento puede actualizar la tabla de binarización según el mismo procedimiento que el llevado a cabo por el dispositivo de codificación de imagen en movimiento y puede llevar a cabo la binarización inversa en el parámetro a codificar, el dispositivo de codificación de imagen en movimiento según la Realización 2 puede decodificar el flujo de bits codificado correctamente.
Realización 3.
[0153] En esta Realización 3, se explicará una variante del procedimiento de generación de una imagen de predicción mediante el uso de una predicción compensada por movimiento que se realiza mediante la unidad de predicción compensada por movimiento 9 en el dispositivo de codificación de imagen en movimiento y el dispositivo de decodificación de imagen en movimiento según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente.
[0154] En primer lugar, se explicará una unidad de predicción compensada por movimiento 9 de un dispositivo de codificación de imagen en movimiento según esta Realización 3. Además, debido a que la estructura del dispositivo de codificación de imagen en movimiento según esta Realización 3 es la misma que la según las Realizaciones 1 o 2 mencionadas anteriormente, y la operación de cada componente excepto la unidad de predicción compensada por movimiento 9 es la misma que la según las Realizaciones 1 o 2 mencionadas anteriormente, se hará una explicación mediante el uso de las Figs. 1 a 15.
[0155] La unidad de predicción de compensación de movimiento 9 según esta Realización 3 tiene la misma
estructura y funciona de la misma manera que la según las Realizaciones 1 o 2 mencionadas anteriormente, con la excepción de que una estructura y una operación asociadas con un procedimiento de generación de imágenes de predicción que tiene precisión de muestra virtual difieren de aquellas según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente. Más específicamente, según las Realizaciones 1 y 2 mencionadas anteriormente, como se muestra en la Fig. 3, la unidad de generación de imágenes interpoladas 43 de la unidad de predicción compensada por movimiento 9 genera datos de imagen de referencia que tienen precisión de píxeles virtuales, tal como precisión de medio píxel o 1/4 de píxel, y, cuando genera una imagen de predicción 45 sobre la base de estos datos de imagen de referencia que tienen precisión de píxeles virtuales, genera píxeles virtuales mediante la implementación de una operación aritmética de interpolación con un filtro de 6 muestras usando seis píxeles enteros que discurren en una dirección vertical u horizontal para generar una imagen de predicción, como en el caso de los estándares MPEG-4 AVC. En contraste con esto, la unidad de predicción compensada por movimiento 9 según esta Realización 3 amplía una imagen de referencia 15 que tiene precisión de píxeles enteros almacenada en una memoria de cuadro de predicción compensada por movimiento 14 mediante la realización de un procedimiento de superresolución en la imagen de referencia 15 para generar una imagen de referencia 207 que tiene precisión de píxeles virtuales, y a continuación genera una imagen de predicción sobre la base de esta imagen de referencia 207 que tiene precisión de píxeles virtuales.
[0156] A continuación, la unidad de predicción compensada por movimiento 9 según esta Realización 3 se explicará mediante el uso de la Fig. 3. Al igual que según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente, una unidad de generación de imágenes interpoladas 43 según esta Realización 3 especifica uno o más cuadros de imágenes de referencia 15 de la memoria de cuadro de predicción compensada por movimiento 14, y una unidad de detección de movimiento 42 detecta un vector de movimiento 44 en un intervalo de búsqueda de movimiento predeterminado en la imagen de referencia 15 especificada por la unidad de generación de imágenes interpoladas. La detección del vector de movimiento se implementa mediante el uso de un vector de movimiento que tiene una precisión de píxeles virtuales, como en el caso de los estándares MPEG-4 AVC o similares. Según este procedimiento de detección, se realiza una operación aritmética de interpolación en la información de píxeles (denominados píxeles enteros) que tiene la imagen de referencia para generar muestras virtuales (píxeles) entre los píxeles enteros, y estas muestras virtuales se utilizan como imagen de referencia.
[0157] Con el fin de generar una imagen de referencia que tenga una precisión de píxeles virtuales, es necesario ampliar una imagen de referencia que tenga una precisión de píxeles enteros (generar una imagen de referencia que tenga una resolución más alta) para generar un plano de muestra que consiste en píxeles virtuales. Con este fin, cuando se requiere una imagen de referencia para la búsqueda de movimiento que tenga precisión de píxeles virtuales, la unidad de generación de imágenes interpoladas 43 según esta Realización 3 utiliza una técnica de superresolución descrita por «W. T.Freeman, E.C.Pasztor y O.T. Carmichael, «Learning Low-Level Vision», International Journal of Computer Vision, vol.40, No.1, 2000» para generar una imagen de referencia con precisión de píxeles virtuales. En la siguiente explicación, se mencionará a continuación una estructura en la que la unidad de predicción con compensación de movimiento 9 lleva a cabo un procedimiento de generación de imágenes de superresolución para generar una imagen de referencia 207 que tiene precisión de píxeles virtuales a partir de los datos de imagen de referencia almacenados en la memoria de cuadro de predicción de compensación de movimiento 14, y la unidad de detección de movimiento 42 lleva a cabo un procedimiento de búsqueda de vector de movimiento usando la imagen de referencia.
[0158] La Fig. 16 es un diagrama de bloques que muestra la estructura interna de la unidad de generación de imágenes interpoladas 43 de la unidad de predicción compensada por movimiento 9 del dispositivo de codificación de imagen en movimiento según la Realización 3 de la presente invención. La unidad de generación de imágenes interpoladas 43 que se muestra en la Fig. 16 incluye una unidad de procesamiento de ampliación de imágenes 205 para llevar a cabo un procedimiento de ampliación en la imagen de referencia 15 almacenada en la memoria de cuadro de predicción compensada por movimiento 14, una unidad de procesamiento de reducción de imágenes 200 para llevar a cabo un procedimiento de reducción en la imagen de referencia 15, una unidad de extracción de características de alta frecuencia 201a para extraer una cantidad de características de un componente de región de alta frecuencia de la unidad de procesamiento de reducción de imágenes 200, una unidad de extracción de características de alta frecuencia 201b para extraer una cantidad de características de un componente de región de alta frecuencia de la imagen de referencia 15, una unidad de cálculo de correlación 202 para calcular el valor de una correlación entre las cantidades de características, una unidad de estimación de componentes de alta frecuencia 203 para estimar un componente de alta frecuencia tanto del valor de la correlación como de los datos aprendidos previamente almacenados en una memoria de patrón de componente de alta frecuencia 204, y una unidad de adición 206 para corregir un componente de alta frecuencia de la imagen ampliada mediante el uso del componente de alta frecuencia estimado para generar una imagen de referencia 207 que tiene precisión de píxeles virtuales.
[0159] En la unidad de generación de imágenes interpoladas que se muestra en la Fig. 16, cuando la imagen de referencia 15 en el intervalo utilizado para un procedimiento de búsqueda de movimiento se introduce desde los datos de imagen de referencia almacenados en la memoria de cuadro de predicción compensada por movimiento 14 a la unidad de generación de imágenes interpoladas 43, esta imagen de referencia 15 se introduce en la unidad de procesamiento de reducción de imagen 200, en la unidad de extracción de elementos de alta frecuencia 201b y en la
unidad de procesamiento de ampliación de imagen 205.
[0160] La unidad de procesamiento de reducción de imagen 200 genera una imagen reducida cuya altura y anchura se reducen respectivamente a 1/N veces (N es una potencia de 2, tal como 2 o 4) la altura y anchura originales de la imagen de referencia 15, y emite la imagen reducida a la unidad de extracción de elementos de alta frecuencia 201a. Un filtro de reducción de imagen típico implementa este procedimiento de reducción.
[0161] La unidad de extracción de elementos de alta frecuencia 201a extrae una primera cantidad de elementos asociada con un componente de alta frecuencia, tal como un componente de borde, de la imagen reducida que es generada por la unidad de procesamiento de reducción de imagen 200. Como la primera cantidad de característica, por ejemplo, se puede usar un parámetro que muestra una DCT en un bloque local o una distribución de coeficiente de transformada de Wavelet.
[0162] La unidad de extracción de características de alta frecuencia 201b lleva a cabo un procedimiento de extracción de características de alta frecuencia similar al llevado a cabo por la unidad de extracción de características de alta frecuencia 201a, y extrae una segunda cantidad de características que tiene una región de componente de frecuencia diferente de la de la primera cantidad de características de la imagen de referencia 15. La segunda cantidad de características se emite a la unidad de cálculo de correlación 202, y también se emite a la unidad de estimación de componentes de alta frecuencia 203.
[0163] Cuando la primera cantidad de características se introduce desde la unidad de extracción de características de alta frecuencia 201a y la segunda cantidad de características se introduce desde la unidad de extracción de características de alta frecuencia 201b, la unidad de cálculo de correlación 202 calcula el valor de una correlación en función de la cantidad de características en una región de componente de alta frecuencia entre la imagen de referencia 15 y la imagen reducida en unidades de un bloque local. Como este valor de la correlación, por ejemplo, se calcula una distancia entre la primera cantidad de características y la segunda cantidad de características.
[0164] La unidad de estimación de componente de alta frecuencia 203 especifica un patrón aprendido previamente del componente de alta frecuencia de la memoria de patrón de componente de alta frecuencia 204 sobre la base tanto de la segunda cantidad de características introducida en esta desde la unidad de extracción de características de alta frecuencia 201b, como del valor de la correlación introducida en esta desde la unidad de cálculo de correlación 202, y estima y genera un componente de alta frecuencia que debería tener la imagen de referencia 207 que tiene precisión de píxeles virtuales. El componente de alta frecuencia generado se emite a la unidad de adición 206.
[0165] La unidad de procesamiento de ampliación de imagen 205 realiza una operación aritmética de interpolación con un filtro de 6 muestras usando seis píxeles enteros que discurren en una dirección vertical u horizontal o filtrado de ampliación, tal como filtrado bilineal, en la imagen de referencia introducida 15, como en el caso de realizar un procedimiento de generación de muestras que tienen una precisión de medio píxel según los estándares MPEG-4 AVC, para ampliar cada una de la altura y la anchura de la imagen de referencia 15 en N veces para generar una imagen ampliada.
[0166] La unidad de adición 206 agrega el componente de alta frecuencia introducido en esta desde la unidad de estimación de componente de alta frecuencia 203 a la imagen ampliada introducida en esta desde la unidad de procesamiento de ampliación de imagen 205 para generar una imagen de referencia ampliada. Más específicamente, la unidad de adición corrige el componente de alta frecuencia de la imagen ampliada para generar una imagen de referencia ampliada cuya altura y anchura se amplían respectivamente a N veces la altura y anchura original. La unidad de generación de imágenes interpoladas 43 utiliza estos datos de imagen de referencia ampliada como una imagen de referencia 207 que tiene una precisión de píxeles virtuales en la que 1/N se establece en 1.
[0167] La unidad de generación de imágenes interpoladas 43 se puede construir alternativamente de tal manera que, después de generar una imagen de referencia 207 que tiene una precisión de la mitad de píxel (1/2 píxel) mediante el ajuste de N a 2, genere muestras virtuales (píxeles) que tienen precisión de 1/4 de píxel mediante la realización de una operación aritmética de interpolación usando un filtro para adquirir un valor medio de 1/2 píxeles adyacentes o píxeles enteros.
[0168] Además, la unidad de generación de imágenes interpoladas 43 se puede construir de tal manera que incluya una unidad para conmutar si agregar o no el componente de alta frecuencia emitido por la unidad de estimación de componente de alta frecuencia 203 a la imagen ampliada emitida por la unidad de procesamiento de ampliación de imagen 205 para controlar el resultado de la generación de la imagen de referencia 207 que tiene una precisión de píxeles virtuales además de la estructura que se muestra en la Fig. 16. En el caso en el que la unidad de generación de imágenes interpoladas se construya de esta manera, se proporciona una ventaja de suprimir una mala influencia sobre la eficiencia de codificación cuando la precisión de estimación de la unidad de estimación de componente de alta frecuencia 203 es mala por alguna razón tal como un patrón de imagen excepcional. Cuando la unidad de adición 206 determina selectivamente si agregar o no el componente de alta frecuencia emitido por la unidad de estimación
de componente de alta frecuencia 203 a la imagen ampliada, el dispositivo de codificación de imagen en movimiento genera una imagen de predicción 45 tanto para el caso de agregarlas como para el caso de no agregarlas y a continuación lleva a cabo una predicción compensada por movimiento, y codifica los resultados de la predicción compensada por movimiento y determina una de las imágenes de predicción que proporciona un mayor grado de eficiencia. El dispositivo de codificación de imagen en movimiento a continuación multiplexa la adición de información de procedimiento que muestra si la unidad de adición ha agregado el componente de alta frecuencia a la imagen ampliada en el flujo de bits 30 como información de control.
[0169] Como alternativa, la unidad de generación de imágenes interpoladas 43 puede determinar de forma única si agregar o no el componente de alta frecuencia a la imagen ampliada desde otro parámetro para ser multiplexado en el flujo de bits 30 para controlar el procedimiento de adición llevado a cabo por la unidad de adición 206. Como ejemplo para determinar si se debe agregar o no el componente de alta frecuencia a la imagen ampliada desde otro parámetro, por ejemplo, se puede proporcionar un procedimiento para usar el tipo de un modo de codificación 7 como se muestra en la Fig. 2A o 2B. Cuando se selecciona un modo de codificación que muestra que la división de un macrobloque en bloques de región de compensación de movimiento es fina, hay una alta probabilidad de que el patrón de imagen tenga un movimiento violento. Por lo tanto, en este caso, al suponer que el efecto de la superresolución es bajo, la unidad de generación de imágenes interpoladas 43 controla la unidad de adición 206 para hacer que esta unidad de adición no agregue el componente de alta frecuencia emitido por la unidad de estimación de componente de alta frecuencia 203 a la imagen ampliada. Por el contrario, cuando se selecciona un modo de codificación que muestra que el tamaño de cada bloque de región de compensación de movimiento en un macrobloque es grande o un modo de intrapredicción en el que el tamaño de bloque es grande, hay una alta probabilidad de que el patrón de imagen sea un área de imagen relativamente estacionaria. Por lo tanto, en este caso, al suponer que el efecto de la superresolución es bajo, la unidad de generación de imágenes interpoladas 43 controla la unidad de adición 206 para hacer que esta unidad de adición agregue el componente de alta frecuencia emitido por la unidad de estimación de componente de alta frecuencia 203 a la imagen ampliada.
[0170] Como ejemplo del uso de otro parámetro que no sea el modo de codificación 7, se puede usar un parámetro, tal como el tamaño del vector de movimiento o una variación en el campo del vector de movimiento en consideración de áreas adyacentes. La unidad de generación de imágenes interpoladas 43 de la unidad de predicción compensada por movimiento 9 comparte el tipo del parámetro con el dispositivo de decodificación para determinar si se debe agregar o no el componente de alta frecuencia a la imagen ampliada. En este caso, el dispositivo de codificación de imagen en movimiento no tiene que multiplexar la información de control sobre el procedimiento de adición directamente en el flujo de bits 30, pudiendo así mejorar la eficiencia de compresión.
[0171] El dispositivo de codificación de imagen en movimiento se puede construir de tal manera que realice el procedimiento de superresolución mencionado anteriormente en la imagen de referencia 15, que se almacenará en la memoria de cuadro de predicción compensada por movimiento 14, para convertir la imagen de referencia en una imagen de referencia 207 que tenga precisión de píxeles virtuales antes de almacenar la imagen de referencia en la memoria de cuadro de predicción compensada por movimiento 14, y, después de eso, almacenar la imagen de referencia 207 en la memoria de cuadro de predicción compensada por movimiento. En el caso de esta estructura, aunque el tamaño de una memoria requerida como la memoria de cuadro de predicción compensada por movimiento 14 aumenta, el dispositivo de codificación de imagen en movimiento no tiene que llevar a cabo secuencialmente el procedimiento de superresolución durante la búsqueda de vector de movimiento y durante la generación de imágenes de predicción y la carga de procesamiento en el procedimiento de predicción compensado por movimiento en sí mismo se puede reducir, y el dispositivo de codificación de imagen en movimiento puede ser capaz de llevar a cabo el procedimiento de codificación de cuadro y el procedimiento de generación para generar una imagen de referencia 207 que tiene precisión de píxeles virtuales en paralelo, y puede acelerar los procedimientos.
[0172] A continuación, se mostrará un ejemplo de un procedimiento de detección de vector de movimiento para detectar un vector de movimiento que tiene precisión de píxeles virtuales usando la imagen de referencia 207 que tiene precisión de píxeles virtuales usando la Fig. 3.
Procedimiento de detección de vectores de movimiento I'
[0173] La unidad de generación de imágenes interpoladas 43 genera una imagen de predicción 45 para el vector de movimiento 44 que tiene precisión de píxeles enteros en el intervalo de búsqueda de movimiento predeterminado de una imagen de bloque de región de compensación de movimiento 41. La imagen de predicción 45 (imagen de predicción 17) generada con una precisión de píxeles enteros se emite a la unidad de sustracción 12, y se sustrae de la imagen de bloque de región de compensación de movimiento 41 (imagen de macro/subbloque 5) por la unidad de sustracción 12, de modo que el resultado de la sustracción se define como una señal de diferencia de predicción 13. La unidad de control de codificación 3 evalúa un grado de eficiencia de predicción para la señal de diferencia de predicción 13 y para el vector de movimiento 44 (parámetro de predicción 18) que tiene precisión de píxeles enteros. Debido a que la evaluación de esta eficiencia de predicción se puede llevar a cabo según la ecuación anterior (1) explicada en la Realización 1 antes mencionada, la explicación de la evaluación se omitirá a continuación.
Procedimiento de detección de vector de movimiento II'
[0174] La unidad de generación de imágenes interpoladas 43 genera una imagen de predicción 45 mediante el uso de la imagen de referencia 207 que tiene precisión de píxeles virtuales generada dentro de la unidad de generación de imágenes interpoladas 43 que se muestra en la Fig. 16 para un vector de movimiento 44 que tiene precisión de 1/2 píxel ubicada en las proximidades del vector de movimiento que tiene precisión de píxeles enteros que se determina según el «procedimiento de detección de vector de movimiento I» mencionado anteriormente. Después de eso, como en el caso del «procedimiento de detección de vector de movimiento I» mencionado anteriormente, la imagen de predicción 45 (imagen de predicción 17) generada con una precisión de 1/2 píxel se sustrae de la imagen de bloque de región de compensación de movimiento 41 (imagen de macro/subbloque 5) por la unidad de sustracción 12 para adquirir una señal de diferencia de predicción 13. A continuación, la unidad de control de codificación 3 evalúa un grado de eficiencia de predicción para esta señal de diferencia de predicción 13 y para el vector de movimiento 44 (parámetro de predicción 18) que tiene una precisión de 1/2 píxel, y determina selectivamente un vector de movimiento 44 que tiene una precisión de 1/2 píxel que minimiza el costo de predicción J1 de entre uno o más vectores de movimiento que tienen una precisión de 1/2 píxel ubicada en las proximidades del vector de movimiento que tiene una precisión de píxeles enteros.
Procedimiento de detección de vector de movimiento III'
[0175] También en cuanto a un vector de movimiento que tiene una precisión de 1/4 de píxel, la unidad de control de codificación 3 y la unidad de predicción compensada por movimiento 9 determinan selectivamente un vector de movimiento 44 que tiene una precisión de 1/4 de píxel que minimiza el costo de predicción J1 de uno o más vectores de movimiento que tienen una precisión de 1/4 de píxel ubicada en las proximidades del vector de movimiento que tiene una precisión de 1/2 píxel que se determina según el «procedimiento de detección de vector de movimiento II» antes mencionado.
Procedimiento de detección de vector de movimiento IV'
[0176] Después de eso, la unidad de control de codificación 3 y la unidad de predicción compensada por movimiento 9 detectan de manera similar un vector de movimiento que tiene una precisión de píxeles virtuales hasta que el vector de movimiento detectado tiene un grado predeterminado de precisión.
[0177] Por lo tanto, la unidad de predicción de compensación de movimiento 9 emite el vector de movimiento de precisión de píxeles virtuales que tiene la precisión predeterminada, que se determina para cada imagen de bloque de región de compensación de movimiento 41 que es uno de una pluralidad de bloques en los que se divide la imagen de macro/subbloque 5 y cada uno de los cuales es una unidad para la compensación de movimiento mostrada por el modo de codificación 7, y el número de identificación de la imagen de referencia especificada por el vector de movimiento como parámetros de predicción 18. La unidad de predicción compensada por movimiento 9 también emite la imagen de predicción 45 (imagen de predicción 17) que se genera mediante el uso de los parámetros de predicción 18 a la unidad de sustracción 12, y la unidad de sustracción 12 sustrae la imagen de predicción 45 de la imagen de macro/subbloque 5 para adquirir una señal de diferencia de predicción 13. La señal de diferencia de predicción 13 emitida desde la unidad de sustracción 12 se emite a la unidad de transformación/cuantización 19. Debido a que los procedimientos posteriores llevados a cabo después de eso son los mismos que los explicados en la Realización 1 mencionada anteriormente, la explicación de los procedimientos se omitirá a continuación.
[0178] A continuación, se explicará el dispositivo de decodificación de imagen en movimiento según esta Realización 3. Debido a que el dispositivo de decodificación de imagen en movimiento según esta Realización 3 tiene la misma estructura que el dispositivo de decodificación de imagen en movimiento según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente, con la excepción de que el dispositivo de decodificación de imagen en movimiento según esta Realización 3 tiene una estructura diferente de la estructura asociada con el procedimiento de generación de imagen de predicción que tiene una precisión de píxeles virtuales llevada a cabo por la unidad de predicción compensada por movimiento 70 según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente, y el dispositivo de decodificación de imagen en movimiento según esta Realización 3 funciona de una manera diferente a la según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente al llevar a cabo el procedimiento de generación de imagen de predicción, la estructura y el funcionamiento del dispositivo de decodificación de imagen en movimiento según esta Realización 3 se explicarán mediante el uso de las Figs. 1 a 16.
[0179] Según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente, cuando se genera una imagen de predicción sobre la base de una imagen de referencia que tiene una precisión de píxeles virtuales, tal como una precisión de medio píxel o 1/4 de píxel, la unidad de predicción compensada por movimiento 70 genera píxeles virtuales mediante la implementación de una operación aritmética de interpolación con un filtro de 6 muestras usando seis píxeles enteros que discurren en una dirección vertical u horizontal, o similares para generar una imagen de predicción, como en el caso de los estándares MPEG-4 AVC. En contraste con esto, una unidad de predicción compensada por movimiento 70 según esta Realización 3 amplía una imagen de referencia 76 que tiene precisión de píxeles enteros almacenada en una memoria de cuadro de predicción compensada por movimiento 75 mediante la
realización de un procedimiento de superresolución en la imagen de referencia. Como resultado, la unidad de predicción compensada por movimiento genera una imagen de referencia que tiene una precisión de píxeles virtuales.
[0180] La unidad de predicción compensada por movimiento 70 según esta Realización 3 genera una imagen de predicción 72 a partir de la imagen de referencia 76 almacenada en la memoria de cuadro de predicción compensada por movimiento 75 sobre la base de vectores de movimiento incluidos en los parámetros de predicción óptimos introducidos 63, el número de identificación (índice de imagen de referencia) de la imagen de referencia especificada por cada uno de los vectores de movimiento, etc., y emite la imagen de predicción, como aquella según cualquiera de las Realizaciones 1 y 2 mencionadas anteriormente. Una unidad de adición 73 agrega la imagen de predicción 72 introducida desde la unidad de predicción compensada por movimiento 70 a los valores decodificados de señal de diferencia de predicción 67 introducidos desde una unidad de cuantización inversa/transformación inversa 66 para generar una imagen decodificada 74.
[0181] Un procedimiento de generación para generar la imagen de predicción 72 que se implementa mediante la unidad de predicción compensada por movimiento 70 corresponde a la operación de la unidad de predicción compensada por movimiento 9 en el dispositivo de codificación desde el cual se excluye el procedimiento de búsqueda a través de una pluralidad de imágenes de referencia para vectores de movimiento (correspondiente a las operaciones de la unidad de detección de movimiento 42 y la unidad de generación de imágenes interpoladas 43 que se muestra en la Fig. 3). La unidad de predicción compensada por movimiento lleva a cabo solo el procedimiento de generación de la imagen de predicción 72 según los parámetros de predicción óptimos 63 proporcionados a esta a partir de una unidad de decodificación de longitud variable 61.
[0182] Al generar una imagen de predicción 72 con precisión de píxeles virtuales, la unidad de predicción compensada por movimiento 70 lleva a cabo el mismo procedimiento que el que se muestra en la Fig. 16 en la imagen de referencia 76 almacenada en la memoria de cuadro de predicción compensada por movimiento 75 y especificada por el número de identificación (índice de imagen de referencia) de la imagen de referencia para generar una imagen de referencia con precisión de píxeles virtuales, y a continuación genera una imagen de predicción 72 mediante el uso del vector de movimiento decodificado. En este momento, cuando el dispositivo de codificación ha determinado selectivamente si agregar o no el componente de alta frecuencia emitido por la unidad de estimación de componente de alta frecuencia 203 que se muestra en la Fig. 16 a la imagen ampliada, el dispositivo de decodificación extrae la información de control que muestra si el dispositivo de codificación ha llevado a cabo el procedimiento de adición desde el flujo de bits 60, o determina de forma única si el dispositivo de codificación ha añadido el componente de alta frecuencia a la imagen ampliada desde otro parámetro para controlar un procedimiento de adición en la unidad de predicción compensada por movimiento 70. En el caso de usar otro parámetro para determinar si el dispositivo de codificación ha agregado el componente de alta frecuencia a la imagen ampliada, se puede usar un parámetro, tal como el tamaño del vector de movimiento o una variación en el campo del vector de movimiento en consideración de áreas adyacentes. La unidad de predicción compensada por movimiento 70 comparte el tipo del parámetro con el dispositivo de codificación y determina si el dispositivo de codificación ha agregado el componente de alta frecuencia a la imagen ampliada. Como resultado, el dispositivo de codificación de imagen en movimiento no tiene que multiplexar la información de control sobre el procedimiento de adición directamente en el flujo de bits 30, pudiendo así mejorar la eficiencia de compresión.
[0183] La unidad de predicción compensada por movimiento 70 puede llevar a cabo el procedimiento de generación de una imagen de referencia que tiene precisión de píxeles virtuales solo cuando los vectores de movimiento incluidos en los parámetros de predicción óptimos 18a que se emiten desde el dispositivo de codificación (es decir, los parámetros de predicción óptimos 63 en el dispositivo de decodificación) indican la precisión de píxeles virtuales. En esta estructura, la unidad de predicción compensada por movimiento 9 conmuta entre el uso de la imagen de referencia 15 almacenada en la memoria de cuadro de predicción compensada por movimiento 14, y la generación y uso de una imagen de referencia 207 que tiene precisión de píxeles virtuales mediante la unidad de generación de imágenes interpoladas 43 según el vector de movimiento, y genera una imagen de predicción 17 a partir de la imagen de referencia 15 o la imagen de referencia 207 que tiene precisión de píxeles virtuales.
[0184] Como alternativa, la unidad de predicción compensada por movimiento se puede construir de tal manera que lleve a cabo el procedimiento que se muestra en la Fig. 16 en la imagen de referencia que aún no se ha almacenado en la memoria de cuadro de predicción compensada por movimiento 75 y almacene la imagen de referencia que tiene una precisión de píxeles virtuales en la que se ha llevado a cabo el procedimiento de ampliación y en la que se ha corregido un componente de alta frecuencia en la memoria de cuadro de predicción compensada por movimiento 75. En el caso de esta estructura, aunque el tamaño de una memoria que debe prepararse como la memoria de cuadro de predicción compensada por movimiento 75 aumenta, no es necesario llevar a cabo por duplicado el procedimiento que se muestra en la Fig. 16 cuando el número de veces del vector de movimiento señala un píxel en la misma posición de muestra virtual. Por lo tanto, la cantidad de cálculo se puede reducir. Además, en un caso en el que el dispositivo de decodificación conoce de antemano el intervalo de desplazamiento al que señala el vector de movimiento, la unidad de predicción compensada por movimiento 70 se puede construir de tal manera que lleve a cabo el procedimiento que se muestra en la Fig. 16 en la región objetivo mientras que limita esta región solo al intervalo. Lo que es necesario es simplemente hacer que el dispositivo de decodificación conozca el intervalo de
desplazamiento al que señala el vector de movimiento, por ejemplo, multiplexando un intervalo de valores que muestra el intervalo de desplazamiento al que señala el vector de movimiento en el flujo de bits 60 para transmitir el intervalo de valores al dispositivo de decodificación, o hacer que tanto el dispositivo de codificación como el dispositivo de decodificación determinen y establezcan mutuamente el intervalo de valores en sus operaciones.
[0185] Como se mencionó anteriormente, el dispositivo de codificación de imagen en movimiento según la Realización 3 está construido de tal manera que la unidad de predicción compensada por movimiento 9 tiene la unidad de generación de imágenes interpoladas 43 para llevar a cabo un procedimiento de ampliación en la imagen de referencia 15 almacenada en la memoria de cuadro de predicción compensada por movimiento 14, y también corrige un componente de alta frecuencia para generar una imagen de referencia 207 que tiene precisión de píxeles virtuales, y conmuta entre el uso de la imagen de referencia 15 o la generación y uso de la imagen de referencia 207 que tiene precisión de píxeles virtuales según el vector de movimiento para generar una imagen de predicción 17, incluso cuando se lleva a cabo una compresión alta en la señal de vídeo introducida 1 que incluye muchos componentes de alta frecuencia, tales como bordes finos, el dispositivo de codificación de imagen en movimiento puede generar la imagen de predicción 17 que se generará mediante el uso de una predicción compensada por movimiento a partir de la imagen de referencia que incluye muchos componentes de alta frecuencia, pudiendo así codificar por compresión la señal de vídeo introducida de manera eficiente.
[0186] Además, el dispositivo de decodificación de imagen en movimiento según la Realización 3 está construido de tal manera que la unidad de predicción compensada por movimiento 70 tiene la unidad de generación de imágenes interpoladas para generar una imagen de referencia que tiene precisión de píxeles virtuales según el mismo procedimiento que el llevado a cabo por el dispositivo de codificación de imagen en movimiento, y conmuta entre el uso de la imagen de referencia 76 almacenada en la memoria de cuadro de predicción compensada por movimiento 75 o la generación y uso de la imagen de referencia que tiene precisión de píxeles virtuales según el vector de movimiento multiplexado en el flujo de bits 60 para generar una imagen de predicción 72, el dispositivo de decodificación de imagen en movimiento puede decodificar correctamente el flujo de bits codificado por el dispositivo de codificación de imagen en movimiento según la Realización 3.
[0187] La unidad de generación de imágenes interpoladas 43 según la Realización 3 mencionada anteriormente lleva a cabo el procedimiento de superresolución basado en la técnica mencionada anteriormente descrita por W. T. Freeman y col. (2000) para generar una imagen de referencia 207 que tiene precisión de píxeles virtuales. Sin embargo, el procedimiento de superresolución no se limita al basado en la técnica mencionada anteriormente, y la unidad de generación de imágenes interpoladas se puede construir de tal manera que utilice otra técnica de superresolución arbitraria para generar una imagen de referencia 207 que tenga una precisión de píxeles virtuales.
[0188] Además, en un caso en el que el dispositivo de codificación de imagen en movimiento según cualquiera de las Realizaciones 1 a 3 mencionadas anteriormente se construye a partir de una computadora, se describe un programa de codificación de imagen en movimiento en el que los procedimientos llevados a cabo por la unidad de división de bloques 2, la unidad de control de codificación 3, la unidad de conmutación 6, la unidad de intrapredicción 8, la unidad de predicción compensada por movimiento 9, la memoria de cuadro de predicción compensada por movimiento 14, la unidad de transformación/cuantización 19, la unidad de cuantización inversa/transformación inversa 22, la unidad de codificación de longitud variable 23, la unidad de filtro de bucle 27 y la memoria 28 para intrapredicción se pueden almacenar en una memoria de la computadora, y se puede hacer que una CPU de la computadora ejecute el programa de codificación de imagen en movimiento almacenado en la memoria. De manera similar, en un caso en el que el dispositivo de decodificación de imagen en movimiento según cualquiera de las Realizaciones 1 a 3 mencionadas anteriormente se construye a partir de una computadora, un programa de decodificación de imagen en movimiento en el que se describen los procedimientos llevados a cabo por la unidad de decodificación de longitud variable 61, la unidad de cuantización inversa/transformación inversa 66, la unidad de conmutación 68, la unidad de intrapredicción 69, la unidad de predicción compensada por movimiento 70, la memoria de cuadro de predicción compensada por movimiento 75, la memoria 77 para intrapredicción y la unidad de filtro de bucle 78 se pueden almacenar en una memoria de la computadora, y se puede hacer que una CPU de la computadora ejecute el programa de decodificación de imagen en movimiento almacenado en la memoria.
APLICACIÓN INDUSTRIAL
[0189] Debido a que el dispositivo de codificación de imagen en movimiento y el dispositivo de decodificación de imagen en movimiento según la presente invención pueden conmutar entre tamaños de bloque de transformación de manera adaptativa a una imagen en movimiento introducida para cada región que sirve como una unidad para la predicción compensada por movimiento en cada macrobloque, el dispositivo de codificación de imagen en movimiento y el dispositivo de decodificación de imagen en movimiento según la presente invención son adecuados para su uso como un dispositivo de codificación de imagen en movimiento que divide una imagen en movimiento en regiones predeterminadas para codificar la imagen en movimiento sobre una base por región y como un dispositivo de decodificación de imagen en movimiento que decodifica una imagen en movimiento codificada sobre una base por región predeterminada.
EXPLICACIONES DE NÚMEROS DE REFERENCIA
[0190] 1 señal de vídeo introducida, 2 unidad de división de bloques, 3 unidad de control de codificación, 4 tamaño de macrobloque, 5 imagen de macro/subbloque, 6 unidad de conmutación, 7 modo de codificación, 7a modo de codificación óptimo, 8 unidad de intrapredicción, 9 unidad de predicción compensada por movimiento, 10 parámetro de predicción, 10a parámetro de predicción óptimo, 11 imagen de predicción, 12 unidad de sustracción, 13 señal de diferencia de predicción, 13a señal diferencial de predicción óptima, 14 memoria de cuadro de predicción compensada por movimiento, 15 imagen de referencia, 17 imagen de predicción, 18 parámetro de predicción, 18a parámetro de predicción óptimo, 19 unidad de transformación/cuantización, 20 parámetro de compresión, 20a parámetro de compresión óptimo, 21 datos comprimidos, 22 unidad de cuantización/transformación inversa, 23 unidad de codificación de longitud variable, 24 señal de diferencia de predicción decodificada local, 25 unidad de adición, 26 señal de imagen decodificada local, 27 unidad de filtro de bucle, 28 memoria para intrapredicción, 29 imagen decodificada local, 30 flujo de bits, 40 unidad de división de región de compensación de movimiento, 41 imagen de bloque de región de compensación de movimiento, 42 unidad de detección de movimiento, 43 unidad de generación de imágenes interpoladas, 44 vector de movimiento, 45 imagen de predicción, 50 unidad de división de tamaño de bloque de transformación, 51 bloque de objeto de transformación, 52 unidad de transformación, 53 coeficiente de transformación, 54 unidad de cuantización, 60 flujo de bits, 61 unidad de decodificación de longitud variable, 62 modo de codificación óptimo, 63 parámetro de predicción óptimo, 64 datos comprimidos, 65 parámetro de compresión óptimo, 66 unidad de cuantización inversa/transformación inversa, 67 valor decodificado de señal de diferencia de predicción, 68 unidad de conmutación, 69 unidad de intrapredicción, 70 unidad de predicción compensada por movimiento, 71 imagen de predicción, 72 imagen de predicción, 73 unidad de adición, 74 y 74a imagen decodificada, 75 memoria de cuadro de predicción compensada por movimiento, 76 imagen de referencia, 77 memoria para intrapredicción, 78 unidad de filtro de bucle, 79 imagen reproducida, 90 unidad de inicialización, 91 indicador de inicialización de información de contexto, 92 unidad de binarización, 93 unidad de generación de información de frecuencia, 94 información de frecuencia, 95 unidad de actualización de tabla de binarización, 96 memoria de información de contexto, 97 memoria de tabla de probabilidad, 98 memoria de tabla de transición de estado, 99 unidad de generación de contexto, 100 señal indicadora de tipo, 101 información de bloques periféricos, 102 información de identificación de contexto, 103 señal binaria, 104 unidad de operación de procesamiento de codificación aritmética, 105 memoria de tabla de binarización, 106 información de contexto, 107 número de tabla de probabilidad, 108 probabilidad de ocurrencia de MPS, 109 valor de símbolo, 110 número de tabla de probabilidad, 111 secuencia de bits codificada, 112 información de identificación de actualización de tabla de binarización, 113 indicador de actualización de tabla de binarización, 120 unidad de inicialización, 121 información de inicialización de contexto, 122 unidad de generación de contexto, 123 señal indicadora de tipo, 124 información de bloques periféricos, 126 información de identificación de contexto, 127 unidad de operación de procesamiento de decodificación aritmética, 128 memoria de información de contexto, 129 información de contexto, 130 número de tabla de probabilidad, 131 memoria de tabla de probabilidad, 132 probabilidad de ocurrencia de MPS, 133 secuencia de bits codificada, 134 valor de símbolo, 135 memoria de tabla de transición de estado, 136 número de tabla de probabilidad, 137 señal binaria, 138 unidad de binarización inversa, 139 tabla de binarización, 140 valor decodificado, 141 unidad de actualización de tabla de binarización, 142 indicador de actualización de tabla de binarización, 143 memoria de tabla de binarización, 144 información de identificación de actualización de tabla de binarización, 200 unidad de procesamiento de reducción de imagen, 201a y 201b unidad de extracción de característica de alta frecuencia, 202 unidad de cálculo de correlación, 203 unidad de estimación de componente de alta frecuencia, 204 memoria de patrón de componente de alta frecuencia, 205 unidad de procedimiento de ampliación de imagen, 206 unidad de adición, 207 imagen de referencia que tiene precisión de píxeles virtuales.
Claims (5)
1. Un dispositivo de decodificación de imagen en movimiento que decodifica un flujo de bits generado al dividir una imagen de un vídeo en una pluralidad de macrobloques y al codificar por compresión los macrobloques y que obtiene la imagen en movimiento, comprendiendo el dispositivo de decodificación de imagen en movimiento: una unidad de predicción compensada por movimiento que genera una imagen de interpredicción de uno de los macrobloques sobre la base de información de modo de codificación que indica una asignación de subbloque para el procesamiento de interpredicción en el macrobloque; y
una unidad de decodificación de longitud variable para la decodificación por entropía del flujo de bits con el fin de obtener una cadena binaria y para la obtención de la información de modo de codificación de la cadena binaria, caracterizado porque la unidad de decodificación de longitud variable obtiene un identificador del flujo de bits para uno de los macrobloques, el identificador especificando una tabla de una pluralidad de tablas de binarización, cada una de las cuales define una asignación de cadena binaria a la información de modo de codificación, y obtiene información para identificar una posición de dicho macrobloque, y obtiene la información de modo de codificación mediante la binarización inversa de la cadena binaria según la tabla de binarización especificada.
2. Un procedimiento de decodificación de imagen en movimiento para decodificar un flujo de bits generado al dividir una imagen de un vídeo en una pluralidad de macrobloques y al codificar por compresión los macrobloques y obtener la imagen en movimiento, comprendiendo el procedimiento de decodificación de imagen en movimiento: obtener una cadena binaria mediante la decodificación por entropía del flujo de bits;
obtener información de modo de codificación mediante binarización inversa de la cadena binaria según una tabla de binarización que se especifica con un identificador de una pluralidad de tablas de binarización, cada una de las cuales define una asignación de cadena binaria a la información de modo de codificación, siendo el identificador obtenido del flujo de bits para uno de los macrobloques;
obtener información para identificar una posición de dicho macrobloque; y
generar una imagen de interpredicción de uno de los macrobloques sobre la base de la información de modo de codificación, la información de modo de codificación indicando una asignación de subbloque para el procesamiento de interpredicción en el macrobloque.
3. Un dispositivo de codificación de imagen en movimiento que genera un flujo de bits al dividir una imagen de un vídeo en una pluralidad de macrobloques y al codificar por compresión los macrobloques, comprendiendo el dispositivo de codificación de imagen en movimiento:
una unidad de predicción compensada por movimiento que genera una imagen de interpredicción de uno de los macrobloques sobre la base de información de modo de codificación que indica una asignación de subbloque para el procesamiento de interpredicción en el macrobloque; y
una unidad de codificación de longitud variable para binarizar la información de modo de codificación en una cadena binaria y para codificar por entropía la cadena binaria en el flujo de bits,
en el que la unidad de codificación de longitud variable lleva a cabo la binarización según una tabla de binarización especificada con un identificador de una pluralidad de tablas de binarización, cada una de las cuales define una asignación de cadena binaria a la información de modo de codificación, codifica el identificador en el flujo de bits para uno de los macrobloques y codifica información para identificar una posición de dicho macrobloque.
4. Un procedimiento de codificación de imagen en movimiento para generar un flujo de bits al dividir una imagen de un vídeo en una pluralidad de macrobloques y al codificar por compresión los macrobloques, comprendiendo el procedimiento de codificación de imagen en movimiento:
generar una imagen de interpredicción de uno de los macrobloques sobre la base de información de modo de codificación que indica una asignación de subbloque para el procesamiento de interpredicción en el macrobloque; binarizar la información de modo de codificación en una cadena binaria según una tabla de binarización que se especifica con un identificador de una pluralidad de tablas de binarización, cada una de las cuales define una asignación de cadena binaria a la información de modo de codificación, siendo el identificador codificado en el flujo de bits para uno de los macrobloques; codificar información para identificar una posición de dicho macrobloque; y codificar por entropía la cadena binaria en el flujo de bits.
5. Un flujo de bits que se genera al dividir una imagen de un vídeo en una pluralidad de macrobloques y al codificar por compresión los macrobloques, comprendiendo el flujo de bits:
una diferencia de predicción generada al sustraer una imagen de predicción de uno de los macrobloques del macrobloque, siendo la imagen de predicción generada sobre la base de información de modo de codificación que indica una asignación de subbloque para el procesamiento de interpredicción en el macrobloque;
un identificador que especifica una de una pluralidad de tablas de binarización, cada una de las cuales define una asignación de cadena binaria a la información de modo de codificación;
una cadena binaria codificada con codificación por entropía, siendo la cadena binaria obtenida mediante la binarización de la información de modo de codificación según la tabla de binarización especificada por el identificador para uno de los macrobloques; e información para identificar una posición de dicho macrobloque.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010090534 | 2010-04-09 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2899780T3 true ES2899780T3 (es) | 2022-03-14 |
Family
ID=44762284
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES16181069T Active ES2899780T3 (es) | 2010-04-09 | 2011-03-31 | Dispositivo y procedimiento de codificación de imagen en movimiento, dispositivo y procedimiento de decodificación de imagen en movimiento, flujo de bits |
Country Status (14)
| Country | Link |
|---|---|
| US (6) | US20130028326A1 (es) |
| EP (2) | EP3101897B1 (es) |
| JP (8) | JPWO2011125313A1 (es) |
| KR (6) | KR20150013776A (es) |
| CN (4) | CN108462874B (es) |
| BR (1) | BR112012025206B1 (es) |
| CA (1) | CA2795425C (es) |
| ES (1) | ES2899780T3 (es) |
| MX (3) | MX353107B (es) |
| PL (1) | PL3101897T3 (es) |
| RU (7) | RU2523071C1 (es) |
| SG (3) | SG10202001623RA (es) |
| TW (4) | TWI765223B (es) |
| WO (1) | WO2011125313A1 (es) |
Families Citing this family (129)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103299637B (zh) * | 2011-01-12 | 2016-06-29 | 三菱电机株式会社 | 图像编码装置、图像译码装置、图像编码方法以及图像译码方法 |
| JP2013012995A (ja) * | 2011-06-30 | 2013-01-17 | Sony Corp | 画像処理装置および方法 |
| US8571092B2 (en) * | 2011-10-14 | 2013-10-29 | Texas Instruments Incorporated | Interconnect coding method and apparatus |
| WO2013056129A1 (en) | 2011-10-14 | 2013-04-18 | Advanced Micro Devices, Inc. | Region-based image compression |
| JP6034010B2 (ja) * | 2011-10-24 | 2016-11-30 | ソニー株式会社 | 符号化装置、符号化方法、およびプログラム |
| EP2775716A4 (en) * | 2011-10-31 | 2015-06-17 | Mitsubishi Electric Corp | MOTION DEVICE FOR MOTION PICTURES DECODER FOR MOTION PICTURES, MOTION PROCEDURE FOR MOTION PICTURES AND DECODING PROCESS FOR MOTION PICTURES |
| CN103096053B (zh) | 2011-11-04 | 2015-10-07 | 华为技术有限公司 | 一种变换模式的编解码方法和装置 |
| CN103108177B (zh) * | 2011-11-09 | 2016-11-23 | 华为技术有限公司 | 图像编码方法及图像编码装置 |
| TWI658725B (zh) * | 2011-12-28 | 2019-05-01 | JVC Kenwood Corporation | 動態影像解碼裝置、動態影像解碼方法及動態影像解碼程式 |
| JP5551837B2 (ja) * | 2012-01-19 | 2014-07-16 | 三菱電機株式会社 | 画像復号装置、画像符号化装置、画像復号方法及び画像符号化方法 |
| US11039138B1 (en) | 2012-03-08 | 2021-06-15 | Google Llc | Adaptive coding of prediction modes using probability distributions |
| RU2632409C1 (ru) * | 2012-04-15 | 2017-10-04 | Самсунг Электроникс Ко., Лтд. | Способ обновления параметров для энтропийного кодирования и декодирования уровня коэффициентов преобразования, а также устройство энтропийного кодирования и устройство энтропийного декодирования уровня коэффициентов преобразования с его использованием |
| CA2871668A1 (en) * | 2012-04-24 | 2013-10-31 | Lyrical Labs Video Compression Technology, LLC | Macroblock partitioning and motion estimation using object analysis for video compression |
| KR101436369B1 (ko) * | 2013-06-25 | 2014-09-11 | 중앙대학교 산학협력단 | 적응적 블록 분할을 이용한 다중 객체 검출 장치 및 방법 |
| US10356437B2 (en) | 2013-07-22 | 2019-07-16 | Renesas Electronics Corporation | Moving image encoding apparatus including padding processor for adding padding data to moving image and operation method thereof |
| JP5719410B2 (ja) * | 2013-07-25 | 2015-05-20 | 日本電信電話株式会社 | 画像符号化方法、画像符号化装置及び画像符号化プログラム |
| KR20150133825A (ko) * | 2013-09-09 | 2015-11-30 | 닛본 덴끼 가부시끼가이샤 | 영상 부호화 장치, 영상 부호화 방법 및 프로그램 |
| US9534469B2 (en) | 2013-09-27 | 2017-01-03 | Baker Hughes Incorporated | Stacked tray ball dropper for subterranean fracking operations |
| JP6147368B2 (ja) * | 2014-02-03 | 2017-06-14 | 三菱電機株式会社 | 画像符号化装置、画像復号装置、符号化ストリーム変換装置、画像符号化方法、及び画像復号方法 |
| KR102264840B1 (ko) * | 2014-11-27 | 2021-06-15 | 삼성전자주식회사 | 비디오 프레임 인코딩 회로, 그것의 인코딩 방법 및 그것을 포함하는 비디오 데이터 송수신 장치 |
| FR3029333A1 (fr) * | 2014-11-27 | 2016-06-03 | Orange | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
| CN106331722B (zh) * | 2015-07-03 | 2019-04-26 | 华为技术有限公司 | 图像预测方法和相关设备 |
| US10123045B2 (en) * | 2015-07-24 | 2018-11-06 | Qualcomm Incorporated | Modification to block size for transform mode in display stream compression |
| CN115278229B (zh) | 2015-11-11 | 2024-12-10 | 三星电子株式会社 | 对视频进行解码的设备和对视频进行编码的设备 |
| US10142635B2 (en) | 2015-12-18 | 2018-11-27 | Blackberry Limited | Adaptive binarizer selection for image and video coding |
| US20170180757A1 (en) * | 2015-12-18 | 2017-06-22 | Blackberry Limited | Binarizer selection for image and video coding |
| KR102411911B1 (ko) * | 2015-12-24 | 2022-06-22 | 삼성전자주식회사 | 프레임 레이트 변환 장치 및 그 프레임 레이트 변환 방법 |
| US10560702B2 (en) | 2016-01-22 | 2020-02-11 | Intel Corporation | Transform unit size determination for video coding |
| JP6408724B2 (ja) * | 2016-01-25 | 2018-10-17 | 京セラ株式会社 | 通信方法及び無線端末 |
| KR102824987B1 (ko) * | 2016-10-12 | 2025-06-26 | 삼성전자주식회사 | 영상 처리 방법, 그를 이용한 영상 복호화 및 부호화 방법 |
| JP6965887B2 (ja) * | 2016-09-12 | 2021-11-10 | 日本電気株式会社 | イントラ予測モード決定方法、イントラ予測モード決定装置およびイントラ予測モード決定プログラム |
| JP6700489B2 (ja) * | 2016-09-30 | 2020-05-27 | 華為技術有限公司Huawei Technologies Co.,Ltd. | インター予測を介する画像符号化および復号のための方法および装置 |
| EP3968637A1 (en) * | 2016-11-21 | 2022-03-16 | Panasonic Intellectual Property Corporation of America | Devices and methods for image coding and decoding using a block size dependent split ratio |
| US9959586B1 (en) * | 2016-12-13 | 2018-05-01 | GoAnimate, Inc. | System, method, and computer program for encoding and decoding a unique signature in a video file as a set of watermarks |
| RU2722394C1 (ru) * | 2017-03-21 | 2020-05-29 | ЭлДжи ЭЛЕКТРОНИКС ИНК. | Способ преобразования в системе кодирования изображений и устройство для его осуществления |
| CN109391814B (zh) | 2017-08-11 | 2023-06-06 | 华为技术有限公司 | 视频图像编码和解码的方法、装置及设备 |
| EP3657793A4 (en) | 2017-12-06 | 2021-03-17 | Fujitsu Limited | MODE INFORMATION ENCODING AND DECODING METHOD, DEVICE AND ELECTRONIC DEVICE |
| CN110035287B (zh) * | 2018-01-12 | 2023-05-09 | 富士通株式会社 | 对统一转换单元模式进行分组标识的方法、装置和电子设备 |
| US11238046B2 (en) * | 2018-02-19 | 2022-02-01 | Nippon Telegraph And Telephone Corporation | Information management device, information management method, and information management program |
| KR102516233B1 (ko) | 2018-04-02 | 2023-03-30 | 엘지전자 주식회사 | 움직임 벡터에 기반한 영상 코딩 방법 및 그 장치 |
| US10986354B2 (en) * | 2018-04-16 | 2021-04-20 | Panasonic Intellectual Property Corporation Of America | Encoder, decoder, encoding method, and decoding method |
| TWI692939B (zh) * | 2018-08-14 | 2020-05-01 | 鈺創科技股份有限公司 | 過濾訊號的數位濾波器 |
| EP3857896A4 (en) | 2018-11-22 | 2021-12-01 | Beijing Bytedance Network Technology Co. Ltd. | COORDINATION PROCESS FOR INTER-PREDICTION BASED ON SUB-BLOCKS |
| TWI737141B (zh) | 2019-01-31 | 2021-08-21 | 聯發科技股份有限公司 | 視訊編碼中用於畫面內分區之轉換類型分配方法和裝置 |
| CN113366845B (zh) | 2019-01-31 | 2024-08-16 | 寰发股份有限公司 | 视频编码中结合帧间和帧内预测的方法和装置 |
| WO2020156549A1 (en) | 2019-02-02 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Buffer access methods for intra block copy in video coding |
| SG11202107959WA (en) | 2019-02-02 | 2021-08-30 | Beijing Bytedance Network Technology Co Ltd | Buffer management for intra block copy in video coding |
| CN121967699A (zh) | 2019-02-03 | 2026-05-01 | 北京字节跳动网络技术有限公司 | Mv精度和mv差编解码之间的相互作用 |
| CN121173966A (zh) | 2019-02-14 | 2025-12-19 | 北京字节跳动网络技术有限公司 | 解码器侧细化工具的选择性应用 |
| US10939107B2 (en) | 2019-03-01 | 2021-03-02 | Sony Corporation | Embedded codec circuitry for sub-block based allocation of refinement bits |
| CN113545068B (zh) | 2019-03-01 | 2023-09-15 | 北京字节跳动网络技术有限公司 | 用于视频编解码中的帧内块复制的基于顺序的更新 |
| EP3915265A4 (en) | 2019-03-01 | 2022-06-22 | Beijing Bytedance Network Technology Co., Ltd. | DIRECTION-BASED PREDICTION FOR INTRA BLOCK COPY IN VIDEO CODING |
| HUE073560T2 (hu) | 2019-03-03 | 2026-01-28 | Huawei Tech Co Ltd | Kódoló, dekódoló és transzformációs folyamat során alkalmazott kapcsolódó eljárások |
| KR20240132530A (ko) | 2019-03-04 | 2024-09-03 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩에서 인트라 블록 복사의 구현 형태 |
| JP2022068378A (ja) * | 2019-03-08 | 2022-05-10 | ソニーグループ株式会社 | 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法 |
| WO2020182093A1 (en) | 2019-03-08 | 2020-09-17 | Beijing Bytedance Network Technology Co., Ltd. | Signaling of reshaping information in video processing |
| KR20210145754A (ko) | 2019-04-12 | 2021-12-02 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 행렬 기반 인트라 예측에서의 산출 |
| WO2020211770A1 (en) | 2019-04-15 | 2020-10-22 | Beijing Bytedance Network Technology Co., Ltd. | Temporal prediction of parameters in non-linear adaptive loop filter |
| CN113748676B (zh) | 2019-04-16 | 2024-05-10 | 北京字节跳动网络技术有限公司 | 帧内编解码模式下的矩阵推导 |
| WO2020211810A1 (en) | 2019-04-16 | 2020-10-22 | Beijing Bytedance Network Technology Co., Ltd. | On adaptive loop filtering for video coding |
| PH12021552544A1 (en) | 2019-04-18 | 2022-07-04 | Beijing Bytedance Network Tech Co Ltd | Restriction on applicability of cross component mode |
| CN113711612B (zh) | 2019-04-20 | 2023-05-26 | 北京字节跳动网络技术有限公司 | 视频编解码中的色度语法元素的信令 |
| BR112021019675A2 (pt) | 2019-04-23 | 2021-12-07 | Beijing Bytedance Network Tech Co Ltd | Método para processamento de mídia visual, aparelho codificador de vídeo, aparelho decodificador de vídeo, e, mídia legível por computador |
| CN113728647B (zh) | 2019-05-01 | 2023-09-05 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测的上下文编码 |
| WO2020224629A1 (en) | 2019-05-08 | 2020-11-12 | Beijing Bytedance Network Technology Co., Ltd. | Conditions for applicability of cross-component coding |
| SG11202112279WA (en) | 2019-05-11 | 2021-12-30 | Beijing Bytedance Network Technology Co Ltd | Selective use of coding tools in video processing |
| WO2020233660A1 (en) | 2019-05-21 | 2020-11-26 | Beijing Bytedance Network Technology Co., Ltd. | Syntax-based motion candidate derivation in sub-block merge mode |
| SG11202112517QA (en) | 2019-05-22 | 2021-12-30 | Beijing Bytedance Network Technology Co Ltd | Matrix-based intra prediction using upsampling |
| WO2020238837A1 (en) | 2019-05-25 | 2020-12-03 | Beijing Bytedance Network Technology Co., Ltd. | Coding of block vectors for intra block copy-coded blocks |
| CN114051735B (zh) | 2019-05-31 | 2024-07-05 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测中的一步下采样过程 |
| CN113906758B (zh) | 2019-05-31 | 2025-06-20 | 字节跳动有限公司 | 调色板模式与帧内块复制预测 |
| CN117395397A (zh) | 2019-06-04 | 2024-01-12 | 北京字节跳动网络技术有限公司 | 使用临近块信息的运动候选列表构建 |
| JP2022534320A (ja) | 2019-06-05 | 2022-07-28 | 北京字節跳動網絡技術有限公司 | マトリクスベースイントラ予測のためのコンテキスト決定 |
| US11973948B2 (en) * | 2019-06-19 | 2024-04-30 | Sony Group Corporation | Image processing device and method |
| EP3973707A4 (en) | 2019-06-22 | 2022-08-31 | Beijing Bytedance Network Technology Co., Ltd. | CHROMA REST SCALE SYNTAX ELEMENT |
| JP7436527B2 (ja) | 2019-06-25 | 2024-02-21 | 北京字節跳動網絡技術有限公司 | 動きベクトルの差に関する制限 |
| KR102612765B1 (ko) | 2019-06-28 | 2023-12-13 | 바이트댄스 아이엔씨 | 변환 스킵 모드에서 양자화 파라미터를 수정하는 기술 |
| JP7328373B2 (ja) | 2019-06-28 | 2023-08-16 | バイトダンス インコーポレイテッド | スクリーンコンテンツ符号化におけるクロマイントラモードの導出 |
| CN117294841A (zh) | 2019-07-06 | 2023-12-26 | 北京字节跳动网络技术有限公司 | 用于视频编解码中的帧内块复制的虚拟预测缓冲 |
| CN114128280B (zh) | 2019-07-07 | 2023-11-14 | 北京字节跳动网络技术有限公司 | 色度残差缩放的信令通知 |
| EP3997879A4 (en) | 2019-07-09 | 2023-03-22 | Alibaba Group Holding Limited | RESOLUTION-ADAPTIVE VIDEO CODING |
| KR102635519B1 (ko) | 2019-07-10 | 2024-02-07 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩에서 인트라 블록 카피를 위한 샘플 식별 |
| KR102695788B1 (ko) | 2019-07-11 | 2024-08-14 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩에서 인트라 블록 복사를 위한 비트스트림 적합 제약 |
| CN114128258B (zh) | 2019-07-14 | 2023-12-22 | 北京字节跳动网络技术有限公司 | 视频编解码中的变换块尺寸的限制 |
| EP3997869A4 (en) | 2019-08-10 | 2022-10-26 | Beijing Bytedance Network Technology Co., Ltd. | Subpicture dependent signaling in video bitstreams |
| KR102808776B1 (ko) | 2019-08-13 | 2025-05-15 | 두인 비전 컴퍼니 리미티드 | 서브 블록 기반 인터 예측의 모션 정밀도 |
| EP4000266A4 (en) | 2019-08-20 | 2022-10-26 | Beijing Bytedance Network Technology Co., Ltd. | Residual coding for transform skipped blocks |
| CN117714683A (zh) | 2019-09-02 | 2024-03-15 | 北京字节跳动网络技术有限公司 | 基于色彩格式的视频区分割 |
| BR112022004606A2 (pt) | 2019-09-12 | 2022-05-31 | Bytedance Inc | Método de processamento de vídeo, aparelho para processar dados de vídeo e meios de armazenamento e de gravação não transitórios legíveis por computador |
| EP4014495A4 (en) | 2019-09-14 | 2022-11-02 | ByteDance Inc. | CHROMINANCE QUANTIFICATION PARAMETER IN VIDEO CODING |
| WO2021052491A1 (en) | 2019-09-19 | 2021-03-25 | Beijing Bytedance Network Technology Co., Ltd. | Deriving reference sample positions in video coding |
| KR102649584B1 (ko) | 2019-09-21 | 2024-03-21 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 크로마 인트라 모드에 기초한 크기 제한 |
| KR102735189B1 (ko) | 2019-09-23 | 2024-11-28 | 두인 비전 컴퍼니 리미티드 | 가상 파이프라인 데이터 유닛에 기초한 인트라 블록 복사 가상 버퍼의 설정 |
| WO2021057996A1 (en) | 2019-09-28 | 2021-04-01 | Beijing Bytedance Network Technology Co., Ltd. | Geometric partitioning mode in video coding |
| JP2021061501A (ja) * | 2019-10-04 | 2021-04-15 | シャープ株式会社 | 動画像変換装置及び方法 |
| WO2021072177A1 (en) | 2019-10-09 | 2021-04-15 | Bytedance Inc. | Cross-component adaptive loop filtering in video coding |
| CN114556918B (zh) | 2019-10-12 | 2025-08-12 | 北京字节跳动网络技术有限公司 | 细化视频编解码工具的使用和信令 |
| JP7414980B2 (ja) | 2019-10-13 | 2024-01-16 | 北京字節跳動網絡技術有限公司 | 参照ピクチャリサンプリングと映像コーディングツールとの間の相互作用 |
| CN114631321B (zh) | 2019-10-18 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 子图片与环路滤波之间的相互影响 |
| EP4035379A4 (en) | 2019-10-23 | 2023-03-15 | Beijing Bytedance Network Technology Co., Ltd. | CALCULATION FOR MULTIPLE CODING TOOLS |
| KR20260003392A (ko) | 2019-10-28 | 2026-01-06 | 두인 비전 컴퍼니 리미티드 | 색상 성분에 기초한 신택스 시그널링 및 파싱 |
| WO2021083257A1 (en) | 2019-10-29 | 2021-05-06 | Beijing Bytedance Network Technology Co., Ltd. | Cross-component adaptive loop filter |
| CN115280774B (zh) | 2019-12-02 | 2025-08-19 | 抖音视界有限公司 | 视觉媒体处理的方法、装置及非暂时性计算机可读存储介质 |
| WO2021118977A1 (en) | 2019-12-09 | 2021-06-17 | Bytedance Inc. | Using quantization groups in video coding |
| JP7393550B2 (ja) | 2019-12-11 | 2023-12-06 | 北京字節跳動網絡技術有限公司 | クロス成分適応ループフィルタリングのためのサンプルパディング |
| MX2022007503A (es) | 2019-12-27 | 2022-07-04 | Beijing Bytedance Network Tech Co Ltd | Se?alizacion de tipos de corte en encabezados de imagenes de video. |
| KR102750625B1 (ko) | 2020-01-05 | 2025-01-09 | 두인 비전 컴퍼니 리미티드 | 비디오 코딩을 위한 일반적인 제약 정보 |
| WO2021143896A1 (en) | 2020-01-18 | 2021-07-22 | Beijing Bytedance Network Technology Co., Ltd. | Adaptive colour transform in image/video coding |
| KR102819451B1 (ko) | 2020-02-05 | 2025-06-13 | 두인 비전 컴퍼니 리미티드 | 로컬 이중 트리용 팔레트 모드 |
| CN115362673B (zh) | 2020-02-14 | 2025-12-02 | 抖音视界有限公司 | 视频比特流中的并置图片指示 |
| WO2021180022A1 (en) | 2020-03-07 | 2021-09-16 | Beijing Bytedance Network Technology Co., Ltd. | Handling of transform skip mode in video coding |
| EP4104428A4 (en) | 2020-03-16 | 2023-05-03 | ByteDance Inc. | DIRECT ACCESS POINT ACCESS UNIT IN SCALABLE VIDEO ENCODING |
| WO2021188527A1 (en) | 2020-03-17 | 2021-09-23 | Bytedance Inc. | Using video parameter set in video coding |
| WO2021185306A1 (en) | 2020-03-18 | 2021-09-23 | Beijing Bytedance Network Technology Co., Ltd. | Intra block copy buffer and palette predictor update |
| KR102850346B1 (ko) | 2020-03-19 | 2025-08-25 | 바이트댄스 아이엔씨 | 레퍼런스 픽처 순서에 대한 제약들 |
| WO2021188801A1 (en) | 2020-03-20 | 2021-09-23 | Bytedance Inc. | Coding of neighboring subpictures |
| WO2021190436A1 (en) | 2020-03-21 | 2021-09-30 | Beijing Bytedance Network Technology Co., Ltd. | Reference picture resampling |
| KR20220157950A (ko) | 2020-03-23 | 2022-11-29 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 어파인 머지 및 어파인 모션 벡터 예측 모드에 대한 예측 리파인먼트 |
| BR112022020449A2 (pt) | 2020-04-10 | 2022-11-29 | Beijing Bytedance Network Tech Co Ltd | Método e aparelho para processar dados de vídeo, e, meios de armazenamento e de gravação legíveis por computador não transitórios |
| JP7525639B2 (ja) | 2020-04-19 | 2024-07-30 | 北京字節跳動網絡技術有限公司 | 変換スキップ残差コーディング |
| CN115812304A (zh) | 2020-06-20 | 2023-03-17 | 抖音视界有限公司 | 具有不同的编解码块大小的层间预测 |
| EP4173290A4 (en) | 2020-06-30 | 2024-01-10 | Beijing Bytedance Network Technology Co., Ltd. | BOUNDARY LOCATION FOR ADAPTIVE LOOP FILTERING |
| CN111968151B (zh) * | 2020-07-03 | 2022-04-05 | 北京博雅慧视智能技术研究院有限公司 | 一种运动估计精细搜索方法及装置 |
| WO2022037700A1 (en) | 2020-08-21 | 2022-02-24 | Beijing Bytedance Network Technology Co., Ltd. | Coding mode dependent selection of transform skip mode |
| US11962936B2 (en) * | 2020-09-29 | 2024-04-16 | Lemon Inc. | Syntax for dependent random access point indication in video bitstreams |
| CN116601953A (zh) | 2020-11-24 | 2023-08-15 | 抖音视界有限公司 | 编解码视频中的位置相关系数重新排序 |
| US11750778B2 (en) | 2021-09-30 | 2023-09-05 | Coretronic Corporation | Method for adjusting pixel values of blending image and projection system thereof |
| CN118433388B (zh) * | 2024-07-03 | 2024-10-22 | 深圳金三立视频科技股份有限公司 | 基于动态感知的视频动态编码压缩方法 |
| US12341538B1 (en) * | 2024-11-26 | 2025-06-24 | Nintendo Co., Ltd. | Compressing entropy tables with interpolative coding |
Family Cites Families (50)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5107345A (en) | 1990-02-27 | 1992-04-21 | Qualcomm Incorporated | Adaptive block size image compression method and system |
| FR2756399B1 (fr) * | 1996-11-28 | 1999-06-25 | Thomson Multimedia Sa | Procede et dispositif de compression video pour images de synthese |
| US6600836B1 (en) | 2000-01-28 | 2003-07-29 | Qualcomm, Incorporated | Quality based image compression |
| DE10022331A1 (de) * | 2000-05-10 | 2001-11-15 | Bosch Gmbh Robert | Verfahren zur Transformationscodierung von Bewegtbildsequenzen |
| AU2002335743A1 (en) | 2001-09-14 | 2003-04-01 | The Regents Of The University Of Michigan | Audio distributor |
| CN1285216C (zh) * | 2001-11-16 | 2006-11-15 | 株式会社Ntt都科摩 | 图像编码方法和装置、图像译码方法和装置 |
| JP2003189313A (ja) * | 2001-12-20 | 2003-07-04 | Matsushita Electric Ind Co Ltd | 画面間予測符号化方法および画面間予測復号化方法 |
| CN1225904C (zh) * | 2002-04-12 | 2005-11-02 | 精工爱普生株式会社 | 在压缩域视频处理中降低存储器要求和实施有效的逆运动补偿的方法和设备 |
| JP4090862B2 (ja) * | 2002-04-26 | 2008-05-28 | 松下電器産業株式会社 | 可変長符号化方法および可変長復号化方法 |
| JP2003318740A (ja) * | 2002-04-23 | 2003-11-07 | Matsushita Electric Ind Co Ltd | 可変長符号化方法および可変長復号化方法 |
| JP2003319400A (ja) * | 2002-04-26 | 2003-11-07 | Sony Corp | 符号化装置、復号装置、画像処理装置、それらの方法およびプログラム |
| JP2003324731A (ja) * | 2002-04-26 | 2003-11-14 | Sony Corp | 符号化装置、復号装置、画像処理装置、それらの方法およびプログラム |
| US6975773B1 (en) * | 2002-07-30 | 2005-12-13 | Qualcomm, Incorporated | Parameter selection in data compression and decompression |
| AU2003279015A1 (en) * | 2002-09-27 | 2004-04-19 | Videosoft, Inc. | Real-time video coding/decoding |
| JP4238553B2 (ja) | 2002-10-08 | 2009-03-18 | 日本電気株式会社 | 携帯電話装置および表示装置の画像表示方法 |
| JP3679083B2 (ja) * | 2002-10-08 | 2005-08-03 | 株式会社エヌ・ティ・ティ・ドコモ | 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム |
| JP2004135252A (ja) * | 2002-10-09 | 2004-04-30 | Sony Corp | 符号化処理方法、符号化装置及び復号化装置 |
| US7835438B2 (en) | 2003-12-22 | 2010-11-16 | Nec Corporation | Method and device for encoding moving picture using reference frequency of reference frame |
| US20050249278A1 (en) * | 2004-04-28 | 2005-11-10 | Matsushita Electric Industrial Co., Ltd. | Moving image coding method, moving image decoding method, moving image coding device, moving image decoding device, moving image coding program and program product of the same |
| US7894530B2 (en) * | 2004-05-07 | 2011-02-22 | Broadcom Corporation | Method and system for dynamic selection of transform size in a video decoder based on signal content |
| CN100401780C (zh) * | 2004-05-07 | 2008-07-09 | 美国博通公司 | 在视频解码器中动态选择变换尺寸的方法和系统 |
| JP4421940B2 (ja) * | 2004-05-13 | 2010-02-24 | 株式会社エヌ・ティ・ティ・ドコモ | 動画像符号化装置および方法、並びに動画像復号化装置および方法 |
| KR100813958B1 (ko) * | 2004-06-07 | 2008-03-14 | 세종대학교산학협력단 | 동영상의 무손실 인코딩 및 디코딩 방법, 그 장치 |
| US8179962B2 (en) | 2004-09-08 | 2012-05-15 | Panasonic Corporation | Motion image encoding method and motion image decoding method |
| CA2610276C (en) * | 2005-07-22 | 2013-01-29 | Mitsubishi Electric Corporation | Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program |
| KR101349599B1 (ko) | 2005-09-26 | 2014-01-10 | 미쓰비시덴키 가부시키가이샤 | 동화상 복호 장치 |
| JP2007243427A (ja) * | 2006-03-07 | 2007-09-20 | Nippon Hoso Kyokai <Nhk> | 符号化装置及び復号化装置 |
| US20070286277A1 (en) * | 2006-06-13 | 2007-12-13 | Chen Xuemin Sherman | Method and system for video compression using an iterative encoding algorithm |
| JP2008022383A (ja) * | 2006-07-13 | 2008-01-31 | Matsushita Electric Ind Co Ltd | 画像符号化装置 |
| AU2006346583B2 (en) * | 2006-07-28 | 2011-04-28 | Kabushiki Kaisha Toshiba | Image encoding and decoding method and apparatus |
| US8565314B2 (en) * | 2006-10-12 | 2013-10-22 | Qualcomm Incorporated | Variable length coding table selection based on block type statistics for refinement coefficient coding |
| US20080170793A1 (en) * | 2007-01-12 | 2008-07-17 | Mitsubishi Electric Corporation | Image encoding device and image encoding method |
| JP4635016B2 (ja) * | 2007-02-16 | 2011-02-16 | 株式会社東芝 | 情報処理装置およびインター予測モード判定方法 |
| JP2010135864A (ja) * | 2007-03-29 | 2010-06-17 | Toshiba Corp | 画像符号化方法及び装置並びに画像復号化方法及び装置 |
| JP4364919B2 (ja) * | 2007-04-20 | 2009-11-18 | 三菱電機株式会社 | 動画像復号化装置 |
| US8345968B2 (en) * | 2007-06-28 | 2013-01-01 | Mitsubishi Electric Corporation | Image encoding device, image decoding device, image encoding method and image decoding method |
| JP4325708B2 (ja) * | 2007-07-05 | 2009-09-02 | ソニー株式会社 | データ処理装置、データ処理方法およびデータ処理プログラム、符号化装置、符号化方法および符号化プログラム、ならびに、復号装置、復号方法および復号プログラム |
| JP4821723B2 (ja) * | 2007-07-13 | 2011-11-24 | 富士通株式会社 | 動画像符号化装置及びプログラム |
| JP4922101B2 (ja) * | 2007-08-21 | 2012-04-25 | 株式会社東芝 | 情報処理装置およびインター予測モード判定方法 |
| JP2009055236A (ja) * | 2007-08-24 | 2009-03-12 | Canon Inc | 映像符号化装置及び方法 |
| US20090274213A1 (en) * | 2008-04-30 | 2009-11-05 | Omnivision Technologies, Inc. | Apparatus and method for computationally efficient intra prediction in a video coder |
| US8908763B2 (en) | 2008-06-25 | 2014-12-09 | Qualcomm Incorporated | Fragmented reference in temporal compression for video coding |
| KR101549823B1 (ko) * | 2008-09-02 | 2015-09-04 | 삼성전자주식회사 | 적응적 이진화를 이용한 영상 부호화, 복호화 방법 및 장치 |
| JP4937224B2 (ja) * | 2008-09-30 | 2012-05-23 | 株式会社東芝 | 画像符号化装置 |
| CA2742390C (en) * | 2008-10-03 | 2015-05-12 | Qualcomm Incorporated | Video coding using transforms bigger than 4x4 and 8x8 |
| US8619856B2 (en) * | 2008-10-03 | 2013-12-31 | Qualcomm Incorporated | Video coding with large macroblocks |
| WO2010041857A2 (en) * | 2008-10-06 | 2010-04-15 | Lg Electronics Inc. | A method and an apparatus for decoding a video signal |
| CN102308580B (zh) | 2009-02-05 | 2016-05-04 | 汤姆森特许公司 | 用于自适应模式视频编码和解码的方法和装置 |
| AU2009339348B2 (en) | 2009-02-09 | 2015-05-28 | Robert Bosch Gmbh | Method for using a computer network |
| WO2010116869A1 (ja) * | 2009-04-08 | 2010-10-14 | シャープ株式会社 | 動画像符号化装置および動画像復号装置 |
-
2011
- 2011-03-31 KR KR1020147035021A patent/KR20150013776A/ko not_active Ceased
- 2011-03-31 US US13/639,134 patent/US20130028326A1/en not_active Abandoned
- 2011-03-31 SG SG10202001623RA patent/SG10202001623RA/en unknown
- 2011-03-31 KR KR1020127028737A patent/KR101389163B1/ko active Active
- 2011-03-31 CA CA2795425A patent/CA2795425C/en active Active
- 2011-03-31 CN CN201810242573.3A patent/CN108462874B/zh active Active
- 2011-03-31 SG SG10201502226SA patent/SG10201502226SA/en unknown
- 2011-03-31 MX MX2015010847A patent/MX353107B/es unknown
- 2011-03-31 WO PCT/JP2011/001953 patent/WO2011125313A1/ja not_active Ceased
- 2011-03-31 BR BR112012025206-2A patent/BR112012025206B1/pt active IP Right Grant
- 2011-03-31 KR KR1020147022232A patent/KR101540899B1/ko active Active
- 2011-03-31 PL PL16181069T patent/PL3101897T3/pl unknown
- 2011-03-31 EP EP16181069.2A patent/EP3101897B1/en active Active
- 2011-03-31 RU RU2012147595/08A patent/RU2523071C1/ru active
- 2011-03-31 EP EP11765215.6A patent/EP2557792A4/en not_active Ceased
- 2011-03-31 ES ES16181069T patent/ES2899780T3/es active Active
- 2011-03-31 KR KR1020137034944A patent/KR20140010192A/ko not_active Ceased
- 2011-03-31 MX MX2012011695A patent/MX2012011695A/es active IP Right Grant
- 2011-03-31 CN CN2011800183242A patent/CN102934438A/zh active Pending
- 2011-03-31 JP JP2012509307A patent/JPWO2011125313A1/ja active Pending
- 2011-03-31 KR KR1020147008944A patent/KR101500914B1/ko active Active
- 2011-03-31 KR KR1020177001857A patent/KR101817481B1/ko active Active
- 2011-03-31 CN CN201710222188.8A patent/CN107046644B/zh active Active
- 2011-03-31 MX MX2015010849A patent/MX353109B/es unknown
- 2011-03-31 CN CN201710222189.2A patent/CN106998473B/zh active Active
- 2011-03-31 SG SG2012075099A patent/SG184528A1/en unknown
- 2011-03-31 RU RU2014116111/08A patent/RU2573222C2/ru active
- 2011-04-07 TW TW109104055A patent/TWI765223B/zh active
- 2011-04-07 TW TW100111972A patent/TWI520617B/zh active
- 2011-04-07 TW TW104143548A patent/TWI601415B/zh active
- 2011-04-07 TW TW106125286A patent/TWI688267B/zh active
-
2014
- 2014-10-08 JP JP2014207401A patent/JP2015029348A/ja active Pending
-
2015
- 2015-12-01 RU RU2015151397A patent/RU2627101C2/ru active
-
2016
- 2016-03-01 JP JP2016039080A patent/JP2016129405A/ja active Pending
-
2017
- 2017-02-27 US US15/443,431 patent/US9973753B2/en active Active
- 2017-07-13 RU RU2017124991A patent/RU2663374C1/ru active
-
2018
- 2018-03-13 US US15/920,105 patent/US10412385B2/en active Active
- 2018-03-22 JP JP2018054476A patent/JP6605063B2/ja active Active
- 2018-06-01 US US15/996,293 patent/US10390011B2/en active Active
- 2018-07-12 RU RU2018125649A patent/RU2699049C1/ru active
-
2019
- 2019-06-18 US US16/444,898 patent/US10469839B2/en active Active
- 2019-06-18 US US16/444,922 patent/US10554970B2/en active Active
- 2019-08-20 RU RU2019126198A patent/RU2716032C1/ru active
- 2019-09-09 JP JP2019163628A patent/JP7129958B2/ja active Active
- 2019-09-09 JP JP2019163629A patent/JP7126308B2/ja active Active
- 2019-09-09 JP JP2019163630A patent/JP7126309B2/ja active Active
- 2019-09-09 JP JP2019163631A patent/JP7126310B2/ja active Active
-
2020
- 2020-02-20 RU RU2020107720A patent/RU2734871C1/ru active
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2899780T3 (es) | Dispositivo y procedimiento de codificación de imagen en movimiento, dispositivo y procedimiento de decodificación de imagen en movimiento, flujo de bits | |
| ES2728443T3 (es) | Inicialización de contexto basándose en memoria intermedia de imagen de decodificador | |
| ES2710234B1 (es) | Procedimiento y dispositivo para procesar señales de vídeo | |
| US9167253B2 (en) | Derivation of the position in scan order of the last significant transform coefficient in video coding | |
| ES2677100T3 (es) | Filtrado de bucle alrededor de los límites de segmento o de límites de mosaico en la codificación de video | |
| US10009616B2 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
| ES2973247T3 (es) | Indicación de modo de intra-predicción mejorada para codificación de vídeo utilizando el modo contiguo | |
| US9793921B2 (en) | Methods and apparatus for unified significance map coding | |
| KR20240090216A (ko) | 참조 픽쳐를 기초로 인트라 예측 모드를 결정하는 비디오 신호 처리 방법 및 이를 위한 장치 |