[go: up one dir, main page]

MXPA02010964A - Metodo para codificar y decodificar informacion de video, codificador de video compensado por movimiento y decodificador correspondiente. - Google Patents

Metodo para codificar y decodificar informacion de video, codificador de video compensado por movimiento y decodificador correspondiente.

Info

Publication number
MXPA02010964A
MXPA02010964A MXPA02010964A MXPA02010964A MXPA02010964A MX PA02010964 A MXPA02010964 A MX PA02010964A MX PA02010964 A MXPA02010964 A MX PA02010964A MX PA02010964 A MXPA02010964 A MX PA02010964A MX PA02010964 A MXPA02010964 A MX PA02010964A
Authority
MX
Mexico
Prior art keywords
macroblock
prediction
segmentation
video information
block
Prior art date
Application number
MXPA02010964A
Other languages
English (en)
Inventor
Jani Lainema
Original Assignee
Nokia Corp
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24261115&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=MXPA02010964(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nokia Corp filed Critical Nokia Corp
Publication of MXPA02010964A publication Critical patent/MXPA02010964A/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/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/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
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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/567Motion estimation based on rate distortion criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

La invencion se refiere a un metodo para codificar informacion de video, donde una pieza de informacion de video actual se divide en macrobloques y se define un cierto numero de segmentaciones de macrobloque disponibles para segmentar un macrobloque en bloques. Ademas, para cada segmentacion de macrobloque al menos se define un metodo de prediccion disponible, cada uno de los metodos de prediccion produce coeficientes de movimiento de prediccion para bloques dentro del macrobloque, resultando en un cierto numero finito de pares de segmentacion de macrobloque-metodo de prediccion disponibles. Para un macrobloque, se selecciona uno de los pares de segmentacion de macrobloque-metodo de prediccion, y despues el macrobloque se segmenta en bloques y los coeficientes de movimiento de prediccion para los bloques dentro del macrobloque se producen usando el par de segmentacion de macrobloque-metodo de prediccion seleccionado. Tambien se presentan un metodo de decodificacion correspondiente, un codificador y un decodificador.

Description

MÉTODO PARA CODIFICAR Y DECODIFICAR INFORMACIÓN DE VIDEO, CODIFICADOR DE VIDEO COMPENSADO POR MOVIMIENTO Y DECODIFICADOR CORRESPONDIENTE La presente invención se refiere a la codificación de vídeo. En particular, se refiere a la compresión de información de vídeo usando predicción compensada por movimiento.
Antecedentes de la Invención Una secuencia de vídeo típicamente consiste de un gran número de cuadros de vídeo, los cuales se forman de un gran número de píxeles cada uno de los cuales se representa por un conjunto de bits digitales. Debido al gran número de píxeles en un cuadro de vídeo y al gran número de cuadros de vídeo aún en una secuencia de vídeo típica, la cantidad de datos requerida para representar la secuencia de vídeo rápidamente llega a ser mayor. Por ejemplo, un cuadro de vídeo puede incluir un arreglo de 640 por 480 píxeles, cada píxel tiene una representación de color RGB (rojo, verde, azul) de ocho bits por componente de color, totalizando 7,372,800 bits por cuadro. Otro ejemplo es un cuadro de vídeo QCIF (formato intermedio común de región) que incluye 176x144 píxeles. El REF. 143316 QCIF proporciona una imagen aceptablemente nítida en pantallas LCD pequeñas (unos cuantos centímetros cuadrados) , las cuales típicamente están disponibles en dispositivos de comunicación móviles. De nuevo, si el color de cada píxel se representa usando ocho bits por componente de color, el número total de bits por cuadro es 608,256. Alternativamente, un cuadro de vídeo se puede presentar usando un modelo de luminancia/crominancia relacionado, conocido como el modelo de color YUV. El sistema visual humano es más sensible a variaciones de intensidad (luminancia) que a variaciones de color (crominancia) . El modelo de color YUV aprovecha esta propiedad representando una imagen en términos de un componente de luminancia Y y dos componentes de crominancia U, V, y usando una resolución más baja para los componentes de crominancia que para el componente de luminancia. De esta forma, la cantidad de información necesitada para codificar la información de color en una imagen se puede reducir con una reducción aceptable en la calidad de imagen. La resolución más baja de los componentes de crominancia se alcanza usualmente por sub-muestreo espacial. Típicamente un bloque de 16x16 píxeles en la imagen se codifica por un bloque de 16x16 píxeles que representa la información de luminancia y por un bloque de 8x8 píxeles para cada componente de crominancia. Los componentes de crominancia son por consiguiente sub-muestreados por un factor de 2 en las direcciones x y y. El montaje resultante de un bloque de luminancia de 16x16 píxeles y dos bloques de crominancia de 8x8 píxeles en este punto es referido como un macrobloque YUV. Una imagen QCIF comprende macrobloques YUV de 11x9. Los bloques de luminancia y bloques de crominancia se representan con resolución de 8 bits, y ol número total de bits requerido por macrobloque YUV es (16x16x8 ) +2x (8x8x8 ) = 3072 bits. El número de bits necesitado para representar un cuadro de vídeo es, por consiguiente, 99x3072 = 304,128 bits. En unas secuencias de vídeo que comprenden una secuencia de cuadros en formato QCIF codificado por YUV grabada/visualizada a una velocidad de 15 - 30 cuadros por segundo, la cantidad de datos necesitada para transmitir la información acerca de cada píxel en cada cuadro separadamente podría ser, por consiguiente, más de 4 Mbps (millón de bits por segundo) . En videotelefonía convencional, donde la información de vídeo codificada se transmite usando redes telefónicas de línea fija, las velocidades de transmisión de bits son típicamente múltiples de 64 kilobits/s. en videotelefonía móvil, donde la transmisión toma lugar al menos en parte sobre un enlace de radio comunicaciones, las velocidades de transmisión de bits disponible pueden ser tan bajas como 20 kilobits/s. Por lo tanto, es claramente evidente que se requieren los métodos con los que la cantidad de información usada para representar una secuencia de vídeo se puede reducir. La codificación de vídeo aborda el problema de la reducción de la cantidad de información que necesita ser transmitida para representar una secuencia de vídeo con una calidad de imagen aceptable. En secuencias de vídeo típicas el cambio del contenido de imagen entre los cuadros sucesivos es a un grado mayor el resultado del movimiento en la escena. Este movimiento puede ser debido al movimiento de la cámara o debido al movimiento de los objetos presentes en la escena. Por lo tanto, las secuencias de vídeo típicas se caracterizan por la correlación temporal significativa, la cual es mayor a lo largo de la trayectoria del movimiento. La compresión eficiente de secuencias de vídeo usualmente toma ventaja de esta propiedad de secuencias de vídeo. La predicción compensada por movimiento es una técnica ampliamente reconocida para la compresión de vídeo. Esta utiliza el hecho de que en una secuencia de vídeo típica, los valores de crominancia/intensidad de imagen en un segmento de cuadro particular se pueden predecir usando valores de crominancia/intensidad de imagen de un segmento en algún otro cuadro ya codificado y transmitido, produciendo la trayectoria de movimiento entre estos dos segmentos. Ocasionalmente, es conveniente transmitir un cuadro que se codifica sin referencia a cualesquiera otros cuadros, prevenir el deterioro de la calidad de imagen debido a la acumulación de errores y proporcionar funcionalidad adicional tal como acceso aleatorio a la secuencia de. vídeo. Tal cuadro es llamado un cuadro INTRA. Un diagrama esquemático de un ejemplo de sistema de codificación de vídeo que usa predicción compensada por movimiento se muestra en las Figuras 1 y 2 de los dibujos acompañantes. La Figura 1 ilustra un codificador 10 que emplea compensación de movimiento y la Figura 2 ilustra un decodificador 20 correspondiente. El principio de operación de los codificadores de vídeo que usan compensación de movimiento es minimizar el cuadro de error de predicción En (x,y, ) , el cual es la diferencia entre el cuadro actual In (x,y) , que se codifica y un cuadro de predicción Pn (x,y) . El cuadro de error de predicción es, por consiguiente, En (x,y) = In (x,y) -Pn (x,y) . (I) El cuadro de predicción Pn (x,y) se construye usando valores de píxel de un cuadro de referencia Rn (x,y) , el cual es uno de los cuadros previamente codificado y transmitido (por ejemplo, un cuadro que predice el cuadro actual), y el movimiento de píxeles entre el cuadro actual y el cuadro de referencia. Más exactamente, el cuadro de predicción se construye encontrando los píxeles de predicción en el cuadro de referencia Rn (x,y) y moviendo los píxeles de predicción cuando se específica la información de movimiento. El movimiento de los píxeles se puede representar como los valores de los desplazamientos horizontal y vertical Ax (x,y) y Áy (x,y) de un píxel en la ubicación (x,y) en el cuadro actual In (x,y) . El par de números [Ax (x,y) , ?y (x,y) ] es llamado el vector de movimiento de este píxel. Los vectores de movimiento [Ax (x,y) , Ay (x,y) ) se calculan en él bloque 11 de Estimación del Campo de Movimiento en el codificador 10. El conjunto de vectores de movimiento de todos los píxeles del cuadro actual [Ax (-) , Ay (-) ] es llamado el campo de vector de movimiento. Debido al número muy grande de píxeles en un cuadro este no es eficiente para transmitir un vector de movimiento separado para cada píxel al decodificador. Más bien, en la mayoría de los esquemas de codificación de vídeo el cuadro actual se divide en segmentos de imagen S^ mayores y la información acerca de los segmentos se transmite al decodificador.
El campo de vector de movimiento se codifica en el bloque 12 de Codificación de Campo de Movimiento del codificador 10. - La Codificación de Campo de Movimiento se refiere al proceso de la representación del movimiento en un cuadro que usa algunas funciones predeterminadas o, en otras palabras, representarlo con un modelo. Casi todos los modelos de campo de vector de movimiento comúnmente usados son modelos de movimiento aditivos. Los esquemas de codificación de vídeo compensada por movimiento pueden definir los vectores de movimiento de segmentos de imagen por la siguiente fórmula general: N-l Ax (x,y) = ? a1f1 (x,y) (2) i=0 M-l donde los coeficientes ai y bx son llamados coeficientes de movimiento. Los mismos se transmiten al decodificador (corriente de información 2 en las Figuras 1 y 2) . Las funciones fx y gx son llamadas funciones de base de campo de movimiento, y las mismas son conocidas tanto para el codificador como el decodificador. Un campo de vector de movimiento aproximado (?x(x,y),Ay{x,y)) se puede construir usando los coeficientes y las funciones de base.
El cuadro de predicción Pn (x,y) se construye en el bloque 13 de Predicción Compensada por Movimiento en el codificador 10, y se da por P„ (x,y) = R„[x + Ax(x,y)?y + Ay{x,y)^ (4, donde el cuadro de referencia Rp (x,y) está disponible en la Memoria de Cuadro 17 del codificador 10 en un instante dado. En el bloque 14 de Codificación de Error de Predicción, el cuadro de error de predicción En (x,y) típicamente se comprime representándolo como una serie finita (transformada) de algunas funciones de 2 dimensiones. Por ejemplo, se puede usar una Transformada de Coseno Discontinuo de 2 dimensiones (DCT) . Los coeficientes de transformada relacionados a cada función se cuantifican y la entropía se codifica antes que los mismos se transmitan al decodificador (corriente de información 1 en las Figuras 1 y 2) . Debido al error introducido por la cuantificación, esta operación usualmente produce alguna degradación en el cuadro de error de predicción En (x,y) . Para cancelar esta degradación, un codificador compensado por movimiento comprende un bloque 15 de Decodificación de Error de Predicción, donde un cuadro de error de predicción decodificado En(?,y) se construye usando los coeficientes de transformada. Este cuadro de error de predicción decodificado se agrega al cuadro de predicción Pn (x,y) y el cuadro actual decodificado resultante I?(x, ) se almacena en la Memoria de Estructura 17 para el uso adicional como el cuadro de referencia siguiente Rn+1 (x,y) . La corriente de información 2 que porta la información acerca de los vectores de movimiento se combina con la información acerca del error de predicción en el multiplexor 16 y una corriente de información (3) que contiene típicamente al menos aquellos dos tipos de información se envía al decodificador 20. En la Memoria de Cuadro 24 del decodificador 20 existe un cuadro de referencia previamente reconstruido P-n (x,y) - El cuadro de predicción Pn (x,y) se construye en el bloque 21 de Predicción Compensada por Movimiento en el decodificador 20 de igual manera como en el bloque 13 de Predicción Compensada por Movimiento en el codificador 10. Los coeficientes de transformada transmitidos del cuadro de error de predicción En (x,y) se usan en el bloque 22 de Decodificación de Error de Predicción para construir el cuadro de error de predicción decodificado E* > . Los píxeles del cuadro actual decodificado I„(x,y) se reconstruyen agregando el cuadro de predicción Pn (x,y) y el cuadro de error de predicción decodificado Ea(?,y) (*.J = P.{?, )+E *t = [x+ x(x,y),y+Ay{x,y)]+e„(x,y). (5) Este cuadro actual decodificado se puede almacenar en la Memoria -de Cuadro 24 como el siguiente cuadro de referencia Rn+1 (x,y) . Después se permite discutir con más detalle la transmisión y compensación de movimiento de la información de movimiento. Para minimizar la cantidad de información necesitada en el envío de los coeficientes de movimiento al decodificador, los coeficientes se pueden predecir de los coeficientes de los segmentos cercanos. Cuando .se usa este tipo de predicción de campo de movimiento, el campo de movimiento se expresa como una suma de un campo de movimiento de predicción y un campo de movimiento de afinamiento. El campo de movimiento de predicción se construye usando los vectores de movimiento asociados con los segmentos cercanos del cuadro actual. La predicción se realiza usando el mismo conjunto de reglas y posiblemente alguna información auxiliar tanto en el codificador como en el decodificador. El campo de movimiento de afinamiento se codifica, y los coeficientes de movimiento relacionados a este campo de movimiento de afinamiento se transmiten al decodificador. Esta propuesta típicamente resulta en el ahorro de velocidad de transmisión de bits. Las líneas de trazo en la Figura 1 ilustran algunos ejemplos de esquemas de codificación y estimación de movimiento de alguna información posibJe que se pueden requerir en el bloque 11 de Estimación de Campo de Movimiento y en el bloque 12 de Codificación de Campo de Movimiento. Los modelos de movimiento polinomial son una familia de modelos de movimiento ampliamente usada. (Véase, por ejemplo H. Nguyen and E. Dubois, "Representation of motion information for image coding," in Proc. Picture Coding Symposium ' 90, Cambridge, Massachusetts, Marzo 26-18, 1990, pp. 841-845 y Centre de Morphologie Mathematique (CMM) , "Segmentation algorithm by multicriteria región merging," Document SIM(95)19, COST 211ter Project Meeting, Mayo 1995). Los valores de vectores de movimiento se describen por funciones las cuales son combinaciones lineales de dos funciones polinomiales dimensionales. El modelo de movimiento traslacional es el modelo más simple y solamente requiere dos coeficientes para describir los vectores de movimiento de cada segmento. Los valores de vectores de movimiento se dan por las fórmulas: ?x (x ,y) = aQ Ay (x,y) = b0 (6) Este modelo se usa ampliamente en varias normas internacionales (ISO MPEG-1, MPEG-2, MPEG-4, ITU-T Recomendaciones H.261 y H.263) para describir el movimiento de bloques de 16x16 y 8x8 píxeles. Los sistemas que utilizan un modelo de movimiento traslacional típicamente realizan la estimación de movimiento a la resolución de píxel completa o alguna fracción integra de "resolución de píxel completa, por ejemplo con una exactitud de resolución de 1/2 ó 1/3 de píxel. Otros dos modelos ampliamente usados son el modelo de movimiento afín dado por la ecuación: Ax (x,y) = a0 + axx + a2y Ay (x,y) = bD + bxx + b2y (7) y el modelo de movimiento cuadrático dado por la ecuación: Ax (x,y) = a0 + a2x + a2y + a3xy + a4x2 + a^y2 Ay (x,y) = b0 + b2x + b2y + b3xy + b4x2 + b^y2 (8) El modelo de movimiento afín presenta una relación muy conveniente entre 1 número de coeficientes de movimiento y el rendimiento de predicción. Es capaz de representar alguno de los tipos de movimiento de animación real comunes tales como traslación, rotación, acercamiento rápido y movimiento lateral con solamente unos pocos coeficientes. El modelo de movimiento cuadrático proporciona buen rendimiento de predicción, pero es menos popular en la codificación que el modelo afín, puesto que usa más coeficientes de movimiento, mientras que el rendimiento de predicción no es sustancialmente mejor que, por ejemplo, aquel del modelo de movimiento afín. Además, es más costoso de manera computacional estimar el movimiento cuadrático que estimar el movimiento afín. El bloque 11 de Estimación de Campo de Movimiento calcula los coeficientes de movimiento iniciales a0? , . . . , an , bo1 , . . . , bnz para [Ax (x,y) , Ay (x,y) ] de un segmento dado Sk, los coeficientes de movimiento iniciales minimizan alguna medición de predicción de error en el segmento. En el caso más simple, la estimación de campo de movimiento usa el cuadro actual In (x,y) y el cuadro de referencia Rn (x,y) como valores de entrada. Típicamente el bloque de Estimación de Campo de Movimiento extrae los coeficientes de movimiento iniciales [?x (x,y) , Ay (x,y) ] para [?x (x,y) , Ay (x,y) ] al bloque 12 de Codificación de Campo de Movimiento. La segmentación del cuadro actual en segmentos Sk puede, por ejemplo, realizarse de tal forma que cada segmento corresponde a un cierto objeto que se mueve en la secuencia de vídeo, pero este tipo de segmentación es un procedimiento muy complejo. Una forma típica y de manera computacional menos compleja para segmentar un cuadro de vídeo es dividirlo en macrobloques y dividir adicionalmente los macrobloques en bloques rectangulares. En este término de descripción, macrobloque se refiere generalmente a una parte de un cuadro de vídeo. Un ejemplo de un macrobloque es el macrobloque YUV previamente descrito. La Figura 3 presenta un ejemplo, donde un cuadro de video 30 se divide en macrobloques 31 que tienen un cierto número de píxeles. Dependiendo del método de codificación, pueden existir muchas segmentaciones de macrobloques posibles. La Figura 3 presenta un caso, donde existen cuatro formas posibles para, segmentar un macrobloque: el macrobloque 31A se segmenta en bloques 32, el macrobloque 31B se segmenta con una línea de división vertical en bloques 33, y el macrobloque 31C se segmenta con una línea de división horizontal en bloques 34. La cuarta segmentación posible es tratar un macrobloque como un bloque sencillo. Las segmentaciones de macrobloque presentadas en la Figura 3 se dan como ejemplos; las mismas no proponen un listado exhaustivo de segmentaciones de macrobloque factibles o posibles . El bloque 12 de Codificación de Campo de Movimiento hace las decisiones finales sobre que tipo de campo de vector de movimiento se transmite al decodificador y cómo el campo de vector de movimiento se codifica. Puede modificar la segmentación del cuadro actual, el modelo de movimiento y los coeficientes de movimiento para minimizar la cantidad de información necesitada para describir un campo de vector de movimiento satisfactorio. La decisión sobre la segmentación típicamente se realiza estimando un costo de cada segmentación de macrobloque alternativa y eligiendo uno que produzca el costo más pequeño. Como una medición de costo, comúnmente el más usado es una función de costo de Lagrange. L (Sk) = D (Sk) + ?R (sk) , la cual enlaza una medición del error de reconstrucción D (Sk) con una medición de bits necesitada para la transmisión R (Sk) usando un multiplicador ? de Lagrange. El costo de Lagrange representa una relación entre la calidad de información de vídeo transmitida y la anchura de banda necesitada en la transmisión. En general, una mejor calidad de imagen, es decir, D (Sk) pequeña, requiere una gran cantidad de información transmitida, es decir R (S ) grande. En los sistemas actuales, los cuales utilizan un modelo de movimiento traslacional, los coeficientes de movimiento de predicción típicamente se forman calculando la mediana circundante, coeficientes de movimiento ya trasmitidos. Este método claramente logra buen rendimiento en términos de uso eficiente de anchura de banda de transmisión y calidad de imagen. La ventaja principal de este método es que la predicción de los coeficientes de movimiento es directa.
Más exactamente, los coeficientes de movimiento de predicción corresponden a los coeficientes de movimiento del segmento que se predice, los pocos bits se necesitan para transmitir la información acerca del campo de movimiento de afinamiento. Es posible seleccionar, por ejemplo entre los bloques cercanos, el bloque cuyos coeficientes de movimiento están próximos a los coeficientes de movimiento del bloque que se predice. El segmento seleccionado para la predicción se envía por señales al decodificador. La desventaja principal de este método es que encontrar el mejor candidato de predicción entre los segmentos de imagen ya transmitidos es una tarea compleja: el codificador tiene que realizar cálculos exhaustivos para evaluar todos los candidatos de predicción posibles y luego seleccionar el mejor bloque de predicción. Este procedimiento tiene que realizarse separadamente para cada bloque. Existen sistemas donde la capacidad de transmisión para la corriente de vídeo comprimida es muy limitada y donde la codificación de información de vídeo no deberá ser demasiado complicada. Por ejemplo, las terminales móviles inalámbricas tienen espacio limitado para componentes adicionales y como las mismas operan con baterías, típicamente no pueden proporcionar capacidad de cómputo comparable con aquella de las computadoras de escritorio. En redes de acceso de radio de sistemas celulares, la capacidad de transmisión disponible para una corriente de vídeo puede ser tan baja como 20 kbps. Posteriormente, existe la necesidad de un método de codificación de vídeo, el cual es de forma computacional simple, proporciona buena calidad de imagen y logra buen rendimiento en términos de anchura de banda de transmisión requerida. Además, para mantener el método de codificación de forma computacional simple, el método de codificación deberá proporcionar resultados satisfactorios usando modelos de movimiento simples.
BREVE DESCRIPCIÓN DE LA INVENCIÓN Un objeto de la presente invención es proporcionar un método que proporciona una predicción de coeficiente de movimiento versátil y flexible para la codificación/decodificación de información de vídeo usando compensación de movimiento. Un objeto adicional de la invención es proporcionar un. método compensado por movimiento para codificar/decodificar información de vídeo que proporciona buen rendimiento en términos de anchura de banda de transmisión y calidad de imagen mientras que es de forma computacional claramente simple. Un objeto adicional es presentar un método para codificar/decodificar información de vídeo que proporciona resultados satisfactorios cuando se usa un modelo de movimiento comparativamente simple, tal como el modelo de movimiento traslacional. Estos y otros objetos de la invención se logran asociando el método de predicción de coeficiente de movimiento usado para un cierto macrobloque con la segmentación del macrobloque . Un método para codificar información de vídeo de acuerdo con la invención, comprende el paso de: -dividir una pieza de información de vídeo actual en macrobloques, y se caracteriza porque comprende adicionalmente los pasos de: -definir un cierto número de segmentaciones de macrobloque disponibles para la segmentación de un macrobloque en bloques, -definir cada segmentación de macrobloque disponible en al menos un método de predicción disponible, cada uno de los métodos de predicción produce coeficientes de movimiento de predicción para bloques dentro del macrobloque, resultando en un cierto número finito de pares de segmentación de macrobloque-método de predicción disponibles, -seleccionar un macrobloque de uno de los pares de segmentación de macrobloque-método de predicción disponibles, y -segmentar el macrobloque en bloques y producir coeficientes de movimiento de predicción para los bloques dentro del macrobloque usando el par de segmentación de macrobloque-método de predicción seleccionado. En un método de acuerdo con la invención, una pieza de información de vídeo actual, típicamente un cuadro actual, se divide - o, en otras palabras, se segmenta - en macrobloques. Estos macrobloques pueden tener cualquier forma predeterminada, pero típicamente son cuadriláteros. Además, se define un cierto número de segmentaciones posibles de los macrobloques en los bloques, y estas son llamadas las segmentaciones de macrobloque disponibles. En esta descripción la segmentación de un macrobloque en bloques se llama segmentación de macrobloque. Los bloques también son típicamente cuadriláteros. El movimiento de un bloque dentro de una pieza de información de vídeo actual típicamente se estima usando una pieza de información de vídeo de referencia (típicamente un cuadro de referencia) , y el movimiento del bloque usualmente se modela usando un conjunto de funciones de base y coeficientes de movimiento. El modelo de movimiento usado en un método de acuerdo con la invención es ventajosamente un modelo de movimiento traslacional, pero no existen restricciones en el uso de cualquier otro modelo de movimiento. En un método de acuerdo con la invención, al menos algunos coeficientes de movimiento representados como sumas de coeficientes de movimiento de predicción y coeficientes de movimiento de diferencia y un cierto método de predicción se usan para determinar los coeficientes de movimiento de predicción. Típicamente, una pieza de información de vídeo actual, por ejemplo un cuadro actual, se codifica segmentando un cuadro en macrobloques y luego procesando los macrobloques en un cierto orden de exploración, por ejemplo uno por uno de izquierda a derecha y de arriba hacia abajo en todo el cuadro. En otras palabras, en este ejemplo el proceso de codificación se realiza en filas, procesando de arriba hacia abajo. La forma en la cual los macrobloques se exploran no se restringe por la invención. Un macrobloque se puede segmentar, y el campo de movimiento de bloques dentro de un macrobloque se estima. Los coeficientes de movimiento de predicción para un cierto bloque se producen usando los coeficientes de movimiento de alguno de los bloques en los macrobloques cercanos ya procesados o los coeficientes de movimiento del alguno de los bloques ya procesados dentro del mismo macrobloque. La segmentación de los macrobloques ya procesados y los coeficientes de movimiento de los bloques relacionados a estos macrobloques son ya conocidos. Un aspecto distintivo en métodos de codificación y decodificación de acuerdo con la invención es que para cada segmentación de macrobloque existe un número finito de métodos de predicción. Ciertos pares permisibles, predeterminados de segmentaciones de macrobloque y métodos de predicción son así formados. En este punto el término método de predicción se refiere a dos puntos: primero, define los bloques que se usan en la producción de coeficientes de movimiento de predicción para un cierto bloque dentro de un macrobloque actual y, segundo, define cómo los coeficientes de movimiento relacionados a estos bloques de predicción se usan en la producción de coeficientes de movimiento de predicción para el bloque. Por consiguiente, un par de segmentación de macrobloque-método de predicción indica sin ambigüedad la segmentación de un macrobloque y cómo los coeficientes de movimiento de predicción para los bloques dentro del macrobloque se producen. El método de predicción puede especificar, por ejemplo, que los coeficientes de movimiento de predicción para un bloque se derivan de un promedio calculado usando coeficientes de movimiento de ciertos bloques de predicción específicos, o que los coeficientes de movimiento de predicción para un bloque se derivan del coeficiente de movimiento de un bloque de predicción particular. La palabra promedio en este punto, se refiere a una característica que describe un cierto conjunto de números; puede ser, por ejemplo, un promedio aritmético, un promedio geométrico, un promedio de peso, una mediana o un modo. Además, es posible que los coeficientes de predicción de un bloque se obtengan proyectando los coeficientes de movimiento o coeficientes de movimiento promedio de un bloque a otro. Restringiendo del número de métodos de predicción posibles por segmentación de macrobloque, la complejidad del proceso de codificación se reduce comparada, por ejemplo, con un proceso de codificación donde el mejor candidato de coeficiente de movimiento de predicción se determina libremente usando cualquiera de los bloques cercanos o combinaciones de los mismos. En tal caso, existe un gran número de candidatos de coeficiente de movimiento de predicción. Cuando los bloques de predicción se definen de antemano para cada método de predicción y existe un número limitado de métodos de predicción por segmentación de macrobloque, es posible estimar el costo de cada par de segmentación de macrobloque-método de predicción. Luego se puede seleccionar el par que minimiza el costo. Ventajosamente, existe solamente un método de predicción disponible por segmentación de macrobloque. Esto reduce la complejidad del método de codificación aún adicionalmente. Además, en esta situación es posible concluir el método de predicción de un bloque directamente desde la segmentación de macrobloque seleccionada. Por consiguiente, no existe necesariamente la necesidad de transmitir información acerca del método de predicción a la unidad de decodificación. Por consiguiente, en este caso la cantidad de información transmitida no se incrementa agregando aspectos adaptables, es decir, varios métodos de predicción usados dentro de un cuadro, a la información codificada. Seleccionando los bloques de predicción disponibles y definiendo los métodos de predicción específicos de macrobloque-segmentación adecuadamente, es posible implementar un método de codificación de vídeo de alto rendimiento usando más de tres bloques de predicción predeterminados para producir coeficientes de movimiento de predicción y permitiendo solamente un método de predicción por segmentación de macrobloque. Para cada macrobloque, el par segmentación de macrobloque-método de predicción que minimiza una función de costo se selecciona. La codificación adaptable simple de información de movimiento proporcionada por la invención es eficiente en términos de computación y en términos de la cantidad de información transmitida y además produce buena calidad de imagen. Un macrobloque, el cual se procesa en un método de acuerdo con la invención, puede ser, por ejemplo, el componente de luminancia de un macrobloque YUV. Un método de acuerdo con la invención también se puede aplicar, por ejemplo, al componente de luminancia y a uno o ambos componentes de crominancia de un macrobloque YUV. El método se puede aplicar alternativamente a otros modelos de color o imágenes de solo luminancia (monocromáticas) . El uso de la invención no se restringe a cualquiera de los modelos de color particulares . Un método para descodificar información de vídeo codificada de acuerdo con la invención se caracteriza porque comprende los pasos de: -especificar la información acerca de los pares de segmentación de macrobloque-método de predicción disponibles para producir los coeficientes de movimiento de predicción para bloques dentro de un macrobloque, -recibir información que indica un par de segmentación de macrobloque-método de predicción seleccionado de un macrobloque, y -determinar un método de predicción que se relaciona a una segmentación de macrobloque del macrobloque y produce coeficientes de movimiento de predicción para bloques dentro del macrobloque usando el método de predicción indicado. La invención se refiere también a un codificador para realizar la codificación compensada por movimiento de información de vídeo, el cual comprende -medios para recibir una pieza de información de vídeo actual, -medios para dividir una pieza de información de vídeo actual en macrobloques, y -medios para especificar segmentaciones de macrobloque disponibles para segmentar un macrobloque en bloques, y el cual se caracteriza porque comprende adicionalmente -medios para especificar al menos un método de predicción disponible para cada segmentación de macrobloque, resultando en un cierto número finito de pares de segmentación de macrobloque-método de predicción disponibles, -medios para seleccionar un par de segmentación de macrobloque-método de predicción entre los pares de segmentación de macrobloque-método de predicción disponibles, -medios para segmentar un macrobloque usando la segmentación de macrobloque seleccionada, y -medios para producir coeficientes de movimiento de predicción específicos de macrobloque-segmentación para bloques dentro del macrobloque usando el método de predicción seleccionado. Un decodificador para realizar la decodificación de la información de vídeo codificada de acuerdo con la invención comprende, medios de entrada para recibir la información de vídeo codificada, y se caracteriza porque comprende adicionalmente -medios para determinar el par de segmentación de macrobloque-método de predicción del macrobloque basados en la información de vídeo codificada recibida, el cual comprende información que indica un par de segmentación de macrobloque-método de predicción relacionado a un macrobloque y la información acerca de coeficientes de movimiento de diferencia de bloques dentro del macrobloque, y -medios para producir coeficientes de movimiento de predicción para bloques dentro del macrobloque usando un método de predicción indicado por el par de segmentación de macrobloque-método de predicción. La invención también se refiere a un dispositivo de almacenamiento y un elemento de red que comprende un codificador de acuerdo con la invención y a una estación móvil que comprende un codificador y/o un decodificador de acuerdo con la invención. Los nuevos aspectos los cuales se consideran como características de la invención se describen en particular en las reivindicaciones anexas. La invención misma, sin embargo, tanto como para su construcción como su método de operación, conjuntamente con las ventajas y objetos adicionales de la misma, se entenderá mejor de la siguiente descripción de las modalidades específicas cuando se leen en conexión con los dibujos acompañantes.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 ilustra un codificador para la codificación de vídeo compensada por movimiento de acuerdo con la técnica previa, La Figura 2 ilustra un decodificador para la decodificación de vídeo compensada por movimiento de acuerdo con la técnica previa, La Figura 3 ilustra una segmentación de un cuadro de vídeo en macrobloques y bloques de acuerdo con la técnica previa, La Figura 4 ilustra un diagrama de flujo de un método de codificación de vídeo compensada por movimiento de acuerdo con la invención, La Figura 5 ilustra un diagrama de flujo de un método de decodificación de vídeo compensada por movimiento de acuerdo con la invención, La Figura 6 ilustra varios métodos de predicción que involucran bloques de predicción diferentes y que se pueden usar para proporcionar coeficientes de movimiento de predicción para un bloque C actual en un método de conformidad con la invención, La Figura 7 ilustra una pluralidad de pares de segmentación de macrobloque-método de predicción que se pueden usar en un método de acuerdo con una primera modalidad preferida de la invención, La Figura 8 ilustra una pluralidad de pares de segmentación de macrsbloque-método de predicción que se pueden usar en un método de acuerdo con una segunda modalidad preferida de la invención, La Figura 9 ilustra un bloque de estimación de campo de movimiento y un bloque de codificación de campo de movimiento de conformidad con la invención, La Figura 10 ilustra un bloque de predicción compensado por movimiento de acuerdo con la invención, La Figura 11 ilustra una estación móvil de conformidad con la invención, y La Figura 12 ilustra esquemáticamente una red de telecomunicación móvil que comprende un elemento de red de conformidad con la invención.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN Las Figuras 1-3 se describen con detalle en la descripción de codificación y decodificación de vídeo compensado por movimiento, de conformidad con la técnica previa . La Figura 4 presenta un diagrama de flujo de un método para codificar la información de vídeo de conformidad con la invención. Sólo las características relacionadas a la codificación de movimiento están presentes en la Figura 4. No se presenta, por ejemplo, la formación o codificación del cuadro de error de predicción. Típicamente se incluyen estas características en métodos de codificación de conformidad con la invención y, por supuesto, se pueden implementar en cualquier forma apropiada. En el paso 401 se definen las segmentaciones de macrobloque disponibles. Las segmentaciones de macrobloque disponibles pueden comprender, por ejemplo, tales segmentaciones de macrobloque como se presentan en la Figura 3. En el paso 402 se define al menos un método de predicción para predecir los coeficientes de movimiento, para cada segmentación de macrobloque disponible, que resulta en un cierto número de pares de segmentación de macrobloque-método de predicción disponibles. Típicamente, para ciertas segmentaciones de macrobloque se usa un método de predicción promedio y para otras segmentaciones de macrobloque se derivan los coeficientes de movimiento de predicción a partir de los coeficientes de movimiento de un bloque ya procesado, único, el cual se localiza ya sea en el macrobloque actual o en algunos de los macrobloques cercanos. Los métodos de predicción ventajosos relacionados con cada segmentación de macrobloque se pueden encontrar, por ejemplo, probando varios métodos de predicción de antemano. El modelo de movimiento usado para representar el campo de movimiento puede afectar la selección de los métodos de predicción. Además, es posible que un modelo de movimiento adecuado se seleccione durante la codificación. Típicamente los pasos 401 y 402 se realizan fuera de línea, antes de que se codifiquen las corrientes de vídeo. Usualmente los mismos se realizan ya cuando, por ejemplo, un codificador se designa y se implementa. Los pasos 403-413 se realizan para cada cuadro de una corriente de vídeo. En el paso 403 un cuadro de vídeo actual se segmenta en macrobloques, y en el paso 404 se inicia la codificación de un macrobloque actual, el cual es el macrobloque actual que sufre la codificación compensada de movimiento. En el paso 405 el macrobloque actual se segmenta en bloques usando una de las segmentaciones de macrobloque disponibles. En este punto, necesariamente no existe idea de cual es la segmentación de macrobloque más apropiada para el macrobloque actual, así una forma para seleccionar la mejor segmentación de macrobloque es investigarla toda y luego seleccionar la más apropiada de acuerdo con algún criterio. En el paso 406 se estiman los campos del vector de movimiento de los bloques dentro del macrobloque actual y se codifican los campos de movimiento, por ejemplo, en la forma descrita anticipadamente en esta solicitud. Esto resulta en los coeficientes de movimiento iniciales a_ y b? para cada uno de los bloques. En el paso 407 se producen coeficientes de movimiento de predicción alp y b?p por al menos uno de los bloques dentro del macrobloque actual. Si sólo existe un método de predicción por segmentación de macrobloque, existe una tarea sencilla. Se selecciona otra forma de los métodos de predicción disponibles para la segmentación de macrobloque actual y se derivan coeficientes de movimiento de predicción de acuerdo con este método de predicción. En el paso 408, se representan los coeficientes de movimiento inicial de los bloques dentro del macrobloque actual como sumas de los coeficientes de movimiento de predicción y coeficientes de movimiento de diferencia ald y bld- , Una forma simple para buscar el mejor par de segmentación de macrobloque-método de predicción, se presenta en los pasos 409 - 411. En el paso 408 se calcula el costo Sy) relacionado al par de segmentación de macrobloque-método de predicción actual. Este costo representa la relación entre el error de reconstrucción de la imagen decodificada y el número de bits necesarios para transmitir la imagen codificada, y enlaza una medición del error de reconstrucción D (Sk) con una medición de bits necesarios para la transmisión R (Sk) usando un múltiple de Lagrange ?. Típicamente la medición de bits necesarios para la transmisión R (S ) se refiere a los bits requeridos para representar al menos los coeficientes de movimiento de diferencia y los bits requeridos para representar el error de predicción asociado. También puede involucrar alguna información de señalización. Se verifica cada par de segmentación de macrobloque-método dé predicción, cuando el circuito de los pasos 405-409 se repite hasta que se evalúan los coeficientes de movimiento de predicción y funciones del costo que corresponden a todos los pares de segmentación de macrobloque-método de predicción disponibles (paso 410) . En el paso 411 se selecciona el par de segmentación de macrobloque-método de predicción que rinde el menor costo. En el paso 412 se transmiten la información que indica el par segmentación de macrobloque-método de predicción seleccionado para el macrobloque actual y los coeficientes de movimiento de diferencia ald y bld de al menos uno de los bloques dentro del macrobloque actual, a un receptor o se almacena en un medio de almacenamiento. La información que indica el par de segmentación de macrobloque-método de predicción seleccionado puede indicar explícitamente, por ejemplo, tanto la segmentación de macrobloque como el método de predicción. Si sólo existe un posible método de predicción por segmentación de macrobloque, puede ser suficiente transmitir la información que indica sólo la segmentación de macrobloque del bloque actual. En el paso 413 él mismo se verifica, si son procesados todos los macrobloques dentro del cuadro actual. Si los mismos no existen, entonces en el paso 404 se inicia el proceso de macrobloque siguiente. En un método de conformidad con la invención, es posible que para algunos macrobloques o para algunos bloques dentro de un cuadro se transmitan los coeficientes de movimiento como tal. Esto puede suceder, por ejemplo, si ninguno de los pares de segmentación de macrobloque-método de predicción produce una reducción en la cantidad de información a ser transmitida comparado con la cantidad de información requerida para representar los coeficientes de movimiento iniciales a_ y b¿ y la información de error de predicción asociada. También es posible que para algunos bloques o macrobloques se usen métodos de predicción, en donde no se definan pares de segmentación de macrobloque-método de predicción. La Figura 5 presenta un diagrama de flujo de un método para decodificar una corriente de vídeo codificada de acuerdo con la invención. En el paso 501 se especifica la información acerca de las segmentaciones de macrobloque disponibles, por ejemplo, recuperando la información desde un elemento de memoria donde se ha almacenado previamente. El método de decodificación necesita conocer que clase de segmentaciones de macrobloque puede comprender una corriente de vídeo codificada, recibida. En el paso 502 se especifica la información acerca de los pares de segmentación de macrobloque-método de predicción disponible. Típicamente los pasos 501 y 502 se realizan fuera de línea, antes de recibir una corriente de vídeo codificada. Los mismos se pueden realizar, por ejemplo, durante el diseño de implementación del decodificador . Los pasos 503-507 se realizan durante la decodificación .de un cuadro de vídeo. En el paso 503, se recibe la información que indica la segmentación de un macrobloque actual y el método de predicción. Si existe solamente un método de predicción disponible por segmentación de macrobloque, la información que indica el método de predicción no se necesita, 'como se explicó previamente. En el paso 504, se recibe la información que indica los coeficientes de movimiento de diferencia ald y bld para al menos uno de los bloques dentro del macrobloque actual. En el paso 505, la unidad de decodificación determina, usando la información recibida en el paso 503, el método de predicción usando el coeficiente de movimiento de predicción para bloques dentro del macrobloque actual que se producirán. El método de predicción indica los bloques de predicción relacionados a un cierto bloque y cómo los coeficientes de predicción para el bloque actual se producen usando los coeficientes de movimiento de los bloques de predicción. No existe necesidad de transmitir información acerca de los valores de los coeficientes de movimiento de predicción relacionados al bloque actual dentro del macrobloque actúa.1 , debido a que los mismos se pueden determinar en el decodificador basado en la información recibida que concierne a la segmentación seleccionada y método de predicción para el macrobloque actual. En el _paso 506, se producen los coeficientes de movimiento de predicción aip y b?p, y en el paso 507 se producen los coeficientes de movimiento aa y £>._ usando los coeficientes de movimiento de diferencia y los coeficientes de movimiento de predicción. La Figura 6 presenta esquemáticamente cuatro métodos de predicción diferentes 60A, 60B, 60C y 60D para proporcionar coeficientes de movimiento de predicción para un bloque actual C. Estos cuatro métodos de predicción se dan como ejemplos de métodos de predicción que se pueden usar en un método de acuerdo con la invención, y los bloques de predicción (es decir, aquellos bloques que se usan de los coeficientes de movimiento de predicción para el bloque actual) se definen de acuerdo con su relación espacial con el bloque actual C. En estos métodos de predicción, los bloques de predicción se dictan por ciertas ubicaciones de píxeles. Estas ubicaciones de píxeles son solo una forma de especificar los bloques de predicción para un bloque actual, y las mismas se describen en este punto para ayudar al entendimiento de cómo los bloques de predicción se seleccionan en ciertos métodos de predicción. En los métodos los cuales se presentan en la Figura 6, las ubicaciones de píxeles son las mismas para todos los métodos. El bloque de predicción L se define como el bloque el cual comprende la ubicación de píxel 61. La ubicación de píxel" 61 es el píxel más alto adyacente al bloque C desde el lado izquierdo. De igual manera, el bloque de predicción U se define como el bloque que comprende la ubicación de píxel 62, el cual es el píxel más izquierdo superyacente al bloque C. Además, el bloque de predicción UR se define como el bloque que comprende la ubicación de píxel 63, el cual es el píxel de esquina a esquina con el píxel de esquina derecha superior del bloque C. En el primer método de predicción 60A, se usan tres bloques de predicción L, ~ U y UR. Los coeficientes de movimiento de predicción alp, blp producidos para el bloque C se pueden derivar de un promedio de los coeficientes de movimiento de los bloques de predicción L, U y UR. El promedio puede ser, por ejemplo, la mediana de los valores de coeficiente de movimiento del bloque L, U y UR. En el segundo método de predicción 60B, los coeficientes de movimiento de predicción se derivan de los coeficientes de movimiento del bloque de predicción L. De igual manera, en el tercer método de predicción los coeficientes de movimiento de predicción se derivan de los coeficientes de movimiento del bloque de predicción U y en el cuarto método de predicción los mismos se derivan de los coeficientes de movimiento del bloque de predicción UR.. También se usa en las Figuras 7 y 8 el concepto de presentar solamente una ubicación de píxel que se relaciona a un cierto bloque, cuando solamente un bloque de predicción se usa en la producción de los coeficientes de movimiento de predicción para el bloque, y presentar más de una de las ubicaciones de píxel que se refieren a un bloque, cuando más de uno de los bloques de predicción se usan en la producción de coeficientes de movimiento de predicción para el bloque. La segmentación de los macrobloques cercanos presentados en la Figura 6 para el método de predicción 60A es solo un ejemplo. Cuando los bloques de predicción se definen por las ubicaciones de píxel como se presentan en la Figura 6, los bloques de predicción se pueden determinar sin ambigüedad, no obstante la segmentación de macrobloque Je los macrobloques cercanos o del macrobloque actual. Las tres ubicaciones de píxel en la Figura 6 son un ejemplo, el número de píxeles puede ser diferente y los mismos se pueden ubicar en otros lugares. Típicamente, las ubicaciones de píxel que especifican los bloques de predicción se asocian con un bloque actual C y los mismos están en el borde del bloque actual C. En un método de acuerdo con una primera modalidad preferida de la invención, existe un cierto número de segmentaciones de macrobloque disponibles y al menos un método de predicción se refiere a cada segmentación de macrobloque. La Figura 7 ilustra esquemáticamente tres segmentaciones de macrobloque 70, 71 y 72, las cuales son un ejemplo de las segmentaciones de macrobloque disponibles en una primera modalidad de la invención. En la segmentación de macrobloque 70, el macrobloque rectangular actualmente no se segmenta, pero se trata como un bloque sencillo. -En la segmentación de macrobloque 71, el macrobloque se divide con una línea vertical en dos bloques rectangulares. De igual manera, en la segmentación de macrobloque 72 el macrobloque se divide con una línea horizontal en dos bloques rectangulares. El tamaño del macrobloque puede ser 16x16 píxeles y, por ejemplo, se puede usar un modelo de movimiento traslacional. La figura 7 ilustra además algunos ejemplos de alternativas de métodos de predicción relacionados a las segmentaciones de macrobloques en un método de acuerdo a la primera modalidad preferida. Como en la figura 6, los bloques de predicción para bloques dentro de un macrobloque actual se especifican usando ciertas ubicaciones de píxeles las cuales sostienen una relación espacial hacia los bloques dentro del macrobloque actual. Como un ejemplo, las ubicaciones de píxeles en la Figura 7 son iguales a las de la Figura 6. cuando el macrobloque actual se segmenta de acuerdo al ejemplo 70, los coeficientes de predicción para el bloque sencillo que comprime el macrobloque actual se puede derivar usando un promedio de los coeficientes de movimiento de los bloques de predicción L, U y UR (par de segmentación de macrobloque-método de predicción 70A) , o ellos se pueden derivar de los coeficientes de movimiento del bloque de predicción L (par 70B) , bloque de predicción U (par 70C) o del bloque de predicción UR (par 70D) . La Figura 7 presenta también alternativas de método de predicción, por ejemplo segmentaciones de macrobloques 71 y 72. Como se puede apreciar en la Figura 7, cada bloque dentro de un macrobloque preferiblemente tienen sus bloques de predicción propios asociados. Los bloques dentro del macrobloque actual, los cuales son procesados también, pueden ellos mismos actuar como bloques de predicción para otros bloques dentro del mismo macrobloque. Como un ejemplo, se considera el par de macrobloque-segmentación-predicción-método 71A, donde'los coeficientes de movimiento de predicción para cada bloque Cl y C2 dentro del macrobloque actual se derivan de un promedio de los coeficientes de movimiento de los bloques de predicción de bloque específico. En este método de predicción, el bloque Cl actúa como bloque de predicción para el bloque C2. Los pares de segmentación de macrobloque-método de predicción 71B, 71C, 71D y 71E son ejemplos adicionales de posibles métodos de predicción relacionados a la segmentación del macrobloque 71. Similarmente, se presentan alternativas de métodos de predicción varias para la segmentación del macrobloque 72. En un método de acuerdo a la primera modalidad preferida de la invención, usualmente se evalúa la función de costo de Langrage para cada uno de los pares de segmentación de macrobloque-método de predicción 70A, 70B, 70C, 70D, 71A, 71B, 71C, 71D, 71E, 72A, 72B, 72C y 72D y posteriormente se escoge el par que minimiza la función de costo como la segmentación de macrobloque actual que se usa en la codificación del macrobloque, como se describió anteriormente en conexión con un método de codificación de acuerdo a la invención. Además, es posible que la segmentación de los macrobloques carcanos afecte el número de pares de segmentación de macrobloque-método de predicción disponibles para el macrobloque actual. En otras palabras, la segmentación de macrobloques cercanos puede conducir a una situación en la cual algunos de los pares que se ilustran en la Figura 7 no se puedan usar en el macrobloque actual o donde alguno de los pares de segmentación de macrobloque-método de predicción extras están disponibles para el macrobloque. Si la segmentación del macrobloque de los macrobloques cercanos limita la selección de los pares de segmentación de macrobloque-método de predicción disponibles para una cierta segmentación de macrobloque para, por ejemplo, solo un par de segmentación de macrobloque-método de predicción, este puede ser innecesario transmitir información que indica el método de predicción seleccionado en adición a la información que indica la segmentación del macrobloque actual. La unidad de decodificación puede concluir el método de predicción de la segmentación de los macrobloques recibidos previamente cuando, por ejemplo, se usa la primera modalidad preferida de la invención. En un método de acuerdo a la segunda modalidad preferida de la invención, hay solo un método de predicción disponible por segmentación de macrobloque. En este caso, la información indica que se puede usar una segmentación de macrobloque seleccionado para indicar el m todo de predicción seleccionado implícitamente (cotéjese, paso 412 en la Figura 4) . Típicamente en este caso, la función de costo se evalúa en el proceso de codificación para cada par de segmentación de macrobloque-método de predicción disponible, y el par que minimiza la función de costo se selecciona para usarse en la codificación del macrobloque actual. La Figura 8 ilustra un ejemplo de una pluralidad de pares de segmentación de macrobloque-método de predicción que se pueden usar en un método de acuerdo a la segunda modalidad preferida. La Figura 8 ilustra seis posibles segmentaciones de macrobloque: de bloque sencillo (segmentación de macrobloque 70) , el macrobloque se divide una vez con una línea de división vertical (71) o con una línea de división horizontal (72), el macrobloque se divide una vez con una línea de división vertical y una vez con una línea de división horizontal (83) , el macrobloque se divide una vez con una línea de división vertical y tres veces con una línea de división horizontal (84) y tres veces con una línea de división vertical y una vez con una línea de división horizontal (85) . Como en las Figuras 6 y 7, los cuadros negros pequeños en la Figura 8 ilustran esquemáticamente los métodos de predicción. En esta modalidad de la invención, el método de predicción 70A se asocia con la segmentación del macrobloque 70, el método de predicción 71B se usa con la predicción del macrobloque 71 y el método de predicción 72B se usa con la segmentación del macrobloque 72. La selección de estos pares de segmentación de macrobloque-método de predicción es bastante intuitiva. Cuando el macrobloque actual se segmenta usando la segmentación del macrobloque 71, es razonable esperar que el bloque izquierdo Cl y el bloque derecho C2 del macrobloque se muevan de manera diferente de algún modo. Es bastante natural asumir que el bloque izquierdo Cl pudiera moverse en una manera similar al bloque de predicción L y para derivar los coeficientes de movimiento de predicción para el bloque Cl a partir de los coeficientes del bloque de predicción L del bloque Cl. Similarmente, esto tiene sentido para usar los coeficientes de movimiento del bloque de predicción UR del bloque C2 en la derivación de los coeficientes de movimientos de predicción para el bloque derecho C2. Un razonamiento similar se aplica al método de predicción asociado con la segmentación del macrobloque 72. Cuando el macrobloque actual no se segmenta en bloques más pequeños (segmentación del macrobloque 70) , no está claro cual de los bloques cercanos pudiera proporcionar buenos coeficientes de movimiento de predicción, y los coeficientes de movimiento de predicción se calculan como un promedio al usar los tres bloques de predicción L, U y UR en el método de predicción 70A.
En el método de predicción relacionado a la segmentación del macrobloque 83, los coeficientes de movimiento de . predicción para cada bloque dentro del macrobloque actual se derivan como un valor promedio que usa tres bloques de predicción. Para el bloque C4 dentro del macrobloque actual, no hay bloque de predicción UR disponible porque ese bloque no se procesa todavía. Por consiguiente, los coeficientes de movimiento de predicción para el bloque C4 se deriva usando los bloques Cl, C2 y C3 dentro del macrobloque actual. Los coeficientes de movimiento de predicción para los bloques Cl, C3, C5 y C7 relacionados a la segmentación del macrobloque 84 se derivan como promedios de los bloques de predicción, como se especifica en la Figura 8. Para los bloques C2, C4, C6 y C8 relacionados a la segmentación del macrobloque 84, los coeficientes de movimiento de predicción se derivan de los coeficientes de movimiento del bloque sobre el lado izquierdo de cada bloque, es decir, el bloque Cl, C3, C5 y C7 del macrobloque actual, respectivamente. Los bloques de movimiento de predicción para los bloques que se relacionan a la segmentación del macrobloque 85 se producen como promedios, como se especifica en la Figura 8. De nuevo, no hay bloque de predicción UR disponible para el bloque C8 en la segmentación del macrobloque 85, y por consiguiente los bloques C3, C4 y C7 dentro del mismo macrobloque se usa en los coeficientes de movimiento de predicción para cada bloque. Una segunda alternativa sensible para el -método de predicción relacionado a la segmentación del macrobloque 85 es, por ejemplo, la predicción mediana para los bloques en la fila superior del macrobloque 85 y el uso subsiguiente de los coeficientes de movimiento de estos bloques para derivarlos coeficientes de movimiento de predicción para los bloques en la fila más baja. El número de bloques de predicción y la opción de los bloques a usarse como bloques de predicción pueden depender además de la posición del macrobloque actual en el cuadro y sobre el orden donde se analizan los bloques/macrobloques dentro del cuadro. Por ejemplo, si el proceso de codificación inicia en la esquina superior izquierda del cuadro, el bloque en la esquina superior izquierda del cuadro no tiene bloques de predicción disponibles. Por consiguiente, los coeficientes de movimiento de predicción para este bloque son usualmente cero. Para los bloques sobre el límite del cuadro superior, se aplica usualmente la predicción que usa un bloque de predicción a la izquierda (bloque de predicción L) . Para los bloques en los límites de cuadros de lado izquierdo, no existe predicción izquierda (L) de los bloques disponibles. Los coeficientes de movimientos de estos bloques pueden ser asumidos a cero, si se usa una predicción promedio para los bloques en el límite del cuadro izquierdo. De manera similar, para los bloques en los límites del cuadro de lado derecho, se pierde el bloque de predicción derecho superior (DS) . Los coeficientes de movimiento de predicción para estos bloques se pueden derivar por ejemplo, en una manera similar a aquella descrita en conjunto con el bloque C4 de la segmentación 83 del macrobloque en la Figura 8. Los detalles de los métodos de predicción usados en un método de conformidad con la invención, no se restringen a predicción media o predicciones de bloques sencillos. Están presentes en la descripción mencionada anteriormente como ejemplos. Además, cualquiera de los bloques ya procesados puede ser usado en la construcción de los coeficientes/campo de movimiento de predicción para un cierto bloque. Los pares de segmentación de macrobloque-método de predicción discutidos anteriormente están también presentados como ejemplos de pares factibles. En un método de conformidad con otras modalidades de la invención, las segmentaciones de macrobloques, métodos de predicción y representación entre las segmentaciones de macrobloques y métodos de predicción pueden ser diferentes de aquellos descritos anteriormente. La Figura 9 ilustra un ejemplo de un bloque de Estimación de .Campo de Movimiento 11' y un bloque de Codificación de Campo de Movimiento 12' de conformidad con la invención. La Figura 10 ilustra un ejemplo de un bloque de Predicción Compensado de Movimiento 13' /21' de conformidad con la invención. Un codificador de conformidad con la invención típicamente comprende todos estos bloques, y un decodificador de conformidad con la invención típicamente comprende un bloque de Predicción Compensado de Movimiento 21' . En el bloque de Codificación de Campo de Movimiento 11' existe un bloque de Segmentación de Macrobloque 111, que segmenta un macrobloque de entrada en bloques. El bloque de Segmentación de Macrobloque Disponible 112 comprende información acerca de las segmentaciones de macrobloques posibles Sk . En la Figura 9, el número de segmentaciones de macrobloques posibles es ilustrado presentando cada segmentación posible como una cabeza de flecha lejos del bloque de Segmentación del Macrobloque 111. Las varias segmentaciones de macrobloques son procesadas en un bloque de Estimación de Campo Vector de Movimiento 113, y los coeficientes de movimiento inicial ao1, ...an1, bo1, ....bn1 que corresponden a cada segmentación de macrobloque son además transmitidos al bloque de Predicción Compensado de Movimiento 12' . Allí el bloque de Codificación de Campo Vector de Movimiento 121 codifica los campos de movimiento estimados con relación a cada segmentación. El bloque de Representación del Método de Predicción - Segmentación 122, es responsable de la indicación con el bloque de Campo de Movimiento de Predicción 123 del método de predicción correcto relacionado con cada segmentación del macrobloque. En el bloque de Construcción de Coeficiente de Movimiento de Diferencia ,124, los campos de movimiento de los bloques están representados como coeficientes de movimiento de diferencia. Los costos de los pares de segmentación de macrobloque-método de predicción están calculados en el bloque de Selección de Segmentación del Macrobloque 125, y se selecciona el par de segmentación de macrobloque-método de predicción más apropiado. Los coeficientes de movimiento de diferencia ~y alguna información que indica la segmentación seleccionada, son además transmitidos. La información indica que la segmentación seleccionada puede también estar implícita. Por ejemplo, si hay solamente una segmentación de macrobloque que produce cuatro bloques y el formato de los datos transmitidos revela al receptor que está recibiendo cuatro pares de coeficientes de movimiento de diferencia que se refieren a un cierto macro- bloque, puede determinarse la segmentación correcta. Si existen varios métodos de predicción disponibles por segmentación de macrobloque, existe una necesidad para transmitir alguna información que también indique el método de predicción seleccionado. La información acerca de la predicción del cuadro de error es típicamente también transmitida al decodificador, para permitir una reconstrucción exacta de la imagen. jEl bloque de Predicción Compensado de Movimiento 13' /21' recibe información 'a cerca de los coeficientes de movimiento de diferencia e (implícitamente o explícitamente) , información acerca de la segmentación de un macrobloque. Puede también recibir información acerca del método de predicción seleccionado si existe más de un método de predicción disponible por segmentación de macrobloque. La información de segmentación es usada para producir coeficientes de movimientos de predicción correctos en el bloque de Construcción de Coeficiente de Movimiento de Predicción 131. El bloque de Representación del Método de Predicción Segmentación 132, se usa para almacenar información acerca de los pares permitidos de segmentación de macrobloque y método de predicción. Los coeficientes del movimiento de predicción construidos y coeficientes de movimiento de diferencia recibida, son usados para construir los coeficientes de movimiento en el bloque de Construcción de Coeficiente de Movimiento 133^ Los coeficientes de Movimiento son transmitidos además, a un bloque de Decodificación de Campo Vector de Movimiento 134. Un codificador o un decodificador de conformidad con la invención, puede ser realizado usando un hardware o software, o usando una combinación adecuada de ambos. Un codificador o decodificador ímplementado en un software puede ser por ejemplo, un programa separado o un bloque de construcción de software que puede ser usado por varios programas. En la descripción anterior y en los dibujos, los bloques funcionales son representados como unidades separadas, pero la funcionalidad de estos bloques puede ser implementada por ejemplo, en una unidad de programa de software. Es también posible implementar un codificador de conformidad con la invención y un decodificador de conformidad con la invención en una unidad funcional. Tal . unidad es llamada un codee. Un codee de conformidad con la invención puede ser un programa de computadora o un elemento de programa de computadora, o puede ser implementado al menos parcialmente usando hardware. La Figura 11 muestra una estación móvil MS de conformidad con una modalidad de la invención. Una unidad de procesamiento central, microprocesador µP controla los bloques responsables de las funciones diferentes de la estación móvil: una memoria de acceso aleatorio RAM, un bloque de radio frecuencia RF, una memoria solamente lectora ROM, una interfaz de usuario Ul que tiene una pantalla DPL y un tablero KBD, y una bloque de cámara digital CAM. Las instrucciones de operación del microprocesador, que es un código de programa y las funciones básicas de la estación móvil, se han almacenado en la estación móvil en progreso, por ejemplo, durante el proceso de manufacturación, en el ROM. De conformidad con este programa, el microprocesador usa el bloque RF para trasmitir y recibir mensajes en una trayectoria de radio. El microprocesador monitorea el estado de la interfaz del usuario Ul y controla el bloque de la cámara digital CAM. En respuesta a un comapdo de usuario, el microprocesador instruye al bloque de cámara CAM a registrar una imagen digital en el RAM. Una vez que la imagen es capturada o alternativamente durante el proceso de capturación, el microprocesador segmenta la imagen en segmentos de imágenes y realiza la codificación compensada de movimiento para los segmentos con el fin de generar una imagen comprimida como se explica en la descripción mencionada anteriormente. Un usuario puede comandar la estación móvil para presentar la imagen en su pantalla o enviar la imagen comprimida usando el bloque RF a otra estación móvil, un teléfono inalámbrico u otros dispositivos de telecomunicaciones. En una modalidad preferida, tal transmisión de datos de imágenes se inicia tan pronto como el primer segmento es codificado, de manera que el recipiente puede iniciar un proceso de decodificación correspondiente con un retraso mínimo. En una modalidad alternativa, la estación móvil comprende un bloque codificador ENC dedicado para codificar y posiblemente también para decodificación de los datos de video digital. La Figura 12 es un diagrama esquemático de una red de telecomunicaciones móviles de conformidad con una modalidad de la invención. Las estaciones móviles MS están en comunicación con estaciones base BTS por medio de un enlace de radio". Las estaciones base BTS son además conectadas, a través de una así llamada interfaz Abis, a un controlador de estación base BSC, el cual controla y dirige varías estaciones base. La totalidad formada por un número de estaciones base BTS (típicamente, por unas cuantas estaciones de docenas de bases) y un controlador de estación de base única BSC, que controla las estaciones base, es llamada un subsistema de estación base BSS. Particularmente, el controlador de estación base BSC dirige los canales de comunicación de radio y controles de mando. Por otro lado, el controlador de estación base BSC está conectado a través de una así llamada interfaz A, a un centro conmutador de servicios móviles MSC, el cual co-coordina la formación de conexiones a y de estaciones móviles. Se hace una conexión adicional, a través del centro conmutador de servicios móviles MCS, al exterior de la red de comunicaciones móviles. Fuera de la red de comunicaciones móviles puede además residir otra(s) red (es) conectadas a la red de comunicaciones móviles por salida (s) GT , por ejemplo, la Internet o una Red de Teléfono Conmutada Pública (PSTN) . En tal red externa, o en la red de telecomunicaciones, pueden estar localizadas estaciones de codificación o decodificación de video, tal como computadoras PC. En una modalidad de la invención, la red de telecomunicaciones móviles comprende un servidor de video VSRVR para proporcionar datos de video a un subscriptor de MS a tal servicio. Estos datos de video son comprimidos usando el método de compresión" de video compensado de movimiento como se describe tempranamente en este documento. El servidor de video puede funcionar como una salida a una fuente de video en línea o puede comprimir clips de video previamente registrados. Las aplicaciones típicas de videotelefonía pueden involucrar por ejemplo, dos estaciones móviles o una estación móvil MS y un videoteléfono conectado al PSTN, una PC conectada a la Internet o una terminal compatible H.261 conectada ya sea a la Internet o a la PSTN. En vista de la descripción mencionada anteriormente, será evidente para una persona experta en la técnica, que pueden hacerse varias modificaciones dentro del ámbito de la invención. Mientras un número de modalidades preferidas de la invención han sido descritas en detalle, debe ser aparente que muchas modificaciones y variaciones a esta son posibles, todas las cuales caen dentro del espíritu y ámbito verdadero de la invención . 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 a partir de la presente descripción de la invención.

Claims (44)

  1. REIVINDICACIONES Habiéndose descrito la invención como antecede se reclama como propiedad lo contenido en las siguientes reivindicaciones : 1. Método para codificar información de vídeo, que comprende el paso de: -dividir una pieza de información de vídeo actual en macrobloques, caracterizado porque comprende adicionalmente los pasos de: -definir un cierto número de segmentaciones de macrobloque disponibles para la segmentación de un macrobloque en bloques, -definir cada segmentación de macrobloque disponible en al menos un método de predicción disponible, cada uno de los métodos de predicción produce coeficientes de movimiento de predicción para bloques dentro del macrobloque, resultando en un cierto número finito de pares de segmentación de macrobloque-método de predicción disponibles, -seleccionar un macrobloque de uno de los pares de segmentación de macrobloque-método de predicción disponibles, y -segmentar el macrobloque en bloques y producir coeficientes de movimiento de predicción para los bloques dentro del macrobloque usando el par de segmentación de macrobloque- método de predicción seleccionado.
  2. 2. Método para codificar información de vídeo de conformidad con .la reivindicación 1, caracterizado porque los coeficientes del método de predicción para un bloque dentro del macrobloque se producen usando coeficientes de movimiento de un conjunto de bloques de predicción, un bloque de predicción es un bloque cercano dentro del macrobloque.
  3. 3. Método para codificar información de vídeo de conformidad con la reivindicación 1 ó 2, caracterizado porque al menos uno de los métodos de predicción disponibles define los coeficientes de movimiento de predicción para un bloque dentro del macrobloque que se deriva de los coeficientes de movimiento de solamente un bloque de predicción.
  4. 4. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2 ó 3, caracterizado porque al menos uno de los métodos de predicción disponibles define que los coeficientes de movimiento de predicción para un bloque dentro del macrobloque se derivan de los coeficientes de movimiento de al menos un primer bloque de predicción y un segundo bloque de predicción.
  5. 5. Método para codificar información de vídeo de conformidad con la reivindicación 4, caracterizado porque los coeficientes de movimiento de predicción para un bloque se derivan de una mediana de los coeficientes de movimiento de al menos un primer bloque de predicción y un segundo bloque de predicción.
  6. 6. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3 ó 4, caracterizado porque al menos* uno de los métodos de predicción disponibles específica que los coeficientes de movimiento de predicción para un bloque dentro del macrobloque se derivan de los coeficientes de movimiento de los bloques de predicción dentro del macrobloque.
  7. 7. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4 ó 6, caracterizado porque un bloque de predicción que se usa en la producción de coeficientes de movimiento de predicción para un bloque se define como un bloque que comprende un cierto píxel predeterminado, cuya ubicación se define con relación al bloque.
  8. 8. Método para codificar información de vídeo de conformidad con la reivindicación 7, caracterizado porque la ubicación de un píxel predeterminado para un primer bloque es diferente de la ubicación de un píxel predeterminado para un s'egundo bloque.
  9. 9. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6 ó 7, caracterizado porque el número de bloques de predicción por bloque es a lo . sumo un cierto número en cualquiera de los pares de segmentación de macrobloque-método de predicción.
  10. 10. Método para codificar información de vídeo de conformidad con la reivindicación 9, caracterizado porque el número de bloques de predicción por bloque es a lo sumo tres.
  11. 11. Método para codificar información de vídeo de conformidad con la reivindicación 10, caracterizado porque un bloque de predicción que se usa en la producción de coeficientes de movimiento de predicción para un bloque se define como un bloque que comprende un cierto píxel predeterminado, cuya ubicación se define con relación al bloque.
  12. 12. Método para codificar información de vídeo de conformidad con la reivindicación 11, caracterizado porque al menos para ciertos primeros bloques relacionados a ciertos primeros pares de segmentación de macrobloque-método de predicción los píxeles predeterminados comprenden el píxel más alto adyacente al bloque de la izquierda, el píxel más izquierdo superyacente al bloque y el píxel de esquina a esquina con el píxel derecho del bloque.
  13. 13. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6, 7 ó 9, caracterizado porque los macrobloques y los bloques resultantes de. las segmentaciones de macrobloque son cuadriláteros .
  14. 14. Método para codificar información de vídeo de conformidad con la reivindicación 13, caracterizado porque los macrobloques y los bloques resultantes de las segmentaciones de macrobloque son rectangulares.
  15. 15. Método para codificar información de vídeo de conformidad con la reivindicación 14, caracterizado porque las segmentaciones de macrobloque disponibles comprenden una primera segmentación de macrobloque resultante de un bloque, una segunda segmentación de macrobloque que divide un macrobloque una vez con una línea vertical, una tercera segmentación de macrobloque que divide un macrobloque una vez con una línea horizontal, una cuarta segmentación de macrobloque que divide un macrobloque una vez con una línea vertical y una vez con una línea horizontal, una quinta segmentación de macrobloque que divide un macrobloque una vez con una línea vertical y tres veces con una línea horizontal, y una sexta segmentación de macrobloque que divide un macrobloque tres veces con una línea vertical y una vez con una línea horizontal.
  16. 16. Método para codificar información de vídeo de conformidad con la reivindicación 14, caracterizado porque un método de predicción se define para cada segmentación de macrobloque disponible, un bloque de predicción para un bloque se define como un bloque que comprende un cierto píxel predeterminado, cuya ubicación se define con relación al bloque, los coeficientes de predicción para ciertos primeros bloques se derivan de los coeficientes de movimiento de solamente un bloque de predicción de bloque específico y coeficientes de predicción para ciertos segundos bloques se derivan de los coeficientes de movimiento de más de uno de los bloques de predicción de bloque específico.
  17. 17. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6, 7, 9 ó 13, caracterizado porque la segmentación de iacrobloque de los macrobloques cercanos afecta la selección de los pares de segmentación de macrobloque-método de predicción disponibles para un macrobloque, de modo que una selección de pares de segmentación de macrobloque-método de predicción disponibles para un primer macrobloque es diferente de una selección de pares de segmentación de macrobloque-método de predicción disponibles para un segundo macrobloque.
  18. 18. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6, 7, 9, 13 ó 17 caracterizado porque la selección del par de segmentación de macrobloque-método de predicción se basa en la minimización de una función de costo. .
  19. 19. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6, 7, 9, 13, 17 ó 18 caracterizado porque un par de segmentación de macrobloque-método de predicción se define para cada segmentación de macrobloque disponible.
  20. 20. Método para codificar información de vídeo de conformidad con la reivindicación 19, caracterizado porque comprende adicionalmente el paso de: -transmitir información que indica la segmentación de macrobloque seleccionada a un decodificador o almacenar información que indica el par de segmentación de macrobloque-método de predicción seleccionado en un medio de almacenamiento .
  21. 21. Método para codificar información de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6, 7, 9, 13, 17, 18 ó 19, caracterizado porque comprende adicionalmente el paso de: -transmitir información que indica el par de segmentación de macrobloque-método de predicción seleccionado a un decodificador o almacenar información que indica el par de segmentación de macrobloque-método de predicción seleccionado en un medio de almacenamiento.
  22. 22. Método para codificar información .de vídeo de conformidad con la reivindicación 1, 2, 3, 4, 6, 7, 9, 13, 17, 18, 19 ó 21, caracterizado porque comprende adicionalmente los pasos de: -estimar el movimiento de bloques dentro del macrobloque usando una pieza de información de vídeo de referencia y la pieza de información de vídeo actual, -modelar el movimiento de los bloques dentro del macrobloque usando un conjunto de funciones de base y coeficientes de movimiento, y -representar los coeficientes de movimiento como una suma de los coeficientes de movimiento de predicción y coeficientes de movimiento de diferencia.
  23. 23. Método para codificar información de vídeo de conformidad con la reivindicación 22, caracterizado porque la modelación del movimiento de un bloque se realiza usando un modelo de movimiento traslacional.
  24. 24. Método para codificar infor.nación de vídeo de conformidad con la reivindicación 22, caracterizado porque la selección del par de segmentación de macrobloque-método de predicción se basa en la minimización de ur.a función de costo la cual incluye al menos una medición de un error de reconstrucción que se relaciona a un par de segmentación de macrobloque-método de predicción y una medición de una cantidad de información requerida para indicar el par de segmentación de macrobloque-método de predicción y para representar los coeficientes de movimiento de diferencia de los bloques dentro del macrobloque.
  25. 25. Método para codificar información de vídeo de conformidad con la reivindicación 22, caracterizado porque comprende adicionalmente los pasos de: -transmitir información que indica el par de segmentación de macrobloque-método de predicción seleccionado a un decodificador para decodificar o almacenar información que indica el par de segmentación de macrobloque-método de predicción en un medio de almacenamiento, y -transmitir información acerca de los coeficientes de movimiento de diferencia a un decodificador para decodificar o almacenar información acerca de los coeficientes de movimiento de diferencia en un medio de almacenamiento.
  26. 26. Método para codificar información de vídeo de conformidad con la reivindicación 22, caracterizado porque comprende adicionalmente los pasos de: -reconstruir el movimiento de los bloques dentro del macrobloque que usa los coeficientes de movimiento, funciones de base e información acerca de la segmentación de macrobloque, -determinar una pieza de información de vídeo de predicción que usa la pieza de información de vídeo de referencia y el movimiento determinado de los bloques, -determinar una pieza de información de vídeo de error de predicción basado en la diferencia entre la pieza de información de vídeo de predicción y la pieza de información de vídeo actual, -codificar la pieza de información de vídeo de error de predicción y representarla con los coeficientes de error de predicción, y -transmitir la información acerca de los coeficientes de error de predicción a un decodificador para decodificar o almacenar información acerca de los coeficientes de error de predicción en un medio de almacenamiento.
  27. 27. Método para decodificar información de vídeo codificada, caracterizado porque comprende los pasos de: -especificar información acerca de los pares de segmentación de macrobloque-método de predicción disponibles para producir coeficientes de movimiento de predicción para bloques dentro de un macrobloque, -recibir información que indica un par de segmentación de macrobloque-método de predicción seleccionado para un macrobloque, y -determinar un método de predicción relacionado a una segmentación de macrobloque del macrobloque y producir coeficientes de movimiento de predicción para bloques dentro del macrobloque usando el método de predicción indicado.
  28. 28. Método para decodificar información de vídeo codificada de conformidad con la reivindicación 27, caracterizado porque se definen al menos dos pares de segmentación de macrobloque-método de predicción que relacionan una cierta segmentación de macrobloque, disponible.
  29. 29. Método para decodificar información de vídeo codificada de conformidad con la reivindicación 27, caracterizado porque sólo se define un par de segmentación de macrobloque-método de predicción para cada segmentación de macrobloque disponible.
  30. 30. Método para decodificar información de vídeo codificado de conformidad con la reivindicación 27, caracterizado porque además comprende los pasos de: - recibir información acerca de los coeficientes de movimiento de diferencia que describen el movimiento de bloques dentro de un macrobloque, y - reconstruir los coeficientes de movimiento para los bloques dentro del macrobloque como una suma de los coeficientes de movimiento de predicción y los coeficientes de movimiento de diferencia.
  31. 31. Método para decodificar la información de vídeo codificada de conformidad con la reivindicación 30, caracterizado porque además comprende los pasos de: - recibir información acerca de los coeficientes de error de predicción que describen una pieza de información de error de predicción, y - determinar una pieza decodificada de información de vídeo actual usando al menos los coeficientes de movimiento y la pieza de información de error de predicción.
  32. 32. Codificador para realizar la codificación compensada de movimiento de información de vídeo, que comprende: - medios para recibir una pieza de información de vídeo actual, - medios para dividir una pieza de información de vídeo actual en macrobloques, y - medios para especificar segmentaciones de macrobloque disponibles para segmentar un macrobloque en bloques, caracterizado porque además comprende - medios para especificar al menos un método de predicción disponible para .cada segmentación de macrobloque, resultando en un cierto número finito de pares de segmentación de macrobloque-método de predicción, disponibles, - medios para seleccionar un par de segmentación de macrobloque-método de predicción entre los pares de segmentación de macrobloque-método de predicción, disponibles, - medios para segmentar un macrobloque usando la segmentación de macrobloque seleccionada, y - medios para producir los coeficientes de movimiento de segmentación de macrobloque-predicción específica para bloques dentro del macrobloque usando el métc.do de predicción seleccionado.
  33. 33. Codificador para realizar la codificación compensada de movimiento de información de vídeo de conformidad con la reivindicación 32, caracterizado porque además comprende: - medios de memoria para almacenar una pieza de información de vídeo de referencia, - medios para estimar un campo de movimiento de bloques en la pieza de información de vídeo actual usando al menos una pieza de información de vídeo de referencia, - medios para producir coeficientes de movimiento que describen los campos de movimiento estimados, y medios para, producir coeficientes de movimiento de diferencia usando los coeficientes de movimiento y los coeficientes de movimiento de predicción.
  34. 34. Decodificador para realizar la decodificación de información de vídeo codificada, que comprende: medios de entrada para recibir información de vídeo codificada, caracterizado porque además comprende - medios para determinar el par de segmentación de macrobloque-método de predicción del macrobloque basado en la información de vídeo codificada, recibida, los cuales comprenden información que indica un par de segmentación de macrobloque-método de predicción relacionando un macrobloque e información acerca de los coeficientes de movimiento de diferencia de bloques dentro del macrobloque, y - medios para producir los coeficientes de movimiento de predicción para bloques dentro del macrobloque usando un método de predicción indicado por el par de segmentación de macrobloque-método de predicción.
  35. 35. Decodificador para realizar la decodificación de información de vídeo codificada de acuerdo con la reivindicación 34, caracterizado porque además comprende: - medios para determinar los coeficientes de movimiento de diferencia de los bloques dentro del macrobloque basado en la información de vídeo codificada recibida, y - medios para construir los coeficientes de movimiento usando los coeficientes de movimiento de predicción y los coeficientes de movimiento de diferencia.
  36. 36. Elemento de programa de computadora para realizar la codificación compensada de movimiento de información de vídeo, que comprende: medios para recibir una pieza de información de vídeo actual , - medios para dividir una pieza de información de vídeo actual en macrobloques, y - medios para especificar segmentaciones de macrobloques disponibles, caracterizado porque además comprende - medios para especificar al menos un método de predicción disponible para cada segmentación de macrobloque, resultando en un cierto número finito de pares de segmentación de macrobloque-método de predicción, disponibles, medios para seleccionar un par de segmentación de macrobloque-método de predicción entre los pares de segmentación de macrobloque-método de predicción, disponibles, - medios para segmentar un macrobloque usando la segmentación de macrobloque seleccionada, y - medios para producir coeficientes de movimiento de segmentación de macrobloque-método de predicción para bloques dentro del macrobloque usando el método de predicción seleccionado .
  37. 37. Elemento de programa de computadora de conformidad con la reivindicación 36, caracterizado porque toma forma en un medio leíble de computadora.
  38. 38. Elemento de programa de computadora para realizar la decodificación de la información de vídeo codificada, que comprende: - medios de entrada para recibir la información de vídeo codificada, caracterizado porque además comprende: medios para determinar el par de segmentación de macrobloque-método de predicción del macrobloque basado en la información de vídeo codificada, recibida, los cuales comprenden información que indica un par de segmentación de macrobloque-método de predicción que relaciona a un macrobloque y la información acerca de los coeficientes de movimiento de diferencia de bloques dentro del macrobloque, y - medios para producir los coeficientes de movimiento de predicción para bloques dentro del macrDbloque usando un método de predicción indicado por el par de segmentación de macrobloque-método de predicción. .
  39. 39. Elemento de programa de computadora de conformidad con la reivindicación 38, caracterizado porque toma forma en un medio leíble por computadora.
  40. 40. Dispositivo de almacenamiento caracterizado porque comprende un codificador de conformidad con la reivindicación 32.
  41. 41. Estación móvil caracterizada porque comprende un codificador de conformidad con la reivindicación 32.
  42. 42. Estación móvil caracterizada porque comprende un decodificador de conformidad con la reivindicación 34.
  43. 43. Elemento de red caracterizado porque comprende un codificador de conformidad con la reivindicación 32.
  44. 44. Elemento de red de conformidad con la reivindicación 43, caracterizado porque el elemento de red es un elemento de red de una red de telecomunicación móvil.
MXPA02010964A 2000-05-08 2001-05-08 Metodo para codificar y decodificar informacion de video, codificador de video compensado por movimiento y decodificador correspondiente. MXPA02010964A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/566,020 US6711211B1 (en) 2000-05-08 2000-05-08 Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
PCT/FI2001/000438 WO2001086962A1 (en) 2000-05-08 2001-05-08 Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder

Publications (1)

Publication Number Publication Date
MXPA02010964A true MXPA02010964A (es) 2003-03-27

Family

ID=24261115

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA02010964A MXPA02010964A (es) 2000-05-08 2001-05-08 Metodo para codificar y decodificar informacion de video, codificador de video compensado por movimiento y decodificador correspondiente.

Country Status (13)

Country Link
US (3) US6711211B1 (es)
EP (1) EP1282982B1 (es)
JP (1) JP4369090B2 (es)
KR (1) KR100772576B1 (es)
CN (1) CN100581266C (es)
AU (1) AU2001258472A1 (es)
BR (1) BR0110627A (es)
CA (1) CA2408364C (es)
EE (1) EE05487B1 (es)
HU (1) HU229589B1 (es)
MX (1) MXPA02010964A (es)
WO (1) WO2001086962A1 (es)
ZA (1) ZA200208767B (es)

Families Citing this family (135)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7139317B2 (en) * 1999-04-17 2006-11-21 Altera Corporation Segment-based encoding system using exposed area filling performed by an encoder and a decoder
US8406301B2 (en) 2002-07-15 2013-03-26 Thomson Licensing Adaptive weighting of reference pictures in video encoding
US7801217B2 (en) 2002-10-01 2010-09-21 Thomson Licensing Implicit weighting of reference pictures in a video encoder
WO2004032506A1 (en) 2002-10-01 2004-04-15 Thomson Licensing S.A. Implicit weighting of reference pictures in a video encoder
JP4240283B2 (ja) 2002-10-10 2009-03-18 ソニー株式会社 復号装置及び復号方法
US8824553B2 (en) 2003-05-12 2014-09-02 Google Inc. Video compression method
CN100344163C (zh) * 2004-06-16 2007-10-17 华为技术有限公司 视频编解码处理方法
FR2872975A1 (fr) 2004-07-06 2006-01-13 Thomson Licensing Sa Procede et dispositif pour choisir un mode de codage
CN100359953C (zh) * 2004-09-08 2008-01-02 华为技术有限公司 基于帧内编码的图像色度预测方法
JP4736456B2 (ja) * 2005-02-15 2011-07-27 株式会社日立製作所 走査線補間装置、映像表示装置、映像信号処理装置
KR100746022B1 (ko) * 2005-06-14 2007-08-06 삼성전자주식회사 서브픽셀 움직임 추정시 모델 스위칭을 통한 압축 효율을증가시키는 인코딩 방법 및 장치
JP2007116351A (ja) 2005-10-19 2007-05-10 Ntt Docomo Inc 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム
KR100750137B1 (ko) * 2005-11-02 2007-08-21 삼성전자주식회사 영상의 부호화,복호화 방법 및 장치
KR101365570B1 (ko) 2007-01-18 2014-02-21 삼성전자주식회사 인트라 예측 부호화, 복호화 방법 및 장치
KR101366241B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상 부호화, 복호화 방법 및 장치
TWI376662B (en) * 2007-05-03 2012-11-11 Novatek Microelectronics Corp Apparatus for controlling the liquid crystal display
JP4461165B2 (ja) * 2007-09-26 2010-05-12 株式会社東芝 画像処理装置、方法およびプログラム
KR101337206B1 (ko) 2007-10-12 2013-12-06 삼성전자주식회사 블록 샘플링을 이용한 영상의 움직임 추정 시스템 및 방법.
US8908765B2 (en) * 2007-11-15 2014-12-09 General Instrument Corporation Method and apparatus for performing motion estimation
BRPI0907748A2 (pt) * 2008-02-05 2015-07-21 Thomson Licensing Métodos e aparelhos para segmentação implícita de blocos em codificação e decodificação de vídeo
ES2752001T3 (es) * 2008-04-15 2020-04-02 Orange Predicción de imágenes por determinación previa de una familia de píxeles de referencia, codificación y decodificación que usan dicha predicción
KR101085963B1 (ko) 2008-08-11 2011-11-22 에스케이플래닛 주식회사 동영상 부호화 장치 및 방법
US8259794B2 (en) * 2008-08-27 2012-09-04 Alexander Bronstein Method and system for encoding order and frame type selection optimization
US8326075B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video encoding using adaptive loop filter
US8385404B2 (en) 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US20120219232A1 (en) * 2009-10-20 2012-08-30 Tomoyuki Yamamoto Image encoding apparatus, image decoding apparatus, and data structure of encoded data
JP4957780B2 (ja) * 2009-11-20 2012-06-20 カシオ計算機株式会社 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム
CN102447895B (zh) 2010-09-30 2013-10-02 华为技术有限公司 扫描方法及装置、反扫描方法及装置
US9532059B2 (en) 2010-10-05 2016-12-27 Google Technology Holdings LLC Method and apparatus for spatial scalability for video coding
JP5594841B2 (ja) * 2011-01-06 2014-09-24 Kddi株式会社 画像符号化装置及び画像復号装置
CN102611884B (zh) 2011-01-19 2014-07-09 华为技术有限公司 图像编解码方法及编解码设备
US8891626B1 (en) 2011-04-05 2014-11-18 Google Inc. Center of motion for encoding motion fields
US8693547B2 (en) 2011-04-06 2014-04-08 Google Inc. Apparatus and method for coding using motion vector segmentation
US8638854B1 (en) 2011-04-07 2014-01-28 Google Inc. Apparatus and method for creating an alternate reference frame for video compression using maximal differences
US9154799B2 (en) 2011-04-07 2015-10-06 Google Inc. Encoding and decoding motion via image segmentation
US8989256B2 (en) * 2011-05-25 2015-03-24 Google Inc. Method and apparatus for using segmentation-based coding of prediction information
EP2727357A1 (en) 2011-07-01 2014-05-07 Motorola Mobility LLC Motion vector prediction design simplification
US8885706B2 (en) 2011-09-16 2014-11-11 Google Inc. Apparatus and methodology for a video codec system with noise reduction capability
WO2013067440A1 (en) 2011-11-04 2013-05-10 General Instrument Corporation Motion vector scaling for non-uniform motion vector grid
US9247257B1 (en) 2011-11-30 2016-01-26 Google Inc. Segmentation based entropy encoding and decoding
US9014265B1 (en) 2011-12-29 2015-04-21 Google Inc. Video coding using edge detection and block partitioning for intra prediction
US8908767B1 (en) 2012-02-09 2014-12-09 Google Inc. Temporal motion vector prediction
US9262670B2 (en) 2012-02-10 2016-02-16 Google Inc. Adaptive region of interest
US9094681B1 (en) 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US9131073B1 (en) 2012-03-02 2015-09-08 Google Inc. Motion estimation aided noise reduction
US9426459B2 (en) 2012-04-23 2016-08-23 Google Inc. Managing multi-reference picture buffers and identifiers to facilitate video data coding
US9609341B1 (en) 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
US9172970B1 (en) 2012-05-29 2015-10-27 Google Inc. Inter frame candidate selection for a video encoder
US9014266B1 (en) 2012-06-05 2015-04-21 Google Inc. Decimated sliding windows for multi-reference prediction in video coding
US11317101B2 (en) 2012-06-12 2022-04-26 Google Inc. Inter frame candidate selection for a video encoder
US9344729B1 (en) 2012-07-11 2016-05-17 Google Inc. Selective prediction signal filtering
US9332276B1 (en) 2012-08-09 2016-05-03 Google Inc. Variable-sized super block based direct prediction mode
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9288484B1 (en) 2012-08-30 2016-03-15 Google Inc. Sparse coding dictionary priming
US9407915B2 (en) 2012-10-08 2016-08-02 Google Inc. Lossless video coding with sub-frame level optimal quantization values
US9210432B2 (en) 2012-10-08 2015-12-08 Google Inc. Lossless inter-frame video coding
US9369732B2 (en) 2012-10-08 2016-06-14 Google Inc. Lossless intra-prediction video coding
US9503746B2 (en) 2012-10-08 2016-11-22 Google Inc. Determine reference motion vectors
US9485515B2 (en) 2013-08-23 2016-11-01 Google Inc. Video coding using reference motion vectors
US9756346B2 (en) 2012-10-08 2017-09-05 Google Inc. Edge-selective intra coding
US20140169444A1 (en) * 2012-12-14 2014-06-19 Microsoft Corporation Image sequence encoding/decoding using motion fields
US9210424B1 (en) 2013-02-28 2015-12-08 Google Inc. Adaptive prediction block size in video coding
US9300906B2 (en) 2013-03-29 2016-03-29 Google Inc. Pull frame interpolation
US9756331B1 (en) 2013-06-17 2017-09-05 Google Inc. Advance coded reference prediction
US9313493B1 (en) 2013-06-27 2016-04-12 Google Inc. Advanced motion estimation
US9438910B1 (en) 2014-03-11 2016-09-06 Google Inc. Affine motion prediction in video coding
US9392272B1 (en) 2014-06-02 2016-07-12 Google Inc. Video coding using adaptive source variance based partitioning
US9578324B1 (en) 2014-06-27 2017-02-21 Google Inc. Video coding using statistical-based spatially differentiated partitioning
US9153017B1 (en) 2014-08-15 2015-10-06 Google Inc. System and method for optimized chroma subsampling
US10102613B2 (en) 2014-09-25 2018-10-16 Google Llc Frequency-domain denoising
US9807416B2 (en) 2015-09-21 2017-10-31 Google Inc. Low-latency two-pass video coding
US10560712B2 (en) * 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
KR102338356B1 (ko) 2016-05-24 2021-12-13 한국전자통신연구원 영상 부호화/복호화 방법 및 이를 위한 기록 매체
KR20180001485A (ko) 2016-06-24 2018-01-04 한국전자통신연구원 변환 기반의 영상 부호화/복호화 방법 및 장치
WO2018012851A1 (ko) 2016-07-12 2018-01-18 한국전자통신연구원 영상 부호화/복호화 방법 및 이를 위한 기록 매체
WO2018012886A1 (ko) 2016-07-12 2018-01-18 한국전자통신연구원 영상 부호화/복호화 방법 및 이를 위한 기록 매체
CN116567217A (zh) 2016-08-11 2023-08-08 Lx 半导体科技有限公司 图像编码/解码方法以及图像数据的发送方法
CN117221575A (zh) 2016-10-04 2023-12-12 英迪股份有限公司 图像解码方法、图像编码方法以及发送比特流的方法
US10448010B2 (en) 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
US11575885B2 (en) 2016-10-11 2023-02-07 Electronics And Telecommunications Research Institute Image encoding/decoding method and apparatus and recording medium for storing bitstream
KR20180057566A (ko) 2016-11-22 2018-05-30 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2018097693A2 (ko) 2016-11-28 2018-05-31 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US10462482B2 (en) 2017-01-31 2019-10-29 Google Llc Multi-reference compound prediction of a block using a mask mode
KR102354628B1 (ko) 2017-03-31 2022-01-25 한국전자통신연구원 부호화 트리 유닛 및 부호화 유닛의 처리를 수행하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치
EP4351139A3 (en) 2017-06-09 2024-05-15 Electronics and Telecommunications Research Institute Video encoding/decoding method and device, and recording medium storing bit stream
WO2019022568A1 (ko) 2017-07-28 2019-01-31 한국전자통신연구원 영상 처리 방법, 그를 이용한 영상 부호화/복호화 방법 및 그 장치
CN115474043A (zh) 2017-07-31 2022-12-13 韩国电子通信研究院 对图像编码和解码的方法及存储比特流的计算机可读介质
US11677940B2 (en) 2017-09-20 2023-06-13 Electronics And Telecommunications Research Institute Method and device for encoding/decoding image, and recording medium having stored bitstream
US11877001B2 (en) 2017-10-10 2024-01-16 Qualcomm Incorporated Affine prediction in video coding
KR20190046704A (ko) 2017-10-26 2019-05-07 한국전자통신연구원 비대칭 서브 블록 기반 영상 부호화/복호화 방법 및 장치
CN118101949A (zh) 2017-11-28 2024-05-28 Lx 半导体科技有限公司 图像编码/解码方法、图像数据的传输方法和存储介质
CN115941941A (zh) 2017-11-29 2023-04-07 韩国电子通信研究院 采用环内滤波的图像编码/解码方法和装置
KR20190080805A (ko) 2017-12-28 2019-07-08 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2019147067A1 (ko) 2018-01-26 2019-08-01 한국전자통신연구원 시간적 움직임 정보를 이용하는 영상 부호화 및 영상 복호화를 위한 방법 및 장치
CN111919448A (zh) 2018-01-26 2020-11-10 韩国电子通信研究院 用于使用时间运动信息的图像编码和图像解码的方法和设备
KR102741880B1 (ko) 2018-03-14 2024-12-13 주식회사 엘엑스세미콘 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CA3094439C (en) 2018-03-19 2023-05-23 University-Industry Cooperation Group Of Kyung Hee University Method and apparatus for encoding/decoding image using geometrically modified reference picture
CN118381911A (zh) 2018-03-21 2024-07-23 Lx 半导体科技有限公司 图像编码/解码方法以及图像数据的发送方法
WO2019190224A1 (ko) 2018-03-30 2019-10-03 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11277612B2 (en) 2018-06-25 2022-03-15 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding image using quantization parameter, and recording medium storing bitstream
WO2020004987A1 (ko) 2018-06-27 2020-01-02 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US12034977B2 (en) 2018-06-28 2024-07-09 Electronics And Telecommunications Research Institute Video encoding/decoding method and device, and recording medium for storing bitstream
CN112438048A (zh) 2018-07-16 2021-03-02 韩国电子通信研究院 用于对图像进行编码/解码的方法和设备以及存储比特流的记录介质
US11838514B2 (en) 2018-08-06 2023-12-05 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium storing bitstream
KR20200032021A (ko) 2018-09-17 2020-03-25 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN119996669A (zh) 2018-09-18 2025-05-13 韩国电子通信研究院 图像编码/解码方法和装置以及存储比特流的记录介质
WO2020060243A1 (ko) 2018-09-19 2020-03-26 한국전자통신연구원 경계 처리를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2020060184A1 (ko) 2018-09-19 2020-03-26 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2020060316A1 (ko) 2018-09-20 2020-03-26 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2020060261A1 (ko) 2018-09-20 2020-03-26 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2020060317A1 (ko) 2018-09-21 2020-03-26 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN118555389A (zh) 2018-09-21 2024-08-27 韩国电子通信研究院 图像编码/解码方法和用于发送压缩视频数据的装置
US11496737B2 (en) 2018-10-05 2022-11-08 Electronics And Telecommunications Research Institute Image encoding/decoding method and apparatus, and recording medium storing bitstream
CN113228639A (zh) 2018-12-21 2021-08-06 韩国电子通信研究院 图像编码/解码方法和装置以及存储有比特流的记录介质
CN119946263A (zh) 2018-12-21 2025-05-06 韩国电子通信研究院 图像编码/解码方法和装置以及存储比特流的记录介质
KR20200080187A (ko) 2018-12-26 2020-07-06 한국전자통신연구원 양자화 행렬 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11671603B2 (en) 2018-12-28 2023-06-06 Electronics Telecommunications Research Institute Image encoding/decoding method and apparatus, and recording medium storing bitstream
US12075075B2 (en) 2018-12-28 2024-08-27 Electronics And Telecommunications Research Institute Video encoding/decoding method, device, and recording medium storing bitstream therein
KR20200083321A (ko) 2018-12-28 2020-07-08 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN113273213B (zh) 2018-12-31 2024-07-02 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
CN118488209A (zh) 2018-12-31 2024-08-13 韩国电子通信研究院 图像编码/解码方法和发送比特流的方法
CN118612465A (zh) 2019-03-06 2024-09-06 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
CN120050429A (zh) 2019-03-08 2025-05-27 韩国电子通信研究院 图像编码/解码方法以及发送比特流的方法
CN119893083A (zh) 2019-03-08 2025-04-25 韩国电子通信研究院 图像编码/解码方法和设备以及存储比特流的记录介质
KR20200108798A (ko) 2019-03-11 2020-09-21 한국전자통신연구원 화면 내 블록 복사 기반 부호화/복호화 방법, 장치 및 비트스트림 저장매체
WO2020209671A1 (ko) 2019-04-10 2020-10-15 한국전자통신연구원 화면 내 예측에서 예측 모드 관련 신호를 시그널링하는 방법 및 장치
MX2021014726A (es) 2019-06-14 2022-01-18 Electronics & Telecommunications Res Inst Metodo y dispositivo de codificacion/decodificacion de matrices de cuantificacion, y medio de grabacion que almacena un flujo de bits.
CN120034646A (zh) 2019-06-17 2025-05-23 韩国电子通信研究院 基于帧内块复制的编/解码方法、装置和比特流存储介质
CN120321393A (zh) 2019-06-17 2025-07-15 韩国电子通信研究院 一种基于子块划分的图像编码/解码方法及装置
WO2020256447A1 (ko) 2019-06-18 2020-12-24 한국전자통신연구원 2차 변환을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN119922322A (zh) 2019-09-20 2025-05-02 韩国电子通信研究院 图像编码/解码方法以及发送流的方法
CN113875235B (zh) 2019-09-23 2025-03-14 韩国电子通信研究院 图像编码/解码方法和装置及存储比特流的记录介质
US12101476B2 (en) 2019-11-22 2024-09-24 Electronics And Telecommunications Research Institute Adaptive in-loop filtering method and device
EP4068783A4 (en) 2019-11-26 2023-12-13 Electronics and Telecommunications Research Institute Image encoding/decoding method and apparatus, and recording medium storing bitstream

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5412435A (en) * 1992-07-03 1995-05-02 Kokusai Denshin Denwa Kabushiki Kaisha Interlaced video signal motion compensation prediction system
FI92125C (fi) * 1992-10-30 1994-09-26 Nokia Mobile Phones Ltd Radiopuhelinjärjestelmä
US5453799A (en) * 1993-11-05 1995-09-26 Comsat Corporation Unified motion estimation architecture
JP3169783B2 (ja) 1995-02-15 2001-05-28 日本電気株式会社 動画像の符号化・復号システム
US6031826A (en) * 1996-08-27 2000-02-29 Ericsson Inc. Fast associated control channel technique for satellite communications
GB2317525B (en) * 1996-09-20 2000-11-08 Nokia Mobile Phones Ltd A video coding system
JP3774954B2 (ja) * 1996-10-30 2006-05-17 株式会社日立製作所 動画像の符号化方法
US6128047A (en) 1998-05-20 2000-10-03 Sony Corporation Motion estimation process and system using sparse search block-matching and integral projection
US6323914B1 (en) * 1999-04-20 2001-11-27 Lsi Logic Corporation Compressed video recording device with integrated effects processing
US6847684B1 (en) * 2000-06-01 2005-01-25 Hewlett-Packard Development Company, L.P. Zero-block encoding

Also Published As

Publication number Publication date
EP1282982A1 (en) 2003-02-12
WO2001086962A1 (en) 2001-11-15
KR20030011325A (ko) 2003-02-07
AU2001258472A1 (en) 2001-11-20
KR100772576B1 (ko) 2007-11-02
CN1457606A (zh) 2003-11-19
HUP0302617A3 (en) 2005-08-29
JP2003533142A (ja) 2003-11-05
JP4369090B2 (ja) 2009-11-18
ZA200208767B (en) 2003-10-30
HU229589B1 (en) 2014-02-28
BR0110627A (pt) 2003-03-18
CN100581266C (zh) 2010-01-13
EP1282982B1 (en) 2020-01-29
US20040156437A1 (en) 2004-08-12
US6711211B1 (en) 2004-03-23
US6954502B2 (en) 2005-10-11
HUP0302617A2 (hu) 2003-11-28
EE05487B1 (et) 2011-10-17
CA2408364C (en) 2008-07-15
EE200200627A (et) 2004-04-15
US20060013317A1 (en) 2006-01-19
CA2408364A1 (en) 2001-11-15

Similar Documents

Publication Publication Date Title
MXPA02010964A (es) Metodo para codificar y decodificar informacion de video, codificador de video compensado por movimiento y decodificador correspondiente.
RU2477575C2 (ru) Способ интерполяции значений под-пикселов
CA2755889C (en) Image processing device and method
EP1228645B1 (en) Adaptive motion vector field coding
EP1466477B1 (en) Coding dynamic filters
US20060002474A1 (en) Efficient multi-block motion estimation for video compression
US20060222074A1 (en) Method and system for motion estimation in a video encoder
CN112954365A (zh) Hevc帧间运动估算像素搜索改进方法
WO2002067590A1 (en) Video encoding of still images
CN113225558B (zh) 平滑定向和dc帧内预测
KR101691380B1 (ko) 시프팅 매트릭스를 이용한 dct 기반의 부화소 단위 움직임 예측 방법
KR100689215B1 (ko) H.264 에서 다운 샘플링과 에지 방향성을 이용한 고속예측 모드 결정 방법
Heising et al. Video coding using spatial extrapolation based motion field segmentation
AU2015255215B2 (en) Image processing apparatus and method
GB2379820A (en) Interpolating values for sub-pixels
AU2007237319B2 (en) Method for sub-pixel value interpolation
Murmu Fast motion estimation algorithm in H. 264 standard
HK1100115B (en) Method and apparatus for transferring video frame in telecommunication system
HK1100115A1 (en) Method and apparatus for transferring video frame in telecommunication system
HK1118411B (en) Method for sub-pixel value interpolation

Legal Events

Date Code Title Description
FG Grant or registration