ES2209032T3 - Aparato para evitar errores de redondeo cuando los coeficientes de transformada que representan una señal de imagen en movimiento se transforman inversamente. - Google Patents

Aparato para evitar errores de redondeo cuando los coeficientes de transformada que representan una señal de imagen en movimiento se transforman inversamente.

Info

Publication number
ES2209032T3
ES2209032T3 ES98119828T ES98119828T ES2209032T3 ES 2209032 T3 ES2209032 T3 ES 2209032T3 ES 98119828 T ES98119828 T ES 98119828T ES 98119828 T ES98119828 T ES 98119828T ES 2209032 T3 ES2209032 T3 ES 2209032T3
Authority
ES
Spain
Prior art keywords
image
parity
transform
blocks
signal
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
ES98119828T
Other languages
English (en)
Inventor
Teruhiko Suzuki
Yoichi Yagasaki
Tatsuya Sudo
Toru Okazaki
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.)
Sony Corp
Original Assignee
Sony 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=26379647&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2209032(T3) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Sony Corp filed Critical Sony Corp
Application granted granted Critical
Publication of ES2209032T3 publication Critical patent/ES2209032T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/18Methods 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 a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • H04N19/45Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Discrete Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Color Television Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Television Signal Processing For Recording (AREA)
  • Complex Calculations (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Detection And Correction Of Errors (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Tone Control, Compression And Expansion, Limiting Amplitude (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Color Television Image Signal Generators (AREA)
  • Image Processing (AREA)

Abstract

UN ERROR DE DESADAPTACION SE PRODUCE EN EL DECODIFICADOR DE UN COMPRESOR ESTANDAR MPEG PARA UNA SEÑAL DE IMAGEN EN MOVIMIENTO Y EN UN EXPANDIDOR ESTANDAR MPEG PARA UNA SEÑAL DE IMAGEN EN MOVIMIENTO COMPRIMIDA. ESTO SE DEBE A LA FALTA DE UN PATRON PARA RESULTADOS DE REDONDEO DE .5 (* ES UN ENTERO) OBTENIDO CUANDO UN CONJUNTO DE COEFICIENTES DE TRANSFORMACION RESULTANTES DE COMPRIMIR LA SEÑAL DE IMAGEN EN MOVIMIENTO SE TRANSFORMAN ORTOGONALMENTE DE FORMA INVERSA. LA INVENCION IMPIDE ERRORES DE DESADAPTACION AL PREPROCESAR EL CONJUNTO DE COEFICIENTES DE TRANSFORMACION ANTES DE LA TRANSFORMACION ORTOGONAL INVERSA. LOS COEFICIENTES DE TRANSFORMACION EN EL CONJUNTO SE SUMAN Y SE CONSIDERA LA PARIDAD (PAR O IMPAR) DE LA SUMA. CUANDO SE CONSIDERA QUE LA PARIDAD DE LA SUMA ES PAR, LA PARIDAD DE UNO DE LOS COEFICIENTES DE TRANSFORMACION EN EL CONJUNTO SE INVIERTE PARA PROPORCIONAR UN COEFICIENTE DE TRANSFORMACION DE PARIDAD INVERTIDA. ESTO HACE QUE LA PARIDAD DE LA SUMA SEA IMPAR. ENTONCES, CUANDO ELCONJUNTO DE COEFICIENTES DE TRANSFORMACION QUE INCLUYEN EL COEFICIENTE DE TRANSFORMACION DE PARIDAD INVERTIDA SE TRANSFORMAN ORTOGONALMENTE DE FORMA INVERSA, NINGUNO DE LOS RESULTADOS DE LA TRANSFORMACION ORTOGONAL TENDRA UN VALOR DE *.5.

Description

Aparato para evitar errores de redondeo cuando los coeficientes de transformada que representan una señal de imagen en movimiento se transforman inversamente.
Las transformadas ortogonales se utilizan en diversas aplicaciones en muchos sistemas de tratamiento digital de señal. Las transformadas ortogonales permiten la realización del tratamiento de señal en el dominio de la frecuencia. La transformada rápida de Fourier (FFT) y la transformada de coseno discreta (DCT), etc, son tipos muy conocidos de transformadas ortogonales. Una transformada ortogonal analiza, por ejemplo, un fragmento de una señal en el dominio del tiempo para obtener componentes de frecuencia (que varían dependiendo de la función de transformada ortogonal aplicada) e indican el espectro (es decir, la distribución de energía en función de la frecuencia) del fragmento de señal original en el dominio del tiempo. Tratando de diversos modos las componentes de frecuencia (denominadas usualmente coeficientes de transformada) que resultan de la transformación ortogonal del fragmento de señal, puede reducirse la redundancia del fragmento de señal original. En otras palabras, mediante la transformación ortogonal del fragmento de señal original y el tratamiento de los coeficientes de transformada resultantes, el fragmento de señal original puede representarse con menos bits de los que se han utilizado para representar el fragmento de señal original. Además, realizando la transformada ortogonal inversa de los coeficientes de transformada, puede recuperarse el fragmento de señal original en el dominio del tiempo.
Los aparatos para comprimir una señal de imagen en movimiento y para expandir una señal de imagen en movimiento comprimida, son ejemplos comunes de sistemas de tratamiento de señal digital que utilizan tratamiento de transformada ortogonal.
Es conocido que la potencia de señal de señales que tienen una alta correlación se concentra en las frecuencias más bajas en el dominio de la frecuencia. A medida que aumenta la concentración de potencia de señal en un eje de coordenadas específico (por ejemplo, el eje de frecuencias), puede reducirse progresivamente la redundancia de la señal, y la señal puede comprimirse más eficientemente.
Puesto que una señal de imagen con movimiento está en general altamente correlacionada, tanto espacialmente como en el tiempo, puede aplicarse tratamiento de transformada ortogonal para concentrar la potencia de señal en un eje de coordenadas específico, y la señal de imagen con movimiento puede comprimirse con una alta eficiencia.
Hasta ahora, se ha requerido una cantidad extremadamente grande de información para representar imágenes con movimiento, utilizando, por ejemplo, una señal de video según la norma NTSC. Debido a esto, el registro de una señal de imagen con movimiento ha requerido un medio de registro con una capacidad de almacenamiento muy alta si se desea que el medio proporcione un medio de registro aceptablemente largo. Adicionalmente, la frecuencia de muestreo de información a la cual se registra y se reproduce de tal medio la señal de imagen con movimiento ha sido muy alta. Se han requerido hasta ahora cintas magnéticas o discos ópticos de dimensiones físicas grandes para almacenar señales de imagen con movimiento.
Si se desea registrar una señal de imagen con movimiento sobre un medio de registro más compacto con un tiempo de registro aceptablemente largo, debe aplicarse compresión de señal a la señal de imagen con movimiento para reducir la cantidad de información que es necesario almacenar. Adicionalmente, debe disponerse de un aparato que sea capaz de expandir la señal de imagen con movimiento comprimida reproducida del medio de registro compacto.
Para cumplir los requerimientos que se acaban de describir, han sido propuestos diversos sistemas de compresión de señal de imagen con movimiento que explotan la correlación entre y dentro de las porciones de la señal de imagen con movimiento que representan las imágenes que constituyen la señal de imagen con movimiento. Por ejemplo, los sistemas de compresión de señal de imagen con movimiento propuestos por el Moving Picture Experts Group (MPEG) son ampliamente conocidos. Puesto que el sistema MPEG ha sido descrito ampliamente en diversas publicaciones impresas, no se repetirá en la presente memoria una explicación detallada de dicho sistema.
La siguiente descripción se referirá frecuentemente a una "imagen". Puesto que las técnicas de tratamiento de señal descritas en la presente memoria se refieren al tratamiento de una señal de imagen con movimiento que representa una imagen en movimiento, ha de entenderse que la palabra "imagen", en el sentido en que se utiliza en general en la presente memoria, se refiere a una porción de una señal de imagen con movimiento que representa una imagen de la imagen en movimiento. Además, una señal de imagen con movimiento puede representar una imagen de la imagen en movimiento en la forma de un cuadro o un campo. Salvo indicación en otro sentido, una "imagen" significa un campo o un cuadro.
El sistema MPEG determina primero las diferencias entre las imágenes que constituyen la señal de imagen con movimiento para reducir la redundancia de la señal de imagen con movimiento en el dominio del tiempo. A continuación, el sistema MPEG reduce la redundancia de la señal de imagen con movimiento en el dominio espacial aplicando tratamiento por transformada ortogonal a bloques de diferencias entre imágenes en el dominio del espacio. El sistema MPEG aplica tratamiento por transformada de coseno discreta como tratamiento de transformada ortogonal. Reduciendo la redundancia tanto en el dominio del tiempo como en el dominio del espacio, la imagen con movimiento es comprimida con una eficiencia extremadamente alta. La señal de imagen con movimiento comprimida resultante del proceso de compresión que se acaba de describir, puede registrarse a continuación sobre un medio de registro, o transmitirse a través de un medio de transmisión adecuado.
Cuando la señal de imagen con movimiento es reproducida del medio de registro, o es recibida del medio de transmisión, se extraen de la señal de imagen con movimiento comprimida los bloques de coeficientes de transformada resultantes de la transformada de coseno discreta. Los coeficientes de transformada son tratados utilizando una transformada ortogonal inversa (una transformada de coseno discreta inversa en el sistema MPEG) para recuperar bloques de diferencias entre imágenes en el curso de la reconstrucción de las imágenes en la señal de imagen con movimiento original.
En la figura 1 se muestra un ejemplo del diseño constructivo de un aparato compresor de señal de imagen con movimiento basado en el sistema MPEG. En el compresor ilustrado en la figura 1, se aplica una señal de imagen con movimiento digital al circuito 101 formateador de bloques, donde es convertida de un formato de video normalizado, por ejemplo un formato de señal de video según la norma NTSC, a un formato de bloques para proporcionar una señal de imagen con movimiento en bloques. En esta técnica, cada imagen de la señal de imagen con movimiento es dividida en el dominio del espacio, es decir horizontal y verticalmente, en macrobloques de, por ejemplo, 16 x 16 elementos de imagen. Los macrobloques son también subdivididos en bloques de 8 x 8 elementos de imagen.
El aparato representado en la figura 1 comprime cada imagen de la señal de imagen con movimiento bloque por bloque hasta que han sido tratados todos los bloques que constituyen la imagen. El aparato trata a continuación otra imagen de la señal de imagen con movimiento, que puede ser o no la siguiente imagen de la secuencia de imágenes que constituyen la imagen en movimiento. En la siguiente descripción del aparato ilustrado en la figura 1, se describirá la compresión de un bloque de elementos de imagen en una imagen. El bloque de elementos de imagen que se está comprimiendo es el bloque de imagen en curso, que es un bloque de la imagen en curso. La señal de imagen con movimiento organizada en bloques se aplica al predictor 102 de movimiento. El predictor 102 de movimiento aplica la imagen en curso, que incluye el bloque S1 de imagen en curso, bloque por bloque al circuito 103 de cálculo de bloques de diferencia.
Cuando el circuito 103 de cálculo de bloques de diferencia recibe el bloque de imagen en curso del predictor 102 de movimiento, recibe también el bloque S2 de adaptación correspondiente al bloque de imagen en curso procedente del predictor 102 de movimiento. El bloque S2 de adaptación se deduce de las imágenes reconstruidas almacenadas en el bloque 112 de memoria de imagen por el predictor 113. El circuito 103 de cálculo de bloques de diferencia determina la diferencia elemento de imagen por elemento de imagen entre el bloque S1 de imagen en curso y su bloque S2 de adaptación correspondiente. El bloque de diferencias resultante (el bloque S3 de diferencias) se aplica al circuito 104 de transformada ortogonal.
El circuito 104 de transformada ortogonal, que es normalmente un circuito de transformada de coseno discreta, aplica tratamiento de transformada ortogonal al bloque S3 de diferencias, e introduce el bloque resultante de coeficientes de transformada en el cuantificador 105. El cuantificador 105 cuantifica el bloque de coeficientes de transformada para generar un bloque de coeficientes de transformada cuantificados. El codificador 106 de longitud variable somete al bloque de coeficientes de transformada cuantificados generados por el cuantificador 105, a codificación de longitud variable, tal como codificación de Huffman, codificación de longitud de ventana móvil, etc. El bloque resultante de coeficientes de transformada codificados se introduce a continuación, por ejemplo, en una vía de transmisión digital, a través de la memoria intermedia 107 de salida.
Una señal de control que indica el número de bits almacenados en la memoria intermedia 107 de salida, se realimenta al cuantificador 105. El cuantificador 105 ajusta el tamaño de incremento de cuantificación en respuesta a la señal de control para evitar el desbordamiento de la memoria intermedia 107 de salida. Un aumento o disminución de la magnitud del incremento de cuantificación disminuye o aumenta, respectivamente, el número de bits introducidos en la memoria intermedia 107 de salida.
El bloque de coeficientes de transformada cuantificados se transfiere también desde el cuantificador 105 hasta el cuantificador inverso 108, que forma parte del decodificador local utilizado en el compresor para deducir de los coeficientes de transformada cuantificados las imágenes reconstruidas utilizadas en la codificación predictiva. El cuantificador inverso 108 cuantifica inversamente el bloque de coeficientes de transformada cuantificados realizando un tratamiento complementario del tratamiento de cuantificación realizado por el cuantificador 105. El bloque resultante de coeficientes de transformada se suministra al circuito 109 de transformada ortogonal inversa, donde es sometido a transformada ortogonal inversa por tratamiento complementario del tratamiento de transformada ortogonal realizado por el circuito 104 de transformada ortogonal. El bloque S4 de diferencias restaurado resultante es suministrado al sumador 110.
El sumador 110 recibe también el bloque S2 de adaptación correspondiente al bloque S1 de imagen en curso de una de las memorias de imagen del grupo 112 de memorias de imagen seleccionado por el predictor 113. El sumador 110 realiza la suma elemento de imagen por elemento de imagen entre el bloque S4 de diferencias restaurado, generado por el circuito 109 de transformada ortogonal inversa, y el bloque S2 de adaptación procedente del grupo 112 de memorias de imagen para obtener el bloque S5 de imagen reconstruido. El bloque S5 de imagen reconstruido es suministrado a una de las memorias 112A a 112D seleccionada por el selector 111, donde se almacena.
El bloque S5 de imagen reconstruido es almacenado en la memoria de imagen seleccionada, donde forma un bloque (correspondiente al bloque en curso) de la imagen que se está reconstruyendo, bloque por bloque, a partir de los bloques de imagen reconstruida almacenados en la memoria de imagen seleccionada. Cuando está completa, la imagen reconstruida será utilizada para obtener bloques de adaptación para realizar la codificación predictiva para comprimir otras imágenes de la señal de imagen con movimiento.
El predictor 102 de movimiento determina, para cada macrobloque de la imagen en curso, un vector de movimiento entre el macrobloque de las imágenes en curso y diferentes macrobloques de las otras imágenes de la señal de imagen con movimiento almacenados. El predictor 102 de movimiento genera también una suma de los valores absolutos de las diferencias (la "suma de valores absolutos de diferencias") entre los elementos de imagen de cada macrobloque de la imagen en curso y los diferentes macrobloques de las otras imágenes. Cada suma de valores absolutos de diferencias indica el grado de concordancia entre cada macrobloque de la imagen en curso y los macrobloques de las otras imágenes. El predictor 102 de movimiento introduce cada vector de movimiento y su correspondiente suma de valores absolutos de diferencias en el circuito 115 de determinación de modo de predicción.
El circuito 115 de determinación de modo de predicción utiliza los datos recibidos del predictor 102 de movimiento para determinar el modo de predicción que será utilizado para la codificación predictiva de la imagen en curso con relación a una o más de otras imágenes reconstruidas. La imagen en curso puede ser codificada predictivamente utilizando cualquiera de los siguientes modos de predicción:
(1) Modo intra imágenes, en el cual la imagen se comprime por sí misma, sin referencia a otras imágenes cualesquiera. Una imagen codificada de este modo se denomina imagen I.
(2) Modo de predicción de avance, en el cual la predicción se realiza con referencia a una imagen reconstruida que se produce anteriormente en la imagen en movimiento. Una imagen codificada de este modo se denomina imagen P.
(3) Modo de predicción bidireccional, en el cual la predicción bloque por bloque se realiza con respecto a un bloque de referencia deducido de una imagen reconstruida que aparece anteriormente en la imagen en movimiento y una imagen reconstruida que aparece posteriormente en la imagen en movimiento, o realizando una operación lineal elemento de imagen por elemento de imagen (por ejemplo, un cálculo de valor medio) entre una imagen reconstruida anterior y una imagen reconstruida posterior. Una imagen codificada de este modo se denomina imagen B.
En otras palabras, una imagen I es una imagen en la cual se ha completado la codificación intra imágenes dentro de la imagen. Una imagen P se obtiene por predicción a partir de una imagen I o una imagen P que aparecen anteriormente en la imagen en movimiento. Una imagen B se obtiene por predicción bloque por bloque utilizando una imagen I o una imagen P anteriores o posteriores o utilizando un bloque obtenido realizando una operación lineal utilizando una imagen I reconstruida o una imagen P reconstruida que aparecen anteriormente en la imagen en movimiento, y a partir de una imagen I reconstruida o una imagen P reconstruida que aparecen posteriormente en la imagen en movimiento.
El circuito 115 de determinación de modo de predicción proporciona el modo de predicción y el correspondiente vector de movimiento al predictor 113 y al generador 114 de direcciones de lectura. El generador 114 de direcciones de lectura proporciona direcciones de lectura al grupo 112 de memorias de imagen en respuesta al vector de movimiento, cuyas direcciones sirven para hacer que sea leído un bloque de la imagen reconstruida almacenado en cada memoria 112A a 112D de imagen. La posición del bloque de lectura en la imagen reconstruida está designada por el vector de movimiento. El predictor 113 selecciona uno de los bloques de lectura de las memorias 112A a 112D de imagen en respuesta a la señal PM de modo de predicción recibida del circuito 115 de determinación de modo de predicción. El bloque de lectura seleccionado proporciona el bloque S2 de adaptación para el bloque S1 de imagen en curso. Cuando el bloque de imagen en curso forma parte de una imagen B, el predictor realiza también operaciones lineales sobre los bloques de lectura de las memorias 112A a 112D de imagen para proporcionar el bloque de adaptación requerido. El predictor suministra el bloque S2 de adaptación al circuito 103 de cálculo de bloques de diferencia y al sumador 110.
En la figura 2 se muestra un ejemplo del diseño constructivo de un aparato expansor de señal de imagen con movimiento comprimida, basado en el sistema MPEG. En este aparato, la señal de imagen con movimiento comprimida obtenida directamente del compresor o por reproducción de la misma de un medio de registro, es suministrada como cadena de bits a la memoria intermedia 121 de entrada, donde se almacena transitoriamente. La señal digital comprimida incluye bloques de coeficientes de transformada codificados (incluyendo un bloque de coeficientes de transformada codificados que representa el bloque en curso), e información de modo de predicción, información de magnitud de incremento de cuantificación, y un vector de movimiento para cada bloque.
La señal de imagen con movimiento comprimida es leída de la memoria intermedia 121 de entrada por imágenes individuales y es suministrada a un codificador inverso 122 de longitud variable (IVLC). El codificador inverso 122 de longitud variable aplica un tratamiento de codificación inversa de longitud variable a la señal de imagen con movimiento comprimida, y separa la señal de imagen con movimiento comprimida en sus componentes, que incluyen bloques de coeficientes de transformada cuantificados e información de modo de predicción, información de magnitud de incremento de cuantificación, y un vector de movimiento para cada bloque.
Cada bloque de coeficientes de transformada codificados se introduce en el cuantificador inverso 123, que utiliza la información de magnitud de incremento de cuantificación para el bloque para cuantificar inversamente el bloque de coeficientes de transformada cuantificados para proporcionar un bloque de coeficientes de transformada. El circuito 124 de transformada ortogonal inversa aplica un tratamiento de transformada ortogonal inversa, normalmente un tratamiento de transformada de coseno discreta inversa, al bloque de coeficientes de transformada para obtener un bloque de diferencias restaurado. El cuantificador inverso 123 y el circuito 124 de transformada ortogonal inversa aplican, respectivamente, un tratamiento complementario del aplicado por el cuantificador 105 y por el circuito 104 de transformada ortogonal en el compresor representado en la figura 1.
El generador 130 de direcciones de lectura proporciona una dirección de lectura a las memorias 128A a 128D de imagen en respuesta al vector de movimiento correspondiente al bloque en curso recibido del codificador inverso 122 de longitud variable. En respuesta a la dirección de lectura, cada una de las memorias 128A a 128D de imagen lee un bloque de la imagen reconstruida almacenada en las mismas. El predictor 129 selecciona uno de los bloques de lectura de las memorias 128A a 128D de imagen en respuesta a la señal PM de modo de predicción, recibida también del codificador inverso 122 de longitud variable. El bloque de lectura seleccionado proporciona el bloque de adaptación para reconstruir el bloque en curso. Cuando el bloque en curso forma parte de una imagen codificada como imagen B, el predictor realiza también operaciones lineales sobre los bloques de lectura de las memorias 112A a 112D de imagen para obtener el bloque de adaptación. El predictor 129 suministra el bloque de adaptación al sumador 125.
El sumador 125 realiza una suma elemento de imagen por elemento de imagen entre el bloque de diferencias restaurado generado por el circuito 124 de transformada ortogonal inversa, y el bloque de adaptación generado por el predictor 129 para reconstruir el bloque de imagen en curso de la imagen en curso. El selector 126 suministra el bloque de imagen en curso reconstruido para almacenamiento en la memoria de las memorias 128A a 128D de imagen en la cual se está reconstruyendo la imagen en curso. El bloque de imagen en curso reconstruido se almacena en la memoria de imagen seleccionada en la posición del bloque de imagen en curso en la imagen en curso reconstruida. Cuando todos los bloques reconstruidos de la imagen en curso han sido almacenados en la memorias 128A a 128D de imagen seleccionada, la imagen en curso reconstruida está preparada para lectura, y también para ser utilizada como imagen de referencia para reconstruir otras imágenes que aparecen anterior o posteriormente en la imagen en movimiento.
Las imágenes reconstruidas almacenadas en las memorias 128A a 128D de imagen son leídas como señal de imagen con movimiento de salida a través del selector 126 en respuesta a direcciones de lectura generadas por el generador 127 de direcciones de visualización. Un convertidor de exploración (no representado) convierte la señal de imagen con movimiento de salida, leída de las memorias 128A a 128D de imagen, al formato de trama del formato de señal de video deseado, por ejemplo el formato NTSC. La señal de imagen con movimiento de salida resultante puede ser visualizada entonces en un dispositivo de visualización adecuado, por ejemplo un tubo de rayos catódicos, etc. En este ejemplo, el generador 131 de señal de sincronismo está sincronizado con una fuente de sincronismo externa, y genera periódicamente una señal de sincronismo de cuadro para ser aplicada al generador 127 de direcciones de visualización. El generador 127 de direcciones de visualización genera direcciones de lectura en sincronismo con la señal de sincronismo de cuadro.
Los circuitos de transformada ortogonal, por ejemplo los circuitos de transformada de coseno discreta y de transformada de coseno discreta inversa utilizados en el compresor y en el expansor descritos anteriormente, respectivamente, realizan operaciones aritméticas sobre valores de elemento de imagen y coeficientes de transformada representados por números enteros que tienen un número finito de bits. De este modo, las operaciones de transformación ortogonal realizadas por los circuitos de transformada ortogonal pueden truncar el número de bits. Por esta razón, una diferencia en la precisión de la operación de transformada ortogonal utilizando números reales, o una diferencia en la configuración del circuito utilizado para realizar la operación de transformada ortogonal, pueden cambiar el resultado de la operación de transformada ortogonal. Esto puede dar lugar a una desadaptación entre el compresor y el expansor, y a desadaptaciones entre expansores que expanden una señal comprimida común.
Por ejemplo, en el compresor, el bloque de diferencias deducido de la señal de imagen con movimiento es transformado ortogonalmente, y se aplica un tratamiento predeterminado para cuantificar los coeficientes de transformada resultantes en el curso de la generación de la señal de imagen con movimiento comprimida. A continuación, en el expansor, si la precisión de las operaciones con números reales o la configuración del circuito de transformada ortogonal inversa no corresponden a las del compresor, es posible entonces que la salida del expansor difiera de la entrada al compresor. Por tanto, la salida del expansor puede depender de la precisión y de la configuración del aparato utilizado para el expansor.
La precisión operacional o la configuración de una transformada ortogonal inversa pueden variar dependiendo del aparato utilizado para realizar la transformada ortogonal inversa. Por ejemplo, la transformación inversa de un bloque de coeficientes de transformada utilizando dos disposiciones constructivas diferentes del mismo tipo de circuito de transformada ortogonal inversa, puede producir resultados diferentes. Tal diferencia en los resultados se denomina error de desadaptación de transformada ortogonal inversa ("error de desadaptación").
El sistema MPEG define la precisión operacional con la cual han de realizarse la transformada de coseno discreta y la transformada de coseno discreta inversa, pero no define el método operacional ni la configuración. Esto se debe a que los circuitos y métodos para la realización de transformadas de coseno discretas y transformadas de coseno discretas inversas fueron desarrollados antes de establecerse las normas MPEG.
En el sistema MPEG, como se ha descrito anteriormente, el compresor implementa, por ejemplo, la codificación predictiva entre imágenes con compensación de movimiento para obtener la señal de imagen con movimiento. En esta técnica, la señal de imagen con movimiento es dividida en bloques, se obtiene un bloque de diferencias del bloque de imagen en curso, y se obtiene un bloque de adaptación aplicando compensación de movimiento a una imagen reconstruida, el bloque de diferencias es transformado ortogonalmente utilizando el tratamiento de transformada de coseno discreta, los coeficientes de transformada resultantes son cuantificados, los coeficientes de transformada cuantificados son sometidos a codificación de longitud variable, y los coeficientes de transformada codificados son ensamblados con información de modo de predicción, información de magnitud de incremento de cuantificación y vectores de movimiento, para obtener la señal de imagen con movimiento comprimida. El expansor aplica codificación de longitud variable inversa a los coeficientes de transformada codificados, cuantificación inversa a los coeficientes de transformada cuantificados resultantes de la codificación de longitud variable inversa, y tratamiento de transformada de coseno discreta inversa a los coeficientes de transformada resultantes de la cuantificación inversa. El bloque de diferencias restaurado resultante se añade al bloque de adaptación obtenido aplicando compensación de movimiento a la imagen reconstruida en respuesta al vector de movimiento. El bloque de imagen reconstruido resultante se almacena como bloque de una imagen reconstruida, que proporciona una imagen de la señal de imagen con movimiento de salida, y también está disponible para ser utilizada como imagen de referencia.
El compresor incluye un decodificador local que deduce, de los coeficientes de transformada cuantificados, imágenes reconstruidas para ser utilizadas en la realización de la codificación predictiva. El decodificador local incluye un cuantificador inverso y un circuito de transformada ortogonal inversa.
Si la configuración del circuito de transformada de coseno discreta inversa en el decodificador local es diferente de la del circuito de transformada de coseno discreta inversa utilizado en el expansor, existen casos en los cuales las imágenes reconstruidas generadas por el decodificador local en el compresor son diferentes de las imágenes reconstruidas generadas por el expansor. La dependencia del tratamiento de transformada de coseno discreta inversa de la implementación puede originar problemas cuando la señal de imagen con movimiento comprimida generada por un compresor que cumple la norma MPEG es registrada en un medio de registro, tal como un disco óptico, etc, para distribución al público. Cuando la señal de imagen con movimiento comprimida reproducida del disco óptico es expandida por expansores fabricados y comercializados por diferentes fabricantes, la imagen reconstruida puede ser diferente de la imagen original. Adicionalmente, las diferencias pueden depender del expansor real utilizado. Pueden producirse incompatibilidades similares entre expansores diferentes cuando la señal de imagen con movimiento comprimida es distribuida por un sistema de distribución, tal como un sistema de difusión terrestre o por satélite, un sistema telefónico, un sistema ISDN (Integrated Services Digital Network), un sistema de distribución por cable o por fibra óptica, etc.
Los errores de desadaptación son particularmente problemáticos cuando se realiza una codificación predictiva inter imágenes. La codificación predictiva inter imágenes puede ser una codificación inter campos o una codificación inter cuadros. La codificación predictiva inter imágenes puede hacer que los errores de desadaptación se acumulen hasta un punto que produzcan defectos fatales en las imágenes reconstruidas.
En la compresión de señal de imagen con movimiento realizada por el sistema MPEG, cada secuencia de video se divide en Grupos de Imágenes de, por ejemplo, ocho o doce imágenes. Cada imagen se clasifica como imagen I, imagen P o imagen B, como se ha descrito anteriormente.
Una imagen B no se utiliza como imagen de referencia para realizar la predicción de movimiento. Por tanto, un error de desadaptación que se produzca en una imagen B no origina errores en otras imágenes.
Cuando se produce un error de desadaptación en una imagen P, la imagen que contiene el error de desadaptación se almacena en la memoria de imagen para ser utilizada en la codificación predictiva. Consiguientemente, cuando se realiza la codificación predictiva inter imágenes, el error contenido en la imagen P almacenada en la memoria de imagen se distribuye gradualmente hacia las imágenes P y las imágenes B deducidas de la misma por la codificación predictiva. El error se acumula hasta que la imagen es sustituida por una imagen I o por una imagen P que no contienen tal error.
Similarmente, cuando se produce un error de desadaptación en una imagen I, la imagen reconstruida que contiene el error de desadaptación se almacena en la memoria de imagen para ser utilizada en la codificación predictiva. Consiguientemente, cuando se realiza la codificación predictiva inter imágenes, el error contenido en la imagen I almacenada en la memoria de imagen se distribuye hacia las imágenes P e imágenes B deducidas de la misma por la codificación predictiva. El error se acumula hasta que la imagen es sustituida por una nueva imagen I que carece de tal error.
La acumulación de error se ilustra en la figura 3. En la figura 3, si el error de desadaptación en la decodificación de una imagen I es EI, y el error de desadaptación en la decodificación de la imagen P P1 es EP1, el valor del error en la imagen P reconstruida P1 es EI + EP1. Adicionalmente, cuando el error de desadaptación en la decodificación de la imagen P P2 es EP2, el valor del error en la imagen P reconstruida P2 es EI + EP1 + EP2. Incluso si los errores de desadaptación individuales son pequeños, la acumulación gradual de estos errores dará lugar a un gran error.
Los errores de desadaptación producidos por el tratamiento de transformada de coseno discreta inversa utilizado en los decodificadores MPEG tanto en el compresor como en el expansor, pueden ser clasificados en dos tipos diferentes:
Tipo (1): Errores resultantes de una precisión de cálculo insuficiente.
Tipo (2): Errores resultantes de diferencias sistemáticas en el redondeo.
La norma MPEG establece un requerimiento para la precisión de las operaciones. Sin embargo, este requerimiento no es tan riguroso que pueda garantizar que no se produzca un error de desadaptación. Por consiguiente, puede producirse un error de desadaptación de tipo (1) entre dispositivos de transformada de coseno discreta inversa cuya precisión de cálculo satisfaga el requerimiento de la norma MPEG.
Las salidas del tratamiento de transformada de coseno discreta inversa son números enteros. Por tanto, después de realizarse el tratamiento de transformada de coseno discreta inversa utilizando números reales, los resultados del tratamiento deben redondearse. En general, los resultados del tratamiento se redondean al número entero más próximo. Sin embargo, se produce un problema cuando el resultado del tratamiento matemático es de la forma *.5, donde * es un número entero. La norma MPEG no define como deberá redondearse un resultado de tratamiento de la forma *.5. Algunos dispositivos de transformada de coseno discreta inversa redondean *.5 hacia arriba, y otros dispositivos de transformada de coseno discreta inversa redondean *.5 hacia abajo. Adicionalmente, existen casos en los cuales el redondeo hacia arriba o el redondeo hacia abajo dependen del signo del resultado del tratamiento. Los errores de desadaptación resultantes de los errores de redondeo sistemáticos que se acaban de describir son errores de desadaptación del tipo (2).
Los errores de desadaptación del tipo (1) difieren de los errores de desadaptación del tipo (2) en que los errores del tipo (1) se producen aleatoriamente, mientras que los errores del tipo (2) son sistemáticos. Debido a que los errores de tipo (1) son aleatorios, los errores positivos y negativos se producen aproximadamente con la misma probabilidad. Por tanto, cuando se realiza la codificación predictiva durante un tiempo largo, puede suponerse que se cancelan los errores de desadaptación de tipo (1).
Por otra parte, puesto que los errores de desadaptación de tipo (2) son sistemáticos y son inherentes al propio tratamiento de transformada de coseno discreta inversa, tales errores tienen coherentemente la misma polaridad. Consiguientemente, cuando se realiza la codificación predictiva durante un tiempo largo, los errores de desadaptación serán acumulativos en una dirección. Aunque cada error de desadaptación de tipo (2) es solamente +1 o -1, si se acumulan muchos errores de desadaptación en una dirección, el error de desadaptación acumulativo será grande.
Puesto que los errores de desadaptación de tipo (1), aunque se generan incidentalmente, se cancelan con el tiempo, dichos errores no presentan relativamente problemas. Por otra parte, puesto que los errores de desadaptación de tipo (2) se acumulan en una dirección, los errores de desadaptación de tipo (2) son problemáticos. Debido a esto, es deseable evitar que se produzcan errores de desadaptación acumulativos del tipo (2).
Ha sido propuesto en el sistema MPEG1 realizar el tratamiento antes de los cálculos de transformada de coseno discreta inversa para evitar que se produzcan errores de desadaptación de tipo (2). El tratamiento ajusta los coeficientes de transformada de todas las componentes a un valor impar, excepto para el coeficiente de transformada de la componente (0,0) de un macrobloque de una imagen codificada según el sistema intra imágenes (un "macrobloque intra"). En un macrobloque intra, la componente (0,0) es la componente continua. Como se muestra en la figura 4, por ejemplo, los coeficientes de transformada de las componentes (0,1), (7,1), (2,3), (5,3), (1,5), (6,5), (3,7) y (4,7) son todos inicialmente iguales a 568. Puesto que este es un número par, el pretratamiento fija los valores de esos coeficientes a un valor impar, por ejemplo 567. Cuando se aplica tratamiento de transformada de coseno discreta inversa a los coeficientes de transformada pretratados, nunca se producen resultados fraccionarios.
Puesto que la componente continua del macrobloque intra es muy importante para el aspecto de la imagen obtenida de la señal de imagen con movimiento comprimida, su precisión está limitada solamente a ocho bits. Dicha magnitud no se somete a conversión a un valor impar, puesto que esto degradaría la precisión de esta componente importante. Por otra parte, todos los coeficientes de transformada resultantes de transformar un macrobloque de una imagen codificada utilizando codificación inter imágenes (un "macrobloque no intra"), se someten a un tratamiento similar al de los coeficientes de transformada de las componentes, que no correspondan a la componente continua, de un macrobloque intra para restringir los coeficientes de transformada solamente a valores impares.
El tratamiento según el cual los valores de los coeficientes de transformada sometidos a tratamiento de transformada de coseno discreta inversa se fijan todos en un valor impar, se denomina tratamiento de conversión a valor impar.
Mediante la aplicación del tratamiento de conversión a valor impar, el tratamiento de transformada de coseno discreta inversa tanto el compresor como en el expansor realizará el redondeo de acuerdo con una regla común. Esto hará posible mantener una calidad de imagen coherente entre expansores diferentes.
Sin embargo, a pesar del tratamiento de conversión a valor impar descrito anteriormente, los errores de desadaptación de tipo (2) acumulativos descritos anteriormente se producirán aun en procesadores MPEG, porque el tratamiento de transformada de coseno discreta inversa puede producir aun resultados del tipo *.5, donde * indica un número entero. Las circunstancias que conducen a un resultado de *.5 se describirán a continuación utilizando como ejemplo la transformada de coseno discreta inversa bidimensional de 8 x 8 utilizada en el sistema MPEG.
La transformada de coseno discreta inversa bidimensional de 8 x 8 se expresa mediante la siguiente ecuación:
f(x,y)= \frac{1}{4}\sum\limits^{7}_{u=0}\sum\limits^{7}_{\nu=0}C(u)C(v)F(u,v)cos\left[\frac{(2x+1)ux\pi}{16}\right]cos\left[\frac{(2y+1)v y\pi}{16}\right] \ 1
(1)u,v,x,y = 0,1,...,7
C(u), C(v)=\frac{1}{\sqrt{2}}(u,v=0) \ 3
=1(u, v\neq 0) 4
En la ecuación anterior, F(u, v) indica los coeficientes de la transformada de coseno discreta sometidos a la transformada de coseno discreta inversa bidimensional. En la ecuación (1), cada valor de salida de la transformada de coseno discreta inversa es un número real, es decir un número racional o un número irracional. Debido a que *.5 es un número racional, haciendo que el valor de salida de la transformada de coseno discreta inversa sea un número irracional se evitará la generación de un error de desadaptación acumulativo. Por otra parte, cuando el valor de salida es un número racional, es posible que el valor de salida sea *.5.
Los coeficientes F(0,0), F(0,4), F(4,0), F(4,4) de la transformada de coseno discreta son coeficientes de transformada de coseno discreta especiales. Cuando cualquiera de estos coeficientes de transformada de coseno discreta tiene un valor no nulo, el valor de salida de la transformada de coseno discreta inversa es un número racional. Los valores de salida de la transformada de coseno discreta inversa en este caso están expresados por la ecuación (2).
f(x,y)=\frac{1}{4}F(0,0) \ 5
f(x,y)=\frac{1}{4\sqrt{2}}F(0,4)cos\frac{2y+1}{4}\pi \ 6
f(x,y)=\frac{1}{4\sqrt{2}}F(0,4)cos\frac{2x+1}{4}\pi \ 7
f(x,y)=\frac{1}{4}F(4,4)cos\frac{2x+1}{4}\pi \ cos\frac{2y+1}{4}\pi \ 8
(2)donde \ cos\frac{2x+1}{4}\pi= +\frac{1}{-\sqrt{2}}
De este modo, cuando solamente tiene un valor no nulo uno de los coeficientes especiales F(0,0), F(0,4), F(4,0),
F(4,4) de transformada de coseno discreta que es múltiplo de 4, pero no múltiplo de 8, el valor de salida es de la forma *.5.
Cuando los cuatro coeficientes especiales de transformada de coseno discreta son los únicos coeficientes con un valor no nulo, el valor de salida de la transformada de coseno discreta inversa está expresado por la ecuación (3).
F(x,y)=\frac{1}{4}F(0,0)+\frac{1}{4\sqrt{2}}F(0,4)cos\frac{2y+1}{4} \pi + \frac{1}{4\sqrt{2}}F(4,0)cos\frac{2x+1}{2}\pi \ 10
(3)+ \frac{1}{4}F(4,4)cos\frac{2x+1}{4}\pi \ cos\frac{2y+1}{4}\pi
Con diferentes combinaciones de x e y, la función f(x,y) de la ecuación (3) puede tener los siguientes valores:
\newpage
\frac{1}{8}[F(0,0)+F(0,4)+F(4,0)+F(4,4)]
\frac{1}{8}[F(0,0)+F(0,4)-F(4,0)-F(4,4)]
(4)\frac{1}{8}[F(0,0)-F(0,4)+F(4,0)-F(4,4)]
\frac{1}{8}[F(0,0)+F(0,4)-F(4,0)+F(4,4)]
De este modo, cuando los valores de los cuatro coeficientes especiales son tales que cualquiera de las expresiones establecidas en la ecuación (4) es múltiplo de 4 pero no es múltiplo de 8, se producirá un resultado de la forma *.5.
Así, cuando los cuatro coeficientes especiales tienen valores no nulos, existe una alta probabilidad de que el valor de salida de la transformada de coseno discreta inversa sea de la forma *.5.
También, diversos pares simétricos de coeficientes de transformada de coseno discreta con valores no nulos, diferentes de los cuatro coeficientes especiales que se acaban de comentar, pueden producir un valor de salida de la forma *.5:
(1) cuando el par de coeficientes X(2n+1, 2m+1), X(2m+1, 2n+1) tienen los mismos valores no nulos y el valor es múltiplo de 4 pero no múltiplo de 8, o
(2) cuando el par de coeficientes X(2n+1, 2n+1), X(8-2n-1, 8-2n-1) tienen los mismos valores no nulos, y el valor es múltiplo de 4 pero no múltiplo de 8.
En las anteriores expresiones, X(i, j) es el coeficiente de transformada de una componente de una transformada de coseno discreta bidimensional de 8 x 8.
Cuando es comprimida una señal de imagen con movimiento real por el compresor de acuerdo con el sistema MPEG, se generan frecuentemente coeficientes de transformada de coseno discreta no nulos en las configuraciones que se acaban de mencionar, que pueden producir un valor de salida de transformada de coseno discreta inversa de la forma *.5. Además, los valores de los cuatro coeficientes especiales son no nulos la mayor parte del tiempo.
Puesto que la causa más común de un resultado *.5 es la combinación de coeficientes de transformada de coseno discreta en la cual los valores de los cuatro coeficientes especiales no son nulos, el hecho de evitar que se produzca un error de desadaptación en respuesta a los cuatro coeficientes especialees reducirá sustancialmente l probabilidad de que aparezca un error de desadaptación.
En la figura 5 se muestra el método de tratamiento mediante el cual se cuantifican inversamente según la norma MPEG1 un macro bloque intra y un macro bloque no intra. En la figura 5, QAC(i, j) es el coeficiente de transformada de coseno discreta de orden (i, j), Wi(i, j) es el elemento de orden (i, j) de una matriz de ponderación, mquant es el coeficiente de cuantificación, y rec(i, j) es el coeficiente de transformada de coseno discreta cuantificado inversamente de orden (i, j). El método de tratamiento está escrito en la sintaxis del lenguaje de programación C. La sintaxis de este lenguaje está expuesta en el texto Herbert Schildt, Using Turbo C, Osborne McGraw Hill (1988), especialmente en las páginas 83-87.
Los coeficientes de transformada de coseno discreta cuantificados son cuantificados inversamente, y los coeficientes de transformada de coseno discreta resultantes son sometidos a continuación a tratamiento de transformada de coseno discreta inversa. Sin embargo, en el sistema MPEG1, a los coeficientes de transformada de coseno discreta que tienen un valor par se les suma +1 o -1 para asegurar que los coeficientes de transformada de coseno discreta sometidos a tratamiento de transformada de coseno discreta inversa tienen todos valores impares. Como resultado de esta operación, por ejemplo, cuando solamente el primero de los cuatro coeficientes especiales F(0,0) tiene un valor no nulo, porque se produce un error de desadaptación cuando F(0,0) es múltiplo de cuatro pero no múltiplo de ocho, si los coeficientes de transformada de coseno discreta se tratan de modo que tengan todos un valor impar, el resultado, cuando el coeficiente de transformada de coseno discreta se somete a tratamiento de transformada de coseno discreta inversa, no puede ser de la forma *.5. Similarmente, cuando solamente uno de los otros cuatro coeficientes especiales F(0,4), F(4,0), F(4,4) tiene un valor no nulo, se producirá un error de desadaptación. Sin embargo, cuando varios de los cuatro coeficientes especiales tienen un valor no nulo, como puede verse por la figura 4, o cuando aparecen pares de coeficientes dispuestos simétricamente, como en los casos (1) y (2) mencionados anteriormente, el hecho de hacer que todos los coeficientes de transformada de coseno discreta tengan un valor impar no impedirá que se produzca un error de desadaptación.
Por tanto, el proceso de conversión a valor impar del sistema MPEG1 no evitará que se produzca un error de desadaptación acumulativo cuando dos o más de los coeficientes de transformada de coseno discreta tienen un valor no nulo. Además, el tratamiento de conversión a valor impar del sistema MPEG1 reduce en un factor de 2 la resolución de los coeficientes de transformada cuantificados, puesto que no se admiten coeficientes de transformada con valores pares. Esto degrada la calidad de la imagen. Si se requiere una alta calidad de imagen, esto es problemático. Es claramennte deseable un modo de evita error de desadaptación acumulativos mejor que el propuesto en la norma MPEG1.
Teniendo en cuenta los problemas que se han presentado previamente en la técnica anterior, un objeto de este invento es crear un aparato que evita efectivamente que se produzcan errores de desadaptación acumulativos cuando los coeficientes de transformada son sometidos a transformada ortogonal inversa, y en el cual no se degrada la resolución de los coeficientes de transformada.
En particular, un objeto del invento es crear un aparato para la transformación ortogonal inversa de coeficientes de transformada, que resuelve eficazmente el problema de los errores de desadaptación.
Particularmente, un objeto de este invento es crear un aparato para el pretratamiento de un bloque de coeficientes de transformada antes de la transformación ortogonal inversa del bloque de coeficientes de transformada, de modo que se evitan los errores de redondeo cuando se transforma inversamente el bloque de coeficientes de transformada.
Adicionalmente, un objeto de este invento es crear un procedimiento de compresión de señales de imagen con movimiento y de expansión de señales de imagen con movimiento, en el cual se eliminan los errores de desadaptación, y las medidas para evitar el error de desadaptación provocan el menor deterioro posible de la calidad de imagen.
El objeto de este invento contempla evitar fácil y eficazmente los errores de desadaptación que no podrían evitarse mediante la solución convencional.
Consiguientemente, el invento crea un aparato cuyas características se definen en las reivindicaciones anexas, para el tratamiento de un conjunto de coeficientes de transformada para obtener un conjunto de coeficientes de transformada inmune a errores para tratamiento mediante una transformación ortogonal inversa. El conjunto de coeficientes de transformada inmune a errores es inmune a errores de redondeo cuando se somete a la transformación ortogonal inversa. En el método, los coeficientes de transformada del conjunto se suman. Se juzga la paridad de la suma (es decir, si la suma es impar o par). Cuando se determina que la paridad de la suma es par, la paridad de uno de los coeficientes de transformada del conjunto se invierte para proporcionar un coeficiente de transformada de paridad invertida. El coeficiente de transformada de paridad invertida hace impar la paridad de la suma. Finalmente, el conjunto de coeficientes de transformada, incluyendo el coeficiente de transformada de paridad invertida, se presenta como conjunto inmune a errores.
Cada uno de los coeficientes de transformada puede ser representado por un número binario. En ese caso, se determina el bit menos significativo de cada uno de los coeficientes de transformada del conjunto. Los coeficientes de transformada que tienen un bit menos significativo igual a 1 en el conjunto se cuentan para obtener un cómputo. El cómputo se juzga para determinar cuando es un número par. Cuando se determina que el cómputo es un número par, uno de los coeficientes de transformada se altera para obtener un coeficiente de transformada modificado. El coeficiente de transformada modificado hace el cómputo impar. Finalmente, el conjunto de coeficientes de transformada, incluyendo el coeficiente de transformada modificado, se somete a transformación ortogonal inversa.
El aparato del invento puede comprender un circuito de determinación de estado del bit menos significativo para juzgar el estado del bit menos significativo de cada coeficiente de transformada. Un circuito contador genera un cómputo contando estos coeficientes de transformada que tienen un bit menos significativo igual a 1, de acuerdo con el juicio generado por el circuito de determinación de estado del bit menos significativo. Un circuito de determinación de estado de cómputo juzga cuando el cómputo del circuito contador es un número par. Finalmente, un circuito de conversión de cómputo en número impar opera cuando el circuito de determinación de estado de cómputo juzga que el cómputo es un número par, para cambiar uno de los coeficientes de transformada para obtener un coeficiente de transformada modificado. El coeficiente de transformada modificado convierte el cómputo en un número impar. Finalmente, un circuito de transformada ortogonal inversa recibe del circuito de conversión de cómputo en número impar el conjunto de coeficientes de transformada, incluyendo el coeficiente de transformada modificado.
El invento crea también un sistema para comprimir una señal de imagen con movimiento. La señal de imagen con movimiento incluye imágenes, y cada imagen está dividida en bloques. El aparato comprende un codificador predictivo que codifica predictivamente bloques de la señal de imagen con movimiento utilizando bloques de adaptación de una imagen de referencia para formar bloques de diferencia. Un codificador de bloques de diferencia comprime los bloques de diferencia generados por el codificador predictivo para formar una señal de imagen con movimiento comprimida. El codificador de bloques de diferencia incluye un circuito de transformada ortogonal que transforma ortogonalmente los bloques de diferencia generados por el codificador predictivo para obtener bloques de coeficientes de transformada, y un cuantificador que cuantifica los bloques de coeficientes de transformada generados por el circuito de transformada ortogonal para obtener bloques de señal comprimida. La señal de imagen con movimiento comprimida se deduce de los bloques de señal comprimida.
El sistema incluye también un decodificador local que descomprime los bloques de señal comprimida generados por el codificador de bloques de diferencia para proporcionar bloques de diferencia restaurados sin incurrir en errores de redondeo cuando los bloques de señal comprimida son sometidos a transformación ortogonal inversa. El decodificador local incluye un cuantificador inverso que cuantifica inversamente los bloques de señal comprimida procedentes del codificador de bloques de diferencia para proporcionar bloques de coeficientes de transformada restaurados. Un aparato de acuerdo con el invento preprocesa los coeficientes de transformada restaurados. Finalmente, un circuito de transformada ortogonal inversa recibe el bloque de coeficientes de transformada restaurados, incluyendo el coeficiente de transformada de paridad invertida generado por los medios de conversión de suma en número impar. El circuito de transformada ortogonal inversa proporciona los bloques de diferencia restaurados.
El aparato puede incluir, también, un decodificador predictivo que decodifica predictivamente los bloques de diferencia restaurados procedentes del decodificador local para reconstruir bloques de imagen correspondientes a los bloques de la señal de imagen con movimiento. Finalmente, el aparato incluye una memoria de imagen que almacena los bloques de imagen reconstruidos, generados por el decodificador predictivo, como bloques de imagen reconstruida para ser utilizados como imagen de referencia para codificar predictivamente otras imágenes de la señal de imagen con movimiento.
El invento crea también un aparato para descomprimir una señal de imagen con movimiento comprimida para proporcionar una señal de salida de imagen con movimiento. La señal de imagen con movimiento comprimida incluye porciones de señal que representan cada una imagen de la señal de salida de imagen con movimiento. Las porciones de señal incluyen bloques de señal comprimidos codificados con longitud variable. El aparato comprende un codificador inverso de longitud variable que aplica una codificación inversa de longitud variable a los bloques de señal comprimidos codificados con longitud variable para proporcionar bloques de señal comprimida.
Un decodificador descomprime los bloques de señal comprimida proporcionados por el codificador inverso de longitud variable para proporcionar bloques de diferencia restaurados sin incurrir en errores de redondeo cuando los bloques de señal comprimida son sometidos a transformación ortogonal inversa. El decodificador incluye un cuantificador inverso que cuantifica inversamente cada uno de los bloques de señal comprimida, generados por el codificador de bloques de diferencia, para proporcionar un bloque de coeficientes de transformada restaurados. Un aparato de acuerdo con el invento preprocesa los bloques de coeficientes de transformada restaurados. Un circuito de transformada ortogonal inversa recibe el bloque de coeficientes de transformada restaurados, que incluye el coeficiente de transformada de paridad invertida, del convertidor de suma en número impar y genera los bloques de diferencia restaurados.
El aparato puede incluir también un decodificador predictivo que decodifica predictivamente los bloques de diferencia restaurados generados por el decodificador para reconstruir bloques de imagen, y una memoria de imagen que almacena los bloques de imagen reconstruidos proporcionados por el decodificador predictivo como bloques de una imagen reconstruida. La imagen reconstruida está prevista ppara ser utilizada como imagen de referencia para decodificar predictivamente otras imágenes de la señal de imagen con movimiento. Finalmente, el aparato incluye un circuito que lee la señal de salida de imagen con movimiento de la memoria de imagen.
En el aparato de descompresión que se acaba de describir, el acumulador, el circuito de determinación de paridad y el convertidor de suma en número impar pueden ser sustituidos por un circuito de determinación de bit menos significativo que determina el bit menos significativo de cada uno de los bloques de coeficientes de transformada restaurados, un contador que proporciona un cómputo contando los bloques de coeficientes de transformada restaurados en cada bloque que tienen un bit menos significativo igual a 1, un circuito de determinación de cómputo que juzga cuando el cómputo del contador es un número par, y un circuito de conversión de cómputo en número impar que opera cuando el circuito de determinación de cómputo juzga que el cómputo es un número par, para cambiar uno de los bloques de coeficientes de transformada restaurados del bloque para proporcionar un coeficiente de transformada modificado que convierte el cómputo en un número impar.
Se describirá ahora el modo en que el invento evita los errores de desadaptación acumulativos. Un examen de la ecuación (4) muestra que se produce desadaptación cuando las expresiones de la ecuación generan un resultado de (2n + 1)/2, donde n es un número entero cualquiera.
La ecuación (4) puede resumirse como:
f(x, y) = 1/8 ACC
donde ACC es la suma de todos los coeficientes.
\newpage
La configuración de desadaptación más frecuente es:
f(x, y) = 1/8 ACC = (2n +1)/2 = 1/8 (4\text{*}(2n +1))
De esta expresión puede deducirse que si ACC se convierte en un número impar, nunca se producirá un error de desadaptación.
Consiguientemente, este invento utiliza un esquema para cuantificar inversamente los coeficientes de transformada de coseno discreta, para calcular la suma de los coeficientes de transformada de coseno discreta. Si la suma de coeficientes de transformada de coseno discreta tienen valor par (es decir, la paridad de la suma es par), la paridad de uno de los coeficientes de transformada de coseno discreta se cambia para hacer impar la suma de los coeficientes de transformada de coseno discreta (es decir, para hacer impar la paridad de la suma). Es suficiente cambiar solamente la paridad de uno de los coeficientes de transformada de coseno discreta para hacer impar la suma de dichos coeficientes. Además, puede cambiarse la paridad del coeficiente que tiene la menor influencia en el valor de salida de la transformada de coseno discreta inversa. En otras palabras, este invento, comprobando la paridad de la suma de los coeficientes de transformada de coseno discreta antes del tratamiento de transformada de coseno discreta inversa y, si la paridad de la suma es par, cambiando la paridad de uno de los coeficientes de transformada de coseno discreta para hacer impar la suma de los coeficientes de transformada de coseno discreta, evita eficazmente la aparición de errores de desadaptación.
Debe destacarse que, de acuerdo con el invento, es suficiente cambiar la paridad de solamente uno de los coeficientes de transformada de coseno discreta para hacer impar la suma de los coeficientes de transformada de coseno discreta. El sistema MPEG1 hace impares todos los coeficientes de transformada de coseno discreta, lo cual reduce la resolución de los coeficientes de transformada de coseno discreta sometidos a tratamiento de transformada de coseno discreta inversa en un factor de 2. El procedimiento de evitación de errores de desadaptación de acuerdo con el invento, por otra parte, hace impar la suma de los coeficientes de transformada de coseno discreta de un modo tal que no disminuyen sustancialmente las precisiones de los valores de entrada y salida de la transformada de coseno discreta inversa. Cuando se aplica el método de acuerdo con el invento a un compresor de señal de imagen con movimiento, a un expansor de señal de imagen con movimiento comprimida, o a un aparato para transmitir una señal de imagen con movimiento comprimida, se hace mínima la degradación de la calidad de imagen.
Adicionalmente, cuando se aplica el invento al sistema MPEG, el incremento de cuantificación mínimo puede ser igual a 1, en contraste con el método de la técnica anterior en el cual el incremento mínimo de cuantificación era igual a 2. Se describirá adicionalmente el invento posteriormente con referencia a la siguiente exposición de realizaciones a modo de ejemplo y a los dibujos que se acompañan, en los cuales:
La figura 1 es un diagrama de bloques que muestra la configuración de un aparato compresor convencional de señal de imagen con movimiento de acuerdo con el sistema MPEG.
La figura 2 es un diagrama de bloques que muestra la configuración de un aparato expansor convencional de señal de imagen con movimiento de acuerdo con el sistema MPEG.
La figura 3 ilustra la secuencia según la cual es comprimida una señal de imagen con movimiento en el sistema MPEG.
La figura 4 muestra ejemplos reales de los valores de coeficientes de transformada de coseno discreta.
La figura 5 ilustra las operaciones de tratamiento utilizadas para cuantificar inversamente tanto macro bloques intra como macro bloques no intra en el sistema MPEG1 convencional.
La figura 6 es un diagrama de bloques que muestra la configuración de una primera realización de un aparato compresor de señal de imagen con movimiento de acuerdo con el invento.
La figura 7 ilustra como se lee un bloque de coeficientes de transformada de coseno discreta utilizando exploración en zigzag.
La figura 8 es un diagrama de bloques de una primera realización práctica del circuito 14 de conversión a valor impar de la suma representado en la figura 6.
La figura 9 es un diagrama de flujo que ilustra el funcionamiento del circuito 14 de conversión a valor impar de la suma representado en la figura 8.
La figura 10A es un diagrama de bloques de una segunda realización del circuito de conversión a valor impar de la suma representado en la figura 6.
La figura 10B muestra una variante de la segunda realización del circuito de conversión a valor impar de la suma representado en la figura 6.
La figura 11 es un diagrama de bloques que muestra una primera realización del inversor de paridad representado en la figura 8.
La figura 12 es un diagrama de flujo para explicar el funcionamiento de una segunda realización del inversor de paridad mencionado anteriormente.
La figura 13 es un diagrama de bloques de la segunda realización del inversor de paridad mencionado anteriormente.
La figura 14 es un diagrama de flujo para explicar el funcionamiento de una tercera realización del inversor de paridad mencionado anteriormente.
La figura 15 es un diagrama de bloques de la tercera realización del inversor de paridad mencionada anteriormente.
La figura 16 es un diagrama de flujo para explicar el funcionamiento de una cuarta realización del inversor de paridad mencionado anteriormente.
La figura 17 es un diagrama de bloques de la cuarta realización del inversor de paridad mencionada anteriormente.
La figura 18 es un diagrama de bloques de una tercera realización del circuito de conversión a valor impar de la suma representado en la figura 6.
La figura 19 es un diagrama que muestra la configuración de la primera realización de un aparato descompresor de señal de imagen con movimiento comprimida de acuerdo con el invento.
La figura 20 es un diagrama de bloques de un cuantificador inverso y convertidor de suma en número impar incluido en el aparato descompresor de señal de imagen con movimiento comprimida representado en la figura 19.
La figura 21 es un diagrama de temporización que explica el funcionamiento del cuantificador inverso y convertidor de suma en número impar mencionado anteriormente.
La figura 22 es un diagrama de bloques que muestra la configuración de una segunda realización del aparato compresor de señal de imagen con movimiento de acuerdo con el invento.
La figura 23 es un diagrama de bloques que muestra una primera realización del circuito convertidor de suma en número impar correspondiente a la segunda realización del aparato compresor de señal de imagen con movimiento ilustrado en la figura 22.
La figura 24 es un diagrama de bloques que muestra una segunda realización del circuito convertidor de suma en número impar correspondiente a la segunda realización del aparato compresor de señal de imagen con movimiento ilustrado en la figura 22.
La figura 25 es un diagrama de bloques que muestra una tercera realización del circuito convertidor de suma en número impar correspondiente a la segunda realización del aparato compresor de señal de imagen con movimiento representado en la figura 22.
La figura 26 es un diagrama de bloques que representa una realización del inversor de paridad incluido en los circuitos de conversión a valor impar de la suma ilustrados en las figuras 23-25.
La figura 27 muestra una primera variante del inversor de paridad representado en la figura 26.
La figura 28 representa una segunda variante del inversor de paridad ilustrado en la figura 26.
La figura 29 representa una tercera variante del inversor de paridad ilustrado en la figura 26.
La figura 30 es un diagrama de bloques que muestra la configuración de un segundo expansor de señal de imagen con movimiento comprimida a modo de ejemplo de acuerdo con el invento.
Se describirán ahora con referencia a los dibujos realizaciones a modo de ejemplo de un método de transformada de coseno discreta inversa, un aparato de transformada de coseno discreta inversa, un aparato compresor de señal de imagen con movimiento, un aparato descompresor de señal de imagen con movimiento comprimida, y un aparato de transmisión.
El invento se aplica a un sistema de codificación híbrido en el cual se combina la codificación predictiva con compensación de movimiento con el tratamiento de transformada de coseno discreta. Este sistema de codificación híbrido se describe en la norma ISO-IEC/JTC1/SC2/WG11 (popularmente denominada MPEG), al que se aplicará el invento definido en las reivindicaciones anexas. La configuración básica del sistema híbrido de codificación MPEG es bien conocida. El informe de la norma VG11 incluye un glosario de términos útil utilizado en la presente memoria.
La codificación predictiva con compensación de movimiento es un método para reducir la redundancia de una señal de imagen con movimiento, explotando la correlación de la señal de imagen con movimiento en el dominio del tiempo. La predicción para compensación de movimiento de la imagen en curso (es decir, la imagen que se está codificando en cada momento) se realiza utilizando otra imagen, ya decodificada, de la señal de imagen con movimiento como imagen de referencia. Los errores resultantes de predicción con compensación de movimiento se incluyen en la señal comprimida junto con un vector de movimiento y un modo de predicción, etc. Esto reduce notablemente la cantidad de información en la señal de imagen con movimiento comprimida que se requiere para representar la imagen en curso.
La señal de error de predicción con compensación de movimiento es comprimida utilizando un compresor de señal que explota la correlación espacial de cada imagen que constituye la imagen en movimiento. El compresor de señal de diferencia incluye típicamente un circuito de transformada ortogonal, tal como un circuito de cálculo de la transformada de coseno discreta, y un cuantificador. La transformada de coseno discreta es una forma de transformada ortogonal que concentra la potencia de la señal en componentes de frecuencia específicas como resultado de la correlación bidimensional intra imágenes (cuadro o campo) de la imagen. De este modo, solamente están incluidos en la señal comprimida, bien sea directamente o después de compresión adicional, los coeficientes concentrados y distribuidos. Esto reduce adicionalmente la cantidad de información en la señal de imagen con movimiento comprimida que se requiere para representar la imagen en curso.
La codificación predictiva con compensación de movimiento inter imágenes puede realizarse entre cuadros de la señal de imagen con movimiento. Alternativamente, si la señal de imagen con movimiento es una señal entrelazada, la codificación predictiva con compensación de movimiento puede realizarse entre campos. Adicionalmente, la codificación predictiva con compensación de movimiento inter imágenes puede conmutarse adaptativamente entre codificación inter cuadros y codificación inter campos, dependiendo de las propiedades de la señal de imagen con movimiento.
1. Primera Realización
En la figura 6 se muestra la configuración práctica del aparato compresor de señal de imagen con movimiento al cual se aplica el invento como se define en las reivindicaciones anexas. En el aparato representado en la figura 6, la señal de imagen con movimiento se divide en imágenes, y es comprimida imagen por imagen. Cada imagen se divide en bloques de imagen, y la imagen se comprime bloque por bloque. El bloque de imagen que se está comprimiendo en cada momento se denominará bloque de imagen en curso. El bloque de imagen en curso es un bloque de una imagen denominada imagen en curso.
La señal de imagen con movimiento, normalmente una señal de video, se suministra al primer grupo 2 de memorias de imagen, en el que se almacenan transitoriamente varias imágenes de la señal de imagen con movimiento. El controlador 3 de memoria controla la lectura de imágenes del primer grupo 2 de memorias de imagen y del segundo grupo 4 de memorias de imagen. El controlador 3 de memoria suministra también la señal SS de iniciación de línea de bloques y la señal BS de iniciación de macrobloque al contador 5 de líneas matriciales/macrobloques. El controlador de memoria suministra estas señales, respectivamente, en sincronismo con cada línea de bloques y cada macrobloque de cada imagen (por ejemplo, la imagen en curso) leída del primer grupo 2 de memorias de imagen para compresión. Una línea de bloques es una fila horizontal de bloques que cubre el ancho de la imagen.
El predictor 6 de movimiento efectúa la predicción de movimiento realizando la adaptación de bloques entre el bloque de imagen en curso y varios bloques de las imágenes anterior y siguiente almacenadas en el primer grupo 2 de memorias de imagen. La adaptación de bloques se realiza utilizando bloques de, por ejemplo, 16 x 16 elementos de imagen. La señal de indicación de imagen de referencia con predicción de movimiento generada por el controlador 3 de memoria, selecciona los bloques de las imágenes anterior y siguiente almacenadas en el primer grupo 2 de memorias de imagen para comprobar su adaptación con el bloque en curso. El predictor 6 de movimiento suministra a un compensador 7 de movimiento, como vector MV de movimiento, la posición de un bloque en una de las imágenes anterior o siguiente almacenadas en el primer grupo 2 de memorias de imagen, para la cual son mínimas las diferencias entre el bloque y el bloque de imagen en curso, es decir los errores de predicción de movimiento.
En respuesta al vector MV de movimiento, el compensador 7 de movimiento hace que sea leído un bloque de cada una de las imágenes reconstruidas almacenadas en el segundo grupo 4 de memorias de imagen como bloque de adaptación potencial. La posición en las imágenes reconstruidas de la que se leen los bloques de adaptación potenciales está especificada por el vector MV de movimiento. La señal de indicación de imagen de referencia con compensación de movimiento generada por el controlador 3 de memoria selecciona entonces uno de los bloques de adaptación potenciales leídos del segundo grupo 4 de memorias de imagen, como bloque de adaptación para el bloque en curso. Las imágenes reconstruidas almacenadas en el segundo grupo 4 de memorias de imagen son imágenes que han sido reconstruidas decodificando localmente los coeficientes de transformada de coseno discreta cuantificados generados por el codificador 9 de bloques de diferencias, que se describirá posteriormente.
La imagen reconstruida, de la cual es seleccionado el bloque de adaptación por la señal de indicación de imagen de referencia con compensación de movimiento, depende del modo de predicción de la imagen en curso. En el modo de predicción de avance, el bloque de adaptación se selecciona de una imagen reconstruida anterior. En el modo de predicción bidireccional, el bloque de adaptación se selecciona de una imagen reconstruida anterior y una imagen reconstruida futura, o bien puede generarse realizando una operación lineal (por ejemplo, cálculo del valor medio) sobre bloques de una imagen reconstruida anterior y una imagen reconstruida futura. Finalmente, cuando la imagen en curso es codificada en el modo de codificación intra imágenes, es decir la imagen es codificada sin predicción, se utiliza un bloque nulo, en el cual todos los valores de elementos de imagen están puestos a cero, como bloque de adaptación. Los bloques de adaptación leídos del segundo grupo 4 de memorias de imagen son modificados adaptativamente de tal modo que se selecciona para cada bloque de la señal de imagen con movimiento un bloque de adaptación que se adapta óptimamente.
El compensador 7 de movimiento selecciona el modo de predicción para cada imagen calculando primero la suma de los valores absolutos de las diferencias elemento de imagen por elemento de imagen entre el bloque de imagen en curso y los bloques de adaptación potenciales generados en los diferentes modos de predicción. A continuación, el compensador 7 de movimiento selecciona el modo de predicción para el cual esta suma es mínima. El compensador 7 de movimiento suministra la señal MM de modo de predicción, que indica el modo de predicción seleccionado, al codificador 17 de longitud variable (que se describirá posteriormente). El compensador 7 de movimiento hace también que el segundo grupo 4 de memorias de imagen suministre al circuito 8 generador de diferencias el bloque S2 de adaptación correspondiente al modo de predicción seleccionado.
El circuito 8 generador de diferencias recibe también el bloque S1 de imagen en curso de la señal de imagen con movimiento leída del primer grupo 2 de memorias de imagen, y calcula las diferencias elemento de imagen por elemento de imagen entre el bloque S1 de imagen en curso y el bloque S2 de adaptación. El circuito 8 generador de diferencias suministra al codificador 9 de bloques de diferencias el bloque S3 de diferencias resultante. El codificador 9 de bloques de diferencias comprime el bloque S3 de diferencias para formar el bloque SC de coeficientes de transformada cuantificados. El bloque SC de coeficientes de transformada cuantificados es suministrado al decodificador local 10, en el que es expandido para proporcionar el bloque S4 de diferencias recuperado. El decodificador local 10 del aparato compresor de señal de imagen con movimiento tiene una configuración similar a la del aparato expansor de señal de imagen con movimiento comprimida, que se describirá posteriormente, pero difiere en los detalles.
Se describirán ahora el codificador 9 de bloques de diferencias y el decodificador local 10.
El codificador 9 de bloques de diferencias comprende el circuito 11 de transformación de coseno discreta y el cuantificador 12, como se muestra en la figura 6. El circuito 11 de transformación de coseno discreta utiliza tratamiento de transformada de coseno discreta para transformar ortogonalmente el bloque S3 de diferencias proporcionado por el circuito 8 generador de diferencias. El circuito 11 de transformación de coseno discreta suministra el bloque resultante de coeficientes de transformada de coseno discreta al cuantificador 12. El cuantificador 12 cuantifica el bloque de coeficientes de transformada de coseno discreta para proporcionar el bloque SC de coeficientes de transformada cuantificados.
El decodificador local 10 comprende el cuantificador inverso 13, el circuito 14 de conversión a valor impar de suma y el circuito 15 de transformada de coseno discreta inversa, como se muestra en la figura 6. El cuantificador inverso 13 utiliza una tabla de cuantificación para cuantificar inversamente el bloque SC de coeficientes de transformada cuantificados generado por el cuantificador 12. El circuito 14 de conversión a valor impar de suma realiza una operación de inversión de paridad sobre el bloque resultante de coeficientes de transformada de coseno discreta cuando la suma de los mismos no es un número impar. Esto evita que se produzca un error de desadaptación cuando el bloque de coeficientes de transformada de coseno discreta cuya suma se ha convertido en un valor impar es sometido a transformada ortogonal inversa. El circuito 15 de transformada de coseno discreta inversa realiza un tratamiento de transformada de coseno discreta inversa sobre el bloque de coeficientes de transformada de coseno discreta cuya suma ha sido convertida en un valor impar y que son generados por el circuito 14 de conversión a valor impar de suma, para proporcionar un bloque de diferencias recuperado.
Se describirá ahora la cuantificación realizada por el cuantificador 12. Cada bloque de coeficientes de transformada de coseno discreta de 8 x 8 es cuantificado. Cada bloque de una imagen comprimida en el modo de codificación intra imágenes (una imagen I) se denomina macrobloque intra. Cada bloque comprimido en un modo de codificación inter imágenes se denomina macrobloque no intra. Cuando es transformado ortogonalmente un macrobloque intra, el coeficiente de transformada de coseno discreta de la componente (0,0) es el coeficiente de continua. El coeficiente de continua es cuantificado dividiendo por 8 dicho coeficiente, con redondeo, cuando se cuantifica con una precisión de ocho bits, por 4 cuando se cuantifica con una precisión de nueve bits, por 2 cuando se cuantifica con una precisión de diez bits, y por 1 cuando se cuantifica con una precisión de once bits. La componente continua de un macro bloque intra se cuantifica de acuerdo con las siguientes ecuaciones, que están escritas en la sintaxis del lenguaje de programación C:
QDC = dc // 8 (8 bits)
QDC = dc // 4 (9 bits)
QDC = dc // 2 (10 bits)
QDC = dc // 1 (11 bits) ... (5)
donde dc es el coeficiente de continua y QDC es la componente continua cuantificada.
Los coeficientes de transformada de coseno discreta, diferentes del coeficiente de continua, resultantes de transformar ortogonalmente un macrobloque intra (las "componentes de alterna"), son cuantificados determinando los factores de cuantificación ac^{-}(i,j) por ponderación de los coeficientes ac(i, j) de transformada de coseno discreta por la matriz Wi de ponderación, de acuerdo con la siguiente ecuación:
... (6)ac^{-}(i,j) = (16 \text{*} ac(i,j)) // Wi(i,j)
Los coeficientes de la matriz Wi de ponderación son los siguientes:
Wi = \hskip0.2cm 8 16 19 22 26 27 29 34
16 16 22 24 27 29 34 37
19 22 26 27 29 34 34 38
22 22 26 27 29 34 37 40
22 26 27 29 32 35 40 48
26 27 29 32 35 40 48 58
26 27 29 34 38 46 56 69 ... (7)
A continuación, utilizando la ecuación siguiente, se cuantifican los factores ac^{-}(i,j) de cuantificación para determinar los niveles QAC(i, j) de cuantificación de los respectivos coeficientes de alterna.
(8)QAC(i,j)=\frac{ac^{-}(i,j)+sign(ac^{-}(i,j))\text{*}((p\text{*} mquant)//q)}{(2\text{*} mquant)}
En la ecuación anterior, p y q son números enteros fijos arbitrarios, por ejemplo p = 3 y q = 4, y mquant es el coeficiente de cuantificación.
Los coeficientes de transformada de coseno discreta resultantes de transformar ortogonalmente un macrobloque de codificación inter imágenes (un "macrobloque no intra") son cuantificados determinando los factores ac^{-}(i,j) de cuantificación mediante la ponderación de todos los coeficientes de transformada de coseno discreta obtenidos por transformación del macrobloque no intra, por la matriz Wn de ponderación de acuerdo con la ecuación siguiente:
... (9)ac^{-}(i,j) = (16 \text{*} ac(i,j)) // Wn(i,j)
Los coeficientes de la matriz Wn de ponderación son los siguientes:
Wn = 16 17 18 19 20 21 22 23
17 18 19 20 21 22 23 24
18 19 20 21 22 23 24 25
19 20 21 22 23 24 26 27
20 21 22 23 25 26 27 28
21 22 23 24 26 27 28 30
22 23 24 26 27 28 30 31
23 24 25 27 28 30 31 33 ... (10)
A continuación, utilizando la ecuación siguiente, se cuantifican los factores ac^{-}(i,j) de cuantificación para determinar los niveles QAC(i, j) de cuantificación de los coeficientes de alterna.
QAC(i,j) = ac^{-}(i,j) / (2*mquant)
if (mquant==odd)
= (ac^{-}(i,j)+1 / (2*mquant)
if (mquant==even AND ac-<0) ... (11)
= (ac^{-}(i,j)-1 / (2*mquant)
if (mquant==even AND ac->0)
Los niveles QAC(i, j) de cuantificación resultantes se suministran al codificador 17 de longitud variable y al decodificador local 10 como el bloque anteriormente descrito de coeficientes SC de transformada de coseno discreta cuantificados.
El codificador 17 de longitud variable aplica codificación de longitud variable al bloque de coeficientes de transformada de coseno discreta cuantificados obtenidos cuantificando el bloque de coeficientes de transformada de coseno discreta. El codificador 17 de longitud variable determina diferencias entre los coeficientes de transformada cuantificados en los cuatro bloques de luminancia que constituyen cada macrobloque y el coeficiente de continua del respectivo macrobloque intra. El codificador de longitud variable utiliza a continuación una tabla de codificación de longitud variable para aplicar codificación de longitud variable a los valores de diferencia resultantes. Esta técnica aprovecha la alta correlación existente entre los cuatro bloques de luminancia adyacentes, lo cual significa que los coeficientes de continua tienen sustancialmente el mismo valor. El codificador 17 de longitud variable determina también las diferencias entre los coeficientes cuantificados de dos bloques de diferencia de color, y utiliza la tabla de codificación de longitud variable para aplicar codificación de longitud variable a los valores de diferencia resultantes. La tabla de codificación de longitud variable para los coeficientes de luminancia y la correspondiente a las diferencias de color son diferentes entre sí.
El codificador 17 de longitud variable aplica codificación de longitud variable al bloque de coeficientes de transformada de coseno discreta cuantificados leyendo el bloque de coeficientes de transformada de coseno discreta cuantificados en orden de exploración en zigzag, comenzando con el coeficiente de transformada de coseno discreta de la componente (0,0), como se muestra en la figura 7. El bloque de coeficientes de transformada de coseno discreta cuantificados se lee en zigzag porque los coeficientes de transformada de coseno discreta no nulos resultantes del tratamiento de transformada de coseno discreta están concentrados en general en la proximidad de la componente (0,0). De este modo, la lectura de los coeficientes de transformada de coseno discreta en zigzag aumenta la eficiencia de la codificación de longitud variable aumentando el campo de coeficientes de transformada de coseno discreta nulos consecutivos leídos entre cada uno de los coeficientes de transformada de coseno discreta no nulos.
El codificador 17 de longitud variable lee los coeficientes de transformada de coseno discreta en zigzag y determina el valor (en otras palabras, el nivel) de cada coeficiente de transformada de coseno discreta no nulo, y el número (en otras palabras, el campo de cobertura) de los coeficientes de transformada de coseno discreta nulos que le preceden. Este procedimiento realiza la codificación de longitud variable bidimensional del bloque de coeficientes de transformada de coseno discreta. Después de la codificación, los coeficientes del bloque se expresan mediante el número del campo de cobertura y pares de niveles. El codificador 17 de longitud variable añade también un código de dos bbits (EOB que indica el coeficiente de transformada de coseno discreta no nulo que es el último coeficiente de transformada de coseno discreta no nulo. El codificador 17 de longitud variable suministra a un convertidor de direcciones (no representado) la dirección del último coeficiente no nulo en orden de exploración en zigzag. El convertidor de direcciones convierte la dirección en orden de exploración en zigzag en una dirección, EOB_adrs, en orden de exploración de trama. El codificador 17 de longitud variable suministra la dirección EOB_adrs al circuito 14 de conversión a valor impar de suma.
El circuito 14 de conversión a valor impar de suma almacena la dirección EOB_adrs en orden de exploración de trama en el registro 25 representado, por ejemplo, en la figura 8, que se describirá posteriormente.
Se describirá ahora el cuantificador inverso 13. El cuantificador inverso 13 recibe el bloque SC de coeficientes de transformada de coseno discreta cuantificados procedente del codificador 10 de bloque de diferencias, y cuantifica inversamente el bloque de coeficientes de transformada de coseno discreta cuantificados para proporcionar un bloque de coeficientes de transformada de coseno discreta. En la práctica, el cuantificador inverso 13 cuantifica inversamente los coeficientes de continua cuantificados resultantes de transformar ortogonalmente un macrobloque intra utilizando el tratamiento definido por la ecuación (12) para proporcionar coeficientes de continua respectivos. El cuantificador inverso 13 cuantifica también inversamente los coeficientes de alterna resultantes de transformar ortogonalmente un macrobloque intra utilizando el tratamiento definido en la ecuación (13). Finalmente, el cuantificador inverso 13 cuantifica inversamente todos los coeficientes cuantificados resultantes de transformar ortogonalmente un macrobloque no intra utilizando el tratamiento definido en la ecuación (14).
rec(0, 0) = 8 * QDC
rec(0, 0) = 4 * QDC (9 bits)
rec(0, 0) = 2 * QDC (10 bits)
rec(0, 0) = 1 * QDC (11 bits) ... (12)
rec(i, j) = (mquant * 2 * QAC(i, j) \text{*} Wi(i, j)) / 16
if(QAC(i, j) == 0)
\hskip0.5cm rec(i, j) = 0 ... (13)
if(QAC(i,j) > 0)
\hskip0.5cm rec(i,j) = ((2*QAC(i,j)+1) mquant*Wn(i,j)) /16
if(QAC(i,j) < 0)
\hskip0.5cm rec(i,j) = ((2*QAC(i,j)-1) mquant*Wn(i,j)) /16
if(QAC(i, j) == 0)
\hskip0.5cm rec(i,j) = 0 ... (14)
El bloque resultante de coeficientes de transformada de coseno discreta es transferido desde el cuantificador inverso 13 hasta el circuito 14 de conversión a valor impar de suma, de cuya transferencia se ilustra un ejemplo práctico en la figura 8.
El circuito 14 de conversión a valor impar de suma comprende el acumulador 23A, el circuito 21 de determinación de paridad y el inversor 28 de paridad. El acumulador 23A determina la suma de los coeficientes de transformada de coseno discreta en el bloque de coeficientes de transformada de coseno discreta recibido del cuantificador inverso 13. El circuito 21 de determinación de paridad juzga si la suma de coeficientes de transformada de coseno discreta determinada por el acumulador 23A es un número impar o un número par, es decir si la paridad de la suma de los coeficientes de transformada de coseno discreta es impar o par. Solamente cuando el circuito 21 de determinación de paridad juzga que la paridad de la suma de los coeficientes de transformada de coseno discreta es par, el inversor 28 de paridad cambia la paridad de al menos uno de los coeficientes de transformada de coseno discreta del bloque para hacer impar la paridad de la suma de dichos coeficientes, es decir se hace impar la paridad de la suma. Esto evita que se produzca un error de desadaptación cuando el bloque de coeficientes de transformada de coseno discreta cuya paridad de suma ha sido convertida en impar, procedente del circuito 14 de conversión a valor impar de suma, es sometido a transformada ortogonal inversa por el circuito 15 de transformada de coseno discreta inversa.
El contador 20 cuenta el número de coeficientes de transformada de coseno discreta recibidos del cuantificador inverso 13, y suministra el cómputo coeff_adrs al circuito 21 de determinación de paridad y al selector 22 de memoria.
El acumulador 23A comprende el sumador 23 y el registro 24. El sumador 23 suma cada coeficiente de transformada de coseno discreta en un bloque de coeficientes de transformada de coseno discreta recibido del cuantificador inverso 13, a la suma de los coeficientes de transformada de coseno discreta ya recibidos en el bloque almacenado en el registro 24. El registro 24 es repuesto después de haber sido determinada la suma para cada bloque de coeficientes de transformada de coseno discreta. La suma resultante de dichos coeficientes es transferida desde el sumador 23 hasta el registro 24, y hasta el circuito 21 de determinación de paridad. El acumulador 23A necesita solamente sumar los bits menos significativos de los coeficientes de transformada de coseno discreta del bloque para proporcionar un resultado adecuado para que el circuito 21 de determinación de paridad juzgue si la paridad de la suma de los coeficientes de transformada de coseno discreta es impar o par.
El circuito 21 de determinación de paridad juzga si la paridad de la suma de los coeficientes de transformada de coseno discreta incluidos en el bloque es impar o par en respuesta al valor de cómputo coeff_adrs recibido del contador 20. Cuando todos los coeficientes de transformada de coseno discreta del bloque han sido suministrados al acumulador 23A, el valor de cómputo coeff_adrs indica que el acumulador 23A ha determinado la suma de todos los coeficientes de transformada de coseno discreta del bloque. En respuesta al valor coeff_adrs de cómputo, el circuito 21 de determinación de paridad juzga si la paridad de la suma de los coeficientes de transformada de coseno discreta procedente del acumulador 23A es impar o par. Por ejemplo, en el caso de una transformada de transformada de coseno discreta bidimensional de 8 x 8, el circuito 21 de determinación de paridad juzga si la paridad de la suma de los coeficientes de transformada de coseno discreta procedente del acumulador 23A es impar o par cuando el valor coeff_adrs de cómputo indica que los sesenta y cuatro coeficientes de transformada de coseno discreta del bloque han sido transferidos al acumulador 23A.
En la práctica, por ejemplo, cuando cada coeficiente de transformada de coseno discreta está representado por un número binario, el circuito 21 de determinación de paridad examina el bit menos significativo de la suma de los coeficientes de transformada de coseno discreta recibidos del acumulador 23A. Un bit menos significativo nulo indica que la paridad de la suma es par. En este caso, el circuito 21 de determinación de paridad suministra la señal REQ1 de solicitud de tratamiento al inversor 28 de paridad para hacer que este circuito realice una operación de inversión de paridad. En respuesta a la señal REQ1 de solicitud de tratamiento, el inversor 28 de paridad cambia la paridad de al menos uno (es decir, un número impar) de los coeficientes de transformada de coseno discreta para hacer impar la paridad de la suma de dichos coeficientes. Por otra parte, un bit menos significativo igual a 1 indica que la paridad de la suma es impar. En este caso, el circuito 21 de determinación de paridad no genera la señal REQ1 de solicitud de tratamiento, y el inversor 28 de paridad no modifica la paridad de todos los coeficientes de transformada de coseno discreta del bloque.
En el circuito práctico ilustrado, los coeficientes de transformada de coseno discreta procedentes del cuantificador inverso 13 son almacenados en la primera memoria 26 o en la segunda memoria 27 a través del selector 22 de memoria. El selector 22 de memoria funciona en respuesta al valor coeff_adrs de cómputo recibido del contador 20. Así, por ejemplo, cuando el selector 22 de memoria determina que todos los coeficientes de transformada de coseno discreta del bloque han sido almacenados en la primera memoria 26, el selector 22 de memoria especifica la segunda memoria, de modo que los coeficientes de transformada de coseno discreta del bloque siguiente son almacenados en la segunda memoria 27. De este modo, los bloques consecutivos de coeficientes de transformada de coseno discreta se almacenan alternativamente en la primera memoria 26 y en la segunda memoria 27. Cuando todos los coeficientes de transformada de coseno discreta del bloque han sido almacenados en la primera memoria 26 o en la segunda memoria 27, la memoria en la cual están almacenados todos los coeficientes de transformada de coseno discreta del bloque aplica la señal FULL1 o FULL2 de memoria llena al inversor 28 de paridad.
Cuando el inversor 28 de paridad recibe la señal FULL1 de memoria llena o la señal FULL2 de memoria llena, aplica la señal RD_EN1 de habilitación de lectura o la señal RD_EN2 de habilitación de lectura a la memoria que ha generado la señal de memoria llena. Esto hace que el bloque de coeficientes de transformada de coseno discreta sea transferido desde la memoria que ha generado la señal de memoria llena hasta el inversor 28 de paridad. El inversor 28 de paridad opera sobre el bloque de coeficientes de transformada de coseno discreta leído de la memoria en uno de dos modos, dependiendo de si el circuito 21 de determinación de paridad ha generado la señal REQ1 de solicitud de tratamiento. Cuando el inversor 28 de paridad recibe la señal REQ1 de solicitud de tratamiento, invierte el bit menos significativo de uno de los coeficientes de transformada de coseno discreta del bloque, por ejemplo el último coeficiente no nulo, en orden de exploración en zigzag. El inversor 28 de paridad identifica el coeficiente de transformada de coseno discreta cuya paridad puede ser invertida utilizando la dirección de los coeficientes de transformada de coseno discreta cuya paridad puede ser invertida almacenados en el registro 25. Por ejemplo, la figura 8 muestra la dirección del último coeficiente no nulo (dirección EOB_adrs), aplicada al comparador 62. Por tanto, en este ejemplo, el coeficiente de transformada de coseno discreta cuya paridad puede ser invertida es el último coeficiente no nulo. Cuando el inversor 28 de paridad invierte la paridad del coeficiente de transformada de coseno discreta cuya paridad puede invertirse, la paridad de la suma de coeficientes no nulos en el bloque, desde el primero hasta el último, se hace impar. El inversor 28 de paridad suministra todos los coeficientes de transformada de coseno discreta, diferentes del coeficiente con su bit menos significativo invertido, al circuito 15 de transformada de coseno discreta inversa, con el estado de sus bits menos significativos inalterado. El inversor 28 de paridad suministra también al circuito 15 de transformada de coseno discreta inversa el coeficiente de transformada de coseno discreta cuya paridad puede invertirse con el estado de su bit menos significativo, dependiendo de si el inversor de paridad ha recibido la señal REQ1 de solicitud de tratamiento.
El inversor 28 de paridad puede implementarse utilizando un computador o procesador de señal digital que funciona, por ejemplo, de acuerdo con el diagrama de flujo ilustrado en la figura 9. En este ejemplo, el coeficiente de transformada de coseno discreta cuya paridad puede invertirse es el último coeficiente no nulo. En la operación S1, el inversor 28 de paridad juzga, en base a la dirección EOB_adrs, si el coeficiente de transformada de coseno discreta que está siendo tratado es o no el coeficiente cuya paridad puede invertirse invirtiendo su bit menos significativo. Si el resultado de la operación S1 es afirmativo, la secuencia de ejecución prosigue hasta la operación S2. En otro caso, la ejecución prosigue hasta la operación S5, que se describirá posteriormente.
En la operación S2, el inversor 28 de paridad determina si ha sido recibida la señal REQ1 de solicitud de tratamiento. Si el resultado de la operación S2 es afirmativo, indicando que ha sido recibida la señal REQ1 de solicitud de tratamiento, la secuencia de ejecución prosigue hasta la operación S3. En caso contrario, no se ha recibido ninguna solicitud de tratamiento y la ejecución continúa hasta la operación S5.
En la operación S3, el inversor 28 de paridad invierte el bit menos significativo del coeficiente de transformada de coseno discreta cuya paridad puede invertirse para invertir su paridad, y por tanto para cambiar la paridad de la suma de los coeficientes de transformada de coseno discreta. La secuencia de ejecución pasa a la operación S4, en la que el coeficiente de transformada de coseno discreta de paridad invertida se suministra al circuito 15 de transformada de coseno discreta inversa (figura 10A). A continuación, la secuencia de ejecución retorna a la operación S1, en la que se trata el siguiente coeficiente de transformada de coseno discreta.
La secuencia de ejecución pasa a la operación S5 cuando el coeficiente de transformada de coseno discreta que se está tratando no es el coeficiente cuya paridad puede invertirse, o cuando el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse no va a tener invertida su paridad, es decir cuando no ha sido recibida la señal REQ1 de solicitud de tratamiento. En la operación S5, el coeficiente de transformada de coseno discreta se aplica al circuito 15 de transformada de coseno discreta inversa sin modificación. A continuación, la secuencia de ejecución retorna a la operación S1, donde se trata el siguiente coeficiente de transformada de coseno discreta.
Cuando los coeficientes de transformada de coseno discreta están representados por un código de complemento a 2, el bit menos significativo mencionado anteriormente es el bit menos significativo de la representación de complemento a 2. Por otra parte, cuando los coeficientes de transformada de coseno discreta están representados por un signo y un valor absoluto, el bit menos significativo mencionado anteriormente es el bit menos significativo del valor absoluto.
La configuración del circuito 14 de conversión a valor impar de suma no está limitada a la ilustrada en la figura 8. Por ejemplo, en el circuito de conversión a valor impar de la suma representado en la figura 10A, se ha añadido el detector 29 de bit menos significativo, y el sumador 23 se ha sustituido por la puerta 30 "O" exclusiva en el circuito de conversión a valor impar de la suma representado en la figura 8. Los elementos que figuran en el circuito representado en la figura 10A correspondientes a los del circuito ilustrado en la figura 8, están indicados por las mismas cifras de referencia y no se describirán nuevamente.
En la figura 10A, el detector 29 de bit menos significativo detecta el bit menos significativo de cada coeficiente de transformada de coseno discreta en el bloque de coeficientes de transformada de coseno discreta. La puerta 30 "O" exclusiva realiza una operación lógica "O" exclusiva entre cada coeficiente de transformada de coseno discreta del bloque y la suma lógica exclusiva, almacenada en el registro 24, de los bits menos significativos de los coeficientes de transformada de coseno discreta del bloque que han sido ya tratados. De este modo, la puerta 30 "O" exclusiva y el registro 24 obtienen la suma lógica exclusiva de los bits menos significativos de los coeficientes de transformada de coseno discreta en cada bloque. La combinación de la puerta 30 "O" exclusiva y el registro 24 puede considerarse también como disposición de cómputo de los coeficientes de transformada de coseno discreta que tienen un bit menos significativo igual a 1. Entonces, cuando han sido recibidos todos los coeficientes de transformada de coseno discreta del bloque, el estado de la salida de la puerta 30 "O" exclusiva indica si el cómputo de coeficientes de transformada de coseno discreta que tienen un bit menos significativo igual a 1 es impar o par. El circuito 21 de determinación de paridad emite a continuación la señal REQ1 de solicitud de tratamiento cuando es par el cómputo de los coeficientes de transformada de coseno discreta que tienen un bit menos significativo igual a 1.
La figura 10B muestra una configuración alternativa que puede utilizarse en sustitución de la puerta 30 "O" exclusiva y el registro 24. En esta disposición, los bits menos significativos de cada coeficiente de transformada de coseno discreta recibido del cuantificador inverso 13 son transferidos desde el detector 29 de bit menos significativo hasta la puerta "Y" 88. La puerta "Y" 88 deja pasar al contador 89 solamente los bits menos significativos que tienen el valor 1. El contador 89 se repone al comienzo de cada bloque de coeficientes de transformada de coseno discreta y cuenta cada bit menos significativo de valor 1 que recibe. El bit menos significativo del cómputo COUNT del contador 89 se transfiere al circuito 21 de determinación de paridad. Al final de cada bloque, el circuito 21 de determinación de paridad determina la paridad del bit menos significativo del cómputo COUNT del contador 89. Si la paridad del cómputo COUNT es impar (es decir, el bit menos significativo del cómputo COUNT es un 1), esto indica que existe un número impar de coeficientes de transformada de coseno discreta con un bit menos significativo igual a 1 en el bloque, y que la paridad de la suma de dichhos coeficientes del bloque e impar. Por otra parte, si la paridad del cómputo COUNT es par (es decir, el bit menos significativo del cómputo COUNT es un 0), esto indica que existe un número par de coeficientes de transformada de coseno discreta con un bit menos significativo igual a 1 en el bloque, y que la paridad de la suma de dichos coeficientes del bloque es par.
Se describirá ahora con referencia a la figura 11 una configuración práctica de una primera realización del inversor 28 de paridad incluido en los circuitos de conversión a valor impar de la suma ilustrados en las figuras 8 y 10A. El inversor 28 de paridad comprende el contador 61 de lectura, el comparador 62 de direcciones, el inversor 63 de bit menos significativo, las puertas "Y" 64, 65, 67 y 68, las puertas "O" 66 y 69, y las puertas inversoras 71 y 72.
El inversor 28 de paridad funciona del modo siguiente. Cuando el contador 61 de lectura recibe la señal FULL de memoria llena de la primera memoria 26 o de la segunda memoria 27, suministra la señal RD_EN de habilitación de lectura a la primera memoria 26 o a la segunda memoria 27. La señal de habilitación de lectura hace que la respectiva memoria transfiera secuencialmente los coeficientes de transformada de coseno discreta del bloque de coeficientes de transformada de coseno discreta almacenados en la misma a la primera puerta "Y" 67 a través de la vía de datos indicada como RDATA.
La señal FULL de memoria llena hace también que el contador 61 de lectura comience a contar los coeficientes de transformada de coseno discreta recibidos y proporcione al comparador 62 de direcciones un valor de cómputo que indica el número de coeficientes de transformada de coseno discreta recibidos. El comparador 62 de direcciones compara el valor de cómputo con la dirección recibida del registro 25 y determina si el coeficiente de transformada de coseno discreta recibido por la primera puerta "Y" 67 es el coeficiente cuya paridad puede invertirse, es decir el coeficiente de transformada de coseno discreta cuyo bit menos significativo puede invertirse. En el ejemplo ilustrado en la figura 11, el coeficiente de transformada de coseno discreta cuya paridad puede invertirse es el último coeficiente no nulo, identificado por la dirección EOB_adrs almacenada en el comparador 62 de direcciones. Cuando el valor de cómputo es igual a la dirección del coeficiente de transformada de coseno discreta cuya paridad puede invertirse, en este ejemplo la dirección EOB_adrs, el comparador 62 de direcciones determina que el coeficiente de transformada de coseno discreta es el coeficiente cuya paridad puede invertirse, y cambia el estado de su salida de 0 a 1.
La salida del comparador 62 de direcciones se aplica directamente a la segunda puerta "Y" 68 y, a través de la puerta inversora 72, a la primera puerta "Y" 67. De este modo, cuando el valor de cómputo no es igual a la dirección EOB_adrs, la primera puerta "Y" 67 se abre y la segunda puerta "Y" 68 se cierra. Por tanto, los coeficientes de transformada de coseno discreta pasan inalterados, a través de la primera puerta "Y" 67 y la puerta "O" 69, al circuito 15 de transformada de coseno discreta inversa.
Por otra parte, cuando el coeficiente de transformada de coseno discreta suministrado al inversor 28 de paridad es el coeficiente cuya paridad puede invertirse, y el valor de cómputo es igual a la dirección del coeficiente cuya paridad puede invertirse, en este ejemplo la dirección EOB_adrs, la salida del comparador 62 de direcciones cambia de estado como se ha descrito anteriormente. Este cambio cierra la primera puerta "Y" 67 y abre la segunda puerta "Y" 68. Como resultado, el coeficiente de transformada de coseno discreta con su bit menos significativo invertido, recibido a través de la puerta "O" 66, es suministrado al circuito 15 de transformada de coseno discreta inversa a través de la segunda puerta "Y" 68 y la puerta "O" 69.
El coeficiente de transformada de coseno discreta con su bit menos significativo invertido es suministrado selectivamente al circuito 15 de transformada de coseno discreta inversa en respuesta a la señal REQ1 de solicitud de tratamiento transfiriendo los coeficientes de transformada de coseno discreta, recibidos a través de la vía RDATA de datos, a la tercera puerta "Y" 64 y al inversor 63 de bit menos significativo. La señal REQ1 de solicitud de tratamiento es suministrada desde el circuito 21 de determinación de paridad directamente a la cuarta puerta "Y" 65 y, a través de la puerta inversora 71, a la tercera puerta "Y" 64. El inversor 63 de bit menos significativo invierte el bit menos significativo de cada coeficiente de transformada de coseno discreta recibido a través de la vía RDATA de datos y suministra el coeficiente de transformada de coseno discreta resultante con su bit menos significativo invertido a la cuarta puerta "Y" 65.
La ausencia de la señal REQ1 de solicitud de tratamiento, es decir cuando la señal de solicitud de tratamiento está en su estado 0, indica que el coeficiente de transformada de coseno discreta cuya paridad puede invertirse ha de suministrarse al circuito de transformada de coseno discreta inversa sin su bit menos significativo invertido. La señal REQ1 de solicitud de tratamiento en su estado 0 abre la tercera puerta "Y" 64 y cierra la cuarta puerta "Y" 65. En base a esta combinación, el coeficiente de transformada de coseno discreta cuya paridad puede invertirse, con su bit menos significativo no modificado, se transfiere desde la vía RDATA de datos hasta el circuito 15 de transformada de coseno discreta inversa a través de la tercera puerta "Y" 64, la puerta "O" 66, la segunda puerta "Y" 68 y la puerta "O" 69.
Por otra parte, la presencia de la señal REQ1 de solicitud de tratamiento, es decir la señal REQ1 de solicitud de tratamiento en su estado "1", indica que el coeficiente de transformada de coseno discreta cuya paridad puede invertirse ha de suministrarse al circuito de transformada de coseno discreta inversa con su bit menos significativo invertido para cambiar la paridad de la suma de los coeficientes de transformada de coseno discreta. La señal REQ1 de solicitud de tratamiento en su estado "1" cierra la tercera puerta "Y" 64 y abre la cuarta puerta "Y" 65. Esto transfiere el coeficiente de transformada de coseno discreta cuya paridad puede invertirse, con su bit menos significativo invertido, desde el inversor 63 de bit menos significativo hasta el circuito 15 de transformada de coseno discreta inversa a través de la cuarta puerta "Y" 65, la puerta "O" 66, la segunda puerta "Y" 68 y la puerta "O" 69.
Se describirá ahora con referencia a la figura 12 una segunda realización del inversor 28 de paridad. Cuando la segunda realización del inversor 28 de paridad recibe la señal REQ1 de solicitud de tratamiento, convierte en impar la paridad de la suma de los coeficientes de transformada de coseno discreta sumando 1 al coeficiente de transformada de coseno discreta cuya paridad puede invertirse.
La segunda realización del inversor 28 de paridad puede implementarse en un computador o procesador de señal digital que funciona de acuerdo con el diagrama de flujo ilustrado en la figura 12. El diagrama de flujo representado en la figura 12 es similar al diagrama de flujo representado en la figura 9, con la excepción de la operación realizada en la operación S3. En la operación S3, la segunda realización del inversor 28 de paridad hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta sumando 1 al coeficiente de transformada de coseno discreta cuya paridad puede invertirse, en vez de invertir el bit menos significativo del coeficiente de transformada de coseno discreta cuya paridad puede invertirse. El coeficiente de transformada de coseno discreta cuya paridad puede invertirse puede ser, por ejemplo, el último coeficiente no nulo del bloque, o el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta en el bloque.
Se describirá ahora con referencia a la figura 13 una configuración de circuito práctico de la segunda realización del inversor de paridad, en la cual se suma una unidad al coeficiente de transformada de coseno discreta cuya paridad puede invertirse para hacer impar la paridad de la suma de los coeficientes de transformada de coseno discreta en el bloque de coeficientes. La segunda realización del inversor de paridad representado en la figura 13 es similar a la primera realización del inversor 28 de paridad ilustrada en la figura 11. Los elementos del circuito representado en la figura 13 que corresponden a los del circuito representado en la figura 11 están indicados por las mismas cifras de referencia, y no se describirán nuevamente en este caso.
El inversor de paridad representado en la figura 13 incluye el sumador 73 de una unidad en lugar del inversor 63 de bit menos significativo representado en la figura 11. El sumador 73 de una unidad suma una unidad a cada coeficiente de transformada de coseno discreta leído de la primera memoria 26 o de la segunda memoria 27 y recibido a través de la vía RDATA de datos. Se selecciona uno de los coeficientes de transformada de coseno discreta con una unidad sumada en respuesta a la señal REQ1 de solicitud de tratamiento para hacer impar la paridad de la suma de los coeficientes de transformada de coseno discreta.
El funcionamiento del inversor de paridad ilustrado en la figura 13 es idéntico al del circuito representado en la figura 11, con la excepción de que el sumador 73 de una unidad suma una unidad a cada coeficiente de transformada de coseno discreta recibido a través de la vía RDATA de datos. También, cuando está presente la señal REQ1 de solicitud de tratamiento, y se detecta el coeficiente de transformada de coseno discreta cuya paridad puede invertirse, el coeficiente de transformada de coseno discreta al que se ha sumado una unidad es transferido desde el sumador 73 de una unidad hasta el circuito 15 de transformada de coseno discreta inversa a través de la tercera puerta "Y" 64, la puerta "O" 66, la segunda puerta "Y" 68 y la puerta "O" 69.
Se describirá ahora con referencia a las figuras 14 y 15 una tercera realización del inversor 28 de paridad.
Cuando la tercera realización del inversor de paridad recibe la señal REQ1 de solicitud de tratamiento, hace impar la suma de los coeficientes de transformada de coseno discreta en el bloque sustituyendo el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse por el coeficiente de transformada dee coseno discreta cuya parida ha de invertirse, y del que se ha restado una unidad, cuando el signo del coeficiente de transformada de coseno discreta es positivo, y al cual se ha sumado una unidad cuando el signo de dicho coeficiente es negativo. Este tratamiento no solamente invierte la paridad del coeficiente de transformada de coseno discreta cuya paridad ha de invertirse, sino que también reduce la magnitud de este coeficiente de transformada de coseno discreta, es decir asigna un valor más próximo a cero al coeficiente de transformada de coseno discreta cuya paridad ha de invertirse. El tratamiento aplicado al coeficiente de transformada de coseno discreta cuya paridad ha de invertirse está definido por la siguiente ecuación:
\newpage
if(rec > 0)
\hskip0.4cm rec = rec - 1
if(rec < 0)
\hskip0.4cm rec = rec + 1 ... (15)
donde rec es el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse.
La tercera realización del inversor 28 de paridad puede implementarse utilizando un computador o procesador de señal digital que funciona de acuerdo con el diagrama de flujo representado en la figura 14. En la operación S1, el inversor 28 de paridad juzga, en base a la dirección EOB_adrs, si el coeficiente de transformada de coseno discreta es o no el coeficiente cuya paridad puede invertirse. Por ejemplo, el inversor de paridad juzga si el coeficiente de transformada de coseno discreta es o no el último coeficiente no nulo. Si el resultado de la operación S1 es afirmativo, y el coeficieente de transformada de cosen discreta es el coeficiente cuya paridad puede invertirse, la secuencia de ejecución continúa hasta la operación S2. En caso contrario, cuando el coeficiente de transformada de coseno discreta no es el coeficiente cuya paridad puede invertirse, la secuencia de ejecución continúa hasta la operación S8.
En la operación S2, el inversor 28 de paridad determina si ha sido recibida o no la señal REQ1 de solicitud de tratamiento. Si el resultado de la operación S2 es afirmativo, indicando que ha sido recibida la señal REQ1 de solicitud de tratamiento, la secuencia de ejecución continúa hasta la operación S3. En caso contrario, no ha sido recibida ninguna solicitud de tratamiento y la secuencia de ejecución continúa hasta la operación S8. Puesto que solamente puede producirse un resultado afirmativo en la operación S2 si se ha obtenido un resultado afirmativo en la operación S1, el resultado afirmativo de la operación S2 indica que el coeficiente de transformada de coseno discreta es el coeficiente cuya paridad ha de invertirse.
En la operación S3, el inversor 28 de paridad determina la polaridad del coeficiente de transformada de coseno discreta cuya paridad ha de invertirse. Si el resultado de la operación S3 es afirmativo, indicando que la polaridad del coeficiente de transformada de coseno discreta es positiva, la secuencia de ejecución prosigue hasta la operación S4. En caso contrario, la polaridad del coeficiente de transformada de coseno discreta es cero o negativa, y la secuencia de ejecución continúa hasta la operación S6.
En la operación S4, el inversor 28 de paridad resta una unidad del coeficiente de transformada de coseno discreta cuya paridad ha de invertirse (es decir, suma -1 a dicho coeficiente), después de lo cual la secuencia de ejecución pasa a la operación S5, donde el coeficiente de transformada de coseno discreta con la paridad invertida es transferido al circuito 15 de transformada de coseno discreta inversa (figura 10A). A continuación, la secuencia de ejecución retorna a la operación S1, donde se trata el siguiente coeficiente de transformada de coseno discreta.
En otro caso, en la operación S6, el inversor 28 de paridad suma una unidad al coeficiente de transformada de coseno discreta cuya paridad ha de invertirse, después de lo cual la secuencia de ejecución continúa hasta la operación S7, donde el coeficiente de transformada de coseno discreta con la paridad invertida es transferido al circuito 15 de transformada de coseno discreta inversa. A continuación, la secuencia de ejecución retorna a la operación S1, donde se trata el siguiente coeficiente de transformada de coseno discreta.
La ejecución pasa a la operación S8 cuando el coeficiente de transformada de coseno discreta no es el coeficiente cuya paridad puede invertirse, o cuando el coeficiente de transformada de coseno discreta cuya paridad puede invertirse no ha de tener su paridad invertida, es decir cuando no se ha recibido la señal REQ1 de solicitud de tratamiento. En la operación S8, el coeficiente de transformada de coseno discreta es transferido al circuito 15 de transformada de coseno discreta inversa sin modificación. A continuación, la secuencia de ejecución retorna a la operación S1, en la que se trata el siguiente coeficiente de transformada de coseno discreta.
La figura 15 muestra un ejemplo práctico de la configuración de circuito de la tercera realización del inversor 28 de paridad, en la cual la inversión de paridad se realiza para reducir la magnitud del coeficiente de transformada de coseno discreta cuya paridad está invertida, es decir para hacer el coeficiente de transformada de coseno discreta cuya paridad está invertida más próximo a cero.
El inversor de paridad representado en la figura 15 es similar al inversor 28 de paridad ilustrado en la figura 11. Los elementos del circuito representado en la figura 5 correspondientes a los del circuito representado en la figura 11 están indicados por las mismas cifras de referencia, y no se describirán nuevamente en este caso. El inversor de paridad representado en la figura 15 difiere del inversor de paridad representado en la figura 11 en que incluye el circuito 80 de reducción de magnitud en lugar del inversor 63 de bit menos significativo.
El circuito 80 de reducción de magnitud determina la polaridad del coeficiente de transformada de coseno discreta recibido de la primera memoria 26 o de la segunda memoria 27 a través de la vía RDATA de datos. Cuando la polaridad del coeficiente de transformada de coseno discreta es positiva, el circuito 80 de reducción de magnitud resta una unidad del coeficiente de transformada de coseno discreta, mientras que cuando la polaridad del coeficiente es cero o negativa, suma una unidad al coeficiente de transformada de coseno discreta. El circuito de inversión de paridad representado en la figura 15 hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque seleccionando el coeficiente cuya paridad está invertida proporcionado por el circuito 80 de reducción de magnitud, y sustituyendo el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse por el coeficiente de transformada de coseno discreta de paridad invertida y magnitud reducida.
El circuito 80 de reducción de magnitud comprende el circuito 81 de determinación de polaridad, que controla directamente la quinta puerta "Y" 84 y la sexta puerta "Y" 85 a través de la puerta inversora 87. El circuito 80 de reducción de magnitud incluye también el substractor 82 de una unidad y el sumador 83 de una unidad, que restan una unidad y suman una unidad, respectivamente, a cada coeficiente de transformada de coseno discreta recibido a través de la vía RDATA de datos. Es seleccionada indistintamente la salida del substractor 82 de una unidad o la salida del sumador 83 de una unidad por la quinta puerta "Y" 84 o por la sexta puerta "Y" 85 en respuesta a la salida del circuito 81 de determinación de polaridad. Las salidas de las puertas "Y" 84 y 85 sirven como entradas a la puerta "O" 86, que proporciona a la cuarta puerta "Y" 65 el coeficiente de transformada de coseno discreta de magnitud reducida seleccionado. Cuando es necesario invertir la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque, la cuarta puerta "Y" selecciona la salida de paridad invertida y magnitud reducida del circuito 80 de reducción de magnitud para aplicarla al circuito 15 de transformada de coseno discreta inversa, en lugar del coeficiente de transformada de coseno discreta cuya paridad puede invertirse.
El circuito 81 de determinación de polaridad juzga la polaridad de cada coeficiente de transformada de coseno discreta del bloque de coeficientes recibido a través de la vía RDATA de datos, y fija el estado de su salida a un 1 o a un 0, dependiendo de si la polaridad del coeficiente de transformada de coseno discreta es positiva o negativa. Cuando el circuito 81 de determinación de polaridad juzga que la polaridad del coeficiente de transformada de coseno discreta es positiva, la salida del circuito 81 de determinación de polaridad abre la quinta puerta "Y" 84 y cierra la sexta puerta "Y" 85. Esta disposición aplica la salida del substractor 82 de una unidad, es decir el coeficiente de transformada de coseno discreta del que se ha restado una unidad, a la cuarta puerta "Y" 65 a través de la quinta puerta "Y" 84 y la puerta "O" 86.
Por otra parte, cuando el circuito 81 de determinación de polaridad juzga que la polaridad del coeficiente de transformada de coseno discreta es negativa o nula, la salida del circuito 81 de determinación de polaridad cierra la quinta puerta "Y" 84 y abre la sexta puerta "Y" 85. Esta disposición transfiere la salida del sumador 83 de una unidad, es decir el coeficiente de transformada de coseno discreta al cual se ha sumado una unidad, a la cuarta puerta "Y" 65 a través del sexta puerta "Y" 85 y la puerta "O" 86. La cuarta puerta "Y" 65 transfiere el coeficiente de transformada de coseno discreta de magnitud reducida y paridad invertida desde el circuito 80 de reducción de magnitud hasta la segunda puerta "Y" 68 en respuesta a la señal REQ1 de solicitud de tratamiento. Cuando el comparador 62 de direcciones determina que el coeficiente de transformada de coseno discreta recibido a través de la vía RDATA de datos es el coeficiente cuya paridad puede invertirse, el coeficiente de transformada de coseno discreta de magnitud reducida y polaridad invertida es transferido desde el circuito 80 de reducción de magnitud hasta el circuito 15 de transformada de coseno discreta inversa (figura 10A) del modo descrito anteriormente con referencia a la figura 11. Por otra parte, cuando la tercera realización del inversor de paridad ilustrado en la figura 15 no recibe la señal REQ1 de solicitud de tratamiento, el coeficiente de transformada de coseno discreta cuya paridad puede invertirse se transfiere sin modificación al circuito 15 de transformada de coseno discreta inversa.
Cuando la paridad de la suma de los coeficientes de transformada de coseno discreta ha de ser convertida en impar, la tercera realización del inversor 28 de paridad representado en la figura 15 transfiere al circuito 15 de transformada de coseno discreta inversa el coeficiente de transformada de coseno discreta cuya paridad ha sido invertida restando una unidad del mismo cuando su polaridad es positiva, y transfiere al circuito 15 de transformada de coseno discreta inversa el coeficiente de transformada de coseno discreta cuya paridad ha sido invertida sumando una unidad a dicho coeficiente cuando su polaridad es cero o negativa.
Este tratamiento invierte la paridad y reduce la magnitud del coeficiente de transformada de coseno discreta cuya paridad ha de invertirse, y hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta.
Se describirá ahora con referencia a las figuras 16 y 17 una cuarta realización del inversor 28 de paridad.
Cuando la cuarta realización del inversor de paridad recibe la señal REQ1 de solicitud de tratamiento, hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta contenidos en el bloque sustituyendo el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse por el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse al cual se ha sumado una unidad cuando el signo del coeficiente es positivo, y del cual se ha restado una unidad cuando el signo del coeficiente de transformada de coseno discreta es negativo. Este tratamiento no solamente invierte la paridad del coeficiente de transformada de coseno discreta cuya paridad ha de invertirse, sino que también aumenta la magnitud de este coeficiente de transformada de coseno discreta, es decir hace más diferente de cero el coeficiente cuya paridad ha de invertirse. El tratamiento aplicado al coeficiente de transformada de coseno discreta cuya paridad ha de invertirse está definido por la siguiente ecuación:
\newpage
if(rec > 0)
\hskip0.4cm rec = rec + 1
if(rec < 0)
\hskip0.4cm rec = rec – 1 ... (16)
donde rec es el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse.
La cuarta realización del inversor 28 de paridad puede implementarse utilizando un computador o un procesador de señal digital que funciona de acuerdo con el diagrama de flujo ilustrado en la figura 16. En la operación S1, el inversor 28 de paridad juzga, en base a la dirección EOB_adrs, si el coeficiente de transformada de coseno discreta es o no el coeficiente cuya paridad puede invertirse. Por ejemplo, el inversor de paridad juzga si el coeficiente de transformada de coseno discreta es o no el último coeficiente no nulo. Si el resultado de la operación S1 es afirmativo, y el coeficiente de transformada de coseno discreta es el coeficiente cuya paridad puede invertirse, la secuencia de ejecución continúa hasta la operación S2. En caso contrario, cuando el coeficiente de transformada de coseno discreta no es el coeficiente cuya paridad puede invertirse, la secuencia de ejecución prosigue hasta la operación S8.
En la operación S2, el inversor 28 de paridad determina si ha sido recibida o no la señal REQ1 de solicitud de tratamiento. Si el resultado de la operación S2 es afirmativo, indicando que ha sido recibida la señal REQ1 de solicitud de tratamiento, la secuencia de ejecución continúa hasta la operación S3. En caso contrario, no ha sido recibida la señal de tratamiento y la secuencia de ejecución prosigue hasta la operación S8. Puesto que un resultado afirmativo en la operación S2 puede producirse solamente si se ha obtenido un resultado afirmativo en la operación S1, el resultado afirmativo de la operación S2 indica que el coeficiente de transformada de coseno discreta es el coeficiente cuya paridad ha de invertirse.
En la operación S3, el inversor 28 de paridad determina la polaridad del coeficiente de transformada de coseno discreta. Si el resultado de la operación S3 es afirmativo, indicando que la polaridad del coeficiente es positiva, la secuencia de ejecución continúa hasta la operación S4. En caso contrario, la polaridad del coeficiente de transformada de coseno discreta es cero o negativa y la ejecución continúa hasta la operación S6.
En la operación S4, el inversor 28 de paridad suma una unidad al coeficiente de transformada de coseno discreta, después de lo cual la secuencia de ejecución pasa a la operación S5, donde el coeficiente de transformada de coseno discreta de paridad invertida se transfiere al circuito 15 de transformada de coseno discreta inversa (figura 10A). a continuación, la ejecución retorna a la operación S1, donde se trata el siguiente coeficiente de transformada de coseno discreta.
En otro caso, en la operación S6, el inversor 28 de paridad resta una unidad del coeficiente de transformada de coseno discreta (es decir, suma -1 a dicho coeficiente), después de lo cual la secuencia de ejecución continúa hasta la operación S7, donde el coeficiente de transformada de coseno discreta de paridad invertida se transfiere al circuito 15 de transformada de coseno discreta inversa. A continuación, la secuencia de ejecución retorna a la operación S1, donde se trata el siguiente coeficiente de transformada de coseno discreta.
La secuencia de ejecución pasa a la operación S8 cuando el coeficiente de transformada de coseno discreta no es el coeficiente cuya paridad puede invertirse, o cuando el coeficiente de transformada de coseno discreta cuya paridad puede invertirse no ha de tener su paridad invertida, es decir cuando no ha sido recibida la señal REQ1 de solicitud de tratamiento. En la operación S8, el coeficiente de transformada de coseno discreta se transfiere al circuito 15 de transformada de coseno discreta inversa sin modificación. A continuación, la ejecución retorna a la operación S1, donde se trata el siguiente coeficiente de transformada de coseno discreta.
La figura 17 muestra un ejemplo práctico de la configuración de circuito de la cuarta realización del inversor 28 de paridad, en la cual la inversión de paridad se realiza para aumentar la magnitud del coeficiente de transformada de coseno discreta cuya paridad está invertida, es decir para hacer más diferente de cero el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse.
El inversor de paridad representado en la figura 17 es similar al inversor 28 de paridad representado en la figura 11. Los elementos del circuito ilustrado en la figura 17 que corresponden a los del circuito representado en la figura 11 están indicados por las mismas cifras de referencia, y no se describirán nuevamente en este caso. El inversor de paridad representado en la figura 17 difiere del inversor de paridad representado en la figura 11 en que incluye el circuito 90 de aumento de magnitud en lugar del inversor 63 de bit menos significativo.
El circuito 90 de aumento de magnitud determina la polaridad de cada coeficiente de transformada de coseno discreta recibido de la primera memoria 26 o de la segunda memoria 27 a través de la vía RDATA de datos. Cuando la polaridad del coeficiente de transformada de coseno discreta es positiva, el circuito 90 de aumento de magnitud suma una unidad a dicho coeficiente, mientras que cuando la polaridad es cero o negativa, resta una unidad del coeficiente de transformada de coseno discreta. El circuito inversor de paridad representado en la figura 17 hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta en el bloque seleccionando el coeficiente cuya paridad ha de invertirse del circuito 90 de aumento de magnitud, y sustituyendo el coeficiente de transformada de coseno discreta cuya paridad ha de invertirse por el coeficiente de transformada de coseno discreta de magnitud aumentada.
El circuito 90 de aumento de magnitud comprende el circuito 91 de determinación de polaridad, que controla directamente la quinta puerta "Y" 94 y la sexta puerta "Y" 95 a través de la puerta inversora 97. El circuito 90 de aumento de magnitud incluye también el sumador 92 de una unidad y el substractor 93 de una unidad que suman o restan, respectivamente, una unidad de cada coeficiente de transformada de coseno discreta. Indistintamente la salida del sumador 92 de una unidad o la salida del substractor 93 de una unidad es seleccionada por la quinta puerta "Y" 94 o por la sexta puerta "Y" 95 en respuesta a la salida del circuito 91 de determinación de polaridad. Las salidas de las puertas "Y" 94 y 95 están aplicadas como entradas a la puerta "O" 96, que transfiere el coeficiente de transformada de coseno discreta de magnitud aumentada seleccionado a la cuarta puerta "Y" 65. Cuando es necesario invertir la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque, la cuarta puerta "Y" selecciona la salida de magnitud aumentada y paridad invertida del circuito 90 de aumento de magnitud para aplicarla al circuito 15 de transformada de coseno discreta inversa en lugar del coeficiente de transformada de coseno discreta cuya paridad puede invertirse.
El circuito 91 de determinación de polaridad juzga la polaridad de cada coeficiente de transformada de coseno discreta en el bloque de coeficientes recibido a través de la vía RDATA de datos, y pone el estado de su salida a 1 o a 0, dependiendo de si la polaridad del coeficiente de transformada de coseno discreta es positiva o negativa. Cuando el circuito 91 de determinación de polaridad juzga que es positiva la polaridad del coeficiente de transformada de coseno discreta, la salida de dicho circuito abre la quinta puerta "Y" 94 y cierra la sexta puerta "Y" 95. Esta disposición transfiere la salida del sumador 92 de una unidad, es decir el coeficiente de transformada de coseno discreta al cual se ha sumado una unidad, a la cuarta puerta "Y" 65 a través de la quinta puerta "Y" 94 y la puerta "O" 96.
Por otra parte, cuando el circuito 91 de determinación de polaridad juzga que es negativa o nula la polaridad del coeficiente de transformada de coseno discreta, la salida del circuito 91 de determinación de polaridad cierra la quinta puerta "Y" 94 y abre la sexta puerta "Y" 95. Esta disposición lógica transfiere la salida del substractor 93 de una unidad, es decir el coeficiente de transformada de coseno discreta del cual se ha restado una unidad, a la cuarta puerta "Y" 65 a través de la sexta puerta "Y" 95 y la puerta "O" 96.
La cuarta puerta "Y" 65 transfiere el coeficiente de transformada de coseno discreta de magnitud aumentada y paridad invertida desde el circuito 90 de aumento de magnitud hasta la segunda puerta "Y" 68 en respuesta a la señal REQ1 de solicitud de tratamiento. Cuando el comparador 62 de direcciones determina que el coeficiente de transformada de coseno discreta recibido a través de la vía RDATA de datos es el coeficiente de transformada de coseno discreta cuya paridad puede invertirse, el coeficiente se transfiere desde el circuito 90 de aumento de magnitud hasta el circuito 15 de transformada de coseno discreta inversa (figura 10A) del modo descrito anteriormente con referencia a la figura 11.
Por otra parte, cuando la cuarta realización del inversor de paridad representado en la figura 17 no recibe la señal REQ1 de solicitud de tratamiento, el coeficiente de transformada de coseno discreta cuya paridad puede invertirse se transfiere sin modificación al circuito 15 de transformada de coseno discreta inversa.
Cuando ha de hacerse impar la paridad de la suma de los coeficientes de transformada de coseno discreta, la cuarta realización del inversor 28 de paridad ilustrada en la figura 17 transfiere al circuito 15 de transformada de coseno discreta inversa el coeficiente de transformada de coseno discreta cuya paridad ha sido invertida sumando una unidad a dicho coeficiente cuando su polaridad es positiva, y transfiere al circuito 15 de transformada de coseno discreta inversa el coeficiente de transformada de coseno discreta cuya paridad ha sido invertida restando una unidad de dicho coeficiente cuando su polaridad es cero o negativa. Este tratamiento invierte la paridad y aumenta la magnitud del coeficiente de transformada de coseno discreta cuya paridad está invertida, y hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta.
Los inversores 28 de paridad representados en las figuras 11, 13, 15 y 17 y el funcionamiento descrito de acuerdo con los diagramas de flujo ilustrados en las figuras 9, 12, 14 y 16, pueden ser modificados para hacer impar la paridad de la suma de los coeficientes de transformada de coseno discreta cambiando la paridad de un coeficiente de transformada de coseno discreta diferente del último coeficiente no nulo leído en el orden de exploración en zigzag. Por ejemplo, en una transformada de coseno discreta bidimensional de 8 x 8, puede cambiarse la paridad de uno de los coeficientes de transformada de coseno discreta, bien sea el correspondiente a la componente continua, el coeficiente de transformada de coseno discreta de la componente (7,7), es decir el correspondiente a la componente de frecuencia más alta, el coeficiente de la componente (7,0) en la esquina superior derecha, o el coeficiente de la componente (0,7) en la esquina inferior izquierda. Puesto que, en particular, el coeficiente de transformada de coseno discreta de la componente (7,7), que es la componente de frecuencia más alta, tiene una influencia pequeña sobre la calidad de la imagen, esta componente es particularmente adecuada para ser la que corresponde al coeficiente cuya paridad puede invertirse.
En los inversores de paridad representados en las figuras 11, 13, 15 y 17, pueden seleccionarse coeficientes de transformada de coseno discreta alternativos como coeficiente de transformada de coseno discreta cuya paridad puede invertirse, sustituyendo la dirección EOB_adrs aplicada al comparador 62 de direcciones por la dirección del coeficiente de transformada de coseno discreta. Alternativamente, si ha de cambiarse la paridad del coeficiente de transformada de coseno discreta de la componente de frecuencia más alta, el contador 61 de lectura y el comparador 62 de direcciones pueden omitirse, y puede utilizarse la señal FULL de memoria llena para identificar el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta como coeficiente cuya paridad puede cambiarse.
En una versión alternativa adicional, los circuitos 14 de conversión a valor impar de suma representados en las figuras 6, 8 y 10 pueden determinar la suma de coeficientes de transformada de coseno discreta específicos, por ejemplo los coeficientes de la componente (0,0), la componente (4,0), la componente (0,4) y la componente (4,4). A continuación, el circuito de conversión a impar de la paridad de la suma realizaría una operación de inversión de paridad para convertir en un número impar la suma de los coeficientes de transformada de coseno discreta específicos. La figura 18 muestra una variante del circuito 14 de conversión a valor impar de suma representado en la figura 8. En esta variante, se determina la suma de los coeficientes de transformada de coseno discreta específicos para determinar si es necesaria la inversión de paridad. Los elementos del circuito representado en la figura 18 que corresponden a los del circuito representado en la figura 8 están indicados por las mismas cifras de referencia, y no se describirán nuevamente en este caso.
En el circuito de conversión a impar del valor de la suma representado en la figura 18, el selector 51 interrumpe la línea entre el cuantificador inverso 13 y el acumulador 23A. El selector 51 recibe también del contador 20 el valor coeff_adrs de cómputo, que indica el número de coeficientes de transformada de coseno discreta del bloque que han sido recibidos del cuantificador inverso 13.
En respuesta al valor coeff_adrs de cómputo recibido del contador 20, el selector 51 determina si cada coeficiente de transformada de coseno discreta recibido del cuantificador inverso 13 es o no uno de los coeficientes específicos, y ha de incluirse, por consiguiente, en la suma determinada por el acumulador 23A. De ese modo, por ejemplo, el selector 51 determina si el valor coeff_adrs de cómputo es un valor correspondiente a la componente (0,0), a la componente (4,0), a la componente (0,4) o a la componente (4,4). Cuando el selector 51 determina que el coeficiente de transformada de coseno discreta es uno de los coeficientes específicos, transfiere dicho coeficiente al acumulador 23A. Consiguientemente, el circuito de conversión a impar del valor de la suma representado en la figura 18 determina la suma de coeficientes de transformada de coseno discreta específicos en el bloque y, si la paridad de la suma es par, cambia la paridad de al menos uno de los coeficientes de transformada de coseno discreta para hacer la suma impar. El circuito de conversión a valor impar de la suma representado en la figura 18 transfiere entonces al circuito 15 de transformada de coseno discreta inversa el bloque de coeficientes de transformada de coseno discreta de paridad ajustada.
El circuito representado en la figura 18 puede ser modificado de un modo similar al ilustrado en la figura 10A para hacer posible que el circuito determine la suma lógica exclusiva de los bits menos significativos de los coeficientes de transformada de coseno discreta específicos. El circuito de la figura 18 se modifica sustituyendo el sumador 23 por el detector 29 de bit menos significativo y por la puerta 30 "O" exclusiva representada en la figura 10A.
Volviendo ahora a la figura 6, los coeficientes de transformada de coseno discreta en el bloque de coeficientes son transferidos desde el circuito 14 de conversión a valor impar de suma hasta el circuito 15 de transformada de coseno discreta inversa, descrito anteriormente. La suma de los coeficientes de transformada de coseno discreta generada por el circuito de conversión a valor impar de la suma es un número impar. Si la suma de los coeficientes de transformada de coseno discreta proporcionada por el cuantificador inverso fue un número par, el circuito 14 de conversión a valor impar de suma cambió la paridad de al menos uno de los coeficientes de transformada de coseno discreta para hacer impar la suma de los coeficientes de transformada de coseno discreta transferidos al circuito 15 de transformada de coseno discreta inversa. El circuito 15 de transformada de coseno discreta inversa aplica tratamiento de transformada de coseno discreta inversa a los coeficientes de transformada de coseno discreta del bloque para obtener el bloque S4 de diferencias recuperado. El bloque de diferencias recuperado se transfiere al sumador 16.
El sumador 16 realiza una suma elemento de imagen por elemento de imagen entre el bloque S4 de diferencias recuperado y el bloque S2 de adaptación recibido del segundo grupo 4 de memorias de imagen. El bloque S5 de imagen reconstruido resultante es proporcionado al segundo grupo 4 de memorias de imagen, donde constituye un bloque de la imagen reconstruida almacenada en una de las memorias de imagen especificada por el controlador 3 de memoria.
El codificador 17 de longitud variable aplica codificación de longitud variable, tal como codificación de Huffman, etc, a cada bloque SC de coeficientes de transformada cuantificados procedentes del codificador 9 de bloques de diferencias, junto con su vector de movimiento, la señal MM de compensación de movimiento, datos de tabla de cuantificación, etc. El codificador 17 de longitud variable ensambla también los datos codificados con longitud variable con los códigos de arranque e información de cabecera de las respectivas capas de la norma MPEG para formar la señal de imagen con movimiento comprimida.
El contador 5 de líneas matriciales/macrobloques cuenta las señales SS de iniciación de línea matricial de bloques y las señales BS de iniciación de macrobloque generadas por el controlador 3 de memoria en sincronismo con el comienzo de cada línea matricial de bloques y cada macrobloque de las imágenes leídas del primer grupo 2 de memorias de imagen para tratamiento. Cuando su valor de cómputo alcanza un valor predeterminado, el contador 5 de líneas matriciales/macrobloques genera la señal S0 de arranque, que se aplica al codificador 17 de longitud variable.
En respuesta a la señal S0 de arranque, el codificador 17 de longitud variable transfiere la señal de imagen con movimiento comprimida a la memoria intermedia 19 de salida, donde se almacena transitoriamente. A continuación, la señal de imagen con movimiento comprimida se lee de la memoria intermedia 19 de salida como cadena de bits con una frecuencia de transferencia de bits predeterminada. La cadena de bits de la señal de imagen con movimiento comprimida se transfiere a un expansor complementario a través de una vía de transmisión, o bien se registra la cadena de bits de la señal de imagen con movimiento comprimida sobre un medio de registro adecuado, tal como un disco óptico.
El medio de registro es un medio de registro sobre el cual se registra la señal de imagen con movimiento comprimida obtenida de la señal de imagen con movimiento por codificación predictiva y tratamiento de transformada de coseno discreta. Cada bloque de cada imagen reconstruida utilizada como imagen de referencia en la codificación predictiva es reconstruido cuantificando inversamente un bloque de los coeficientes de transformada de coseno discreta cuantificados incluidos en la señal de imagen con movimiento comprimida, convirtiendo a un valor impar la suma de los coeficientes de transformada de coseno discreta del bloque resultante de coeficientes, y sometiendo a transformación ortogonal inversa el bloque de coeficientes de transformada de coseno discreta con la suma modificada.
Un aparato de transmisión de acuerdo con el invento puede incluir un compresor de acuerdo con el invento, como se ha descrito anteriormente.
Puede pensarse que sería mejor realizar la operación de conversión a impar del valor de la suma en el codificador 9 de bloques de diferencias del compresor. La operación de conversión a impar del valor de la suma haría que la suma de los coeficientes de transformada de coseno discreta en cada bloque de coeficientes cuantificados incluido en la señal de imagen con movimiento comprimida fuese un número impar. Podría pensarse que el tratamiento de la señal de imagen con movimiento comprimida de este modo haría innecesaria la conversión a valor impar de la suma de los coeficientes de transformada de coseno discreta en el expansor. Sin embargo, con tal disposición, después de haber sido cuantificados en el compresor los coeficientes de transformada de coseno discreta y haber sido cuantificados inversamente en el expansor, la suma de los coeficientes de transformada de coseno discreta que se introduce en el circuito de transformada de coseno discreta inversa en el expansor puede no ser ya un número impar. Por tanto, la operación de conversión a valor impar de la suma debe realizarse antes del tratamiento de transformada de coseno discreta inversa en el expansor para asegurar que no se produzca un error de desadaptación.
Se describirá ahora con referencia a la figura 19 un expansor de señal de imagen con movimiento comprimida al cual se aplica este invento, como se define en las reivindicaciones anexas. En la figura 19, la señal de imagen con movimiento comprimida es recibida como una cadena de bits a través de una línea de transmisión que procede del compresor, o bien reproduciendo la señal de imagen con movimiento comprimida de un medio de registro adecuado, tal como un disco óptico. La cadena de bits se transfiere a la memoria intermedia 31 de entrada, donde se almacena transitoriamente, y de la que se lee, imagen por imagen, en el codificador inverso 32 de longitud variable. El codificador inverso 32 de longitud variable extrae de la señal de imagen con movimiento comprimida la información de cabecera de capas respectivas de la codificación MPEG, y extrae de dicha información de cabecera la información PH de control de decodificación de imagen, que transfiere al controlador 33 de memoria.
El codificador inverso 32 de longitud variable aplica codificación inversa de longitud variable a los bloques de coeficientes de transformada de coseno discreta codificados con longitud variable para proporcionar bloques de coeficientes cuantificados, que incluyen el bloque Cb en curso de coeficientes de transformada de coseno discreta cuantificados. El bloque Cb en curso de coeficientes de transformada de coseno discreta cuantificados es suministrado al decodificador 34 de bloque de diferencias. El decodificador 34 de bloque de diferencias decodifica el bloque Cb de coeficientes de transformada de coseno discreta cuantificados para proporcionar el bloque BS de diferencias restaurado, y suministra este último bloque al sumador 39.
El codificador inverso 32 de longitud variable extrae de la señal de imagen con movimiento comprimida el vector MV de movimiento y la señal MM de modo de compensación de movimiento para el bloque Cb de coeficientes de transformada de coseno discreta cuantificados, y transfiere esta información al compensador 37 de movimiento. El compensador 37 de movimiento hace que se lea del grupo 38 de memorias de imagen un bloque de adaptación para el bloque BS de diferencias restaurado.
El bloque de memorias de imagen incluye varias memorias de imagen, cada una de las cuales almacena una imagen ya reconstruida. El bloque BS de adaptación es un bloque de la imagen reconstruida almacenada en una de las memorias de imagen en una dirección especificada por el vector MV de movimiento. La memoria de imagen del grupo 38 de memorias de imagen que almacena la imagen reconstruida de la cual se lee el bloque de adaptación, está especificada por el controlador 33 de memoria.
Como se ha mencionado anteriormente, una imagen puede codificarse por predicción a partir de una imagen reconstruida anterior, por predicción a partir de una imagen reconstruida siguiente, y por predicción a partir de un bloque obtenido realizando una operación lineal elemento de imagen por elemento de imagen sobre la imagen reconstruida, y a partir de una imagen reconstruida siguiente. Finalmente, una imagen puede codificarse sin utilizar ninguna técnica de predicción. En este caso, el bloque de adaptación proporcionado por el grupo 38 de memorias de imagen es un bloque nulo, es decir un bloque en el cual todos los valores de los elementos de imagen están puestos a cero. Los bloques de adaptación con movimiento compensado proporcionados por el grupo 38 de memorias de imagen son modificados adaptativamente, y se selecciona para cada bloque la combinación óptima. Este proceso se realiza utilizando un bloque que tiene un tamaño de bloque de 16 x 16 elementos de imagen.
Cada bloque de adaptación proporcionado por el grupo 38 de memorias de imagen se transfiere al sumador 39. El sumador 39 realiza una suma elemento de imagen por elemento de imagen entre el bloque BS de diferencias restaurado recibido del decodificador 34 de bloque de diferencias y el bloque de adaptación proporcionado por el grupo 38 de memorias de imagen. El resultado de esta suma es un bloque de imagen reconstruido, que se almacena en una de las memorias de imagen del grupo 38 de memorias de imagen especificada por el controlador 33 de memoria. Los bloques de imagen reconstruidos generados por el sumador 39 son almacenados uno por uno en la memoria de imagen seleccionada sobreinscribiendo sobre la imagen reconstruida almacenada anteriormente en la memoria de imagen, para formar una nueva imagen reconstruida.
Las imágenes reconstruidas almacenadas en el grupo 38 de memorias de imagen se leen en una secuencia controlada por una señal de indicación de imagen de salida generada por el controlador 33 de memoria. Las imágenes leídas se transfieren, como señal de imagen con movimiento reproducida, a un dispositivo de presentación de imagen adecuado, por ejemplo un monitor de video. El dispositivo de visualización presenta una imagen en movimiento en respuesta a la señal de imagen con movimiento reproducida.
Se describirá ahora con referencia a la figura 19 el decodificador 34 de bloque de diferencias. El decodificador 34 de bloque de diferencias comprende el cuantificador inverso 40, el circuito 35 de conversión de suma a un valor impar, y el circuito 36 de transformada de coseno discreta inversa. El cuantificador inverso 40 utiliza una tabla de cuantificación para cuantificar inversamente el bloque Cb de coeficientes de transformada de coseno discreta cuantificados recibido del codificador inverso 32 de longitud variable. El circuito 35 de conversión de suma a un valor impar recibe el bloque resultante de coeficientes de transformada de coseno discreta del cuantificador inverso 40, y evita que se produzcan errores de desadaptación en el tratamiento de transformada de coseno discreta inversa realizado por el circuito 36 de transformada de coseno discreta inversa. El circuito 36 de transformada de coseno discreta inversa aplica tratamiento de transformada de coseno discreta inversa al bloque de coeficientes de transformada de coseno discreta con la suma modificada generado por el circuito 35 de conversión de suma a un valor impar.
La figura 20 muestra un ejemplo de la construcción del cuantificador inverso 40. Los componentes principales del cuantificador inverso 40 son el decodificador 41 de cobertura/nivel, el contador 47 de direcciones, el convertidor 48 de direcciones, la primera memoria 42 de bloques, la segunda memoria 43 de bloques, y el circuito 46 de cuantificación inversa.
El decodificador 41 de cobertura/nivel recibe el bloque Cb de coeficientes de transformada de coseno discreta cuantificados del codificador inverso 32 de longitud variable. El decodificador 41 de cobertura/nivel decodifica la codificación de cobertura/nivel que fue aplicada a los coeficientes de transformada de coseno discreta cuantificados en el codificador de longitud variable del compresor. El bloque resultante de coeficientes de transformada de coseno discreta cuantificados se transfiere a la primera memoria 42 de bloques o a la segunda memoria 43 de bloques en orden de exploración en zigzag. La primera memoria 42 de bloques y la segunda memoria 43 de bloques almacenan cada una un bloque de coeficientes de transformada de coseno discreta cuantificados.
El contador 47 de direcciones y el convertidor 48 de direcciones generan, respectivamente, direcciones de inscripción y direcciones de lectura para la primera memoria 42 de bloques y la segunda memoria 43 de bloques. Se inscriben bloques de coeficientes de transformada de coseno discreta cuantificados y se leen alternativamente de la primera memoria 42 de bloques y de la segunda memoria 43 de bloques. Cada bloque de coeficientes de transformada de coseno discreta cuantificados se inscribe en una de las memorias de bloques en orden de exploración en zigzag en respuesta a la dirección proporcionada por el contador 47 de direcciones, y se lee de la memoria de bloques en orden de exploración de trama en respuesta a las direcciones proporcionadas por el convertidor 48 de direcciones. El orden diferente de direcciones entre la inscripción y la lectura convierte el orden de los coeficientes de transformada de coseno discreta cuantificados del bloque de un orden de exploración en zigzag a un orden de exploración de trama.
El contador 47 de direcciones genera las direcciones de inscripción en orden de exploración en zigzag. El convertidor 48 de direcciones recibe las direcciones en orden de exploración en zigzag del contador 47 de direcciones y utiliza una tabla de conversión de direcciones para convertir las direcciones en direcciones en orden de exploración de trama. Las direcciones generadas por el contador 47 de direcciones y por el convertidor 48 de direcciones son seleccionadas por el selector 49 para su aplicación a la primera memoria 42 de bloques y a la segunda memoria 43 de bloques como direcciones adrs1 y adrs2. Cuando un bloque de coeficientes de transformada de coseno discreta cuantificados procedente del decodificador 41 de cobertura/nivel se inscribe en la primera memoria 42 de bloques o en la segunda memoria 43 de bloques, las respectivas direcciones adrs1 y adrs2 son proporcionadas por el contador 47 de direcciones a través del selector 49 en orden de exploración en zigzag. Cuando el bloque de coeficientes de transformada de coseno discreta cuantificados es leído de la primera memoria 42 de bloques o de la segunda memoria 43 de bloques para el circuito 46 de cuantificación inversa, las respectivas direcciones adrs1 y adrs2 son proporcionadas por el convertidor 48 de direcciones a través del selector 49 en orden de exploración de trama.
Cuando todos los coeficientes de transformada de coseno discreta cuantificados han sido almacenados en la primera memoria 42 de bloques o en la segunda memoria 43 de bloques, el bloque de coeficientes de transformada de coseno discreta se lee en orden de exploración de trama para el circuito 46 de cuantificación inversa. El circuito 46 de cuantificación inversa cuantifica inversamente los coeficientes de transformada de coseno discreta cuantificados del bloque, y transfiere el bloque resultante de coeficientes de transformada de coseno discreta al circuito 35 de conversión de suma a un valor impar. La cuantificación inversa realizada por el circuito 46 de cuantificación inversa es idéntica a la cuantificación inversa realizada por el cuantificador inverso 13 en el decodificador local del compresor de señal de imagen con movimiento representado en la figura 6.
Cuando el circuito 35 de conversión de suma a un valor impar determina que es par la paridad de la suma de los coeficientes de transformada de coseno discreta en el bloque de coeficientes de transformada de coseno discreta procedente del cuantificador inverso 40, opera sobre al menos uno de los coeficientes de transformada de coseno discreta del bloque para convertir en un número impar la suma de los coeficientes de transformada de coseno discreta del bloque. El circuito 35 de conversión de suma a un valor impar suministra el bloque de coeficientes de transformada de coseno discreta con la suma modificada al circuito 36 de transformada de coseno discreta inversa. La operación de conversión a impar del valor de la suma realizada por el circuito 35 de conversión de suma a un valor impar es idéntica a la operación de conversión a impar del valor de la suma realizada por el circuito 14 de conversión a valor impar de suma en el decodificador local del compresor de señal de imagen con movimiento representado en la figura 6.
El circuito 36 de transformada de coseno discreta inversa realiza el tratamiento de transformada de coseno discreta inversa sobre el bloque de coeficientes de transformada de coseno discreta con la suma convertida a un valor impar, para proporcionar el bloque BS de diferencias restaurado, que se suministra al sumador 39.
El funcionamiento práctico del cuantificador inverso 40 representado en la figura 20 se ilustra mediante el diagrama de temporización representado en las figuras 21A a 21I. El codificador inverso 32 de longitud variable extrae el bloque Cb de coeficientes de transformada de coseno discreta cuantificados de la señal de imagen con movimiento comprimida. El codificador inverso 32 de longitud variable genera una señal EV_EN de habilitación de evento, ilustrada en la figura 21A, que instruye al decodificador 41 de cobertura/nivel para leer el bloque de coeficientes de transformada de coseno discreta. Los coeficientes de transformada de coseno discreta cuantificados contenidos en bloque Cb de coeficientes de transformada de coseno discreta cuantificados están codificados por cobertura/nivel.
El codificador inverso 32 de longitud variable proporciona también la señal EVENT_NO de número de eventos al decodificador 41 de cobertura/nivel, como se muestra en la figura 21B. La señal EVENT_NO de número de eventos indica el número de pares de cobertura/nivel en el bloque Cb de coeficientes de transformada de coseno discreta cuantificados, es decir el número de pares de datos que indican cobertura y nivel.
Cuando el decodificador 41 de cobertura/nivel recibe la señal EVENT_NO de número de eventos, aplica una señal RE_REQ de solicitud de lectura para cada par de datos de cobertura/nivel al codificador inverso 32 de longitud variable, como se muestra en la figura 21C. Cada vez que recibe la señal RE_REQ de solicitud de lectura, el codificador inverso 32 de longitud variable transfiere un par de datos de cobertura/nivel al decodificador 41 de cobertura/nivel, como se muestra en las figuras 21D y 21E. De este modo, el codificador inverso 32 de longitud variable aplica al decodificador 41 de cobertura/nivel el número de pares de datos de cobertura/nivel correspondientes al número de señales de solicitud de lectura que recibe.
El decodificador 41 de cobertura/nivel decodifica la codificación de cobertura/nivel de los coeficientes de transformada de coseno discreta cuantificados y codificados por cobertura/nivel, para suministrar un bloque de coeficientes de transformada de coseno discreta cuantificados en orden de exploración en zigzag como WDATA a la primera memoria 42 de bloques, como se muestra en la figura 21G. Al mismo tiempo, como se muestra en la figura 21F, el contador 47 de direcciones cuenta los coeficientes de transformada de coseno discreta cuantificados procedentes del decodificador 41 de cobertura/nivel y transfiere la señal adrs1 de dirección en orden de exploración en zigzag, que indica la dirección de inscripción de cada coeficiente de transformada de coseno discreta cuantificado, a la primera memoria 42 de bloques a través del selector 49.
Cuando el decodificador 41 de cobertura/nivel recibe el código EOB del codificador inverso 32 de longitud variable, indicando que ha recibido el último coeficiente de transformada de coseno discreta no nulo, el decodificador 41 de cobertura/nivel ajusta el coeficiente de transformada de coseno discreta cuantificado al código EOB, y todos los siguientes coeficientes de transformada de coseno discreta cuantificados a cero, y transfiere estos coeficientes puestos a cero a la primera memoria 42 de bloques.
También cuando recibe el código EOB, el decodificador 41 de cobertura/nivel transfiere la señal EOB_EN a los registros 44 y 45 de posición, como se muestra en la figura 21H. La señal EOB_EN indica a los registros de posición que se ha recibido el código EOB. Los registros de posición reciben también, del contador 47 de direcciones a través del convertidor 48 de direcciones, la dirección de cada coeficiente de transformada de coseno discreta cuantificado introducida en la primera y segunda memorias 42 y 43 de bloques. Cuando el decodificador 41 de cobertura/nivel recibe el código EOB, la dirección generada por el contador 47 de direcciones es la dirección del último coeficiente no nulo. La señal EOB_EN hace que la dirección EOB_POS del último coeficiente no nulo, convertida en una dirección de exploración por trama por el convertidor 48 de direcciones, sea inscrita en el registro de posición de la memoria de bloque en la cual se está inscribiendo el bloque de coeficientes de transformada de coseno discreta cuantificados. Uno de los registros 44 y 45 de posición almacena así la dirección del último coeficiente no nulo del bloque de coeficientes de transformada de coseno discreta cuantificados.
Cuando el decodificador 41 de cobertura/nivel ha transferido el bloque completo de coeficientes de transformada de coseno discreta cuantificados a la primera memoria 42 de bloques o a la segunda memoria 43 de bloques, el contador 47 de direcciones aplica la señal BANK de conmutación de banco de memoria a la primera memoria 42 de bloques y a la segunda memoria 43 de bloques. La señal BANK de conmutación de banco de memoria conmuta el modo de las memorias de bloques, de modo que la primera memoria 42 de bloques, que estaba inicialmente en el modo de inscripción, se conmuta al modo de lectura, y la segunda memoria 43 de bloques se conmuta al modo de inscripción. De este modo, cuando el decodificador 41 de cobertura/nivel decodifica el bloque siguiente de coeficientes de transformada de coseno discreta cuantificados, los coeficientes resultantes serán inscritos en la segunda memoria 43 de bloques. La señal BANK conmuta también el selector 49, de modo que las direcciones aplicadas a la memoria de bloques en el modo de inscripción so las direcciones en orden de exploración en zigzag generadas por el contador 47 de direcciones, y las direcciones aplicadas a la memoria de bloques en el modo de lectura son las direcciones correspondientes al orden de exploración de trama generadas por el convertidor 48 de direcciones.
También, cuando el decodificador 41 de cobertura/nivel ha transferido el bloque completo de coeficientes de transformada de coseno discreta cuantificados a la primera memoria 42 de bloques, la primera memoria 42 de bloques aplica la señal FULL1 de memoria llena al circuito 46 de cuantificación inversa. La señal FULL1 de memoria llena indica que todos los coeficientes de transformada de coseno discreta cuantificados del bloque han sido almacenados. Cuando el circuito 46 de cuantificación inversa recibe la señal FULL1 de memoria llena, envía la señal RD_EN de solicitud de lectura a la primera memoria 42 de bloques. La señal de solicitud de lectura hace que la primera memoria de bloques lea los coeficientes de transformada de coseno discreta cuantificados almacenados en ella en respuesta a las direcciones adrs1 proporcionadas en orden de exploración de trama por el convertidor 48 de direcciones a través del selector 49. En consecuencia, los coeficientes de transformada de coseno discreta cuantificados del bloque son leídos de la primera memoria 42 de bloques. Los coeficientes de transformada de coseno discreta leídos en respuesta a cada dirección se transfieren al circuito 46 de cuantificación inversa.
Al mismo tiempo que los coeficientes de transformada de coseno discreta cuantificados del bloque son leídos de la primera memoria 42 de bloques, los coeficientes de transformada de coseno discreta cuantificados del bloque siguiente se inscriben en orden de exploración en zigzag en la segunda memoria 43 de bloques en respuesta a direcciones procedentes del contador 47 de direcciones.
El circuito 46 de cuantificación inversa cuantifica inversamente los coeficientes de transformada de coseno discreta cuantificados del bloque de coeficientes, de un modo similar al cuantificador inverso 13 incluido en el compresor de señal de imagen con movimiento descrito anteriormente con referencia a la figura 6. El bloque resultante de coeficientes de transformada de coseno discreta es transferido al circuito 35 de conversión de suma a un valor impar.
Cuando la paridad de la suma de coeficientes de transformada de coseno discreta del bloque corresponde a un número par, el circuito 35 de conversión de suma a un valor impar opera sobre al menos uno de los coeficientes de transformada de coseno discreta del bloque para hacer impar la suma de los coeficientes de transformada de coseno discreta del bloque, de un modo similar al circuito 14 de conversión a valor impar de suma incluido en el compresor de señal de imagen con movimiento descrito anteriormente. El bloque resultante de coeficientes de transformada de coseno discreta cuya suma se ha convertido en un número impar se transfiere al circuito 36 de transformada de coseno discreta inversa.
Por ejemplo, el circuito 35 de conversión de suma a un valor impar puede tomar como referencia los registros 44 y 45 de posición para determinar si el coeficiente de transformada de coseno discreta en curso es o no el último coeficiente no nulo en orden de exploración en zigzag, de modo que el circuito 35 de conversión de suma a un valor impar puede cambiar la paridad del último coeficiente no nulo para hacer impar la suma de los coeficientes de transformada de coseno discreta del bloque. Alternativamente, los circuitos 35 de conversión de suma a un valor impar pueden operar sobre el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta para hacer impar la suma de los coeficientes de transformada de coseno discreta. Puede ser preferible invertir la paridad del coeficiente de transformada de coseno discreta de la componente de frecuencia más alta, porque la componente de frecuencia más alta tiene una influencia pequeña sobre la calidad de la imagen y no es necesario determinar cual de los coeficientes de transformada de coseno discreta es el último coeficiente no nulo. Esto es cierto también en el caso en que el orden de exploración es diferente del orden de exploración en zigzag.
Debe enfatizarse que, para evitar errores de desadaptación, las operaciones de conversión de la suma a un valor impar realizadas en el compresor de señal de imagen con movimiento y en el expansor de señal de imagen con moovimiento comprimida deben se idénticas entre sí.
2. Segunda Realización
En la figura 22 se muestra la configuración de una segunda realización de un compresor de señal de imagen con movimiento. La segunda realización es la realización preferida del invento. En la figura 23 se muestra la configuración del circuito convertidor 50 de suma en número impar del compresor de señal de imagen con movimiento representado en la figura 22. Los elementos de la segunda realización del compresor de señal de imagen con movimiento correspondientes a los de la primera realización del compresor de señal de imagen con movimiento ilustrado en la figura 6 están indicados por los mismos números de referencia, y no se describirán nuevamente en este caso. La segunda realización difiere de la primera realización en la configuración del circuito convertidor 50 de suma en número impar.
En el circuito 50 de conversión de suma a un valor impar representado con detalle en la figura 23, el contador 20 cuenta el número de coeficientes de transformada de coseno discreta recibidos del cuantificador inverso 13, y transfiere el valor coeff_adrs de cómputo resultante al circuito 21 de determinación de paridad.
El acumulador 23A comprende el sumador 23 y el registro 24. El sumador 23 suma cada coeficiente de transformada de coseno discreta en un bloque de coeficientes recibido del cuantificador inverso 13, con la suma de los coeficientes de transformada de coseno discreta ya recibidos en el bloque almacenado en el registro 24. El registro 24 se repone después de haber sido determinada la suma para cada bloque de coeficientes de transformada de coseno discreta. La suma resultante de los coeficientes de transformada se transfiere desde el sumador 23 hasta el registro 24 y hasta el circuito 21 de determinación de paridad. El acumulador 23A necesita solamente sumar los bits menos significativos de los coeficientes de transformada de coseno discreta del bloque para proporcionar un resultado adecuado para que el circuito 21 de determinación de paridad juzgue si la paridad de la suma de los coeficientes de transformada de coseno discreta es impar o par.
El circuito 21 de determinación de paridad funciona en respuesta al valor coeff_adrs de cómputo recibido del contador 20, del modo siguiente. Cuando el valor de cómputo indica que han sido sumados por el acumulador 23A todos los coeficientes de transformada de coseno discreta del bloque, el circuito 21 de determinación de paridad determina si es impar o par la paridad de la suma de los coeficientes de transformada de coseno discreta recibida del acumulador 23A. Por ejemplo, en el caso de una transformada de coseno discreta bidimensional de 8 x 8, cuando el valor de cómputo indica que ha sido determinada la suma de los 64 coeficientes de transformada de coseno discreta, el circuito 21 de determinación de paridad determina si es impar o par la paridad de la suma de los coeficientes de transformada de coseno discreta recibida del acumulador 23A.
En la práctica, cuando los coeficientes de transformada de coseno discreta están representados por números binarios, el circuito 21 de determinación de paridad examina el bit menos significativo de la suma de los coeficientes de transformada de coseno discreta recibida del acumulador 23A. Un bit menos significativo igual a cero indica que la paridad de la suma es par. En este caso, el circuito 21 de determinación de paridad aplica la señal REQ1 de solicitud de tratamiento al inversor 53 de paridad para hacer que dicho inversor realice una operación de inversión de paridad. En respuesta a la señal REQ1 de solicitud de tratamiento, el inversor 53 de paridad cambia la polaridad de al menos uno (es decir, un número impar) de los coeficientes de transformada de coseno discreta del bloque para hacer impar la suma de dichos coeficientes. Por otra parte, un bit menos significativo igual a 1 indica que la paridad de la suma es impar. En este caso, el inversor 53 de paridad no genera la señal REQ1 de solicitud de tratamiento, y el inversor 53 de paridad no modifica la paridad de todos los coeficientes de transformada de coseno discreta del bloque, porque la paridad de la suma de los coeficientes de transformada de coseno discreta es ya impar.
El bloque de coeficientes de transformada de coseno discreta se transfiere desde el cuantificador inverso 13 no solamente al acumulador 23A, sino también al inversor 53 de paridad a través del circuito 52 de retardo. El circuito 52 de retardo retarda los coeficientes de transformada de coseno discreta del bloque un tiempo correspondiente a los tiempos de tratamiento del acumulador 23A y el circuito 21 de determinación de paridad, de tal modo que el último coeficiente de transformada de coseno discreta, es decir el coeficiente de la componente de frecuencia más alta (por ejemplo, el coeficiente de transformada de coseno discreta de la componente (7,7) en una transformada de coseno discreta de 8 x 8), llega al inversor 53 de paridad al mismo tiempo que la señal REQ1 de solicitud de tratamiento.
De este modo, el inversor 53 de paridad transfiere al circuito 15 de transformada de coseno discreta inversa sin modificar todos los coeficientes de transformada de coseno discreta, excepto el coeficiente correspondiente a la componente de frecuencia más alta. Cuando el circuito 21 de determinación de paridad no ha generado la señal REQ1 de solicitud de tratamiento, el inversor 53 de paridad transfiere también el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta al circuito de transformada de coseno discreta inversa sin modificación. Solamente cuando el circuito 21 de determinación de paridad ha generado la señal REQ1 de solicitud de tratamiento, el inversor 53 de paridad invierte el bit menos significativo del coeficiente de transformada de la componente de frecuencia más alta, y transfiere al circuito 15 de transformada de coseno discreta inversa el coeficiente de paridad invertida de la componente de frecuencia más alta.
De este modo, cuando el circuito 21 de determinación de paridad indica que es par la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque, el inversor 53 de paridad opera sobre el coeficiente de frecuencia más alta (por ejemplo, el coeficiente de transformada de coseno discreta de la componente (7,7) en una transformada de coseno discreta de 8 x 8) en el bloque. El inversor de paridad invierte la paridad de la componente de transformada de coseno discreta de frecuencia más alta, y por tanto hace impar la suma de los coeficientes de transformada de coseno discreta del bloque de coeficientes transferido al circuito 15 de transformada de coseno discreta inversa. De este modo, es siempre impar la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque de coeficientes. El coeficiente de transformada de coseno discreta de la componente (7,7) es el coeficiente que tiene la menor influencia sobre los valores de salida de la transformada de coseno discreta inversa.
Se describirán ahora ejemplos prácticos adicionales del circuito 50 de conversión de suma a un valor impar de la realización preferida del invento.
La figura 24 ilustra un ejemplo en el cual el sumador 23 de la figura 23 ha sido sustituido por el detector 29 de bit menos significativo y la puerta 30 "O" exclusiva. Los elementos del circuito representado en la figura 24 correspondientes a los del circuito ilustrado en la figura 23 están indicados por las mismas cifras de referencia, y no se describirán nuevamente en este caso. El detector 29 de bit menos significativo detecta el bit menos significativo de cada coeficiente de transformada de coseno discreta del bloque, y la puerta 30 "O" exclusiva y el registro 24 determinan conjuntamente la suma lógica exclusiva de los bits menos significativos de los coeficientes de transformada de coseno discreta del bloque. La paridad de la suma lógica exclusiva es determinada por el circuito 21 de determinación de paridad, como se ha descrito anteriormente con referencia a las figuras 10A y 23.
Alternativamente, pueden utilizarse la puerta "Y" 88 y el contador 89 de la figura 10B en sustitución de la puerta 30 "O" exclusiva y el registro 24 representados en la figura 24.
En la figura 25 se muestra otro ejemplo. En este caso, está insertado el selector 51 entre el cuantificador inverso 13 y el acumulador 23A en el circuito 50 de conversión de suma a un valor impar ilustrado en la figura 23. Los elementos del circuito representado en la figura 25 correspondientes a los del circuito ilustrado en la figura 23 están indicados por las mismas cifras de referencia, y no se describirán nuevamente en este caso. El circuito representado en la figura 25 determina solamente la suma de coeficientes específicos, por ejemplo los correspondientes a la componente (0,0), la componente (4,0), la componente (0,4) y la componente (4,4), para determinar si se requiere conversión a impar del valor de la suma. El selector 51 recibe el valor coeff_adrs de cómputo del contador 20 para determinar si cada coeficiente de transformada de coseno discreta recibido del cuantificador inverso 13 es o no uno de los coeficientes específicos, y consiguientemente ha de ser sumado. Cuando el selector 51 determina que el coeficiente de transformada de coseno discreta es uno de los coeficientes específicos y ha de ser sumado, es decir el valor coeff_adrs de cómputo tiene un valor correspondiente, por ejemplo, a la componente (0,0), la componente (4,0), la componente (0,4) o la componente (4,4), el selector 51 suministra el coeficiente de transformada de coseno discreta al acumulador 23A. El selector 51 hace que el circuito de conversión a valor impar de la suma representado en la figura 25 determine la suma de coeficientes específicos. El inversor 53 de paridad opera a continuación sobre al menos uno de los coeficientes específicos de transformada de coseno discreta para convertir en un número impar la suma de los coeficientes específicos. El bloque de coeficientes de transformada de coseno discreta de paridad impar de la suma se transfiere a continuación al circuito 15 de transformada de coseno discreta inversa.
En otra solución alternativa, el selector 51 representado en la figura 25 puede estar insertado en la línea de conexión entre el cuantificador inverso 13 y el detector 29 de bit menos significativo en el circuito ilustrado en la figura 24. El circuito representado en la figura 24, modificado de este modo, determinaría la suma lógica exclusiva de los bits menos significativos de los coeficientes de transformada de coseno discreta específicos seleccionados por el selector 51.
En una realización alternativa adicional del circuito 50 de conversión de suma a un valor impar, cuando el último coeficiente de transformada de coseno discreta recibido del cuantificador inverso 13 es el coeficiente de la componente continua, es decir cuando el orden de la exploración de trama es opuesto al de las realizaciones descritas anteriormente, el coeficiente de transformada de coseno discreta al cual se aplicó la operación de inversión de paridad no es el correspondiente a la componente de frecuencia más alta, sino el coeficiente de la componente continua.
Se describirá ahora con referencia a la figura 26 un ejemplo de la configuración de circuito práctica del inversor 53 de paridad. El inversor 53 de paridad es una versión simplificada del inversor 28 de paridad descrito anteriormente e ilustrado en la figura 11. El inversor 53 de paridad incluye el inversor 63 de bit menos significativo, la tercera y cuarta puertas "Y" 64 y 65, la puerta "O" 66 y la puerta inversora 71.
En el inversor 53 de paridad, el inversor 63 de bit menos significativo invierte el bit menos significativo de cada coeficiente de transformada de coseno discreta en el bloque de coeficientes recibido del cuantificador inverso 13. Este inversor de paridad invierte la paridad de cada coeficiente de transformada de coseno discreta. Normalmente, la señal REQ1 de solicitud de tratamiento está ausente, de modo que el inversor de paridad transfiere cada coeficiente de transformada de coseno discreta recibido al circuito 15 de transformada de coseno discreta inversa (figura 23) a través de la tercera puerta "Y" 64 y la puerta "O" 69.
Cuando es recibido el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta por el circuito 50 de conversión de suma a un valor impar (figura 23), el valor coeff_adrs de cómputo generado por el contador 20 indica al circuito 21 de determinación de paridad que el valor recibido por el circuito 21 de determinación de paridad es la suma de todos los coeficientes de transformada de coseno discreta incluidos en el bloque. En respuesta, el circuito 21 de determinación de paridad determina si es impar o par la paridad de la suma de los coeficientes de transformada de coseno discreta.
Cuando el circuito 21 de determinación de paridad determina que es par la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque, transfiere la señal REQ1 de solicitud de tratamiento al inversor 53 de paridad. La señal REQ1 de solicitud de tratamiento llega al inversor 53 de paridad a través del circuito 52 de retardo al mismo tiempo que el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta. La señal REQ1 de solicitud de tratamiento cambia los estados de la tercera y cuarta puertas "Y" 64 y 65. Esto hace que se transfiere el coeficiente de transformada de coseno discreta de frecuencia más alta con el bit menos significativo invertido desde el inversor 63 de bit menos significativo hasta el circuito 15 de transformada de coseno discreta inversa, a través de la cuarta puerta "Y" 65 y la puerta "O" 69. El coeficiente de transformada de coseno discreta de la frecuencia más alta con el bit menos significativo invertido es transferido al circuito de transformada de coseno discreta inversa, en lugar del coeficiente normal de la componente de frecuencia más alta, para hacer impar la paridad.
Por otra parte, cuando el circuito 21 de determinación de paridad determina que es impar la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque, no genera la señal REQ1 de solicitud de tratamiento. El inversor 53 de paridad transfiere el coeficiente de transformada de coseno discreta normal de la frecuencia más alta al circuito 15 de transformada de coseno discreta inversa a través de la tercera puerta "Y" 64 y la puerta "O" 69, puesto que no se requiere hacer impar la paridad de la suma del bloque de coeficientes de transformada de coseno discreta.
En las figuras 27 a 29 se muestran modificaciones al ejemplo práctico del inversor 53 de paridad representado en la figura 26.
La figura 27 muestra el sumador 73 de una unidad, similar al sumador de una unidad representado en la figura 13, dispuesto en sustitución del inversor 63 de bit menos significativo en el inversor de paridad ilustrado en la figura 26. El circuito es por lo demás idéntico. El inversor de paridad modificado como se muestra en la figura 27 invierte la paridad de cada uno de los coeficientes de transformada de coseno discreta en el bloque sumándoles una unidad. De este modo, cuando el circuito 21 de determinación de paridad transfiere la señal REQ1 de solicitud de tratamiento al inversor de paridad, el inversor de paridad transfiere al circuito 15 de transformada de coseno discreta inversa el coeficiente de la componente de frecuencia más alta con una unidad sumada, en vez del coeficiente normal de transformada de coseno discreta de la frecuencia más alta. Esta sustitución hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque.
Como se muestra en la figura 28, el circuito 80 de reducción de magnitud representado en la figura 15 puede utilizarse en sustitución del inversor 63 de bit menos significativo en el circuito representado en la figura 26. El circuito representado en la figura 26 permanece por lo demás inalterado. El inversor de paridad representado en la figura 26, modificado como se muestra en la figura 28, hace impar la suma de los coeficientes de transformada de coseno discreta de acuerdo con la ecuación (15) descrita anteriormente. Cuando el circuito 21 de determinación de paridad genera la señal REQ1 de solicitud de tratamiento, se hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque transfiriendo el coeficiente de la frecuencia más alta con su paridad invertida al circuito 15 de transformada de coseno discreta inversa. La paridad del coeficiente de transformada de coseno discreta de la componente de frecuencia más alta es invertida en uno de dos modos: es restada una unidad de dicho coeficiente por el substractor 82 de una unidad cuando el coeficiente de transformada de coseno discreta de la frecuencia más alta es positivo, o es sumada una unidad a dicho coeficiente por el sumador 83 de una unidad cuando es cero o negativo.
Como se muestra en la figura 29, el circuito 90 de aumento de magnitud representado en la figura 17 puede utilizarse en sustitución del inversor 63 de bit menos significativo del circuito representado en la figura 26. El circuito representado en la figura 26 permanece por lo demás inalterado. El inversor de paridad representado en la figura 26, modificado como se muestra en la figura 29, hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta de acuerdo con la ecuación (16) descrita anteriormente. Cuando el circuito 21 de determinación de paridad genera la señal REQ1 de solicitud de tratamiento, se hace impar la paridad de la suma de los coeficientes de transformada de coseno discreta del bloque transfiriendo el coeficiente de transformada de coseno discreta de la componente de frecuencia más alta, con su paridad invertida, al circuito 15 de transformada de coseno discreta inversa. La paridad del coeficiente de transformada de coseno discreta de la componente de frecuencia más alta es invertida en uno de dos modos: es restada una unidad de dicho coeficiente por el substractor 93 de una unidad cuando el coeficiente de transformada de coseno discreta de la frecuencia más alta es cero o negativo, o es sumada una unidad a dicho coeficiente por el sumador 92 de una unidad cuando es positivo.
Se describirá ahora una segunda realización del descompresor de señal de imagen con movimiento comprimida. En la segunda realización del descompresor de señal de imagen con movimiento comprimida, el circuito convertidor 50 de suma en número impar se utiliza en sustitución del circuito convertidor 35 de suma en número impar de la primera realización del decodificador de señal de imagen con movimiento comprimida, ilustrado y descrito anteriormente con referencia a la figura 19. El circuito representado en la figura 19 se utiliza por lo demás sin modificaciones. En la segunda realización del descompresor de señal de imagen con movimiento comprimida, el tratamiento para convertir en un número impar la suma de los coeficientes de transformada de coseno discreta se realiza de un modo similar al tratamiento realizado por el circuito convertidor de suma en número impar en la segunda realización del compresor de señal de imagen con movimiento, ilustrado y descrito con referencia a la figura 22. De este modo, en la segunda realización del descompresor de señal de imagen con movimiento comprimida, es innecesario transferir la dirección EOB_adrs desde el codificador inverso 32 de longitud variable hasta el circuito convertidor 50 de suma en número impar.
El invento descrito anteriormente hace posible aplicar un método de transformada de coseno discreta inversa y realizar un aparato de transformada de coseno discreta, un compresor de señal de imagen con movimiento, un expansor de señal de imagen con movimiento comprimida, y un aparato transmisor para una señal de imagen con movimiento comprimida en el cual la probabilidad de que se produzca un error de desadaptación en el curso del tratamiento de transformada de coseno discreta inversa se reduce hasta un punto en que no se producen en la práctica errores de desadaptación. Adicionalmente, el invento hace posible realizar un medio de registro en el cual no se produce ningún error de desadaptación cuando es reproducida del medio una señal de imagen con movimiento comprimida y es expandida mediante un tratamiento que incluye una transformación ortogonal inversa.
Cuando se utiliza una transformada de coseno discreta en la compresión de la señal de imagen con movimiento y una transformada de coseno discreta inversa en la expansión de la señal de imagen con movimiento comprimida, el invento hace posible evitar que se produzcan errores de desadaptación en la transformada de coseno discreta inversa. Esto evita el deterioro de la calidad de imagen. Consiguientemente, en un compresor de señal de imagen con movimiento y en un expansor de señal de imagen con movimiento comprimida a los cuales se aplica este invento, no existe posibilidad de que las imágenes decodificadas localmente en el compresor y las imágenes reconstruidas por el expansor sean diferentes entre sí. Se proporciona así una alta calidad de imagen.

Claims (17)

1. Un aparato (14) para el pretratamiento de un conjunto de coeficientes de transformada, cada uno de lo cuales tiene una determinada paridad, para obtener un conjunto de coeficientes de transformada inmune a errores para tratamiento mediante una transformada ortogonal inversa, siendo el conjunto de coeficientes de transformada inmune a errores inmune a errores de redondeo cuando se somete a la transformada ortogonal inversa, comprendiendo el aparato: un acumulador (23A), para recibir la suma de los coeficientes de transformada del conjunto y generar una suma que tiene paridad; medios (21) de determinación de paridad para recibir la suma generada por el acumulador y juzgar la paridad de la suma; medios (28) inversores de paridad, que funcionan cuando los medios (21) de determinación de paridad juzgan que la paridad de la suma es par, para invertir la paridad de uno de los coeficientes de transformada para proporcionar un coeficiente de transformada de paridad invertida, de tal modo que la paridad de la suma sería impar; y medios para proporcionar los coeficientes de transformada, que incluyen el coeficiente de transformada de paridad invertida, como conjunto de coeficientes de transformada inmune a errores.
2. Un aparato de acuerdo con la reivindicación 1ª, que está previsto para el pretratamiento de un conjunto de coeficientes de transformada generado por una transformada de coseno discreta bidimensional; en el que el conjunto de coeficientes de transformada incluye un coeficiente de transformada que representa una componente continua; y los medios (28) inversores de paridad están destinados a invertir la paridad de uno de los coeficientes de transformada diferente del coeficiente de transformada que representa la componente continua.
3. Un aparato de acuerdo con la reivindicación 2ª, en el que: el conjunto de coeficientes de transformada incluye también un coeficiente de transformada que representa una componente que tiene la frecuencia más alta; y los medios (28) inversores de paridad están destinados a invertir la paridad del coeficiente de transformada que representa la componente de frecuencia más alta.
4. Un aparato de acuerdo con la reivindicación 3ª, en el que: cada coeficiente de transformada del conjunto está representado por un número binario que tiene un bit menos significativo; y los medios (28) inversores de paridad incluyen medios para invertir el estado del bit menos significativo del coeficiente de transformada implicado.
5. Un aparato de acuerdo con la reivindicación 1ª, en el que: cada coeficiente de transformada del conjunto está representado por un número binario que tiene un bit menos significativo; y el acumulador incluye medios (24, 29, 30) para sumar solamente el bit menos significativo de cada coeficiente de transformada.
6. Un aparato de acuerdo con cualquiera de las reivindicaciones 1ª a 5ª, que comprende adicionalmente medios para seleccionar los coeficientes de transformada del conjunto de entre los que componen un bloque de coeficientes de transformada.
7. Un sistema para realizar la transformada ortogonal inversa de un conjunto de coeficientes de transformada sin incurrir en errores de redondeo, teniendo cada uno de los coeficientes de transformada una determinada paridad, cuyo sistema comprende: el aparato de cuerdo con cualquiera de las reivindicaciones 1ª a 6ª; y un circuito (15) de transformada ortogonal inversa, que recibe de los medios inversores de paridad el conjunto de coeficientes de transformada que incluye el coeficiente de transformada de paridad invertida.
8. Un sistema de acuerdo con la reivindicación 7ª, en el que: cada coeficiente de transformada tiene una polaridad; y los medios (80) inversores de paridad incluyen medios (81) de determinación de polaridad para determinar la polaridad de cada coeficiente de transformada, medios (82-86) que funcionan, en respuesta a los medios (81) de determinación de polaridad, para sumar una unidad al coeficiente de transformada cuando los medios de determinación de polaridad determinan que la polaridad del coeficiente de transformada es positiva, y para restar una unidad del coeficiente de transformada cuando los medios de determinación de polaridad determinan que la polaridad del coeficiente de transformada es negativa.
9. Un sistema de acuerdo con la reivindicación 7ª, en el que: cada coeficiente de transformada está representado por un número binario que tiene un bit menos significativo; y los medios (14) de determinación de paridad comprenden: medios (29) de detección de bit menos significativo para detectar el bit menos significativo de cada coeficiente de transformada; una puerta lógica (30) "O" exclusiva que incluye una primera entrada, que recibe el bit menos significativo de cada coeficiente de transformada de los medios de detección de bit menos significativo, una segunda entrada y una salida; un registro (24) que tiene una entrada conectada a la salida de la puerta "O" exclusiva y una salida conectada a la segunda entrada de la puerta "O" exclusiva; y un circuito (21) de determinación de paridad conectado a la salida del registro.
10. Un sistema para realizar la transformada ortogonal inversa de un conjunto de coeficientes de transformada sin incurrir en errores de redondeo, estando representado cada coeficiente de transformada por un número binario que incluye un bit menos significativo que tiene un estado lógico, cuyo sistema comprende: el aparato con cualquiera de las reivindicaciones 1ª a 5ª, en el que: el acumulador comprende medios de determinación de bit menos significativo para juzgar el estado del bit menos significativo de cada coeficiente de transformada; y medios contadores para proporcionar un cómputo contando coeficientes de transformada, de los que los bits menos significativos de dichos coeficientes son juzgados por los medios de determinación de bit menos significativo como bits que están en el estado "uno"; los medios de determinación de paridad comprenden medios de determinación de cómputo para juzgar si el cómputo generado por los medios contadores es un número par; y los medios de inversión de paridad comprenden medios de conversión de cómputo en número impar, que funcionan cuando los medios de determinación de cómputo juzgan que el cómputo es un número par, para cambiar uno de los coeficientes de transformada para obtener un coeficiente de transformada modificado, convirtiendo el coeficiente de transformada modificada el cómputo en un número impar; comprendiendo el sistema adicionalmente un circuito de transformada ortogonal inversa que recibe de los medios de conversión de cómputo en número impar el conjunto de coeficientes de transformada que incluye el coeficiente de transformada modificado.
11. Un sistema para comprimir una señal de imagen con movimiento, incluyendo la señal de imagen con movimiento imágenes, estando dividida cada imagen en bloques, cuyo sistema comprende: medios de codificación predictiva para codificar predictivamente bloques de la señal de imagen con movimiento utilizando bloques de adaptación de una imagen de referencia para formar bloques de diferencia; medios de codificación de bloques de diferencia para comprimir los bloques de diferencia procedentes de los medios de codificación predictiva, para formar una señal de imagen con movimiento comprimida, incluyendo los medios de codificación de bloques de diferencia: medios (11) de transformada ortogonal para transformar ortogonalmente el bloque de diferencia generado por los medios de codificación predictiva para proporcionar bloques de coeficientes de transformada; medios (12) de cuantificación para cuantificar los bloques de coeficientes de transformada generados por los medios de transformada ortogonal para proporcionar bloques de señal comprimida de los que se deduce la señal de imagen con movimiento comprimida; medios (10) de decodificación local para descomprimir los bloques de señal comprimida generados por los medios de codificación de bloques de diferencia para proporcionar bloques de diferencia restaurados sin incurrir en errores de redondeo cuando los bloques de señal comprimida son sometidos a transformada ortogonal inversa, incluyendo los medios de decodificación local: medios (13) de cuantificación inversa para cuantificar inversamente los bloques de señal comprimidos procedentes de los medios de codificación de bloques de diferencia para proporcionar bloques de coeficientes de transformada restaurados, teniendo cada uno de los coeficientes de transformada restaurados una determinada paridad; el aparato (14) de acuerdo con cualquiera de las reivindicaciones 1ª a 6ª para procesar los coeficientes de transformada restaurados; un circuito (15) de transformada ortogonal inversa, que recibe el bloque de coeficientes de transformada pretratados, que incluye el coeficiente de transformada con paridad invertida, proporcionando el circuito de transformada ortogonal inversa los bloques de diferencia restaurados; medios (16) de decodificación predictiva para decodificar predictivamente los bloques de diferencia restaurados generados por los medios de decodificación local, para reconstruir bloques de imagen correspondientes a los bloques de la señal de imagen con movimiento; y una memoria (4) de imagen que almacena los bloques de imagen reconstruida procedentes de los medios de decodificación predictiva como bloques de una imagen reconstruida prevista para ser utilizada como imagen de referencia para codificar predictivamente otras imágenes de la señal de imagen con movimiento.
12. Un sistema para comprimir una señal de imagen con movimiento, cuya señal de imagen con movimiento incluye imágenes, estando dividida cada imagen en bloques, comprendiendo el sistema: medios (8) de codificación predictiva para codificar predictivamente bloques de la señal de imagen con movimiento utilizando bloques de adaptación de una imagen de referencia para formar bloques de diferencia; medios (9) de codificación de bloques de diferencia para comprimir los bloques de diferencia generados por los medios de codificación predictiva para formar una señal de imagen con movimiento comprimida, incluyendo los medios de codificación de bloques de diferencia: medios (11) de transformada ortogonal para transformar ortogonalmente los bloques de diferencia generados por el codificador predictivo para formar bloques de coeficiente de transformada; medios (12) de cuantificación para cuantificar los bloques de coeficientes de transformada generados por los medios de transformada ortogonal para proporcionar bloques de señal comprimidos de los que se deduce la señal de imagen con movimiento comprimida; medios (10) de decodificación local para descomprimir los bloques de señal comprimidos generados por los medios de codificación de bloques de diferencia para proporcionar bloques de diferencia restaurados sin incurrir en errores de redondeo cuando los bloques de señal comprimidos son sometidos a transformada ortogonal inversa, incluyendo los medios de decodificación local: medios (13) de cuantificación inversa para cuantificar inversamente los bloques de señal comprimidos procedentes del codificador de bloques de diferencia para proporcionar bloques de coeficientes de transformada restaurados, estando representado cada uno de los coeficientes de transformada restaurados por un número binario que incluye un bit menos significativo; el aparato (14) de acuerdo con cualquiera de las reivindicaciones 1ª a 6ª para pretratar los coeficientes de transformada restaurados; y un circuito (15) de transformada ortogonal inversa, que recibe de los medios de conversión de cómputo en número impar cada uno de los bloques de coeficientes de transformada restaurados, que incluye el coeficiente de transformada modificado, cuyo circuito de transformada ortogonal inversa proporciona los bloques de diferencia restaurados; medios (18) de decodificación predictiva para decodificar predictivamente los bloques de diferencia restaurados generados por los medios de decodificación local, para reconstruir bloques de imagen correspondientes a los bloques de la señal de imagen con movimiento; y una memoria (4) de imagen que almacena los bloques de imagen reconstruidos procedentes de los medios de decodificación predictiva como bloques de una imagen reconstruida que ha de ser utilizada como imagen de referencia para codificar predictivamente otras imágenes de la señal de imagen con movimiento.
13. Un sistema de acuerdo con la reivindicación 12ª, que está previsto adicionalmente para registrar la señal de imagen con movimiento comprimida sobre un medio de registro; y que comprende adicionalmente: medios (17) para aplicar codificación de longitud variable a los bloques de señal comprimidos para obtener la señal de imagen con movimiento comprimida; medios para deducir una señal de registro de la señal de imagen con movimiento comprimida; y medios para registrar la señal de registro en el medio de registro.
14. Un sistema de acuerdo con la reivindicación 14ª, que está previsto adicionalmente para transmitir la señal de imagen con movimiento comprimida a través de un medio de transmisión; y que comprende adicionalmente: medios (17) para aplicar codificación de longitud variable a los bloques de señal comprimidos para obtener la señal de imagen con movimiento comprimida; medios para deducir una señal de transmisión de la señal de imagen con movimiento comprimida; y medios para transmitir la señal de transmisión a través del medio de transmisión.
15. Un sistema de acuerdo con cualquiera de las reivindicaciones 12ª, 13ª o 14ª, en el que la memoria de imagen es una segunda memoria (4) de imagen, y el aparato comprende adicionalmente una primera memoria (2) de imagen, cuya primera memoria de imagen almacena transitoriamente la señal de imagen con movimiento; los medios (8) de codificación predictiva están previstos para codificar predictivamente bloques de la señal de imagen con movimiento leídos de la primera memoria de imagen; y el sistema comprende adicionalmente: medios (17) de codificación de longitud variable para obtener la señal de imagen con movimiento comprimida aplicando codificación de longitud variable a los bloques de señal comprimidos procedentes de los medios de codificación de bloques de diferencia; y medios (6, 7) de compensación de movimiento para detectar movimiento entre las imágenes reconstruidas almacenadas en la segunda memoria de imagen y la señal de imagen con movimiento almacenada en la primera memoria de imagen, para aplicar compensación de movimiento a imágenes ya reconstruidas almacenadas en la segunda memoria de imagen en respuesta al movimiento detectado para obtener bloques de una de las imágenes reconstruidas seleccionada como imagen de referencia, y para proporcionar los bloques de la imagen de referencia a los medios de codificación predictiva.
16. Un sistema para descomprimir una señal de imagen con movimiento comprimida para obtener una señal de salida de imagen con movimiento, incluyendo la señal de imagen con movimiento comprimida porciones de señal que representan cada una imagen de la señal de salida de imagen con movimiento, incluyendo las porciones de señal bloques de señal comprimidos codificados con longitud variable, comprendiendo el sistema: medios (32) de codificación inversa de longitud variable para aplicar codificación inversa de longitud variable a los bloques de señal comprimidos codificados con longitud variable, para obtener bloques de señal comprimidos; medios (34) de decodificación para descomprimir los bloques de señal comprimidos generados por los medios de codificación inversa de longitud variable para proporcionar bloques de diferencia restaurados sin incurrir en errores de redondeo cuando los bloques de señal comprimidos son sometidos a transformada ortogonal inversa, incluyendo los medios de decodificación: medios (40) de cuantificación inversa para cuantificar inversamente cada bloque de señal comprimido procedente de los medios de codificación de bloques de diferencia, para proporcionar un bloque de coeficientes de transformada restaurados, teniendo cada uno de los coeficientes de transformada restaurados una determinada paridad; el aparato de acuerdo con cualquiera de las reivindicaciones 1ª a 6ª para pretratar los coeficientes de transformada restaurados; y un circuito de transformada ortogonal inversa, que recibe el bloque de coeficientes de transformada restaurados, que incluye el coeficiente de transformada de paridad invertida, procedente de los medios de conversión de suma en número impar, proporcionando el circuito de transformada ortogonal inversa los bloques de diferencia restaurados.
17. Un sistema de acuerdo con la reivindicación 16ª, en el que: los medios (32) de decodificación de longitud variable proporcionan adicionalmente un vector (MV) de movimiento y datos (MM) de modo de compensación de movimiento; y el sistema comprende adicionalmente: medios (39) de decodificación predictiva para decodificar predictivamente los bloques de diferencia restaurados procedentes de los medios de decodificación para reconstruir bloques de imagen; una memoria (38) de imagen que almacena los bloques de imagen reconstruida generados por los medios de decodificación predictiva como bloques de una imagen reconstruida que ha de ser utilizada como imagen de referencia para decodificar predictivamente otras imágenes de la señal de imagen con movimiento; medios (37), que responden al vector de movimiento y a los datos de modo de compensación de movimiento tomados de los medios de codificación inversa de longitud variable, para realizar una compensación de movimiento sobre imágenes ya reconstruidas almacenadas en la memoria de imagen para obtener, de una de las imágenes ya reconstruidas seleccionada como imagen de referencia, un bloque de la imagen de referencia, y para proporcionar el bloque de la imagen de referencia a los medios de decodificación predictiva; y medios para leer la señal de salida de imagen con movimiento de la memoria (38) de imagen.
ES98119828T 1993-03-01 1994-03-01 Aparato para evitar errores de redondeo cuando los coeficientes de transformada que representan una señal de imagen en movimiento se transforman inversamente. Expired - Lifetime ES2209032T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP4020393 1993-03-01
JP4020393 1993-03-01
JP5990993 1993-03-19
JP5990993 1993-03-19

Publications (1)

Publication Number Publication Date
ES2209032T3 true ES2209032T3 (es) 2004-06-16

Family

ID=26379647

Family Applications (5)

Application Number Title Priority Date Filing Date
ES99113786T Expired - Lifetime ES2389797T3 (es) 1993-03-01 1994-03-01 Aparato para evitar errores de redondeo en la transformación inversa de coeficientes de transformada de una señal de imagen en movimiento
ES98119828T Expired - Lifetime ES2209032T3 (es) 1993-03-01 1994-03-01 Aparato para evitar errores de redondeo cuando los coeficientes de transformada que representan una señal de imagen en movimiento se transforman inversamente.
ES94907708T Expired - Lifetime ES2137358T3 (es) 1993-03-01 1994-03-01 Metodos para evitar errores de redondeo cuando los coeficientes de transformacion que representan una señal de imagen en movimiento se transforman inversamente.
ES10011843T Expired - Lifetime ES2389766T3 (es) 1993-03-01 1994-03-01 Descodificación de un bloque de coeficientes de transformada cuantificados, en donde una paridad par de la suma de los coeficientes de transformada cuantificados inversamente es ajustada a una paridad impar
ES10011642T Expired - Lifetime ES2389718T3 (es) 1993-03-01 1994-03-01 Descodificación de un bloque de coeficientes de transformada cuantificados, en donde una paridad par de la suma de los coeficientes de transformada cuantificados inversamente es ajustada a una paridad impar

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES99113786T Expired - Lifetime ES2389797T3 (es) 1993-03-01 1994-03-01 Aparato para evitar errores de redondeo en la transformación inversa de coeficientes de transformada de una señal de imagen en movimiento

Family Applications After (3)

Application Number Title Priority Date Filing Date
ES94907708T Expired - Lifetime ES2137358T3 (es) 1993-03-01 1994-03-01 Metodos para evitar errores de redondeo cuando los coeficientes de transformacion que representan una señal de imagen en movimiento se transforman inversamente.
ES10011843T Expired - Lifetime ES2389766T3 (es) 1993-03-01 1994-03-01 Descodificación de un bloque de coeficientes de transformada cuantificados, en donde una paridad par de la suma de los coeficientes de transformada cuantificados inversamente es ajustada a una paridad impar
ES10011642T Expired - Lifetime ES2389718T3 (es) 1993-03-01 1994-03-01 Descodificación de un bloque de coeficientes de transformada cuantificados, en donde una paridad par de la suma de los coeficientes de transformada cuantificados inversamente es ajustada a una paridad impar

Country Status (29)

Country Link
US (2) US5481553A (es)
EP (5) EP2276258B1 (es)
JP (2) JP3610578B2 (es)
KR (1) KR100287490B1 (es)
CN (1) CN1076935C (es)
AT (2) ATE185663T1 (es)
AU (1) AU673244B2 (es)
BR (1) BR9404321A (es)
CA (1) CA2134444C (es)
DE (2) DE69421135T2 (es)
DK (5) DK2276258T3 (es)
EG (1) EG20330A (es)
ES (5) ES2389797T3 (es)
FI (1) FI112579B (es)
GR (1) GR3032133T3 (es)
HK (2) HK1013575A1 (es)
HU (1) HU217744B (es)
IL (1) IL108787A (es)
MY (1) MY110794A (es)
NO (2) NO314709B1 (es)
NZ (1) NZ261907A (es)
OA (1) OA10108A (es)
PL (1) PL173287B1 (es)
PT (4) PT954182E (es)
RO (1) RO115926B1 (es)
RU (1) RU2119727C1 (es)
TR (1) TR28436A (es)
TW (1) TW224553B (es)
WO (1) WO1994021083A1 (es)

Families Citing this family (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5515388A (en) * 1993-03-19 1996-05-07 Sony Corporation Apparatus and method for preventing repetitive random errors in transform coefficients representing a motion picture signal
EP0671816B1 (en) * 1993-09-28 2000-03-29 Sony Corporation Encoding/decoding device with all odd or all even value rounding
US5796438A (en) * 1994-07-05 1998-08-18 Sony Corporation Methods and apparatus for interpolating picture information
JP3794502B2 (ja) 1994-11-29 2006-07-05 ソニー株式会社 画像領域抽出方法及び画像領域抽出装置
US5623423A (en) * 1994-12-12 1997-04-22 Univ. Of Texas Apparatus and method for video decoding
US5675666A (en) * 1995-03-02 1997-10-07 Sony Corportion Image data compression method and apparatus with pre-processing to compensate for the blocky effect
JP3855286B2 (ja) * 1995-10-26 2006-12-06 ソニー株式会社 画像符号化装置および画像符号化方法、画像復号化装置および画像復号化方法、並びに記録媒体
JPH09128529A (ja) * 1995-10-30 1997-05-16 Sony Corp ディジタル画像の雑音の投影に基づく除去方法
KR100355375B1 (ko) * 1995-11-01 2002-12-26 삼성전자 주식회사 영상부호화장치에있어서양자화간격결정방법및회로
JP3994445B2 (ja) * 1995-12-05 2007-10-17 ソニー株式会社 動きベクトル検出装置及び動きベクトル検出方法
US6256349B1 (en) * 1995-12-28 2001-07-03 Sony Corporation Picture signal encoding method and apparatus, picture signal transmitting method, picture signal decoding method and apparatus and recording medium
US6057893A (en) * 1995-12-28 2000-05-02 Sony Corporation Picture encoding method, picture encoding apparatus, picture transmitting method and picture recording medium
US5822005A (en) * 1996-01-11 1998-10-13 Tektronix, Inc. Pre-oddification
US5710732A (en) * 1996-04-22 1998-01-20 Samsung Electronics Co., Ltd. Calculating the average of four integer numbers rounded away from zero in a single instruction cycle
US5751617A (en) * 1996-04-22 1998-05-12 Samsung Electronics Co., Ltd. Calculating the average of two integer numbers rounded away from zero in a single instruction cycle
TW357327B (en) * 1996-08-02 1999-05-01 Sony Corp Methods, apparatus and program storage device for removing scratch or wire noise, and recording media therefor
US5930159A (en) * 1996-10-17 1999-07-27 Samsung Electronics Co., Ltd Right-shifting an integer operand and rounding a fractional intermediate result to obtain a rounded integer result
EP1689189A3 (en) 1996-11-07 2008-12-10 Panasonic Corporation Image encoder and image decoder
US5917739A (en) * 1996-11-14 1999-06-29 Samsung Electronics Co., Ltd. Calculating the average of four integer numbers rounded towards zero in a single instruction cycle
US6007232A (en) * 1996-11-14 1999-12-28 Samsung Electronics Co., Ltd. Calculating the average of two integer numbers rounded towards zero in a single instruction cycle
EP0786907A3 (en) * 1997-01-24 2001-06-13 Texas Instruments Incorporated Video encoder
EP2369847B1 (en) * 1997-02-13 2016-04-20 Mitsubishi Denki Kabushiki Kaisha Moving picture decoding method
WO1998041011A1 (en) * 1997-03-12 1998-09-17 Matsushita Electric Industrial Co., Ltd. Hdtv downconversion system
US6078616A (en) 1997-03-13 2000-06-20 Sony Corporation Methods and apparatus for error concealment utilizing temporal domain motion vector estimation
US6128340A (en) * 1997-03-14 2000-10-03 Sony Corporation Decoder system with 2.53 frame display buffer
AU1941797A (en) * 1997-03-17 1998-10-12 Mitsubishi Denki Kabushiki Kaisha Image encoder, image decoder, image encoding method, image decoding method and image encoding/decoding system
US5903311A (en) * 1997-05-30 1999-05-11 Sony Corporation Run level pair buffering for fast variable length decoder circuit
US7801380B2 (en) * 1997-06-09 2010-09-21 Hitachi, Ltd. Recording medium having recorded thereon coded information using plus and/or minus rounding of images
US6574371B2 (en) 1997-06-09 2003-06-03 Hitachi, Ltd. Image decoding method
EP1237376B1 (en) 1997-06-09 2015-08-05 Hitachi, Ltd. Image information recording medium
SE512171C2 (sv) * 1997-07-02 2000-02-07 Forskarpatent I Linkoeping Ab Videoöverföring
US6351563B1 (en) * 1997-07-09 2002-02-26 Hyundai Electronics Ind. Co., Ltd. Apparatus and method for coding/decoding scalable shape binary image using mode of lower and current layers
WO1999010719A1 (en) 1997-08-29 1999-03-04 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
AU728938B2 (en) * 1997-09-29 2001-01-18 Canon Kabushiki Kaisha A method for data compression
US6937659B1 (en) 1997-11-14 2005-08-30 Ac Capital Management, Inc. Apparatus and method for compressing video information
US6222832B1 (en) * 1998-06-01 2001-04-24 Tantivy Communications, Inc. Fast Acquisition of traffic channels for a highly variable data rate reverse link of a CDMA wireless communication system
US6137844A (en) * 1998-02-02 2000-10-24 Oki Telecom, Inc. Digital filter for noise and error removal in transmitted analog signals
EP0936743A1 (fr) * 1998-02-17 1999-08-18 Koninklijke Philips Electronics N.V. Décodage itératif pour codes binaires en bloc
GB2335815B (en) * 1998-03-25 2002-02-27 Sony Uk Ltd Data compression
US6393155B1 (en) * 1998-11-04 2002-05-21 International Business Machines Corporation Error reduction in transformed digital data
US6256422B1 (en) * 1998-11-04 2001-07-03 International Business Machines Corporation Transform-domain correction of real-domain errors
EP1166566A2 (en) * 1999-04-01 2002-01-02 Ravisent Technologies, Inc. Memory management method for high speed streaming data processing in a computer device
US6567557B1 (en) 1999-12-10 2003-05-20 Stmicroelectronics, Inc. Method for preventing dual-step half-pixel motion compensation accumulation errors in prediction-rich MPEG-2 sequences
GB2352905B (en) * 1999-07-30 2003-10-29 Sony Uk Ltd Data compression
US6735249B1 (en) * 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
US6377627B1 (en) 1999-08-31 2002-04-23 Sony Corporation Method and apparatus for decoding MPEG video data
US6456663B1 (en) 2000-03-29 2002-09-24 Matsushita Electric Industrial Co., Ltd. DCT domain down conversion system that compensates for IDCT mismatch
GB2364459B (en) * 2000-06-30 2004-03-31 Nokia Mobile Phones Ltd Video error resilience
US7168069B1 (en) 2000-07-12 2007-01-23 Stmicroelectronics, Inc. Dynamic generation of multimedia code for image processing
EP1176833A3 (en) * 2000-07-25 2012-06-27 Panasonic Corporation Image decoding method, image decoding apparatus, and data storage medium
FR2815748B1 (fr) * 2000-10-20 2003-01-24 Canon Kk Procede et dispositif de traitement et de decodage d'un signal numerique code
US8374237B2 (en) 2001-03-02 2013-02-12 Dolby Laboratories Licensing Corporation High precision encoding and decoding of video images
ES2665693T3 (es) 2001-11-06 2018-04-26 Panasonic Intellectual Property Corporation Of America Método de codificación de imágenes en movimiento y método de decodificación de imágenes en movimiento
KR100434740B1 (ko) * 2001-11-09 2004-06-10 주식회사 휴맥스 디지털 방송 프로그램에서의 저배속 재생방법
WO2003056838A1 (en) * 2001-12-25 2003-07-10 Matsushita Electric Industrial Co., Ltd. Moving picture compression/coding apparatus and motion vector detection method
KR100491530B1 (ko) 2002-05-03 2005-05-27 엘지전자 주식회사 모션 벡터 결정 방법
US7016547B1 (en) * 2002-06-28 2006-03-21 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
US7433824B2 (en) * 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
ES2297083T3 (es) 2002-09-04 2008-05-01 Microsoft Corporation Codificacion entropica por adaptacion de la codificacion entre modos por longitud de ejecucion y por nivel.
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
JP2006506929A (ja) * 2002-11-12 2006-02-23 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 変換ドメインのサンプル毎の判定帰還型等化器
US7292867B2 (en) * 2003-01-16 2007-11-06 Bones In Motion, Inc. Location-aware fitness training device, methods, and program products that support real-time interactive communication and automated route generation
US7403561B2 (en) * 2003-04-04 2008-07-22 Avid Technology, Inc. Fixed bit rate, intraframe compression and decompression of video
US7602851B2 (en) * 2003-07-18 2009-10-13 Microsoft Corporation Intelligent differential quantization of video coding
US7738554B2 (en) 2003-07-18 2010-06-15 Microsoft Corporation DC coefficient signaling at small quantization step sizes
US7580584B2 (en) * 2003-07-18 2009-08-25 Microsoft Corporation Adaptive multiple quantization
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US8218624B2 (en) * 2003-07-18 2012-07-10 Microsoft Corporation Fractional quantization step sizes for high bit rates
US7688894B2 (en) * 2003-09-07 2010-03-30 Microsoft Corporation Scan patterns for interlaced video content
US7782954B2 (en) * 2003-09-07 2010-08-24 Microsoft Corporation Scan patterns for progressive video content
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
DE10345995B4 (de) 2003-10-02 2005-07-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verarbeiten eines Signals mit einer Sequenz von diskreten Werten
US7801383B2 (en) * 2004-05-15 2010-09-21 Microsoft Corporation Embedded scalar quantizers with arbitrary dead-zone ratios
US8331445B2 (en) * 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
KR20070085310A (ko) * 2004-11-16 2007-08-27 코닌클리케 필립스 일렉트로닉스 엔.브이. 송신기측 채널 적응 비디오 전송
KR100669634B1 (ko) * 2004-12-06 2007-01-15 엘지전자 주식회사 동영상 압축 및 복원 방법
US8311119B2 (en) * 2004-12-31 2012-11-13 Microsoft Corporation Adaptive coefficient scan order
JP4270161B2 (ja) * 2005-04-15 2009-05-27 ソニー株式会社 情報記録再生システム、情報記録再生装置及び情報記録再生方法
US8422546B2 (en) 2005-05-25 2013-04-16 Microsoft Corporation Adaptive video encoding using a perceptual model
US7684981B2 (en) * 2005-07-15 2010-03-23 Microsoft Corporation Prediction of spectral coefficients in waveform coding and decoding
US7599840B2 (en) * 2005-07-15 2009-10-06 Microsoft Corporation Selectively using multiple entropy models in adaptive coding and decoding
US7693709B2 (en) 2005-07-15 2010-04-06 Microsoft Corporation Reordering coefficients for waveform coding or decoding
US8599925B2 (en) * 2005-08-12 2013-12-03 Microsoft Corporation Efficient coding and decoding of transform blocks
US7933337B2 (en) * 2005-08-12 2011-04-26 Microsoft Corporation Prediction of transform coefficients for image compression
US7565018B2 (en) * 2005-08-12 2009-07-21 Microsoft Corporation Adaptive coding and decoding of wide-range coefficients
US7995649B2 (en) 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
US8130828B2 (en) 2006-04-07 2012-03-06 Microsoft Corporation Adjusting quantization to preserve non-zero AC coefficients
US8503536B2 (en) * 2006-04-07 2013-08-06 Microsoft Corporation Quantization adjustments for DC shift artifacts
US7974340B2 (en) * 2006-04-07 2011-07-05 Microsoft Corporation Adaptive B-picture quantization control
US8059721B2 (en) 2006-04-07 2011-11-15 Microsoft Corporation Estimating sample-domain distortion in the transform domain with rounding compensation
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
US8571340B2 (en) 2006-06-26 2013-10-29 Qualcomm Incorporated Efficient fixed-point approximations of forward and inverse discrete cosine transforms
US8606023B2 (en) 2006-06-26 2013-12-10 Qualcomm Incorporated Reduction of errors during computation of inverse discrete cosine transform
US8275045B2 (en) 2006-07-12 2012-09-25 Qualcomm Incorporated Video compression using adaptive variable length codes
US20080036864A1 (en) * 2006-08-09 2008-02-14 Mccubbrey David System and method for capturing and transmitting image data streams
US8325819B2 (en) 2006-10-12 2012-12-04 Qualcomm Incorporated Variable length coding table selection based on video block type for refinement coefficient coding
US9319700B2 (en) 2006-10-12 2016-04-19 Qualcomm Incorporated Refinement coefficient coding based on history of corresponding transform coefficient values
US8565314B2 (en) 2006-10-12 2013-10-22 Qualcomm Incorporated Variable length coding table selection based on block type statistics for refinement coefficient coding
US8599926B2 (en) 2006-10-12 2013-12-03 Qualcomm Incorporated Combined run-length coding of refinement and significant coefficients in scalable video coding enhancement layers
DE102006049232B4 (de) * 2006-10-18 2010-02-04 Ods Technology Gmbh Verfahren und Vorrichtung zur Vermeidung von Fehlern beim Runden von Werten nach Durchführung einer inversen diskreten Kosinus-Transformation
US8300698B2 (en) 2006-10-23 2012-10-30 Qualcomm Incorporated Signalling of maximum dynamic range of inverse discrete cosine transform
US8238424B2 (en) * 2007-02-09 2012-08-07 Microsoft Corporation Complexity-based adaptive preprocessing for multiple-pass video compression
US8184710B2 (en) * 2007-02-21 2012-05-22 Microsoft Corporation Adaptive truncation of transform coefficient data in a transform-based digital media codec
US8498335B2 (en) * 2007-03-26 2013-07-30 Microsoft Corporation Adaptive deadzone size adjustment in quantization
US8243797B2 (en) 2007-03-30 2012-08-14 Microsoft Corporation Regions of interest for quality adjustments
KR101442278B1 (ko) * 2007-03-30 2014-09-22 소니 주식회사 정보 처리 장치 및 방법
KR101370286B1 (ko) 2007-04-06 2014-03-06 삼성전자주식회사 레지듀얼 블록의 변형을 이용한 영상 부호화, 복호화 방법및 장치
US8442337B2 (en) * 2007-04-18 2013-05-14 Microsoft Corporation Encoding adjustments for animation content
US8331438B2 (en) 2007-06-05 2012-12-11 Microsoft Corporation Adaptive selection of picture-level quantization parameters for predicted video pictures
US8571104B2 (en) 2007-06-15 2013-10-29 Qualcomm, Incorporated Adaptive coefficient scanning in video coding
US8488668B2 (en) 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
US7774205B2 (en) * 2007-06-15 2010-08-10 Microsoft Corporation Coding of sparse digital media spectral data
KR101401967B1 (ko) * 2007-12-04 2014-06-27 삼성전자주식회사 암호화된 데이터 스트림의 트릭 플레이 방법 및 장치
US8189933B2 (en) * 2008-03-31 2012-05-29 Microsoft Corporation Classifying and controlling encoding quality for textured, dark smooth and smooth video content
US8179974B2 (en) 2008-05-02 2012-05-15 Microsoft Corporation Multi-level representation of reordered transform coefficients
US8897359B2 (en) * 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
RU2471306C2 (ru) * 2008-06-27 2012-12-27 Сони Корпорейшн Устройство обработки изображений и способ обработки изображений
WO2009157580A1 (ja) * 2008-06-27 2009-12-30 ソニー株式会社 画像処理装置及び画像処理方法
JPWO2009157581A1 (ja) * 2008-06-27 2011-12-15 ソニー株式会社 画像処理装置及び画像処理方法
US8406307B2 (en) 2008-08-22 2013-03-26 Microsoft Corporation Entropy coding/decoding of hierarchically organized data
US8798152B2 (en) * 2008-09-11 2014-08-05 General Instrument Corporation Method and apparatus for fast motion estimation
KR101834825B1 (ko) 2009-01-27 2018-03-06 톰슨 라이센싱 비디오 인코딩 및 디코딩에서 변환 선택을 위한 방법 및 장치
EP2222086A1 (de) 2009-02-18 2010-08-25 EcoDisc Technology AG Verfahren und Vorrichtung zur Vermeidung von Rundungsfehlern nach Durchführung einer inversen diskreten orthogonalen Transformation
US8457425B2 (en) * 2009-06-09 2013-06-04 Sony Corporation Embedded graphics coding for images with sparse histograms
KR101456498B1 (ko) * 2009-08-14 2014-10-31 삼성전자주식회사 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
JP5530198B2 (ja) 2009-11-20 2014-06-25 パナソニック株式会社 画像符号化方法、復号化方法、装置
JP5546329B2 (ja) * 2010-04-14 2014-07-09 キヤノン株式会社 データ変換装置
KR101690253B1 (ko) * 2010-05-06 2016-12-27 삼성전자주식회사 영상 처리 장치 및 그 방법
GB2483282B (en) * 2010-09-03 2017-09-13 Advanced Risc Mach Ltd Data compression and decompression using relative and absolute delta values
RU2599959C2 (ru) * 2011-12-21 2016-10-20 Интел Корпорейшн Схема сжатия dram для снижения потребления энергии при компенсации движения и обновления отображения
US9008184B2 (en) 2012-01-20 2015-04-14 Blackberry Limited Multiple sign bit hiding within a transform unit
EP2675159B1 (en) * 2012-06-15 2018-08-08 BlackBerry Limited Multi-bit information hiding using overlapping subsets
JPWO2014002896A1 (ja) * 2012-06-29 2016-05-30 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法
US20140133574A1 (en) * 2012-11-13 2014-05-15 Mediatek Inc. Method and Apparatus for Sign Data Hiding of Video and Image Data
KR101757341B1 (ko) * 2013-01-29 2017-07-14 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에.베. 저-복잡도 음조-적응 오디오 신호 양자화
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
WO2017142319A1 (ko) * 2016-02-16 2017-08-24 삼성전자 주식회사 영상 부호화 방법 및 장치와 영상 복호화 방법 및 장치
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US10225562B1 (en) * 2017-08-21 2019-03-05 Google Llc Embedding information about EOB positions
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
US11962757B2 (en) 2019-03-23 2024-04-16 Lg Electronics Inc. Residual signal encoding/decoding method and apparatus employing intra sub-partitions (ISP), and method for transmitting bitstream
WO2021038625A1 (ja) 2019-08-23 2021-03-04 三菱電機株式会社 画像送信装置、画像受信装置、画像送信プログラム及び画像受信プログラム
KR20210156985A (ko) 2020-06-19 2021-12-28 삼성전자주식회사 일 함수 층들을 갖는 반도체 소자들
KR20210158607A (ko) 2020-06-24 2021-12-31 삼성전자주식회사 캡핑층을 포함하는 반도체 소자
KR20210158615A (ko) 2020-06-24 2021-12-31 삼성전자주식회사 게이트 라인을 포함하는 집적회로 소자

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3138816A1 (de) * 1981-09-30 1983-04-14 Philips Patentverwaltung Gmbh, 2000 Hamburg Anordnung zum speichern oder uebertragen und zum rueckgewinnen von bildsignalen
WO1987002210A1 (en) * 1985-10-02 1987-04-09 Deutsche Thomson-Brandt Gmbh Process for correcting transmission errors
ES2031499T3 (es) * 1986-03-20 1992-12-16 American Telephone And Telegraph Company Metodo y codificador para codificar senales de datos.
US5218650A (en) * 1991-01-02 1993-06-08 Ricoh Corporation Quantization method for use in image compression
JP2909239B2 (ja) * 1991-03-27 1999-06-23 株式会社東芝 高能率符号化記録再生装置

Also Published As

Publication number Publication date
ATE252806T1 (de) 2003-11-15
MY110794A (en) 1999-04-30
ES2389766T3 (es) 2012-10-31
DK2276259T3 (da) 2012-09-17
EP0903944A3 (en) 2000-04-05
CA2134444A1 (en) 1994-09-15
EP0903944A2 (en) 1999-03-24
DK2276258T3 (da) 2012-09-17
DE69421135D1 (de) 1999-11-18
EP2276259B1 (en) 2012-08-22
JPH07506954A (ja) 1995-07-27
ES2389718T3 (es) 2012-10-30
HK1013575A1 (en) 1999-08-27
PT2276258E (pt) 2012-09-20
EP2276258A3 (en) 2012-03-07
HU217744B (hu) 2000-04-28
PL173287B1 (pl) 1998-02-27
JP3593988B2 (ja) 2004-11-24
CN1076935C (zh) 2001-12-26
PT903944E (pt) 2004-03-31
HK1025448A1 (en) 2000-11-10
US5590139A (en) 1996-12-31
DK0638218T3 (da) 2000-01-31
FI112579B (fi) 2003-12-15
PL306007A1 (en) 1995-02-20
CN1106988A (zh) 1995-08-16
DE69433272D1 (de) 2003-11-27
IL108787A (en) 1997-07-13
DE69433272T2 (de) 2004-08-12
EP2276258A2 (en) 2011-01-19
EP2276259A3 (en) 2012-03-07
JP3610578B2 (ja) 2005-01-12
CA2134444C (en) 2003-10-14
AU673244B2 (en) 1996-10-31
NO944138D0 (no) 1994-10-31
EP0638218B1 (en) 1999-10-13
HU9403127D0 (en) 1995-02-28
KR950701486A (ko) 1995-03-23
DK0903944T3 (da) 2004-03-01
GR3032133T3 (en) 2000-04-27
NO20010762L (no) 1994-12-23
ES2137358T3 (es) 1999-12-16
ES2389797T3 (es) 2012-10-31
EG20330A (en) 1998-10-31
EP0903944B1 (en) 2003-10-22
BR9404321A (pt) 1999-07-27
TW224553B (en) 1994-06-01
WO1994021083A1 (en) 1994-09-15
NZ261907A (en) 1996-09-25
NO20010762D0 (no) 2001-02-15
HUT76452A (en) 1997-09-29
PT2276259E (pt) 2012-09-20
KR100287490B1 (ko) 2001-04-16
JP2001292451A (ja) 2001-10-19
US5481553A (en) 1996-01-02
EP0954182A1 (en) 1999-11-03
FI945106A0 (fi) 1994-10-31
OA10108A (en) 1996-12-18
NO314710B1 (no) 2003-05-05
EP2276259A2 (en) 2011-01-19
NO944138L (no) 1994-12-23
EP2276258B1 (en) 2012-09-05
NO314709B1 (no) 2003-05-05
TR28436A (tr) 1996-06-24
FI945106A (fi) 1994-12-30
ATE185663T1 (de) 1999-10-15
DE69421135T2 (de) 2000-05-25
DK0954182T3 (da) 2012-09-24
PT954182E (pt) 2012-09-03
EP0954182B1 (en) 2012-07-11
EP0638218A1 (en) 1995-02-15
RO115926B1 (ro) 2000-07-28
AU6116194A (en) 1994-09-26
RU2119727C1 (ru) 1998-09-27

Similar Documents

Publication Publication Date Title
ES2209032T3 (es) Aparato para evitar errores de redondeo cuando los coeficientes de transformada que representan una señal de imagen en movimiento se transforman inversamente.
US5912676A (en) MPEG decoder frame memory interface which is reconfigurable for different frame store architectures
JP3966524B2 (ja) 改善された効率のためにスキュードタイル記憶フォーマットを用いる動き補償を行うシステム及び方法
US6917652B2 (en) Device and method for decoding video signal
US7061410B1 (en) Method and/or apparatus for transcoding between H.264 CABAC and CAVLC entropy coding modes
US6798833B2 (en) Video frame compression/decompression hardware system
JP3824678B2 (ja) 画像復号表示装置
US20070071099A1 (en) External memory device, method of storing image data for the same, and image processor using the method
US5991445A (en) Image processing apparatus
JP2004336451A (ja) 画像復号ユニットとそれを用いた画像符号化装置及び符号化方法並びに画像復号装置及び復号方法
JP2006279574A (ja) 復号装置と方法
KR20010072420A (ko) 이미지 프로세싱 동안에 2차원 변환을 실행하기 위한 회로및 방법
US5644504A (en) Dynamically partitionable digital video encoder processor
EP0779745A2 (en) Method of converting data outputting sequence in inverse DCT and circuit thereof
JP2003230148A (ja) 画像データ符号化装置
US20130322546A1 (en) Stream generation apparatus, stream generation method, stream processing apparatus, and stream processing method
KR0128883B1 (ko) 영상 복호기에 있어서 개선된 구조의 메모리부를 갖는 반픽셀 움직임 보상회로
JP2007104155A (ja) 画像復号装置
JPH06237453A (ja) 動画像信号復号化装置
JPH08126011A (ja) 画像復号方法および画像復号装置
JP2699703C (es)