[go: up one dir, main page]

MX2014000160A - Metodo y aparato para codificar informacion de movimento y metodo y aparato para decodificar la misma. - Google Patents

Metodo y aparato para codificar informacion de movimento y metodo y aparato para decodificar la misma.

Info

Publication number
MX2014000160A
MX2014000160A MX2014000160A MX2014000160A MX2014000160A MX 2014000160 A MX2014000160 A MX 2014000160A MX 2014000160 A MX2014000160 A MX 2014000160A MX 2014000160 A MX2014000160 A MX 2014000160A MX 2014000160 A MX2014000160 A MX 2014000160A
Authority
MX
Mexico
Prior art keywords
movement information
prediction
candidate
unit
information
Prior art date
Application number
MX2014000160A
Other languages
English (en)
Inventor
Tammy Lee
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of MX2014000160A publication Critical patent/MX2014000160A/es

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
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Abstract

La presente invención se refiere a un método y a un aparato para codificar y decodificar información de movimiento. El método de codificación incluye determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la predicción actual están disponibles; cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado, generar información de movimiento candidata, adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea el número predeterminado; y decodificar la información de movimiento de la unidad de predicción actual mediante el uso de las "n" piezas de información de movimiento.

Description

METODO Y APARATO PARA CODIFICAR INFORMACION DE MOVIMIENTO Y METODO Y APARATO PARA DECODIFICAR LA MISMA Campo de la Invención La presente invención se refiere a un método y un aparato para codificar y decodificar información de movimiento, y más particularmente, a un método y un aparato para codificar y decodificar de manera efectiva información de movimiento de una unidad de predicción actual .
Antecedentes de la Invención Recientemente, conforme los contenidos de video de alta definición han llegado a ser utilizados ampliamente, ha incrementado la necesidad de un codificador/decodificador de video que tenga una eficiencia de codificación más alta que un codificador/decodificador de video convencional tal como H.264 de MPEG-4/codificación avanzada de video (AVC, por sus siglas en inglés) de MPEG-4.
De acuerdo con la compensación de movimiento que es una tecnología para retirar una redundancia temporal en una señal de video, la eficiencia de compresión se incrementa al transmitir una señal residual que es un valor de diferencia entre una señal de video original y una señal de referencia indicada por un vector de movimiento. En general, un vector de movimiento y un valor residual de cada bloque, como un resultado de codificación obtenido al codificar cada bloque Ref. 245915 mediante el uso de la compensación de movimiento, se transmiten a un decodificador . Puesto que los vectores de movimiento de cada bloque ocupan una cantidad considerable de una corriente de bits codificada, la información acerca de un vector de movimiento asignado a cada bloque necesita ser reducida con el propósito de incrementar la eficiencia de compresión .
Con el propósito de reducir la información adjunta de transmisión durante la codificación de un vector de movimiento, un vector de movimiento de un bloque previo se utiliza como un vector de movimiento de predicción de un bloque actual en un codificador/decodificador de MPEG-2 convencional y una mediana de vectores de movimiento de bloques codificados previamente que son adyacentes a un lado izquierdo, un lado superior y un lado superior derecho de un bloque actual se utiliza como un vector de movimiento de predicción del bloque actual en un codificador/decodificador tal como H.264 de MPEG-4/AVC de MPEG-4.
Breve Descripción de la Invención Objetivo Técnico de la Invención La presente invención proporciona un método y un aparato para codificar y decodificar de manera efectiva información de movimiento de una unidad de predicción actual. Medios para Alcanzar el Objetivo Técnico De acuerdo con modalidades de la presente invención, diversa información de movimiento candidata se genera mediante el uso de información de movimiento de unidades de predicción que están colocadas espacialmente junto a una unidad de predicción actual e información de movimiento de unidades de predicción que están colocadas temporalmente junto a la unidad de predicción actual.
Efecto de la Invención De acuerdo con modalidades de la presente invención, la eficiencia de compresión de una imagen se puede incrementar mediante el uso de varios candidatos de movimiento obtenidos con base en información de movimiento de una unidad de predicción adyacente.
Breve Descripción de las Figuras La FIGURA 1 es un diagrama de bloques de un aparato para codificar un video, de acuerdo con una modalidad de la presente invención; la FIGURA 2 es un diagrama de bloques de un aparato para decodificar un video, de acuerdo con una modalidad de la presente invención; la FIGURA 3 es un diagrama para describir un concepto de unidades de codificación de acuerdo con una modalidad de la presente invención; la FIGURA 4 es un diagrama de bloques de un codificador de imágenes basado en unidades de codificación de acuerdo con una modalidad de la presente invención; la FIGURA 5 es un diagrama de bloques de un decodificador de imágenes basado en unidades de codificación de acuerdo con una modalidad de la presente invención; la FIGURA 6 es un diagrama que ilustra unidades de codificación más profundas de acuerdo con profundidades, y particiones de acuerdo con una modalidad de la presente invención; la FIGURA 7 es un diagrama para describir una relación entre una unidad de codificación y unidades de transformación, de acuerdo con una modalidad de la presente invención; la FIGURA 8 es un diagrama para describir información de codificación de unidades de codificación que corresponden a una profundidad codificada, de acuerdo con una modalidad de la presente invención; la FIGURA 9 es un diagrama de unidades de codificación más profundas de acuerdo con profundidades, de acuerdo con una modalidad de la presente invención; las FIGURAS 10 hasta 12 son diagramas para describir una relación entre unidades de codificación, unidades de predicción y unidades de transformación, de acuerdo con una modalidad de la presente invención; la FIGURA 13 es un diagrama para describir una relación entre una unidad de codificación, una unidad de predicción o una partición, y una unidad de transformación, de acuerdo con la información de modo de codificación de la Tabla 1; la FIGURA 14 es un diagrama de bloques de un aparato de codificación de información de movimiento de acuerdo con una modalidad de la presente invención; la FIGURA 15 es un diagrama de bloques de una unidad de generación de información de movimiento candidata de la FIGURA 14, de acuerdo con una modalidad de la presente invención; la FIGURA 16 ilustra unidades de predicción adyacentes que están colocadas espacialmente junto a una unidad de predicción actual, de acuerdo con una modalidad de la presente invención; la FIGURA 17A es un diagrama de referencia para explicar un proceso para determinar un candidato de vector de movimiento de predicción, espacial, aumentado a escala, de acuerdo con una modalidad de la presente invención; la FIGURA 17B es un diagrama de referencia para explicar un proceso para generar información de movimiento candidata, adicional mediante el uso de una unidad de predicción que está colocada espacialmente junto a una unidad de predicción actual, de acuerdo con una modalidad de la presente invención; la FIGURA 18 es un diagrama de referencia para explicar un método para generar un candidato de vector de movimiento de predicción de una unidad de predicción actual al aumentar a escala un vector de movimiento de una unidad de predicción adyacente, de acuerdo con una modalidad de la presente invención; la FIGURA 19 es un diagrama de referencia para explicar un proceso para generar información de movimiento candidata, temporal, de acuerdo con una modalidad de la presente invención; las FIGURAS 20A y 20B son diagramas para explicar un proceso para generar información de movimiento candidata, adicional mediante el uso de información de movimiento de unidades de predicción disponibles, de acuerdo con otra modalidad de la presente invención; las FIGURAS 21A y 21B son diagramas para describir una relación posicional entre una imagen actual y una imagen de referencia cuando se genera información de movimiento candidata, adicional de las FIGURAS 20A y 20B, de acuerdo con una modalidad de la presente invención; la FIGURA 22 es un diagrama de flujo de un método para codificar un vector de movimiento, de acuerdo con una modalidad de la presente invención; la FIGURA 23 es un diagrama de bloques de un aparato de decodificación de vectores de movimiento de acuerdo con una modalidad de la presente invención; y la FIGURA 24 es un diagrama de flujo de un método para decodificar información de movimiento, de acuerdo con una modalidad de la presente invención.
Descripción Detallada de la Invención De acuerdo con un aspecto de la presente invención, se proporciona un método para codificar información de movimiento que incluye realizar una predicción de movimiento en una unidad de predicción actual para obtener información de movimiento acerca de la unidad de predicción actual; determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual e información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la unidad de predicción actual están disponibles; como resultado de la determinación, cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado "n" (en donde n es un número entero) , generar información de movimiento candidata, adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea "n" ; y codificar información de movimiento de la unidad de predicción actual mediante el uso de "n" piezas de información de movimiento.
La determinación puede incluir buscar unidades de predicción predeterminadas que están colocadas arriba de la unidad de predicción actual en un orden de exploración predeterminado y seleccionar información de movimiento de una primera unidad de predicción superior que tiene información de movimiento disponible como un candidato de información de movimiento espacial superior de la unidad de predicción actual; buscar unidades de predicción predeterminadas que están colocadas a la izquierda de la unidad de predicción actual en un orden de exploración predeterminado y seleccionar información de movimiento de una primera unidad de predicción izquierda que tiene información de movimiento disponible como un candidato de información de movimiento espacial izquierdo de la unidad de predicción actual; y seleccionar información de movimiento de una unidad de predicción de una imagen previa seleccionada de la imagen previa, con base en una unidad de predicción de una imagen previa que tiene la misma ubicación que la unidad de predicción actual, como el candidato de información de movimiento temporal de la unidad de predicción actual, en donde la generación de la información de movimiento candidata, adicional se realiza cuando el número total de piezas de información de movimiento candidata obtenidas mediante el uso del candidato de información de movimiento espacial superior, el candidato de información de movimiento espacial izquierdo y el candidato de información de movimiento temporal es menor que "n" .
La generación de la información de movimiento candidata, adicional puede incluir la generación de información de movimiento de una unidad de predicción superior disponible que se busca después de que se busca una primera unidad de predicción superior que tiene información de movimiento disponible, como la información de movimiento candidata, adicional, en un orden de exploración predeterminado .
La generación de la información de movimiento candidata, adicional puede incluir la generación de información de movimiento candidata, adicional que tiene información de movimiento de una unidad de predicción izquierda disponible que se busca después de que se busca una primera unidad de predicción izquierda que tiene información de movimiento disponible, en el orden de exploración predeterminado .
La generación de la información de movimiento candidata, adicional puede incluir el aumentado a escala de información de movimiento de una unidad de predicción de una imagen previa que tiene información de movimiento de entre unidades de predicción restantes de la imagen previa excepto por una unidad de predicción de una primera imagen previa que tiene información de movimiento disponible y la generación de la información de movimiento candidata, adicional, cuando las unidades de predicción de una imagen previa, la cual se determina con base en una unidad de predicción de una imagen previa que tiene la misma ubicación que la unidad de predicción actual, se exploran en un orden de exploración predeterminado .
La determinación puede incluir la selección de información de movimiento de unidades de predicción espacial predeterminadas de las cuales las ubicaciones se determinan previamente de entre unidades de predicción predeterminadas que están colocadas arriba y a la izquierda de la unidad de predicción actual, como un candidato de información de movimiento espacial de la unidad de predicción actual; la selección de información de movimiento de una unidad de predicción de una imagen previa seleccionada de la imagen previa con base en una unidad de predicción de una imagen previa que tiene la misma ubicación que la unidad de predicción actual, como un candidato de información de movimiento temporal de la unidad de predicción actual, en donde la generación de la información de movimiento candidata, adicional se realiza cuando un número total de piezas de información de movimiento candidata obtenidas mediante el uso del candidato de información de movimiento espacial y el candidato de información de movimiento temporal es menor que "n" .
La generación de la información de movimiento candidata, adicional puede incluir la generación de información de movimiento predeterminada que se determina previamente, como la información de movimiento candidata, adicional. La información de movimiento predeterminada puede ser un vector de movimiento que tiene un valor predeterminado, un índice de imagen de referencia que tiene un valor predeterminado e información de dirección de referencia de acuerdo con un tipo de corte al cual pertenece una predicción actual .
La generación de la información de movimiento candidata, adicional puede incluir, cuando la información de movimiento de las unidades de predicción espacial y las unidades de predicción temporal disponibles incluye información de vector de movimiento bidireccional de predicción de una dirección LO y una dirección Ll, la generación de la información de movimiento candidata, adicional mediante la adición y sustracción de una compensación predeterminada a y de un vector de movimiento de la predicción de la dirección LO y un vector de movimiento de la predicción de la dirección Ll .
Cuando una primera imagen de referencia utilizada en la predicción de la dirección LO y una segunda imagen de referencia utilizada en la predicción de la dirección Ll se colocan en la misma ubicación con base en una imagen actual que incluye la unidad de predicción actual, la compensación se puede agregar al vector de movimiento de la predicción de la dirección LO y el vector de movimiento de la predicción de la dirección Ll, y cuando la imagen actual está colocada entre la primera imagen de referencia utilizada en la predicción de la dirección LO y la segunda imagen de referencia utilizada en la predicción de la dirección Ll, la compensación se puede agregar al vector de movimiento de la predicción de la dirección LO y un valor obtenido al multiplicar la compensación por -1 se agrega al vector de movimiento de la predicción de la dirección Ll .
La generación de información de movimiento candidata, adicional puede incluir el cambio de direcciones de predicción de información de movimiento de las unidades de predicción espacial adicionales e información de movimiento de las unidades de predicción temporal disponibles para generar la información de movimiento candidata, adicional.
La generación de la información de movimiento candidata, adicional puede incluir, cuando la información de movimiento de las unidades de predicción espacial disponibles y la información de movimiento de las unidades de predicción temporal disponibles incluyen información de vector de movimiento bidireccional de la predicción de la dirección LO y la predicción de la dirección Ll, la generación de la información de movimiento candidata, adicional mediante el uso de información de movimiento unidireccional de aquella seleccionada de la dirección de la dirección LO y la dirección de la dirección Ll .
La generación de la información de movimiento candidata, adicional puede incluir, cuando la información de movimiento de las unidades de predicción espacial disponibles y la información de movimiento de las unidades de predicción temporal disponibles incluyen información de movimiento unidireccional de aquella seleccionada de la dirección de la dirección LO y la dirección de la dirección Ll, la generación de la información de movimiento candidata, adicional mediante el uso de información de movimiento bidireccional que se obtiene mediante la combinación de la predicción de la dirección LO y la predicción de la dirección Ll .
La generación de la información de movimiento candidata, adicional puede incluir, cuando la información de movimiento de las unidades de predicción espacial disponibles y la información de movimiento de las unidades de predicción temporal disponibles incluye información de movimiento unidireccional de aquella seleccionada de la dirección de la dirección LO y la dirección de la dirección Ll, la generación de información de movimiento bidireccional que es generada mediante la combinación de información de movimiento unidireccional que incluye un vector de movimiento que tiene un valor de componente predeterminado, como la información de movimiento candidata, adicional.
Además, la generación de la información de movimiento candidata, adicional puede incluir la generación de una imagen de referencia que tiene un índice de imagen de referencia que tiene un valor predeterminado como la información de movimiento candidata, adicional.
En la generación de la información de movimiento candidata, adicional, no se puede verificar si la información de movimiento candidata por defecto y la información de movimiento candidata, adicional, generada se duplican y la información de movimiento candidata, adicional, generada se puede agregar a la información de movimiento candidata.
De acuerdo con otro aspecto de la presente invención, se proporciona un aparato para codificar información de movimiento, que incluye una unidad de generación de información de movimiento candidata para realizar una predicción de movimiento en una unidad de predicción actual para obtener información de movimiento acerca de la unidad de predicción actual, para determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la unidad de predicción actual están disponibles, y como resultado de la determinación, cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado "n" (donde n es un número entero) , para generar información de movimiento candidata, adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea "n" ; y un decodificador de información de movimiento para codificar información de movimiento de la unidad de predicción actual mediante el uso de las "n" piezas de información de movimiento.
De acuerdo con otro aspecto de la presente invención, se proporciona un método para decodificar información de movimiento, que incluye determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la unidad de predicción actual están disponibles; como resultado de la determinación, cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado "n" (donde n es un número entero) , generar información de movimiento candidata, adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea "n" ; obtener información de índice que indica información de movimiento individual de entre las "n" piezas de información de movimiento candidata de una corriente de bits; y obtener información de movimiento de la unidad de predicción actual mediante el uso de información de movimiento indicada por el índice .
De acuerdo con otro aspecto de la presente invención, se proporciona un aparato para decodificar información de movimiento, que incluye una unidad de generación para determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la unidad de predicción actual están disponibles, y como resultado de la determinación, cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado "n" (donde n es un número entero) , para generar información de movimiento candidata, adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea "n" ; un decodificador entrópico para obtener información de índice que indica información de movimiento individual de entre las "n" piezas de información de movimiento candidata de una corriente de bits; y un decodificador de información de movimiento para obtener información de movimiento de la unidad de predicción actual mediante el uso de información de movimiento indicada por el índice.
Modo de la Invención En lo sucesivo, la presente invención se describirá más completamente con referencia a las figuras asociadas, en las cuales se muestran modalidades ejemplares de la invención .
La FIGURA 1 es un diagrama de bloques de un aparato de codificación de video 100, de acuerdo con una modalidad de la presente invención.
El aparato de codificación de video 100 incluye un divisor de unidades de codificación máximas 110, un determinador de unidades de codificación 120 y una unidad de salida 130.
El divisor de unidades de codificación máximas 110 puede dividir una imagen actual con base en una unidad de codificación máxima para la imagen actual de una imagen. Si la imagen actual es más grande que la unidad de codificación máxima, los datos de imagen de la imagen actual se pueden dividir en por lo menos la unidad de codificación máxima. La unidad de codificación máxima de acuerdo con una modalidad de la presente invención puede ser una unidad de datos que tiene un tamaño de 32x32, 64x64, 128x128, 256x256, etcétera, en donde la forma de la unidad de datos es un cuadro que tiene una anchura y una longitud en cuadros de 2. Los datos de imagen se pueden enviar al determinador de unidades de codificación 120 de acuerdo con por lo menos la unidad de codificación máxima.
Una unidad de codificación de acuerdo con una modalidad de la presente invención se puede caracterizar por un tamaño máximo y una profundidad. La profundidad indica un número de veces que la unidad de codificación se divide espacialmente a partir de la unidad de codificación máxima, y conforme la profundidad aumenta, las unidades de codificación más profundas de acuerdo con las profundidades se pueden dividir desde la unidad de codificación máxima hasta una unidad de codificación mínima. Una profundidad de la unidad de codificación máxima es una profundidad superior y una profundidad de la unidad de codificación mínima es la profundidad inferior. Puesto que un tamaño de una unidad de codificación que corresponde a cada profundidad disminuye conforme aumenta la profundidad de la unidad de codificación máxima, una unidad de codificación que corresponde a una profundidad más alta puede incluir una pluralidad de unidades de codificación que corresponden a profundidades más bajas.
Como se describiera anteriormente, los datos de imagen de la imagen actual se dividen en las unidades de codificación máximas de acuerdo con un tamaño máximo de la unidad de codificación, y cada una de las unidades de codificación máximas puede incluir unidades de codificación más profundas que se dividen de acuerdo con las profundidades. Puesto que la unidad de codificación máxima de acuerdo con una modalidad de la presente invención se divide de acuerdo con las profundidades, los datos de imagen de un dominio espacial incluidos en la unidad de codificación máxima se pueden clasificar jerárquicamente de acuerdo con las profundidades.
Se puede predeterminar una profundidad máxima y un tamaño máximo de una unidad de codificación, los cuales limitan el número total de veces que una altura y una anchura de la unidad de codificación máxima se dividen j erárquicamente .
El determinador de unidades de codificación 120 codifica por lo menos una región dividida que se obtiene al dividir una región de la unidad de codificación máxima de acuerdo con las profundidades y determina una profundidad para enviar datos de imagen codificados finalmente de acuerdo con por lo menos la región dividida. En otras palabras, el determinador de unidades de codificación 120 determina una profundidad codificada al codificar los datos de imagen en las unidades de codificación más profundas de acuerdo con las profundidades, de acuerdo con la unidad de codificación máxima de la imagen actual y seleccionar una profundidad que tiene el error de codificación más pequeño. De esta manera, los datos de imagen codificados de la unidad de codificación que corresponde a la profundidad codificada, determinada se envían finalmente. También, las unidades de codificación que corresponden a la profundidad codificada se pueden considerar como unidades de codificación codificadas. La profundidad codificada, determinada y los datos de imagen codificados de acuerdo con la profundidad codificada, determinada se envían a la unidad de salida 130.
Los datos de imagen en la unidad de codificación máxima se codifican con base en las unidades de codificación más profundas que corresponden a por lo menos una profundidad igual a o más pequeña que la profundidad máxima y los resultados de la codificación de los datos de imagen se comparan con base en cada una de las unidades de codificación más profundas. Una profundidad que tiene el error de codificación más pequeño se puede seleccionar después de comparar errores de codificación de las unidades de codificación más profundas. Se puede seleccionar por lo menos una profundidad codificada para cada unidad de codificación máxima .
El tamaño de la unidad de codificación máxima se divide conforme una unidad de codificación se divide jerárquicamente de acuerdo con las profundidades y conforme el número de unidades de codificación incrementa. También, incluso si las unidades de codificación corresponden a una misma profundidad en una unidad de codificación máxima, se determina si se divide cada una de las unidades de codificación que corresponden a la misma profundidad a una profundidad más baja al medir un error de codificación de los datos de imagen de cada unidad de codificación, de manera separada. Por consiguiente, incluso cuando los datos de imagen se incluyen en una unidad de codificación máxima, los datos de imagen" "se dividen en regiones de acuerdo con las profundidades y los errores de codificación pueden diferir de acuerdo con regiones en la unidad de codificación máxima, y de esta manera las profundidades codificadas pueden diferir de acuerdo con regiones en los datos de imagen. De esta manera, una o más profundidades codificadas se pueden determinar en una unidad de codificación máxima y los datos de imagen de la unidad de codificación máxima se pueden dividir de acuerdo con unidades de codificación de por lo menos una profundidad codificada.
Por consiguiente, el determinador de unidades de codificación 120 puede determinar unidades de codificación que tienen una estructura arborescente incluida en la unidad de codificación máxima. Las "unidades de codificación que tienen una estructura arborescente" de acuerdo con una modalidad de la presente invención incluyen unidades de codificación que corresponden a una profundidad determinada que es la profundidad codificada, de entre todas las unidades de codificación más profundas que están incluidas en la unidad de codificación máxima. Una unidad de codificación de una profundidad codificada se puede determinar jerárquicamente de acuerdo con profundidades en la misma región de la unidad de codificación máxima y se pueden determinar independientemente en diferentes regiones. Similarmente, una profundidad codificada en una región actual se puede determinar independientemente de una profundidad codificada en otra región.
Una profundidad máxima de acuerdo con una modalidad de la presente invención es un índice relacionado con el número de veces que se realiza la división de una unidad de codificación máxima a una unidad de codificación mínima. Una primera profundidad máxima de acuerdo con una modalidad de la presente invención puede indicar el número total de veces que se realiza la división de la unidad de codificación máxima a la unidad de codificación mínima. Una segunda profundidad máxima de acuerdo con una modalidad de la presente invención puede indicar el número total de niveles de profundidad de la unidad de codificación máxima a la unidad de codificación mínima. Por ejemplo, cuando una profundidad de la unidad de codificación máxima es 0, una profundidad de una unidad de codificación, en la cual la unidad de codificación máxima se divide una vez, se puede establecer a l, y una profundidad de una unidad de codificación, en la cual la unidad de codificación máxima se divide dos veces, se puede establecer a 2. En este documento, si la unidad de codificación mínima es una unidad de codificación en la cual la unidad de codificación máxima se divide cuatro veces, existen 5 niveles de profundidad de las profundidades 0, 1, 2, 3 4, y de esta manera la primera profundidad máxima se puede establecer a 4 y la segunda profundidad máxima se puede establecer a 5.
La codificación de predicción y la transformación se pueden realizar de acuerdo con la unidad de codificación máxima. La codificación de predicción y la transformación también se realizan con base en las unidades de codificación más profundas de acuerdo con una profundidad igual a o profundidades menores que la profundidad máxima, de acuerdo con la unidad de codificación máxima. La transformación se puede realizar de acuerdo con un método de transformación ortogonal o transformación de números enteros.
Puesto que el número de unidades de codificación más profundas incrementa siempre que la unidad de codificación máxima se divide de acuerdo con profundidades, la codificación que incluye la codificación de predicción y la transformación se realiza en todas las unidades de codificación más profundas que se generan conforme la profundidad aumenta. Para la conveniencia de la descripción, la codificación de predicción y la transformación ahora se describirán con base en una unidad de codificación de una profundidad actual, en una unidad de codificación máxima.
El aparato de codificación de video 100 puede seleccionar diversamente un tamaño o forma de una unidad de datos para codificar los datos de imagen. Con el propósito de codificar los datos de imagen, las operaciones, tal como la codificación de predicción, transformación y codificación entrópica, se realizan, y en ese momento, la misma unidad de datos se puede utilizar para todas las operaciones o diferentes unidades de datos se pueden utilizar para cada operación .
Por ejemplo, el aparato de codificación de video 100 puede seleccionar no solo una unidad de codificación para codificar los datos de imagen, sino también una unidad de datos diferente de la unidad de codificación con el fin de realizar la codificación de predicción en los datos de imagen en la unidad de codificación.
Con el propósito de realizar una codificación de predicción en la unidad de codificación máxima, la codificación de predicción se puede realizar con base en una unidad de codificación que corresponde a una profundidad codificada, es decir, con base en una unidad de codificación que ya no se divide en unidades de codificación que corresponden a una profundidad más baja. En lo sucesivo, la unidad de codificación que ya no se divide y se vuelve una unidad base para la codificación de predicción ahora será referida como una "unidad de predicción" . Una partición obtenida al dividir la unidad de predicción puede incluir una unidad de predicción o una unidad de datos obtenida al dividir por lo menos una de una altura y una anchura de la unidad de predicción.
Por ejemplo, cuando una unidad de codificación de 2Nx2N (donde N es un número entero positivo) ya no se divide y se vuelve una unidad de predicción de 2Nx2N, y un tamaño de partición puede ser 2Nx2N, 2NxN, Nx2N o NxN. Los ejemplos de un tipo de partición incluyen particiones simétricas que se obtienen al dividir simétricamente una altura o una anchura de la unidad de predicción, las particiones obtenidas al dividir asimétricamente la altura o la anchura de la unidad de predicción, tal como l:n o n:l, particiones que se obtienen al dividir geométricamente la unidad de predicción y particiones que tienen formas arbitrarias.
Un modo de predicción de la unidad de predicción puede ser por lo menos uno de un modo intra, un modo Ínter y un modo de omisión. Por ejemplo, el modo intra o el modo ínter se pueden realizar en la partición de 2Nx2N, 2NxN, Nx2N o NxN. También, el modo de omisión se puede realizar solo en la partición de 2Nx2N. La codificación se realiza independientemente en una unidad de predicción en una unidad de codificación, seleccionando por esa razón un modo de predicción que tiene un error de codificación y en este momento más pequeño .
El aparato de codificación de video 100 también puede realizar la transformación en los datos de imagen en una unidad de codificación con base no únicamente en la unidad de codificación para codificar los datos de imagen, sino también con base en una unidad de datos que es diferente de la unidad de codificación.
Con el propósito de realizar la transformación en la unidad de codificación, la transformación se puede realizar con base en una unidad de datos que tiene un tamaño más pequeño que o igual a la unidad de codificación. Por ejemplo, la unidad de datos para la transformación puede incluir una unidad de datos para un modo intra y una unidad de datos para un modo inter.
Una unidad de datos utilizada como una base de la transformación ahora será referida como una "unidad de transformación" . De manera similar a la unidad de codificación, la unidad de transformación en la unidad de codificación se puede dividir recursivamente en regiones de dimensiones más pequeñas, de modo que la unidad de transformación se pueda determinar independientemente en unidades de regiones. De esta manera, los datos residuales en la unidad de codificación se pueden dividir de acuerdo con la unidad de transformación que tiene la estructura arborescente de acuerdo con profundidades de transformación.
Una profundidad de transformación que indica el número de veces que se realiza la división para alcanzar la unidad de transformación mediante la división de la altura y la anchura de la unidad de codificación también se puede establecer en la unidad de transformación. Por ejemplo, en una unidad de codificación actual de 2Nx2N, una profundidad de transformación puede ser 0 cuando el tamaño de una unidad de transformación es 2Nx2N, puede ser 1 cuando el tamaño de una unidad de transformación es NXN y puede ser 2 cuando el tamaño de una unidad de transformación es N/2XN/2. Es decir, la unidad de transformación que tiene la estructura arborescente también se puede establecer de acuerdo con las profundidades de transformación.
La información de codificación de acuerdo con unidades de codificación que corresponden a una profundidad codificada requiere no únicamente información acerca de la profundidad codificada, sino también acerca de información relacionada con una codificación de predicción y una transformación. Por consiguiente, el determinador de unidades de codificación 120 no solo determina una profundidad codificada que tiene un error de codificación más pequeño, sino que también determina un tipo de partición en una unidad de predicción, un modo de predicción de acuerdo con unidades de predicción y un tamaño de una unidad de transformación para la transformación.
Las unidades de codificación de acuerdo con una estructura arborescente en una unidad de codificación máxima y un método para determinar una partición, de acuerdo con modalidades de la presente invención, se describirán en detalle posteriormente con referencia a las FIGURAS 3 hasta 12.
El determinador de unidades de codificación 120 puede medir un error de codificación de unidades de codificación más profundas de acuerdo con profundidades mediante el uso de la Optimización basada en la Tasa de Distorsión con base en multiplicadores de Lagrange.
La unidad de salida 130 envía los datos de imagen de la unidad de codificación máxima, los cuales se codifican con base en por lo menos la profundidad codificada que es determinada por el determinador de unidades de la codificación 120 e información acerca del modo de codificación de acuerdo con la profundidad codificada, en corrientes de bits.
Los datos de imagen codificados se pueden obtener al codificar datos residuales de una imagen.
La información acerca del modo de codificación de acuerdo con la profundidad codificada puede incluir información acerca de la profundidad codificada, acerca del tipo de partición en la unidad de predicción, el modo de predicción y el tamaño de la unidad de transformación.
La información acerca de la profundidad codificada se puede definir mediante el uso de información de división de acuerdo con profundidades, la cual indica si la codificación se realiza en unidades de codificación de una profundidad más baja en lugar de una profundidad actual. Si la profundidad actual de la unidad de codificación actual es la profundidad codificada, los datos de imagen en la unidad de codificación actual se codifican y se envían, y de esta manera la información de división se puede definir para no dividir la unidad de codificación actual a una profundidad más baja. Alternativamente, si la profundidad actual de la unidad de codificación actual no es la profundidad codificada, la codificación se realiza en la unidad de codificación de la profundidad más baja y de esta manera la información de división se puede definir para dividir la unidad de codificación actual para obtener las unidades de codificación de la profundidad más baja.
Si la profundidad actual no es la profundidad codificada, la codificación se realiza en la unidad de codificación que se divide en la unidad de codificación de la profundidad más baja. Puesto que por lo menos una unidad de codificación de la profundidad más baja existe en una unidad de codificación de la profundidad actual, la codificación se realiza repetidamente en cada unidad de codificación de la profundidad más baja y de esta manera la codificación se puede realizar recursivamente para las unidades de codificación que tienen la misma profundidad.
Puesto que las unidades de codificación que tienen una estructura arborescente se determinan para una unidad de codificación máxima y la información acerca de por lo menos un modo de codificación se determina para una unidad de codificación de una profundidad codificada, la información acerca de por lo menos un modo de codificación se puede determinar para una unidad de codificación máxima. También, una profundidad codificada de los datos de imagen de la unidad de codificación máxima puede ser diferente de acuerdo con ubicaciones puesto que los datos de imagen se dividen jerárquicamente de acuerdo con profundidades y de esta manera la información acerca de la profundidad codificada y el modo de codificación se pueden establecer para los datos de imagen .
Por consiguiente, la unidad de salida 130 puede asignar información de codificación acerca de una profundidad codificada, correspondiente y un modo de codificación a por lo menos una de la unidad de codificación, la unidad de predicción y una unidad mínima incluida en la unidad de codificación máxima.
La unidad mínima de acuerdo con una modalidad de la presente invención es una unidad de datos rectangular que se obtiene al dividir la unidad de codificación mínima constituyendo la profundidad más baja por 4. Alternativamente, la unidad mínima puede ser una unidad de datos rectangular, máxima que se puede incluir en todas las unidades de codificación, unidades de predicción, unidades de partición y unidades de transformación incluidas en la unidad de codificación máxima.
Por ejemplo, la información de codificación enviada a través de la unidad de salida 130 se puede clasificar en información de codificación de acuerdo con unidades de codificación e información de codificación de acuerdo con unidades de predicción. La información de codificación de acuerdo con las unidades de codificación puede incluir la información acerca del modo de predicción y acerca del tamaño de las particiones. La información de codificación de acuerdo con las unidades de predicción puede incluir información acerca de una dirección estimada de un modo Ínter, acerca de un índice de imagen de referencia del modo ínter, acerca de un vector de movimiento, acerca de un componente de croma de un modo intra y acerca de un método de interpolación del modo intra. También, la información acerca de un tamaño máximo de la unidad de codificación definida de acuerdo con las imágenes, cortes o GOPs, y la información acerca de una profundidad máxima se puede insertar en un encabezado de una corriente de bits.
En el aparato de codificación de video 100, la unidad de codificación más profunda puede ser una unidad de codificación obtenida al dividir una altura o anchura de una unidad de codificación de una profundidad más alta, la cual está una capa arriba, por dos. En otras palabras, cuando el tamaño de la unidad de codificación de la profundidad actual es 2Nx2N, el tamaño de la unidad de codificación de la profundidad más baja es NxN. También, la unidad de codificación de la profundidad actual que tiene el tamaño de 2Nx2N puede incluir un número máximo de 4 unidades de codificación de la profundidad más baja.
Por consiguiente, el aparato de codificación de video 100 puede formar las unidades de codificación que tienen la estructura arborescente al determinar unidades de codificación que tienen una forma óptima y un tamaño óptimo para cada unidad de codificación máxima, con base en el tamaño de la unidad de codificación máxima y la profundidad máxima determinada considerando características de la imagen actual. También, puesto que la codificación se puede realizar en cada unidad de codificación máxima mediante el uso de cualquiera de varios modos de predicción y transformaciones, un modo de codificación óptimo se puede determinar considerando características de la unidad de codificación de diversos tamaños de imágenes .
De esta manera, si una imagen que tiene alta resolución o una gran cantidad de datos se codifica en un macrobloque convencional, un número de macrobloques por imagen incrementa excesivamente. Por consiguiente, un número de piezas de información comprimida generadas para cada macrobloque incrementa y de esta manera es difícil transmitir la información comprimida y la eficiencia de compresión de datos disminuye. Sin embargo, mediante el uso del aparato de codificación de video 100, la eficiencia de compresión de imágenes se puede incrementar puesto que una unidad de codificación se ajusta mientras se consideran las características de una imagen mientras se incrementa un tamaño máximo de una unidad de codificación mientras se considera un tamaño de la imagen.
La FIGURA 2 es un diagrama de bloques de un aparato de decodificación de video 200, de acuerdo con una modalidad de la presente invención.
El aparato de decodificación de video 200 incluye un receptor 210, un extractor de datos de imagen e información de codificación 220 y un decodificador de datos de imagen 230. Las definiciones de varios términos, tal como una unidad de codificación, profundidad, unidad de predicción, unidad de transformación e información acerca de varios modos de codificación, para varias operaciones del aparato de decodificación de video 200 son idénticas a aquellas descritas con referencia a la FIGURA 1 y el aparato de codificación de video 100.
El receptor 210 recibe y analiza una corriente de bits de un video codificado. El extractor de datos de imagen e información de codificación 220 extrae los datos de imagen codificados para cada unidad de codificación de la corriente de bits analizada, en donde las unidades de codificación tienen una estructura arborescente de acuerdo con cada unidad de codificación máxima y envía los datos de imagen extraídos al decodificador de datos de imagen 230. El extractor de datos de imagen e información de codificación 220 puede extraer información acerca de un tamaño máximo de una unidad de codificación de una imagen actual, de un encabezado acerca de la imagen actual .
También, el extractor de datos de imagen e información de codificación 220 extrae información acerca de una profundidad codificada y un modo de codificación para las unidades de codificación que tienen una estructura arborescente de acuerdo con cada unidad de codificación máxima, de la corriente de bits analizada. La información extraída acerca de la profundidad codificada y el modo de codificación se envía al decodificador de datos de imagen 230. En otras palabras, los datos de imagen en una corriente de bits se dividen en la unidad de codificación máxima de modo que el decodificador de datos de imagen 230 decodifica los datos de imagen para cada unidad de codificación máxima.
La información acerca de la profundidad codificada y el modo de codificación de acuerdo con la unidad de codificación máxima se pueden establecer para la información acerca de por lo menos una unidad de codificación que corresponde a la profundidad codificada y la información acerca de un modo de codificación puede incluir información acerca de un tipo de partición de una unidad de codificación correspondiente la cual corresponde a la profundidad codificada, acerca de un modo de predicción y un tamaño de una unidad de transformación. También, la información de división de acuerdo con las profundidades se puede extraer como la información acerca de la profundidad codificada.
La información acerca de la profundidad codificada y el modo de codificación de acuerdo con cada unidad de codificación máxima extraída por el extractor de datos de imagen e información de codificación 220 es información acerca de una profundidad codificada y un modo de codificación determinado para generar un error de codificación mínimo cuando un codificador, tal como el aparato de codificación de video 100, realiza repetidamente una codificación para cada unidad de codificación más profunda de acuerdo con profundidades de acuerdo con cada unidad de codificación máxima. Por consiguiente, el aparato de decodificación de video 200 puede restaurar una imagen al decodificar los datos de imagen de acuerdo con una profundidad codificada y un modo de codificación que genera el error de codificación mínimo.
Puesto que la información de codificación acerca de la profundidad codificada y el modo de codificación se pueden asignar a una unidad de datos predeterminada de entre una unidad de codificación correspondiente, una unidad de predicción y una unidad mínima, el extractor de datos de imagen e información de codificación 220 puede extraer la información acerca de la profundidad codificada y el modo de codificación de acuerdo con las unidades de datos predeterminadas. Se puede inferir que las unidades de datos predeterminadas a las cuales se asigna la misma información acerca de la profundidad codificada y el modo de codificación son las unidades de datos incluidas en la misma unidad de codificación máxima.
El decodificador de datos de imagen 230 restaura la imagen actual al decodificar los datos de imagen en cada unidad de codificación máxima con base en la información acerca de la profundidad codificada y el modo de codificación de acuerdo con las unidades de codificación máximas. En otras palabras, el decodificador de datos de imagen 230 puede decodificar los datos de imagen codificados con base en la información extraída acerca del tipo de partición, el modo de predicción y la unidad de transformación para cada unidad de codificación de entre las unidades de codificación que tienen la estructura arborescente incluida en cada unidad de codificación máxima. Un proceso de decodificación puede incluir una predicción que incluye la intra predicción y la compensación de movimiento, y la transformación inversa. La transformación inversa se puede realizar de acuerdo con un método de transformación ortogonal inversa o transformación de números enteros inversa.
El decodificador de datos de imagen 230 puede realizar la intra predicción o compensación de movimiento de acuerdo con una partición y un modo de predicción de cada unidad de codificación, con base en la información acerca del tipo de partición y el modo de predicción de la unidad de predicción de la unidad de codificación de acuerdo con profundidades codificadas.
También, el decodificador de datos de imagen 230 puede realizar la transformación inversa de acuerdo con cada unidad de transformación en la unidad de codificación, con base en la información acerca del tamaño de la unidad de transformación de la unidad de codificación de acuerdo con profundidades codificadas, con el fin de realizar la transformación inversa de acuerdo con las unidades de codificación máximas.
El decodificador de datos de imagen 230 puede determinar por lo menos una profundidad codificada de una unidad de codificación máxima actual mediante el uso de información de división de acuerdo con las profundidades. Si la información de división indica que los datos de imagen ya no se dividen en la profundidad actual, la profundidad actual es una profundidad codificada. Por consiguiente, el decodificador de datos de imagen 230 puede decodificar datos codificados de por lo menos una unidad de codificación que corresponde a cada profundidad codificada en la unidad de codificación máxima, actual mediante el uso de la información acerca del tipo de partición de la unidad de predicción, el modo de predicción y el tamaño de la unidad de transformación para cada unidad de codificación que corresponde a la profundidad codificada y envía los datos de imagen de la unidad de codificación máxima, actual.
En otras palabras, las unidades de datos que contienen la información de codificación que incluye la misma 9 información de división se pueden recopilar al observar el conjunto de información de codificación asignado para la unidad de datos predeterminada de entre la unidad de codificación, la unidad de predicción y la unidad mínima, y se puede considerar que las unidades de datos recopiladas son una unidad de datos que es decodificada por el decodificador de datos de imagen 230 en el mismo modo de codificación.
El aparato de decodificación de video 200 puede obtener información acerca de por lo menos una unidad de codificación que genera el error de codificación mínimo cuando la codificación se realiza recursivamente para cada unidad de codificación máxima y puede utilizar la información para decodificar la imagen actual. En otras palabras, las unidades de codificación que tienen la estructura arborescente que se determina que son las unidades de codificación óptimas en cada unidad de codificación máxima se pueden decodificar. También, el tamaño máximo de la unidad de codificación se determina considerando la resolución y una cantidad de datos de imagen.
Por consiguiente, incluso si los datos de imagen tienen alta resolución y una gran cantidad de datos, los datos de imagen se pueden decodificar eficientemente y se pueden restaurar mediante el uso de un tamaño de una unidad de codificación y un modo de codificación, los cuales se determinan de manera adaptable de acuerdo con características de los datos de imagen, mediante el uso de información acerca de un modo de codificación óptimo recibido de un codificador.
Un método para determinar unidades de codificación que tienen una estructura arborescente, una unidad de predicción y una unidad de transformación, de acuerdo con una modalidad de la presente invención, ahora se describirá con referencia a las FIGURAS 3 hasta 13.
La FIGURA 3 es un diagrama para describir un concepto de unidades de codificación de acuerdo con una modalidad de la presente invención.
Un tamaño de una unidad de codificación se puede expresar en anchura y altura y puede ser 64x64, 32x32, 16x16 y 8x8. Una unidad de codificación de 64x64 se puede dividir en particiones de 64x64, 64x32, 32x64 o 32x32 y una unidad de codificación de 32x32 se puede dividir en particiones de 32x32, 32x16, 16x32 o 16x16, una unidad de codificación de 16x16 se puede dividir en particiones de 16x16, 16x8, 8x16 u 8x8 y una unidad de codificación de 8x8 se pueden dividir en particiones de 8x8, 8x4, 4x8 o 4x4.
En los datos de video 310, una resolución es 1920x1080, un tamaño máximo de una unidad de codificación es 64 y una profundidad máxima es 2. En los datos de video 320, una resolución es 1920x1080, un tamaño máximo de una unidad de codificación es 64 y una profundidad máxima es 3. En los datos de video 330, una resolución es 352x288, un tamaño máximo de una unidad de codificación es 16 y una profundidad máxima es 1. La profundidad máxima mostrada en la FIGURA 3 indica el número total de divisiones de una unidad de codificación máxima a una unidad de decodificación mínima.
Si una resolución es alta o una cantidad de datos es grande, un tamaño máximo de una unidad de codificación puede ser grande con el fin de no solo incrementar la eficiencia de codificación, sino también de reflejar de manera exacta las características de una imagen. Por consiguiente, el tamaño máximo de la unidad de codificación de los datos de video 310 y 320 que tienen la resolución más alta que los datos de video 330 puede ser 64.
Puesto que la profundidad máxima de los datos de video 310 es 2, las unidades de codificación 315 de los datos de video 310 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64 y unidades de codificación que tienen tamaños de eje largo de 32 y 16 puesto que las profundidades se aumentan a dos capas al dividir dos veces la unidad de codificación máxima. Mientras tanto, puesto que la profundidad máxima de los datos de video 330 es 1, las unidades de codificación 335 de los datos de video 330 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 16 y unidades de codificación que tienen un tamaño de eje largo de 8 puesto que las profundidades se aumentan a una capa al dividir una vez la unidad de codificación máxima.
Puesto que la profundidad máxima de los datos de video 320 es 3, las unidades de codificación 325 de los datos de video 320 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64 y unidades de codificación que tienen tamaños de eje largo de 32, 16 y 8 puesto que las profundidades se aumentan a 3 capas al dividir tres veces la unidad de codificación máxima. Conforme la profundidad aumenta, la información detallada se puede expresar de manera precisa.
La FIGURA 4 es un diagrama de bloques de un codificador de imágenes 400 basado en unidades de codificación, de acuerdo con una modalidad de la presente invención .
El codificador de imágenes 400 realiza operaciones del determinador de unidades de codificación 120 del aparato de codificación de video 100 para codificar datos de imagen. En otras palabras, un intra predictor 410 realiza una intra predicción en unidades de codificación en un modo intra, de entre una trama actual 405 y un estimador de movimiento 420 y un compensador de movimiento 425 realiza una inter-estimación y una compensación de movimiento en unidades de codificación en un modo ínter de entre la trama actual 405 mediante el uso de la trama actual 405 y una trama de referencia 495.
La salida de datos del intra predictor 410, el estimador de movimiento 420 y el compensador de movimiento 425 se envía como un coeficiente de transformación cuantificado a través de un transformador 430 y un cuantificador 440. El coeficiente de transformación cuantificado se restaura como datos en un dominio espacial a través de un cuantificador inverso 460 y un transformador inverso 470 y los datos restaurados en el dominio espacial se envían como la trama de referencia 495 después de ser pos-procesados a través de una unidad de desbloqueo 480 y una unidad de filtración de bucle 490. El coeficiente de transformación cuantificado se puede enviar como una corriente de bits 455 a través de un codificador entrópico 450.
Con el propósito de que el codificador de imágenes 400 sea aplicado en el aparato de codificación de video 100, todos los elementos del codificador de imágenes 400, es decir, el intra predictor 410, estimador de movimiento 420, compensador de movimiento 425, transformador 430, cuantificador 440, codificador entrópico 450, cuantificador inverso 460, transformador inverso 470, unidad de desbloqueo 480 y unidad de filtración de bucle 490 realizan operaciones con base en cada unidad de codificación de entre las unidades de codificación que tienen una estructura arborescente mientras se considera la profundidad máxima de cada unidad de codificación máxima.
Específicamente, el intra predictor 410, el estimador de movimiento 420 y el compensador de movimiento 425 determinan particiones y un modo de predicción de cada unidad de codificación de entre las unidades de codificación que tienen una estructura arborescente mientras se considera el tamaño máximo y la profundidad máxima de una unidad de codificación máxima, actual y el transformador 430 determina el tamaño de la unidad de transformación en cada unidad de codificación de entre las unidades de codificación que tienen una estructura arborescente.
La FIGURA 5 es un diagrama de bloques de un decodificador de imágenes 500 con base en unidades de codificación, de acuerdo con una modalidad de la presente invención .
Un analizador 510 analiza los datos de imagen codificados que son decodificados y la información acerca de la codificación requerida para la decodificación de una corriente de bits 505. Los datos de imagen codificados se envían como datos cuantificados de manera inversa a través de un decodificador entrópico 520 y un cuantificador inverso 530, y los datos cuantificados de manera inversa se restauran a datos de imagen en un dominio espacial a través de un transformador inverso 540.
Un intra predictor 550 realiza una intra predicción en unidades de codificación en un modo intra con respecto a los datos de imagen en el dominio espacial y un compensador de movimiento 560 realiza una compensación de movimiento en unidades de codificación en un modo inter mediante el uso de una trama de referencia 585.
Los datos de imagen en el dominio espacial, los cuales pasaron a través del intra predictor 550 y el compensador de movimiento 560, se pueden enviar como una trama restaurada 595 después de ser pos-procesados a través de una unidad de desbloqueo 570 y una unidad de filtración de bucle 580. También, los datos de imagen, los cuales son posprocesados a través de la unidad de desbloqueo 570 y la unidad de filtración de bucle 580, se pueden enviar como la trama de referencia 585.
Con el propósito de decodificar los datos de imagen en el decodificador de datos de imagen 230 del aparato de decodificación de video 200, el decodificador de imágenes 500 puede realizar operaciones que son realizadas después de que se realizan las operaciones del analizador 510.
Con el propósito de que el decodificador de imágenes 500 sea aplicado en el aparato de decodificación de video 200, todos los elementos del decodificador de imágenes 500, es decir el analizador 510, decodificador entrópico 520, cuantificador inverso 530, transformador inverso 540, intra predictor 550, compensador de movimiento 560, unidad de desbloqueo 570 y unidad de filtración de bucle 580 realizan operaciones con base en unidades de codificación que tienen una estructura arborescente para cada unidad de codificación máxima .
Específicamente, la intra predicción 550 y el compensador de movimiento 560 realizan operaciones con base en particiones y un modo de predicción para cada una de las unidades de codificación que tienen una estructura arborescente y el transformador inverso 540 realiza operaciones con base en el tamaño de una unidad de transformación para cada unidad de codificación.
La FIGURA 6 es un diagrama que ilustra unidades de codificación más profundas de acuerdo con profundidades y particiones, de acuerdo con una modalidad de la presente invención .
El aparato de codificación de video 100 y el aparato de decodificación de video 200 utilizan unidades de codificación jerárquicas con el fin de considerar características de una imagen. Una altura máxima, una anchura máxima y una profundidad máxima de las unidades de codificación se pueden determinar de manera adaptable de acuerdo con las características de la imagen o pueden ser establecidas de manera diferente por un usuario. Los tamaños de unidades de codificación más profundas de acuerdo con las profundidades se pueden determinar de acuerdo con el tamaño máximo, predeterminado de la unidad de codificación.
En una estructura jerárquica 600 de las unidades de codificación, de acuerdo con una modalidad de la presente invención, la altura máxima y la anchura máxima de las unidades de codificación son cada una 64 y la profundidad máxima es 4. Puesto que una profundidad aumenta a lo largo de un eje vertical de la estructura jerárquica 600, una altura y una anchura de la unidad de codificación más profunda se dividen cada una. También, una unidad de predicción y particiones, las cuales son bases para la codificación de predicción de cada unidad de codificación más profunda, se muestran a lo largo de un eje horizontal de la estructura jerárquica 600.
En otras palabras, una unidad de codificación 610 es una unidad de codificación máxima en la estructura jerárquica 600, en donde una profundidad es 0 y un tamaño, es decir una altura por anchura, es 64x64. La profundidad aumenta a lo largo del eje vertical y existe una unidad de codificación 620 que tiene un tamaño de 32x32 y una profundidad de 1, una unidad de codificación 630 que tiene un tamaño de 16x16 y una profundidad de 2, una unidad de codificación 640 que tiene un tamaño de 8x8 y una profundidad de 3 y una unidad de codificación 650 que tiene un tamaño de 4x4 y una profundidad de 4. La unidad de codificación 650 que tiene el tamaño de 4x4 y la profundidad de 4 es una unidad de codificación mínima.
La unidad de predicción y las particiones de una unidad de codificación se disponen a lo largo del eje horizontal de acuerdo con cada profundidad. En otras palabras, si la unidad de codificación 610 que tiene el tamaño de 64x64 y la profundidad de 0 es una unidad de predicción, la unidad de predicción se puede dividir en particiones incluidas en la unidad de codificación 610, es decir una partición 610 que tiene un tamaño de 64x64, particiones 612 que tienen el tamaño de 64x32, particiones 614 que tienen el tamaño de 32x64 o particiones 616 que tienen el tamaño de 32x32.
Similarmente , una unidad de predicción de la unidad de codificación 620 que tiene el tamaño de 32x32 y la profundidad de 1 se puede dividir en particiones incluidas en la unidad de codificación 620, es decir una partición 620 que tiene un tamaño de 32x32, particiones 622 que tienen un tamaño de 32x16, particiones 624 que tienen un tamaño de 16x32 y particiones 626 que tienen un tamaño de 16x16.
Similarmente, una unidad de predicción de la unidad de codificación 630 que tiene el tamaño de 16x16 y la profundidad de 2 se puede dividir en particiones incluidas en la unidad de codificación 630, es decir una partición que tiene un tamaño de 16x16 incluida en la unidad de codificación 630, particiones 632 que tienen un tamaño de 16x8, particiones 634 que tienen un tamaño de 8x16 y particiones 636 que tienen un tamaño de 8x8.
Similarmente, una unidad de predicción de la unidad de codificación 640 que tiene el tamaño de 8x8 y la profundidad de 3 se puede dividir en particiones incluidas en la unidad de codificación 640, es decir una partición que tiene un tamaño de 8x8 incluida en la unidad de codificación 640, particiones 642 que tienen un tamaño de 8x4, particiones 644 que tienen un tamaño de 4x8 y particiones 646 que tienen un tamaño de 4x4.
La unidad de codificación 650 que tiene el tamaño de 4x4 y la profundidad de 4 es la unidad de codificación mínima y una unidad de codificación de la profundidad más baja. Una unidad de predicción de la unidad de codificación 650 se asigna únicamente a una partición que tiene un tamaño de 4x4.
Con el propósito de determinar por lo menos la profundidad codificada de las unidades de codificación que constituyen la unidad de codificación máxima 610, el determinador de unidades de codificación 120 del aparato de codificación de video 100 realiza una codificación para unidades de codificación que corresponden a cada profundidad incluida en la unidad de codificación máxima 610.
Un número de unidades de codificación más profundas de acuerdo con las profundidades que incluyen datos en el mismo intervalo y el mismo tamaño incrementa conforme la profundidad aumenta. Por ejemplo, cuatro unidades de codificación que corresponden a una profundidad de 2 se requieren para cubrir datos que están incluidos en una unidad de codificación que corresponde a una profundidad de 1. Por consiguiente, con el propósito de comparar los resultados de codificación de los mismos datos de acuerdo con las profundidades, la unidad de codificación que corresponde a la profundidad de 1 y cuatro unidades de codificación que corresponden a la profundidad de 2 se codifican cada una.
Con el propósito de realizar una codificación para una profundidad actual de entre las profundidades, se puede seleccionar un error de codificación más pequeño para la profundidad actual al realizar una codificación para cada unidad de predicción en las unidades de codificación que corresponden a la profundidad actual, a lo largo del eje horizontal de la estructura jerárquica 600. Alternativamente, el error de codificación mínimo se puede buscar al comparar los errores de codificación más pequeños de acuerdo con las profundidades y realizar una codificación para cada profundidad conforme la profundidad aumenta a lo largo del eje vertical de la estructura jerárquica 600. Una profundidad y una partición que tienen el error de codificación mínimo en la unidad de codificación 610 se pueden seleccionar como la profundidad codificada y un tipo de partición de la unidad de codificación 610.
La FIGURA 7 es un diagrama para describir una relación entre una unidad de codificación 710 y unidades de transformación 720, de acuerdo con una modalidad de la presente invención.
El aparato de codificación de video 100 o 200 codifica o decodifica una imagen de acuerdo con unidades de codificación que tienen tamaños más pequeños que o iguales a una unidad de codificación máxima para cada unidad de codificación máxima. Los tamaños de las unidades de transformación para la transformación durante la codificación se pueden seleccionar con base en unidades de datos que no son más grandes que una unidad de codificación correspondiente.
Por ejemplo, en el aparato de codificación de video 100 o 200, si un tamaño de la unidad de codificación 710 es 64x64, la transformación se puede realizar mediante el uso de las unidades de transformación 720 que tienen un tamaño de 32x32.
También, los datos de la unidad de codificación 710 que tiene el tamaño de 64x64 se pueden codificar al realizar la transformación en cada una de las unidades de transformación que tienen el tamaño de 32x32, 16x16, 8x8 y 4x4, los cuales son más pequeños que 64x64, y luego se puede seleccionar una unidad de transformación que tiene el error de codificación más pequeño.
La FIGURA 8 es un diagrama para describir información de codificación de unidades de codificación que corresponden a una profundidad codificada, de acuerdo con una modalidad de la presente invención.
La unidad de salida 130 del aparato de codificación de video 100 puede codificar y transmitir información 800 acerca de un tipo de partición, información 810 acerca de un modo de predicción e información 820 acerca de un tamaño de una unidad de transformación para cada unidad de codificación que corresponde a una profundidad codificada, como información acerca de un modo de codificación.
La información 800 indica información acerca de una forma de una partición obtenida al dividir una unidad de predicción de una unidad de codificación actual, en donde la partición es una unidad de datos para la codificación de predicción de la unidad de codificación actual. Por ejemplo, una unidad de codificación actual CU_0 que tiene un tamaño de 2Nx2N se puede dividir en cualquiera de una partición 802 que tiene un tamaño de 2Nx2N, una partición 804 que tiene un tamaño de 2NxN, una partición 806 que tiene un tamaño de Nx2N y una partición 808 que tiene un tamaño de NxN. En este documento, la información 800 acerca de un tipo de partición se establece para indicar una de la partición 804 que tiene un tamaño de 2NxN, la partición 806 que tiene un tamaño de Nx2N y la partición 808 que tiene un tamaño de NxN.
La información 810 indica un modo de predicción de cada partición. Por ejemplo, la información 810 puede indicar un modo de codificación de predicción realizada en una partición indicada por la información 800, es decir, un modo intra 812, un modo Ínter 814 o un modo de omisión 816.
La información 820 indica una unidad de transformación que se basa en cuando se realiza la transformación en la unidad de codificación actual. Por ejemplo, la unidad de transformación puede ser una primera unidad de intra-transformación 822, una segunda unidad de intra-transformación 824, una primera unidad de inter-transformación 826 o una segunda unidad de intra-transformación 828.
El extractor de datos de imagen e información de codificación 220 del aparato de decodificación de video 200 puede extraer y utilizar la información 800, 810 y 820 para la decodificación, de acuerdo con cada unidad de codificación más profunda.
La FIGURA 9 es un diagrama de unidades de codificación más profundas de acuerdo con las profundidades, de acuerdo con una modalidad de la presente invención.
La información de división se puede utilizar para indicar un cambio de una profundidad. La información de división indica si una unidad de codificación de una profundidad actual se divide en unidades de codificación de una profundidad más baja.
Una unidad de predicción 910 para la codificación de predicción de una unidad de codificación 900 que tiene una profundidad de 0 y un tamaño de 2N_0x2N_0 puede incluir particiones de un tipo de partición 912 que tiene un tamaño de 2N_0x2N_0, un tipo de partición 914 que tiene un tamaño de 2N_0xN_0 , un tipo de partición 916 que tiene un tamaño de N_Ox2N_0 y un tipo de partición 918 tiene un tamaño de N_0x _0. La FIGURA 9 solo ilustra los tipos de partición 912 hasta 918 los cuales se obtienen al dividir simétricamente la unidad de predicción 910, pero el tipo de partición no está limitado a los mismos, y las particiones de la unidad de predicción 910 pueden incluir particiones asimétricas, particiones que tienen una forma predeterminada y particiones que tienen una forma geométrica.
La codificación de predicción se realiza repetidamente en una partición que tiene un tamaño de 2N_0x2N_0, dos particiones que tienen un tamaño de 2N_0xN_0, dos particiones que tienen un tamaño de N_0x2N_0 y cuatro particiones que tienen un tamaño de N_0xN_O , de acuerdo con cada tipo de partición. La codificación de predicción en un modo intra y un modo inter se puede realizar en las particiones que tienen los tamaños de 2N_0x2N_0 , N_0x2N_0, 2N_0x _0 y N_0xN_0. La codificación de predicción en un modo de omisión se realiza únicamente en la partición que tiene el tamaño de 2 _0x2N_0.
Si un error de codificación es más pequeño en uno de los tipos de partición 912 hasta 916 que tienen los tamaños de 2N_0x2N_0, 2N_0x _0 y N_0x2N_0, la unidad de predicción 910 no se puede dividir en una profundidad más baja .
Si el error de codificación es el más pequeño en el tipo de partición 918 que tiene el tamaño de N_0xN_0 , una profundidad se cambia de 0 a 1 para dividir el tipo de partición 918 en la operación 920 y la codificación se realiza repetidamente en las unidades de codificación 930 que tienen una profundidad de 2 y un tamaño de N_0x _0 para buscar un error de codificación mínimo.
Una unidad de predicción 940 para la codificación de predicción de la unidad de codificación 930 que tiene una profundidad de 1 y un tamaño de 2N_lx2M_l (=N_0xN_0) puede incluir particiones de un tipo de partición 942 que tiene un tamaño de 2N_lx2N_l, un tipo de partición 944 que tiene un tamaño de 2N_lxN_l, un tipo de partición 946 que tiene un tamaño de N_lx2N_l y un tipo de partición 948 que tiene un tamaño de N_lxN_l .
Si un error de codificación es el más pequeño en el tipo de partición 948 que tiene el tamaño de N_1XN_1 , una profundidad se cambia de 1 a 2 para dividir el tipo de partición 948 en la operación 950 y la codificación se realiza repetidamente en las unidades de codificación 960, las cuales tienen una profundidad de 2 y un tamaño de N_2xN_2 para buscar un error de codificación mínimo.
Cuando una profundidad máxima es d, la operación de división de acuerdo con cada profundidad se puede realizar hasta cuando una profundidad llega a ser d-1, y la información de división se puede codificar hasta cuando una profundidad es uno de 0 a d-2. En otras palabras, cuando la codificación se realiza hasta cuando la profundidad es d-1 después de que una unidad de codificación que corresponde a una profundidad de d-2 se divide en la operación 970, una unidad de predicción 990 para la codificación de predicción de una unidad de codificación 980 que tiene una profundidad de d-1 y un tamaño de 2N_ (d- 1) 2N_ (d- 1) puede incluir particiones de un tipo de partición 992 que tiene un tamaño de 2N_ (d-1) x2N_ (d-1) , un tipo de partición 994 que tiene un tamaño de 2N_(d-l) xN_(d-l) , un tipo de partición 996 que tiene un tamaño de N_ (d- 1) x2N_ (d- 1 ) y un tipo de partición 998 que tiene un tamaño de N_ (d- 1 ) N_ (d-1) .
La codificación de predicción se puede realizar repetidamente en una partición que tiene un tamaño de 2N_(d-l)x2N_(d-l), dos particiones que tienen un tamaño de 2N_(d-l)xN_(d-l), dos particiones que tienen un tamaño de N_(d-l)x2N_(d-l), cuatro particiones que tienen un tamaño de N_(d-l)xN_(d-l) de entre los tipos de partición 992 hasta 998 para buscar un tipo de partición que tiene un error de codificación mínimo.
Incluso cuando el tipo de partición 998 que tiene el tamaño de N_ (d-1) xN_ (d-1) tiene el error de codificación mínimo, puesto que una profundidad máxima es d, una unidad de codificación CU_(d-l) que tiene una profundidad de d-1 ya no se divide a una profundidad más baja y una profundidad codificada para las unidades de codificación que constituyen una unidad de codificación máxima actual 900 se determina que es d-1 y un tipo de partición de la unidad de codificación máxima actual 900 se puede determinar que es N_ (d-1) N_ (d- 1 ) . También, puesto que la profundidad máxima es d y una unidad de codificación mínima 980 que tiene la profundidad más baja de d-1 ya no se divide a una profundidad más baja, la información de división para la unidad de codificación mínima 980 no se establece.
Una unidad de datos 999 puede ser una "unidad mínima" para la unidad de codificación máxima actual. Una unidad mínima de acuerdo con una modalidad de la presente invención puede ser una unidad de datos rectangular que se obtiene al dividir una unidad de codificación mínima 980 por 4. Al realizar repetidamente la codificación, el aparato de codificación de video 100 puede seleccionar una profundidad que tiene el error de codificación más pequeño al comparar errores de codificación de acuerdo con profundidades de la unidad de codificación 900 para determinar una profundidad codificada y establecer un tipo de partición correspondiente y un modo de predicción como un modo de codificación de la profundidad codificada.
Como tales, los errores de codificación mínimos de acuerdo con las profundidades se comparan en todas las profundidades de 1 hasta d y una profundidad que tiene el error de codificación más pequeño se puede determinar como una profundidad codificada. La profundidad codificada, el tipo de partición de la unidad de predicción y el modo de predicción se pueden codificar y transmitir como información acerca de un modo de codificación. También, puesto que una unidad de codificación se divide de una profundidad de 0 a una profundidad codificada, solo la información de división de la profundidad codificada se establece a 0 y la información de división de las profundidades excluyendo la profundidad codificada se establece a 1.
El extractor de datos de imagen e información de codificación 220 del aparato de decodificación de video 200 puede extraer y utilizar la información acerca de la profundidad codificada y la unidad de predicción de la unidad de codificación 900 para decodificar la partición 912. El aparato de decodificación de video 200 puede determinar una profundidad, en la cual la información de división es 0, como una profundidad codificada mediante el uso de información de división de acuerdo con profundidades y puede utilizar información acerca del modo de codificación de la profundidad correspondiente para la decodificación.
Las FIGURAS 10 hasta 12 son diagramas para describir una relación entre unidades de codificación 1010, unidades de predicción 1060 y unidades de transformación 1070, de acuerdo con una modalidad de la presente invención.
Las unidades de codificación 1010 son unidades de codificación que tienen una estructura arborescente, que corresponde a profundidades codificadas que son determinadas por el aparato de codificación de video 100, en una unidad de codificación máxima. Las unidades de predicción 1060 son particiones de unidades de predicción de cada una de las unidades de codificación 1010 y las unidades de transformación 1070 son unidades de transformación de cada una de las unidades de codificación 1010.
Cuando una profundidad de una unidad de codificación máxima es 0 en las unidades de codificación 1010, las profundidades de las unidades de codificación 1012 y 1054 son 1, las profundidades de las unidades de codificación 1014, 1016, 1018, 1028, 1050 y 1052 son 2, las profundidades de las unidades de codificación 1020, 1022, 1024, 1026, 1030, 1032 y 1048 son 3 y las profundidades de las unidades de codificación 1040, 1042, 1044 y 1046 son 4.
En las unidades de predicción 1060, algunas unidades de codificación 1014, 1016, 1022, 1032, 1048, 1050, 1052 y 1054 se obtienen al dividir las unidades de codificación. En otras palabras, los tipos de partición en las unidades de codificación 1014, 1022, 1050 y 1054 tienen un tamaño de 2NxN, los tipos de partición en las unidades de codificación 1016, 1048 y 1052 tienen un tamaño de Nx2N y un tipo de partición de la unidad de codificación 1032 tiene un tamaño de NxN. Las unidades de predicción y las particiones de las unidades de codificación 1010 son más pequeñas que o iguales a cada unidad de codificación.
La transformación o la transformación inversa se realiza en datos de imagen de la unidad de codificación 1052 en las unidades de transformación 1070 en una unidad de datos que es más pequeña que la unidad de codificación 1052. También, las unidades de codificación 1014, 1016, 1022, 1032, 1048, 1050 y 1052 en las unidades de transformación 1070 son diferentes de aquellas en las unidades de predicción 1060 en términos de tamaños y formas. En otras palabras, los aparatos de codificación y decodificación de video 100 y 200 pueden realizar una intra predicción, estimación de movimiento, compensación de movimiento, transformación y transformación inversa individualmente en una unidad de datos en la misma unidad de codificación.
Por consiguiente, la codificación se realiza recursivamente en cada una de las unidades de codificación que tienen una estructura jerárquica en cada región de una unidad de codificación máxima para determinar una unidad de codificación óptima y de esta manera se pueden obtener unidades de codificación que tienen una estructura arborescente recursiva. La información de codificación puede incluir información de división acerca de una unidad de codificación, información acerca de un tipo de partición, información acerca de un modo de predicción e información acerca de un tamaño de una unidad de transformación. La Tabla 1 muestra la información de codificación que puede ser establecida por los aparatos de codificación y decodificación de video 100 y 200.
Tabla 1 La unidad de salida 130 del aparato de codificación de video 100 puede enviar la información de codificación acerca de las unidades de codificación que tienen una estructura arborescente y el extractor de datos de imagen e información de codificación 220 del aparato de decodificación de video 200 puede extraer la información de codificación acerca de las unidades de codificación que tienen una estructura arborescente de una corriente de bits recibida.
La información de división indica si una unidad de codificación actual se divide en unidades de codificación de una profundidad más baja. Si la información de división de una profundidad actual d es 0, una profundidad, en la cual una unidad de codificación actual ya no se divide en una profundidad más baja, es una profundidad codificada y de esta manera la información acerca de un tipo de partición, modo de predicción y tamaño de una unidad de transformación se puede definir para la profundidad codificada. Si la unidad de codificación actual se divide adicionalmente de acuerdo con la información de división, la codificación se realiza independientemente en cuatro unidades de codificación divididas de una profundidad más baja.
Un modo de predicción puede ser uno de un modo intra, un modo inter y un modo de omisión. El modo intra y el modo inter se pueden definir en todos los tipos de partición y el modo de omisión se define únicamente en un tipo de partición que tiene un tamaño de 2Nx2N.
La información acerca del tipo de partición puede indicar tipos de partición simétrica que tienen tamaños de 2Nx2N, 2NxN, Nx2N y NxN, los cuales se obtienen al dividir simétricamente una altura o una anchura de una unidad de predicción y tipos de partición asimétrica que tienen tamaños de 2NxnU, 2NxnD, nLx2N y nRx2N, los cuales se obtienen al dividir asimétricamente la altura o anchura de la unidad de predicción. Los tipos de partición asimétrica que tienen los tamaños de 2NxnU y 2NxnD se pueden obtener respectivamente al dividir la altura de la unidad de predicción en 1:3 y 3:1 y los tipos de partición asimétrica que tienen los tamaños de nLx2N y nRx2N se pueden obtener respectivamente al dividir la anchura de la unidad de predicción en 1:3 y 3:1.
El tamaño de la unidad de transformación se puede establecer para que sea dos tipos en el modo intra y dos tipos en el modo inter. En otras palabras, si la información de división de la unidad de transformación es 0, el tamaño de la unidad de transformación puede ser 2Nx2N, el cual es el tamaño de la unidad de codificación actual. Si la información de división de la unidad de transformación es 1, las unidades de transformación se pueden obtener al dividir la unidad de codificación actual. También, si un tipo de partición de la unidad de codificación actual que tiene el tamaño de 2Nx2N es un tipo de partición asimétrica, un tamaño de la unidad de transformación puede ser NxN y si el tipo de partición de la unidad de codificación actual es un tipo de partición asimétrica, el tamaño de la unidad de transformación puede ser N/2xN/2.
La información de codificación acerca de unidades de codificación que tienen una estructura arborescente puede incluir por lo menos una de una unidad de codificación que corresponde a una profundidad codificada, una unidad de predicción y una unidad mínima. La unidad de codificación que corresponde a la profundidad codificada puede incluir por lo menos una de una unidad de predicción y una unidad mínima que contiene la misma información de codificación.
Por consiguiente, se determina si las unidades de datos adyacentes están incluidas en la misma unidad de codificación que corresponde a la profundidad codificada al comparar información de codificación de las unidades de datos adyacentes. También, una unidad de codificación correspondiente la cual corresponde a una profundidad codificada se determina mediante el uso de información de codificación de una unidad de datos y de esta manera se puede determinar una distribución de profundidades codificadas en una unidad de codificación máxima.
Por consiguiente, si una unidad de codificación actual se predice con base en información de codificación de unidades de datos adyacentes, la información de codificación de unidades de datos en unidades de codificación más profundas que son adyacentes a la unidad de codificación actual puede ser referida directamente y utilizada.
Alternativamente, si una unidad de codificación actual se predice con base en información de codificación de unidades de datos adyacentes, las unidades de datos que son adyacentes a la unidad de codificación actual se buscan utilizando información codificada de las unidades de datos y las unidades de codificación adyacentes, buscadas pueden ser referidas para predecir la unidad de codificación actual.
La FIGURA 13 es un diagrama para describir una relación entre una unidad de codificación, una unidad de predicción o una partición, y una unidad de transformación, de acuerdo con la información de modo de codificación de la Tabla 1.
Una unidad de codificación máxima 1300 incluye las unidades de codificación 1302, 1304, 1306, 1312, 1314, 1316 y 1318 de las profundidades codificadas. En este documento, puesto que la unidad de codificación 1318 es una unidad de codificación de una profundidad codificada, la información de división se puede establecer a 0. La información acerca de un tipo de partición de la unidad de codificación 1318 que tiene un tamaño de 2Nx2N se puede establecer para que sea uno de un tipo de partición 1322 que tiene un tamaño de 2Nx2N, un tipo de partición 1324 que tiene un tamaño de 2NxN, un tipo de partición 1326 que tiene un tamaño de Nx2N, un tipo de partición 1328 que tiene un tamaño de NxN, un tipo de partición 1332 que tiene un tamaño de 2NxnU, un tipo de partición 1334 que tiene un tamaño de 2NxnD, un tipo de partición 1336 que tiene un tamaño de nLx2N y un tipo de partición 1338 que tiene un tamaño de nRx2N.
Cuando el tipo de partición se establece para que sea simétrico, es decir el tipo de partición 1322, 1324, 1326 o 1328, una unidad de transformación 1342 que tiene un tamaño de 2Nx2N se establece si la información de división (indicador de tamaño de TU) de una unidad de transformación es 0 y una unidad de transformación 1344 que tiene un tamaño de NxN se establece si un indicador de tamaño de TU es 1.
Cuando el tipo de partición se establece para que sea asimétrico, es decir, el tipo de partición 1332, 1334, 1336 o 1338, una unidad de transformación 1352 que tiene un tamaño de 2Nx2N se establece si un indicador de tamaño de TU es 0 y una unidad de transformación 1354 que tiene un tamaño de N/2xN/2 se establece si un indicador de tamaño de TU es 1.
En lo sucesivo, se describirán una predicción de movimiento y una compensación de movimiento, las cuales son realizadas por el estimador de movimiento 420 y el compensador de movimiento 425 del aparato de codificación de video 100 de la FIGURA 4 y el compensador de movimiento 550 del aparato de decodificación de video 200 de la FIGURA 5, y los procesos de codificación y decodificación de información de movimiento, los cuales son realizados por el codificador entrópico 450 de la FIGURA 4 y el decodificador entrópico 520 de la FIGURA 5. Como se describiera con referencia a las FIGURAS 1 hasta 13, una unidad de predicción es una unidad de datos para la codificación de predicción de una unidad de codificación. En lo sucesivo, la unidad de predicción se refiere a la unidad de predicción misma o una partición obtenida al dividir la unidad de predicción.
Como se describiera anteriormente, las unidades de predicción se codifican mediante el uso de varios modos de predicción tal como un modo de intra predicción, un modo ínter y un modo de omisión.
En el modo de Ínter predicción, una unidad de predicción actual se predice por vía de la predicción unidireccional o la predicción bidireccional . En detalle, una unidad de predicción incluida en un corte P se predice por vía de una predicción unidireccional utilizando solo una de una imagen de referencia "imagen LO" incluida en una lista de imágenes de referencia "Lista 0" y una imagen de referencia "imagen Ll" incluida en una lista de imágenes de referencia "Lista 1" . Un método de predicción que utiliza la imagen de referencia "imagen LO" incluida en la lista de imágenes de referencia "Lista 0" es referido como "predicción LO" . Un método de predicción que utiliza la imagen de referencia "imagen Ll" incluida en la lista de imágenes de referencia "Lista 1" es referido como "predicción Ll" . En la lista de imágenes de referencia "Lista 0", un índice de imagen de referencia se asigna en orden desde una última imagen pasada hasta una imagen previa a la misma y luego se asigna en orden desde una imagen futura más cercana hasta una siguiente imagen después de la misma. Por otra parte, en la lista de imágenes de referencia "lista 1", un Indice de imagen de referencia se asigna en orden desde una imagen futura más cercana hasta una siguiente imagen después de la misma y luego se asigna en orden desde una última imagen pasada hasta una imagen previa a la misma.
Una unidad de predicción incluida en un corte B se predice por vía de una predicción unidireccional o una predicción bidireccional utilizando un promedio de la imagen de referencia "imagen LO" incluida en la lista de imágenes de referencia "Lista 0" y la imagen de referencia "imagen Ll" incluida en la lista de imágenes de referencia "lista 1". Un modo predictivo, bidireccional realizado por el estimador de movimiento 420 puede utilizar dos imágenes de referencia en lugar de estar limitado a una imagen de referencia previa o siguiente de una imagen actual y puede ser referido como un modo bi-predictivo .
Los costos obtenidos al codificar valores de predicción obtenidos de acuerdo con los modos de predicción se comparan entre sí y un modo de predicción que tiene el costo más pequeño se determina como un modo de predicción final de una unidad de predicción actual. Cuando los costos se comparan entre sí, el modo de predicción final que se aplica a la unidad de predicción actual se puede determinar con base en la tasa de distorsión.
Con el propósito de que un lado de la decodificación genere un valor de predicción de una unidad de predicción en la cual se realiza la Ínter predicción, la información de imagen de referencia acerca de una imagen referida para cada unidad de predicción en la cual se realiza la ínter predicción, la información de vector de movimiento y la información de movimiento tal como una dirección de predicción se pueden transmitir al lado de la decodificación. De acuerdo con modalidades de la presente invención, con el propósito de reducir la información adjunta de transmisión, la información de movimiento se codifica con base en información de movimiento que se predice mediante el uso de información de movimiento de una unidad de predicción adyacente que se codifica previamente o mediante el uso de una unidad de predicción colocada junto a una unidad de predicción actual en la imagen previa, en lugar de ser codificada sin cambios.
De acuerdo con modalidades de la presente invención, se proporcionan varios métodos para generar adicionalmente información de movimiento candidata de tal manera que el número total de piezas de información de movimiento sea igual a un número predeterminado cuando el número de piezas de información de movimiento por defecto obtenida de una unidad de predicción que está colocada espacial y temporalmente junto a una unidad de predicción actual que es determinada previamente por un lado de la codificación y un lado de la decodificación es más pequeño que el número predeterminado. De acuerdo con modalidades de la presente invención, el mismo método se puede determinar previamente de entre los diversos métodos para generar adicionalmente información de movimiento candidata por el lado de la codificación y el lado de la decodificación. En este caso, los índices predeterminados, respectivos que indican los diversos métodos para generar adicionalmente información de movimiento candidata se pueden establecer. Además, un índice que indica un método para generar adicionalmente información de movimiento candidata, el cual se utiliza para la codificación, se puede agregar a un conjunto de parámetros de secuencia (SPS, por sus siglas en inglés), un conjunto de parámetros de imagen (PPS, por sus siglas en inglés) o un encabezado de corte y se puede transmitir .
Por toda esta descripción, la presente invención se describirá en términos de un caso donde la información de vector de movimiento como información de movimiento se codifica. Sin embargo, la presente invención no está limitada al mismo. Alternativamente, la presente invención se puede aplicar a un caso donde la información de movimiento diferente de la información de vector de movimiento, tal como la información de imagen de referencia y la información de dirección de predicción se codifica.
En lo sucesivo, un método y un aparato para codificar información de movimiento de una unidad de predicción y un método y un aparato para decodificar información de movimiento de una unidad de predicción se describirán en detalle con respecto a modalidades ejemplares de la invención.
La FIGURA 14 es un diagrama de bloques de un aparato de codificación de información de movimiento 1400 de acuerdo con una modalidad de la presente invención. Con referencia a la FIGURA 14, el aparato de codificación de información de movimiento 1400 incluye una unidad de generación de información de movimiento candidata 1410 y un codificador de información de movimiento 1420. El aparato de codificación de información de movimiento 1400 de la FIGURA 14 se puede incluir en el codificador de imagen 400 de la FIGURA 4. Por ejemplo, el estimador de movimiento 420 de la FIGURA 4 puede realizar una función de la unidad de generación de información de movimiento candidata 1410 de la FIGURA 14 y el codificador entrópico 450 de la FIGURA 4 puede realizar una función del codificador de información de movimiento 1420 de la FIGURA 14. La presente invención no está limitada a lo mismo. Otros componentes o un controlador (el cual no se muestra) del codificador de imágenes 400 de la FIGURA 4 pueden realizar una función del aparato de codificación de información de movimiento 1400 de la FIGURA 14. La unidad de generación de información de movimiento candidata 1410 obtiene información de movimiento candidata mediante el uso de información de movimiento de unidades de predicción adyacentes que están colocadas temporal y espacialmente junto a una unidad de predicción actual. En particular, la unidad de generación de información de movimiento candidata 1410 obtiene información de movimiento candidata por defecto de las unidades de predicción adyacentes que están colocadas espacialmente junto a la unidad de predicción actual que se establece previamente y unidades de predicción que están colocadas temporalmente junto a la unidad de predicción actual que se establece previamente. Si el número de piezas de la información de movimiento candidata por defecto es más pequeño que un número predeterminado n (donde n es un número entero) , la unidad de generación de información de movimiento candidata 1410 genera "n" piezas de información de movimiento candidata al modificar o combinar información de movimiento de unidades de predicción que están colocadas espacialmente junto a la predicción actual e información de movimiento de unidades de predicción que están colocadas temporalmente junto a la predicción actual o al agregar información de movimiento que tiene un valor predeterminado de tal manera que el número total de piezas de información de movimiento candidata pueda ser "n" . Un proceso para generar información de movimiento candidata se describirá posteriormente.
El codificador de información de movimiento 1420 determina información de movimiento acerca de la unidad de predicción actual de entre las "n" piezas de información de movimiento candidata y codifica información de índice que indica la información de movimiento determinada como información de movimiento de la unidad de predicción actual . En detalle, el codificador de información de movimiento 1420 asigna 0 a (n-1) índices de información de movimiento a las "n" piezas de información de movimiento candidata, respectivamente, y codifica un índice que corresponde a la información de movimiento de la unidad de predicción actual como información de movimiento de la unidad de predicción actual. Por ejemplo, cuando la información de movimiento corresponde a un vector de movimiento de predicción y n=2, es decir, cuando el número de candidatos de vector de movimiento de predicción de la unidad de predicción actual se fija a 2, si dos candidatos de vector de movimiento de predicción que son generados respectivamente con respecto a una dirección LO y una dirección Ll por la unidad de generación de información de movimiento candidata 1410 son MVLX_CandO y MVLX_Candl (X es 0 o 1) , respectivamente, el codificador de información de movimiento 1420 establece un índice de vector de movimiento de predicción que indica MVLX_CandO a 0 y establece un índice de vector de movimiento de predicción que indica MVLX_Candl a 1 y codifica un índice que corresponde a un vector de movimiento de predicción que tiene un costo mínimo como información de vector de movimiento de la unidad de predicción actual de acuerdo con el resultado de codificación de la unidad de predicción actual .
El codificador de información de movimiento 1420 puede codificar información de imagen de referencia, información de dirección de predicción y un valor de diferencia entre el vector de movimiento de predicción y un vector de movimiento original de la unidad de predicción actual, además del índice de vector de movimiento de predicción y puede agregar la información codificada a una corriente de bits.
Cuando el lado de la codificación obtiene un número fijo de piezas de información de movimiento candidata bajo una regla predeterminada y transmite información de índice que indica una pieza individual de información de movimiento de entre las piezas de información de movimiento candidata, el lado de la decodificación puede generar un número fijo de piezas de información de movimiento candidata bajo la misma regla que el lado de la codificación y puede determinar información de movimiento de la unidad de predicción actual mediante el uso de la información de índice transmitida. Al igual que en el ejemplo descrito anteriormente, cuando la información de movimiento corresponde a un vector de movimiento de predicción, el lado de la decodificación puede obtener un índice que indica el vector de movimiento de predicción y un valor de diferencia entre un vector de movimiento y el vector de movimiento de predicción de una corriente de bits y puede restaurar el vector de movimiento de la unidad de predicción actual al agregar el valor de diferencia con el vector de movimiento de predicción indicado por el índice de vector de movimiento de predicción. Además, el lado de la decodificación puede generar un valor de predicción de la unidad de predicción actual mediante el uso del vector de movimiento restaurado y la información de imagen de referencia y la información de dirección de predicción (direcciones LO y Ll) las cuales se obtienen de una corriente de bits.
La FIGURA 15 es un diagrama de bloques de la unidad de generación de información de movimiento candidata 1410 de la FIGURA 14, de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 15, la unidad de generación de información de movimiento candidata 1410 incluye una unidad de generación de información de movimiento candidata, espacial 1510, una unidad de generación de información de movimiento candidata, temporal 1520, una unidad de remoción de redundancia 1530 y una unidad de generación de información de movimiento candidata, adicional 1540.
La unidad de generación de información de movimiento candidata, espacial 1510 genera información de movimiento candidata mediante el uso de información de movimiento de unidades de predicción que están colocadas espacialmente junto a la unidad de predicción actual. En detalle, la unidad de generación de información de movimiento candidata, espacial 1510 incluye una unidad de generación de información de movimiento candidata, superior 1511 que busca secuencialmente unidades de predicción adyacentes colocadas arriba de la unidad de predicción actual en un orden predeterminado para obtener información de movimiento y una unidad de generación de información de movimiento candidata, izquierda 1512 que busca secuencialmente unidades de predicción adyacentes colocadas a la izquierda de la unidad de predicción actual en un orden predeterminado para obtener información de movimiento.
La FIGURA 16 ilustra unidades de predicción adyacentes que están colocadas espacialmente junto a una unidad de predicción actual, de acuerdo con una modalidad de la presente invención. La presente invención no está limitada al caso mostrado en la FIGURA 16. Por ejemplo, las unidades de predicción adyacentes de diferentes ubicaciones espaciales se pueden utilizar como unidades de predicción adyacentes que están colocadas espacialmente junto a una unidad de predicción actual utilizada para predecir información de movimiento de una unidad de predicción actual.
Con referencia a la FIGURA 16, la unidad de generación de información de movimiento candidata, espacial 1510 busca una unidad de predicción adyacente del lado izquierdo de fondo AO 1621 colocada en el lado izquierdo de fondo de la unidad de predicción actual 1610 y una unidad de predicción adyacente del lado izquierdo inferior Al 1622 colocada arriba de la unidad de predicción adyacente del lado izquierdo de fondo AO 1621 de entre unidades de predicción adyacentes que están colocadas a la izquierda de una unidad de predicción actual 1610 en un orden de exploración predeterminado y determina información de movimiento de una primera unidad de predicción que tiene información de movimiento disponible, la cual se busca primero, como información de movimiento candidata, izquierda, de entre la unidad de predicción adyacente del lado izquierdo de fondo A0 1621 y la unidad de predicción adyacente del lado izquierdo inferior Al 1622. Además, la unidad de generación de información de movimiento candidata, espacial 1510 busca una unidad de predicción adyacente BO 1631 colocada en el lado derecho superior de la unidad de predicción actual 1610, una unidad de predicción adyacente Bl 1632 colocada a la izquierda de la unidad de predicción adyacente BO 1631 y una unidad de predicción adyacente B2 1633 colocada en el lado izquierdo superior de la unidad de predicción actual 1610 de entre unidades de predicción adyacentes colocadas arriba de la unidad de predicción actual 1610 y determina información de movimiento de una unidad de predicción que tiene información de movimiento disponible, la cual se busca primero, como información de movimiento candidata, superior. Del mismo modo, la unidad de generación de información de movimiento candidata, espacial 1510 no busca todas las unidades de predicción colocadas alrededor de la unidad de predicción actual 1610 y busca unidades de predicción adyacentes por defecto, es decir, las unidades de predicción adyacentes A0, Al, B0, Bl y B2 para obtener información de movimiento, reduciendo de ese modo la complejidad de cálculo. Como se describiera anteriormente, el número y las ubicaciones de unidades de predicción adyacentes que se buscan para obtener información de movimiento candidata, espacial se pueden cambiar. Sin embargo, con el propósito de que el lado de la decodificación restaure información de movimiento de la unidad de predicción actual, el número y las ubicaciones de las unidades de predicción adyacentes que se buscan para obtener información de movimiento candidata, espacial en el lado de la codificación y el lado de la decodificación se pueden establecer previamente.
Como un ejemplo de un proceso para determinar información de movimiento, se describirá un proceso para determinar un vector de movimiento de predicción de un vector de movimiento de una unidad de predicción actual a partir de unidades de predicción adyacentes que están colocadas espacialmente junto a la unidad de predicción actual.
Con referencia a las FIGURAS 15 y 16, la unidad de generación de información de movimiento candidata, izquierda 1512 verifica secuencialmente si los vectores de movimiento de la unidad de predicción adyacente del lado izquierdo de fondo A0 1621 y la unidad de predicción adyacente del lado izquierdo inferior Al 1622 están disponibles y determina un vector de movimiento de una unidad de predicción adyacente que tiene un vector de movimiento disponible como un vector de movimiento candidato, izquierdo. En este documento, la disponibilidad de un vector de movimiento se refiere a si una unidad de predicción adyacente tiene un vector de movimiento que indica la misma imagen de referencia en la misma lista de imágenes de referencia que una unidad de predicción actual. Por ejemplo, cuando un vector de movimiento de la unidad de predicción actual 1610 es un vector de movimiento que indica una imagen de referencia (imagen LORO) que tiene un índice de referencia RO en una lista LO, si la unidad de predicción adyacente del lado izquierdo de fondo AO 1621 es una unidad de predicción en la cual se realiza la intra predicción, o tiene un vector de movimiento que indica una imagen de referencia incluida en una lista de imágenes de referencia diferente de la unidad de predicción actual 1610, o tiene un vector de movimiento que indica una imagen de referencia diferente incluida en la misma imagen de referencia que la unidad de predicción actual 1610, se determina que la unidad de predicción adyacente del lado izquierdo de fondo AO 1621 no tiene un vector de movimiento disponible. Si la unidad de predicción adyacente del lado izquierdo inferior Al 1622 tiene un vector de movimiento que indica la misma imagen en la misma lista de imágenes de referencia que la unidad de predicción actual 1610, el vector de movimiento de la unidad de predicción adyacente del lado izquierdo inferior Al 1622 se determina como el vector de movimiento candidato, izquierdo .
Similarmente , la unidad de generación de información de movimiento candidata, superior 1511 verifica secuencialmente si los vectores de movimiento de la unidad de predicción adyacente B0 1631, la unidad de predicción adyacente Bl 1632 y la unidad de predicción adyacente B2 1633 están disponibles y determina un vector de movimiento de una unidad de predicción adyacente que indica la misma imagen de referencia en la misma lista de imágenes de referencia que la unidad de predicción actual 1610 como un vector de movimiento candidato, superior.
Cuando las unidades de predicción adyacentes que tienen un vector de movimiento disponible no existen de entre unidades de predicción adyacentes, la unidad de generación de información de movimiento candidata, espacial 1510 puede aumentar a escala un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia diferente de la misma lista de imágenes de referencia que la unidad de predicción actual 1610 o un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia incluida en una lista de imágenes de referencia diferente de la unidad de predicción actual 1610 y puede utilizar el vector de movimiento aumentado a escala como un candidato de vector de movimiento de predicción de la unidad de predicción actual 1610.
La FIGURA 17A es un diagrama de referencia para explicar un proceso para determinar un candidato de vector de movimiento de predicción espacial, aumentado a escala, de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 17A, un vector de movimiento MVL0_Cur de una unidad de predicción actual 1731 indica una imagen LORO 1720 que es una imagen de referencia que tiene un índice de referencia RO en una lista de LO, la unidad de predicción adyacente del lado izquierdo de fondo AO 1621 tiene un movimiento de predicción en el cual se realiza la intra predicción, la unidad de predicción adyacente del lado izquierdo inferior Al 1622 tiene un vector de movimiento mvLl_Al que indica una imagen L1R0 1740 que es una imagen de referencia que tiene un índice de referencia RO en una lista Ll, la unidad de predicción adyacente B0 1631 tiene una unidad de predicción en la cual se realiza la intra predicción, la unidad de predicción adyacente Bl 1632 tiene un vector de movimiento mvLl_Bl que indica una imagen L1R1 1750 que es una imagen de referencia que tiene un índice de referencia Rl en una lista Ll y la unidad de predicción adyacente B2 1633 tiene un vector de movimiento mvL0_B2 que indica una imagen L0R1 1710 que es una imagen de referencia que tiene un índice de referencia Rl en una lista LO. En la FIGURA 17A, cualquier unidad de predicción de entre las unidades de predicción adyacentes de la unidad de predicción actual 1731 no tiene el mismo vector de movimiento que indica la imagen LORO 1720 como el vector de movimiento MVL0_Cur de la unidad de predicción actual 1731. Cuando una unidad de predicción adyacente que tiene un vector de movimiento que indica la misma imagen de referencia que una imagen de referencia indicada por un vector de movimiento de la unidad de predicción actual 1731 no existe de entre las unidades de predicción adyacentes, la unidad de generación de información de movimiento candidata, espacial 1510 puede aumentar a escala un vector de movimiento de una unidad de predicción en la cual se realiza la ínter predicción, de entre las unidades de predicción adyacentes, con base en una distancia temporal entre una imagen de referencia indicada por un vector de movimiento de una unidad de predicción en la cual se realiza la Ínter predicción y una imagen de referencia indicada por un vector de movimiento de una unidad de predicción actual y puede agregar el vector de movimiento aumentado a escala a un vector de movimiento candidato. Es decir, la unidad de generación de información de movimiento candidata, espacial 1510 puede agregar un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia que tiene un índice de referencia diferente en la misma lista de imágenes de referencia que la unidad de predicción actual 1731 de entre vectores de movimiento de una unidad de predicción adyacente a un vector de movimiento candidato. Además, cuando un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia que tiene un índice de referencia diferente en la misma lista de imágenes de referencia que la unidad de predicción actual 1731 no existe de entre vectores de movimiento de una unidad de predicción adyacente, la unidad de generación de información de movimiento candidata, espacial 1510 puede agregar un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia en una lista de imágenes de referencia diferente de la unidad de predicción actual 1731 al vector de movimiento candidato.
Por ejemplo, la unidad de generación de información de movimiento candidata, espacial 1510 puede aumentar a escala el vector de movimiento mvLl_Al de la unidad de predicción adyacente del lado izquierdo inferior Al 1622, excepto por la unidad de predicción adyacente del lado izquierdo de fondo A0 1621 en la cual se realiza la intra predicción, en vista de una distancia temporal entre una imagen actual 1730 y la imagen LORO 1720 indicada por el vector de movimiento MVL0_Cur de la unidad de predicción actual 1731 y una distancia temporal entre la imagen actual 1730 y la imagen L1R0 1740 indicada por el vector de movimiento mvLl_Al de la unidad de predicción adyacente del lado izquierdo inferior Al 1622 y puede determinar el vector de movimiento aumentado a escala mvLl_Al' como un candidato de vector de movimiento izquierdo.
Además, la unidad de generación de información de movimiento candidata, espacial 1510 puede aumentar a escala el vector de movimiento mvL0_B2 de la unidad de predicción adyacente B2 1633 que indica la imagen L0R1 1710 que es una imagen de referencia que tiene un índice de referencia diferente en la misma imagen de referencia que el vector de movimiento MVL0_Cur de la unidad de predicción actual 1731, en lugar del vector de movimiento mvLl_Bl de la unidad de predicción adyacente Bl 1632 que indica la imagen L1R1 1750 que es una imagen de referencia en una lista de imágenes de referencia diferente de la unidad de predicción actual 1731 y determina el vector de movimiento aumentado a escala mvL0_B2 ' como un candidato de vector de movimiento superior. Es decir, cuando la unidad de generación de información de movimiento candidata, espacial 1510 determina un vector de movimiento de una unidad de predicción adyacente, la cual se sujeta al aumento a escala, la unidad de generación de información de movimiento candidata, espacial 1510 puede determinar un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia incluida en la misma lista de imágenes de referencia que un vector de movimiento de la unidad de predicción actual. Luego, cuando un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia incluida en la misma lista de imágenes de referencia que la unidad de predicción actual no existe, la unidad de generación de información de movimiento candidata, espacial 1510 puede determinar un vector de movimiento de una unidad de predicción adyacente que indica una imagen de referencia incluida en una lista de imágenes de referencia diferente de la unidad de predicción actual como un vector de movimiento que se sujeta al aumento a escala. La unidad de generación de información de movimiento candidata, espacial 1510 puede aumentar a escala el vector de movimiento mvL0_B2 de la unidad de predicción adyacente B2 en vista de una distancia temporal entre la imagen actual 1730 y la imagen LORO 1720 indicada por el vector de movimiento MVL0_Cur de la unidad de predicción actual 1731 y un distancia temporal entre la imagen actual 1730 y la imagen L0R1 1710 indicada por el vector de movimiento mvL0_B2 de la unidad de predicción adyacente B2 1633 y puede determinar el vector de movimiento aumentado a escala mvLO_B2 ' como un candidato de vector de movimiento superior.
La FIGURA 18 es un diagrama de referencia para explicar un método para generar un candidato de vector de movimiento de predicción de una unidad de predicción actual al aumentar a escala un vector de movimiento de una unidad de predicción adyacente, de acuerdo con una modalidad de la presente invención.
Como se describiera anteriormente, cuando el mismo vector de movimiento que la unidad de predicción actual, es decir, un vector de movimiento que indica una imagen de referencia que tiene el mismo índice de referencia incluido en la misma lista de imágenes de referencia que la unidad de predicción actual no existe de entre las unidades de predicción adyacentes de la unidad de predicción actual, un vector de movimiento MV(Bn) de una unidad de predicción adyacente (una unidad de predicción Bn de la FIGURA 18) que se refiere a una imagen de referencia diferente en la misma lista de imágenes de referencia que la unidad de predicción actual o un vector de movimiento MV(An) de una unidad de predicción adyacente (una unidad de predicción An de la FIGURA 18) que se refiere a una imagen de referencia incluida en una lista de imágenes de referencia diferente de la unidad de predicción actual se puede aumentar a escala y el vector de movimiento aumentado a escala se puede agregar a un candidato de vector de movimiento de predicción de la unidad de predicción actual. En detalle, cuando una distancia temporal d(cur) entre una imagen actual y una imagen de referencia (una imagen LORO) indicada por el vector de movimiento MVL0_Cur de una unidad de predicción actual es d(cur) y una distancia temporal entre la imagen actual y una imagen de referencia (una imagen L0R1) indicada por el vector de movimiento V(Bn) de una unidad de predicción Bn es d(Bn), el vector de movimiento MV(Bn) de la unidad de predicción Bn se puede aumentar a escala de acuerdo con la Ecuación, MV (Bn) ' =MV (Bn) * { d (cur) /d (Bn) } , y el vector de movimiento aumentado a escala V(Bn) ' se puede agregar a un candidato de vector de movimiento de predicción de la unidad de predicción actual. Similarmente, cuando una distancia temporal entre una imagen actual y una imagen de referencia (una imagen L1R1) indicada por un vector de movimiento MV(An) de una unidad de predicción An es d(An), el vector de movimiento MV(An) de la unidad de predicción An se puede aumentar a escala de acuerdo con la Ecuación, MV (An) ' =MV (An) * { d (cur) /d (An) } y el vector de movimiento aumentado a escala MV(An)' se puede agregar a un candidato de vector de movimiento de predicción de la unidad de predicción actual.
Si el vector de movimiento aumentado a escala se incluye en un candidato de vector de movimiento espacial se puede determinar en vista de una condición predeterminada. Por ejemplo, una unidad de generación de información de movimiento candidata, espacial 1510 puede aumentar a escala un vector de movimiento de una unidad de predicción en la cual se realiza la ínter predicción, de entre las unidades de predicción adyacentes B0 , Bl y B2 y puede agregar el vector de movimiento aumentado a escala a un candidato de vector de movimiento superior únicamente cuando la intra predicción se realiza en una de las unidades de predicción adyacentes AO y Al adyacentes a la izquierda de la unidad de predicción actual. En otras palabras, si el vector de movimiento aumentado a escala se agrega a un candidato de vector de movimiento de predicción espacial se puede realizar selectivamente de acuerdo a si se satisface una condición predeterminada. La condición predeterminada se puede diseñar de varias maneras y no está limitada al ejemplo descrito anteriormente.
En el ejemplo descrito anteriormente, cuando la unidad de generación de información de movimiento candidata, espacial 1510 busca unidades de predicción superiores y unidades de predicción izquierdas que están colocadas espacialmente junto a una unidad de predicción actual, la unidad de generación de información de movimiento candidata, espacial 1510 busca unidades de predicción adyacentes, izquierdas en el orden de A0->A1 o busca unidades de predicción adyacentes, superiores en el orden de B0->B1->B2. Sin embargo, la presente invención no está limitada al orden de exploración. Alternativamente, la unidad de generación de información de movimiento candidata, espacial 1510 puede determinar unidades de predicción adyacentes en el orden de, por ejemplo, Al- >B1->B0- >A0 - >B2 sin una base tal como un lado superior o izquierdo y puede determinar si la información de movimiento de cada unidad de predicción adyacente se utiliza como información de movimiento de la unidad de predicción actual .
Además, cuando la unidad de generación de información de movimiento candidata, espacial 1510 genera información de movimiento candidata, espacial, la unidad de generación de información de movimiento candidata, espacial 1510 puede verificar si la información de movimiento de todas las unidades de predicción colocadas arriba de la unidad de predicción actual y a la izquierda de la unidad de predicción actual, por ejemplo, de todas las unidades de predicción adyacentes A0, Al, B0, Bl y B2 está disponible sin ningún orden de exploración en lugar de buscar unidades de predicción adyacentes en un orden de exploración predeterminado y luego puede agregar todas las piezas de la información de movimiento disponible de entre la información de movimiento de las unidades de predicción adyacentes A0, Al, B0, Bl y B2 al candidato de información de movimiento espacial .
Con referencia nuevamente a la FIGURA 15, la unidad de generación de información de movimiento candidata, temporal 1520 genera información de movimiento candidata, temporal mediante el uso de información de movimiento de una unidad de movimiento que está colocada temporalmente junto a una unidad de predicción actual, es decir, información de movimiento de una unidad de movimiento que está colocada con base en una ubicación de la unidad de predicción actual de entre unidades de predicción de una imagen previa que se codifica previamente.
La FIGURA 19 es un diagrama de referencia para explicar un proceso para generar información de movimiento candidata, temporal, de acuerdo con una modalidad de la presente invención.
Con referencia a las FIGURAS 15 y 19, la unidad de generación de información de movimiento candidata, temporal 1520 puede generar información de movimiento candidata, temporal mediante el uso de información de movimiento de una unidad de predicción 1924 colocada en el lado derecho inferior de una unidad de predicción 1921 de la imagen de referencia 1920 que tiene la misma ubicación que una unidad de predicción actual 1911 de entre unidades de predicción de una imagen de referencia 1920 que se codifica previamente a una imagen actual 1910. Por ejemplo, cuando la información de movimiento es un vector de movimiento de predicción, la unidad de generación de información de movimiento candidata, temporal 1520 puede generar un candidato de vector de movimiento temporal al aumentar a escala un vector de movimiento de la unidad de predicción 1924. El aumento a escala del vector de movimiento de predicción temporal se puede realizar con base en una distancia temporal entre una imagen LORO 1920 y una imagen de referencia L1R0 1930 y una distancia temporal entre la imagen actual 1910 y la imagen de referencia L1R0 1930, como se describe con referencia a la FIGURA 18.
Si la unidad de predicción 1924 colocada en el lado inferior derecho de la unidad de predicción 1921 se intra-predice de tal manera que un vector de movimiento de la unidad de predicción 1924 no está disponible, la unidad de generación de información de movimiento candidata, temporal 1520 puede aumentar a escala un vector de movimiento de la unidad de predicción 1921, la cual contiene un punto C 1922 de la imagen de referencia 1920 como la misma ubicación que el punto C 1912 de un punto central de la unidad de predicción actual 1911 y puede generar el vector de movimiento de predicción temporal. Es decir, la unidad de generación de información de movimiento candidata, temporal 1520 puede verificar primero si está disponible información de movimiento de una unidad de predicción colocada en el lado inferior derecho de una unidad de predicción que tiene la misma ubicación que una unidad de predicción actual de entre unidades de predicción de una imagen previa, puede determinar secuencialmente si está disponible información de movimiento de una unidad de predicción que contiene un punto que tiene la misma ubicación que un punto central de la unidad de predicción actual y luego puede agregar información de movimiento disponible de una unidad de predicción a la información de movimiento candidata, temporal. El número y ubicaciones de las unidades de predicción de una imagen previa que se busca para generar la información de movimiento candidata, temporal pueden no estar limitados al caso mostrado en la FIGURA 19 y pueden cambiar de varias maneras. Además, cuando la unidad de generación de información de movimiento candidata, temporal 1520 genera información de movimiento candidata, temporal, la unidad de generación de información de movimiento candidata, temporal 1520 puede no verificar si está disponible información de movimiento de unidades de predicción de una imagen previa en un orden predeterminado, puede verificar tanto si está disponible información de movimiento de una unidad de predicción colocada en el lado inferior derecho de una unidad de predicción que tiene la misma ubicación que una unidad de predicción actual y si está disponible información de movimiento de una unidad de predicción que contiene un punto que tiene la misma ubicación que un punto central de la unidad de predicción actual y luego puede agregar todas las piezas de la información de movimiento disponible de la unidad de predicción de la imagen previa a la información de movimiento candidata, temporal.
Con referencia nuevamente a la FIGURA 15, la unidad de remoción de redundancia 1530 puede determinar si la información de movimiento candidata, espacial y la información de movimiento candidata, temporal son idénticas entre sí y puede remover información de movimiento redundante de la información de movimiento candidata. La unidad de remoción de redundancia 1530 puede ser omitida con el propósito de reducir la complejidad de cálculo. Es decir, un proceso de verificación de redundancia se puede omitir.
El número de piezas de la información de movimiento candidata generada por la unidad de generación de información de movimiento candidata, espacial 1510 y la unidad de generación de información de movimiento candidata, temporal 1520 puede ser más pequeño que un número predeterminado "n" . En el ejemplo descrito anteriormente, cuando la intra predicción se realiza en todas las unidades de predicción adyacentes que están colocadas arriba de la unidad de predicción actual o a la izquierda de la unidad de predicción actual o cuando la intra predicción de realiza en unidades de predicción colocadas en una ubicación predeterminada de imágenes previas buscadas por la unidad de generación de información de movimiento candidata, temporal 1520, el número de piezas de la información de movimiento candidata generada puede ser menor que "n" .
Cuando el número de piezas de la información de movimiento candidata generada por la unidad de generación de información de movimiento candidata, espacial 1510 y la unidad de generación de información de movimiento candidata, temporal 1520 es menor que un número predeterminado "n" , la unidad de generación de información de movimiento candidata, adicional 1540 puede generar información de movimiento candidata, adicional mediante el uso de información de movimiento de unidades de predicción espacial e información de movimiento disponible de unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata puede ser "n" .
En lo sucesivo se describirán varios métodos para generar información de movimiento candidata, adicional por vía de la unidad de generación de información de movimiento candidata, adicional 1540.
Cuando la unidad de generación de información de movimiento candidata, espacial 1510 verifica secuencialmente si están disponibles unidades de predicción adyacentes de una unidad de predicción actual, la unidad de generación de información de movimiento candidata, adicional 1540 puede generar información de movimiento candidata, adicional mediante el uso de información de movimiento de una unidad de predicción que se verifica después de una unidad de predicción adyacente, disponible que se verifica primero.
La FIGURA 17B es un diagrama de referencia para explicar un proceso para generar información de movimiento candidata, adicional mediante el uso de una unidad de predicción que está colocada espacialmente junto a una unidad de predicción actual, de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 17B, la unidad de generación de información de movimiento candidata, adicional 1540 puede generar información de movimiento de una unidad de predicción a partir de las unidades de predicción adyacentes A0, Al, B0, Bl y B2 , las cuales tienen información de movimiento disponible pero no son incluidas en la información de movimiento candidata debido a que son verificadas después de otra unidad de predicción que es explorada previamente en un orden de exploración, como información de movimiento candidata, adicional.
Por ejemplo, se asume que la información de movimiento candidata, izquierda que es generada por la unidad de generación de información de movimiento candidata, espacial 1510 es "Izquierda", la información de movimiento candidata, superior que es generada por la unidad de generación de información de movimiento candidata, espacial 1510 es "Superior" y la información de movimiento candidata, temporal que es generada por la unidad de generación de información de movimiento candidata, temporal 1520 es "Temporal" . La unidad de generación de información de movimiento candidata, adicional 1540 determina si la información de movimiento candidata (es decir, Izquierda, Superior y Temporal) está disponible, es decir, si la información de movimiento candidata existe y determina que el número de piezas de la información de movimiento candidata es un número predeterminado 3 (el cual corresponde a n=3) . Además, cuando el número de piezas de información de movimiento candidata es menor que un número predeterminado, la unidad de generación de información de movimiento candidata, adicional 1540 puede generar información de movimiento candidata, adicional mediante el uso de información de movimiento de una unidad de predicción que se 57 verifica después de una unidad de predicción adyacente, disponible que se verifica previamente.
Como se describiera anteriormente, cuando la unidad de generación de información de movimiento candidata, espacial 1510 genera información de movimiento candidata, espacial, la unidad de generación de información de movimiento candidata, espacial 1510 puede verificar si la información de movimiento de todas las unidades de predicción colocadas arriba de la unidad de predicción actual y a la izquierda de la unidad de predicción actual, por ejemplo, de todas las unidades de predicción adyacentes A0 , Al, B0, Bl y B2 está disponible sin ningún orden de exploración y luego puede agregar todas las piezas de información de movimiento disponible de entre la información de movimiento de las unidades de predicción adyacentes A0 , Al, B0, Bl y B2 al candidato de información de movimiento espacial. En este caso, cuando el número de piezas de información de movimiento candidata es menor que un número predeterminado, por ejemplo 5, la unidad de generación de información de movimiento candidata, adicional 1540 puede generar información de movimiento candidata, adicional mediante el uso de información de movimiento de la unidad de predicción disponible .
Se asume que la información de movimiento candidata, izquierda no existe y la información de movimiento de las unidades de predicción adyacentes BO, Bl y B2 está disponible. Como se muestra en la FIGURA 17B, la información de movimiento de la unidad de predicción adyacente BO que se verifica previamente en un orden de exploración se selecciona como información de movimiento candidata, superior y la información de movimiento de las unidades de predicción adyacentes Bl y B2 no está incluida en la información de movimiento por defecto. Cuando el número total de piezas de información de movimiento candidata es menor que un número predeterminado puesto que las unidades de predicción adyacentes A0 y Al no tienen información de movimiento disponible, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información de movimiento de la unidad de predicción adyacente Bl o B2 a la información de movimiento candidata, adicional .
Similarmente, cuando la información de movimiento candidata, superior no existe y la información de movimiento de las unidades de predicción adyacente, izquierdas A0 y Al está disponible, la información de movimiento de la unidad de predicción adyacente AO que se verifica previamente se selecciona como información de movimiento izquierda e información de movimiento de la unidad de predicción adyacente Al que se verifica después de la unidad de predicción adyacente Al no está incluida en la información de movimiento por defecto. Sin embargo, cuando el número de piezas de información de movimiento candidata es menor que un número predeterminado puesto que las unidades de predicción adyacentes BO, Bl y B2 no tienen información de movimiento disponible, la información de movimiento de la unidad de predicción adyacente Al se puede incluir en la información de movimiento candidata, adicional.
De acuerdo con otra modalidad de la presente invención, cuando la unidad de generación de información de movimiento candidata, temporal 1520 verifica secuencialmente si las unidades de predicción de una imagen previa que está colocada temporalmente junto a una unidad de predicción actual están disponibles, la unidad de generación de información de movimiento candidata, adicional 1540 puede aumentar a escala la información de movimiento de una unidad de predicción de una imagen previa que tiene información de movimiento de entre unidades de predicción de la imagen previa, restante excepto por una primera imagen previa que tiene información de movimiento disponible y puede agregar la información de movimiento aumentada a escala a la información de movimiento candidata, adicional.
Con referencia nuevamente a la FIGURA 19, la unidad de generación de información de movimiento candidata, temporal 1520 verifica si la información de movimiento de la unidad de predicción 1924 colocada en el lado derecho de fondo de la unidad de predicción 1921 de la imagen de referencia 1920 que tiene una ubicación correspondiente a la unidad de predicción actual 1911 está disponible de entre unidades de predicción de la imagen de referencia 1920 que se codifica previamente a la imagen actual 1910 y luego determina si está disponible información de movimiento de la unidad de predicción 1921, la cual contiene un punto C 1922 de la imagen de referencia 1920 como la misma ubicación que un punto C 1912 de un punto central de la unidad de predicción actual 1911. Si la unidad de predicción 1924 colocada en el lado derecho de fondo de la unidad de predicción 1921 tiene información de movimiento disponible, la información de movimiento de la unidad de predicción 1924 colocada en el lado derecho de fondo de la unidad de predicción 1921 se incluye en la información de movimiento candidata por defecto y la información de movimiento de la unidad de predicción 1921, la cual contiene el punto C 1922 de la imagen de referencia 1920 como la misma ubicación que el punto C 1912 no se incluye en la información de movimiento candidata por defecto. Cuando el número total de piezas de información de movimiento candidata es menor que un número predeterminado, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información de movimiento de la unidad de predicción 1921, la cual contiene el punto C 1922 de la imagen de referencia 1920 como la misma ubicación que el punto C 1912 a la información de movimiento candidata, adicional. Es decir, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información de movimiento de una unidad de predicción que no está incluida en la información de movimiento candidata por defecto de entre unidades de predicción de una imagen previa a la información de movimiento candidata, adicional.
De acuerdo con otra modalidad de la presente invención, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información de movimiento que tiene un valor predeterminado a la información de movimiento candidata, adicional. Por ejemplo, cuando la información de movimiento es un vector de movimiento de predicción, si el número de piezas de información de movimiento candidata es menor que un número predeterminado, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar un vector de movimiento que tiene un valor de componente predeterminado tal como (0,0), (0,1) o (1,0) a un vector de movimiento candidato .
De acuerdo con otra modalidad de la presente invención, cuando la información de movimiento disponible de las unidades de predicción espacial y las unidades de predicción temporal contiene información de vector de movimiento bidireccional de predicción de las direcciones LO y Ll, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar o sustraer una compensación predeterminada a y de un vector de movimiento de la predicción de la dirección LO y un vector de movimiento de la predicción de la dirección Ll para generar información de movimiento candidata, adicional.
Las FIGURAS 20A y 20B son diagramas para explicar un proceso para generar información de movimiento candidata, adicional mediante el uso de información de movimiento de unidades de predicción disponibles, de acuerdo con otra modalidad de la presente invención. Las FIGURAS 21A y 2IB son diagramas para describir una relación posicional entre una imagen actual y una imagen de referencia cuando la información de movimiento candidata, adicional de las FIGURAS 20A y 20B se genera, de acuerdo con una modalidad de la presente invención.
Con referencia a las FIGURAS 20A y 21A, cuando la unidad de predicción adyacente Bl de entre las unidades de predicción colocadas arriba de una unidad de predicción actual tiene un vector de movimiento mvL0_Bl que indica una imagen LORO 2110 que es una imagen de referencia de la predicción de la dirección LO y un vector de movimiento mvLl_Bl que indica una imagen L1R0 2120 que es una imagen de referencia de la predicción de la dirección Ll, y una imagen actual 2100 se coloca entre la imagen LORO 2110 y la imagen L1R0 2120, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar compensaciones predeterminadas que tienen el mismo valor absoluto y diferentes signos al vector de movimiento mvL0_Bl de la predicción de la dirección LO y el vector de movimiento mvLl_Bl de la predicción de la dirección Ll para generar un nuevo vector de movimiento y puede agregar el nuevo vector de movimiento a la información de movimiento candidata, adicional. Es decir, como se muestra en la FIGURA 20A, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar una compensación predeterminada mv_offset al vector de movimiento mvL0_Bl de la predicción de la dirección LO de tal manera que un vector de movimiento generado mvLO ' se puede incluir en un vector de movimiento candidato, adicional de la predicción de la dirección LO y puede sustraer la compensación mv_offset del vector de movimiento mvLl_Bl de la predicción de la dirección Ll de tal manera que el vector de movimiento generado mvLl' se puede incluir en el vector de movimiento candidato, adicional de la predicción de la dirección Ll .
Cuando un vector de movimiento ListOMV de la dirección LO, el cual se incluye en la información de movimiento bidireccional obtenida de una unidad de predicción adyacente, disponible, tiene un valor (mx0,my0) y un vector de movimiento ListlMV de la dirección Ll tiene un valor (mxl,myl) , si una imagen actual se coloca entre una imagen de referencia de la predicción de la dirección Ll y una imagen de referencia de la predicción de la dirección LO, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar y sustraer una compensación predeterminada a y de un vector de movimiento de la predicción de la dirección LO y un vector de movimiento de la predicción de la dirección Ll para generar información de movimiento candidata, adicional de la siguiente manera.
ListOMV= (mxO+offset , myO) , ListlMV= (mxO-offset , myO) ; ListOMV= (mxO -offset , myO) , List1MV= (mxO+offset , myO) ; ListOMV= (mxO , myO+offset) , ListlMV= (mxO , myO-offset) ; ListOMV= (mxO , myO-offset) , ListlMV= (mxO , myO+offset) ; List0MV= (mxO+offset , myO+offset) , ListlMV= (mxO-offset , myO-offset) ; ListOMV= (mxO+offset , myO-offset) , ListlMV= (mxO-offset , myO+offset) ; ListOMV= (mxO-offset , myO+offset) , ListlMV= (mxO+offset , myO-offset) ; y List0MV= (mxO-offset , myO-offset) , ListlMV= (mxO+offset , myO+offset) Con referencia a las FIGURAS 20B y 21B, cuando la unidad de predicción adyacente Bl de entre las unidades de predicción colocadas arriba de una unidad de predicción actual tiene un vector de movimiento mvLlR0_Bl que indica una imagen L1R0 2140 que es una imagen de referencia de la dirección LO y un vector de movimiento mvLlRl_Bl que indica una imagen L1R1 2150 que es una imagen de referencia de la dirección Ll, si la imagen L1R0 2140 y la imagen L1R1 2150 se colocan en las mismas ubicaciones con respecto a una imagen actual 2130, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar o sustraer una compensación predeterminada a y de un vector de movimiento mvLlR0_Bl de la predicción de la dirección LO y un vector de movimiento mvLlRl_Bl de la predicción de la dirección Ll para generar un nuevo vector de movimiento y puede agregar el nuevo vector de movimiento generado a la información de movimiento candidata, adicional. Es decir, como se muestra en la FIGURA 20B, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar un vector de movimiento mvLO' generado al agregar una compensación mv_offset al vector de movimiento mvLlR0_Bl de la predicción de la dirección LO a un vector de movimiento candidato, adicional de la predicción de la dirección LO y puede agregar el vector de movimiento mvLl' generado al agregar la compensación mv_offset al vector de movimiento mvLlRl_Bl de la predicción de la dirección Ll a un vector de movimiento candidato, adicional de la dirección Ll .
Cuando un vector de movimiento ListOMV de la dirección LO, el cual se obtiene a partir de una unidad de predicción adyacente, disponible, tiene un valor (mx0,my0), un vector de movimiento ListlMV de la dirección Ll tiene un valor (mxl,myl) y una imagen de referencia de la dirección Ll y una imagen de referencia de la dirección LO se colocan en ubicaciones correspondientes con respecto a una imagen actual, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar y sustraer una compensación predeterminada a y de un vector de movimiento de la predicción de la dirección LO y un vector de movimiento de la predicción de la dirección Ll para generar información de movimiento candidata, adicional de la siguiente manera.
ListOMV= (mxO+offset , myO) , ListlMV= (mxO+offset , myO) ; ListOMV= (mxO-offset , myO), ListlMV= (mxO -offset , myO) ; ListOMV= (mxO , myO+offset) , Listl V= (mxO , myO+offset) ; ListOMV= (mxO, myO-offset) , ListlMV= (mxO , myO-offset) ; ListOMV= (mxO+offset , myO+offset) , ListlMV= (mxO+offset , myO+offset) ; ListOMV= (mxO+offset , myO-offset) , ListlMV= (mxO+offset , myO-offset) ; ListOMV= (mxO-offset , myO+offset) , ListlMV= (mxO-offset , myO+offset) ; y ListOMV= (mxO-offset , myO-offset) , ListlMV= (mxO-offset , myO-offset) De acuerdo con otra modalidad de la presente invención, la unidad de generación de información de movimiento candidata, adicional 1540 puede cambiar la información de movimiento disponible de unidades de predicción espacial y unidades de predicción temporal para generar información de movimiento candidata, adicional. Cuando la información de movimiento disponible de las unidades de predicción espacial y las unidades de predicción temporal incluye información de vector de movimiento bidireccional de las direcciones LO y Ll, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información unidireccional, la cual se genera al dividir la predicción de las direcciones LO y Ll, a la información de movimiento candidata, adicional. Por ejemplo, se asume que la información de movimiento bidireccional obtenida de las unidades de predicción espacial y las unidades de predicción temporal disponibles incluye información de movimiento de la dirección LO, la cual incluye un vector de movimiento ListOMV de la dirección LO y un índice de imagen de referencia ListOREF que indica una imagen de referencia de la dirección LO e información de movimiento de la dirección Ll , la cual incluye un vector de movimiento ListlMV de la dirección Ll y un índice de imagen de referencia ListlREF que indica una imagen de referencia de la dirección Ll . La unidad de generación de información de movimiento candidata, adicional 1540 puede dividir la información de movimiento bidireccional para generar dos piezas de información de movimiento unidireccional y agregar las dos piezas de información de movimiento unidireccional a la información de movimiento candidata, adicional. Es decir, la unidad de generación de información de movimiento candidata, adicional 1540 puede dividir la información de movimiento bidireccional en información de movimiento unidireccional de la dirección LO que incluye {un vector de movimiento ListOMV de la dirección LO y un índice de imagen de referencia ListOREF que indica una imagen de referencia de la dirección LO} e información de movimiento unidireccional de la dirección Ll que incluye {un vector de movimiento ListlMV de la dirección Ll y un índice de imagen de referencia ListlREF que indica una imagen de referencia de la dirección Ll} y puede agregar la información de movimiento unidireccional a la información de movimiento candidata, adicional .
Además, cuando la información de movimiento disponible de las unidades de predicción espacial y las unidades de predicción temporal incluye información de movimiento unidireccional de información de movimiento de la dirección LO e información de movimiento de la dirección LO, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información de movimiento bidireccional que es generada al combinar la información de movimiento unidireccional de las direcciones LO y Ll a la información de movimiento candidata, adicional. Por ejemplo, cuando la información de movimiento unidireccional de la dirección LO, la cual incluye {un vector de movimiento ListOMV de la dirección LO y un índice de imagen de referencia ListOREF que indica una imagen de referencia de la dirección LO } e información de movimiento unidireccional de la dirección Ll, la cual incluye {un vector de movimiento ListlMV de la dirección Ll y un índice de imagen de referencia ListlREF que indica una imagen de referencia de la dirección Ll} existe como información de movimiento obtenida de unidades de predicción que están colocadas espacial y temporalmente junto a una unidad de predicción actual, la información de movimiento unidireccional de la dirección LO y la información de movimiento unidireccional de la dirección Ll se combinan para generar información de movimiento bidireccional y la información de movimiento bidireccional generada se puede agregar a la información de movimiento candidata, adicional.
Además, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar un vector de movimiento que tiene un valor predeterminado y un índice de referencia a cualquiera de la información de movimiento unidireccional de la dirección LO y la información de movimiento unidireccional de la dirección Ll para generar información de movimiento unidireccional de diferentes direcciones tal que la información de movimiento bidireccional obtenida a la información de movimiento candidata, adicional. Por ejemplo, cuando solo la información de movimiento unidireccional de la dirección LO, la cual incluye {un vector de movimiento ListOMV de la dirección LO y un índice de imagen de referencia ListOREF que indica una imagen de referencia de la dirección LO} existe como información de movimiento obtenida a partir de unidades de predicción que están colocadas espacial y temporalmente junto a una unidad de predicción actual, la unidad de generación de información de movimiento candidata, adicional 1540 puede establecer un vector de movimiento que tiene un valor predeterminado tal como (0,0) como un vector de movimiento ListlMV de la dirección Ll y puede establecer un índice de imagen de referencia ListlREF que indica una imagen de referencia de la dirección Ll como un valor predeterminado 0 para generar información de movimiento de la dirección Ll y puede combinar la información de movimiento generada de la dirección Ll y la información de movimiento existente de la dirección LO de tal manera que la información de movimiento bidireccional, generada se incluye en la información de movimiento candidata, adicional.
La unidad de generación de información de movimiento candidata, adicional 1540 puede generar únicamente información de vector de movimiento de entre la información de movimiento de una unidad de predicción disponible mediante el uso de una unidad de predicción disponible y puede establecer por separado la información de dirección de referencia restante (dirección de predicción) o un índi-ce de imagen de referencia. En este caso, cuando la unidad de generación de información de movimiento candidata, adicional 1540 genera información de movimiento candidata, adicional mediante el uso de información de movimiento de una unidad de predicción disponible, la unidad de generación de información de movimiento candidata, adicional 1540 puede generar información de dirección de referencia de acuerdo con un tipo de corte de una unidad de predicción actual. Por ejemplo, cuando una unidad de predicción actual se incluye en un corte P, una dirección de referencia incluida en la información de movimiento candidata, adicional se establece como la dirección LO. Cuando una unidad de predicción actual se incluye en un corte B, una dirección de referencia se puede establecer como una bi-dirección que incluye la predicción de las direcciones LO y Ll . Además, la unidad de generación de información de movimiento candidata, adicional 1540 puede establecer un índice de imagen de referencia dentro de un intervalo entre (0 ~ el índice de imagen de referencia de la unidad de predicción disponible) y puede agregar una pluralidad de índices de imagen de referencia a la 11 información de movimiento candidata, adicional.
Cuando la unidad de generación de información de movimiento candidata, adicional 1540 genera el índice de imagen de referencia, la unidad de generación de información de movimiento candidata, adicional 1540 puede utilizar un índice de imagen de referencia que indica una imagen de referencia que tiene la frecuencia más alta de entre imágenes de referencia incluidas en la información de movimiento de unidades de predicción espacial y unidades de predicción temporal disponibles o puede utilizar un índice de imagen de referencia que indica una imagen de referencia que es referida por la mayoría de unidades de predicción adyacentes de una unidad de predicción actual, en lugar de establecer un índice de imagen de referencia que tiene un valor predeterminado, como se describiera anteriormente.
Además, cuando el número de piezas de información de movimiento candidata por defecto que es generada por la unidad de generación de información de movimiento candidata, espacial 1510 y la unidad de generación de información de movimiento candidata, temporal 1520 es menor que un número predeterminado "n" , la unidad de generación de información de movimiento candidata, adicional 1540 puede omitir un proceso para verificar si la información de movimiento candidata, adicional que está incluida en la información de movimiento candidata se duplica de tal manera que el número total de piezas de información de movimiento candidata puede ser "n" . Es decir, la unidad de generación de información de movimiento candidata, adicional 1540 puede agregar información de movimiento candidata, adicional que se genera al cambiar la información de movimiento por defecto a la información de movimiento candidata aún cuando la información de movimiento candidata, adicional es la misma que la información de movimiento por defecto.
La FIGURA 22 es un diagrama de flujo de un método para codificar un vector de movimiento, de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 22, en la operación 2310, el estimador de movimiento 420 realiza una predicción de movimiento en una unidad de predicción actual para obtener información de movimiento acerca de la unidad de predicción actual .
En la operación 2320, la unidad de generación de información de movimiento candidata 1410 determina si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la unidad de predicción actual está disponible. Como se describiera anteriormente, la unidad de generación de información de movimiento candidata 1410 verifica si la información de movimiento de las unidades de predicción adyacentes AO y Al colocadas a la izquierda de la unidad de predicción actual y la información de movimiento de las unidades de predicción adyacentes BO, Bl y B2 colocadas arriba de la unidad de predicción actual están disponibles y puede agregar información de movimiento de una unidad de predicción adyacente, disponible a la información de movimiento candidata por defecto. Además, la unidad de generación de información de movimiento candidata 1410 verifica si la información de movimiento de unidades de predicción de una ubicación predeterminada de entre unidades de predicción de una imagen previa está disponible y puede agregar la información de movimiento de la imagen previa a la información de movimiento candidata por defecto.
En la operación 2330, cuando el número de piezas de información de movimiento de unidades de predicción espacial y unidades de predicción temporal es menor que un número predeterminado "n" , la unidad de generación de información de movimiento candidata 1410 puede generar información de movimiento candidata, adicional mediante el uso de información de movimiento de unidades de predicción espacial y unidades de predicción temporal disponibles de tal manera que el número total de piezas de información de movimiento candidata puede ser "n" .
En la operación 2340, el codificador de información de movimiento 1420 codifica la información de movimiento de la unidad de predicción actual mediante el uso de n piezas de información de movimiento. En detalle, el codificador de información de movimiento 1420 determina la información de movimiento más similar a la información de movimiento de una unidad de predicción actual de entre la información de movimiento candidata, generada y transmite la información de índice que indica la información de movimiento determinada. Por ejemplo, cuando la información de movimiento es un vector de movimiento, la unidad de generación de información de movimiento candidata 1410 genera candidatos de vectores de movimiento de predicción de la unidad de predicción actual y el codificador de información de movimiento 1420 puede codificar información acerca de un valor de índice que indica un vector de movimiento de predicción más similar al vector de movimiento de la unidad de predicción actual de entre candidatos de vectores de movimiento de predicción e información acerca de un valor de diferencia entre el vector de movimiento de la unidad de predicción actual y el vector de movimiento de predicción.
La FIGURA 23 es un diagrama de bloques de un aparato de decodificación de vectores de movimiento 2400 de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 23, el aparato de decodificación de vectores de movimiento 2400 incluye un decodificador entrópico 2410, un decodificador de información de movimiento 2420 y una unidad de generación de información de movimiento candidata 2430.
El decodificador entrópico 2410 extrae información de movimiento utilizada en una unidad de predicción actual de entre información de movimiento candidata de una corriente de bits. Por ejemplo, cuando la información de movimiento es un vector de movimiento, el decodificador entrópico 2410 extrae un índice que indica información de movimiento acerca de un índice de vector de movimiento de predicción, un valor de diferencia entre el vector de movimiento de predicción y un vector de movimiento original, información de imagen de referencia e información de dirección de predicción.
Al igual que la unidad de generación de información de movimiento candidata 1410 mostrada en la FIGURA 14A, la unidad de generación de información de movimiento candidata 2430 obtiene información de movimiento candidata mediante el uso de información de movimiento de unidades de predicción adyacentes que están colocadas temporal y espacialmente junto a una unidad de predicción actual y genera información de movimiento candidata, adicional mediante el uso de información de movimiento de unidades de predicción que están colocadas espacial y temporalmente junto a la unidad de predicción actual de tal manera que el número de piezas de la información de movimiento candidata es "n" .
El decodificador de información de movimiento 2420 obtiene una pieza individual de información de movimiento candidata que es generada por la unidad de generación de información de movimiento candidata 2430 mediante el uso de un índice que indica información de movimiento de una unidad de predicción actual obtenida de una corriente de bits. Como se describiera anteriormente, cuando la información de movimiento es un vector de movimiento, el decodificador de información de movimiento 2420 obtiene un vector de movimiento de predicción individual de entre candidatos de vectores de movimiento de predicción mediante el uso de un índice que indica el vector de movimiento de predicción obtenido de una corriente de bits, extrae información acerca de un valor de diferencia entre el vector de movimiento de predicción y un vector de movimiento original de una corriente de bits y luego agrega el valor de diferencia y el vector de movimiento de predicción para restaurar un vector de movimiento de la unidad de predicción actual.
La FIGURA 24 es un diagrama de flujo de un método para decodificar información de movimiento, de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 24, en la operación 2510, la unidad de generación de información de movimiento candidata 2430 determina si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la unidad de predicción actual están disponibles. En la operación 2520, como el resultado de la determinación, cuando el número de piezas de información de movimiento disponible de las unidades de predicción espacial y las unidades de predicción temporal es menor que un número predeterminado "n" (donde n es un número entero) , la unidad de generación de información de movimiento candidata 2430 genera información de movimiento candidata, adicional mediante el uso de información de movimiento disponible de unidades de predicción espacial y unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata puede ser "n" .
En la operación 2530, el decodificador entrópico 2410 obtiene y envía información de índice que indica una información de movimiento de entre "n" piezas de información de movimiento candidata de una corriente de bits. En la operación 2540, el decodificador de información de movimiento 2420 obtiene información de movimiento de una unidad de predicción actual mediante el uso de la información de movimiento indicada por el índice. Como se describiera anteriormente, cuando la información de movimiento es un vector de movimiento, el decodificador de información de movimiento 2420 obtiene un vector de movimiento de predicción individual de entre candidatos de vectores de movimiento de predicción mediante el uso del índice que indica el vector de movimiento de predicción obtenido de una corriente de bits, extrae información acerca de un valor de diferencia entre el vector de movimiento de predicción y un vector de movimiento original de una corriente de bits y luego agrega el valor de diferencia y el vector de movimiento de predicción para restaurar un vector de movimiento de la unidad de predicción actual .
Las modalidades de la presente invención se pueden escribir como programas de computadora y se pueden implementar en computadoras digitales de uso general que ejecutan los programas utilizando un medio de grabación legible por computadora. Los ejemplos del medio de grabación legible por computadora incluye medios de almacenamiento magnéticos (por ejemplo, ROM, discos flexibles, discos duros, etcétera) y medios de grabación ópticos (por ejemplo, CD-ROMs o DVDs) .
Mientras que la presente invención ha sido mostrada y descrita particularmente con referencia a modalidades ejemplares de la misma, aquellas personas de experiencia ordinaria en el campo entenderán que se pueden hacer varios cambios en la forma y los detalles en la presente sin apartarse del espíritu y alcance de la presente invención como se definen por las siguientes reivindicaciones.
Se hace constar que con relación a esta fecha, el mejor método conocido por la solicitante para llevar a la práctica la citada invención, es el que resulta claro de la presente descripción de la invención.

Claims (15)

REIVINDICACIONES Habiéndose descrito la invención como antecede, se reclama como propiedad lo contenido en las siguientes reivindicaciones :
1. Un método para decodificar información de movimiento, caracterizado porque comprende: determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la predicción actual están disponibles; como resultado de la determinación, cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado "n" (donde n es un número entero) , generar información de movimiento candidata adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea "n" ; obtener información de índice que indica información de movimiento individual de entre las "n" piezas de información de movimiento candidata de una corriente de bits; y obtener información de movimiento de la unidad de predicción actual mediante el uso de la información de movimiento indicada por el índice.
2. El método de conformidad con la reivindicación 1, caracterizado porque la determinación comprende: buscar unidades de predicción predeterminadas que están colocadas arriba de la unidad de predicción actual en un orden de exploración predeterminado y seleccionar información de movimiento de una primera unidad de predicción superior que tiene información de movimiento disponible como un candidato de información de movimiento espacial, superior de la unidad de predicción actual; buscar unidades de predicción predeterminadas que están colocadas a la izquierda de la unidad de predicción actual en un orden de exploración predeterminado y seleccionar información de movimiento de una primera unidad de predicción izquierda que tiene información de movimiento disponible como un candidato de información de movimiento espacial izquierdo de la unidad de predicción actual; y seleccionar información de movimiento de una unidad de predicción de una imagen previa seleccionada de la imagen previa, con base en una unidad de predicción de una imagen previa que tiene la misma ubicación que la unidad de predicción actual, como un candidato de información de movimiento temporal de la unidad de predicción actual, en donde la generación de la información de movimiento candidata, adicional se realiza cuando el número total de piezas de información de movimiento candidata que se obtiene mediante el uso del candidato de información de movimiento espacial, superior, el candidato de información de movimiento espacial izquierdo y el candidato de información de movimiento temporal es menor que "n" .
3. El método de conformidad con la reivindicación 2, caracterizado porque la generación de la información de movimiento candidata, adicional comprende la generación de la información de movimiento de una unidad de predicción superior disponible que se busca después de que una primera unidad de predicción superior que tiene información de movimiento disponible se busca, como la información de movimiento candidata, adicional, en un orden de exploración predeterminado .
4. El método de conformidad con la reivindicación 2, caracterizado porque la generación de la información de movimiento candidata, adicional comprende la generación de la información de movimiento candidata, adicional que tiene información de movimiento de una unidad de predicción izquierda, disponible que se busca después de que una primera unidad de predicción izquierda que tiene información de movimiento disponible se busca, en el orden de exploración predeterminado .
5. El método de conformidad con la reivindicación 2, caracterizado porque la generación de la información de movimiento candidata, adicional comprende el aumentado a escala de la información de movimiento de una unidad de predicción de una imagen previa que tiene información de movimiento de entre unidades de predicción restantes de la imagen previa excepto por una unidad de predicción de una primera imagen previa que tiene información de movimiento disponible y la generación de la información de movimiento candidata, adicional, cuando las unidades de predicción de una imagen previa, la cual se determina con base en una unidad de predicción de una imagen previa que tiene la misma ubicación que la unidad de predicción actual, se exploran en un orden de exploración predeterminado.
6. El método de conformidad con la reivindicación 1, caracterizado porque la determinación comprende: la selección de información de movimiento de unidades de predicción espacial predeterminadas de las cuales las ubicaciones se determinan previamente de entre unidades de predicción predeterminadas que están colocadas arriba y a la izquierda de la unidad de predicción actual, como un candidato de información de movimiento espacial de la unidad de predicción actual; la selección de información de movimiento de una unidad de predicción de una imagen previa seleccionada de la imagen previa con base en una unidad de predicción de una imagen previa que tiene la misma ubicación que la unidad de predicción actual, como un candidato de información de movimiento temporal de la unidad de predicción actual, en donde la generación de la información de movimiento candidata, adicional se realiza cuando un número total de piezas de información de movimiento candidata que se obtiene mediante el uso del candidato de información de movimiento espacial y el candidato de información de movimiento temporal es menor que "n" .
7. El método de conformidad con la reivindicación 1, caracterizado porque la generación de la información de movimiento candidata, adicional comprende la generación de información de movimiento predeterminada que se determina previamente, como la información de movimiento candidata, adicional .
8. El método de conformidad con la reivindicación 1, caracterizado porque la generación de la información de movimiento candidata, adicional comprende, cuando la información de movimiento de las unidades de predicción espacial y las unidades de predicción temporal disponibles comprende información de vector de movimiento bidireccional de predicción de una dirección LO y una dirección Ll, la generación de la información de movimiento candidata, adicional mediante la adición o sustracción de una compensación predeterminada a y de un vector de movimiento de la predicción de la dirección LO y un vector de movimiento de la predicción de la dirección Ll .
9. El método de conformidad con la reivindicación 8, caracterizado porque, cuando una primera imagen de referencia utilizada en la predicción de la dirección LO y una segunda imagen de referencia utilizada en la predicción de la dirección Ll se colocan en la misma ubicación con base en una imagen actual que comprende la unidad de predicción actual, la compensación se agrega al vector de movimiento de la predicción de la dirección LO y al vector de movimiento de la predicción de la dirección Ll, y en donde, cuando la imagen actual se coloca entre la primera imagen de referencia utilizada en la predicción de la dirección LO y la segunda imagen de referencia utilizada en la predicción de la dirección Ll, la compensación se agrega al vector de movimiento de la predicción de la dirección LO y un valor obtenido al multiplicar la compensación por -1 se agrega al vector de movimiento de la predicción de la dirección Ll .
10. El método de conformidad con la reivindicación 1, caracterizado porque la generación de la información de movimiento candidata, adicional comprende el cambio de direcciones de predicción de información de movimiento de las unidades de predicción espacial disponibles e información de movimiento de las unidades de predicción temporal disponibles para generar la información de movimiento candidata, adicional .
11. El método de conformidad con la reivindicación 10, caracterizado porque la generación de la información de movimiento candidata, adicional comprende, cuando la información de movimiento de las unidades de predicción espacial disponibles y la información de movimiento de las unidades de predicción temporal disponibles comprenden información de vector de movimiento bidireccional de la predicción de la dirección LO y la predicción de la dirección Ll, la generación de la información de movimiento candidata, adicional mediante el uso de información de movimiento unidireccional de una seleccionada de la dirección de la dirección LO y la dirección de la dirección Ll .
12. El método de conformidad con la reivindicación 10, caracterizado porque la generación de la información de movimiento candidata, adicional comprende, cuando la información de movimiento de las unidades de predicción espacial disponibles y la información de movimiento de las unidades de predicción temporal disponibles comprenden información de movimiento unidireccional de una seleccionada de la dirección de la dirección LO y la dirección de la dirección Ll, la generación de la información de movimiento candidata, adicional mediante el uso de información de movimiento bidireccional obtenida al combinar la predicción de la dirección LO y la predicción de la dirección Ll .
13. El método de conformidad con la reivindicación 10, caracterizado porque la generación de la información de movimiento candidata, adicional comprende, cuando la información de movimiento de las unidades de predicción espacial disponibles y la información de movimiento de las unidades de predicción temporal disponibles comprenden información de movimiento unidireccional de una seleccionada de la dirección de la dirección LO y la dirección de la dirección Ll, la generación de información de movimiento bidireccional que es generada al combinar información de movimiento unidireccional que comprende un vector de movimiento que tiene un valor de componente predeterminado, como la información de movimiento candidata, adicional.
14. El método de conformidad con la reivindicación 1, caracterizado porque, en la generación de la información de movimiento candidata, adicional, no se verifica si la información de movimiento candidata por defecto y la información de movimiento candidata, adicional, generada se duplican y la información de movimiento candidata, adicional, generada se agrega a la información de movimiento candidata.
15. Un método para codificar información de movimiento, caracterizado porque comprende: realizar una predicción de movimiento en una unidad de predicción actual para obtener información de movimiento acerca de la unidad de predicción actual, determinar si la información de movimiento de unidades de predicción espacial que están colocadas espacialmente junto a una unidad de predicción actual y la información de movimiento de unidades de predicción temporal que están colocadas temporalmente junto a la predicción actual están disponibles; como resultado de la determinación, cuando el número de la información de movimiento de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal es menor que un número predeterminado "n" (donde n es un número entero) , generar información de movimiento candidata, adicional mediante el uso de la información de movimiento disponible de las unidades de predicción espacial y la información de movimiento de las unidades de predicción temporal de tal manera que el número total de piezas de información de movimiento candidata sea "n" ; y codificar información de movimiento de la unidad de predicción actual mediante el uso de las "n" piezas de información de movimiento.
MX2014000160A 2011-06-27 2012-06-27 Metodo y aparato para codificar informacion de movimento y metodo y aparato para decodificar la misma. MX2014000160A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161501300P 2011-06-27 2011-06-27
PCT/KR2012/005091 WO2013002557A2 (ko) 2011-06-27 2012-06-27 움직임 정보의 부호화 방법 및 장치, 그 복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
MX2014000160A true MX2014000160A (es) 2014-02-19

Family

ID=47424667

Family Applications (2)

Application Number Title Priority Date Filing Date
MX2014000160A MX2014000160A (es) 2011-06-27 2012-06-27 Metodo y aparato para codificar informacion de movimento y metodo y aparato para decodificar la misma.
MX2015001248A MX336525B (es) 2011-06-27 2014-01-07 Metodo y aparato para codificar informacion de movimiento y metodo y aparato para decodificar la misma.

Family Applications After (1)

Application Number Title Priority Date Filing Date
MX2015001248A MX336525B (es) 2011-06-27 2014-01-07 Metodo y aparato para codificar informacion de movimiento y metodo y aparato para decodificar la misma.

Country Status (26)

Country Link
US (6) US9204160B2 (es)
EP (6) EP3876540B1 (es)
JP (5) JP6322136B2 (es)
KR (6) KR101456500B1 (es)
CN (6) CN106851314B (es)
AU (5) AU2012276455B2 (es)
BR (2) BR122021004610B1 (es)
CA (2) CA2840483C (es)
CY (1) CY1120897T1 (es)
DK (2) DK3282707T3 (es)
ES (5) ES2848869T3 (es)
HR (1) HRP20181873T1 (es)
HU (4) HUE042313T2 (es)
LT (1) LT3282707T (es)
MX (2) MX2014000160A (es)
MY (1) MY165858A (es)
PH (5) PH12014500012A1 (es)
PL (5) PL3876540T3 (es)
PT (1) PT3282707T (es)
RS (1) RS57965B1 (es)
RU (4) RU2636672C1 (es)
SG (1) SG10201605263SA (es)
SI (1) SI3282707T1 (es)
TW (5) TWI628950B (es)
WO (1) WO2013002557A2 (es)
ZA (5) ZA201400623B (es)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3876540T3 (pl) * 2011-06-27 2023-07-24 Samsung Electronics Co., Ltd. Sposób dekodowania i kodowania informacji o ruchu, urządzenie do kodowania informacji o ruchu i czytelny dla komputera nośnik
MX341415B (es) * 2011-08-03 2016-08-19 Panasonic Ip Corp America Metodo de codificacion de video, aparato de codificacion de video, metodo de decodificacion de video, aparato de decodificacion de video y aparato de codificacion/decodificacion de video.
JP5884697B2 (ja) * 2011-09-28 2016-03-15 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、送信装置、送信方法及び送信プログラム
JP5942782B2 (ja) * 2011-10-31 2016-06-29 株式会社Jvcケンウッド 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法及び受信プログラム
US20130121417A1 (en) * 2011-11-16 2013-05-16 Qualcomm Incorporated Constrained reference picture sets in wave front parallel processing of video data
BR122022002970B1 (pt) * 2012-01-19 2022-11-22 Electronics And Telecommunications Research Institute Método de decodificação de imagem
US8972570B1 (en) * 2012-08-17 2015-03-03 Facebook, Inc. Implicit geolocation of social networking users
CN107113440B (zh) * 2014-10-31 2020-10-13 三星电子株式会社 一种由视频解码装置执行的视频解码方法
WO2016143972A1 (ko) * 2015-03-11 2016-09-15 엘지전자(주) 비디오 신호의 인코딩/디코딩 방법 및 장치
WO2017131908A1 (en) * 2016-01-29 2017-08-03 Google Inc. Dynamic reference motion vector coding mode
US10397600B1 (en) 2016-01-29 2019-08-27 Google Llc Dynamic reference motion vector coding mode
US10462457B2 (en) * 2016-01-29 2019-10-29 Google Llc Dynamic reference motion vector coding mode
KR20180136967A (ko) * 2016-04-22 2018-12-26 엘지전자 주식회사 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
KR102270228B1 (ko) 2016-07-12 2021-06-28 한국전자통신연구원 영상 부호화/복호화 방법 및 이를 위한 기록 매체
CN116708784A (zh) 2016-07-12 2023-09-05 韩国电子通信研究院 图像编码/解码方法以及用于该方法的记录介质
US11381829B2 (en) * 2016-08-19 2022-07-05 Lg Electronics Inc. Image processing method and apparatus therefor
US20180242024A1 (en) * 2017-02-21 2018-08-23 Mediatek Inc. Methods and Apparatuses of Candidate Set Determination for Quad-tree Plus Binary-tree Splitting Blocks
MY203480A (en) * 2017-06-30 2024-06-28 Huawei Tech Co Ltd Error resilience and parallel processing for decoder side motion vector derivation
EP3618435A4 (en) * 2017-07-07 2020-03-18 Samsung Electronics Co., Ltd. DEVICE AND METHOD FOR ADAPTING MOTION VECTOR RESOLUTION BY DETERMINED MOTION VECTOR CODING AND DEVICE AND METHOD FOR DECODING A MOTION VECTOR
WO2019084776A1 (zh) * 2017-10-31 2019-05-09 华为技术有限公司 图像块的候选运动信息的获取方法、装置及编解码器
WO2019112072A1 (ko) * 2017-12-04 2019-06-13 엘지전자 주식회사 영상 코딩 시스템에서 수정된 움직임 정보 후보 리스트에 기반한 영상 디코딩 방법 및 장치
CN109963155B (zh) 2017-12-23 2023-06-06 华为技术有限公司 图像块的运动信息的预测方法、装置及编解码器
US10397603B1 (en) * 2018-05-08 2019-08-27 Tencent America LLC Method and apparatus for video coding
US10958932B2 (en) * 2018-09-12 2021-03-23 Qualcomm Incorporated Inter-prediction coding of video data using generated motion vector predictor list including non-adjacent blocks
WO2020057504A1 (en) 2018-09-17 2020-03-26 Mediatek Inc. Methods and apparatuses of combining multiple predictors for block prediction in video coding systems
KR20250026375A (ko) 2018-10-27 2025-02-25 후아웨이 테크놀러지 컴퍼니 리미티드 서브블록 병합 후보를 위한 개별적인 병합 목록 및 비디오 코딩을 위한 인트라-인터 기술 조화
EP3857890A4 (en) 2018-11-06 2021-09-22 Beijing Bytedance Network Technology Co. Ltd. SIGNALING PAGE INFORMATION FOR INTERPREDICTION WITH GEOMETRIC PARTITIONING
KR102770677B1 (ko) * 2018-11-21 2025-02-19 텔레폰악티에볼라겟엘엠에릭슨(펍) 서브-블록 병합 단순화를 포함하는 비디오 화상 코딩 방법 및 관련된 장치
US11122288B2 (en) 2018-12-06 2021-09-14 Qualcomm Incorporated Spatio-temporal motion vector prediction patterns for video coding
US11470340B2 (en) * 2018-12-10 2022-10-11 Tencent America LLC Simplified merge list construction for small coding blocks
CN116389750A (zh) * 2018-12-28 2023-07-04 Jvc建伍株式会社 动图像解码装置和方法、以及动图像编码装置和方法
WO2020137848A1 (ja) 2018-12-28 2020-07-02 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
KR102606883B1 (ko) * 2018-12-28 2023-11-24 가부시키가이샤 제이브이씨 켄우드 동화상 복호 장치, 동화상 복호 방법, 동화상 복호 프로그램, 동화상 부호화 장치, 동화상 부호화 방법 및 동화상 부호화 프로그램
KR20250026874A (ko) * 2018-12-29 2025-02-25 에스지 디제이아이 테크놀러지 코., 엘티디 비디오 처리 방법 및 기기
WO2020140862A1 (en) 2018-12-30 2020-07-09 Beijing Bytedance Network Technology Co., Ltd. Conditional application of inter prediction with geometric partitioning in video processing
CN114019107B (zh) * 2021-11-08 2023-12-26 南京延长反应技术研究院有限公司 一种蒽醌法制双氧水体系中微气泡强化的评测方法
CN120202670A (zh) * 2022-11-18 2025-06-24 三星电子株式会社 视频编解码方法及其设备

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0180170B1 (ko) * 1995-06-30 1999-05-01 배순훈 움직임 추정 방법 및 추정 장치
KR0181069B1 (ko) * 1995-11-08 1999-05-01 배순훈 움직임 추정장치
US6567469B1 (en) * 2000-03-23 2003-05-20 Koninklijke Philips Electronics N.V. Motion estimation algorithm suitable for H.261 videoconferencing applications
JP2002165109A (ja) 2000-11-24 2002-06-07 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および動きベクトル検出方法
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
AU2003281133A1 (en) * 2002-07-15 2004-02-02 Hitachi, Ltd. Moving picture encoding method and decoding method
US7978769B2 (en) * 2003-06-30 2011-07-12 Ntt Docomo, Inc. Method and apparatus for coding motion information
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
CN1213613C (zh) * 2003-09-12 2005-08-03 浙江大学 视频编解码中运动矢量的预测方法和装置
JP2006005659A (ja) * 2004-06-17 2006-01-05 Canon Inc 画像符号化装置及びその方法
US20060133495A1 (en) * 2004-12-22 2006-06-22 Yan Ye Temporal error concealment for video communications
CN100539693C (zh) * 2005-08-30 2009-09-09 深圳清华大学研究院 快速运动估计方法
JP2007189276A (ja) * 2006-01-11 2007-07-26 Victor Co Of Japan Ltd 画像圧縮装置及び画像圧縮プログラム
CN100576919C (zh) * 2006-08-08 2009-12-30 佳能株式会社 运动矢量检测设备及运动矢量检测方法
JP4993676B2 (ja) 2006-09-01 2012-08-08 キヤノン株式会社 画像符号化装置及び画像符号化方法
JP2010509799A (ja) * 2006-11-03 2010-03-25 サムスン エレクトロニクス カンパニー リミテッド 映像の予測符号化方法及び装置、その復号化方法及び装置
US8488676B2 (en) * 2007-05-14 2013-07-16 Himax Technologies Limited Motion estimation method
US8139875B2 (en) * 2007-06-28 2012-03-20 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
EP2621172A3 (en) * 2007-10-16 2013-12-04 LG Electronics, Inc. A method and an apparatus for processing a video signal
EP2266318B1 (en) * 2008-03-19 2020-04-22 Nokia Technologies Oy Combined motion vector and reference index prediction for video coding
US20090245374A1 (en) 2008-03-26 2009-10-01 Mediatek Inc. Video encoder and motion estimation method
CA2730383A1 (en) 2008-07-10 2010-01-14 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
JP5401071B2 (ja) * 2008-10-09 2014-01-29 株式会社Nttドコモ 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、動画像復号プログラム、動画像処理システムおよび動画像処理方法
US20100166073A1 (en) * 2008-12-31 2010-07-01 Advanced Micro Devices, Inc. Multiple-Candidate Motion Estimation With Advanced Spatial Filtering of Differential Motion Vectors
CN101448159B (zh) * 2009-01-08 2010-08-04 北京航空航天大学 一种基于率失真代价和模式频率的快速帧间模式选择方法
US9060176B2 (en) 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
US9549190B2 (en) 2009-10-01 2017-01-17 Sk Telecom Co., Ltd. Method and apparatus for encoding/decoding image using variable-size macroblocks
ES2829810T3 (es) * 2009-10-01 2021-06-02 Sk Telecom Co Ltd Procedimiento y aparato para codificación / decodificación de imagen utilizando macrobloques de tamaño variable
HUE033566T2 (hu) 2009-10-01 2017-12-28 Sk Telecom Co Ltd Berendezés kép dekódolására hasított réteg felhasználásával
US20120207221A1 (en) 2009-10-16 2012-08-16 Tomoko Aono Video coding device and video decoding device
CN101860754B (zh) * 2009-12-16 2013-11-13 香港应用科技研究院有限公司 运动矢量编码和解码的方法和装置
US9036692B2 (en) * 2010-01-18 2015-05-19 Mediatek Inc. Motion prediction method
CN106851304B (zh) * 2010-12-14 2019-08-30 M&K控股株式会社 用于解码运动画面的设备
US9049444B2 (en) * 2010-12-22 2015-06-02 Qualcomm Incorporated Mode dependent scanning of coefficients of a block of video data
US20130128983A1 (en) 2010-12-27 2013-05-23 Toshiyasu Sugio Image coding method and image decoding method
JP2012151576A (ja) 2011-01-18 2012-08-09 Hitachi Ltd 画像符号化方法、画像符号化装置、画像復号方法及び画像復号装置
US8755437B2 (en) 2011-03-17 2014-06-17 Mediatek Inc. Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate
EP2687014B1 (en) 2011-03-14 2021-03-10 HFI Innovation Inc. Method and apparatus for derivation of motion vector candidate and motion vector prediction candidate
SI4184918T1 (sl) * 2011-03-21 2024-05-31 Lg Electronics Inc. Postopek za dekodiranje videa, postopek za kodiranje videa, računalniško berljiv digitalni pomnilniški medij in postopek za prenos podatkov za video
US9143795B2 (en) * 2011-04-11 2015-09-22 Texas Instruments Incorporated Parallel motion estimation in video coding
EP3751854B1 (en) 2011-05-24 2023-05-10 Sun Patent Trust Image encoding method, image encoding apparatus, image decoding method, image decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
JP5252029B2 (ja) * 2011-05-31 2013-07-31 株式会社Jvcケンウッド 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法、及び受信プログラム
JP5477340B2 (ja) * 2011-05-31 2014-04-23 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
ES3007107T3 (en) 2011-05-31 2025-03-19 Jvckenwood Corp 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
ES2971526T3 (es) 2011-05-31 2024-06-05 Sun Patent Trust Procedimiento de descodificación de vídeo, dispositivo de descodificación de vídeo
CA3101406C (en) 2011-06-14 2023-05-09 Tammy Lee Method and apparatus for encoding motion information and method and apparatus for decoding same
US9282338B2 (en) 2011-06-20 2016-03-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
PL3876540T3 (pl) * 2011-06-27 2023-07-24 Samsung Electronics Co., Ltd. Sposób dekodowania i kodowania informacji o ruchu, urządzenie do kodowania informacji o ruchu i czytelny dla komputera nośnik
JP5488666B2 (ja) * 2011-09-28 2014-05-14 株式会社Jvcケンウッド 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法及び受信プログラム

Also Published As

Publication number Publication date
DK3606076T3 (da) 2021-01-18
ZA201502767B (en) 2020-02-26
HUE055772T2 (hu) 2021-12-28
PT3282707T (pt) 2018-11-21
US9204162B2 (en) 2015-12-01
US20150139327A1 (en) 2015-05-21
EP3739884B1 (en) 2021-08-04
TW201830969A (zh) 2018-08-16
JP6272948B2 (ja) 2018-01-31
KR101862357B1 (ko) 2018-05-29
JP2019146251A (ja) 2019-08-29
JP2016187192A (ja) 2016-10-27
CY1120897T1 (el) 2019-12-11
ZA201400623B (en) 2016-01-27
EP3282707B1 (en) 2018-11-07
CA2975456A1 (en) 2013-01-03
EP2725800A4 (en) 2015-02-18
EP3606076A1 (en) 2020-02-05
AU2017202355A1 (en) 2017-04-27
PH12014500012A1 (en) 2016-12-21
AU2016201944B2 (en) 2017-02-23
EP3876540A1 (en) 2021-09-08
ES2848869T3 (es) 2021-08-12
TWI738251B (zh) 2021-09-01
JP7071453B2 (ja) 2022-05-19
LT3282707T (lt) 2018-11-26
TW201725910A (zh) 2017-07-16
PH12016501427A1 (en) 2016-09-19
CA2840483A1 (en) 2013-01-03
KR20140085393A (ko) 2014-07-07
TWI803915B (zh) 2023-06-01
CA2975456C (en) 2019-10-22
EP3876540B1 (en) 2023-06-07
MX336525B (es) 2016-01-22
TW201309042A (zh) 2013-02-16
US20150156507A1 (en) 2015-06-04
SG10201605263SA (en) 2016-08-30
CN104811725A (zh) 2015-07-29
WO2013002557A3 (ko) 2013-03-14
PH12016501426B1 (en) 2016-09-19
PL3606076T3 (pl) 2021-07-26
KR101456500B1 (ko) 2014-11-03
EP3435675B1 (en) 2019-10-23
HUE052897T2 (hu) 2021-05-28
US20140133570A1 (en) 2014-05-15
US20160105681A1 (en) 2016-04-14
PH12016501429A1 (en) 2016-09-19
MY165858A (en) 2018-05-18
ZA201502765B (en) 2016-03-30
ZA201502768B (en) 2022-03-30
AU2018271275A1 (en) 2018-12-20
PL3739884T3 (pl) 2021-11-22
EP3876540C0 (en) 2023-06-07
RU2014102366A (ru) 2015-08-10
US9204160B2 (en) 2015-12-01
CN106851314A (zh) 2017-06-13
TW202025775A (zh) 2020-07-01
TW202141983A (zh) 2021-11-01
KR101608067B1 (ko) 2016-03-31
TWI587692B (zh) 2017-06-11
PH12016501429B1 (en) 2017-09-06
JP6523406B2 (ja) 2019-05-29
KR101700367B1 (ko) 2017-01-26
PL3282707T3 (pl) 2019-01-31
PL3435675T3 (pl) 2020-03-31
BR112013033706B1 (pt) 2022-05-31
CN107071470B (zh) 2020-02-07
DK3282707T3 (en) 2018-12-03
BR122021004610B1 (pt) 2022-12-27
CN107071470A (zh) 2017-08-18
CN106982373B (zh) 2018-06-15
KR101604461B1 (ko) 2016-03-17
ES2754657T3 (es) 2020-04-20
CN104811725B (zh) 2017-12-29
TWI628950B (zh) 2018-07-01
PH12016501426A1 (en) 2016-09-19
HUE063217T2 (hu) 2024-01-28
AU2012276455A1 (en) 2014-01-30
US9253501B2 (en) 2016-02-02
HRP20181873T1 (hr) 2019-01-11
EP3282707A1 (en) 2018-02-14
SI3282707T1 (sl) 2018-12-31
EP3739884A1 (en) 2020-11-18
RU2601180C2 (ru) 2016-10-27
ES2951321T3 (es) 2023-10-19
KR20130001708A (ko) 2013-01-04
KR20150099480A (ko) 2015-08-31
CN106851314B (zh) 2018-12-14
KR101607608B1 (ko) 2016-03-30
AU2018201305B2 (en) 2018-09-13
JP2014523184A (ja) 2014-09-08
RU2636672C1 (ru) 2017-11-27
JP6322136B2 (ja) 2018-05-09
AU2018201305A1 (en) 2018-03-15
EP2725800A2 (en) 2014-04-30
US9432680B2 (en) 2016-08-30
JP2018057018A (ja) 2018-04-05
KR20140139999A (ko) 2014-12-08
ZA201502766B (en) 2020-02-26
AU2018271275B2 (en) 2019-06-20
TWI692248B (zh) 2020-04-21
EP3435675A1 (en) 2019-01-30
RS57965B1 (sr) 2019-01-31
US20150156508A1 (en) 2015-06-04
CN103765896A (zh) 2014-04-30
WO2013002557A2 (ko) 2013-01-03
KR20140146564A (ko) 2014-12-26
CN106851313A (zh) 2017-06-13
AU2017202355B2 (en) 2017-11-23
CN103765896B (zh) 2017-05-03
JP2020191683A (ja) 2020-11-26
US9253500B2 (en) 2016-02-02
BR112013033706A2 (pt) 2017-07-04
RU2682303C1 (ru) 2019-03-18
ES2886357T3 (es) 2021-12-17
US9137543B2 (en) 2015-09-15
AU2012276455B2 (en) 2016-02-25
CN106851313B (zh) 2018-12-14
PH12016501428B1 (en) 2016-09-19
CA2840483C (en) 2017-09-26
EP3606076B1 (en) 2021-01-13
CN106982373A (zh) 2017-07-25
PL3876540T3 (pl) 2023-07-24
PH12016501428A1 (en) 2016-09-19
AU2018271275C1 (en) 2019-11-21
US20150156509A1 (en) 2015-06-04
RU2705435C1 (ru) 2019-11-07
JP6753979B2 (ja) 2020-09-09
ES2695556T3 (es) 2019-01-09
HUE042313T2 (hu) 2019-06-28
KR20170026409A (ko) 2017-03-08
AU2016201944A1 (en) 2016-04-21
PH12016501427B1 (en) 2017-09-06

Similar Documents

Publication Publication Date Title
RU2705435C1 (ru) Способ и устройство для кодирования информации движения, а также способ и устройство для ее декодирования
CN106791834B (zh) 对图像进行解码的方法和设备
AU2015200192B2 (en) Method and apparatus for encoding motion information and method and apparatus for decoding same
AU2015203680A1 (en) Method and apparatus for encoding motion information and method and apparatus for decoding same

Legal Events

Date Code Title Description
FG Grant or registration