ES2622732T3 - Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento - Google Patents

Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento Download PDF

Info

Publication number
ES2622732T3
ES2622732T3 ES15166363.0T ES15166363T ES2622732T3 ES 2622732 T3 ES2622732 T3 ES 2622732T3 ES 15166363 T ES15166363 T ES 15166363T ES 2622732 T3 ES2622732 T3 ES 2622732T3
Authority
ES
Spain
Prior art keywords
motion vector
vector predictor
partition
candidate
neighboring region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES15166363.0T
Other languages
English (en)
Inventor
Akira Fujibayashi
Yoshinori Suzuki
Choong Seng Boon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Application granted granted Critical
Publication of ES2622732T3 publication Critical patent/ES2622732T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

Un procedimiento para descodificar de manera predictiva un vector de movimiento usado en la predicción con compensación de movimiento para restaurar una secuencia de vídeo que consiste en una secuencia temporal de una pluralidad de imágenes de trama, que comprende: una etapa (S302) de determinación de un primer candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinación de candidatos a predictor de vector de movimiento, a partir de un vector de movimiento, o vectores de movimiento, de una o más particiones pertenecientes a una región vecina a la izquierda ubicada en el lado izquierdo de una partición de destino en una imagen de trama de un objetivo de descodificación; una etapa (S303) de determinación de un segundo candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado en la determinación de candidatos a predictor de vector de movimiento, a partir de un vector de movimiento, o vectores de movimiento, de una o más particiones pertenecientes a una región vecina por encima ubicada por encima de la partición de destino; una etapa (S306) de selección del predictor de vector de movimiento óptimo especificado por la información de indicación de predictor de vector de movimiento, a partir de uno o más candidatos a predictor de vector de movimiento, incluyendo al menos el primer candidato a predictor de vector de movimiento y el segundo candidato a predictor de vector de movimiento en el que la etapa (S302) de determinación del primer candidato a predictor de vector de movimiento comprende explorar una pluralidad de particiones incluidas en la región vecina a la izquierda usando un índice de exploración i, en un sentido ascendente desde una parte inferior de la región vecina a la izquierda, determinando de ese modo un vector de movimiento que satisface el criterio predeterminado usado en la determinación de candidatos a predictor de vector de movimiento, como primer candidato a predictor de vector de movimiento, a partir del vector de movimiento, o vectores de movimiento, de dicha una o más particiones y determinar (S504) si tanto la i-ésima partición como la partición de destino tienen el mismo número de identificación de lista de imágenes de referencia y número de identificación de imágenes de referencia o no, si la i-ésima partición está presente en el orden de exploración en la región vecina a la izquierda y dicha partición tiene un vector de movimiento, determinar (S505) el vector de movimiento de la i-ésima partición como primer candidato a vector de predicción, si tanto la i-ésima partición como la partición de destino tienen el mismo número de identificación de lista de imágenes de referencia y número de identificación de imágenes de referencia.

Description

5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Procedimiento de codificacion predictiva, dispositivo de codificacion predictiva y programa de codificacion predictiva de un vector de movimiento, y procedimiento de descodificacion predictiva, dispositivo de descodificacion predictiva y programa de descodificacion predictiva de un vector de movimiento
Campo tecnico
Las realizaciones de la presente invencion se refieren a un procedimiento de codificacion predictiva, un dispositivo de codificacion predictiva y un programa de codificacion predictiva de un vector de movimiento y a un procedimiento de descodificacion predictiva, un dispositivo de descodificacion predictiva y un programa de descodificacion predictiva de un vector de movimiento.
Antecedentes de la tecnica
La tecnologfa de prediccion con compensacion de movimiento se usa de manera ocasional en la codificacion de video y la descodificacion de video. En la tecnologfa de compensacion de movimiento, una trama de un objetivo de procesamiento en una secuencia de video se divide en una pluralidad de particiones. Estas particiones se seleccionan secuencialmente como particion de un objetivo de procesamiento (particion de destino). Entonces se determina un vector de movimiento para la particion de destino. En la tecnologfa de prediccion con compensacion de movimiento, se determina un predictor de vector de movimiento usando vectores de movimiento de particiones vecinas de la particion de destino y el vector de movimiento de la particion de destino se codifica de manera predictiva o se descodifica de manera predictiva en algunos casos.
Las figuras 1A y 1B son dibujos para ilustrar particiones vecinas rectangulares usadas en la prediccion con compensacion de movimiento. En la figura 1A, la forma de la particion BT de destino es identica a la forma de las particiones BL, BA y BRA vecinas. La particion BL vecina a la izquierda incluye un pixel vecino existente en el lado izquierdo del pixel arriba y a la izquierda en la particion BT de destino; la particion Ba vecina por encima incluye un pixel vecino existente por encima del pixel arriba y a la izquierda en la particion BT de destino; la particion BRA vecina por encima a la derecha incluye un pixel vecino existente por encima y en el lado derecho del pixel arriba y a la derecha en la particion BT de destino. La tecnologfa H.264/AVC convencional emplea un predictor de vector de movimiento que tiene valores de mediana de componentes horizontales y componentes verticales de vectores de movimiento de la particion BL vecina a la izquierda, la particion BA vecina por encima y la particion BRA vecina por encima y a la derecha.
Por otro lado, la figura 1B ilustra un caso en el que hay una pluralidad de particiones vecinas que tienen formas respectivas diferentes de la forma de la particion BT de destino. La pluralidad de particiones vecinas en la figura 1B incluyen particiones BL1, BL2, BA1, BA2, BD y BE vecinas, ademas de la particion BL vecina a la izquierda, la particion BA vecina por encima y la particion BRA vecina por encima y a la derecha. Segun la tecnologfa descrita en la bibliografia de patente 1, la pluralidad de particiones vecinas se exploran en un orden espacial predeterminado para especificar una particion vecina con la mejor similitud espacial con respecto a una senal de pixel de la particion de destino, y se usa un vector de movimiento de la particion vecina asf especificada como un predictor de vector de movimiento. En la tecnologfa de la bibliografia de patente 1, la similitud espacial que va a usarse es la suma de diferencias absolutas (SAD) entre la senal de pixel de la particion de destino y la senal de pixel de la particion vecina.
El documento de T. Wiegand et al. “High Efficiency Video Coding (HEVC) text specification Working Draft 1” [“Borrador de trabajo 1 de la especificacion textual de la Codificacion de Video de Alta Eficacia (HEVC)”], 3. Conferencia de JCT-VC; 95. Conferencia de MPEG; - ; Guangzhou, n° JCTVC-C403, 6 de enero de 2011, describe determinar candidatos a vector de movimiento que incluye procesamiento de particiones vecinas a la izquierda en un sentido descendente.
Lista de referencias
Bibliografia de patentes
Bibliografia de patente 1: Traduccion japonesa de la solicitud PCT abierta a consulta por el publico n° 2010-515399 Sumario de la invencion Problema tecnico
Puesto que la tecnologfa anterior de la bibliografia de patente 1 implica calcular la similitud espacial mientras se explora la pluralidad de particiones vecinas en el orden predeterminado, requiere un numero considerable de calculos para la determinacion del predictor de vector de movimiento.
Por tanto, existen demandas de reduccion de la complejidad de calculo necesaria para la determinacion del predictor
5
10
15
20
25
30
35
40
45
50
55
60
65
de vector de movimiento en los campos tecnicos afectados.
Solucion al problema
En el presente documento se describe una tecnologfa de codificacion predictiva de vectores de movimiento.
Un procedimiento de codificacion predictiva de vectores de movimiento descrito en el presente documento es un procedimiento para codificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento de una secuencia de video que consiste en una secuencia temporal de imagenes de trama, que comprende: (a) una etapa de determinacion de un vector de movimiento de una particion de destino en una imagen de trama de un objetivo de codificacion en la secuencia de video; (b) una etapa de determinacion de un primer candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento, a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina a la izquierda ubicada en el lado izquierdo de la particion de destino; (c) una etapa de determinacion de un segundo candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento, a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina por encima ubicada por encima de la particion de destino; (d) una etapa de seleccion de un predictor de vector de movimiento optimo y de emision de informacion de indicacion de predictor de vector de movimiento para especificar el predictor de vector de movimiento optimo seleccionado, basandose el predictor de vector de movimiento optimo seleccionado en la comparacion entre uno o mas candidatos a predictor de vector de movimiento, incluyendo el primer candidato a predictor de vector de movimiento y el segundo candidato a predictor de vector de movimiento, y el vector de movimiento de la particion de destino; y (e) una etapa de codificacion de la informacion de indicacion de predictor de vector de movimiento.
Un dispositivo de codificacion predictiva de vectores de movimiento descrito en el presente documento es un dispositivo para codificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento de una secuencia de video que consiste en una secuencia temporal de imagenes de trama, que comprende: medios de deteccion de movimiento que determinan un vector de movimiento de una particion de destino en una imagen de trama de un objetivo de codificacion en la secuencia de video; primeros medios de determinacion de candidatos a predictor de vector de movimiento que determinan un primer candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina a la izquierda ubicada en el lado izquierdo de la particion de destino; segundos medios de determinacion de candidatos a predictor de vector de movimiento que determinan un segundo candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina por encima ubicada por encima de la particion de destino; medios de determinacion de predictor de vector de movimiento que seleccionan un predictor de vector de movimiento optimo basandose en la comparacion entre el vector de movimiento de la particion de destino y uno o mas candidatos a predictor de vector de movimiento. Los uno o mas candidatos a predictor de vector de movimiento que incluyen al menos uno del primer candidato a predictor de vector de movimiento, o el segundo candidato a predictor de vector de movimiento. Los medios de determinacion de predictor de vector de movimiento emiten informacion de indicacion de predictor de vector de movimiento para especificar el predictor de vector de movimiento optimo seleccionado, y medios de codificacion que codifican la informacion de indicacion de predictor de vector de movimiento.
Un programa de codificacion predictiva de vectores de movimiento descrito en el presente documento es un programa para hacer que un ordenador funcione como un dispositivo para codificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento de una secuencia de video que consiste en una secuencia temporal de imagenes de trama, haciendo el programa que el ordenador funcione como: los medios de deteccion de movimiento, los primeros medios de determinacion de candidatos a predictor de vector de movimiento, los segundos medios de determinacion de candidatos a predictor de vector de movimiento, los medios de determinacion de predictor de vector de movimiento, y los medios de codificacion descritos anteriormente.
En la tecnologfa de codificacion predictiva de vectores de movimiento descrita anteriormente, los candidatos a predictor de vector de movimiento se limitan, y despues de eso se determina el predictor de vector de movimiento basandose en la comparacion entre el vector de movimiento de la particion de destino y los candidatos a predictor de vector de movimiento. Por tanto, esta tecnologfa puede reducir la complejidad de calculo necesaria para la determinacion del predictor de vector de movimiento.
En una realizacion, la tecnologfa de codificacion predictiva puede configurarse como sigue: se genera una senal predicha de una senal de pixel de una particion de destino haciendo referencia a una trama de referencia con un numero de trama especificado por una identificacion de lista de imagenes de referencia y una identificacion de imagenes de referencia; se determina un primer candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina a la izquierda que tienen una identificacion de lista de imagenes de
5
10
15
20
25
30
35
40
45
50
55
60
65
referencia y/o una identificacion de imagenes de referencia coincidente con la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino, se determina el segundo candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina por encima que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia coincidente con la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino.
En una realizacion, la informacion de indicacion de predictor de vector de movimiento puede codificarse en datos codificados de un recuento de bits segun el numero de los candidatos a predictor de vector de movimiento. Por ejemplo, la informacion de indicacion de predictor de vector de movimiento puede codificarse en datos codificados de un recuento de bits mmimo segun el numero de los candidatos a predictor de vector de movimiento. Esta realizacion puede reducir el recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, la region vecina a la izquierda puede incluir una particion vecina ubicada por debajo y en el lado izquierdo de la particion de destino. La particion vecina por debajo a la izquierda es una particion que incluye pfxeles vecinos existentes por debajo y en el lado izquierdo de un pixel abajo a la izquierda en la particion de destino. En esta realizacion, la particion vecina por debajo a la izquierda se incluye en la region vecina a la izquierda, y el vector de movimiento de la particion vecina por debajo a la izquierda no se define como un candidato a predictor de vector de movimiento independiente cuando el primer candidato a predictor de vector de movimiento se determina a partir de la region vecina a la izquierda. Esta realizacion puede reducir el numero de candidatos a predictor de vector de movimiento. Como resultado, puede reducirse un recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, una region vecina por encima puede incluir una particion vecina ubicada por encima y en el lado derecho de la particion de destino. La particion vecina por encima a la derecha es una particion que incluye pfxeles vecinos existentes por encima y en el lado derecho de un pixel arriba y a la derecha en la particion de destino. En esta realizacion, la particion vecina por encima a la derecha se incluye en la region vecina por encima, y un vector de movimiento de la particion vecina por encima a la derecha no se define como un candidato a predictor de vector de movimiento independiente cuando el segundo candidato a predictor de vector de movimiento se determina a partir de la region vecina por encima. Esta realizacion puede reducir el numero de candidatos a predictor de vector de movimiento. Como resultado, puede reducirse un recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, o bien una region vecina a la izquierda o bien una region vecina por encima puede incluir una particion vecina ubicada por encima y en el lado izquierdo de una particion de destino. La particion vecina por encima a la izquierda es una particion que incluye pfxeles vecinos existentes por encima y en el lado izquierdo del pixel arriba y a la izquierda en la particion de destino. En esta realizacion, un vector de movimiento de la particion vecina por encima a la izquierda no se define como un candidato a predictor de vector de movimiento independiente, y un candidato a predictor de vector de movimiento se determina cuando la particion vecina por encima a la izquierda se incluye en la region vecina a la izquierda o en la region vecina por encima. Esta realizacion puede reducir el numero de candidatos a predictor de vector de movimiento. Como resultado, puede reducirse un recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, una tecnologfa de codificacion predictiva puede configurarse como sigue: se exploran una o mas particiones en la region vecina a la izquierda en un sentido ascendente desde la parte inferior de la region vecina a la izquierda, mediante lo cual un vector de movimiento que satisface un criterio predeterminado se determina como primer candidato a predictor de vector de movimiento a partir de vectores de movimiento de la una o mas particiones. El criterio predeterminado se usa para la determinacion de candidatos a predictor de vector de movimiento. Una exploracion posterior en la region vecina a la izquierda puede terminarse tras la deteccion del vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento. Segun el conocimiento obtenido por los inventores basandose en la investigacion de un gran numero de secuencias de video, una particion, de entre las particiones en la region vecina a la izquierda, con un vector de movimiento que tiene una pequena diferencia con respecto al vector de movimiento de la particion de destino, tiende a existir en el lado inferior en la region vecina a la izquierda. Por tanto, el primer candidato a predictor de vector de movimiento con una pequena diferencia con respecto al vector de movimiento de la particion de destino puede determinarse eficazmente explorando la region vecina a la izquierda en el orden de exploracion anterior.
En una realizacion, la tecnologfa de codificacion predictiva puede configurarse como sigue: se exploran una o mas particiones en la region vecina por encima en un sentido hacia la izquierda de derecha a izquierda, mediante lo cual un vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento se determina como un segundo candidato a predictor de vector de movimiento a partir de vectores de movimiento de la una o mas particiones. La exploracion posterior en la region vecina por encima puede terminarse tras la deteccion del vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento. Segun el conocimiento obtenido por los inventores basandose en la investigacion de un gran numero de secuencias de video, una particion con un vector de
5
10
15
20
25
30
35
40
45
50
55
60
65
movimiento que tiene una pequena diferencia con respecto al vector de movimiento de la particion de destino entre las particiones en la region vecina por encima tiende a existir en el lado derecho en la region vecina por encima. Por tanto, el segundo candidato a predictor de vector de movimiento con una pequena diferencia con respecto al vector de movimiento de la particion de destino puede determinarse eficazmente explorando la region vecina por encima en el orden de exploracion anterior.
En una realizacion, la tecnologfa de codificacion predictiva puede configurarse como sigue: comprende determinar una primera informacion de indicacion de direccion de exploracion, indicativa de una direccion de exploracion de una o mas particiones incluidas en una region vecina a la izquierda, con el fin de determinar un primer candidato a predictor de vector de movimiento; determinar una segunda informacion de indicacion de direccion de exploracion, indicativa de una direccion de exploracion de una o mas particiones incluidas en una region vecina por encima, con el fin de determinar un segundo candidato a predictor de vector de movimiento; y codificar ademas la primera informacion de indicacion de direccion de exploracion y la segunda informacion de indicacion de direccion de exploracion. En esta realizacion, las exploraciones se llevan a cabo tanto en sentido ascendente como descendente en la region vecina a la izquierda para seleccionar un vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento. Un vector de movimiento optimo, de entre los vectores de movimiento seleccionados en el sentido ascendente y descendente, se define como primer candidato a predictor de vector de movimiento, y la informacion indicativa de la direccion de la exploracion en la que se adquiere el primer candidato a predictor de vector de movimiento se define como la primera informacion de indicacion de direccion de exploracion. Ademas, las exploraciones se llevan a cabo tanto en sentido hacia la izquierda como hacia la derecha en la region vecina por encima para seleccionar el vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento. El vector de movimiento optimo, de entre los vectores de movimiento seleccionados en el sentido hacia la izquierda y hacia la derecha, se define como segundo candidato a predictor de vector de movimiento, y la informacion indicativa de la direccion de la exploracion en la que se adquiere el segundo candidato a predictor de vector de movimiento se define como la segunda informacion de indicacion de direccion de exploracion. Esta realizacion permite el logro de mejora adicional de la eficacia de codificacion mediante determinacion del primer candidato a predictor de vector de movimiento y el segundo candidato a predictor de vector de movimiento.
En una realizacion, el numero de uno o mas candidatos a predictor de vector de movimiento puede no ser mas de 3. Esta realizacion puede reducir ademas el recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, puede usarse un predictor de vector de movimiento optimo como un vector de movimiento de una particion de destino sin codificar una senal residual entre el vector de movimiento de la particion de destino y el predictor de vector de movimiento optimo. Esta realizacion puede mejorar ademas la eficacia de codificacion debido a que la senal residual del vector de movimiento no se codifica.
Tambien se describe una tecnologfa de descodificacion predictiva de vectores de movimiento.
En la reivindicacion 1 se define un procedimiento para descodificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento para restaurar una secuencia de video que consiste en una secuencia temporal de una pluralidad de imagenes de trama segun un aspecto de la presente invencion.
En la reivindicacion 9 se define un dispositivo para descodificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento para restaurar una secuencia de video que consiste en una secuencia temporal de una pluralidad de imagenes de trama segun un aspecto de la presente invencion.
Un programa para descodificar de manera predictiva un vector de movimiento descrito en el presente documento es un programa para hacer que un ordenador funcione como un dispositivo para descodificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento para restaurar una secuencia de video que consiste en una secuencia temporal de imagenes de trama. El programa hace que el ordenador funcione como: los primeros medios de determinacion de candidato a predictor de vector de movimiento, los segundos medios de determinacion de candidato a predictor de vector de movimiento, los medios de descodificacion y los medios de determinacion de predictor de vector de movimiento optimo definidos en la reivindicacion 9.
En la tecnologfa de descodificacion predictiva de vectores de movimiento segun una realizacion de la presente invencion descrita anteriormente, los candidatos a predictor de vector de movimiento se limitan y despues de eso se determina el predictor de vector de movimiento basandose en la comparacion entre el vector de movimiento de la particion de destino y los candidatos a predictor de vector de movimiento. Por tanto, puede reducir la complejidad de calculo necesaria para la determinacion del predictor de vector de movimiento.
En una realizacion, la tecnologfa de descodificacion predictiva puede configurarse como sigue: se genera una senal predicha de una senal de imagen de una particion de destino haciendo referencia a una trama de referencia con un numero de trama especificado por una identificacion de lista de imagenes de referencia y una identificacion de imagenes de referencia; se determina un primer candidato a predictor de vector de movimiento a partir de vectores
5
10
15
20
25
30
35
40
45
50
55
60
65
de movimiento de particiones en la region vecina a la izquierda que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia identica a la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino; se determina un segundo candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina por encima que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia identica a la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino.
En una realizacion, un recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento puede ser un recuento de bits segun el numero de candidatos a predictor de vector de movimiento. Por ejemplo, el recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento puede ser un recuento de bits mmimo segun el numero de candidatos a predictor de vector de movimiento. Esta realizacion puede reducir el recuento de bits de los datos codificados de la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, una region vecina a la izquierda puede incluir una particion vecina ubicada por debajo y en el lado izquierdo de una particion de destino. En esta realizacion, un vector de movimiento de la particion vecina por debajo a la izquierda no se define como un candidato a predictor de vector de movimiento independiente y la particion vecina por debajo y a la izquierda se incluye en la region vecina a la izquierda; entonces un primer candidato a predictor de vector de movimiento se determina a partir de la region vecina a la izquierda. Esta realizacion puede reducir el numero de candidatos a predictor de vector de movimiento. Como resultado, puede reducir el recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento y reducir la complejidad de calculo del procedimiento de descodificacion para restaurar la informacion de indicacion de predictor de vector de movimiento a partir de los datos codificados.
En una realizacion, una region vecina por encima puede incluir una particion vecina ubicada por encima y en el lado derecho de la particion de destino. En esta realizacion, un vector de movimiento de la particion vecina por encima a la derecha no se define como un candidato a predictor de vector de movimiento independiente y la particion vecina por encima a la derecha se incluye en la region vecina por encima; entonces un segundo candidato a predictor de vector de movimiento se determina a partir de la region vecina por encima. Esta realizacion puede reducir el numero de candidatos a predictor de vector de movimiento. Como resultado, puede reducir el recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento y reducir la complejidad de calculo del procedimiento de descodificacion para restaurar la informacion de indicacion de predictor de vector de movimiento a partir de los datos codificados.
En una realizacion, o bien una region vecina a la izquierda o bien una region vecina por encima puede incluir una particion vecina ubicada por encima y en el lado izquierdo de una particion de destino. En esta realizacion, un vector de movimiento de la particion vecina por encima a la izquierda no se define como un candidato a predictor de vector de movimiento independiente y la particion vecina por encima a la izquierda se incluye en la region vecina a la izquierda o en la region vecina por encima; entonces el candidato a predictor de vector de movimiento se determina a partir de las mismas. Esta realizacion puede reducir el numero de candidatos a predictor de vector de movimiento. Como resultado, puede reducirse el recuento de bits de datos codificados de la informacion de indicacion de predictor de vector de movimiento y tambien puede reducirse la complejidad de calculo del procedimiento de descodificacion para restaurar la informacion de indicacion de predictor de vector de movimiento a partir de los datos codificados.
En una realizacion, una tecnologfa de descodificacion predictiva puede configurarse como sigue: se exploran una o mas particiones en una region vecina a la izquierda en un sentido ascendente desde una parte inferior de la region vecina a la izquierda, mediante lo cual se determina un vector de movimiento que satisface un criterio predeterminado, usado para la determinacion de candidatos a predictor de vector de movimiento, como primer candidato a predictor de vector de movimiento a partir de vectores de movimiento de la una o mas particiones. Una exploracion posterior en la region vecina a la izquierda puede terminarse tras la deteccion del vector de movimiento que satisface el criterio predeterminado de la determinacion de candidatos a predictor de vector de movimiento. El primer candidato a predictor de vector de movimiento con un pequeno error con respecto al vector de movimiento de la particion de destino puede determinarse eficazmente explorando la region vecina a la izquierda en el orden de exploracion anterior.
En una realizacion, la tecnologfa de descodificacion predictiva puede configurarse como sigue: se exploran una o mas particiones en la region vecina por encima en un sentido de derecha a izquierda, mediante lo cual un vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento se determina como un segundo candidato a predictor de vector de movimiento a partir de vectores de movimiento de la una o mas particiones. La exploracion posterior en la region vecina por encima puede terminarse tras la deteccion del vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento. El segundo candidato a predictor de vector de movimiento con un pequeno error con respecto al vector de movimiento de la particion de destino puede determinarse eficazmente explorando la region vecina por encima en el orden de exploracion anterior.
5
10
15
20
25
30
35
40
45
50
55
60
65
En una realizacion, la tecnologfa de descodificacion predictiva puede configurarse para incluir: descodificar datos codificados para restaurar la primera informacion de indicacion de direccion de exploracion para especificar una direccion de exploracion de una o mas particiones en la region vecina a la izquierda y la segunda informacion de indicacion de direccion de exploracion para especificar una direccion de exploracion de una o mas particiones en la region vecina por encima; explorar la una o mas particiones en la region vecina a la izquierda en la direccion especificada por la primera informacion de indicacion de direccion de exploracion para determinar el primer candidato a predictor de vector de movimiento; y explorar la una o mas particiones en la region vecina por encima en la direccion especificada por la segunda informacion de indicacion de direccion de exploracion para determinar el segundo candidato a predictor de vector de movimiento. Esta realizacion puede determinar el primer candidato a predictor de vector de movimiento y el segundo candidato a predictor de vector de movimiento con menores errores con respecto al vector de movimiento de la particion de destino.
En una realizacion, el numero de uno o mas candidatos a predictor de vector de movimiento puede no ser mas de 3. Esta realizacion puede reducir ademas el recuento de bits de datos la informacion de indicacion de predictor de vector de movimiento.
En una realizacion, puede usarse el predictor de vector de movimiento optimo como un vector de movimiento de una particion de destino. Esta realizacion puede reducir un volumen de datos de datos codificados debido a que no se codifica una senal residual del vector de movimiento.
Efectos ventajosos de la invencion
Tal como se ha descrito anteriormente, los aspectos y las realizaciones de la presente invencion proporcionan el procedimiento de codificacion predictiva, el dispositivo de codificacion predictiva y el programa de codificacion predictiva de vectores de movimiento y el procedimiento de descodificacion predictiva, el dispositivo de descodificacion predictiva y el programa de descodificacion predictiva de vectores de movimiento que pueden reducir la complejidad de calculo necesaria para la determinacion de predictores de vector de movimiento.
Breve descripcion de los dibujos
La figura 1A es un dibujo que ilustra particiones vecinas rectangulares usadas en la prediccion con compensacion de movimiento
La figura 1B es un dibujo que ilustra particiones vecinas rectangulares usadas en la prediccion con compensacion de movimiento
La figura 2 es un dibujo que muestra una configuracion de un dispositivo de codificacion de video segun una realizacion.
La figura 3 es un diagrama de flujo que muestra una realizacion de un procedimiento de codificacion predictiva de vectores de movimiento.
La figura 4 es un dibujo que ilustra particiones vecinas rectangulares usadas en la prediccion con compensacion de movimiento.
La figura 5 es un diagrama de flujo que muestra una primera realizacion de un proceso de la etapa S302 en la figura 3 en detalle.
La figura 6 es un diagrama de flujo que muestra una primera realizacion de un proceso de la etapa S303 en la figura 3 en detalle.
La figura 7 es un dibujo que muestra una configuracion de un dispositivo de descodificacion de video segun una realizacion.
La figura 8 es un diagrama de flujo que muestra una realizacion de un procedimiento de descodificacion predictiva de vector de movimiento.
La figura 9 es un diagrama de flujo que muestra un procedimiento de determinacion de candidatos a predictor de vector de movimiento en un procedimiento de codificacion predictiva de vector de movimiento en una segunda realizacion.
La figura 10 es un diagrama de flujo que muestra un procedimiento de descodificacion predictiva de vector de movimiento en la segunda realizacion.
La figura 11 es un dibujo que muestra una configuracion de un programa de codificacion de video segun una
5
10
15
20
25
30
35
40
45
50
55
60
65
realizacion.
La figura 12 es un dibujo que muestra una configuracion de un programa de descodificacion de v^deo segun una realizacion.
La figura 13 es un dibujo que muestra una configuracion de hardware de un ordenador segun una realizacion.
La figura 14 es una vista en perspectiva que muestra un ordenador segun una realizacion.
Descripcion de realizaciones
En lo que sigue se describiran diversas realizaciones en detalle con referencia a los dibujos. En los dibujos, partes identicas o equivalentes se indicaran mediante los mismos sfmbolos de referencia.
La figura 2 es un dibujo que muestra una configuracion de un dispositivo de codificacion de video segun una realizacion. El dispositivo de codificacion de video 20 mostrado en la figura 2 es un ejemplo de un dispositivo que codifica de manera predictiva un vector de movimiento segun un aspecto de la presente invencion.
Una secuencia de video introducida en el dispositivo de codificacion de video 20 se compone de una secuencia temporal de imagenes de trama. Una senal de imagen de trama seleccionada como objetivo para la codificacion se denominara a continuacion en el presente documento “trama actual”. En el dispositivo de codificacion de video 20, una trama actual se divide en particiones rectangulares de tamano variable y se lleva a cabo el procesamiento descrito en lo que sigue en cada una de las unidades de particion.
El dispositivo de codificacion de video 20 puede usar una cualquiera entre una modalidad de prediccion inter-tramas y una pluralidad de modalidades de prediccion intra-tramas, cambiando la modalidad de prediccion para cada particion entre ellas. Por ejemplo, el dispositivo de codificacion de video 20 selecciona una modalidad de prediccion con una alta eficacia de codificacion entre la modalidad de prediccion inter-tramas y las modalidades de prediccion intra-tramas, para cada particion. La “modalidad de prediccion inter-tramas” en el presente documento es una modalidad en la que un vector de movimiento se detecta con referencia a una pluralidad de senales de imagen de trama codificadas anteriormente (senales de imagen de trama de referencia) diferentes, en cuanto al tiempo, a una senal de imagen de trama, para realizar de ese modo la prediccion inter-tramas con compensacion de movimiento. La “modalidad de prediccion intra-tramas” es una modalidad en la que la prediccion espacial se lleva a cabo usando valores de pixel de regiones vecinas codificadas anteriormente en la misma trama. En la “modalidad de prediccion inter-tramas”, se llevan a cabo procesos respectivos de deteccion de movimiento, prediccion de movimiento y compensacion de movimiento para cada una de las sub-particiones, por ejemplo, obtenidas dividiendo adicionalmente una particion de NxN pfxeles con un tamano optativo (por ejemplo, (N/2) pfxeles x N lmeas o (N/4) pfxeles x (N/4) lmeas).
Tal como se muestra en la figura 2, el dispositivo de codificacion de video 20 puede estar dotado de una unidad de entrada 201, una unidad de deteccion de movimiento 202, una unidad de determinacion de candidatos a predictor de vector de movimiento 203, una unidad de determinacion de predictores de vector de movimiento 204, una unidad de diferencia de vector de movimiento 205, una unidad de compensacion de movimiento 206, una memoria 207, una unidad de prediccion espacial 208, una unidad de determinacion de procedimiento de prediccion 209, una unidad de resta 210, una unidad de transformacion 211, una unidad de cuantizacion 212, una unidad de codificacion por entropfa 213, una unidad de cuantizacion inversa 214, una unidad de transformacion inversa 215 y una unidad de adicion 216.
La unidad de entrada 201 recibe una senal de video de entrada como una senal de video introducida desde el exterior y descompone la senal de video en senales de imagen de trama. La unidad de entrada 201 emite cada senal de imagen de trama a traves de la lmea L201a y a traves de la lmea L201b a la unidad de resta 210 y a la unidad de deteccion de movimiento 202.
La memoria 207 es una parte que almacena senales de imagen de trama que se han codificado en el pasado, informacion (vectores de movimiento, identificaciones de listas de imagenes de referencia, identificaciones de imagenes de referencia) y otros datos usados en la prediccion de las mismas.
La unidad de deteccion de movimiento 202 realiza la deteccion de vectores de movimiento. Mas espedficamente, la unidad de deteccion de movimiento 202 busca una senal de imagen de trama de referencia introducida a traves de la lmea L207a desde la memoria 207, en busca de un patron de senal de imagen similar a un patron de senal de imagen de una particion de destino en la trama actual introducida a traves de la lmea L201a. La unidad de deteccion de movimiento 202 busca en un area de busqueda predeterminada en la trama de referencia. La unidad de deteccion de movimiento 202 detecta un vector de movimiento que representa una cantidad de desplazamiento espacial entre la particion de destino y el patron de senales de imagen obtenido mediante la busqueda, y una identificacion de lista de imagenes de referencia y una identificacion de imagenes de referencia para especificar un numero de trama de la trama de referencia usada. El vector de movimiento detectado, la identificacion de listas de
5
10
15
20
25
30
35
40
45
50
55
60
65
imagenes de referencia y la identificacion de imagenes de referencia se emiten a traves de la lmea L202a a la unidad de compensacion de movimiento 206 y, a traves de la lmea L202c, a la unidad de diferencia de vectores de movimiento 205. Ademas, la unidad de deteccion de movimiento 202 emite la identificacion de lista de imagenes de referencia y la identificacion de imagenes de referencia, detectadas a traves de la lmea L202b, a la unidad de determinacion de candidatos a predictor de vector de movimiento 203. En el dispositivo de codificacion de video 20, pueden gestionarse numeros de trama para especificar senales de imagenes de tramas de referencia respectivas en forma de listas. Se especifica un numero de trama usando una identificacion de lista de imagenes de referencia (Lista de imagenes de referencia) para especificar una lista y una identificacion de imagenes de referencia (fndice de referencia) como mdice del numero de trama en la lista. Esta tecnologfa es una tecnologfa bien conocida en la norma H.264/AVC y otras.
La unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina candidatos a predictor de vector de movimiento usando vectores de movimiento de particiones vecinas codificadas anteriormente introducidas a traves de la lmea L207b. Los detalles sobre la determinacion de candidatos a predictor de vector de movimiento se describiran mas adelante. La unidad de determinacion de candidatos a predictor de vector de movimiento 203 emite los candidatos a predictor de vector de movimiento determinados, a traves de la lmea L203, a la unidad de determinacion de predictores de vector de movimiento 204.
La unidad de determinacion de predictores de vector de movimiento 204 determina un predictor de vector de movimiento optimo (valores de predictor de vector de movimiento) a partir de los candidatos a predictor de vector de movimiento introducidos a traves de la lmea L203. Mas espedficamente, la unidad de determinacion de predictores de vector de movimiento 204 determina un candidato a predictor de vector de movimiento con la minima diferencia con respecto al vector de movimiento de la particion de destino introducida a traves de la lmea L202c, como predictor de vector de movimiento optimo PMVopt, entre los candidatos a predictor de vector de movimiento. El predictor de vector de movimiento optimo determinado PMVopt se suministra, a traves de la lmea L204a, a la unidad de diferencia de vectores de movimiento 205. Ademas, el numero de candidatos a predictor de vector de movimiento y la informacion de indicacion de predictor de vector de movimiento, para especificar el predictor de vector de movimiento optimo PMVopt entre los candidatos a predictor de vector de movimiento, se suministran, a traves de la lmea L204b, a la unidad de codificacion por entropfa 213.
En la presente realizacion, el candidato a predictor de vector de movimiento con la minima diferencia con respecto al vector de movimiento de la particion de destino se selecciona como el predictor de vector de movimiento optimo PMVopt. Alternativamente, la unidad de determinacion de predictores de vectores de movimiento 204 puede seleccionar como el predictor de vector de movimiento optimo PMVopt un candidato a predictor de vector de movimiento con el mmimo numero de bits asignado a una diferencia de vectores de movimiento calculada.
En la presente realizacion, el predictor de vectores de movimiento optimo se determina despues de la deteccion de movimiento de la particion de destino. Alternativamente, el predictor de vector de movimiento optimo puede detectarse antes de la deteccion de movimiento. Espedficamente, tal como se indica mediante la formula (1) siguiente, el predictor de vector de movimiento optimo puede calcularse basandose en la suma de diferencias absolutas (SADpmv) entre la senal de imagen predicha en la ejecucion de la compensacion de movimiento, usando cada uno de los candidatos a predictor de vector de movimiento calculados realmente, y la senal de imagen de destino y una funcion de coste usando el recuento de bits Rpmv en la codificacion del candidato a predictor de vector de movimiento y X como una ponderacion para el recuento de bits. En este caso, la senal de imagen de la particion de destino se introduce a traves de la lmea L201a y cada senal de imagen de trama de referencia se introduce a traves de la lmea L207a a la unidad de determinacion de predictores de vectores de movimiento 204 en la figura 2.
Costepmv = SADpmv + XRpmv (1)
La unidad de diferencia de vectores de movimiento 205 calcula valores de diferencia de vectores de movimiento que son informacion de diferencia entre el vector de movimiento introducido a traves de la lmea L202c y el predictor de vector de movimiento optimo introducido a traves de la lmea L204a. La unidad de diferencia de vectores de movimiento 205 transmite una senal que incluye los valores de diferencia de vectores de movimiento calculados, y la identificacion de lista de imagenes de referencia y la identificacion de imagenes de referencia, como informacion de prediccion, a traves de la lmea L205a, a la unidad de codificacion por entropfa 213. Ademas, la unidad de diferencia de vectores de movimiento 205 transmite una senal que incluye el vector de movimiento, y la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia, a traves de la lmea L205b, a la memoria 207.
La unidad de compensacion de movimiento 206 genera una senal de imagen predicha de la particion de destino, haciendo referencia a la senal de imagen de trama de referencia del numero de trama especificado por la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia, recibidas desde la unidad de deteccion de movimiento 202 y usando el vector de movimiento recibido desde la unidad de deteccion de movimiento 202. Esta senal de imagen predicha se emite a la unidad de determinacion de procedimiento de prediccion 209.
5
10
15
20
25
30
35
40
45
50
55
60
65
La unidad de prediccion espacial 208 genera una senal de imagen predicha, haciendo referencia a senales de imagen (senales de imagen de trama de referencia) de regiones vecinas codificadas anteriormente, introducidas a traves de la lmea L207a. La unidad de prediccion espacial 208 emite la senal de imagen predicha generada a la unidad de determinacion de procedimiento de prediccion 209.
La unidad de determinacion de procedimiento de prediccion 209 compara las senales de imagen predichas recibidas desde la unidad de compensacion de movimiento 206 y la unidad de prediccion espacial 208, para seleccionar una cualquiera de las senales de imagen predichas, y emite la senal de imagen predicha seleccionada a la unidad de resta 210. La unidad de determinacion de procedimiento de prediccion 209 emite informacion de modalidad de prediccion, indicativa de un procedimiento de prediccion usado para la generacion de la senal de imagen predicha seleccionada, a traves de la lmea L209b, a la unidad de codificacion por entropfa 213.
La unidad de resta 210 genera un valor de diferencia (senal residual de prediccion) entre la senal de imagen de trama introducida a traves de la lmea L201b y la senal de imagen predicha introducida a traves de la lmea L209a, y emite la senal residual de prediccion a la unidad de transformacion 211.
La unidad de transformacion 211 realiza una transformacion ortogonal de la senal residual de prediccion introducida a traves de la lmea L210, para generar coeficientes de transformacion ortogonales, y emite los coeficientes de transformacion ortogonales a la unidad de cuantizacion 212. La unidad de cuantizacion 212 cuantiza los coeficientes de transformacion ortogonales introducidos a traves de la lmea L211, para generar coeficientes de transformacion ortogonales cuantizados, y transmite los coeficientes de transformacion ortogonales cuantizados a la unidad de codificacion por entropfa 213 y a la unidad de cuantizacion inversa 212.
La unidad de codificacion por entropfa 213 realiza la codificacion por entropfa de los coeficientes de transformacion ortogonales cuantizados, introducidos a traves de la lmea L212, la informacion de modalidad de prediccion recibida desde la unidad de determinacion de procedimiento de prediccion 209, la informacion de prediccion transmitida desde la unidad de diferencia de vectores de movimiento 205 y la informacion de indicacion de predictor de vector de movimiento, emitida desde la unidad de determinacion de predictores de vectores de movimiento 204, multiplexa datos codificados generados en un flujo comprimido y transmite el flujo comprimido al exterior.
La unidad de cuantizacion inversa 214 realiza la cuantizacion inversa de los coeficientes de transformacion ortogonales cuantizados, introducidos a traves de la lmea L212, para generar coeficientes de transformacion ortogonales, y transmite los coeficientes de transformacion ortogonales a la unidad de transformacion ortogonal inversa 215. Entonces, la unidad de transformacion ortogonal inversa 215 aplica una transformacion ortogonal inversa a los coeficientes de transformacion ortogonales introducidos a traves de la lmea L214, para generar una senal residual de prediccion, y transmite la senal residual de prediccion a la unidad de adicion 216.
La unidad de adicion 216 realiza la adicion de la senal residual de prediccion introducida a traves de la lmea L215 y la senal de imagen predicha introducida a traves de la lmea L209a, para generar una senal de imagen de trama, y transmite la senal de imagen de trama a la memoria 207. Esta senal de imagen de trama se almacena en la memoria 207 y se usa como una senal de imagen de trama de referencia en el procedimiento de codificacion posterior. En la memoria 207, el vector de movimiento, la identificacion de la lista de imagenes de referencia, la identificacion de imagenes de referencia, etc., introducidos a traves de la lmea L205b, tambien se almacenan en asociacion con la senal de imagen de trama de referencia.
A continuacion, se describira en lo que sigue una realizacion de un procedimiento de codificacion predictiva de vectores de movimiento, aplicable en el dispositivo de codificacion de video 20.
En primer lugar, se describiran particiones adyacentes a una particion de destino, con referencia a la figura 1B. Las particiones BL, BL1 y BL2 son particiones en contacto con un lfmite izquierdo de la particion BT de destino. La particion BD es una particion que incluye pfxeles vecinos existentes por debajo y en el lado izquierdo del pixel abajo a la izquierda en la region BT de destino. La particion BE es una particion que incluye pfxeles vecinos existente por encima y en el lado izquierdo del pixel arriba a la izquierda en la particion BT de destino. Las particiones BA, BA1 y BA2 son particiones en contacto con un lfmite superior de la particion BT de destino. La particion BRA es una particion que incluye pfxeles vecinos existente por encima y en el lado derecho del pixel arriba a la derecha en la particion Bt de destino. Las particiones vecinas a la particion de destino pueden ser particiones del mismo tamano que la particion BT de destino, tal como se muestra en la figura 1A.
A continuacion, se hace referencia a la figura 3. La figura 3 es un diagrama de flujo que muestra una realizacion del procedimiento de codificacion predictiva de un vector de movimiento. Tal como se muestra en la figura 3, en el procedimiento de codificacion predictiva de un vector de movimiento segun la realizacion, en primer lugar, la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia se introducen en la unidad de determinacion de candidatos a predictor de vector de movimiento 203 (etapa S301).
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina un
5
10
15
20
25
30
35
40
45
50
55
60
65
candidato a predictor de vector de movimiento PMV1 a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones incluidas en la region vecina a la izquierda ubicada a la izquierda de la particion BT de destino (etapa S302). Los detalles sobre el procedimiento de determinacion del candidato a predictor de vector de movimiento PMV1 se describiran mas adelante.
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina un candidato a predictor de vector de movimiento PMV2 a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones incluidas en la region vecina por encima ubicada por encima de la particion BT de destino (etapa S303). Los detalles sobre el procedimiento de determinacion del candidato a predictor de vector de movimiento PMV2 se describiran mas adelante.
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina un candidato a predictor de vector de movimiento PMV3 (etapa S304). En la presente realizacion, se determina un vector de movimiento de una particion existente en la trama de referencia y en una posicion espacialmente identica a la particion de destino, como candidato a predictor de vector de movimiento PMV3.
El candidato a predictor de vector de movimiento PMV3 puede ser un vector de movimiento de otra particion espacialmente adyacente a la particion de destino, en lugar del vector de movimiento de la particion en la misma posicion que la particion de destino en la trama de referencia. Tambien es posible usar valores promedio o similares, calculados basandose en el candidato a predictor de vector de movimiento PMV1 y el candidato a predictor de vector de movimiento PMV2, como candidato a predictor de vector de movimiento PMV3.
El numero de candidatos a predictor de vector de movimiento puede ser de tres o mas. En este caso, una pluralidad de candidatos a predictor de vector de movimiento puede determinarse mediante diferentes procedimientos a partir de cada una entre la region vecina a la izquierda y la region vecina por encima. Mas espedficamente, una pluralidad de candidatos a predictor de vector de movimiento pueden determinarse buscando particiones de cada una de las regiones en una pluralidad de diferentes direcciones de exploracion, en cada una entre la region vecina a la izquierda y la region vecina por encima. Tambien es posible usar un vector de movimiento de otra region vecina como candidato a predictor de vector de movimiento.
Volviendo a hacer referencia a la figura 3, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina entonces solo candidatos a predictor de vector de movimiento no identicos entre el candidato a predictor de vector de movimiento PMV1, el candidato a predictor de vector de movimiento PMV2 y el candidato a predictor de vector de movimiento PMV3, como candidatos finales a predictor de vector de movimiento (etapa S305). Como ejemplo espedfico, cuando el candidato a predictor de vector de movimiento PMV1 es identico al candidato a predictor de vector de movimiento PMV3, solo se seleccionan PMV1 y PMV2 como candidatos a predictor de vector de movimiento. Si no hay candidatos a predictor de vector de movimiento determinados que satisfagan las condiciones en las etapas S302 a S304, se define un vector de movimiento cero como candidato a predictor de vector de movimiento.
Entonces, la unidad de determinacion de predictores de vector de movimiento 204 determina el predictor de vector de movimiento optimo, tal como se describio anteriormente, entre los candidatos a predictor de vector de movimiento determinados por la unidad de determinacion de candidatos a predictor de vector de movimiento 203 (etapa S306).
Entonces, la unidad de codificacion 213 codifica la informacion de indicacion de predictor de vector de movimiento para especificar que candidato a predictor de vector de movimiento es el predictor optimo de vector de movimiento (etapa S307).
En una realizacion, la informacion de indicacion de predictor de vector de movimiento puede codificarse en datos codificados de un recuento de bits segun el numero de candidatos a predictor de vector de movimiento seleccionados por la unidad de determinacion de predictores de vector de movimiento 204. Por ejemplo, cuando el numero de candidatos a predictor de vector de movimiento es 0 o 1, la informacion de indicacion de predictor de vector de movimiento no se codifica ni se transmite. Cuando el numero de candidatos a predictor de vector de movimiento es 2 o 3, la informacion de indicacion de predictor de vector de movimiento se codifica en dos bits como maximo.
La informacion de indicacion de predictor de vector de movimiento puede codificarse basandose en una tabla de codificacion fija independientemente del numero de candidatos a predictor de vector de movimiento. En este caso, la informacion de indicacion de predictor de vector de movimiento puede codificarse usando la siguiente tabla de codificacion.
<Tabla 1. Tabla de codificacion>
Valor de bit Predictor optimo de vector de movimiento 0 candidato a predictor de vector de movimiento 1 (PMV1)
5
10
15
20
25
30
35
40
45
50
55
60
65
10 candidato a predictor de vector de movimiento 2 (PMV2)
11 candidato a predictor de vector de movimiento 3 (PMV3)
En una realizacion, puede cambiarse el orden en el que se determinan el candidato a predictor de vector de movimiento PMV1, el candidato a predictor de vector de movimiento PMV2 y el candidato a predictor de vector de movimiento PMV3. Por ejemplo, puede usarse un proceso en el que la particion de destino se divide en una pluralidad de sub-particiones y se lleva a cabo el proceso de codificacion para cada una de las sub-particiones. Espedficamente, cuando la particion de destino se divide en sub-particiones superior e inferior, y la sub-particion inferior puede usarse como particion de destino, o cuando la particion de destino se divide en sub-particiones izquierda y derecha, y la sub-particion izquierda puede usarse como particion de destino, pueden determinarse los candidatos a predictor de vector de movimiento en el orden de la region vecina a la izquierda, la region vecina por encima y otra region (por ejemplo, una particion en una trama de referencia en la misma posicion que la particion de destino). Por otro lado, cuando la particion de destino se divide en sub-particiones superior e inferior, y la sub- particion superior puede usarse como particion de destino, o la particion de destino se divide en sub-particiones izquierda y derecha, y la sub-particion derecha puede usarse como particion de destino, pueden determinarse los candidatos a predictor de vector de movimiento en el orden de la region vecina por encima, la region vecina a la izquierda y otra region (por ejemplo, una particion en una trama de referencia en la misma posicion que la particion de destino), para estas particiones de destino.
Se describira a continuacion en detalle una primera realizacion del proceso de determinacion de candidatos a predictor de vector de movimiento segun una realizacion. En primer lugar, se describira la primera realizacion del proceso de la etapa S302 en la figura 3 con referencia a las figuras 1B, 4 y 5. Se supone en el presente documento, tal como se muestra en la figura 1B, que la region vecina a la izquierda se compone de la particion BD vecina por debajo y a la izquierda de la particion de destino, y de las particiones BL, BL1 y BL2 vecinas a la izquierda de la particion de destino. Tambien se supone que las particiones en la region vecina a la izquierda se exploran en orden creciente del mdice i mostrado en (a) de la figura 4. Concretamente, se supone que las particiones en la region vecina a la izquierda se exploran en el orden de la parte inferior a la superior.
La particion BD vecina por debajo y a la izquierda puede excluirse de la region vecina a la izquierda. Ademas, una particion mas por debajo de la particion BD vecina por debajo y a la izquierda puede incluirse en la region vecina a la izquierda. Ademas, la particion BE o una particion ubicada por encima de la particion BE pueden incluirse en la region vecina a la izquierda. Ademas, una particion ubicada en el lado izquierdo de la particion de destino y a una distancia predeterminada de la particion de destino puede incluirse en la region vecina a la izquierda.
Volviendo a hacer referencia a (a) de la figura 4 y la figura 5, en el proceso de la etapa S302, en primer lugar, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 establece 0 en el mdice i (etapa S501). La unidad de determinacion de candidatos a predictor de vector de movimiento 203 aumenta el mdice i en un incremento de 1 en la etapa S502 posterior.
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina si existe una i-esima particion en el orden de exploracion en la region vecina a la izquierda y si la particion tiene un vector de movimiento (etapa S503). Si existe la i-esima particion en la region vecina a la izquierda y si la particion tiene un vector de movimiento, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina, en la etapa S504 posterior, si la i-esima particion y la particion de destino tienen la misma identificacion de lista de imagenes de referencia y la identificacion de imagenes de referencia. Cuando se satisface la condicion de determinacion en la etapa S504, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina el vector de movimiento de la i-esima particion como candidato a predictor de vector de movimiento PMV1 en la etapa S505 posterior y, entonces, emite el candidato a predictor de vector de movimiento PMV1 en la etapa S506 posterior, seguido por la terminacion del procesamiento.
Por otro lado, cuando no se satisface la condicion de determinacion en la etapa S503 o cuando no se satisface la condicion de determinacion en la etapa S504, el procesamiento pasa a la etapa S507. En la etapa S507, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina si el mdice i es superior al numero N de particiones en la region vecina a la izquierda. Cuando no se satisface la condicion de determinacion en la etapa S507, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 sigue con el procesamiento desde la etapa S502. Por otro lado, cuando se satisface la condicion de determinacion en la etapa S507, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 termina el procesamiento.
Las particiones en la region vecina a la izquierda se exploran en orden desde la parte inferior de la region vecina a la izquierda en la realizacion mostrada en (a) de la figura 4, pero en una realizacion, tal como se muestra en (c) de la figura 4, pueden explorarse en orden desde la parte superior de la region vecina a la izquierda.
En otra realizacion, puede seleccionarse de manera adaptativa cualquiera entre el orden de exploracion mostrado en (a) de la figura 4 y el orden de exploracion mostrado en (c) de la figura 4. Por ejemplo, el orden de exploracion
5
10
15
20
25
30
35
40
45
50
55
60
65
puede determinarse basandose en una relacion de vectores de movimiento de particiones vecinas. Espedficamente, es posible adoptar un procedimiento de comparacion de una diferencia absoluta a entre el vector de movimiento de la particion BL y el vector de movimiento de la particion BA con una diferencia absoluta p entre el vector de movimiento de la particion BRA y el vector de movimiento de la particion BD en la figura 1B, y seleccionar el orden de exploracion en (c) de la figura 4 si la diferencia absoluta a es menor que la diferencia absoluta p. En el caso opuesto, por otro lado, puede seleccionarse el orden de exploracion en (a) de la figura 4.
En una realizacion, la etapa S502 puede configurarse para aumentar el mdice i en un incremento de dos o mas, disminuyendo de ese modo las particiones que han de explorarse.
La primera realizacion del proceso de la etapa S303 en la figura 3 se describira a continuacion en detalle con referencia a las figuras 1B, 4 y 6. Se supone en el presente documento, tal como se muestra en la figura 1B, que la region vecina por encima se compone de la particion BE vecina por encima a la izquierda de la particion de destino y las particiones BA, BA1 y BA2 vecinas por encima de la particion de destino. Tambien se supone que las particiones en la region vecina por encima se exploran en orden creciente del mdice j mostrado en (a) de la figura 4. Concretamente, se supone que las particiones en la region vecina por encima se exploran en el orden de derecha a izquierda.
La particion BE vecina por encima a la izquierda puede excluirse de la region vecina por encima. Ademas, una particion mas a la izquierda que la particion BE vecina por encima a la izquierda puede incluirse en la region vecina por encima. Ademas, una particion ubicada por encima de la particion de destino y a una distancia predeterminada de la particion de destino puede incluirse en la region vecina por encima.
Volviendo a hacer referencia a (a) de la figura 4 y la figura 6, en el proceso de la etapa S303, en primer lugar, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 establece 0 en el mdice j (etapa S601). La unidad de determinacion de candidatos a predictor de vector de movimiento 203 aumenta el mdice j en un incremento de 1 en la etapa S602 posterior.
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina si existe la j-esima particion en el orden de exploracion en la region vecina por encima y si la particion tiene un vector de movimiento (etapa S603). Cuando existe la j-esima particion en la region vecina por encima y cuando la particion tiene un vector de movimiento, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina, en la etapa S604 posterior, si la j-esima particion y la particion de destino tienen la misma identificacion de lista de imagenes de referencia y la identificacion de imagenes de referencia. Cuando se satisface la condicion de determinacion en la etapa S604, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina, en la etapa S605 posterior, si el vector de movimiento de la j-esima particion es identico al candidato a predictor de vector de movimiento PMV1. Cuando el vector de movimiento de la j-esima particion es diferente al candidato a predictor de vector de movimiento PMV1, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina en la etapa S606 posterior que el vector de movimiento de la j-esima particion es el candidato a predictor de vector de movimiento PMV2 y entonces emite el candidato a predictor de vector de movimiento PMV2 en la etapa S607 posterior, seguido por la terminacion del procesamiento.
Por otro lado, cuando no se satisface la condicion de determinacion en la etapa S603, cuando no se satisface la condicion de determinacion en la etapa S604 o cuando se satisface la condicion de determinacion en la etapa S605, el procesamiento pasa a la etapa S608.
En la etapa S608, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina si el mdice j es superior al numero M de particiones en la region vecina por encima. Cuando no se satisface la condicion de determinacion en la etapa S608, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 continua con el procesamiento desde la etapa S602. Por otro lado, cuando se satisface la condicion de determinacion en la etapa S608, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 termina el procesamiento.
Las particiones en la region vecina por encima se exploran en el orden de derecha a izquierda en la realizacion mostrada en (a) de la figura 4, pero las particiones pueden explorarse en el orden de izquierda a derecha, tal como se muestra en (c) de la figura 4, en una realizacion.
En otra realizacion, puede seleccionarse de manera adaptativa cualquiera entre el orden de exploracion mostrado en (a) de la figura 4 o el orden de exploracion mostrado en (c) de la figura 4. Por ejemplo, el orden de exploracion puede determinarse basandose en una relacion de vectores de movimiento de particiones vecinas. Espedficamente, es posible adoptar un procedimiento de comparacion de una diferencia absoluta a entre el vector de movimiento de la particion BL y el vector de movimiento de la particion BA con una diferencia absoluta p entre el vector de movimiento de la particion BRA y el vector de movimiento de la particion BD en la figura 1B, y seleccionar el orden de exploracion en (c) de la figura 4 si la diferencia absoluta a es menor que la diferencia absoluta p. En el caso opuesto, por otro lado, puede seleccionarse el orden de exploracion en (a) de la figura 4.
5
10
15
20
25
30
35
40
45
50
55
60
65
La particion BE se incluye en la region vecina por encima en la realizacion descrita anteriormente, pero la particion BE puede incluirse en la region vecina a la izquierda. Tambien es posible definir la particion Be como region independiente de la region vecina por encima y la region vecina a la izquierda, y tratar el vector de movimiento de la particion BE como otro candidate a predictor de vector de movimiento.
La realizacion anterior emplea tanto la identificacion de la lista de imagenes de referencia como la identificacion de imagenes de referencia, como condicion de determinacion para seleccionar el vector de movimiento de la particion en la region vecina como candidato a predictor de vector de movimiento, pero otras realizaciones no se limitan a esto. Por ejemplo, puede usarse cualquiera entre la identificacion de lista de imagenes de referencia o la identificacion de imagenes de referencia para la condicion de determinacion. Cuando no se usa la identificacion de imagenes de referencia, puede implementarse el ajuste a escala de vectores de movimiento de particiones en la region vecina segun la distancia entre la trama de referencia y la trama de destino. Tambien es posible usar informacion de otra prediccion intra-tramas. Espedficamente, el tamano de la particion de destino y los tamanos de las particiones vecinas pueden sumarse como uno en la condicion de determinacion mencionada antes. Espedficamente, cuando el tamano de la particion de destino es de NxN pfxeles, una condicion de determinacion puede ser que el tamano de una particion en la region vecina sea de NxN pfxeles, o una condicion de determinacion puede ser que el tamano de una particion este entre N/2xN/2 pfxeles y 2Nx2N pfxeles.
En la realizacion anterior, se realiza el calculo del candidato a predictor de vector de movimiento PMV2 en la region vecina por encima despues del calculo del candidato a predictor de vector de movimiento PMV1 en la region vecina a la izquierda, pero la presente invencion no se limita a esto. El candidato a predictor de vector de movimiento PMV2 en la region vecina por encima puede determinarse antes de la determinacion del candidato a predictor de vector de movimiento PMV1 en la region vecina a la izquierda. En este caso, un procedimiento de determinacion de si un vector de movimiento de una particion en la region vecina a la izquierda es identico al candidato a predictor de vector de movimiento PMV2 en la region vecina por encima puede llevarse a cabo en el proceso de determinacion del candidato a predictor de vector de movimiento PMV1 en la region vecina a la izquierda.
En la realizacion anterior se determina, en la etapa S605, si el vector de movimiento de la j-esima particion en la region vecina por encima es identico al candidato a predictor de vector de movimiento PMV1 en la region vecina a la izquierda, pero puede omitirse esta determinacion. En este caso, el proceso de la etapa S606 puede realizarse directamente cuando se satisface la condicion de determinacion en la etapa S604.
En una realizacion, la etapa S602 puede configurarse para aumentar el mdice j en un incremento de dos o mas, diezmando de ese modo las particiones que han de explorarse.
Lo siguiente describira un dispositivo de descodificacion de video que descodifica un flujo comprimido generado por el dispositivo de codificacion de video 20, para restaurar una secuencia de video. La figura 7 es un dibujo que muestra una configuracion del dispositivo de descodificacion de video segun una realizacion. El dispositivo de descodificacion de video 30 mostrado en la figura 7 es un ejemplo de un dispositivo que descodifica de manera predictiva un vector de movimiento segun un aspecto de la presente invencion.
Tal como se muestra en la figura 7, el dispositivo de descodificacion de video 30 puede estar dotado de una unidad de descodificacion por entropfa 301, una unidad de determinacion de candidatos a predictor de vector de movimiento 302, una unidad de determinacion de predictores de vector de movimiento 303, una unidad de adicion de vectores de movimiento 304, una unidad de compensacion de movimiento 305, una memoria de tramas 306, una unidad de prediccion espacial 307, una unidad de determinacion de procedimiento de prediccion 308, una unidad de cuantizacion inversa 309, una unidad de transformacion ortogonal inversa 310 y una unidad de adicion 311.
La unidad de descodificacion por entropfa 301 recibe un flujo comprimido, luego detecta una palabra de sincronizacion indicativa del comienzo de cada trama en el flujo comprimido, y despues de eso restaura la informacion de modalidad de prediccion y los coeficientes de transformacion ortogonales cuantizados a partir de datos codificados en el flujo comprimido, en cada una de las unidades de particion divididas. Cuando la modalidad de prediccion especificada por la informacion de modalidad de prediccion es la “modalidad de prediccion inter- tramas”, la unidad de descodificacion por entropfa 301 descodifica los datos codificados en el flujo comprimido para restaurar tambien la diferencia de vectores de movimiento, la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia.
La unidad de descodificacion por entropfa 301 transmite los coeficientes de transformacion ortogonales cuantizados y restaurados, a traves de la lmea L301a, a la unidad de cuantizacion inversa 309. La unidad de descodificacion por entropfa 301 transmite la informacion de modalidad de prediccion, la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia, a traves de la lmea L301b, a la unidad de determinacion de candidatos a predictor de vector de movimiento 302. Ademas, la unidad de descodificacion por entropfa 301 transmite la diferencia de vectores de movimiento restaurada, a traves de la lmea L301d, a la unidad de adicion de vectores de movimiento 304. La unidad de descodificacion por entropfa 301 transmite la informacion de modalidad de prediccion restaurada, a traves de la lmea L301e, a la unidad de determinacion de procedimiento de prediccion
5
10
15
20
25
30
35
40
45
50
55
60
65
Cuando la modalidad de prediccion especificada por la informacion de modalidad de prediccion recibida es la “modalidad de prediccion inter-tramas”, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina candidatos a predictor de vector de movimiento a partir de vectores de movimiento de particiones vecinas descodificadas anteriormente. Puesto que el procesamiento sobre la determinacion de candidatos a predictor de vector de movimiento llevado a cabo por la unidad de determinacion de candidatos a predictor de vector de movimiento 302 es el mismo que el procesamiento descrito anteriormente en cuanto a la unidad de determinacion de candidatos a predictor de vector de movimiento 203, se omite la descripcion del mismo en el presente documento. Esta unidad de determinacion de candidatos a predictor de vector de movimiento 302 emite los candidatos a predictor de vector de movimiento determinados, a traves de la lmea L302b, a la unidad de determinacion de predictores de vector de movimiento 303. Ademas, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 emite el numero de candidatos a predictor de vector de movimiento, a traves de la lmea L302a, a la unidad de descodificacion por entropfa 301.
La unidad de descodificacion por entropfa 301, cuando recibe el numero de candidatos a predictor de vector de movimiento a traves de la lmea L302a, descodifica los datos codificados en el flujo comprimido segun el numero de candidatos a predictor de vector de movimiento, para restaurar la informacion de indicacion de predictor de vector de movimiento. La unidad de descodificacion por entropfa 301 transmite la informacion de indicacion de predictor de vector de movimiento restaurada a la unidad de determinacion de predictores de vector de movimiento 303. Mas espedficamente, cuando el numero de candidatos a predictor de vector de movimiento es de 0 o 1, no se trasmite ninguna informacion de indicacion de predictor de vector de movimiento y, por tanto, no se lleva a cabo el proceso de restauracion. Cuando el numero de candidatos a predictor de vector de movimiento es de 2 o 3, los datos codificados de dos bits como maximo se descodifican por entropfa para restaurar la informacion de indicacion de predictor de vector de movimiento.
La unidad de descodificacion por entropfa 301 se configura para restaurar la informacion de indicacion de predictor de vector de movimiento mediante la descodificacion de los datos codificados segun el numero de candidatos a predictor de vector de movimiento, seleccionados por la unidad de determinacion de candidatos a predictor de vector de movimiento 302, pero la presente invencion no se limita a esto. Por ejemplo, la informacion de indicacion de predictor de vector de movimiento puede restaurarse usando la tabla de codificacion fija de la Tabla 1 descrita anteriormente, de manera independiente del numero de candidatos a predictor de vector de movimiento. Debena observarse que el establecimiento de la tabla de codificacion fija no se limita a este ejemplo. La informacion de indicacion de predictor de vector de movimiento puede restaurarse antes del calculo de candidatos a predictor de vector de movimiento.
La unidad de determinacion de predictores de vector de movimiento 303 determina el predictor de vector de movimiento optimo PMVopt basandose en la informacion de indicacion de predictor de vector de movimiento introducida a traves de la lmea L301c, entre los candidatos a predictor de vector de movimiento introducidos a traves de la lmea L302b. El predictor de vector de movimiento optimo determinado PMVopt se transmite a traves de la lmea L303 a la unidad de adicion de vectores de movimiento 304.
La unidad de adicion de vectores de movimiento 304 realiza la adicion de la diferencia de vectores de movimiento transmitida desde la unidad de descodificacion por entropfa 301 y del predictor de vector de movimiento optimo PMVopt, transmitido desde la unidad de determinacion de predictores de vector de movimiento 303, para restaurar el vector de movimiento. La unidad de adicion de vectores de movimiento 304 transmite una senal que incluye el vector de movimiento restaurado, a traves de la lmea L304, a la unidad de compensacion de movimiento 305.
La unidad de compensacion de movimiento 305 selecciona la senal de imagen de trama de referencia en la memoria 306 basandose en el vector de movimiento transmitido desde la unidad de adicion de vectores de movimiento 304 y la informacion de modalidad de prediccion, la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia, transmitidas a traves de la lmea L301d, desde la unidad de descodificacion por entropfa 301, y genera una senal de imagen predicha, usando la senal de imagen de trama de referencia seleccionada. La unidad de compensacion de movimiento 305 transmite la senal de imagen predicha, a traves de la lmea L305a, a la unidad de determinacion de procedimiento de prediccion 308. Ademas, la unidad de compensacion de movimiento 305 emite la informacion de modalidad de prediccion, la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia, usadas en la generacion de la senal de imagen predicha, a traves de la lmea L305b, a la memoria de tramas 306. Existen senales de imagen de trama descodificadas anteriormente, informacion de modalidad de prediccion, identificaciones de listas de imagenes de referencia e identificaciones de imagenes de referencia almacenadas en la memoria 306.
Cuando la modalidad de prediccion especificada por la informacion de modalidad de prediccion, introducida a traves de la lmea L301e, es la “modalidad de prediccion intra-tramas”, la unidad de prediccion espacial 307 genera una senal de imagen predicha con referencia a las senales de imagen (senales de imagen de trama de referencia) de particiones vecinas descodificadas anteriormente y transmite la senal de imagen predicha a la unidad de determinacion de procedimiento de prediccion 308.
5
10
15
20
25
30
35
40
45
50
55
60
65
La unidad de determinacion de procedimiento de prediccion 308 selecciona cualquiera entre la senal de imagen predicha generada por la prediccion inter-tramas o la senal de imagen predicha generada por la prediccion intra- tramas, basandose en la modalidad de prediccion transmitida desde la unidad de descodificacion por entrc^a 301 y transmite la senal de imagen predicha seleccionada, a traves de la lmea L308, a la unidad de adicion 311.
La unidad de cuantizacion inversa 309 realiza la cuantizacion inversa de los coeficientes de transformacion ortogonales cuantizados, transmitidos desde la unidad de descodificacion por entropfa 301, para restaurar los coeficientes de transformacion ortogonales. La unidad de cuantizacion inversa 309 transmite los coeficientes de transformacion ortogonales restaurados, a traves de la lmea L309, a la unidad de transformacion ortogonal inversa 310.
La unidad de transformacion ortogonal inversa 310 aplica una transformacion ortogonal inversa a los coeficientes de transformacion ortogonales recibidos para restaurar una senal residual de prediccion. La unidad de transformacion ortogonal inversa 310 transmite la senal residual de prediccion restaurada, a traves de la lmea L310, a la unidad de adicion 311.
La unidad de adicion 311 realiza la adicion de la senal de imagen predicha, transmitida desde la unidad de determinacion de procedimiento de prediccion 308, y la senal residual de prediccion, transmitida desde la unidad de transformacion ortogonal inversa 310, para restaurar una senal de imagen de trama.
La senal de imagen de trama restaurada se emite, con una temporizacion de exhibicion predeterminada, a un dispositivo de visualizacion (no mostrado), mediante lo cual puede reproducirse la senal de video de entrada (senal de imagen dinamica). Puesto que se usa la senal de imagen de trama en el proceso de descodificacion posterior, se almacena como una senal de imagen de trama de referencia en la memoria 306. La senal de imagen de trama en el presente documento puede ser del mismo valor que la senal de imagen de trama con el mismo numero en el dispositivo de codificacion de video 20. La informacion sobre el vector de movimiento y el numero de trama de referencia tambien se almacena simultaneamente en asociacion con la senal de imagen de trama de referencia.
A continuacion, se describira una realizacion de un procedimiento de descodificacion predictiva de vectores de movimiento, usado en el dispositivo 30 de descodificacion de video, en lo que sigue, con referencia a la figura 8. La figura 8 es un diagrama de flujo que muestra una realizacion del procedimiento de descodificacion predictiva de vectores de movimiento.
En el procedimiento de descodificacion predictiva de predictores de vectores de movimiento, segun una realizacion, tal como se muestra en la figura 8, la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia se introducen en primer lugar en la unidad de determinacion de candidatos a predictor de vector de movimiento 302 (etapa S801).
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina un candidato a predictor de vector de movimiento, PMV1, a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones incluidas en una region vecina a la izquierda, ubicada a la izquierda de una particion BT de destino (etapa S302).
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina un candidato a predictor de vector de movimiento, PMV2, a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones incluidas en la region vecina por encima, ubicada por encima de la particion BT de destino (etapa S303).
A continuacion, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina un candidato a predictor de vector de movimiento PMV3 (etapa S304). Los procesos de las etapas S302 a S304 en la figura 8 son los mismos que los procesos de las etapas S302 a S304 en la figura 3.
En la etapa S805, entonces la unidad de determinacion de candidatos a predictor de vector de movimiento 302 define como candidatos a predictor de vector de movimiento solo candidatos a predictor de vector de movimiento no identicos, entre el candidato a predictor de vector de movimiento PMV1, el candidato a predictor de vector de movimiento PMV2 y el candidato a predictor de vector de movimiento PMV3. Como ejemplo espedfico, cuando el candidato a predictor de vector de movimiento PMV1 es identico al candidato a predictor de vector de movimiento PMV3, solo se seleccionan el candidato a predictor de vector de movimiento PMV1 y el candidato a predictor de vector de movimiento PMV2 como candidatos a predictor de vector de movimiento. Cuando el procesamiento hasta la etapa S805 da como resultado que no se determina ningun candidato efectivo a predictor de vector de movimiento, se define un vector de movimiento cero como candidato a predictor de vector de movimiento.
En la etapa S806, tal como se ha descrito anteriormente, la unidad de descodificacion 301 restaura la informacion de indicacion de predictor de vector de movimiento basandose en el numero de candidatos a predictor de vector de movimiento. A continuacion, en la etapa S807, la unidad de determinacion de predictores de vector de movimiento
5
10
15
20
25
30
35
40
45
50
55
60
65
303 selecciona el predictor de vector de movimiento optimo entre los candidatos a predictor de vector de movimiento, basandose en la informacion de indicacion de predictor de vector de movimiento.
A continuacion, se describira una segunda realizacion del procedimiento de codificacion predictiva de vectores de movimiento en lo que sigue. La figura 9 es un diagrama de flujo que muestra el proceso de determinacion de candidatos a predictor de vector de movimiento en el procedimiento de codificacion predictiva de vectores de movimiento en la segunda realizacion. En el procedimiento de codificacion predictiva de vectores de movimiento segun la segunda realizacion, se usa el flujo mostrado en la figura 9 en vez de las etapas S302 a S304 en la figura
3.
En la presente realizacion, en la etapa S901, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 explora en primer lugar las particiones en la region vecina a la izquierda ubicada a la izquierda de la particion de destino en un sentido descendente, para determinar un candidato a predictor de vector de movimiento PMVa a partir de los vectores de movimiento de estas particiones. En la etapa S901, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede detectar el candidato a predictor de vector de movimiento PMVa llevando a cabo el procedimiento de determinacion del candidato a predictor de vector de movimiento PMV1 (etapa S302) descrito en la primera realizacion, segun el orden de exploracion de la region vecina a la izquierda mostrada en (c) de la figura 4. Para determinar el candidato a predictor de vector de movimiento PMVa, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede usar la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia introducidas, como en la primera realizacion.
A continuacion, en la etapa S902, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 explora las particiones en una region vecina a la izquierda ubicada a la izquierda de la particion de destino en un sentido ascendente para determinar un candidato a predictor de vector de movimiento PMVb a partir de los vectores de movimiento de estas particiones. En la etapa S902, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede detectar el candidato a predictor de vector de movimiento PMVb llevando a cabo el procedimiento de determinacion del candidato a predictor de vector de movimiento PMV1 (etapa S302), descrito en la primera realizacion, segun el orden de exploracion de la region vecina a la izquierda mostrada en (a) de la figura
4. Para determinar el candidato a predictor de vector de movimiento PMVb, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede usar la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia.
A continuacion, en la etapa S903 la unidad de determinacion de candidatos a predictor de vector de movimiento 203 selecciona un candidato a predictor de vector de movimiento PMVX en la region vecina a la izquierda del candidato a predictor de vector de movimiento PMVa y del candidato a predictor de vector de movimiento PMVb. Ademas, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 genera informacion de indicacion de direccion de exploracion, indicativa de la direccion de exploracion X usada para la determinacion del candidato a predictor de vector de movimiento seleccionado. Espedficamente, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina, como candidato a predictor de vector de movimiento PMVX, un candidato a predictor de vector de movimiento con el mmimo error con respecto al predictor de vector de movimiento de la particion de destino, entre el candidato a predictor de vector de movimiento PMVa y el candidato a predictor de vector de movimiento PMVb. Ademas, cuando se selecciona el candidato a predictor de vector de movimiento PMVa como candidato a predictor de vector de movimiento PMVX, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 genera la informacion de indicacion de direccion de exploracion, indicativa del sentido descendente; mientras que cuando se selecciona el candidato a predictor de vector de movimiento PMVb, genera la informacion de indicacion de direccion de exploracion indicativa del sentido ascendente.
A continuacion, en la etapa S904, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 explora las particiones en la region vecina por encima de la particion de destino, en un sentido hacia la derecha para determinar un candidato a predictor de vector de movimiento PMVc, a partir de los vectores de movimiento de estas particiones. En la etapa S904, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede detectar el candidato a predictor de vector de movimiento PMVc llevando a cabo el procedimiento de determinacion del candidato a predictor de vector de movimiento PMV2 (etapa S303) descrito en la primera realizacion, segun el orden de exploracion de la region vecina por encima, mostrada en (c) de la figura 4. Para determinar el candidato a predictor de vector de movimiento PMVc, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede usar la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia introducidas, como en la primera realizacion.
A continuacion, en la etapa S905, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 explora las particiones en la region vecina por encima de la particion de destino en un sentido hacia la izquierda para determinar un candidato a predictor de vector de movimiento PMVd a partir de vectores de movimiento de estas particiones. En la etapa S905, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 puede detectar el candidato a predictor de vector de movimiento PMVd llevando a cabo el procedimiento de determinacion (etapa S303) del candidato a predictor de vector de movimiento PMV2 descrito en la primera realizacion, segun el orden de exploracion de la region vecina por encima, mostrada en (a) de la figura 4. Para determinar el candidato a predictor de vector de movimiento PMVd, la unidad de determinacion de candidatos a
5
10
15
20
25
30
35
40
45
50
55
60
65
predictor de vector de movimiento 203 tambien puede usar la identificacion de la lista de imagenes de referencia y la identificacion de imagenes de referencia.
A continuacion, en la etapa S906, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 selecciona un candidato a predictor de vector de movimiento PMVY en la region vecina por encima del candidato a predictor de vector de movimiento PMVc y del candidato a predictor de vector de movimiento PMVd. La unidad de determinacion de candidatos a predictor de vector de movimiento 203 genera la informacion de indicacion de direccion de exploracion, indicativa de la direccion de exploracion Y usada para la determinacion del candidato a predictor de vector de movimiento seleccionado. Espedficamente, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 determina un candidato a predictor de vector de movimiento con el mmimo error con respecto al predictor de vector de movimiento de la particion de destino, entre el candidato a predictor de vector de movimiento PMVc y el candidato a predictor de vector de movimiento PMVd, como candidato a predictor de vector de movimiento PMVy. Cuando se selecciona el candidato a predictor de vector de movimiento PMVc como candidato a predictor de vector de movimiento PMVY, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 genera la informacion de indicacion de direccion de exploracion, indicativa del sentido hacia la derecha; cuando se selecciona el candidato a predictor de vector de movimiento PMVd, genera la informacion de indicacion de direccion de exploracion, indicativa del sentido hacia la izquierda.
A continuacion, en la etapa S907, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 adquiere un candidato a predictor de vector de movimiento PMVZ de una particion en una trama de referencia en una posicion espacialmente identica a la particion de destino, de la misma manera que el proceso de la etapa S304. El proceso en esta etapa S907 puede el mismo que la forma de modificacion mencionada anteriormente del proceso de la etapa S304 en la primera realizacion.
A continuacion, en la etapa S908, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 solo define candidatos a predictor de vector de movimiento no identicos entre el candidato a predictor de vector de movimiento PMVX, el candidato a predictor de vector de movimiento PMVY y el candidato a predictor de vector de movimiento PMVZ, como candidatos a predictor de vector de movimiento. Entonces, la unidad de determinacion de candidatos a predictor de vector de movimiento 203 emite los candidatos a predictor de vector de movimiento, el numero de candidatos a predictor de vector de movimiento y la informacion de indicacion de direccion de exploracion. Como ejemplo espedfico, cuando el candidato a predictor de vector de movimiento PMVX es identico al candidato a predictor de vector de movimiento PMVZ, solo se seleccionan el candidato a predictor de vector de movimiento PMVX y el candidato a predictor de vector de movimiento PMVY como candidatos a predictor de vector de movimiento. Si no se determina un candidato a predictor de vector de movimiento efectivo en las etapas S901 a S907, se define un vector de movimiento cero como candidato a predictor de vector de movimiento.
Despues de eso, el mismo procesamiento que en la etapa S306 en la primera realizacion se lleva a cabo en la segunda realizacion. Finalmente, en la etapa S307 la unidad de codificacion 213 codifica la informacion de indicacion de predictor de vector de movimiento para especificar que candidato a predictor de vector de movimiento es el predictor de vector de movimiento optimo. En la segunda realizacion, la unidad de codificacion 213 tambien codifica la informacion de indicacion de direccion de exploracion en la etapa S307.
En la segunda realizacion, las particiones que constituyen la region vecina a la izquierda y las particiones que constituyen la region vecina por encima pueden modificarse tal como se ha descrito anteriormente en la primera realizacion. El numero de predictores de vector de movimiento tambien puede cambiarse tal como se ha descrito anteriormente en la primera realizacion. Tal como se ha descrito anteriormente en la primera realizacion, el orden de determinacion de los candidatos a predictor de vector de movimiento PMVX, PMVY y PMVZ puede cambiarse basandose en la modalidad de division de la particion de destino en sub-particiones y las posiciones de las sub- particiones.
Se describira en lo que sigue un procedimiento de descodificacion predictiva de vectores de movimiento segun la segunda realizacion. La figura 10 es un diagrama de flujo que muestra el procedimiento de descodificacion predictiva de vectores de movimiento segun la segunda realizacion. El procedimiento de descodificacion predictiva mostrado en la figura 10 es un procedimiento de prediccion de un vector de movimiento a partir de datos codificados generados por el procedimiento de codificacion predictiva de vectores de movimiento segun la segunda realizacion.
En la presente realizacion, tal como se muestra en la figura 10, en la etapa S1001 la unidad de determinacion de candidatos a predictor de vector de movimiento 302 recibe en primer lugar la introduccion de la identificacion de la lista de imagenes de referencia, la identificacion de imagenes de referencia e informacion de indicacion de direccion de exploracion, restauradas (direccion de exploracion X, direccion de exploracion Y).
A continuacion, en la etapa S1002, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina un candidato a predictor de vector de movimiento PMVX en la region vecina a la izquierda, segun la identificacion de la lista de imagenes de referencia, la identificacion de imagenes de referencia y la informacion de indicacion de direccion de exploracion para especificar la direccion de exploracion X. El candidato a predictor de vector de movimiento PMVX se determina mediante el mismo proceso que la determinacion del candidato a
5
10
15
20
25
30
35
40
45
50
55
60
65
predictor de vector de movimiento PMV1 en la primera realizacion, mediante exploracion secuencial de las particiones en la region vecina a la izquierda en la direccion de exploracion X especificada por la informacion de indicacion de direccion de exploracion.
A continuacion, en la etapa S1003, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina un candidato a predictor de vector de movimiento PMVY en la region vecina por encima, segun la identificacion de la lista de imagenes de referencia, la identificacion de imagenes de referencia y la informacion de indicacion de direccion de exploracion para especificar la direccion de exploracion Y. El candidato a predictor de vector de movimiento PMVY se determina mediante el mismo proceso que la determinacion del candidato a predictor de vector de movimiento PMV2 en la primera realizacion, mediante exploracion secuencial de las particiones en la region vecina por encima en la direccion de exploracion Y especificada por la informacion de indicacion de direccion de exploracion.
A continuacion, en la etapa S1004, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 determina un candidato a predictor de vector de movimiento PMVZ de una particion en una trama de referencia espacialmente identica a la particion de destino. El proceso de la etapa S1004 es el mismo que el proceso de la etapa 304.
A continuacion, en la etapa S1005, la unidad de determinacion de candidatos a predictor de vector de movimiento 302 solo define candidatos a predictor de vector de movimiento no identicos, entre el candidato a predictor de vector de movimiento PMVX, el candidato a predictor de vector de movimiento PMVY y el candidato a predictor de vector de movimiento PMVZ, como candidatos a predictor de vector de movimiento. Como ejemplo espedfico, cuando el candidato a predictor de vector de movimiento PMVX es identico al candidato a predictor de vector de movimiento PMVZ, solo se seleccionan el candidato a predictor de vector de movimiento PMVX y el candidato a predictor de vector de movimiento PMVY como candidatos a predictor de vector de movimiento. Si se determina ningun candidato a predictor de vector de movimiento efectivo mediante el procesamiento hasta la etapa S1005, se define un vector de movimiento cero como candidato a predictor de vector de movimiento.
A continuacion, en la etapa S1006, la unidad de descodificacion 301 restaura la informacion de indicacion de predictor de vector de movimiento basandose en el numero de candidatos a predictor de vector de movimiento. En la etapa S1007, entonces la unidad de determinacion de predictores de vector de movimiento 303 selecciona el predictor de vector de movimiento optimo de entre los candidatos a predictor de vector de movimiento, basandose en la informacion de indicacion de predictor de vector de movimiento.
En la segunda realizacion, el orden de determinacion de los candidatos a predictor de vector de movimiento PMVX, PMVY y PMVZ tambien puede cambiarse basandose en la modalidad de division de la particion de destino en sub- particiones y las posiciones de las sub-particiones, tal como se ha descrito anteriormente en la primera realizacion.
El dispositivo de codificacion de video 20 y el dispositivo de descodificacion de video 30, descritos anteriormente, se configuran para limitar los candidatos para un predictor de vector de movimiento y luego detectan el predictor de vector de movimiento optimo entre los candidatos resultantes a predictor de vector de movimiento. Por tanto, es posible reducir la complejidad de calculo necesaria para la determinacion del predictor de vector de movimiento optimo. Ademas, la informacion de indicacion de predictor de vector de movimiento para especificar el predictor de vector de movimiento optimo puede codificarse en un menor recuento de bits.
El dispositivo de codificacion de video 20 y el dispositivo de descodificacion de video 30 que usan la codificacion predictiva y descodificacion predictiva de la segunda realizacion pueden determinar los candidatos a predictor de vector de movimiento con un menor error con respecto al vector de movimiento de la particion de destino.
Lo siguiente describira un programa de codificacion de video 1000 para hacer que un ordenador funcione como el dispositivo de codificacion de video 20, y un programa de descodificacion de video 1100 para hacer que un ordenador funcione como el dispositivo de descodificacion de video 30 mencionado anteriormente.
La figura 11 es un dibujo que muestra una configuracion del programa de codificacion de video segun una realizacion. La figura 12 es un dibujo que muestra una configuracion del programa de descodificacion de video segun una realizacion. La figura 13 es un dibujo que muestra una configuracion de hardware de un ordenador segun una realizacion. La figura 14 es una vista en perspectiva que muestra un ordenador segun una realizacion.
El programa de codificacion de video 1000 mostrado en la figura 11 puede proporcionarse almacenado en un medio SM de grabacion. Ademas, el programa de descodificacion de video 1100 mostrado en la figura 12 tambien puede proporcionarse almacenado en un medio SM de grabacion. Los ejemplos de tales medios SM de grabacion aplicables en el presente documento incluyen medios de grabacion tales como el disco flexible, el CD-ROM, el DVD o la ROM, memorias de semiconductor o similares.
Tal como se muestra en la figura 13, un ordenador C10 puede estar dotado de un dispositivo de lectura C12, tal como una unidad de disco flexible, una unidad de CD-ROM o una unidad de DVD, una memoria de trabajo (RAM)
5
10
15
20
25
30
35
40
45
50
55
60
65
C14 en la que reside un sistema operativo, una memoria C16 que almacena un programa almacenado en un medio SM de grabacion, una unidad de monitor C18 tal como una pantalla, un raton C20 y un teclado C22 como dispositivos de entrada, un dispositivo de comunicacion C24 para la transmision y recepcion de datos y otros, y una CPU C26 para controlar la ejecucion del programa.
Cuando se pone el medio SM de grabacion en el dispositivo de lectura C12, el ordenador C10 se vuelve accesible para el programa de codificacion de video 1000 almacenado en el medio SM de grabacion, mediante el dispositivo de lectura C12, y puede funcionar como el dispositivo de codificacion de video 20, basandose en el programa 1000.
Cuando se pone el medio SM de grabacion en el dispositivo de lectura C12, el ordenador C10 se vuelve accesible para el programa de descodificacion de video 1100 almacenado en el medio SM de grabacion, mediante el dispositivo de lectura C12, y puede funcionar como el dispositivo de descodificacion de video 30, basandose en el programa 1100.
Tal como se muestra en la figura 11, el programa de codificacion de video 1000 esta dotado de un modulo principal 1001 para controlar generalmente el procesamiento, un modulo de entrada 1002, un modulo de deteccion de movimiento 1003, un modulo de determinacion de candidatos a predictor de vector de movimiento 1004, un modulo de determinacion de predictor de vector de movimiento 1005, un modulo de diferencia de vectores de movimiento 1006, un modulo de compensacion de movimiento 1007, un modulo de prediccion espacial 1008, un modulo de determinacion de procedimiento de prediccion 1009, un modulo de resta 1010, un modulo de transformacion ortogonal 1011, un modulo de cuantizacion 1012, un modulo de codificacion por entropfa 1013, un modulo de cuantizacion inversa 1014, un modulo de transformacion ortogonal inversa 1015 y un modulo de adicion 1016. Las funciones que el modulo de entrada 1002, el modulo de deteccion de movimiento 1003, el modulo de determinacion de candidatos a predictor de vector de movimiento 1004, el modulo de determinacion de predictor de vector de movimiento 1005, el modulo de diferencia de vectores de movimiento 1006, el modulo de compensacion de movimiento 1007, el modulo de prediccion espacial 1008, el modulo de determinacion de procedimiento de prediccion 1009, el modulo de resta 1010, el modulo de transformacion ortogonal 1011, el modulo de cuantizacion 1012, el modulo de codificacion por entropfa 1013, el modulo de cuantizacion inversa 1014, el modulo de transformacion ortogonal inversa 1015 y el modulo de adicion 1016 hacen que implemente un ordenador son las mismas que las funciones de la unidad de entrada 201, la unidad de deteccion de movimiento 202, la unidad de determinacion de candidatos a predictor de vector de movimiento 203, la unidad de determinacion de predictores de vector de movimiento 204, la unidad de diferencia de vectores de movimiento 205, la unidad de compensacion de movimiento 206, la unidad de prediccion espacial 208, la unidad de determinacion de procedimiento de prediccion 209, la unidad de resta 210, la unidad de transformacion 211 ortogonal, la unidad de cuantizacion 212, la unidad de codificacion por entropfa 213, la unidad de cuantizacion inversa 214, la unidad de transformacion ortogonal inversa 215 y la unidad de adicion 216 mencionadas antes, respectivamente.
Tal como se muestra en la figura 12, el programa de descodificacion de video 1100 esta dotado de un modulo principal 1101 para controlar generalmente el procesamiento, un modulo de descodificacion por entropfa 1102, un modulo de determinacion de candidatos a predictor de vector de movimiento 1103, un modulo de determinacion de predictor de vector de movimiento 1104, un modulo de adicion de vectores de movimiento 1105, un modulo de compensacion de movimiento 1106, un modulo de prediccion espacial 1107, un modulo de determinacion de procedimiento de prediccion 1108, un modulo de cuantizacion inversa 1109, un modulo de transformacion ortogonal inversa 1110 y un modulo de adicion 1111. Las funciones que el modulo de descodificacion por entropfa 1102, el modulo de determinacion de candidatos a predictor de vector de movimiento 1103, el modulo de determinacion de predictor de vector de movimiento 1104, el modulo de adicion de vectores de movimiento 1105, el modulo de compensacion de movimiento 1106, el modulo de prediccion espacial 1107, el modulo de determinacion de procedimiento de prediccion 1108, el modulo de cuantizacion inversa 1109, el modulo de transformacion ortogonal inversa 1110 y el modulo de adicion 1111 hacen que implemente un ordenador son las mismas que las funciones de la unidad de descodificacion por entropfa 301, la unidad de determinacion de candidatos a predictor de vector de movimiento 302, la unidad de determinacion de predictores de vector de movimiento 303, la unidad de adicion de vectores de movimiento 304, la unidad de compensacion de movimiento 305, la unidad de prediccion espacial 307, la unidad 308 de determinacion de procedimiento de prediccion, la unidad de cuantizacion inversa 309, la unidad de transformacion ortogonal inversa 310 y la unidad de adicion 311 mencionadas antes, respectivamente.
Lo anterior describe diversas realizaciones, pero la presente invencion puede modificarse de muchas maneras sin limitarse a las realizaciones anteriores. Por ejemplo, en las realizaciones anteriores los datos codificados de la diferencia de vectores de movimiento, que es la diferencia entre el vector de movimiento de la particion de destino y el predictor de vector de movimiento (predictor de vector de movimiento optimo), se transmite desde el dispositivo de codificacion al dispositivo de descodificacion, pero el predictor de vector de movimiento optimo puede adoptarse como vector de movimiento de la particion de destino, sin transmitir los datos codificados de la diferencia de vectores de movimiento desde el dispositivo de codificacion al dispositivo de descodificacion.
El candidato a predictor de vector de movimiento PMVX puede determinarse tal como sigue: se crean senales de imagen predichas usando los candidatos a predictor de vector de movimiento PMVa y PMVb y el candidato a predictor de vector de movimiento PMVX que va a adoptarse es un candidato a predictor de vector de movimiento
5
10
15
20
25
para hacer que sea menor la suma de diferencias absolutas (SAD) entre la senal de imagen predicha y la senal de imagen de la particion de destino, entre los candidates a predictor de vector de movimiento PMVa y PMVb. El candidate a predictor de vector de movimiento PMVY puede determinarse tal como sigue: se crean senales de imagen predichas usando los candidatos a predictor de vector de movimiento PMVc y PMVd y el candidato a predictor de vector de movimiento PMVY que va a adoptarse es un candidato a predictor de vector de movimiento para hacer que sea menor la suma de diferencias absolutas (SAD) entre la senal de imagen predicha y la senal de imagen de la particion de destino, entre los candidatos a predictor de vector de movimiento PMVc y PMCd. Ademas, puede usarse la suma de diferencias transformadas absolutas (SATD) o la suma de diferencias al cuadrado (SSD), en vez de la SAD.
Lista de simbolos de referencia
20 dispositivo de codificacion de video; 30 dispositivo de descodificacion de video; 201 unidad de entrada; 202 unidad de deteccion; 203 unidad de determinacion de candidatos a predictor de vector de movimiento; 204 unidad de determinacion de predictores de vector de movimiento; 205 unidad de diferencia de vectores de movimiento; 206 unidad de compensacion de movimiento; 207 memoria; 208 unidad de prediccion espacial; 209 unidad de determinacion de procedimiento de prediccion; 210 unidad de resta; 211 unidad de transformacion; 212 unidad de cuantizacion; 213 unidad de codificacion por entropfa; 214 unidad de cuantizacion inversa; 215 unidad de transformacion inversa; 216 unidad de adicion; 301 unidad de descodificacion por entropfa; 302 unidad de determinacion de candidatos a predictor de vector de movimiento; 303 unidad de determinacion de predictores de vector de movimiento; 304 unidad de adicion de vectores de movimiento; 305 unidad de compensacion de movimiento; 306 memoria de tramas; 307 unidad de prediccion espacial; 308 unidad de determinacion de procedimiento de prediccion; 309 unidad de cuantizacion inversa; 310 unidad de transformacion ortogonal inversa; 311 unidad de adicion.

Claims (11)

10
15
20
25
30
35
40 2.
45
50
3.
4. 55
5.
60
6.
REIVINDICACIONES
Un procedimiento para descodificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento para restaurar una secuencia de video que consiste en una secuencia temporal de una pluralidad de imagenes de trama, que comprende:
una etapa (S302) de determinacion de un primer candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento, a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina a la izquierda ubicada en el lado izquierdo de una particion de destino en una imagen de trama de un objetivo de descodificacion;
una etapa (S303) de determinacion de un segundo candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado en la determinacion de candidatos a predictor de vector de movimiento, a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina por encima ubicada por encima de la particion de destino;
una etapa (S306) de seleccion del predictor de vector de movimiento optimo especificado por la informacion de indicacion de predictor de vector de movimiento, a partir de uno o mas candidatos a predictor de vector de movimiento, incluyendo al menos el primer candidato a predictor de vector de movimiento y el segundo candidato a predictor de vector de movimiento
en el que la etapa (S302) de determinacion del primer candidato a predictor de vector de movimiento comprende explorar una pluralidad de particiones incluidas en la region vecina a la izquierda usando un mdice de exploracion i, en un sentido ascendente desde una parte inferior de la region vecina a la izquierda, determinando de ese modo un vector de movimiento que satisface el criterio predeterminado usado en la determinacion de candidatos a predictor de vector de movimiento, como primer candidato a predictor de vector de movimiento, a partir del vector de movimiento, o vectores de movimiento, de dicha una o mas particiones
y determinar (S504) si tanto la i-esima particion como la particion de destino tienen el mismo numero de identificacion de lista de imagenes de referencia y numero de identificacion de imagenes de referencia o no, si la i-esima particion esta presente en el orden de exploracion en la region vecina a la izquierda y dicha particion tiene un vector de movimiento,
determinar (S505) el vector de movimiento de la i-esima particion como primer candidato a vector de prediccion, si tanto la i-esima particion como la particion de destino tienen el mismo numero de identificacion de lista de imagenes de referencia y numero de identificacion de imagenes de referencia.
El procedimiento segun la reivindicacion 1, que comprende:
determinar (S603) si la j-esima particion esta presente en el orden de exploracion en la region vecina por encima y dicha particion tiene un vector de movimiento o no,
determinar (S604) si tanto la j-esima particion como la particion de destino tienen la misma identificacion de lista de imagenes de referencia e identificacion de imagenes de referencia o no,
determinar (S606) el vector de movimiento de la j-esima particion como primer candidato a vector de prediccion basandose para la determinacion.
El procedimiento segun la reivindicacion 1 o 2, en el que la region vecina a la izquierda incluye una particion vecina ubicada por debajo y a la izquierda de la particion de destino.
El procedimiento segun una cualquiera de las reivindicaciones 1 a 3, en el que la region vecina por encima incluye una particion vecina ubicada por encima y a la derecha de la particion de destino.
El procedimiento segun una cualquiera de las reivindicaciones 1 a 4, en el que o bien la region vecina a la izquierda o bien la region vecina por encima incluye una particion vecina ubicada por encima y a la izquierda de la particion de destino.
El procedimiento segun una cualquiera de las reivindicaciones 1 a 5, en el que la etapa (S303) de determinacion del segundo candidato a predictor de vector de movimiento comprende explorar una o mas particiones incluidas en la region vecina por encima, en un sentido de derecha a izquierda usando un mdice de exploracion j, y determinar de ese modo, como segundo candidato a predictor de vector de movimiento, un vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento, a partir del vector de movimiento, o vectores de
5
10
15
20
25
30
35
40
45
50
55
60
65
movimiento, de la una o mas particiones pertenecientes a la region vecina por encima.
El procedimiento segun una cualquiera de las reivindicaciones 1 a 6, en el que el numero de los uno o mas candidates a predictor de vector de movimiento es no mas de 3.
El procedimiento segun una cualquiera de las reivindicaciones 1 a 7,
en el que se genera una senal predicha de la particion de destino haciendo referencia a una trama de referencia con un numero de trama especificado por una identificacion de lista de imagenes de referencia y una identificacion de imagenes de referencia,
en el que la etapa (S302) de determinacion del primer candidato a predictor de vector de movimiento comprende determinar el primer candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina a la izquierda que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia coincidente con la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino, y
en el que la etapa (S303) de determinacion del segundo candidato a predictor de vector de movimiento comprende determinar el segundo candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina por encima que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia coincidente con la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino.
Un dispositivo para descodificar de manera predictiva un vector de movimiento usado en la prediccion con compensacion de movimiento para restaurar una secuencia de video que consiste en una secuencia temporal de una pluralidad de imagenes de trama, que comprende:
primeros medios de determinacion de candidatos a predictor de vector de movimiento (203) adaptados para determinar un primer candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina a la izquierda ubicada en el lado izquierdo de una particion de destino en una imagen de trama de un objetivo de descodificacion;
segundos medios de determinacion de candidatos a predictor de vector de movimiento (203) adaptados para determinar un segundo candidato a predictor de vector de movimiento que satisface un criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento a partir de un vector de movimiento, o vectores de movimiento, de una o mas particiones pertenecientes a una region vecina por encima ubicada por encima de la particion de destino;
medios de determinacion de predictor de vector de movimiento optimo (204) adaptados para seleccionar el predictor de vector de movimiento optimo especificado por la informacion de indicacion de predictor de vector de movimiento, a partir de uno o mas candidatos a predictor de vector de movimiento incluyendo al menos el primer candidato a predictor de vector de movimiento y el segundo candidato a predictor de vector de movimiento,
en el que los primeros medios de determinacion de candidatos a predictor de vector de movimiento (203) estan adaptados para explorar una pluralidad de particiones incluidas en la region vecina a la izquierda usando un mdice de exploracion i, en un sentido ascendente desde una parte inferior de la region vecina a la izquierda, determinando de ese modo un vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento, como primer candidato a predictor de vector de movimiento, a partir del vector de movimiento, o vectores de movimiento, de dicha una o mas particiones
y para determinar si tanto la i-esima particion como la particion de destino tienen el mismo numero de identificacion de lista de imagenes de referencia y numero de identificacion de imagenes de referencia o no, si la i-esima particion esta presente en el orden de exploracion en la region vecina a la izquierda y dicha particion tiene un vector de movimiento,
para determinar el vector de movimiento de la i-esima particion como primer candidato a vector de prediccion, si tanto la i-esima particion como la particion de destino tienen el mismo numero de identificacion de lista de imagenes de referencia y numero de identificacion de imagenes de referencia.
El dispositivo segun la reivindicacion 9, en el que
10
15
20
25
30
35
40
45
50
los segundos medios de determinacion de candidatos a predictor de vector de movimiento (203) estan adaptados para determinar si la j-esima particion esta presente en el orden de exploracion en la region vecina por encima y dicha particion tiene un vector de movimiento o no,
para determinar si tanto la j-esima particion como la particion de destino tienen la misma identificacion de lista de imagenes de referencia e identificacion de imagenes de referencia o no,
para determinar el vector de movimiento de la j-esima particion como primer candidato a vector de prediccion basandose para la determinacion.
11. El dispositivo segun la reivindicacion 9 o 10, en el que la region vecina a la izquierda incluye una particion vecina ubicada por debajo y a la izquierda de la particion de destino.
12. El dispositivo segun una cualquiera de las reivindicaciones 9 a 11, en el que la region vecina por encima incluye una particion vecina ubicada por encima y a la derecha de la particion de destino.
13. El dispositivo segun una cualquiera de las reivindicaciones 9 a 12, en el que o bien la region vecina a la izquierda o bien la region vecina por encima incluye una particion vecina ubicada por encima y a la izquierda de la particion de destino.
14. El dispositivo segun una cualquiera de las reivindicaciones 9 a 13, en el que los segundos medios de determinacion de candidatos a predictor de vector de movimiento (203) estan adaptados para explorar una o mas particiones incluidas en la region vecina por encima, en un sentido de derecha a izquierda usando un mdice de exploracion j, y determinar de ese modo, como segundo candidato a predictor de vector de movimiento, un vector de movimiento que satisface el criterio predeterminado usado para la determinacion de candidatos a predictor de vector de movimiento, a partir del vector de movimiento, o vectores de movimiento, de la una o mas particiones pertenecientes a la region vecina por encima.
15. El dispositivo segun una cualquiera de las reivindicaciones 9 a 14, en el que el numero de los uno o mas candidatos a predictor de vector de movimiento es no mas de 3.
16. El dispositivo segun una cualquiera de las reivindicaciones 9 a 15,
en el que se genera una senal predicha de la particion de destino haciendo referencia a una trama de referencia con un numero de trama especificado por una identificacion de lista de imagenes de referencia y una identificacion de imagenes de referencia,
en el que los primeros medios de determinacion de candidatos a predictor de vector de movimiento (203) estan adaptados para determinar el primer candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina a la izquierda que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia coincidente con la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino, y
en el que los segundos medios de determinacion de candidatos a predictor de vector de movimiento (203) estan adaptados para determinar el segundo candidato a predictor de vector de movimiento a partir de vectores de movimiento de particiones en la region vecina por encima que tienen una identificacion de lista de imagenes de referencia y/o una identificacion de imagenes de referencia coincidente con la identificacion de la lista de imagenes de referencia y/o la identificacion de imagenes de referencia para la particion de destino.
ES15166363.0T 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento Active ES2622732T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011002205 2011-01-07
JP2011002205 2011-01-07

Publications (1)

Publication Number Publication Date
ES2622732T3 true ES2622732T3 (es) 2017-07-07

Family

ID=46457445

Family Applications (4)

Application Number Title Priority Date Filing Date
ES20217808T Active ES2936314T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento
ES11855027.6T Active ES2614821T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento
ES15166363.0T Active ES2622732T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento
ES22194613T Active ES2957772T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento

Family Applications Before (2)

Application Number Title Priority Date Filing Date
ES20217808T Active ES2936314T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento
ES11855027.6T Active ES2614821T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES22194613T Active ES2957772T3 (es) 2011-01-07 2011-12-20 Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento

Country Status (19)

Country Link
US (5) US9693052B2 (es)
EP (6) EP4120685A1 (es)
JP (5) JP5698767B2 (es)
KR (6) KR20140011475A (es)
CN (5) CN105791857B (es)
AU (1) AU2011353904B2 (es)
BR (1) BR112013017208B1 (es)
CA (4) CA3079646C (es)
DK (2) DK4120686T3 (es)
ES (4) ES2936314T3 (es)
FI (2) FI4120686T3 (es)
HU (2) HUE063372T2 (es)
MX (4) MX2013007540A (es)
PL (4) PL3826306T3 (es)
PT (4) PT2938082T (es)
RU (7) RU2649770C1 (es)
SG (1) SG191232A1 (es)
TW (3) TWI621352B (es)
WO (1) WO2012093585A1 (es)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101456499B1 (ko) * 2010-07-09 2014-11-03 삼성전자주식회사 움직임 벡터의 부호화 방법 및 장치, 그 복호화 방법 및 장치
US9300970B2 (en) 2010-07-09 2016-03-29 Samsung Electronics Co., Ltd. Methods and apparatuses for encoding and decoding motion vector
FI4120686T3 (fi) 2011-01-07 2023-09-12 Ntt Docomo Inc Liikevektorin ennustava koodausmenetelmä, ennustava koodauslaite ja ennustava koodausohjelma sekä liikevektorin ennustava dekoodausmenetelmä, ennustava dekoodauslaite ja ennustava dekoodausohjelma
US9319716B2 (en) * 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US9374598B2 (en) 2011-03-21 2016-06-21 Lg Electronics Inc. Method for selecting motion vector predictor and device using same
EP3879832A1 (en) * 2011-05-31 2021-09-15 JVCKENWOOD Corporation Moving image encoding device, moving image encoding method and moving image encoding program, as well as moving image decoding device, moving image decoding method and moving image decoding program
EP2728878B1 (en) * 2011-06-30 2020-02-19 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
JP2013098711A (ja) * 2011-10-31 2013-05-20 Mitsubishi Electric Corp 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
CN103079067B (zh) * 2013-01-09 2016-03-09 华为技术有限公司 运动矢量预测值列表构建方法和视频编解码方法及装置
US9300906B2 (en) * 2013-03-29 2016-03-29 Google Inc. Pull frame interpolation
TWI536811B (zh) * 2013-12-27 2016-06-01 財團法人工業技術研究院 影像處理方法與系統、解碼方法、編碼器與解碼器
KR101944683B1 (ko) 2017-02-21 2019-04-17 (주)제이하우스 아틀리에 클러스터 건물구조
CN108810531B (zh) * 2017-05-03 2019-11-19 腾讯科技(深圳)有限公司 视频编码处理方法、装置及电子设备
US10356439B2 (en) * 2017-06-29 2019-07-16 Intel Corporation Flexible frame referencing for display transport
WO2019049912A1 (ja) * 2017-09-08 2019-03-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
CN109963155B (zh) * 2017-12-23 2023-06-06 华为技术有限公司 图像块的运动信息的预测方法、装置及编解码器
MX2021002557A (es) * 2018-09-07 2021-04-29 Panasonic Ip Corp America Sistema y metodo para codificacion de video.
US11902566B2 (en) 2018-12-28 2024-02-13 Telefonaktiebolaget Lm Ericsson (Publ) Generating a motion vector predictor list
MX2021009028A (es) * 2019-01-28 2021-10-13 Op Solutions Llc Inter prediccion en particion exponencial.
US11375243B2 (en) * 2019-07-17 2022-06-28 Tencent America LLC Method and apparatus for video coding
KR20210039553A (ko) 2019-10-02 2021-04-12 주식회사 디맥스 치과용 지르코니아 소재의 표면 처리방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2703802A1 (fr) * 1993-04-07 1994-10-14 Philips Electronique Lab Dispositif d'estimation de mouvement entre des images successives d'une séquence d'images animées subdivisées en blocs bidimensionnels d'éléments d'image.
WO1994024822A1 (en) 1993-04-09 1994-10-27 Sony Corporation Method and apparatus for coding image, and image recording medium
KR100523908B1 (ko) * 1997-12-12 2006-01-27 주식회사 팬택앤큐리텔 격행주사 영상에 대한 영상신호 부호화 장치 및 그 방법
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
JP2005223631A (ja) 2004-02-05 2005-08-18 Sony Corp データ処理装置およびその方法と符号化装置および復号装置
JP4543971B2 (ja) * 2005-03-07 2010-09-15 ソニー株式会社 符号化方法、符号化装置、符号化処理のプログラム及び符号化処理のプログラムを記録した記録媒体
JP4712643B2 (ja) * 2006-08-17 2011-06-29 富士通セミコンダクター株式会社 フレーム間予測処理装置、フレーム間予測方法、画像符号化装置及び画像復号装置
KR101365567B1 (ko) * 2007-01-04 2014-02-20 삼성전자주식회사 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치
CN101622877A (zh) * 2006-12-22 2010-01-06 高通股份有限公司 用于有效空间帧内可预测性确定(或评估)的系统和方法
US8331448B2 (en) * 2006-12-22 2012-12-11 Qualcomm Incorporated Systems and methods for efficient spatial intra predictabilty determination (or assessment)
KR101383540B1 (ko) * 2007-01-03 2014-04-09 삼성전자주식회사 복수의 움직임 벡터 프리딕터들을 사용하여 움직임 벡터를추정하는 방법, 장치, 인코더, 디코더 및 복호화 방법
KR101365574B1 (ko) * 2007-01-29 2014-02-20 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
US8428133B2 (en) * 2007-06-15 2013-04-23 Qualcomm Incorporated Adaptive coding of video block prediction mode
US8908765B2 (en) * 2007-11-15 2014-12-09 General Instrument Corporation Method and apparatus for performing motion estimation
JP5194833B2 (ja) * 2008-01-23 2013-05-08 ソニー株式会社 符号化装置および方法、記録媒体、並びにプログラム
US8098957B2 (en) * 2008-02-13 2012-01-17 Qualcomm Incorporated Shared block comparison architechture for image registration and video coding
US8385404B2 (en) * 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
JP5401071B2 (ja) * 2008-10-09 2014-01-29 株式会社Nttドコモ 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、動画像復号プログラム、動画像処理システムおよび動画像処理方法
EP2449784A1 (fr) 2009-07-03 2012-05-09 France Telecom Prédiction d'un vecteur mouvement d'une partition d'image courante de forme géometrique ou de taille différente de celle d'au moins une partition d'image de référence voisine, codage et décodage utilisant une telle prédiction
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
US9137544B2 (en) * 2010-11-29 2015-09-15 Mediatek Inc. Method and apparatus for derivation of mv/mvp candidate for inter/skip/merge modes
FI4120686T3 (fi) * 2011-01-07 2023-09-12 Ntt Docomo Inc Liikevektorin ennustava koodausmenetelmä, ennustava koodauslaite ja ennustava koodausohjelma sekä liikevektorin ennustava dekoodausmenetelmä, ennustava dekoodauslaite ja ennustava dekoodausohjelma

Also Published As

Publication number Publication date
KR20140011475A (ko) 2014-01-28
US10154280B2 (en) 2018-12-11
KR20200006194A (ko) 2020-01-17
KR102066543B1 (ko) 2020-01-15
KR20160087402A (ko) 2016-07-21
WO2012093585A1 (ja) 2012-07-12
CN105812821A (zh) 2016-07-27
DK3826306T3 (da) 2023-01-23
SG191232A1 (en) 2013-07-31
CA3079646C (en) 2022-09-13
JP2018026879A (ja) 2018-02-15
EP2663077B1 (en) 2017-01-11
US20170155898A9 (en) 2017-06-01
US9693052B2 (en) 2017-06-27
PL2938082T3 (pl) 2017-09-29
US20180146209A1 (en) 2018-05-24
HUE061239T2 (hu) 2023-06-28
JP6099729B2 (ja) 2017-03-22
EP3826306B1 (en) 2022-12-28
RU2697738C1 (ru) 2019-08-19
EP2938082A1 (en) 2015-10-28
RU2731026C1 (ru) 2020-08-28
PL4120686T3 (pl) 2023-12-11
CN105791857B (zh) 2018-12-07
CN106878741A (zh) 2017-06-20
CA2933341A1 (en) 2012-07-12
TW201244499A (en) 2012-11-01
EP2663077A1 (en) 2013-11-13
KR20170132361A (ko) 2017-12-01
KR101803886B1 (ko) 2017-12-04
US20130294517A1 (en) 2013-11-07
TW201818725A (zh) 2018-05-16
US20170150169A1 (en) 2017-05-25
DK4120686T3 (da) 2023-09-25
RU2744696C1 (ru) 2021-03-15
AU2011353904A1 (en) 2013-07-11
JP6246962B2 (ja) 2017-12-13
JP2016036186A (ja) 2016-03-17
US9877040B2 (en) 2018-01-23
TWI660623B (zh) 2019-05-21
EP2663077A4 (en) 2015-11-04
KR20160036671A (ko) 2016-04-04
JP6411615B2 (ja) 2018-10-24
PT2938082T (pt) 2017-04-07
CA3167001A1 (en) 2012-07-12
PT3826306T (pt) 2023-01-16
EP2938082B1 (en) 2017-03-22
PL3826306T3 (pl) 2023-03-20
KR102165666B1 (ko) 2020-10-14
FI4120686T3 (fi) 2023-09-12
CA2823880A1 (en) 2012-07-12
TWI562611B (es) 2016-12-11
JPWO2012093585A1 (ja) 2014-06-09
EP4120686A1 (en) 2023-01-18
CN103283235A (zh) 2013-09-04
MX2020001492A (es) 2020-03-20
RU2699404C1 (ru) 2019-09-05
MX2013007540A (es) 2013-08-21
US20190110065A1 (en) 2019-04-11
CN105812820B (zh) 2019-03-15
RU2649770C1 (ru) 2018-04-04
AU2011353904B2 (en) 2015-09-10
US10511855B2 (en) 2019-12-17
CN103283235B (zh) 2016-10-26
JP2015092781A (ja) 2015-05-14
RU2676245C1 (ru) 2018-12-26
MX352533B (es) 2017-11-29
TWI621352B (zh) 2018-04-11
KR20180128098A (ko) 2018-11-30
TW201701669A (zh) 2017-01-01
MX339663B (es) 2016-06-03
ES2614821T3 (es) 2017-06-02
PT2663077T (pt) 2017-02-13
BR112013017208B1 (pt) 2019-01-29
CA3079646A1 (en) 2012-07-12
CN105812820A (zh) 2016-07-27
PT4120686T (pt) 2023-09-07
FI3826306T3 (fi) 2023-01-31
JP5859691B2 (ja) 2016-02-10
CN106878741B (zh) 2019-08-06
KR101672790B1 (ko) 2016-11-04
EP4120685A1 (en) 2023-01-18
ES2936314T3 (es) 2023-03-16
RU2013136900A (ru) 2015-02-20
JP5698767B2 (ja) 2015-04-08
CA2823880C (en) 2016-08-16
EP4120686B1 (en) 2023-08-23
EP2938081A1 (en) 2015-10-28
PL2663077T3 (pl) 2017-04-28
RU2580090C2 (ru) 2016-04-10
BR112013017208A2 (pt) 2016-09-20
ES2957772T3 (es) 2024-01-25
CN105812821B (zh) 2017-10-27
HUE063372T2 (hu) 2024-01-28
CA2933341C (en) 2020-06-30
US20190075316A1 (en) 2019-03-07
EP3826306A1 (en) 2021-05-26
JP2017108433A (ja) 2017-06-15
US10511856B2 (en) 2019-12-17
KR101931276B1 (ko) 2018-12-20
CN105791857A (zh) 2016-07-20

Similar Documents

Publication Publication Date Title
ES2622732T3 (es) Procedimiento de codificación predictiva, dispositivo de codificación predictiva y programa de codificación predictiva de un vector de movimiento, y procedimiento de descodificación predictiva, dispositivo de descodificación predictiva y programa de descodificación predictiva de un vector de movimiento
AU2020294318B2 (en) Predictive encoding method, predictive encoding device, and predictive encoding program of motion vector, and, predictive decoding method, predictive decoding device, and predictive decoding program of motion vector