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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/18—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
- H04N19/45—Decoders 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/89—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/65—Methods 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.
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.
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)
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)
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 | 株式会社東芝 | 高能率符号化記録再生装置 |
-
1993
- 1993-08-19 TW TW82106688A patent/TW224553B/zh not_active IP Right Cessation
-
1994
- 1994-02-28 EG EG12294A patent/EG20330A/xx active
- 1994-02-28 IL IL10878794A patent/IL108787A/xx not_active IP Right Cessation
- 1994-02-28 MY MYPI94000473A patent/MY110794A/en unknown
- 1994-02-28 US US08/202,783 patent/US5481553A/en not_active Expired - Lifetime
- 1994-03-01 CN CN94190162A patent/CN1076935C/zh not_active Expired - Lifetime
- 1994-03-01 PT PT99113786T patent/PT954182E/pt unknown
- 1994-03-01 ES ES99113786T patent/ES2389797T3/es not_active Expired - Lifetime
- 1994-03-01 EP EP20100011642 patent/EP2276258B1/en not_active Expired - Lifetime
- 1994-03-01 KR KR1019940703928A patent/KR100287490B1/ko not_active IP Right Cessation
- 1994-03-01 EP EP20100011843 patent/EP2276259B1/en not_active Expired - Lifetime
- 1994-03-01 RO RO94-01753A patent/RO115926B1/ro unknown
- 1994-03-01 DK DK11642594T patent/DK2276258T3/da active
- 1994-03-01 RU RU94045924A patent/RU2119727C1/ru active
- 1994-03-01 DE DE69421135T patent/DE69421135T2/de not_active Expired - Lifetime
- 1994-03-01 WO PCT/JP1994/000329 patent/WO1994021083A1/en active IP Right Grant
- 1994-03-01 ES ES98119828T patent/ES2209032T3/es not_active Expired - Lifetime
- 1994-03-01 EP EP19990113786 patent/EP0954182B1/en not_active Expired - Lifetime
- 1994-03-01 CA CA 2134444 patent/CA2134444C/en not_active Expired - Lifetime
- 1994-03-01 PL PL94306007A patent/PL173287B1/pl unknown
- 1994-03-01 EP EP19980119828 patent/EP0903944B1/en not_active Expired - Lifetime
- 1994-03-01 JP JP51980994A patent/JP3610578B2/ja not_active Expired - Lifetime
- 1994-03-01 PT PT10011642T patent/PT2276258E/pt unknown
- 1994-03-01 EP EP19940907708 patent/EP0638218B1/en not_active Expired - Lifetime
- 1994-03-01 ES ES94907708T patent/ES2137358T3/es not_active Expired - Lifetime
- 1994-03-01 ES ES10011843T patent/ES2389766T3/es not_active Expired - Lifetime
- 1994-03-01 TR TR17194A patent/TR28436A/xx unknown
- 1994-03-01 PT PT98119828T patent/PT903944E/pt unknown
- 1994-03-01 DK DK99113786T patent/DK0954182T3/da active
- 1994-03-01 DK DK94907708T patent/DK0638218T3/da active
- 1994-03-01 AU AU61161/94A patent/AU673244B2/en not_active Expired
- 1994-03-01 HU HU9403127A patent/HU217744B/hu unknown
- 1994-03-01 DK DK98119828T patent/DK0903944T3/da active
- 1994-03-01 AT AT94907708T patent/ATE185663T1/de active
- 1994-03-01 BR BR9404321A patent/BR9404321A/pt not_active IP Right Cessation
- 1994-03-01 PT PT10011843T patent/PT2276259E/pt unknown
- 1994-03-01 NZ NZ261907A patent/NZ261907A/en not_active IP Right Cessation
- 1994-03-01 DK DK11843994T patent/DK2276259T3/da active
- 1994-03-01 DE DE1994633272 patent/DE69433272T2/de not_active Expired - Lifetime
- 1994-03-01 ES ES10011642T patent/ES2389718T3/es not_active Expired - Lifetime
- 1994-03-01 AT AT98119828T patent/ATE252806T1/de active
- 1994-10-31 NO NO19944138A patent/NO314709B1/no not_active IP Right Cessation
- 1994-10-31 FI FI945106A patent/FI112579B/fi not_active IP Right Cessation
- 1994-11-01 OA OA60577A patent/OA10108A/en unknown
-
1995
- 1995-05-30 US US08/453,023 patent/US5590139A/en not_active Expired - Lifetime
-
1998
- 1998-12-22 HK HK98114879A patent/HK1013575A1/xx not_active IP Right Cessation
-
1999
- 1999-12-15 GR GR990403218T patent/GR3032133T3/el unknown
-
2000
- 2000-04-28 HK HK00102608A patent/HK1025448A1/xx not_active IP Right Cessation
-
2001
- 2001-02-15 NO NO20010762A patent/NO314710B1/no not_active IP Right Cessation
- 2001-02-28 JP JP2001055933A patent/JP3593988B2/ja not_active Expired - Lifetime
Also Published As
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) |