MX2013000355A - Dispositivo de procesamiento de imagenes, metodo de procesamiento de imagenes, y programa. - Google Patents
Dispositivo de procesamiento de imagenes, metodo de procesamiento de imagenes, y programa.Info
- Publication number
- MX2013000355A MX2013000355A MX2013000355A MX2013000355A MX2013000355A MX 2013000355 A MX2013000355 A MX 2013000355A MX 2013000355 A MX2013000355 A MX 2013000355A MX 2013000355 A MX2013000355 A MX 2013000355A MX 2013000355 A MX2013000355 A MX 2013000355A
- Authority
- MX
- Mexico
- Prior art keywords
- image
- orthogonal transform
- frequency component
- low frequency
- inverse
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/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/17—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 an image region, e.g. an object
- H04N19/176—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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/182—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 pixel
-
- 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/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
- H04N19/439—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 using cascaded computational arrangements for performing a single operation, e.g. filtering
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Se describen un dispositivo de procesamiento de imágenes, un método de procesamiento de imágenes, y un programa que pueden reducir la cantidad de procesamiento requerido para una ROT y una DCT o una DCT inversa y una ROT inversa. Mediante la cuantificación inversa de la información de imagen obtenida decodificando una imagen codificada, se obtienen los componentes de baja frecuencia de dicha información de imagen, obtenidos por medio de una primera unidad de transformación ortogonal, y los componentes de alta frecuencia de dicha información de imagen, obtenidos por medio de una segunda unidad de transformación ortogonal. Dichos componentes de alta frecuencia son de frecuencia mayor que dichos componentes de baja frecuencia. Dichos componentes de baja frecuencia y componentes de alta frecuencia se someten entonces a una transformación ortogonal inversa por medio de una técnica similar. Esta tecnología se puede aplicar, por ejemplo, a la codificación y decodificación de imágenes.
Description
DISPOSITIVO DE PROCESAMIENTO DE IMÁGENES , MÉTODO DE
PROCESAMIENTO DE IMÁGENES, Y PROGRAMA
CAMPO TÉCNICO
La presente tecnología se refiere a un dispositivo de procesamiento de imágenes, un método de procesamiento de imágenes, y un programa, y más . particularmente a un dispositivo de procesamiento de imágenes, un método de procesamiento de imágenes, y un programa capaces de reducir la cantidad de cómputo requerido para un proceso de transformada ortogonal o un proceso de transformada ortogonal inversa.
ARTE ANTECEDENTE
Un esquema de codificación que utiliza una transformada ortogonal denominada una transformada por rotación (ROT) se ha considerado como un esquema de codificación correspondiente a un esquema de Codificación de Video Avanzada (AVC) de siguiente generación (por ejemplo, véase el Documento de Patente 1) . La transformada discreta del coseno (DCT) convencional que se utiliza ampliamente en la codificación de video no es óptima en algunas situaciones. Por ejemplo, cuando un objetivo de transformada tiene un componente direccional fuerte, el vector de base DCT no puede expresar satisfactoriamente el componente direccional fuerte.
En general, aunque la transformada direccional (ROT) puede solucionar el problema anteriormente mencionado, es difícil realizar la ROT debido a que la ROT requiere muchas operaciones de punto flotante y requiere que un bloque objetivo de transformada tenga una forma cuadrada. En particular, es más difícil aplicar la ROT cuando hay un gran número de tamaños de bloque.
Por consiguiente, se ha propuesto un método en el cual se diseña una unidad de procesamiento que realiza la ROT con un pequeño número de tamaños de bloque, y la ROT se realiza sobre sólo un componente de baja frecuencia como una segunda transformada después de la DCT.
La Figura 1 ilustra un ejemplo de las etapas de la ROT inversa en un decodificador que decodifica los datos de imagen codificados realizando la transformada ortogonal de acuerdo con tal método.
Los cuadros blancos en el lado izquierdo son datos de imagen como la información residual que se extrae a partir de los datos de imagen codificados. Los datos de imagen se descuantifican para los bloques respectivos hechos de los valores de pixel de 4x4, 8x8, 16x16, 32x32, 64x64, o 128x128 pixeles. Además, sólo un bloque de 4x4 u 8x8 pixeles hecho de un componente de baja frecuencia entre los bloques descuantificados se somete a la ROT inversa, y los coeficientes obtenidos después de la ROT inversa y el componente de alta frecuencia restante de los bloques descuantificados se someten a la DCT inversa.
Haciendo esto, en el método anteriormente descrito, es necesario preparar sólo tamaños de bloque de 4x4 u 8x8 pixeles como un tamaño de bloque para la ROT y la ROT inversa.
LISTA DE MENCIONES DOCUMENTO QUE NO ES DE PATENTE
Documento No Patente 1: http://wftp3.itu.int/av-arch/ ctvc-site/2010_04_A_Dresden/JCTVC-A124. zip (buscado el 28 de Octubre de 2010)
BREVE DESCRIPCIÓN DE LA INVENCIÓN PROBLEMAS A SER SOLUCIONADOS POR LA INVENCIÓN
Sin embargo, ocurre un problema cuando el tamaño de bloque de la predicción intra es tan pequeño como 4x4 pixeles. Específicamente, a fin de realizar la predicción intra de los bloques respectivos, debido a que se requieren los datos de imagen decodificados del bloque adyacente incluyendo un bloque a la izquierda del bloque correspondiente, es difícil realizar la predicción intra de los bloques respectivos paralelamente. Además, en el método anteriormente descrito, para obtener los datos de imagen decodificados, se requiere un gran número de procesos tales como DCT, ROT, cuantificación, descuantificación, ROT inversa, y DCT inversa.
De esta manera, cuando el tamaño de bloque de la predicción intra es pequeño, incrementa el periodo más largo requerido para codificar y decodificar macrobloques o unidades de codificación (CUs) , y es muy difícil utilizar el método anteriormente descrito en aplicaciones que requieren propiedades en tiempo real. Aquí, la CU es el mismo concepto que el macrobloque en el esquema AVC.
La presente tecnología se ha hecho en vista de tal circunstancia y tiene como meta reducir la cantidad de procesamiento requerido para la ROT y la DCT o la DCT inversa y la ROT inversa.
SOLUCIÓN A LOS PROBLEMAS
Un dispositivo de procesamiento de imágenes o un programa de acuerdo con un aspecto de la presente tecnología es un dispositivo de procesamiento de imágenes que incluye: una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal, y para obtener un componente de alta frecuencia, que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación, o un programa para causar que una computadora funcione como el dispositivo de procesamiento de imágenes.
Un método de procesamiento de imágenes de acuerdo con un aspecto de la presente tecnología es un método de procesamiento de imágenes que incluye las etapas de: descuantificar una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, obtenido realizando una segunda transformada ortogonal después de una primera transformada ortogonal y para obtener un componente de alta frecuencia que es un componente diferente del componente de baja frecuencia de la imagen, obtenido por la primera transformada ortogonal; cuando el tamaño de la imagen es el tamaño predeterminado, realizar una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia; cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realizar la segunda transformada ortogonal inversa sobre el componente de baja frecuencia; y realizar la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación .
En el aspecto de la presente tecnología, una imagen cuantificada se descuantifica para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, obtenido realizando una segunda transformada ortogonal después de una primera transformada ortogonal y para obtener un componente de alta frecuencia que es un componente diferente del componente de baja frecuencia de la imagen, obtenido por la primera transformada ortogonal. Cuando el tamaño de la imagen es el tamaño predeterminado, se realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia. Cuando el tamaño de la imagen es mayor que el tamaño predeterminado, la segunda transformada ortogonal inversa se realiza sobre el componente de baja frecuencia, y la primera transformada ortogonal inversa se realiza sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación .
EFECTOS DE LA INVENCIÓN
De acuerdo con el aspecto de la presente tecnología, es posible reducir la cantidad de procesamiento requerido para la ROT y la DCT o la DCT inversa y la ROT inversa.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
La Figura 1 es un diagrama que ilustra un ejemplo de las etapas de la ROT en un decodificador .
La Figura 2 es un diagrama de bloques que ilustra un ejemplo de configuración de un codificador AVC.
La Figura 3 es un diagrama de bloques que ilustra un ejemplo de configuración de un decodificador AVC.
La Figura 4 es un diagrama de bloques que ilustra un ejemplo de configuración de porciones correspondientes a un transformador ortogonal, un cuantificador, un descuantificador , y un transformador ortogonal inverso cuando se introduce la ROT.
La Figura 5 es un diagrama para describir una mejora de la ROT en el lado del codificador.
La Figura 6 es un diagrama de bloques que ilustra un ejemplo de configuración correspondiente a porciones correspondientes a un descuantificador y un transformador ortogonal inverso cuando se introduce la ROT.
La Figura 7 es un diagrama para describir una mejora de la ROT en el lado del decodificador .
La Figura 8 es un diagrama de flujo para describir los procesos del codificador.
La Figura 9 es un diagrama de flujo para describir los procesos del codificador.
La Figura 10 es un diagrama de flujo para describir los procesos del codificador.
La Figura 11 es un diagrama de flujo para describir los procesos del codificador.
La Figura 12 es un diagrama de flujo para describir los procesos del codificador.
La Figura 13 es un diagrama de flujo para describir los procesos del decodificador .
La Figura 14 es un diagrama de flujo para describir los procesos del decodificador .
' La Figura 15 es un diagrama de flujo para describir los procesos del decodificador .
La Figura 16 es un diagrama de bloques que ilustra un ejemplo de configuración de una modalidad de una computadora a la cual se aplica la presente tecnología.
MODO PARA LLEVAR A CABO LA INVENCIÓN
Modalidad
Ejemplo de Configuración del Codificador
La Figura 2 es un diagrama de bloques que ilustra un ejemplo de configuración de una modalidad de un codificador AVC al cual se aplica la presente tecnología.
El codificador de la Figura 2 incluye un convertidor 101 A/D, un búfer 102 de reordenamiento de cuadros, un dispositivo 103 de cómputo, un transformador 104 ortogonal, un cuantificador 105, un codificador 106 sin pérdidas, un búfer 107 de almacenamiento, un descuantificador 108, un transformador 109 ortogonal inverso, un sumador 110, un filtro 111 de desbloqueo, una memoria 112 de cuadros, un compensador 113 de movimiento, un predictor 114 intra, un controlador 115 de velocidad, un predictor 116 de movimiento, y un selector 117. El codificador de la Figura 1 comprime y codifica una imagen de entrada de acuerdo con el esquema AVC.
Específicamente, el convertidor 101 A/D del codificador realiza la conversión A/D sobre una imagen basada en cuadros ingresada como una señal de entrada para obtener datos de imagen digital y proporciona como salida los datos de imagen digital al búfer 102 de reordenamiento de cuadros que almacena los datos de imagen digital. El búfer 102 de reordenamiento de cuadros reordena los cuadros de la imagen ordenada en el orden almacenado para el despliegue de acuerdo con una estructura de grupo de imágenes (GOP) , en el orden para la codificación.
El dispositivo 103 de cómputo sustrae una imagen de predicción suministrada desde el selector 117 a partir de la imagen leída desde el búfer 102 de reordenamiento de cuadros según sea necesario. El dispositivo 103 de cómputo proporciona como salida una imagen obtenida como resultado de la sustracción al transformador 104 ortogonal como la información residual. Cuando la imagen de predicción no se suministra desde el selector 117, el dispositivo 103 de cómputo proporciona como salida la imagen leída desde el búfer 102 de reordenamiento de cuadros al transformador 104 ortogonal como la información residual sin cambio alguno.
El transformador 104 ortogonal realiza una transformada ortogonal correspondiente a un tamaño de bloque en la información residual del dispositivo 103 de cómputo. Específicamente, cuando el tamaño de bloque es 4x4 pixeles, el transformador 104 ortogonal realiza una transformada combinada de DCT y ROT sobre la información residual. Por otra parte, cuando el tamaño de bloque es 8x8 pixeles, el transformador 104 ortogonal realiza la DCT sobre la información residual y realiza la ROT sobre los coeficientes obtenidos como resultado de la DCT. Además, cuando el tamaño de bloque es mayor que 8x8 pixeles, el transformador 104 ortogonal realiza la DCT sobre la información residual, realiza la ROT sobre un componente de baja frecuencia de 8x8 pixeles entre los coeficientes obtenidos como resultado de la DCT, y utiliza los coeficientes obtenidos como resultado de la ROT y un componente de alta frecuencia restante como los coeficientes finales. El transformador 104 ortogonal suministra los coeficientes obtenidos como resultado de la transformada ortogonal al cuantificador 105.
El cuantificador 105 cuantifica los coeficientes suministrados a partir del transformador 104 ortogonal. Los coeficientes cuantificados se ingresan al codificador 106 sin pérdidas .
El codificador 106 sin pérdidas adquiere información (a partir de ahora referida como información del modo de predicción intra) que indica un modo óptimo de predicción intra a partir del predictor 114 intra y adquiere información (a partir de ahora referida como información del modo de predicción inter) que indica un modo óptimo de predicción ínter, información del vector de movimiento, y similares a partir del predictor 116 de movimiento.
El codificador 106 sin pérdidas realiza la codificación sin pérdidas tal como la codificación de longitud variable (por ejemplo, la Codificación de Longitud Variable Adaptable al Contexto (CAVLC) ) o la codificación aritmética (por ejemplo, la Codificación Aritmética Binaria Adaptable al Contexto (CABAC) ) sobre los coeficientes cuantificados suministrados a partir del cuantificador 105 para obtener la información obtenida como resultado de la codificación como una imagen comprimida. Además, el codificador 106 sin pérdidas realiza la codificación sin pérdidas sobre la información del modo de predicción intra, la información del modo de predicción ínter, la información del vector de movimiento, y similares para obtener la información obtenida como resultado de la codificación como información de encabezamiento que se suma a la imagen comprimida. El codificador 106 sin pérdidas suministra la imagen comprimida, a la cual se suma la información de encabezamiento obtenida como resultado de la codificación sin pérdidas, al búfer 107 de almacenamiento como información de compresión de imagen.
El búfer 107 de almacenamiento almacena temporalmente la información de compresión de imagen suministrada a partir del codificador 106 sin pérdidas y proporciona como salida la información de compresión de imagen a, por ejemplo, un dispositivo de registro (no ilustrado) , un trayectoria de transmisión (no ilustrada) , o similar que está en el lado corriente abajo.
Además, los coeficientes cuantificados proporcionados como salida a partir del cuantificador 105 también se ingresan al descuantificador 108 y se descuantifican por el descuantificador 108 y se suministran al transformador 109 ortogonal inverso.
El transformador 109 ortogonal inverso realiza una transformada ortogonal inversa correspondiente a un tamaño de bloque sobre los coeficientes suministrados a partir del descuantificador 108. Específicamente, cuando el tamaño de bloque es 4x4 pixeles, el transformador 109 ortogonal inverso realiza una transformada combinada de ROT inversa y DCT inversa sobre los coeficientes. Por otra parte, cuando el tamaño de bloque es 8x8 pixeles, el transformador 109 ortogonal inverso realiza la ROT inversa sobre los coeficientes y realiza la DCT inversa sobre los coeficientes obtenidos como resultado de la ROT inversa. Además, cuando el tamaño de bloque es mayor que 8x8 pixeles, el transformador 109 ortogonal inverso realiza la ROT inversa sobre un componente de baja frecuencia de 8x8 de los coeficientes y realiza la DCT inversa sobre los coeficientes obtenidos como resultado de la ROT inversa y el componente de alta frecuencia restante. El transformador 109 ortogonal inverso suministra la información residual obtenida como resultado de la transformada ortogonal inversa al sumador 110.
El sumador 110 suma la información residual suministrada a partir del transformador 109 ortogonal inverso a la imagen de predicción suministrada a partir del predictor 114 intra o el compensador 113 de movimiento según sea necesario y obtiene una imagen localmente decodificada . El sumador 110 suministra la imagen obtenida al filtro 111 de desbloqueo y suministra la imagen obtenida al predictor 114 intra como una imagen de referencia .
El filtro 111 de desbloqueo realiza el filtrado sobre la imagen localmente decodificada suministrada a partir del sumador 110 para remover por consiguiente una distorsión del bloque. El filtro 111 de desbloqueo suministra la imagen obtenida como resultado del filtrado a la memoria 112 de cuadros, la cual almacena la imagen. La imagen almacenada en la memoria 112 de cuadros se proporciona como salida al compensador 113 de movimiento y al predictor 116 de movimiento como una imagen de referencia.
El compensador 113 de movimiento realiza un proceso de compensación sobre la imagen de referencia suministrada a partir de la memoria 112 de cuadros con base en el vector de movimiento y la información del modo de predicción ínter suministrados a partir del predictor 116 de movimiento para generar una imagen de predicción. El compensador 113 de movimiento suministra un valor de la función de costo (los detalles del cual se describirán más adelante) suministrado a partir del predictor 116 de movimiento y la imagen de predicción generada al selector 117.
El valor de la función de costo también se refiere como un costo de Distorsión de Velocidad (RD) , y se calcula con base en, por ejemplo, un modo de Alta Complejidad o un modo de Baja Complejidad según se define en el Modelo de Juntura (JM) que es el software de referencia del esquema AVC.
Específicamente, cuando se utiliza el modo de Alta Complejidad como un método para calcular el valor de la función de costo, los procesos hasta la codificación sin pérdidas se realizan temporalmente sobre todos los modos de predicción candidato, y se calcula un valor de la función de costo expresado por la Expresión (1) de abajo para cada modo de predicción.
Costo ( odo)= D + ? · R ... (1)
Aquí, "D" es una diferencia (distorsión) entre una imagen original y una imagen decodificada, "R" es una velocidad de codificación de ocurrencia que incluye los coeficientes de la transformada ortogonal, y "?" es el multiplicador de Lagrange dado como una función de un parámetro QP de cuantificación .
Por otra parte, cuando se utiliza el modo de Baja Complejidad como un método para calcular el valor de la función de costo, la generación de una imagen decodificada y el cálculo de un bitio del encabezamiento tal como la información que indica un modo de predicción se realizan sobre todos los modos de predicción candidato, y se calcula una función de costo expresada por la Expresión (2) de abajo para cada modo de predicción.
Costo ( odo)= D + QPparaCuant (QP) · Encabezamiento_Bitio ... (2)
Aquí, "D" es una diferencia (distorsión) entre una imagen original y una imagen decodificada, "Encabezamiento_Bitio" es el bitio del encabezamiento de un modo de predicción, y "QPparaCuant" es una función dada como una función de un parámetro QP de cuantificación .
En el modo de Baja Complejidad, debido a que sólo es necesario generar una imagen decodificada en todos los modos de predicción, y no es necesario realizar la codificación sin pérdidas, se requiere una pequeña cantidad de cómputo. En este ejemplo, se asume que el modo de Alta Complejidad se utiliza como el método para calcular el valor de la función de costo.
El predictor 114 intra realiza un proceso de predicción intra en todos los modos de predicción intra candidato en unidades de bloques de todos los tamaños de bloque candidato con base en la imagen leída a partir del búfer 102 de reordenamiento de cuadros y la imagen de referencia suministrada a partir del sumador 110 para generar una imagen de predicción.
Además, el predictor 114 intra calcula el valor de la función de costo para todos los modos de predicción intra candidato y todos los tamaños de bloque candidato. Además, el predictor 114 intra determina una combinación de un modo de predicción intra y un tamaño de bloque en que el valor de la función de costo es más pequeño que un modo óptimo de predicción intra. El predictor 114 intra suministra la imagen de predicción generada en el modo óptimo de predicción intra y el valor de la función de costo correspondiente al selector 117. Cuando la selección de una imagen de predicción generada en el modo óptimo de predicción intra se notifica a partir del selector 117, el predictor 114 intra suministra la información del modo de predicción intra al codificador 106 sin pérdidas.
El predictor 116 de movimiento realiza la predicción de movimiento en todos los modos de predicción ínter candidato con base en la imagen suministrada a partir del búfer 102 de reordenamiento de cuadros y la imagen de referencia suministrada a partir de la memoria 112 de cuadros para generar un vector de movimiento. En este caso, el predictor 116 de movimiento calcula un valor de la función de costo en todos los modos de predicción ínter candidato y determina un modo de predicción ínter en que el valor de la función de costo es más pequeño que un modo óptimo de predicción inter. Además, el predictor 116 de movimiento suministra la información del modo de predicción inter y el vector de movimiento correspondiente y el valor de la función de costo al compensador 113 de movimiento. Cuando la selección de una imagen de predicción generada en el modo óptimo de predicción inter se notifica a partir del selector 117, el predictor 116 de movimiento proporciona como salida la información del modo de predicción inter, la información sobre el vector de movimiento correspondiente, y similares al codificador 106 sin pérdidas.
El selector 117 determina cualquiera del modo óptimo de predicción intra y el modo óptimo de predicción inter como un modo de predicción óptimo con base en el valor de la función de costo suministrado a partir del predictor 114 intra y el compensador 113 de movimiento. Además, el selector 117 suministra la imagen de predicción en el modo de predicción óptimo al dispositivo 103 de cómputo y al sumador 110. Además, el selector 117 notifica la selección de la imagen de predicción en el modo de predicción óptimo al predictor 114 intra o al predictor 116 de movimiento.
El controlador 115 de velocidad controla la velocidad de la operación de cuantificación del cuantificador 105 con base en la información de compresión de imagen almacenada en el búfer 107 de almacenamiento de modo que no ocurra un desbordamiento o un subdesbordamiento .
Ejemplo de Configuración del Decodificador
La Figura 3 es un diagrama de bloques de un decodificador
AVC correspondiente al codificador de la Figura 2.
El decodificador de la Figura 3 incluye un búfer 216 de almacenamiento, un decodificador 217 sin pérdidas, un descuantificador 218, un transformador 219 ortogonal inverso, un sumador 220, un búfer 221 de reordenamiento de cuadros, un convertidor 222 D/A, una memoria 223 de cuadros, un compensador 224 de movimiento, un predictor 225 intra, un filtro 226 de desbloqueo, y un conmutador 227.
El búfer 216 de almacenamiento almacena la información de compresión de imagen transmitida desde el codificador de la Figura 2. El decodificador 217 sin pérdidas lee y adquiere la información de compresión de imagen a partir al búfer 216 de almacenamiento y decodifica en una manera sin pérdidas la información de compresión de imagen de acuerdo con un esquema correspondiente al esquema de codificación sin pérdidas del codificador 106 sin pérdidas de la Figura 2.
Específicamente, el decodificador 217 sin pérdidas decodifica en una manera sin pérdidas la información de encabezamiento en la información de compresión de imagen para adquirir la información del modo de predicción intra, la información del modo de predicción inter, la información del vector de movimiento, y similares. Además, el decodificador 217 sin pérdidas decodifica en una manera sin pérdidas la imagen comprimida en la información de compresión de imagen.
Además, el decodificador 217 sin pérdidas suministra los coeficientes cuantificados obtenidos como resultado de la decodificación sin pérdidas de la imagen comprimida al descuantificador 218. El decodificador 217 sin pérdidas suministra la información del modo de predicción intra obtenida como resultado de la decodificación sin pérdidas al predictor 225 intra y suministra la información del modo de predicción inter, la información del vector de movimiento, y similares al compensador 224 de movimiento.
El descuantificador 218 tiene la misma configuración que el descuantificador 108 de la Figura 2 y descuantifica los coeficientes cuantificados suministrados a partir del decodificador 217 sin pérdidas de acuerdo con un esquema correspondiente al esquema de cuantificación del cuantificador 105 de la Figura 2. El descuantificador 218 suministra los coeficientes obtenidos como resultado de la descuantificación al transformador 219 ortogonal inverso.
El transformador 219 ortogonal inverso realiza una transformada ortogonal inversa correspondiente a un tamaño de bloque sobre los coeficientes suministrados a partir del descuantificador 218 en una manera similar al transformador 109 ortogonal inverso de la Figura 2. El transformador 219 ortogonal inverso suministra la información residual obtenida como resultado de la transformada ortogonal inversa al sumador 220.
El sumador 220 suma la información residual suministrada a partir del transformador 219 ortogonal inverso a la imagen de predicción suministrada a partir del conmutador 227 y decodifica el resultado sumado según sea necesario. El sumador 220 suministra una imagen decodificada obtenida como resultado de la decodificación al predictor 225 intra y al filtro 226 de desbloqueo .
El filtro 226 de desbloqueo realiza el filtrado sobre la imagen decodificada suministrada a partir del sumador 220 para remover por consiguiente una distorsión del bloque. El filtro 226 de desbloqueo suministra una imagen obtenida como resultado del filtrado a la memoria 223 de cuadros, la cual almacena la imagen, y proporciona como salida la imagen al búfer 221 de reordenamiento de cuadros.
El búfer 221 de reordenamiento de cuadros reordena la imagen suministrada a partir del filtro 226 de desbloqueo. Específicamente, el orden de los cuadros de la imagen ordenada para codificación por el búfer 102 de reordenamiento de cuadros de la Figura 2 se reordena al orden de despliegue original. El convertidor 222 D/A realiza la conversión D/A sobre la imagen reordenada por el búfer 221 de reordenamiento de cuadros y proporciona como salida la imagen convertida a un despliegue (no ilustrado) , el cual despliega la imagen.
La memoria 223 de cuadros lee la imagen almacenada ahí como una imagen de referencia y proporciona como salida la imagen de referencia al compensador 224 de movimiento.
El predictor 225 intra realiza un proceso de predicción intra en el modo óptimo de predicción intra indicado por la información del modo de predicción intra con base en la información del modo de predicción intra suministrada a partir del decodificador 217 sin pérdidas para generar una imagen de predicción. El predictor 225 intra suministra la imagen de predicción al conmutador 227.
El compensador 224 de movimiento realiza un proceso de compensación de movimiento sobre la imagen de referencia suministrada a partir de la memoria 223 de cuadros con base en la información del modo de predicción ínter, la información del vector de movimiento, y similares, suministradas a partir del decodificador 217 sin pérdidas para generar una imagen de predicción. El compensador 224 de movimiento suministra la imagen de predicción al conmutador 227.
El conmutador 227 selecciona la imagen de predicción generada por el compensador 224 de movimiento o el predictor 225 intra y suministra la imagen de predicción seleccionada al sumador 220.
Descripción de la Transformada Ortogonal y la Transformada Ortogonal Inversa
Primero, la Figura 4 es un diagrama de bloques que ilustra un transformador ortogonal, un cuantificador, un descuantificador, y un transformador ortogonal inverso de un codificador convencional cuando se realizan la DCT y la ROT como una transformada ortogonal.
Como se ilustra en la Figura 4, un transformador ortogonal del codificador convencional incluye una DCT 411 4x4, una DCT 412 8x8, una DCT 413 16x16, una DCT 414 32x32, una DCT 415 64x64, una DCT 416 128x128, una ROT 417 4x4, y una ROT 418 8x8.
La información residual se ingresa a la DCT 411 4x4, la DCT 412 8x8, la DCT 413 16x16, la DCT 414 32x32, la DCT 415 64x64, y la DCT 416 128x128 de acuerdo con el tamaño de bloque, y se someten a DCT.
Específicamente, la DCT 411 4x4 realiza la DCT sobre la información residual de 4x4 pixeles, redondea la exactitud de cómputo de los coeficientes de 4x4 pixeles obtenidos como resultado de la DCT, y suministra los coeficientes de 4x4 pixeles a la ROT 417 4x4.
La DCT 412 8x8 realiza la DCT sobre la información residual de 8x8 pixeles, redondea la exactitud de cómputo de los coeficientes de 8x8 pixeles obtenidos como resultado de la DCT, y suministra los coeficientes de 8x8 pixeles a la ROT 418 8x8. La DCT 413 16x16 realiza la DCT sobre la información residual de 16x16 pixeles y redondea la exactitud de cómputo de los coeficientes de 16x16 pixeles obtenidos como resultado de la DCT. La DCT 413 16x16 suministra un componente de baja frecuencia de 8x8 pixeles entre los coeficientes de 16x16 pixeles obtenidos como resultado de la DCT a la ROT 418 8x8 y suministra el componente de alta frecuencia restante al cuantificador .
De modo semejante, la DCT 414 32x32, la DCT 415 64x64, y la DCT 416 128x128 realizan la DCT sobre la información residual de 32x32, 64x64, y 128x128 pixeles, respectivamente, y redondean la exactitud de cómputo de los coeficientes obtenidos como resultado de la DCT. Además, la DCT 414 32x32, la DCT 415 64x64, y la DCT 416 128x128 suministran sólo el componente de baja frecuencia de 8x8 pixeles entre los coeficientes obtenidos como resultado de la DCT a la ROT 418 8x8 y suministran el componente de alta frecuencia restante al cuantificador .
La ROT 417 4x4 realiza la ROT sobre los coeficientes de 4x4 pixeles suministrados a partir de la DCT 411 4x4 utilizando un índice angular.
Aquí, la ROT es una transformada rotacional que utiliza una matriz de rotación Rverticai para la dirección vertical y una matriz de rotación Rhorizontai para la dirección horizontal ilustradas en la Expresión (1) de abajo, y el índice angular es ai a OÍ6 en la Expresión (1) .
Fórmula Matemática 1
•d)
La ROT 418 8x8 realiza la ROT utilizando un índice angular sobre los coeficientes de 8x8 pixeles suministrados a partir de la DCT 412 8x8, la DCT 413 16x16, la DCT 414 32x32, la DCT 415 64x64, y la DCT 416 128x128.
Los coeficientes de 4x4 pixeles obtenidos como resultado de la ROT por la ROT 417 4x4 y los coeficientes de 8x8 pixeles obtenidos como resultado de la ROT por la ROT 418 8x8 se suministran al cuantificador con la exactitud de cómputo redondeada.
El cuantificador incluye un Cuant 419 4x4, un Cuant 420 8x8, un Cuant 421 16x16, un Cuant 422 32x32, un Cuant 423 64x64, y un Cuant 424 128x128.
El Cuant 419 4x4 cuantifica los coeficientes de 4x4 pixeles suministrados a partir de la ROT 417 4x4. El Cuant 419 4x4 suministra los coeficientes de 4x4 pixeles cuantificados al descuantificador y suministra los mismos al mismo codificador sin pérdidas (no ilustrado) que el codificador 106 sin pérdidas de la Figura 2.
El Cuant 420 8x8 cuantifica los coeficientes de 8x8 pixeles suministrados a partir de la ROT 418 8x8. El Cuant 420 8x8 suministra los coeficientes de 8x8 pixeles cuantificados al descuantificador y suministra los mismos al mismo codificador sin pérdidas (no ilustrado) que el codificador 106 sin pérdidas de la Figura 2.
El Cuant 421 16x16 cuantifica los coeficientes de 8x8 pixeles suministrados a partir de la ROT 418 8x8 y un componente de alta frecuencia diferente del componente de baja frecuencia de 8x8 pixeles entre los coeficientes obtenidos como resultado de la DCT sobre la información residual de 16x16 pixeles suministrada a partir de la DCT 413 16x16. El Cuant 421 16x16 suministra los coeficientes de 16x16 pixeles cuantificados al descuantificador y suministra los mismos al mismo codificador sin pérdidas (no ilustrado) que el codificador 106 sin pérdidas.
De modo semejante, el Cuant 422 32x32, el Cuant 423 64x64, y el Cuant 424 128x128 cuantifican los coeficientes de 8x8 pixeles suministrados a partir de la ROT 418 8x8 y un componente de alta frecuencia diferente del componente de baja frecuencia de 8x8 pixeles entre los coeficientes obtenidos como resultado de la DCT sobre la información residual de 32x32, 64x64, y 128x128 pixeles. El Cuant 422 32x32, el Cuant 423 64x64, y el Cuant 424 128x128 suministran los coeficientes de 32x32, 64x64, y 128x128 pixeles cuantificado al descuantificador y suministran los mismos al mismo codificador sin pérdidas (no ilustrado) que el codificador 106 sin pérdidas .
El descuantificador incluye un Cuant 451 Inv 4x4, un Cuant 452 Inv 8x8, un Cuant 453 Inv 16x16, un Cuant 454 Inv 32x32, un Cuant 455 Inv 64x64, y un Cuant 456 Inv 128x128.
El Cuant 451 Inv 4x4, el Cuant 452 Inv 8x8, el Cuant 453 Inv 16x16, el Cuant 454 Inv 32x32, el Cuant 455 Inv 64x64, y el Cuant 456 Inv 128x128 descuantifican los coeficientes cuantificados suministrados a partir del Cuant 419 4x4, el Cuant 420 8x8, el Cuant 421 16x16, el Cuant 422 32x32, el Cuant 423 64x64, y el Cuant 424 128x128 respectivamente, y suministran los coeficientes descuantificados al transformador ortogonal inverso.
El transformador ortogonal inverso incluye una ROT 457 Inv 4x4, una ROT 458 Inv 8x8, una DCT 459 Inv 4x4, una DCT 460 Inv 8x8, una DCT 461 Inv 16x16, una DCT 462 Inv 32x32, una DCT 463 Inv 64x64, y una DCT 464 Inv 128x128.
La ROT 457 Inv 4x4 realiza la ROT inversa sobre los coeficientes de 4x4 pixeles descuantificados suministrados a partir del Cuant 451 Inv 4x4 utilizando un índice angular. La ROT 457 Inv 4x4 suministra los coeficientes de 4x4 pixeles obtenidos como resultado de la ROT inversa a la DCT 459 Inv 4x4.
La ROT 458 Inv 8x8 realiza la ROT inversa sobre los coeficientes de 8x8 pixeles descuantificados suministrados a partir del Cuant 452 Inv 8x8 utilizando un índice angular y suministra los coeficientes de 8x8 pixeles obtenidos como resultado de la ROT inversa a la DCT 460 Inv 8x8.
Además, la ROT 458 Inv 8x8 realiza la ROT inversa sobre el componente de baja frecuencia de 8x8 pixeles entre los coeficientes de 16x16 pixeles descuantificados suministrados a partir del Cuant 453 Inv 16x16 utilizando un índice angular. Además, la ROT 458 Inv 8x8 suministra los coeficientes de 8x8 pixeles obtenidos como resultado de la ROT inversa a la DCT 461 Inv 16x16.
De modo semejante, la ROT 458 Inv 8x8 realiza la ROT inversa sobre el componente de baja frecuencia de 8x8 pixeles entre los coeficientes de 32x32, 64x64, y 128x128 pixeles descuantificados suministrados a partir del Cuant 454 Inv 32x32, el Cuant 455 Inv 64x64, y el Cuant 456 Inv 128x128, respectivamente, utilizando un índice angular. Además, la ROT 458 Inv 8x8 suministra los coeficientes de 8x8 pixeles obtenidos como resultado de la ROT inversa sobre el componente de baja frecuencia de 8x8 pixeles entre los coeficientes de 32x32, 64x64, y 128x128 pixeles descuantificados a la DCT 462 Inv 32x32, la DCT 463 Inv 64x64, y la DCT 464 Inv 128x128, respectivamente .
La DCT 459 Inv 4x4 realiza la DCT inversa sobre los coeficientes de 4x4 pixeles suministrados a partir de la ROT 457 Inv 4x4. La DCT 459 Inv 4x4 suministra la información residual de 4x4 pixeles obtenida como resultado de la DCT inversa al mismo sumador (no ilustrado) que el sumador 110 de la Figura 2.
La DCT 460 Inv 8x8 realiza la DCT inversa sobre los coeficientes de 8x8 pixeles suministrados a partir de la ROT 458 Inv 8x8. La DCT 460 Inv 8x8 suministra la información residual de 8x8 pixeles obtenida como resultado de la DCT inversa al mismo sumador (no ilustrado) que el sumador 110. La DCT 461 Inv 16x16 realiza la DCT inversa sobre los coeficientes de 8x8 pixeles suministrados a partir de la ROT 458 Inv 8x8 y un componente de alta frecuencia diferente del componente de baja frecuencia de 8x8 pixeles entre los coeficientes de 16x16 pixeles suministrados a partir del Cuant 453 Inv 16x16. La DCT 461 Inv 16x16 suministra la información residual de 16x16 pixeles obtenida como resultado de la DCT inversa al mismo sumador (no ilustrado) que el sumador 110.
De modo semejante, la DCT 462 Inv 32x32, la DCT 463 Inv 64x64, y la DCT 464 Inv 128x128 realizan la DCT inversa sobre los coeficientes de 8x8 pixeles suministrados a partir de la ROT 458 Inv 8x8 y el componente de alta frecuencia diferente del componente de baja frecuencia de 8x8 pixeles entre los coeficientes suministrados a partir del Cuant 454 Inv 32x32, el Cuant 455 Inv 64x64, y el Cuant 456 Inv 128x128. La DCT 462 Inv 32x32, la DCT 463 Inv 64x64, y la DCT 464 Inv 128x128 suministran la información residual de 32x32, 64x64 y 128x128 pixeles obtenida como resultado de la DCT inversa al mismo sumador (no ilustrado) que el sumador 110.
De este modo, la información residual se ingresa al sumador (no ilustrado) , por lo que se obtiene una imagen decodificada .
Luego, la Figura 5 es un diagrama de bloques que ilustra los detalles del transformador 104 ortogonal, el cuantificador 105, el descuantificador 108, y el transformador 109 ortogonal inverso del codificador de la Figura 2.
Entre las configuraciones ilustradas en la Figura 5, las mismas configuraciones que las configuraciones de la Figura 4 se denotan por los mismos números de referencia. La descripción redundante de las mismas no se proporcionará apropiadamente .
La configuración de la Figura 5 es principalmente diferentes de la configuración de la Figura 4, en que se proporciona una DCTxROT 501 4x4 en lugar de la DCT 411 4x4 y la ROT 417 4x4 del transformador 104 ortogonal, y en que se proporciona una ROT InvxDCT Inv 502 4x4 en lugar de la ROT 457 Inv 4x4 y la DCT 459 Inv 4x4 del transformador 109 ortogonal inverso .
La DCTxROT 501 4x4 del transformador 104 ortogonal realiza una transformada combinada de DCT y ROT sobre la información residual de 4x4 pixeles suministrada a partir del dispositivo 103 de cómputo de la Figura 2 utilizando un índice angular. Específicamente, la DCTxROT 501 4x4 se provee con una matriz para una transformada combinada de DCT y ROT correspondiente a un índice angular, y la DCTxROT 501 4x4 obtiene coeficientes de 4x4 pixeles después de la DCT y ROT a través de una transformada utilizando la matriz. La DCTxROT 501 4x4 suministra los coeficientes de 4x4 pixeles al Cuant 419 4x4 con la exactitud de cómputo redondeada.
La DCT y la ROT son una clase de transformada ortogonal y generalmente se realizan mediante una operación matricial. De esta manera, una matriz para una transformada combinada de DCT y ROT es una matriz obtenida por el producto de la matriz utilizada en la operación matricial de la DCT y la matriz utilizada en la operación matricial de la ROT.
Como se describe anteriormente, en el transformador 104 ortogonal, debido a que la DCT y la ROT se pueden realizar a través de una transformada sobre la información residual de 4x4 pixeles, es posible reducir la cantidad de cómputo requerido para la transformada ortogonal en comparación al transformador ortogonal de la Figura 4. Además, debido a que no es necesario el redondeo de la exactitud de cómputo después de la DCT, es posible incrementar la exactitud de cómputo en comparación al transformador ortogonal de la Figura 4. De esta manera, la salida de la ROT 417 4x4 de la Figura 4 no es la misma que la salida de la DCTxROT 501 4x4 de la Figura 5.
Además, la ROT InvxDCT Inv 502 4x4 del transformador 109 ortogonal inverso realiza una transformada combinada de DCT inversa y ROT inversa sobre los coeficientes de 4x4 pixeles suministrados a partir del Cuant 451 Inv 4x4 utilizando un índice angular. Específicamente, la ROT InvxDCT Inv 502 4x4 se provee con una matriz para una transformada combinada de DCT inversa y ROT inversa correspondiente a un índice angular, y la ROT InvxDCT Inv 502 4x4 obtiene información residual de 4x4 pixeles después de la DCT inversa y ROT inversa a través de una transformada utilizando la matriz. La transformada combinada de DCT inversa y ROT inversa es una transformada inversa de la transformada realizada por la DCTxROT 501 4x4. La ROT InvxDCT Inv 502 4x4 suministra la información residual de 4x4 pixeles obtenida como resultado de la transformada al sumador 110 de la Figura 2.
Como se describe anteriormente, en el transformador 109 ortogonal inverso, debido a que la DCT inversa y la ROT inversa se pueden realizar a través de una transformada sobre los coeficientes de 4x4 pixeles, es posible reducir la cantidad de cómputo requerido para la transformada ortogonal inversa en comparación al transformador ortogonal inverso de la Figura 4. Además, debido a que no es necesario el redondeo de la exactitud de cómputo después de la ROT inversa, es posible incrementar la exactitud de cómputo en comparación al transformador ortogonal inverso de la Figura 4. De esta manera, la salida de la DCT 459 Inv 4x4 de la Figura 4 no es la misma que la salida de la ROT InvxDCT Inv 502 4x4 de la Figura 5.
Luego, la Figura 6 es un diagrama de bloques que ilustra un descuantificador y un transformador ortogonal inverso del decodificador convencional cuando la DCT y la ROT se realizan como una transformada ortogonal.
El descuantificador del decodificador convencional de la Figura 6 tiene la misma configuración que el descuantificador de la Figura 4, y el transformador ortogonal inverso de la Figura 6 tiene la misma configuración que el transformador ortogonal inverso de la Figura 4.
Específicamente, el descuantificador de la Figura 6 incluye un Cuant 601 Inv 4x4, un Cuant 602 Inv 8x8, un Cuant 603 Inv 16x16, un Cuant 604 Inv 32x32, un Cuant 605 Inv 64x64, y un Cuant 606 Inv 128x128. El Cuant 601 Inv 4x4, el Cuant 602 Inv 8x8, el Cuant 603 Inv 16x16, el Cuant 604 Inv 32x32, el Cuant 605 Inv 64x64, y el Cuant 606 Inv 128x128 realizan la descuantificación sobre los coeficientes cuantificados obtenidos como resultado de la decodificación sin pérdidas de la información de compresión de imagen codificada en una manera sin pérdidas transmitida a partir del codificador en una manera similar al descuantificador de la Figura 4.
Además, el transformador ortogonal inverso de la Figura 6 incluye una ROT 607 Inv 4x4, una ROT 608 Inv 8x8, una DCT 609 Inv 4x4, una DCT 610 Inv 8x8, una DCT 611 Inv 16x16, una DCT 612 Inv 32x32, una DCT 613 Inv 64x64, y una DCT 614 Inv 128x128. La ROT 607 Inv 4x4 y la ROT 608 Inv 8x8 realizan la ROT inversa en una manera similar a la ROT 457 Inv 4x4 y la ROT 458 Inv 8x8 de la Figura 4, respectivamente. Además, la DCT 609 Inv 4x4, la DCT 610 Inv 8x8, la DCT 611 Inv 16x16, la DCT 612 Inv 32x32, la DCT 613 Inv 64x64, y la DCT 614 Inv 128x128 realizan la DCT inversa en una manera similar a las DCTs Inv de los tamaños de bloque correspondientes de la Figura 4, respectivamente.
Luego, la Figura 7 es un diagrama de bloques que ilustra los detalles del descuantificador 218 y el transformador 219 ortogonal inverso del decodificador de la Figura 3.
El descuantificador 218 de la Figura 7 tiene la misma configuración que el descuantificador 108 de la Figura 5, y el transformador 219 ortogonal inverso de la Figura 7 tiene la misma configuración que el transformador 109 ortogonal inverso de la Figura 5.
Entre las configuraciones ilustradas en la Figura 7, las mismas configuraciones que las configuraciones de la Figura 6 se denotan por los mismos números de referencia. La descripción redundante de las mismas no se proporcionará apropiadamente .
La configuración de la Figura 7 es principalmente diferentes de la configuración de la Figura 6, en que se proporciona una ROT InvxDCT Inv 701 4x4 en lugar de la ROT 607 Inv 4x4 y la DCT 609 Inv 4x4 del transformador 219 ortogonal inverso de modo semejante al transformador 109 ortogonal inverso .
La ROT InvxDCT Inv 701 4x4 del transformador 219 ortogonal inverso realiza una transformada combinada de DCT inversa y ROT inversa sobre los coeficientes de 4x4 pixeles suministrados a partir del Cuant 601 Inv 4x4 utilizando un índice angular en una manera similar a la ROT InvxDCT Inv 502 4x4 de la Figura 5. La ROT InvxDCT Inv 701 4x4 suministra la información residual de 4x4 pixeles obtenida como resultado de la transformada al sumador 220 de la Figura 3.
El índice angular se determina, por ejemplo, por el codificador y se incluye en la información de encabezamiento por el codificador 106 sin pérdidas y se transmite al decodificador .
En la presente modalidad, aunque se realiza la DCT y la ROT sobre la información residual de 4x4 pixeles a través de una transformada, la DCT y la ROT se pueden realizar sobre la información residual de 8x8 pixeles así como sobre la información residual de 4x4 pixeles a través de una transformada. Lo mismo es cierto para la DCT inversa y la ROT inversa .
Además, en la presente modalidad, aunque la ROT se realiza sobre sólo el componente de baja frecuencia de 8x8 pixeles entre los coeficientes que tienen un tamaño de 8x8 pixeles o mayor obtenidos como resultado de la DCT, el tamaño máximo de los coeficientes sometidos a la ROT puede ser diferente del tamaño de 8x8 pixeles (por ejemplo, 4x4 pixeles, 16x16 pixeles, o similares) . Lo mismo es cierto para la ROT inversa.
Descripción del Procesamien-to del Codificador
Las Figuras 8, 9, 10, 11, y 12 son diagramas de flujo del procesamiento del codificador de la Figura 2.
La Figura 8 es un diagrama de flujo para describir un proceso de codificación del macrobloque (MB) .
En la etapa Sil de la Figura 8, el codificador calcula un costo (P) RD cuando se utiliza la predicción ínter. Los detalles del proceso de cálculo de un costo (P) RD cuando se utiliza la predicción ínter se describirán con referencia a la Figura 9 más adelante descrita.
En la etapa S12, el codificador calcula un costo (I) RD cuando se utiliza una predicción intra. Los detalles del proceso de cálculo de un costo (I) RD cuando se utiliza la predicción intra se describirán con referencia a la Figura 12 más adelante descrita.
En la etapa S13, el selector 117 determina si el costo (I) RD es mayor que el costo (P) RD.
Cuando se determina en la etapa S13 que el costo (I) RD es no mayor que el costo (P) RD, es decir, cuando el costo (I) RD es igual a o menor que el costo (P) RD, el selector 117 determina un modo óptimo de predicción intra como un modo de predicción óptimo. Además, el selector 117 suministra la imagen de predicción en el modo óptimo de predicción intra al dispositivo 103 de cómputo y al sumador 110. Además, el selector 117 notifica la selección de la imagen de predicción en el modo óptimo de predicción intra al predictor 114 intra. De este modo, el predictor 114 intra suministra la información del modo de predicción intra al codificador 106 sin pérdidas.
En la etapa S14, el codificador codifica un macrobloque (el MB) actual de acuerdo con la predicción intra en el modo óptimo de predicción intra. Específicamente, el dispositivo 103 de cómputo del codificador sustrae la imagen de predicción suministrada desde el selector 117 a partir del macrobloque actual de la imagen leída desde el búfer 102 de reordenamiento de cuadros, y el transformador 104 ortogonal realiza la transformada ortogonal sobre la información residual obtenida como resultado de la sustracción. El cuantificador 105 cuantifica los coeficientes obtenidos como resultado de la transformada ortogonal del transformador 104 ortogonal, y el codificador 106 sin pérdidas codifica en una manera sin pérdidas los coeficientes cuantificados y codifica en una manera sin pérdidas la información del modo de predicción intra o similar para ser utilizada como la información de encabezamiento. El búfer 107 de almacenamiento almacena temporalmente la imagen comprimida, en que se suma la información de encabezamiento obtenida como resultado de la codificación sin pérdidas, como la información de compresión de imagen, y proporciona como salida la información de compresión de imagen.
Por otra parte, cuando se determina en la etapa S13 que el costo (I) RD es mayor que el costo (P) RD, el selector 117 determina el modo óptimo de predicción ínter como un modo de predicción óptimo. Además, el selector 117 suministra la imagen de predicción en el modo óptimo de predicción inter al dispositivo 103 de cómputo y al sumador 110. Además, el selector 117 notifica la selección de la imagen de predicción en el modo óptimo de predicción ínter al predictor 116 de movimiento. De este modo, el predictor 116 de movimiento proporciona como salida la información del modo de predicción inter, la información del vector de movimiento correspondiente, y similares al codificador 106 sin pérdidas.
En la etapa S15, el codificador codifica un macrobloque actual de acuerdo con la predicción inter en el modo óptimo de predicción inter. Específicamente, el dispositivo 103 de cómputo del codificador sustrae la imagen de predicción suministrada desde el selector 117 a partir del macrobloque actual de la imagen leída desde el búfer 102 de reordenamiento de cuadros, y el transformador 104 ortogonal realiza la transformada ortogonal sobre la información residual obtenida como resultado de la sustracción. El cuantificador 105 cuantifica los coeficientes obtenidos como resultado de la transformada ortogonal del transformador 104 ortogonal, y el codificador 106 sin pérdidas codifica en una manera sin pérdidas los coeficientes cuantificados y codifica en una manera sin pérdidas la información del modo de predicción inter, la información del vector de movimiento, y similares para ser utilizada como la información de encabezamiento. El búfer 107 de almacenamiento almacena temporalmente la imagen comprimida, en que se suma la información de encabezamiento obtenida como resultado de la codificación sin pérdidas, como la información de compresión de imagen, y proporciona como salida la información de compresión de imagen.
La Figura 9 es un diagrama de flujo para describir los detalles del proceso de cálculo de un costo (P) RD cuando se utiliza la predicción ínter de la etapa Sil de la Figura 8.
En la etapa S31 de la Figura 9, el predictor 116 de movimiento establece el tamaño de bloque de la predicción inter a uno que no ha sido establecido entre los 4x4, 8x8, 16x16, 32x32, 64x64, y 128x128 pixeles correspondientes a los modos de predicción inter respectivos.
En la etapa S32, el predictor 116 de movimiento realiza la predicción de movimiento con el tamaño establecido en la etapa S31. Específicamente, el predictor 116 de movimiento realiza la predicción de movimiento en bloques respectivos del tamaño establecido en la etapa S31 utilizando la imagen suministrado a partir del búfer 102 de reordenamiento de cuadros y la imagen de referencia suministrada a partir de la memoria 112 de cuadros. Como consecuencia, se obtienen los vectores de movimiento (MV) para los bloques respectivos. El predictor 116 de movimiento suministra el vector de movimiento al compensador 113 de movimiento.
En la etapa S33, el compensador 113 de movimiento realiza la compensación de movimiento ( C) de acuerdo con el vector de movimiento suministrado a partir ¦ del predictor 116 de movimiento. Específicamente, el compensador 113 de movimiento genera una imagen de predicción a partir de la imagen de referencia suministrada a partir de la memoria 112 de cuadros de acuerdo con el vector de movimiento. El compensador 113 de movimiento suministra la imagen de predicción generada al dispositivo 103 de cómputo por medio del selector 117.
En la etapa S34, el dispositivo 103 de cómputo computa una diferencia entre la imagen correspondiente a la señal de entrada y la imagen MC (imagen de predicción) . El dispositivo 103 de cómputo suministra la diferencia obtenida como resultado del cómputo al transformador 104 ortogonal como la información residual.
En la etapa S35, el transformador 104 ortogonal establece el índice angular a uno que no ha sido establecido entre los índices angulares de números de índice 0, 1, 2, y 3. El número de índice es un número único para la combinación de los índices i a OÍ6 angulares, y en la presente modalidad, se prepara una combinación de cuatro índices angulares de los números 0 a 3.
En la etapa S36, el transformador 104 ortogonal realiza un proceso de ROT o similar que es un proceso de realizar la ROT de acuerdo con un índice angular con respecto a la información residual (información de diferencia) suministrada a partir del dispositivo 103 de cómputo. Los detalles del proceso de la etapa S36 se describirán con referencia a la Figura 10 más adelante descrita.
En la etapa S37, el cuantificador 105 realiza un proceso de cuantificación que es un proceso de cuantificar los coeficientes obtenidos como resultado del proceso de ROT o similar en la etapa S36. Específicamente, el Cuant 419 4x4, el Cuant 420 8x8, el Cuant 421 16x16, el Cuant 422 32x32, el Cuant 423 64x64, o el Cuant 424 128x128 correspondiente al tamaño de bloque de la predicción ínter del cuantificador 105 cuantifica los coeficientes suministrados a partir del transformador 104 ortogonal. El cuantificador 105 suministra los coeficientes obtenidos como resultado del proceso de cuantificación al codificador 106 sin pérdidas y al descuantificador 108.
En la etapa S38, el codificador 106 sin pérdidas codifica en una manera sin pérdidas los coeficientes (coeficientes cuantificados ) suministrados a partir del cuantificador 105 para obtener una imagen comprimida.
En la etapa S39, el descuantificador 108 realiza un proceso de descuantificación que es un proceso de descuantificar los coeficientes suministrados a partir del cuantificador 105. Específicamente, el Cuant 451 Inv 4x4, el Cuant 452 Inv 8x8, el Cuant 453 Inv 16x16, el Cuant 454 Inv 32x32, el Cuant 455 Inv 64x64, o el Cuant 456 Inv 128x128 correspondiente al tamaño de bloque de la predicción ínter del descuantificador 108 descuantifica los coeficientes suministrados a partir del cuantificador 105. Los coeficientes obtenidos como resultado del proceso de descuantificación se suministran al transformador 109 ortogonal inverso.
En la etapa S40, el transformador 109 ortogonal inverso realiza un proceso de ROT inversa o similar que es un proceso de realizar la ROT inversa de acuerdo con el índice angular establecido en la etapa S35 con respecto a los coeficientes correspondientes a la información residual (información de diferencia) . Los detalles del proceso de la etapa S40 se describirán con referencia a la Figura 11 más adelante descrita.
Después de que se realiza el proceso de la etapa S40, el flujo regresa a la etapa S35, y los procesos de las etapas S35 a S40 se realizan repetidamente hasta que todos los índices angulares de los números de índice 0 a 3 se establecen como el índice angular. Además, cuando todos los índices angulares de los números de índice 0 a 3 se establecen como el índice angular, el flujo regresa a la etapa S31. Además, los procesos de las etapas S31 a S40 se realizan repetidamente hasta que todos los tamaños de 4x4, 8x8, 16x16, 32x32, 64x64, y 128x128 pixeles se establecen como el tamaño de bloque de la predicción inter.
Además, cuando todos los tamaños de 4x4, 8x8, 16x16, 32x32, 64x64, y 128x128 pixeles se establecen como el tamaño de bloque de la predicción inter, y todos los índices angulares de los números de índice 0 a 3 se establecen como el índice angular con respecto al bloque de predicción ínter de cada tamaño de bloque, el flujo avanza a la etapa S41.
En la etapa S41, el predictor 116 de movimiento computa un costo RD a partir de la información de MV, la información de código cuantificada, la imagen decodificada con respecto a cada combinación del modo de predicción ínter y el índice angular. Específicamente, el predictor 116 de movimiento genera una imagen de predicción utilizando el vector de movimiento y la imagen de referencia suministrada a partir de la memoria 112 de cuadros con respecto a cada combinación del modo de predicción ínter y el índice angular. Además, el predictor 116 de movimiento computa una diferencia entre la imagen de predicción y la imagen suministrada a partir del búfer 102 de reordenamiento de cuadros. Además-, el predictor 116 de movimiento computa la Expresión (1) anteriormente descrita y calcula el costo RD utilizando la diferencia, la cantidad de codificación de ocurrencia de la imagen comprimida obtenida por el proceso de la etapa S38, y similares.
Además, el predictor 116 de movimiento utiliza el costo RD más pequeño entre los costos RD de las combinaciones respectivas del modo de predicción inter correspondiente al tamaño de bloque de la predicción inter y el índice angular como el costo (P) RD. Es decir, el predictor 116 de movimiento suministra el costo (P) RD que es el costo RD más pequeño entre los costos RD de las combinaciones del modo de predicción ínter y el índice angular y el vector de movimiento correspondiente y la información del modo de predicción ínter al compensador 113 de movimiento.
De este modo, el compensador 113 de movimiento realiza un proceso de compensación sobre la imagen de referencia suministrada a partir de la memoria 112 de cuadros con base en el vector de movimiento y la información del modo de predicción inter suministrada a partir del predictor 116 de movimiento y genera una imagen de predicción. Además, el compensador 113 de movimiento suministra el costo (P) RD suministrado a partir del predictor 116 de movimiento y la imagen de predicción generada al selector 117.
La Figura 10 es un diagrama de flujo para describir los detalles del proceso de la etapa S36 de la Figura 9.
En la etapa S51 de la Figura 10, el transformador 104 ortogonal determina si el tamaño de bloque de la predicción ínter es 4x4 pixeles.
Cuando se determina en la etapa S51 que el tamaño de bloque de la predicción inter es 4x4 pixeles, en la etapa S52, el transformador 104 ortogonal realiza un proceso de ROTxDCT de acuerdo con un índice angular. Específicamente, la DCTxROT 501 4x4 (Figura 5) del transformador 104 ortogonal realiza una transformada combinada de DCT y ROT sobre la información residual suministrada a partir del dispositivo 103 de cómputo de acuerdo con el índice angular establecido en la etapa S35 de la Figura 9. La DCTxROT 501 4x4 suministra los coeficientes obtenidos como resultado de la transformada al Cuant 419 4x4 del cuantificador 105.
Cuando se determina en la etapa S51 que el tamaño de bloque de la predicción inter no es 4x4 pixeles, en la etapa S53, el transformador 104 ortogonal realiza un proceso de DCT que es un proceso de realizar la DCT sobre la información residual suministrada a partir del dispositivo 103 de cómputo. Específicamente, la DCT 412 8x8, la DCT 413 16x16, la DCT 414 32x32, la DCT 415 64x64, o la DCT 416 128x128 correspondiente al tamaño de bloque de la predicción inter del transformador 104 ortogonal realiza la DCT sobre la información residual. El componente de baja frecuencia de 8x8 pixeles entre los coeficientes obtenidos como resultado de la DCT se suministra a la ROT 418 8x8, y el componente de alta frecuencia restante se suministra al Cuant 421 16x16, al Cuant 422 32x32, al Cuant 423 64x64, o al Cuant 424 128x128 correspondiente al tamaño de bloque de la predicción inter.
En la etapa S54, la ROT 418 8x8 del transformador 104 ortogonal realiza un proceso de ROT de acuerdo con el Índice angular establecido en la etapa S35 de la Figura 9 con respecto a los coeficientes de 8x8 pixeles (tamaño 8x8) del componente de baja frecuencia. La ROT 418 8x8 suministra los coeficientes de 8x8 pixeles obtenidos como resultado del proceso de ROT al Cuant 420 8x8, al Cuant 421 16x16, al Cuant 422 32x32, al Cuant 423 64x64, o al Cuant 424 128x128 correspondiente al tamaño de bloque de la predicción intra.
La Figura 11 es un diagrama de flujo para describir en detalle el proceso de la etapa S40 de la Figura 9.
En la etapa S71 de la Figura 11, el transformador 109 ortogonal inverso determina si el tamaño de bloque de la predicción ínter es 4x4 pixeles.
Cuando se determina en la etapa S71 que el tamaño de bloque de la predicción inter es 4x4 pixeles, en la etapa S72, el transformador 109 ortogonal inverso realiza un proceso de ROTxDCT inverso de acuerdo con el índice angular. Específicamente, la ROT InvxDCT Inv 502 4x4 (Figura 5) del transformador 109 ortogonal inverso realiza una transformada combinada de ROT inversa y DCT inversa sobre los coeficientes suministrados a partir del Cuant 451 Inv 4x4 del descuantificador 108 de acuerdo con el índice angular establecido en la etapa S35 de la Figura 9. La ROT InvxDCT Inv 502 4x4 suministra la información residual obtenida como resultado de la transformada al sumador 110.
Cuando se determina en la etapa S71 que el tamaño de bloque de la predicción inter no es 4x4 pixeles, el flujo avanza a la etapa S73. En la etapa S73, la ROT 458 Inv 8x8 (Figura 7) del transformador 109 ortogonal inverso realiza un proceso de ROT inversa que es un proceso de realizar la ROT inversa de acuerdo con el índice angular establecido en la etapa S35 de la Figura 9 con respecto a los coeficientes de 8x8 pixeles (tamaño 8x8) del componente de baja frecuencia entre los coeficientes de un tamaño de 8x8 pixeles o más suministrados a partir del descuantificador 108. La ROT 458 Inv 8x8 suministra los coeficientes obtenidos como resultado del proceso de ROT inversa a la DCT 460 Inv 8x8, la DCT 461 Inv 16x16, la DCT 462 Inv 32x32, la DCT 463 Inv 64x64, o la DCT 464 Inv 128x128 correspondiente al tamaño de bloque de la predicción Ínter.
En la etapa S74, la DCT 460 Inv 8x8, la DCT 461 Inv
16x16, la DCT 462 Inv 32x32, la DCT 463 Inv 64x64, o la DCT 464 Inv 128x128 del transformador 109 ortogonal inverso realiza un proceso de DCT inversa que es un proceso de realizar la DCT inversa sobre los coeficientes suministrados a partir de la ROT 458 Inv 8x8 y los coeficientes suministrados a partir del descuantificador 108. La información residual obtenida como resultado del proceso de DCT inversa se suministra al sumador 110.
La Figura 12 es un diagrama de flujo para describir en detalle un proceso de cálculo del costo (I) RD cuando se utiliza la predicción intra de la etapa S12 de la Figura 8.
En la etapa S101 de la Figura 12, el predictor 114 intra establece el tamaño de bloque de la predicción intra a uno que no ha sido establecido entre los 4x4, 8x8, 16x16, 32x32, 64x64, y 128x128 pixeles.
En la etapa S102, el predictor 114 intra establece un modo de predicción intra (modo de dirección Intra) a uno que no ha sido establecido entre los modos de dirección intra de los cuales el número de modo de dirección intra es 0, 1, 2, 3, 4, 5, 6, 7, u 8. El número de modo de dirección intra es un número único para ' el modo de predicción intra, y en la presente modalidad, se preparan ocho modos de predicción intra de los números 0 a 8.
En la etapa S103, el predictor 114 intra realiza la predicción de movimiento con el tamaño de bloque y el modo de predicción intra establecidos en la etapa S101. Específicamente, el predictor 114 intra realiza un proceso de predicción intra en el modo de predicción intra establecido en los bloques respectivos del tamaño de bloque establecido en la etapa S101 utilizando la imagen suministrada a partir del búfer 102 de reordenamiento de cuadros y la imagen de referencia suministrada a partir del sumador 110 y genera la imagen de predicción. El predictor 114 intra suministra la imagen de predicción generada al dispositivo 103 de cómputo por medio del selector 117.
En la etapa S104, el dispositivo 103 de cómputo computa una diferencia entre la imagen correspondiente a la señal de entrada y la imagen de predicción intra (la imagen de predicción generada por el proceso de predicción intra) . El dispositivo 103 de cómputo suministra la diferencia obtenida como resultado del cómputo al transformador 104 ortogonal como la información residual.
Los procesos de las etapas S105 a S110 son los mismos que los procesos de las etapas S35 a S40 de la Figura 9, y no se proporcionará la descripción de los mismos.
Después de que se realiza el proceso de la etapa S110, el flujo regresa a la etapa S105, y los procesos de las etapas S105 a S110 se realizan repetidamente hasta que todos los índices angulares de los números de índice 0 a 3 se establecen como el índice angular. Además, cuando todos los índices angulares de los números de índice 0 a 3 se establecen como el índice angular, el flujo regresa a la etapa S102. Además, los procesos de las etapas S102 a S110 se realizan repetidamente hasta que todos los modos de predicción intra de los números de modo de dirección intra 0 a 8 se establecen como el modo de predicción intra.
Además, cuando todos los números de modo de dirección intra 0 a 8 se establecen como el modo de predicción intra, el flujo regresa a la etapa S101. Además, los procesos de las etapas S101 a S110 se realizan repetidamente hasta que todos los tamaños de 4x4, 8x8, 16x16, 32x32, 64x64, y 128x128 pixeles se establecen como el tamaño de bloque de la predicción intra.
Además, cuando todos los tamaños de 4x4, 8x8, 16x16, 32x32, 64x64, y 128x128 pixeles se establecen como el tamaño de bloque de la predicción intra, todos los índices anqulares de los números de índice 0 a 3 se establecen como el índice anqular con respecto al bloque de cada tamaño de bloque, y cuando todos los modos de predicción intra de los modos de predicción intra 0 a 8 se establecen como el modo de predicción intra, el flujo avanza a la etapa Slll.
En la etapa Slll, el predictor 114 intra computa un costo RD a partir de la información de código cuantificada y la imagen decodificada con respecto a cada combinación del tamaño de bloque de la predicción intra, el modo de predicción intra, y el índice angular. Específicamente, el predictor 114 intra genera una imagen de predicción utilizando la imagen de referencia suministrada a partir de la memoria 112 de cuadros con respecto a cada combinación del tamaño de bloque de la predicción intra, el modo de predicción intra, y el índice angular. Además, el predictor 114 intra computa una diferencia entre la imagen de predicción y la imagen suministrada a partir del búfer 102 de reordenamiento de cuadros. Además, el predictor 116 de movimiento computa la Expresión (1) anteriormente descrita y calcula el costo RD utilizando la diferencia, la cantidad de codificación de ocurrencia de la imagen comprimida obtenida por el proceso de la etapa S108, y similares .
Además, el predictor 114 intra utiliza el costo RD más pequeño entre los costos RD de las combinaciones respectivas del tamaño de bloque de la predicción intra, el modo de predicción intra, y el índice angular como el costo (I) RD. Es decir, el predictor 114 intra suministra el costo (I) RD que es el costo RD más pequeño entre los costos RD de las combinaciones respectivas del tamaño de bloque de la predicción intra, el modo de predicción intra, y el índice angular y la imagen de predicción correspondiente al selector 117.
Las Figuras 13, 14, y 15 son diagramas de flujo de los procesos del decodificador de la Figura 3.
La Figura 13 es un diagrama de flujo para describir un proceso de decodificación del macrobloque ( B) .
En la etapa S121 de la Figura 13, el decodificador 217 sin pérdidas lee y adquiere la información de compresión de imagen del macrobloque actual a partir del búfer 216 de almacenamiento y decodifica en una manera sin pérdidas la información de compresión de imagen de acuerdo con un esquema correspondiente al esquema de codificación sin pérdidas del codificador 106 sin pérdidas de la Figura 2. Mediante esta decodificación sin pérdidas, la información del modo de predicción intra o la información del modo de predicción inter se extrae como la información que indica el modo de predicción óptimo del macrobloque actual.
En la etapa S122, el decodificador 217 sin pérdidas determina si la información que indica el modo de predicción óptimo extraída en la etapa S121 es la información del modo de predicción intra. Cuando se determina en la etapa S122 que la información es la información del modo de predicción intra, en la etapa S123, el decodificador decodifica el macrobloque (el MB) actual de acuerdo con la predicción intra. Los detalles del proceso de la etapa S123 se describirán con referencia a la Figura 15 más adelante descrita.
Por otra parte, cuando se determina en la etapa S122 que la información no es la información del modo de predicción intra, es decir, la información que indica el modo de predicción óptimo extraída en la etapa S121 es la información del modo de predicción Ínter, el flujo avanza a la etapa S124.
En la etapa S124, el decodificador decodifica el macrobloque actual de acuerdo con la predicción ínter. Los detalles del proceso de la etapa S124 se describirán con referencia a la Figura 14 más adelante descrita.
La Figura 14 es un diagrama de flujo para describir los detalles del proceso de la etapa S124 de la Figura 13.
En la etapa S141 de la Figura 14, el decodificador 217 sin pérdidas extrae los coeficientes cuantificados correspondientes al tamaño de bloque de la predicción inter, el vector de movimiento (MV) , la información del índice angular, y la información residual (información de diferencia) a partir de la información de compresión de imagen (información de flujo) adquirida desde el búfer 216 de almacenamiento. Específicamente, el decodificador 217 sin pérdidas decodifica en una manera sin pérdidas la información de compresión de imagen para obtener la información del modo de predicción inter, el vector de movimiento, la información del índice angular, y los coeficientes cuantificados . Además, el decodificador 217 sin pérdidas reconoce el tamaño de bloque de la predicción inter correspondiente a la información del modo de predicción inter. El decodificador 217 sin pérdidas suministra los coeficientes cuantificados al descuantificador 218 en bloques respectivos del tamaño de bloque correspondiente a la información del modo de predicción inter. Además, el decodificador 217 sin pérdidas suministra la información del modo de predicción inter y el vector de movimiento al compensador 224 de movimiento y suministra el índice angular al transformador 219 ortogonal inverso.
En la etapa S142, el compensador 224 de movimiento realiza un proceso de compensación de movimiento (proceso de MC) sobre la imagen de referencia suministrada a partir de la memoria 223 de cuadros de acuerdo con la información del modo de predicción inter y el vector de movimiento suministrados a partir del decodificador 217 sin pérdidas. Además, el compensador 224 de movimiento suministra la imagen de predicción obtenida como resultado del proceso de compensación de movimiento al sumador 220 por medio del conmutador 227.
En la etapa S143, el descuantificador 218 realiza un proceso de descuantificación sobre los coeficientes cuantificados suministrados a partir del decodificador 217 sin pérdidas. Específicamente, el Cuant 601 Inv 4x4, el Cuant 602 Inv 8x8, el Cuant 603 Inv 16x16, el Cuant 604 Inv 32x32, el Cuant 605 Inv 64x64, o el Cuant 606 Inv 128x128 correspondiente al tamaño de bloque de la predicción ínter del descuantificador 218 descuantifica los coeficientes cuantificados . El descuantificador 218 suministra los coeficientes obtenidos como resultado del proceso de descuantificación al transformador 219 ortogonal inverso.
En la etapa S144, el transformador 219 ortogonal inverso realiza un proceso de ROT inversa o similar de acuerdo con el índice angular suministrado a partir del decodificador 217 sin pérdidas con respecto a los coeficientes correspondientes a la información de diferencia (la información residual) suministrada a partir del descuantificador 218. Debido a que los detalles del proceso de la etapa S144 son iguales que aquellos descritos en la Figura 11, no se proporcionará la descripción de los mismos.
En la etapa S145, el sumador 220 suma la información residual (información de la ROT inversa) obtenida como resultado del proceso de la etapa S144 a la imagen de predicción (señal de predicción) suministrada a partir del compensador 224 de movimiento por medio del conmutador 227 para obtener una imagen decodificada . La imagen decodificada se suministra al predictor 225 intra, se suministra a la memoria 223 de cuadros por medio del filtro 226 de desbloqueo, o se suministra al exterior por medio del filtro 226 de desbloqueo, el búfer 221 de reordenamiento de cuadros, y el convertidor 222 D/A.
La Figura 15 es un diagrama de flujo para describir los detalles del proceso de la etapa S123 de la Figura 13.
En la etapa S161 de la Figura 15, el decodificador 217 sin pérdidas extrae los coeficientes cuantificados correspondientes al tamaño de bloque de la predicción intra, el modo de predicción intra, la información del índice angular, y la información residual (información de diferencia) a partir de la información de compresión de imagen (información de flujo) adquirida desde el búfer 216 de almacenamiento. Específicamente, el decodificador 217 sin pérdidas decodifica en una manera sin pérdidas la información de compresión de imagen para obtener la información del modo de predicción intra, la información del índice angular, y los coeficientes cuantificados . Además, el decodificador 217 sin pérdidas reconoce el modo de predicción intra y el tamaño de bloque de la predicción intra a partir de la información del modo de predicción intra. El decodificador 217 sin pérdidas suministra los coeficientes cuantificados al descuantificador 218 en bloques respectivos del tamaño de bloque de la predicción intra. Además, el decodificador 217 sin pérdidas suministra la información del modo de predicción intra al predictor 225 intra y suministra el Índice angular al transformador 219 ortogonal inverso.
En la etapa S162, el predictor 225 intra realiza un proceso de predicción intra sobre la imagen de referencia suministrada a partir del sumador 220 de acuerdo con la información del modo de predicción intra suministrada a partir del decodificador 217 sin pérdidas. Además, el predictor 225 intra suministra la imagen de predicción obtenida como resultado del proceso de predicción intra al sumador 220 por medio del conmutador 227.
En la etapa S163, el descuantificador 218 realiza un proceso de descuantificación sobre los coeficientes cuantificados suministrados a partir del decodificador 217 sin pérdidas en una manera similar al proceso de la etapa S143 de la Figura 14. El descuantificador 218 suministra los coeficientes obtenidos como resultado del proceso de descuantificación al transformador 219 ortogonal inverso.
En la etapa S164, el transformador 219 ortogonal inverso realiza un proceso de ROT inversa o similar sobre los coeficientes correspondientes a la información de diferencia suministrada a partir del descuantificador 218 en una manera similar al proceso de la etapa S144 de acuerdo con el índice angular suministrado a partir del decodificador 217 sin pérdidas.
En la etapa S165, el sumador 220 suma la información residual (información de la ROT inversa) obtenida como resultado del proceso de la etapa S164 a la imagen de predicción (señal de predicción) suministrada a partir del predictor 225 intra por medio del conmutador 227 para obtener la imagen decodificada . La imagen decodificada se suministra al predictor 225 intra, se suministra a la memoria 223 de cuadros por medio del filtro 226 de desbloqueo, o se proporciona como salida al exterior por medio del filtro 226 de desbloqueo, el búfer 221 de reordenamiento de cuadros, y el convertidor 222 D/A.
Descripción de la Computadora a la cual se aplica la Presente Tecnología
Luego, la serie de procesamiento anteriormente descrita se puede ejecutar no sólo por hardware sino también por software. Cuando la serie de procesamiento se ejecuta por software, un programa incluido en el software se instala en una computadora de propósito general o similar.
Con referencia ahora a la Figura 16, se describirá una configuración ejemplar de una computadora de acuerdo con una modalidad de la presente tecnología, en la cual se instala un programa para ejecutar la serie de procesamiento anteriormente descrita.
El programa se puede registrar preliminarménte en un disco 705 duro o una ROM 703 como un medio de registro equipado en la computadora.
Alternativamente, el programa se puede almacenar (registrar) en un medio 711 de registro removible. El medio 711 de registro removible se puede proporcionar como un denominado software de paquete. Aquí, el medio 711 de registro removible puede ser, por ejemplo, un disco flexible, una CD-ROM (memoria de sólo lectura en disco compacto) , un disco MO (magneto-óptico), un DVD (disco versátil digital), un disco magnético, una memoria semiconductora o similar.
El programa se puede instalar en el disco 705 duro interno descargando el programa a una computadora por medio de una red de comunicaciones o una red de radiodifusión, además de instalar el programa en la computadora desde el medio 711 de registro removible como se describe anteriormente. Es decir, el programa se puede transferir en una manera inalámbrica desde un sitio de descarga a la computadora por medio de un satélite de radiodifusión digital o se puede transferir en una manera por cables a la computadora por medio de una red tal como una LAN (red de área local) , o la Internet.
La computadora tiene incorporada ahí una CPU (unidad de procesamiento central) 702, y una interfaz 710 de entrada/salida se conecta a la CPU 702 por medio de una barra colectora 701.
La CPU 702 ejecuta el programa almacenado en la ROM (memoria de sólo lectura) 703 en respuesta a los comandos que se ingresan por medio de la interfaz 710 de entrada/salida por un usuario que opera una unidad 707 de entrada o similar. Alternativamente, la CPU 702 ejecuta el programa almacenado en el disco 705 duro cargando el programa en una RAM (memoria de acceso aleatorio) 704.
De este modo, la CPU 702 ejecuta el procesamiento correspondiente a los diagramas de flujo anteriormente descritos o el procesamiento realizado por la configuración ilustrada en los diagramas de bloques. Posteriormente, la CPU 702 proporciona como salida, transmite, o registra los resultados del procesamiento a través de una unidad 706 de salida, a través de una unidad 708 de comunicaciones, o en el disco 705 duro, por ejemplo, por medio de la interfaz 710 de entrada/salida según se requiera.
La unidad 707 de entrada incluye un teclado, un ratón, un micrófono, y similares. La unidad 706 de salida incluye una LCD (pantalla de cristal liquido), un altavoz, y similares.
Aquí, en esta especificación, el procesamiento que la computadora ejecuta de conformidad con el programa no se puede ejecutar en una manera secuencial en el tiempo, en el orden descrito en los diagramas de flujo. Es decir, el procesamiento que la computadora ejecuta de conformidad con el programa incluye el procesamiento que se ejecuta en paralelo o separadamente (por ejemplo, el procesamiento paralelo o el procesamiento con base en objetos) .
Además, el programa se puede ejecutar por una sola computadora (procesador) ' y se puede ejecutar por una pluralidad de computadoras en una manera distribuida. Además, el programa se puede ejecutar por ser transferido a una computadora en una ubicación remota.
Las modalidades de la presente tecnología no se limitan a las modalidades anteriormente descritas, y se pueden hacer diversos cambios sin desviarse del espíritu de la presente tecnología.
Además, la presente tecnología puede tomar las siguientes configuraciones .
(1) Un dispositivo de procesamiento de imágenes que incluye :
una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal, y para obtener un componente de alta frecuencia, que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y
una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación.
(2) El dispositivo de procesamiento de imágenes de acuerdo con (1), en donde
el tamaño predeterminado es 4x4 pixeles.
(3) El dispositivo de procesamiento de imágenes de acuerdo con (1), en donde
el tamaño predeterminado es 4x4 pixeles cuando el tamaño de la imagen es 4x4 pixeles y es 8x8 pixeles cuando el tamaño de la imagen es 8x8 pixeles o mayor,
cuando el tamaño de la imagen es 4x4 pixeles, la unidad de transformada ortogonal inversa realiza la tercera transformada ortogonal inversa sobre la imagen que es el componente de baja frecuencia, cuando el tamaño de la imagen es 8x8 pixeles o mayor, la unidad de transformada ortogonal inversa realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación.
(4) El dispositivo de procesamiento de imágenes de acuerdo con cualquiera de (1) a (3), en donde
la primera transformada ortogonal es una transformada discreta del coseno (DCT) , y
la segunda transformada ortogonal es una transformada por rotación (ROT) .
(5) El dispositivo de procesamiento de imágenes de acuerdo con cualquiera de (1) a (4), que incluye adicionalmente :
una unidad de transformada ortogonal que, cuando el tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal, que es una transformada combinada de la primera transformada ortogonal y la segunda transformada ortogonal, sobre la imagen, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la primera transformada ortogonal sobre la imagen y realiza la segunda transformada ortogonal sobre el componente de baja frecuencia que tiene el tamaño predeterminado de la imagen que se ha sometido a la primera transformada ortogonal; y
una unidad de cuantificación que cuantifica la imagen que tiene el tamaño predeterminado que se ha sometido a la tercera transformada ortogonal o cuantifica el componente de alta frecuencia, que es el componente diferente del componente de baja frecuencia y se obtiene por la primera transformada ortogonal, y el componente de baja frecuencia obtenido por la segunda transformada ortogonal.
(6) Un método de procesamiento de imágenes de un dispositivo de procesamiento de imágenes que incluye:
una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal, y para obtener un componente de alta frecuencia, que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y
una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación,
el método que incluye las etapas de:
permitir que la unidad de descuantificación obtenga el componente de baja frecuencia y el componente de alta frecuencia; y
permitir que la unidad de transformada ortogonal inversa realice la tercera transformada ortogonal inversa sobre la imagen que es el componente de baja frecuencia cuando el tamaño de la imagen es el tamaño predeterminado, realice la segunda transformada ortogonal inversa sobre el componente de baja frecuencia cuando el tamaño de la imagen es mayor que el tamaño predeterminado, y realice la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación .
(7) Un programa para causar que una computadora funcione como:
una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal, y para obtener un componente de alta frecuencia, que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y
una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación .
LISTA DE SÍMBOLOS DE REFERENCIA
104 Transformador ortogonal
Cuantificador
Descuantificador
Transformador ortogonal inverso Descuantificador
Transformador ortogonal inverso Barra colectora
CPU ROM RAM
Disco Duro
Unidad de salida
Unidad de entrada
Unidad de comunicaciones
Unidad lógica
Interfaz de entrada/salida Medio de registro removible
Claims (7)
1. Un dispositivo de procesamiento de imágenes, caracterizado en que comprende: una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal, y para obtener un componente de alta frecuencia, que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación.
2. El dispositivo de procesamiento de imágenes de acuerdo con la reivindicación 1, caracterizado en que el tamaño predeterminado es 4x4 pixeles.
3. El dispositivo de procesamiento de imágenes de acuerdo con la reivindicación 1, caracterizado en que el tamaño predeterminado es 4x4 pixeles cuando el tamaño de la imagen es 4x4 pixeles y es 8x8 pixeles cuando el tamaño de la imagen es 8x8 pixeles o mayor, cuando el tamaño de la imagen es 4x4 pixeles, la unidad de transformada ortogonal inversa realiza la tercera transformada ortogonal inversa sobre la imagen que es el componente de baja frecuencia, y cuando el tamaño de la imagen es 8x8 pixeles o mayor, la unidad de transformada ortogonal inversa realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación.
4. El dispositivo de procesamiento de imágenes de acuerdo con la reivindicación 1, caracterizado en que la primera transformada ortogonal es una transformada discreta del coseno (DCT) , y la segunda transformada ortogonal es una transformada por rotación (ROT) .
5. El dispositivo de procesamiento de imágenes de acuerdo con la reivindicación 1, caracterizado en que adicionalmente comprende: una unidad de transformada ortogonal que, cuando el tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal, que es una transformada combinada de la primera transformada ortogonal y la segunda transformada ortogonal, sobre la imagen, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la primera transformada ortogonal sobre la imagen y realiza la segunda transformada ortogonal sobre el componente de baja frecuencia que tiene el tamaño predeterminado de la imagen que se ha sometido a la primera transformada ortogonal; y una unidad de cuantificación que cuantifica la imagen que tiene el tamaño predeterminado que se ha sometido a la tercera transformada ortogonal o cuantifica el componente de alta frecuencia, que es el componente diferente del componente de baja frecuencia y se obtiene por la primera transformada ortogonal, y el componente de baja frecuencia obtenido por la segunda transformada ortogonal.
6. Un método de procesamiento de imágenes de un dispositivo de procesamiento de imágenes, caracterizado en que comprende: una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal y para obtener un componente de alta frecuencia que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación, el método que comprende las etapas de: permitir que la unidad de descuantificación obtenga el componente de baja frecuencia y el componente de alta frecuencia; y permitir que la unidad de transformada ortogonal inversa realice la tercera transformada ortogonal inversa sobre la imagen que es el componente de baja frecuencia cuando el tamaño de la imagen es el tamaño predeterminado, realice la segunda transformada ortogonal inversa sobre el componente de baja frecuencia cuando el tamaño de la imagen es mayor que el tamaño predeterminado, y realice la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación .
7. Un programa para causar que una computadora funcione como : una unidad de descuantificación que descuantifica una imagen cuantificada para obtener un componente de baja frecuencia que tiene un tamaño predeterminado de la imagen, que se obtiene realizando una segunda transformada ortogonal después de una primera transformada ortogonal, y para obtener un componente de alta frecuencia, que es un componente diferente del componente de baja frecuencia de la imagen y se obtiene por la primera transformada ortogonal; y una unidad de transformada ortogonal inversa que, cuando un tamaño de la imagen es el tamaño predeterminado, realiza una tercera transformada ortogonal inversa, que es una transformada combinada de una primera transformada ortogonal inversa correspondiente a la primera transformada ortogonal y una segunda transformada ortogonal inversa correspondiente a la segunda transformada ortogonal, sobre la imagen que es el componente de baja frecuencia, y que, cuando el tamaño de la imagen es mayor que el tamaño predeterminado, realiza la segunda transformada ortogonal inversa sobre el componente de baja frecuencia y realiza la primera transformada ortogonal inversa sobre el componente de baja frecuencia que se ha sometido a la segunda transformada ortogonal inversa y el componente de alta frecuencia obtenido por la unidad de descuantificación . RESUMEN DE LA INVENCIÓN Se describen un dispositivo de procesamiento de imágenes, un método de procesamiento de imágenes, y un programa que pueden reducir la cantidad de procesamiento requerido para una ROT y una DCT o una DCT inversa y una ROT inversa. Mediante la cuantificación inversa de la información de imagen obtenida decodificando una imagen codificada, se obtienen los componentes de baja frecuencia de dicha información de imagen, obtenidos por medio de una primera unidad de transformación ortogonal, y los componentes de alta frecuencia de dicha información de imagen, obtenidos por medio de una segunda unidad de transformación ortogonal. Dichos componentes de alta frecuencia son de frecuencia mayor que dichos componentes de baja frecuencia. Dichos componentes de baja frecuencia y componentes de alta frecuencia se someten entonces a una transformación ortogonal inversa por medio de una técnica similar. Esta tecnología se puede aplicar, por ejemplo, a la codificación y decodificación de imágenes.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010162279 | 2010-07-16 | ||
| JP2010241769A JP2012039590A (ja) | 2010-07-16 | 2010-10-28 | 画像処理装置、画像処理方法、及びプログラム |
| PCT/JP2011/065735 WO2012008389A1 (ja) | 2010-07-16 | 2011-07-08 | 画像処理装置、画像処理方法、及びプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| MX2013000355A true MX2013000355A (es) | 2013-01-28 |
Family
ID=45469389
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| MX2013000355A MX2013000355A (es) | 2010-07-16 | 2011-07-08 | Dispositivo de procesamiento de imagenes, metodo de procesamiento de imagenes, y programa. |
Country Status (12)
| Country | Link |
|---|---|
| US (1) | US20130108185A1 (es) |
| EP (1) | EP2595384A1 (es) |
| JP (1) | JP2012039590A (es) |
| KR (1) | KR20130088114A (es) |
| CN (1) | CN102986223A (es) |
| AU (1) | AU2011277552A1 (es) |
| BR (1) | BR112013000637A2 (es) |
| CA (1) | CA2802439A1 (es) |
| MX (1) | MX2013000355A (es) |
| RU (1) | RU2013100169A (es) |
| TW (1) | TW201208383A (es) |
| WO (1) | WO2012008389A1 (es) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5741076B2 (ja) * | 2010-12-09 | 2015-07-01 | ソニー株式会社 | 画像処理装置及び画像処理方法 |
| JP5854612B2 (ja) * | 2011-02-18 | 2016-02-09 | ソニー株式会社 | 画像処理装置および方法 |
| US9712829B2 (en) * | 2013-11-22 | 2017-07-18 | Google Inc. | Implementation design for hybrid transform coding scheme |
| JP6476900B2 (ja) * | 2015-01-21 | 2019-03-06 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム |
| US11375220B2 (en) * | 2019-11-27 | 2022-06-28 | Tencent America LLC | Method and apparatus for video decoding using a nominal directional mode and an angular offset |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6167092A (en) * | 1999-08-12 | 2000-12-26 | Packetvideo Corporation | Method and device for variable complexity decoding of motion-compensated block-based compressed digital video |
| US7221708B1 (en) * | 2002-12-16 | 2007-05-22 | Emblaze V Con Ltd | Apparatus and method for motion compensation |
| BRPI0414397A (pt) * | 2003-09-17 | 2006-11-21 | Thomson Licensing | geração de imagem de referência adaptativa |
| US20080008246A1 (en) * | 2006-07-05 | 2008-01-10 | Debargha Mukherjee | Optimizing video coding |
| KR20110017303A (ko) * | 2009-08-13 | 2011-02-21 | 삼성전자주식회사 | 회전변환을 이용한 영상 부호화, 복호화 방법 및 장치 |
| KR20110065092A (ko) * | 2009-12-09 | 2011-06-15 | 삼성전자주식회사 | 회전 변환을 이용한 영상 부호화, 복호화 방법 및 장치 |
| US9172968B2 (en) * | 2010-07-09 | 2015-10-27 | Qualcomm Incorporated | Video coding using directional transforms |
| US8693795B2 (en) * | 2010-10-01 | 2014-04-08 | Samsung Electronics Co., Ltd. | Low complexity secondary transform for image and video compression |
| US20120320972A1 (en) * | 2011-06-16 | 2012-12-20 | Samsung Electronics Co., Ltd. | Apparatus and method for low-complexity optimal transform selection |
-
2010
- 2010-10-28 JP JP2010241769A patent/JP2012039590A/ja not_active Withdrawn
-
2011
- 2011-06-21 TW TW100121641A patent/TW201208383A/zh unknown
- 2011-07-08 BR BR112013000637A patent/BR112013000637A2/pt not_active Application Discontinuation
- 2011-07-08 KR KR20137000110A patent/KR20130088114A/ko not_active Withdrawn
- 2011-07-08 EP EP11806719.8A patent/EP2595384A1/en not_active Withdrawn
- 2011-07-08 CN CN2011800340205A patent/CN102986223A/zh active Pending
- 2011-07-08 AU AU2011277552A patent/AU2011277552A1/en not_active Abandoned
- 2011-07-08 US US13/809,819 patent/US20130108185A1/en not_active Abandoned
- 2011-07-08 WO PCT/JP2011/065735 patent/WO2012008389A1/ja not_active Ceased
- 2011-07-08 RU RU2013100169/08A patent/RU2013100169A/ru unknown
- 2011-07-08 CA CA2802439A patent/CA2802439A1/en not_active Abandoned
- 2011-07-08 MX MX2013000355A patent/MX2013000355A/es not_active Application Discontinuation
Also Published As
| Publication number | Publication date |
|---|---|
| JP2012039590A (ja) | 2012-02-23 |
| KR20130088114A (ko) | 2013-08-07 |
| CA2802439A1 (en) | 2012-01-19 |
| TW201208383A (en) | 2012-02-16 |
| AU2011277552A1 (en) | 2013-01-10 |
| RU2013100169A (ru) | 2014-07-20 |
| EP2595384A1 (en) | 2013-05-22 |
| US20130108185A1 (en) | 2013-05-02 |
| WO2012008389A1 (ja) | 2012-01-19 |
| CN102986223A (zh) | 2013-03-20 |
| BR112013000637A2 (pt) | 2016-05-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20240348839A1 (en) | Video encoding method for encoding division block, video decoding method for decoding division block, and recording medium for implementing the same | |
| US12075083B2 (en) | Image encoding and decoding method with merge flag and motion vectors | |
| CN100579234C (zh) | 图像编码/解码方法及其装置 | |
| DK3282705T3 (en) | PROCEDURE FOR DECODING AND APPARATUS FOR ENCODING A PICTURE THROUGH INTRAPHIC PREDICTION. | |
| KR101196429B1 (ko) | 동영상 트랜스코딩 방법 및 그 장치, 이에 사용되는움직임 벡터 보간방법 | |
| EP2384003A1 (en) | Device, method and program for image prediction encoding, device, method and program for image prediction decoding, and encoding/decoding system and method | |
| KR20190009408A (ko) | 영상 부호화/복호화 방법 및 장치 | |
| US20150063452A1 (en) | High efficiency video coding (hevc) intra prediction encoding apparatus and method | |
| JP2006140758A (ja) | 動画像符号化方法、動画像符号化装置および動画像符号化プログラム | |
| KR20130003718A (ko) | 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치 | |
| JP2023168518A (ja) | 予測ブロック生成装置、画像符号化装置、画像復号装置、及びプログラム | |
| US9532045B2 (en) | Method and device for encoding/ decoding image having removable filtering mode | |
| MX2013000355A (es) | Dispositivo de procesamiento de imagenes, metodo de procesamiento de imagenes, y programa. | |
| JP2011166592A (ja) | 画像符号化装置及び画像復号装置 | |
| JPWO2016194380A1 (ja) | 動画像符号化装置、動画像符号化方法および動画像符号化プログラムを記憶する記録媒体 | |
| KR20160078318A (ko) | 영상 부호화/복호화 방법 및 장치 | |
| KR20070028404A (ko) | 픽처를 저장하는 방법, 비디오 복호기, 비디오 부호기,휴대 장치 및 컴퓨터 프로그램 제품 | |
| CN107257459B (zh) | 动态图像预测解码装置以及动态图像预测解码方法 | |
| KR20190009826A (ko) | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 | |
| KR20130003707A (ko) | 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치 | |
| JP4367354B2 (ja) | 画像符号化装置 | |
| KR101767950B1 (ko) | 예측을 위한 컬러 플레인간의 상관 파라미터 추출 장치와 방법, 및 그것을 이용한 영상 부호화/복호화 장치 및 방법 | |
| JP6154588B2 (ja) | 画像符号化装置、画像復号装置及びプログラム | |
| JP2006270392A (ja) | 画像予測符号化装置 | |
| JP2008104072A (ja) | 画像データの符号化方法および符号化装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FA | Abandonment or withdrawal |