ES2263208T3 - Procedimiento y aparato para codificar un vector de movimiento de una señal binaria de contorno. - Google Patents

Procedimiento y aparato para codificar un vector de movimiento de una señal binaria de contorno.

Info

Publication number
ES2263208T3
ES2263208T3 ES98925954T ES98925954T ES2263208T3 ES 2263208 T3 ES2263208 T3 ES 2263208T3 ES 98925954 T ES98925954 T ES 98925954T ES 98925954 T ES98925954 T ES 98925954T ES 2263208 T3 ES2263208 T3 ES 2263208T3
Authority
ES
Spain
Prior art keywords
field
movement
bab
vector
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES98925954T
Other languages
English (en)
Inventor
Jin Hun Video Research Center KIM
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WiniaDaewoo Co Ltd
Original Assignee
Daewoo Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Daewoo Electronics Co Ltd filed Critical Daewoo Electronics Co Ltd
Application granted granted Critical
Publication of ES2263208T3 publication Critical patent/ES2263208T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136—Incoming video signal characteristics or properties
    • H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51—Motion estimation or motion compensation
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103—Selection of coding mode or of prediction mode
    • H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103—Selection of coding mode or of prediction mode
    • H04N19/112—Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)

Abstract

Un procedimiento para usar en un codificador de señal de vídeo para codificar una señal de vídeo, el cual comprende información de textura e información de forma mediante el uso selectivo de una técnica de codificación progresiva o una técnica de codificación entrelazada destinadas a codificar un vector de movimiento de la información de forma, en el que la información de forma se divide en múltiples BABs de pixels binarios M x N y la información de textura tiene una pluralidad de macrobloques con el mismo número de pixels que el BAB, siendo M y N enteros positivos, respectivamente, comprendiendo las etapas de: (a) determinar un tipo_codificación (encoding_type) que represente la técnica de codificación más eficaz, entre la técnica de codificación progresiva y la técnica de codificación entrelazada, para codificar un BAB objetivo; (b) detectar, en respuesta al tipo_codificación, un predictor de vector de movimiento correspondiente al BAB objetivo entre los candidatos a predictor de vector de movimiento, entre los que se incluyen vectores de movimiento basados en cuadros y basados en campos para la información de forma y de textura; (c) determinar el vector de movimiento del BAB objetivo basándose en el predictor del vector de movimiento detectado; y (d) codificar el vector de movimiento del BAB objetivo.

Description

Procedimiento y aparato para codificar un vector de movimiento de una señal binaria de contorno.
Campo técnico de la invención
La presente invención se refiere a un procedimiento y un aparato de codificación de una señal con forma binaria; y, especialmente, a un procedimiento y un aparato de codificación de un vector de movimiento de una señal con forma binaria.
Técnica anterior
Los sistemas televisados digitalmente, tales como los sistemas de videoteléfono, de teleconferencias y de televisión de alta definición, requieren gran cantidad de información digital para definir cada señal de los cuadros de vídeo debido a que la señal de línea de vídeo de la señal de los cuadros de vídeo comprende una secuencia de datos digitales, a los que se denomina valores píxel. No obstante, debido a que la anchura de banda de frecuencia disponible en un canal de transmisión convencional es limitada, la transmisión de una gran cantidad de información digital a través de la misma requiere comprimir o reducir el volumen de la información mediante diversas técnicas de compresión, especialmente en el caso de los codificadores de señal de vídeo de bajo régimen de bits, tales como los sistemas de videoteléfono y de teleconferencias.
Una de dichas técnicas de codificación de señales de vídeo aplicables a un sistema de codificación de bajo régimen de bits se conoce con el nombre de técnica de codificación de síntesis de análisis dirigido al objeto, en la que una imagen de vídeo entrante se divide en objetos, procesándose tres conjuntos de parámetros definitorios de los datos de movimiento, contorno y pixels de cada objeto a través de diferentes canales de codificación.
Un ejemplo de dicho esquema de codificación dirigido al objeto es el denominado MPEG (Moving Picture Experts Group, (Grupo de Expertos de Imágenes en Movimiento)), fase 4 (MPEG-4), el cual proporciona una norma de codificación audiovisual que permite interactividad basada en contenido, mayor eficiencia en la codificación y/o accesibilidad universal en aplicaciones tales como comunicación en bajo régimen de bits, multimedia interactiva (por ejemplo, juegos, TV interactiva, etc.) y vigilancia de áreas.
Según el MPEG-4, una imagen entrante de vídeo se divide en una pluralidad de planos de objeto de vídeo (POV) correspondiente a entidades de un flujo de bits a las que un usuario puede acceder y que puede manipular. Un POV se puede definir como un objeto representado por un rectángulo limitador cuya anchura y altura pueden ser los múltiplos menores de 16 pixels (tamaño de macrobloque) que rodean a cada objeto para que el codificador pueda procesar la imagen de vídeo entrante sobre un principio de POV por POV.
Un POV descrito en el MPEG-4 incluye información de formas y texturas consistente en datos de luminancia y crominancia, en la que la información sobre la forma, representada en señales con forma binaria, se denomina plano alfa. El plano alfa se divide en una pluralidad de bloques alfa binarios, en los que cada bloque alfa binario (BAB) tiene 16 x 16 pixels binarios. Cada uno de estos pixels binarios se clasifica ya sea como píxel de fondo o como píxel objeto, usándose el píxel de fondo situado fuera del objeto para asignar un valor de píxel binario, tal como 0, y el píxel objeto del interior del objeto para asignar otro valor de píxel binario, tal como 255.
Cada uno de los pixels binarios del BAB se puede codificar mediante un procedimiento convencional de codificación de forma basado en un mapa de bits, tal como una disciplina de codificación aritmética basada en contexto (CAC). Por ejemplo, en modalidad intra, todos los pixels binarios de un BAB se codifican a través de una disciplina intra-CAC para generar un BAB intracodificado, calculándose el valor de contexto para cada píxel binario del BAB en la disciplina intra-CAC aplicando los valores de píxel binario de un número predeterminado, por ejemplo, 10, de pixels binarios que rodean a cada uno de dichos pixels binarios del BAB. En modalidad inter, por el contrario, todos los pixels binarios de un BAB en curso se codifican usando una disciplina intra-CAC destinada a generar un BAB intracodificado en el que un valor de contexto de cada píxel binario del BAB en curso de la disciplina inter-CAC se calcula aplicando los valores de píxel binario de un número predeterminado, tal como 4, de pixels binarios que rodean a cada uno de dichos pixels binarios del BAB en curso, y los valores de píxel binario de un número predeterminado, tal como 5, de pixels binarios dentro de un BAB de movimiento compensado limitado (véase MPEG-4 vídeo Verification Model Version 7.0, (modelo de verificación de vídeo MPEG-4, versión 7.0), de la International Organisation for Standardisation, Coding of Moving Pictures and Associated Audio Information, ISO/IEC JTC1/SC29/WG11 MPEG97/N1642, Bristol, abril de 1997, págs. 28-30).
Entretanto, en la disciplina convencional de codificación de forma binaria se codifica una señal de modalidad que represente o caracterice un correspondiente estado de codificación para el BAB de manera que mejore la eficiencia de la codificación, generándose, y seguidamente transmitiéndose, una correspondiente señal de modalidad codi-
ficada.
Por ejemplo, si todos los pixels binarios de un BAB son pixels de objeto, en lugar de codificar los valores de píxel binarios de los píxel de objeto para generar valores de pixels binarios codificados a transmitir, es preferible codificar una señal de modalidad indicativa de que todos los pixels binarios del BAB son pixels de objeto. Al emplear el procedimiento anteriormente descrito, es decir, al transmitir la correspondiente señal de modalidad codificada como información de forma binaria para el BAB, es posible incrementar la eficiencia de la codificación.
Respecto a la Tabla 1, existen siete modalidades de información alfa binaria de un BAB, según una disciplina convencional de codificación de modalidad, en la que una diferencia de vector de movimiento sobre la forma (DVM) del BAB consiste en la diferencia entre un vector de movimiento (VM) sobre la forma y un predictor del vector de movimiento sobre la forma (PVM). El PVM se determina por medio de una disciplina convencional de estimación de movimiento (véase MPEG-4 vídeo Verification Model Version 7.0, (modelo de verificación de vídeo MPEG-4, versión 7.0), de la International Organisation for Standardisation, Coding of Moving Pictures and Associated Audio Information, ISO/IEC JTC1/SC29/WG11 MPEG97/N1642, Bristol, abril de 1997, págs. 20-23).
TABLA 1 Modalidades de codificación
modalidad condición de codificación
0 DVM==0 \amp{2} no_actualización
1 DVM!=0 \amp{2} no_actualización
2 todo_0
3 todo_255
4 intra-CAC
5 DVM==0 \amp{2} inter-CAC
6 DVM!=0 \amp{2} inter-CAC
La modalidad 0 significa que una DVM para un BAB en curso es cero, pudiendo el BAB en curso ser representado por el candidato de BAB de mayor similitud, en tanto que la modalidad 1 determina que una DVM para un BAB tiene un valor diferente a cero, pudiendo el BAB en curso ser representado por el candidato a BAB de mayor similitud. Para el BAB en curso de modalidad 0, sólo se codifica la señal de modalidad, en tanto que el BAB de modalidad 1 se representa por la señal de modalidad y su DVM. Para la determinación de "no_actualización", se forma un BAB diferencial a causa de la diferencia entre cada píxel del BAB de mayor similitud y un correspondiente píxel del BAB en un BAB en curso, y se comprueba si un error en cualquiera de los subbloques de 4 x 4 de los pixels de 4 x 4 incluidos en el BAB diferencial es menor que un umbral predeterminado, siendo un error de subbloque, por ejemplo, la suma de los valores de píxel absolutos dentro del subbloque. Si los valores de error de todos los subbloques son iguales a o menores que el umbral, se determina que el BAB en curso es de modalidad 0 ó 1, dependiendo de su valor de DVM.
De forma similar, si un error para cualquiera de los subbloques de 4 x 4 es igual o menor que el umbral cuando los pixels del BAB en curso cambian todos a 0, el BAB en curso se codifica como modalidad "todos_0", es decir, modalidad 2. Si un error para cualquiera de los subbloques de 4 x 4 es igual o menor que el umbral cuando los pixels del BAB en curso cambian todos a 255, el BAB en curso se codifica como modalidad "todo_255", es decir, modalidad 3. Para el BAB en curso de modalidad 2 ó 3, sólo la modalidad de señal se codifica para el BAB en curso. Cuando un BAB en curso no pertenece a una cualquiera de las modalidades 0 a 3, se utiliza "intra-CAC" o "inter-CAC" para la codificación del BAB en curso, en tanto que un BAB en curso de modalidad 4 se representa por la señal de modalidad y los datos de BAB con codificación intra-CAC. Un BAB en curso de modalidad 5 se representa por la señal de modalidad y por los datos de BAB con codificación inter-CAC; un BAB en curso de modalidad 6 se representa por la señal de modalidad, por los datos de BAB con codificación inter-CAC, y por una DVM.
Los procedimientos convencionales de codificación de forma binaria que emplean el procedimiento convencional de codificación de modalidad anteriormente descrito son procedimientos de codificación básicamente progresivos. Es decir, en los procedimientos convencionales de codificación de forma binaria, no se usa una técnica de codificación entrelazada mediante el uso de un procedimiento de estimación de movimiento basado en campos. No obstante, y con el fin de incrementar la eficiencia de la codificación cuando la correlación espacial y/o temporal entre cuadros es inferior a la de los campos, la técnica de codificación entrelazada ha sido adaptada a la codificación de la señal de forma binaria. Un procedimiento y aparato, por ejemplo, para codificar y adaptar la señal de forma binaria usando una técnica de codificación progresiva y una técnica de codificación entrelazada, se describen en la solicitud de patente en tramitación junto con la presente de propiedad común de los Estados Unidos serie Nº 08/984.037, presentada el 2 de diciembre de 1997, titulada "METHOD AND APPARATUS FOR ENCODING MODE SIGNALS FOR USE IN A BINARY SHAPE CODER" ("Procedimiento y aparato de codificación de señales de modalidad usados en un codificador de forma binaria"), y en el correspondiente al documento EP-A-0 921 683 citado según 260 el artículo 54(3) EPC.
Al igual que la señal de forma binaria, es decir, la información de forma, la información de textura puede ser codificada de manera adaptable usando la codificación progresiva y las técnicas de codificación entrelazadas para mejorar la eficiencia de su codificación.
Como resultado del proceso de codificación adaptable, si la información de forma y la información de textura se codifican mediante la técnica de codificación progresiva, se pueden generar vectores de movimiento basado en cuadros según un procedimiento de estimación de movimiento basado en cuadros, o se pueden producir vectores de movimiento basado en campos basándose en un procedimiento de estimación de movimiento basado en campos.
No obstante, el procedimiento convencional de codificación de forma binaria usa solamente los vectores de movimiento que se basan en cuadros para codificar el vector de movimiento de la señal de forma binaria.
Descripción de la invención
Por consiguiente, uno de los principales objetos de la invención consiste en proporcionar un procedimiento y un aparato usado para codificar de manera adaptable una señal de forma binaria empleando una técnica de codificación progresiva y una técnica de codificación entrelazada destinadas a codificar eficazmente un vector de movimiento de la señal de forma binaria con vectores de movimiento basados en cuadros y vectores de movimiento basados en campos.
Según un aspecto de la presente invención, se proporciona un procedimiento para un codificador de señal de vídeo que codifica una señal de vídeo que comprende información de textura e información de forma utilizando selectivamente una técnica de codificación progresiva o una técnica de codificación entrelazada para codificar un vector de movimiento de la información de forma, según las cuales la información de forma se divide en múltiples BAB de pixels binarios M x N, la información de textura tiene una pluralidad de macrobloques con el mismo número de pixels que el BAB, M y N son enteros positivos, respectivamente, e incluyen las etapas de: (a) elegir un tipo_codificación (encoding_type) que represente la técnica de codificación más eficaz, entre la técnica de codificación progresiva y la técnica de codificación entrelazada, para codificar un BAB objetivo; (b) detectar, respecto al tipo_codificación, un predictor de vector de movimiento correspondiente al BAB objetivo entre los candidatos a predictor de vector de movimiento, que incluyen los vectores de movimiento basados en cuadros y basados en campos para la información de forma y de textura; (c) determinar el vector de movimiento del BAB objetivo basándose en el predictor del vector de movimiento detectado; y (d) codificar el vector de movimiento del BAB objetivo.
Según otro aspecto de la presente invención, se proporciona un aparato usado en un codificador de señal de vídeo para codificar una señal de vídeo que comprende información de textura e información de forma, empleándose selectivamente una técnica de codificación progresiva o una técnica de codificación entrelazada que codifica un vector de movimiento de la información de la forma, según la cual la información sobre la forma se divide en múltiples BAB de pixels binarios M x N, la información de textura tiene una pluralidad de macrobloques con el mismo número de pixels que el BAB, M y N son enteros positivos, respectivamente, y que incluye: un bloque de decisión tipo_codificación que determina la técnica de codificación más eficaz entre la técnica de codificación progresiva y la técnica de codificación entrelazada para codificar un BAB objetivo y consecuentemente producir una señal tipo_codificación; un bloque reformador para proporcionar, en respuesta a la señal tipo_codificación, ya sea el BAB objetivo o unos BAB de campos superior e inferior generados por la división del BAB objetivo según la técnica de codificación entrelazada; un bloque de determinación de PVM para detectar un predictor de vector de movimiento basado en cuadros o basado en campos correspondiente al BAB objetivo o los BAB de campos superior e inferior entre los candidatos de elementos de predicción de vector de movimiento, incluyendo vectores de movimiento basados en cuadros y vectores de movimiento basados en campos para la información de forma y textura; un bloque de estimación de movimiento para determinar el vector de movimiento correspondiente al BAB objetivo mediante el uso del predictor de vector de movimiento detectado; y un bloque de codificación de vector de movimiento para codificar el vector de movimiento correspondiente al BAB objetivo.
Breve descripción de los dibujos
Los citados y otros objetos y características de la presente invención resultarán evidentes a partir de la siguiente descripción de las realizaciones preferentes acompañada de los dibujos adjuntos, en los que:
La figura 1 muestra un diagrama de bloque de un codificador de señal de vídeo;
la figura 2 es un diagrama de bloque del codificador de forma 200 de la figura 1, según la presente invención;
la figura 3 representa un diagrama de bloque detallado del circuito de estimación de movimiento y compensación de movimiento 260 de la figura 2;
las figuras 4A a 4C proporcionan un diagrama de flujo que muestra el proceso de codificación de vectores de movimiento según la presente invención; y
las figuras 5A y 5B ilustran el proceso de determinación del predictor del vector de movimiento.
Formas de realización de la invención
Con referencia a la figura 1, se proporciona un diagrama de bloque de un codificador de señal de vídeo para codificar la información de textura y la información de forma de un objeto dentro de un cuadro (o POV). La información de textura se expresa a través de una pluralidad de macrobloques de pixels M x N, por ejemplo, 16 x 16 pixels, y la información de forma se representa a través de múltiples bloques alfa binarios (BAB) que tienen el mismo número de pixels que el macrobloque, siendo M y N unos respectivos enteros positivos.
Un codificador de textura 100 codifica de manera adaptable la información de textura acoplada al mismo basándose en un macrobloque y empleando una técnica de codificación progresiva o una técnica de codificación entrelazada. Según la técnica de codificación entrelazada, un macrobloque se divide en macrobloques de campos superior e inferior, teniendo cada macrobloque de campos M/2 x N pixels - por ejemplo, 8 x 16 pixels - y codificándose ambos macrobloques de campos sobre el principio de campo por campo. Por otro lado, en la técnica de codificación progresiva, el macrobloque se codifica sin proceso alguno, como el citado proceso de división.
Como resultado de los citados procesos de codificación de textura, el codificador de textura 100 proporciona información de textura codificada a un MUX de datos 300, y además proporciona información del vector de movimiento sobre la textura, generada mediante codificación del macrobloque y empleando la técnica de codificación progresiva o la técnica de codificación entrelazada, a un codificador de forma 200, a través de la línea L10. En este último caso, si no existe un vector de movimiento correspondiente al macrobloque, la información del vector de movimiento sobre la textura incluye datos que representan la ausencia de un vector de movimiento correspondiente al macrobloque, y, en caso de existir un vector de movimiento, incluye dicho vector de movimiento.
Específicamente, si el macrobloque se intercodifica por medio de la técnica de codificación progresiva, habrá un vector de movimiento basado en cuadros correspondiente al macrobloque. Por el contrario, si el macrobloque se intercodifica por medio de la técnica de codificación entrelazada, habrán dos vectores de movimiento basados en campos, es decir, un vector de movimiento de campos superior y otro inferior, correspondientes a los macrobloques de campos superior e inferior, respectivamente. Entretanto, si el macrobloque es intracodificado, su correspondiente vector de movimiento no quedará definido, por lo que no se dispondrá de un vector de movimiento.
El codificador de forma 200 también codifica de manera adaptable la información de forma alimentada al mismo sobre el principio de BAB por BAB, empleando la técnica de codificación progresiva o la técnica de codificación entrelazada y proporcionando información de forma codificada al MUX de datos 300.
El MUX de datos 300 multiplexa la información de textura codificada proporcionada desde el codificador de textura 100 y la información de forma codificada suministrada desde el codificador de forma 200 con objeto de proporcionar una señal de vídeo codificada a un transmisor (no mostrado) para su transmisión.
Con referencia a la figura 2, muestra un diagrama de bloque del codificador de forma 200 de la figura 1, según una realización de la presente invención. La información de forma está acoplada a un circuito de detección de modalidad de cuadros 210 a modo de BAB en curso.
El circuito de detección de modalidad de cuadros 210 examina si la modalidad de codificación del BAB en curso es "todo_0" o "todo_255". Específicamente, el BAB en curso se divide en T x S pixels -por ejemplo, 4 x 4 pixels binarios-,
en los que T y S son unos respectivos enteros positivos; por consiguiente, el BAB en curso tiene 4 subbloques, cada uno de los cuales contiene 4 x 4 pixels binarios.
Si un error entre cualquier subbloque del BAB en curso y un subbloque de un BAB todo_0 es menor que o igual a un umbral predeterminado, una señal indicativa B1 de tipo 1, que señala que la modalidad de codificación del BAB en curso es "todo_0", se proporciona desde el circuito de detección de modalidad de cuadros 210 a un circuito de codificación de cuadros 240, según la cual el BAB todo_0 es un BAB en el que cada valor de píxel es 0.
Si un error entre cualquier subbloque del BAB en curso y un subbloque de un BAB todo_255 es menor que o igual a un umbral predeterminado, una señal indicativa B1 de tipo 2, que señala que la modalidad de codificación del BAB en curso es "todo_255", se proporciona desde el circuito de detección de modalidad de cuadros 210 al circuito de codificación de cuadros 240, según la cual el BAB todo_255 es un BAB en el que cada valor de píxel es 255.
Si la modalidad de codificación del BAB en curso no es ni "todo_0" ni "todo_255", el circuito de detección de modalidad de cuadros 210 somete al BAB en curso a un circuito de decisión tipo_codificación 220, a un conmutador 230 y a un circuito de estimación de movimiento y compensación de movimiento (EM & CM) 260 a través de una línea L20.
El circuito de decisión tipo_codificación 220 establece la técnica de codificación más eficaz entre la técnica de codificación progresiva y la técnica de codificación entrelazada con objeto de codificar al BAB en curso proporcionado desde el circuito de detección de modalidad de cuadros 210, comparando la correlación espacial entre las hileras de pixels de un BAB en curso basado en cuadros y un BAB en curso basado en campos; además, produce una señal tipo_codificación E1 que representa la técnica de codificación determinada. La señal tipo_codificación E1 se proporciona al conmutador 230, al circuito EM & CM, y al multiplexor (MUX) 270.
El conmutador 230 proporciona el BAB en curso que se transmite a través de la línea L20 ya sea al circuito de codificación de cuadros 240, por la línea L22, o al circuito de codificación de campos 250, por la línea L24, en respuesta a la señal tipo_codificación E1. Más específicamente, si la señal tipo_codificación E1 representa a la técnica de codificación progresiva, la BAB en curso se acopla al circuito de codificación de cuadros 240, y, en caso contrario, el BAB en curso es alimentado al circuito de codificación de campos 250. A continuación, el circuito de codificación de cuadros 240 o el circuito de codificación de campos 250 realiza su operación, dependiendo del BAB en curso que haya sido incorporado.
Si el BAB en curso se acopla al circuito de codificación de cuadros 240 a través de la línea L22, el circuito de codificación de cuadros 240 codifica el BAB en curso en colaboración con el circuito EM & CM 260 empleando una codificación basada en cuadros, es decir, la técnica de codificación progresiva, con lo cual se genera la información de codificación de cuadros y la señal de modalidad de cuadros correspondiente al BAB en curso, representando la señal de modalidad de cuadros un estado de codificación de la información codificada en cuadros y mostrando una de las siete modalidades descritas en la Tabla 1 de la técnica anterior. Específicamente, la selección de modalidad entre las modalidades 2 y 3, es decir, las modalidades "todo_0" y "todo_250", se determina solamente sobre la base de la señal indicativa B1 suministrada desde el circuito de detección de modalidad de cuadros 210. La información de codificación de cuadros que contiene una señal de modalidad de cuadros se proporciona al MUX 270 a través de la línea L42, siendo dicha señal de modalidad de cuadros transferida al circuito EM & CM 260 a través de la línea L26.
Por el contrario, si el BAB en curso se incorpora al circuito de codificación de campos 250 a través de la línea L24, el circuito de codificación de campos 250 codifica el BAB en curso en colaboración con el circuito EM & CM 260 empleando una codificación basada en campos, es decir, la técnica de codificación entrelazada, con lo cual se genera la información de codificación de campos y la señal de modalidad de campos correspondiente al BAB en curso, ilustrando la señal de modalidad de campos un estado de codificación de la información codificada de campos y representando una de las cinco modalidades descritas en la Tabla 1, salvo las modalidades 2 y 3, ya que dichas modalidades 2 y 3 se determinan solamente en el circuito de codificación de cuadros 240, según se indicó anteriormente. La información codificada de campos que contiene una señal de modalidad de campos codificada se suministra al MUX 270 a través de la línea L44, y la señal de modalidad de campos se suministra al circuito EM & CM 260 a través de la línea L28.
El MUX2 270 multiplexa la información codificada de cuadros y la información codificada de campos junto con la señal tipo_codificación E1 para proporcionar la información de forma codificada al MUX de datos 300, figura 1.
En el caso anterior, la colaboración entre el circuito de codificación de cuadros 240 o el circuito de codificación de campos 250 respecto al circuito EM & CM 260 se ilustrará haciendo referencia a la figura 3.
El circuito EM & CM 260 realiza un proceso de estimación de movimiento basado en cuadros o basado en campos sobre el BAB en curso, a través de la línea L20, la señal tipo_codificación E1, la información del vector de movimiento sobre la textura proveniente del codificador de textura 100 de la figura 1, a través de la línea L10, y a través ya sea la señal de modalidad de cuadros, por la línea L26, o la señal de modalidad de campos, por la línea L28.
Respecto a la figura 3, muestra un diagrama de bloque detallado del circuito EM & CM 260 de la figura 2 según la realización de la presente invención.
La información sobre el vector de movimiento sobre la textura proporcionado desde el codificador de textura 100 de la figura 1 se almacena en la memoria de VM de textura 269-2.
El BAB en curso acoplado al circuito EM & CM 260 a través de la línea L20 se incorpora a un bloque reformador 262. En respuesta a la señal tipo_codificación E1, el bloque reformador 262 divide el BAB en curso en unos BABs de campos superior o inferior y suministra dichos BABs de campos superior e inferior a una línea L50, o bien transfiere directamente el BAB en curso a la línea L50, según lo cual el BAB de campos superior preferentemente contendrá cada hilera impar del BAB en curso y el BAB de campos inferior incluirá cada hilera par del BAB en curso. El BAB en curso o los BABs de campos superior e inferior emitidos desde el bloque reformador 262 son enviados a un bloque de estimación de movimiento 263 y a un bloque de reconstrucción 266 a través de la línea L50.
Entretanto, un bloque de determinación de PVM 261 detecta un predictor de vector de movimiento sobre la forma (PVM) correspondiente al BAB en curso entre una pluralidad de candidatos a PVM almacenados en la memoria VM de forma 269-1 y en la memoria VM de textura 269-2, según unas normas predeterminadas de la presente invención y en respuesta a la señal tipo_codificación E1. El procedimiento de detección del PVM se ilustra más adelante haciendo referencia a las figuras 4A a 4C y a las figuras 5A y 5B.
Según la presente invención, debido a que la información de forma y la información de textura de la señal de vídeo se codifican adaptablemente a través de las técnicas de codificación progresiva y entrelazada, la memoria VM de forma 269-1 almacena también una información del vector de movimiento sobre la forma que es similar a la información del vector de movimiento de textura almacenada en la memoria VM de textura 269-2. Es decir, si no existe un vector de movimiento correspondiente al BAB en curso, la información del vector de movimiento sobre la forma contendrá unos datos representativos de la ausencia del vector de movimiento correspondiente al BAB en curso, y, en caso de existir un vector de movimiento, incluirá dicho vector de movimiento, además de la información del vector de movimiento de textura.
Respecto a las modalidades de codificación de la señal de forma binaria mostrada en la Tabla 1, si se determina que la modalidad de codificación del BAB en curso es 0, 1, 5 ó 6, habrá al menos un vector de movimiento para el BAB en curso; si la modalidad de codificación se convierte en 2, 3 ó 4, no habrá ningún vector de movimiento para el BAB en curso, ya que no habrá ningún vector de movimiento definido para dichas modalidades 2, 3 y 4.
Además, si el BAB en curso se codifica por medio de la técnica de codificación progresiva, la información del vector de movimiento sobre la forma correspondiente al mismo puede incluir un vector de movimiento basado en cuadros, y si se codifica por medio de la técnica de codificación entrelazada, puede tener dos vectores de movimiento basados en campos, es decir, unos vectores de movimiento de campos superior e inferior, que corresponden a los BABs de campos superior e inferior del BAB en curso, debido a que los BABs de campos superior e inferior se codifican sobre el principio de campo por campo.
Según lo anterior, la información del vector de movimiento sobre la forma se determina en el bloque de selección 268, basándose en la señal de modalidad para cada BAB de la línea L26 o L28 y en un vector de movimiento (VM) de la línea L55, el cual puede ser generado o no generado para cada BAB en el bloque de estimación de movimiento 263.
A saber, si la modalidad de codificación de un BAB es una de entre las modalidades 2, 3 ó 4, aunque exista un correspondiente vector de movimiento, dicho vector de movimiento carecerá de importancia. Por consiguiente, y en tal caso, el bloque de selección 268 proporciona una información del vector de movimiento sobre la forma que indica que no hay vector de movimiento para la memoria de forma VM 269-1. Por el contrario, si la modalidad de codificación del BAB es una de entre las modalidades 0, 1, 5 y 6, existirá al menos un vector de movimiento para el BAB, por lo que la información del vector de movimiento sobre la forma que contiene el vector de movimiento se acoplará a la memoria de forma VM 269-1.
Según la anterior ilustración, los vectores de movimiento basados en cuadros y los vectores de movimiento basados en campos almacenados en la memoria de forma VM 269-2 y la memoria de textura VM 269-2 pueden ser candidatos a PVM. Por lo tanto, entre los candidatos a PVM, el bloque de determinación de PVM 261 detectará un PVM basado en cuadros o un PVM basado en campos para el BAB en curso en respuesta a la señal tipo_codificación E1.
Si el BAB en curso es codificado a través de la técnica de codificación progresiva, es decir, en la que la señal tipo_codificación E1 representa la codificación basada en cuadros, se genera un PVM basado en cuadros para el BAB en curso. Por el contrario, si el BAB en curso es codificado a través de la técnica de codificación entrelazada, es decir, en la que la señal tipo_codificación E1 representa la codificación basada en campos, se genera un PVM basado en campos que incluye unos BABs de campos superior e inferior, correspondientes a los BABs de campos superior e inferior, respectivamente, para el BAB en curso.
Seguidamente, el bloque de determinación del PVM 261 suministra el PVM determinado, es decir, el PVM basado en cuadros o el PVM basado en campos, al bloque de estimación de movimiento 263 y al bloque de cálculo de DVM 264.
El bloque de estimación de movimiento 263 establece un vector de movimiento (VM) basado en cuadros o un vector de movimiento basado en campos para el BAB en curso, dependiendo de si se trata de un PVM basado en cuadros o un PVM basado en campos que ha sido suministrado desde el bloque de determinación de PVM 261, para un BAB en curso o unos BABs de campo superior o inferior enviados desde el bloque reformador 262 y para un cuadro previo recuperado de la memoria de cuadros 267.
Por ejemplo, según el MPEG-4 anteriormente citado, el VM basado en cuadros para el BAB en curso se determina según su PVM basado en cuadros, de acuerdo con el siguiente procedimiento de estimación de movimiento basado en cuadros. Un error del MC se computa comparando el BAB indicado por el PVM basado en cuadros con el BAB en curso. Si el error del MC computado es inferior o igual a un umbral predeterminado para cualquier subbloque 4 x 4, el PVM basado en cuadros se utiliza directamente a modo de VM basado en cuadros, dando por terminado el procedimiento.
Sin embargo, en caso de no satisfacerse la anterior condición, se buscan candidatos a vector de movimiento en torno al PVM basado en cuadros, en tanto que se computan los errores 16 x 16 del MC comparando los BABs indicados por los candidatos a vector de movimiento con el BAB en curso. El alcance de la búsqueda será, por ejemplo, de +/-16 pixels, en torno al PVM basado en cuadros y en direcciones tanto horizontal como vertical. A continuación, se elige el candidato a vector de movimiento que minimiza el error del MC como el VM basado en cuadros del BAB en
curso.
El procedimiento de estimación de movimiento basado en campos se realiza también para cada BAB de campo en la forma descrita para el procedimiento de estimación de movimiento basado en cuadros.
El VM del BAB en curso, es decir, el VM basado en cuadros o el VM basado en campos, se suministra al bloque de cálculo de la DVM 264, al bloque de compensación de movimiento 265 y al bloque de selección 268 a través de la línea L55.
El bloque de cálculo de la DVM 264 computa una diferencia de vector de movimiento (DVM) para la forma correspondiente al BAB en curso, representando la DVM una diferencia entre el VM y el PVM, y proporciona la DVM a una línea L30 o L32, dependiendo del tipo_codificación del BAB en curso.
El bloque de compensación de movimiento 265 produce un BAB de movimiento compensado, basado en el VM derivado del bloque de estimación de movimiento 263 y del cuadro anterior recuperado de la memoria de cuadros 267, mediante el uso de un procedimiento convencional de compensación de movimiento; suministra el BAB de movimiento compensado a la línea L34 o la línea L36, dependiendo del tipo_codificación del BAB en curso; y proporciona este último al bloque de reconstrucción 266.
El bloque de reconstrucción 266 genera un BAB reconstruido mediante la selección del BAB de movimiento compensado suministrado desde el bloque de compensación de movimiento 265, o bien el BAB en curso o los BABs de campos superior o inferior en la línea L50 derivada del bloque reformador 262, en respuesta a la señal de modalidad del BAB en curso en las líneas L26 o L28. Por el contrario, si la señal de modalidad de la línea L26 enviada desde el circuito de codificación de cuadros 240 representa una de las modalidades 2 y 3, el BAB reconstruido se convierte en un BAB todo_0 o en un BAB todo_255.
El BAB reconstruido se suministra a la línea L38 o a la línea L40, dependiendo del tipo_codificación del BAB en curso, y se proporciona a la memoria de cuadros 267 para producir un cuadro en curso reconstruido, en el que el cuadro en curso reconstruido se almacena en la memoria de cuadros 267 a modo de cuadro previo.
Según lo anterior, si el BAB en curso se codifica de acuerdo con la técnica de codificación progresiva, se producen unas entregas del bloque de cálculo DVM 264, del bloque de compensación de movimiento 265 y del bloque de reconstrucción 266 sobre el principio de cuadro por cuadro, siendo introducidas al circuito de codificación de cuadros 240 a través de las líneas L30, L34 y L38, respectivamente; en caso contrario, se generan sobre el principio de campo por campo, siendo alimentadas al circuito de codificación de campos 250 a través de las líneas L32, L36 y L40, respectivamente.
A continuación, el circuito de codificación de cuadros 240 determina la modalidad de codificación del BAB en curso y produce unos datos codificados por cuadros sobre la base de la señal de indicación B1, el BAB en curso transferido a la misma a través del conmutador 230, la DVM basada en cuadros de la línea L30, el BAB de movimiento compensado de la línea L34 y el BAB reconstruido de la línea L38, según se describe en la técnica anterior.
De forma similar, el circuito de codificación de campos 250 determina las modalidades de codificación de los BABs de campo superior e inferior correspondientes al BAB en curso, generando los datos de codificación de campos correspondientes a los BABs de campos superior e inferior basándose en el BAB en curso acoplado a los mismos a través del conmutador 230, la DVM basada en campos en la línea L32, los BABs con compensación de movimiento correspondientes a los BABs de campos superior e inferior de la línea L36, y el BAB reconstruido de la línea L40.
A continuación se ilustra más específicamente un procedimiento de determinación y codificación de un vector de movimiento, haciendo referencia a las figuras 4A a 4C y a las figuras 5A y 5B.
Según la presente invención, el PVM del BAB en curso se selecciona entre una pluralidad de candidatos a PVM compuestos por vectores de movimiento para la forma de los BABs, tal como S1 a S3, los cuales rodean a un BAB en curso, tal como el SB, según se aprecia en la figura 5A, y los vectores de movimiento para la textura de los macrobloques que rodean al macrobloque, tal como T1 a T3, donde el TB corresponde al BAB en curso SB, según se aprecia en la figura 5B.
Cada uno de los BABs que rodean al BAB en curso y los macrobloques que rodean al BAB en curso tiene un vector de movimiento basado en cuadros o un vector de movimiento basado en campos, incluyendo los vectores de movimiento de campos superior e inferior, dependiendo de su tipo_ codificación.
Por consiguiente, para establecer el PVM basado en cuadros o el PVM basado en campos del BAB en curso, los candidatos a PVM son recorridos de acuerdo con la prioridad determinada por el MPEG-4 y el tipo_codificación del BAB en curso. Según el MPEG-4, los BABs S1 a S3 que rodean al BAB en curso SB tienen una prioridad en el orden de S1, S2 y S3, según muestra la figura 5A, y, de forma similar, los macrobloques T1 a T3 que rodean al macrobloque TB son recorridos en el orden de T1, T2 y T3. La prioridad dependiente del tipo_codificación se describirá haciendo referencia a las figuras 4A a 4C.
En la figura 4A, etapa S10, se verifica si el tipo_codificación del BAB en curso establecido en el circuito de decisión de tipo_codificación 220 de la figura 2 es del tipo de codificación progresiva. Si en la etapa S10 se determina que el tipo_codificación del BAB en curso es del tipo de codificación progresiva, entre los candidatos a PVM, los vectores de movimiento basados en cuadros son recorridos antes que los vectores de movimiento basados en campos. Por consiguiente, para establecer el PVM basado en cuadros del BAB en curso, el procedimiento se dirige en primer lugar a la etapa S20.
En la etapa S20, se verifica si existe un adecuado vector de movimiento basado en cuadros para la forma (VM_{S}) entre los candidatos a PVM, en el orden de S1 a S3 que muestra la figura 5A.
Si existe un VM_{s} basado en cuadros, el procedimiento se dirige a la etapa S70, determinándose el VM_{S} basado en cuadros detectado como el PVM basado en cuadros del BAB en curso en la etapa S70. A continuación, el procedimiento prosigue a la etapa S90.
En caso contrario, en la etapa S30 se comprueba si existe un VM_{S} basado en campos apropiado entre los candidatos a PVM en el orden de S1 a S3 mostrado en la figura 5A.
Como resultado del proceso de detección de la etapa S30, en caso de existir un VM_{S} basado en campos que incluye vectores de movimiento de campos superior e inferior, el procedimiento prosigue a la etapa S80.
En la etapa S80, se calcula la media de los vectores de movimiento de campos superior e inferior incluidos en el VM_{S} basado en campos, determinándose dicha media como el PVM basado en cuadros del BAB en curso. A continuación, el procedimiento prosigue a la etapa S90.
Si no se detecta ningún VM_{S} basado en campos en la etapa S30, en la etapa S40 se comprueba si existe un adecuado vector de movimiento basado en cuadros para la textura (VM_{T}) entre los candidatos a PVM, en el orden de T1 a T3 que muestra la figura 5B.
Si existe un VM_{T} basado en cuadros, se determina si el VM_{T} basado en cuadros es el PVM basado en cuadros del BAB en curso en la etapa S70; en caso de no serlo, el procedimiento prosigue a la etapa S50.
Respecto a la etapa S50, se comprueba si existe un adecuado vector de movimiento VM_{T} basado en campos entre los candidatos a PVM, en la misma secuencia que en la etapa S40. Si existe un VM_{T} basado en campos, incluyendo vectores de movimiento de campos superior e inferior, el procedimiento prosigue a la etapa S80.
En la etapa S80, se calcula la media de los vectores de movimiento de campos superior e inferior incluidos en el VM_{T} basado en campos, determinándose dicha media como el PVM basado en cuadros del BAB en curso. A continuación, el procedimiento prosigue a la etapa S90.
Por otro lado, como resultado de los procesos de detección de las etapas S20 a S50, si se observa que no existe ni un vector de movimiento basado en cuadros ni un vector de movimiento basado en campos entre los candidatos a PVM, el PVM basado en cuadros del BAB en curso se fija en cero, en la etapa S60.
Las etapas S20 a S80, que determinan el PVM basado en cuadros de BAB en curso, se realizan en el bloque de determinación de PVM 261 de la figura 3.
A continuación, el procedimiento prosigue a la etapa S90, figura 4C; en dicha etapa S90, se determina el VM basado en cuadros del BAB en curso basado en el PVM basado en cuadros, de acuerdo con el MPEG-4 anteriormente citado y según se realiza en el bloque de estimación de movimiento 263 mostrado en la figura 3.
En la etapa S100, se calcula la DVM basada en cuadros del BAB en curso, restando el PVM basado en cuadros del VM basado en cuadros del BAB en curso.
A continuación, la DVM basada en cuadros se transfiere al circuito de codificación de cuadros 240 a través de la línea L30, según se aprecia en la figura 2, en la etapa S110, finalizando este procedimiento de determinación y codificación de vectores de movimiento.
Por otro lado, en la etapa S10, según la figura 4A, si el tipo_codificación del BAB en curso no es del tipo de codificación progresiva, es decir, si el BAB en curso se codifica mediante la técnica de codificación entrelazada, los vectores de movimiento basados en campos son recorridos antes que los vectores de movimiento basados en cuadros, y el procedimiento prosigue a la etapa S120, figura 4B.
En la etapa S120, se verifica si existe un adecuado VM_{S} basado en campos que incluya unos vectores de movimiento de campos superior e inferior entre los candidatos a PVM en el orden S1 a S3, según la figura 5A. Si existe un VM_{S} basado en campos, el procedimiento prosigue a la etapa S160.
En la etapa S160, el PVM basado en campos que incluye los PVM de campos superior e inferior se determina sobre la base de los VM_{S} basados en campos, correspondiendo los PVMs de campos superior e inferior a los BABs de campos superior e inferior del BAB en curso, respectivamente.
Según la realización de la presente invención, el vector de movimiento de campos superior del VM_{S} basado en campos se establece como el PVM de campos superior y el vector de movimiento de campos inferior se establece como el PVM de campos inferior del BAB en curso.
Según otra realización de la presente invención, el vector de movimiento de campos inferior del VM_{S} basado en campos se establece a modo de PVMs de campos superior e inferior del BAB en curso.
\newpage
Por otro lado, si no se selecciona el adecuado VM_{S} basado en campos en la etapa S120, en la etapa S130 se verifica si existe un VM_{S} basado en cuadros adecuado entre los candidatos a PVM, en el orden de S1 a S3.
Si existe un VM_{S} basado en cuadros, el VM_{S} basado en cuadros se determina a modo de los PVMs de campos superior e inferior del BAB en curso en la etapa S160; en caso contrario, el procedimiento prosigue a la etapa S140.
En la etapa S140, se comprueba si existe un VM_{T} basado en campos que incluya vectores de movimiento de campos superior e inferior entre los candidatos a PVM, en el orden de T1 a T3 que muestra la figura 5B.
Si se determina que existe un VM_{T} basado en campos, el PVM basado en campos del BAB en curso se establece en la etapa S160, igual que la determinación del PVM basado en campos, empleando el VM_{S} basado en campos anteriormente citado.
Por otro lado, si no se detecta el VM_{T} basado en campos en la etapa S140, se comprueba, en la etapa S150, si existe un VM_{T} basado en cuadros entre los candidatos a PVM, en la misma secuencia que en la etapa S140.
Si existe un VM_{T} basado en cuadros, el VM_{T} basado en cuadros se establece a modo de PVMs de campos superior e inferior del BAB en curso en la etapa S160. A continuación, el procedimiento prosigue a la etapa S180, según la figura 4C.
Como resultado de las etapas S120 a S150, si se determina que no existe ni un vector de movimiento basado en cuadros ni un vector de movimiento basado en campos entre los candidatos a PVM, el PVM basado en campos del BAB en curso se sitúa en cero, en la etapa S170. Seguidamente, el procedimiento prosigue a la etapa S180, figura 4C.
En la etapa S180, el VM basado en campos del BAB en curso se determina siguiendo el principio de campo por campo, según el MPEG-4 anteriormente citado, con objeto de producir los VMs de campos superior e inferior del BAB en curso.
Si en la etapa S180 se establece el VM basado en campos, se calcula la DVM empleando el VM y el PVM basados en campos del BAB en curso siguiendo el principio de campo por campo, en la etapa S190.
En la etapa S200, la DVM basada en campos se transfiere al circuito de codificación de campos 250 a través de la línea L32, según se aprecia en la figura 2, finalizando así este procedimiento de determinación y codificación de vectores de movimiento.
Aunque la presente invención se ha descrito solamente en relación con ciertas realizaciones preferentes, se pueden realizar modificaciones y variaciones sin apartarse del ámbito de la presente invención, según se describe en las reivindicaciones siguientes.

Claims (16)

1. Un procedimiento para usar en un codificador de señal de vídeo para codificar una señal de vídeo, el cual comprende información de textura e información de forma mediante el uso selectivo de una técnica de codificación progresiva o una técnica de codificación entrelazada destinadas a codificar un vector de movimiento de la información de forma, en el que la información de forma se divide en múltiples BABs de pixels binarios M x N y la información de textura tiene una pluralidad de macrobloques con el mismo número de pixels que el BAB, siendo M y N enteros positivos, respectivamente, comprendiendo las etapas de:
(a)
determinar un tipo_codificación (encoding_type) que represente la técnica de codificación más eficaz, entre la técnica de codificación progresiva y la técnica de codificación entrelazada, para codificar un BAB objetivo;
(b)
detectar, en respuesta al tipo_codificación, un predictor de vector de movimiento correspondiente al BAB objetivo entre los candidatos a predictor de vector de movimiento, entre los que se incluyen vectores de movimiento basados en cuadros y basados en campos para la información de forma y de textura;
(c)
determinar el vector de movimiento del BAB objetivo basándose en el predictor del vector de movimiento detectado; y
(d)
codificar el vector de movimiento del BAB objetivo.
2. El procedimiento según la reivindicación 1, en el que el candidato a predictor de los vectores de movimiento incluye vectores de movimiento basados en cuadros y basados en campos para los BABs que rodean al BAB objetivo, los cuales han sido previamente codificados, además de vectores de movimiento basados en cuadros y basados en campos, que también han sido previamente codificados, para los macrobloques que rodean al macrobloque correspondiente al BAB objetivo, en el que cada vector de movimiento basado en campos dispone de unos vectores de movimiento de campos superior e inferior correspondientes a unos bloques de campos superior e inferior, respectivamente, de un BAB o de un macrobloque.
3. El procedimiento según la reivindicación 2, en el que, si el tipo de codificación progresiva es determinado como el tipo_codificación del BAB objetivo en la etapa (a), la etapa (b) detecta que el predictor de vector de movimiento recorre los candidatos a predictor de vector de movimiento en el orden de los vectores de movimiento basados en cuadros para la información de la forma, los vectores de movimiento basados en campos para la información de la forma, los vectores de movimiento basados en cuadros para la información de la textura y los vectores de movimiento basados en campos para la información de la textura.
4. El procedimiento según la reivindicación 3, en el que, en la etapa (b), si uno de los vectores de movimiento basados en campos es seleccionado para detectar el predictor del vector de movimiento, la etapa (b) incluye las etapas de:
(b11)
calcular la media de los vectores de movimiento de campos superior e inferior del vector de movimiento basado en campos seleccionado; y
(b12)
establecer la media como el predictor del vector de movimiento.
5. El procedimiento según la reivindicación 2, en el que, si se elige el tipo de codificación entrelazada como el tipo_codificación del BAB objetivo en la etapa (a), la etapa (b) incluirá las etapas de:
(b21)
dividir el BAB objetivo en un BAB de campos superior e inferior; y
(b22)
determinar el predictor de vector de movimiento que tenga predictores de vector de movimiento de campos superior e inferior correspondientes a los BABs de campos superior e inferior, respectivamente, de manera que recorran los candidatos a vector de movimiento en el orden de los vectores de movimiento basados en campos para la información de la forma, los vectores de movimiento basados en cuadros para la información de la forma, los vectores de movimiento basados en campos para la información de la textura y los vectores de movimiento basados en cuadros para la información de la textura.
6. El procedimiento según la reivindicación 5, en el que, en la etapa (b22), si uno de los vectores de movimiento basados en cuadros es seleccionado para detectar los predictores de vector de movimiento de campos superior e inferior, la etapa (b22) asigna el vector seleccionado de movimiento basado en cuadros a los BABs de campos superior e inferior a modo de predictores de vector de movimiento de campos superior e inferior, respectivamente.
7. El procedimiento según la reivindicación 5, en el que, en la etapa (b22), si uno de los vectores de movimiento basados en campos es seleccionado para detectar los predictores de vector de movimiento de campos superior e inferior, la etapa (b22) determina el vector de movimiento de campos superior del vector de movimiento basado en campos seleccionado a modo de predictor del vector de movimiento de campos superior, y determina el vector de movimiento de campos inferior del mismo a modo de predictor del vector de movimiento de campos
inferior.
8. El procedimiento según la reivindicación 5, en el que, en la etapa (b22), si uno de los vectores de movimiento basados en campos es seleccionado para detectar los predictores de vector de movimiento de campos superior e inferior, la etapa (b22) asigna el vector de movimiento de campos inferior del vector de movimiento basado en campos seleccionado a los BABs de campos superior e inferior del BAB objetivo a modo de predictores del vector de movimiento de campos superior e inferior, respectivamente.
9. Un aparato para usar en un codificador de señal de vídeo para codificar una señal de vídeo, el cual comprende información de textura e información de forma mediante el uso selectivo de una técnica de codificación progresiva o una técnica de codificación entrelazada para codificar un vector de movimiento de la información de forma, en la que dicha información de forma se divide en múltiples BABs de pixels binarios M x N, y la información de textura dispone de una pluralidad de macrobloques con el mismo número de pixels que el BAB, siendo M y N enteros positivos, respectivamente, y que comprende:
un medio (220) para establecer una técnica de codificación más eficaz entre las técnicas de codificación progresiva y entrelazada para codificar un BAB objetivo con el fin de producir una señal de tipo_codificación;
un medio (230) para proporcionar, en respuesta a la señal de tipo_codificación, ya sea un BAB objetivo o unos BABs de campos superior e inferior que se generan dividiendo el BAB objetivo según la técnica de codificación entrelazada;
un medio (261) de determinación del PVM para detectar un predictor de vector de movimiento basado en cuadros o basado en campos correspondiente al BAB objetivo o a los BABs de campos superior e inferior entre los candidatos a predictor de vector de movimiento, el cual incluye vectores de movimiento basados en cuadros y basados en campos para la información sobre la forma y la textura;
un medio (263) para establecer el vector de movimiento correspondiente al BAB objetivo mediante el uso del predictor del vector de movimiento detectado; y
un medio (264, 265) para codificar el vector de movimiento correspondiente al BAB objetivo.
10. El aparato según se ha descrito en la reivindicación 9, en el que los candidatos a predictores del vector de movimiento incluyen vectores de movimiento basados en cuadros y basados en campos correspondientes a los BABs que rodean al BAB objetivo, los cuales han sido previamente codificados, además de vectores de movimiento basados en cuadros y basados en campos correspondientes a macrobloques que rodean al macrobloque correspondiente al BAB objetivo, y que también han sido previamente codificados, en el que cada vector de movimiento basado en campos dispone de unos vectores de movimiento de campos superior e inferior correspondientes a bloques de campos superior e inferior, respectivamente, de un BAB o de un macrobloque.
11. El aparato según se ha descrito en la reivindicación 10, en el que el medio de determinación del PVM selecciona el predictor del vector de movimiento basado en cuadros haciendo recorrer a los candidatos a predictor de vector de movimiento en el orden de los vectores de movimiento basados en cuadros para la información sobre la forma, los vectores de movimiento basados en campos para la información sobre la forma, los vectores de movimiento basados en cuadros para la información sobre la textura, y los vectores de movimiento basados en campos para la información sobre la textura.
12. El aparato según se ha descrito en la reivindicación 11, en el que, si el predictor de vector de movimiento basado en cuadros es detectado entre los vectores de movimiento basados en campos para la información sobre la forma y la textura, el medio de determinación del PVM calcula la media de los vectores de movimiento de campos superior e inferior del vector de movimiento basado en campos detectado y designa la media como predictor de vector de movimiento basado en cuadros.
13. El aparato según se ha descrito en la reivindicación 10, en el que el medio de determinación del PVM selecciona el predictor del vector de movimiento basado en campos, incluyendo unos predictores de vector de movimiento basado en campos superior e inferior correspondientes a los BABs de campo superior e inferior, respectivamente, haciendo recorrer a los candidatos a vector de movimiento en el orden de los vectores de movimiento basados en campos para la información sobre la forma, los vectores de movimiento basados en cuadros para la información sobre la forma, los vectores de movimiento basados en campos para la información sobre la textura, y los vectores de movimiento basados en cuadros para la información sobre la textura.
14. El aparato según se ha descrito en la reivindicación 13, en el que, si el predictor de vector de movimiento basado en campos es detectado entre los vectores de movimiento basados en cuadros para la información sobre la forma y la textura, el medio de determinación del PVM asigna al vector de movimiento basado en cuadros detectado a los BABs de campos superior e inferior a modo de predictores de vector de movimiento de campos superior e inferior, respectivamente.
15. El aparato según se ha descrito en la reivindicación 13, en el que, si el predictor de vector de movimiento basado en campos es detectado entre los vectores de movimiento basados en campos para la información sobre la forma y la textura, el medio de determinación del PVM establece el vector de movimiento de campos superior del vector de movimiento basado en campos detectado como el predictor del vector de movimiento de campos superior, y el vector de movimiento de campos inferior del mismo como el predictor del vector de movimiento de campos inferior.
16. El aparato según se ha descrito en la reivindicación 13, en el que, si el predictor de vector de movimiento basado en campos es detectado entre los vectores de movimiento basados en campos para la información sobre la forma y la textura, el medio de determinación del PVM asigna el vector de movimiento de campos inferior del vector de movimiento basado en campos detectado a los BABs de campos superior e inferior del BAB objetivo como predictores de vector de movimiento de campos superior e inferior, respectivamente.
ES98925954T 1998-03-30 1998-06-08 Procedimiento y aparato para codificar un vector de movimiento de una señal binaria de contorno. Expired - Lifetime ES2263208T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1019980011093A KR100281462B1 (ko) 1998-03-30 1998-03-30 격행 부호화에서 이진 형상 신호의 움직임 벡터 부호화 방법
KR98-011093 1998-03-30

Publications (1)

Publication Number Publication Date
ES2263208T3 true ES2263208T3 (es) 2006-12-01

Family

ID=36371734

Family Applications (1)

Application Number Title Priority Date Filing Date
ES98925954T Expired - Lifetime ES2263208T3 (es) 1998-03-30 1998-06-08 Procedimiento y aparato para codificar un vector de movimiento de una señal binaria de contorno.

Country Status (9)

Country Link
US (1) US6243418B1 (es)
EP (1) EP1075765B1 (es)
JP (1) JP3924071B2 (es)
KR (1) KR100281462B1 (es)
CN (1) CN1147153C (es)
AU (1) AU748276B2 (es)
DE (1) DE69834348T2 (es)
ES (1) ES2263208T3 (es)
WO (1) WO1999051034A1 (es)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100523908B1 (ko) * 1997-12-12 2006-01-27 주식회사 팬택앤큐리텔 격행주사 영상에 대한 영상신호 부호화 장치 및 그 방법
US6563953B2 (en) * 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
US6983018B1 (en) * 1998-11-30 2006-01-03 Microsoft Corporation Efficient motion vector coding for video compression
US6483874B1 (en) * 1999-01-27 2002-11-19 General Instrument Corporation Efficient motion estimation for an arbitrarily-shaped object
US6973126B1 (en) * 1999-03-05 2005-12-06 Kdd Corporation Video coding apparatus according to a feature of a video picture
US6483876B1 (en) * 1999-12-28 2002-11-19 Sony Corporation Methods and apparatus for reduction of prediction modes in motion estimation
US6690728B1 (en) 1999-12-28 2004-02-10 Sony Corporation Methods and apparatus for motion estimation in compressed domain
US6671319B1 (en) 1999-12-28 2003-12-30 Sony Corporation Methods and apparatus for motion estimation using neighboring macroblocks
JP2002064821A (ja) * 2000-06-06 2002-02-28 Office Noa:Kk 動画像情報の圧縮方法およびそのシステム
JP4610195B2 (ja) 2001-12-17 2011-01-12 マイクロソフト コーポレーション スキップマクロブロックコード化
US7003035B2 (en) 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US7280700B2 (en) * 2002-07-05 2007-10-09 Microsoft Corporation Optimization techniques for data compression
US7154952B2 (en) * 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
US7092442B2 (en) * 2002-12-19 2006-08-15 Mitsubishi Electric Research Laboratories, Inc. System and method for adaptive field and frame video encoding using motion activity
US7499495B2 (en) 2003-07-18 2009-03-03 Microsoft Corporation Extended range motion vectors
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US7426308B2 (en) * 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
US7609763B2 (en) 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames
US7738554B2 (en) 2003-07-18 2010-06-15 Microsoft Corporation DC coefficient signaling at small quantization step sizes
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7577200B2 (en) * 2003-09-07 2009-08-18 Microsoft Corporation Extended range variable length coding/decoding of differential motion vector information
US7599438B2 (en) 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
US7620106B2 (en) * 2003-09-07 2009-11-17 Microsoft Corporation Joint coding and decoding of a reference field selection and differential motion vector information
US7616692B2 (en) * 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
US7606308B2 (en) * 2003-09-07 2009-10-20 Microsoft Corporation Signaling macroblock mode information for macroblocks of interlaced forward-predicted fields
US7567617B2 (en) * 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7623574B2 (en) * 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US7317839B2 (en) * 2003-09-07 2008-01-08 Microsoft Corporation Chroma motion vector derivation for interlaced forward-predicted fields
KR100703760B1 (ko) * 2005-03-18 2007-04-06 삼성전자주식회사 시간적 레벨간 모션 벡터 예측을 이용한 비디오인코딩/디코딩 방법 및 장치
US20060222251A1 (en) * 2005-04-01 2006-10-05 Bo Zhang Method and system for frame/field coding
US20060230428A1 (en) * 2005-04-11 2006-10-12 Rob Craig Multi-player video game system
US8270439B2 (en) * 2005-07-08 2012-09-18 Activevideo Networks, Inc. Video game system using pre-encoded digital audio mixing
US9061206B2 (en) * 2005-07-08 2015-06-23 Activevideo Networks, Inc. Video game system using pre-generated motion vectors
US8284842B2 (en) * 2005-07-08 2012-10-09 Activevideo Networks, Inc. Video game system using pre-encoded macro-blocks and a reference grid
US8118676B2 (en) * 2005-07-08 2012-02-21 Activevideo Networks, Inc. Video game system using pre-encoded macro-blocks
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
US9077960B2 (en) * 2005-08-12 2015-07-07 Microsoft Corporation Non-zero coefficient block pattern coding
JP5106419B2 (ja) 2006-01-09 2012-12-26 エルジー エレクトロニクス インコーポレイティド 映像信号のエンコーディング/デコーディング方法及び装置
KR20070074452A (ko) * 2006-01-09 2007-07-12 엘지전자 주식회사 영상신호의 엔코딩/디코딩시의 레이어간 예측 방법
US7903894B2 (en) * 2006-10-05 2011-03-08 Microsoft Corporation Color image coding using inter-color correlation
WO2008088752A2 (en) 2007-01-12 2008-07-24 Ictv, Inc. System and method for encoding scrolling raster images
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US8254455B2 (en) 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
KR101337206B1 (ko) 2007-10-12 2013-12-06 삼성전자주식회사 블록 샘플링을 이용한 영상의 움직임 추정 시스템 및 방법.
CN101505419B (zh) * 2008-02-05 2011-06-15 晨星半导体股份有限公司 一种决定移动向量的影像处理装置及其相关方法
CN101272498B (zh) * 2008-05-14 2010-06-16 杭州华三通信技术有限公司 一种视频编码方法及视频编码装置
CN101631241B (zh) * 2008-07-14 2011-05-25 晨星软件研发(深圳)有限公司 影像处理方法及装置
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
US8194862B2 (en) * 2009-07-31 2012-06-05 Activevideo Networks, Inc. Video game system with mixing of independent pre-encoded digital audio bitstreams
AU2011315950B2 (en) 2010-10-14 2015-09-03 Activevideo Networks, Inc. Streaming digital video between video devices using a cable television system
WO2012138660A2 (en) 2011-04-07 2012-10-11 Activevideo Networks, Inc. Reduction of latency in video distribution networks using adaptive bit rates
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
WO2014145921A1 (en) 2013-03-15 2014-09-18 Activevideo Networks, Inc. A multiple-mode system and method for providing user selectable video content
WO2014197879A1 (en) 2013-06-06 2014-12-11 Activevideo Networks, Inc. Overlay rendering of user interface onto source video
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
CN113079372B (zh) 2021-06-07 2021-08-06 腾讯科技(深圳)有限公司 帧间预测的编码方法、装置、设备及可读存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU570439B2 (en) * 1983-03-28 1988-03-17 Compression Labs, Inc. A combined intraframe and interframe transform coding system
JPH04177992A (ja) * 1990-11-09 1992-06-25 Victor Co Of Japan Ltd 階層性を有する画像符号化装置
JP3374989B2 (ja) * 1993-03-26 2003-02-10 ソニー株式会社 画像信号符号化方法および画像信号符号化装置、ならびに画像信号復号化方法および画像信号復号化装置
JP3050736B2 (ja) * 1993-12-13 2000-06-12 シャープ株式会社 動画像符号化装置
KR0170932B1 (ko) * 1994-12-29 1999-03-20 배순훈 영상의 시각적, 기하학적 특성에 따른 고속 움직임 추정장치
JP3169783B2 (ja) * 1995-02-15 2001-05-28 日本電気株式会社 動画像の符号化・復号システム
KR0181052B1 (ko) * 1995-03-31 1999-05-01 배순훈 고화질 영상 시스템의 영역 분할 장치
EP0799550B1 (en) * 1995-10-25 2000-08-09 Koninklijke Philips Electronics N.V. Segmented picture coding method and system, and corresponding decoding method and system
US5991447A (en) * 1997-03-07 1999-11-23 General Instrument Corporation Prediction and coding of bi-directionally predicted video object planes for interlaced digital video
KR100256022B1 (ko) * 1997-10-14 2000-05-01 전주범 이진형상신호부호화에있어서의모드부호화방법
KR100258111B1 (ko) * 1997-10-31 2000-06-01 전주범 이진형상신호적응적부호화장치
US5973743A (en) * 1997-12-02 1999-10-26 Daewoo Electronics Co., Ltd. Mode coding method and apparatus for use in an interlaced shape coder
US6094225A (en) * 1997-12-02 2000-07-25 Daewoo Electronics, Co., Ltd. Method and apparatus for encoding mode signals for use in a binary shape coder

Also Published As

Publication number Publication date
EP1075765A1 (en) 2001-02-14
WO1999051034A1 (en) 1999-10-07
DE69834348T2 (de) 2006-09-14
US6243418B1 (en) 2001-06-05
JP3924071B2 (ja) 2007-06-06
KR19990076276A (ko) 1999-10-15
CN1147153C (zh) 2004-04-21
CN1230855A (zh) 1999-10-06
AU748276B2 (en) 2002-05-30
JPH11298906A (ja) 1999-10-29
AU7789598A (en) 1999-10-18
DE69834348D1 (de) 2006-06-01
EP1075765B1 (en) 2006-04-26
KR100281462B1 (ko) 2001-02-01

Similar Documents

Publication Publication Date Title
JP4148549B2 (ja) モード信号符号化装置
US6243418B1 (en) Method and apparatus for encoding a motion vector of a binary shape signal
ES2841312T3 (es) Predicción de vectores de movimiento para modelos de movimiento afines en codificación de vídeo
US5973743A (en) Mode coding method and apparatus for use in an interlaced shape coder
US8351507B2 (en) Method of deriving a motion vector of a bi-predictive block based on a motion vector of a co-located block in a reference picture
ES2380502T3 (es) Aparato para codificar información de textura entrelazada de macrobloques
JP5970609B2 (ja) 3dビデオ符号化における統一された視差ベクトル導出の方法と装置
JP4573366B2 (ja) 動きベクトル符号化方法及び符号化装置
EP0921497B1 (en) Interlaced binary shape coding apparatus
US6256345B1 (en) Method and apparatus for coding interlaced shape information
KR100238893B1 (ko) 참조 움직임 벡터수에 기초한 움직임 벡터 부호화 방법 및 그 장치
EP0871332A2 (en) Method and apparatus for coding a contour of an object employing temporal correlation thereof
US9716884B2 (en) Method of signaling for mode selection in 3D and multi-view video coding
KR100243865B1 (ko) 움직임 벡터 부호화 방법 및 그 장치
KR100291719B1 (ko) 이진 형상 신호의 움직임 벡터 부호화 장치 및 방법
ES2236979T3 (es) Metodo y aparato para extraer informacion de forma de crominancia para una imagen de tipo entrelazado de exploracion.
JPH08242457A (ja) 動きベクトル検出方法
EP0923250A1 (en) Method and apparatus for adaptively encoding a binary shape signal
KR100242885B1 (ko) 이진 형상신호 부호화 방법 및 장치
Wang et al. Stereo sequence analysis, compression, and virtual viewpoint synthesis
KR20000021867A (ko) 이진 형상 신호의 움직임 벡터 부호화 방법
KR20000004132A (ko) 이미지 신호 적응적 부호화 장치
KR19990058282A (ko) 격행 형상 코더에 사용하기 위한 모드 코딩 방법및 장치