MXPA02004577A - Compresion de imagenes de dct de tamano de bloque adaptable basada en variacion. - Google Patents

Compresion de imagenes de dct de tamano de bloque adaptable basada en variacion.

Info

Publication number
MXPA02004577A
MXPA02004577A MXPA02004577A MXPA02004577A MXPA02004577A MX PA02004577 A MXPA02004577 A MX PA02004577A MX PA02004577 A MXPA02004577 A MX PA02004577A MX PA02004577 A MXPA02004577 A MX PA02004577A MX PA02004577 A MXPA02004577 A MX PA02004577A
Authority
MX
Mexico
Prior art keywords
block
threshold
data
subdivided
blocks
Prior art date
Application number
MXPA02004577A
Other languages
English (en)
Inventor
Thyagarajan Kadayam
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of MXPA02004577A publication Critical patent/MXPA02004577A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection 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/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Se presenta un sistema y metodo para compresion de imagenes que utiliza bloques de tamano adaptable y sub-bloques de datos de coeficiente de transformacion de coseno discreto. Un elemento de asignacion de tamano de bloque en el codificador selecciona el bloque o sub-bloque de un bloque de entrada de pixeles que se procesan. La seleccion se basa en la variacion de valores de pixeles. Los bloques con variaciones mayores que un umbral se subdividen, mientras los bloques con variaciones mas chicas que un umbral no se subdividen. Un elemento de transformacion transforma los valores de pixeles de los bloques seleccionados en el dominio de frecuencia. Los valores de dominio de frecuencia pueden entonces cuantificarse, serializarse y codificarse con longitud variable en la preparacion para la transmision.

Description

COMPRESIÓN DE IMÁGENES DE DCT DE TAMAÑO DE BLOQUE ADAPTABLE BASADA EN VARIACIÓN ANTECEDENTES DE LA INVENCIÓN 1. Campo de la Invención La presente invención se refiere al procesamiento de imágenes. Más específicamente, la presente invención se refiere a un_ esquema de compresión para señales de imagen que utiliza bloques y sub-bloques de tamaño adaptable de datos de coeficiente de transformación de coseno discreto codificado. 2. Descripción de la Técnica Relacionada En el campo de transmisión y recepción de señales de video como el que se utiliza para proyectar "películas" o "filmes", varias mejoras se están haciendo a las técnicas de compresión de imágenes. Muchos de los sistemas de video actuales y propuestos hacen uso de técnicas de codificación digital. La codificación digital proporciona una fuerza para el enlace de comunicaciones que resisten degradaciones tales como el desvanecimiento de trayectoria múltiple y atasco o interferencia de señales, cada uno de los cuales puede degradar seriamente _ la calidad d.- '_~aqan. Además, las técnicas d: ^ ^T"2"1 C facilitan el uso de técnicas de cifrado de señales, que se encuentran útiles o aún necesarias para aplicaciones gubernamentales y muchas de difusión comercial de reciente desarrollo. La alta definición de video es un área que se beneficia de las técnicas de compresión de imágenes mejoradas. Cuando primero se propuso, la transmisión sobre el aire de alta definición de video (o aún transmisión sobre cable o fibra óptica) pareció poco práctica debido a los requerimientos excesivos de ancho de banda. Los sistemas inalámbricos típicos, u otros sistemas de transmisión que se diseñan no integraron fácilmente suficiente ancho de banda. Sin embargo, se ha comprendido que la compresión de señales de video digitales puede lograrse a un nivel que permita que la transmisión utilice anchos de banda razonables. Tales niveles de compresión de señales, acoplados con la transmisión digital de la señal, permitirán que un sistema de video transmita con menos energía con mayor inmunidad a las degradaciones de canal mientras ocupen un ancho de banda más deseable y útil. Una técnica de compresión capaz de ofrecer niveles significantes de compresión mientras conservan el nivel deseado de calidad para las señales de video utiliza bloq^^s de tamaño adaptable y sub-bloques de datos de coeficiente de Transformación de Coseno Discreto codificado (DCT) . Esta técnica se referirá de aqui en adelante como el método de Transformación de Coseno Diferencial de Tamaño de Bloque Adaptable (ABSDCT) . Esta técnica se describe en la Patente Norteamericana No. 5,021,891, titulada "Adaptive Block Size Image Compression Method And System", asignada al cesionario de la presente invención e incorporada en la presente para referencia. Las técnicas de DCT también se describen en la Patente Norteamericana No. 5,107,245, titulada "Adaptive Block Size Image Compression Method And System", asignada al cesionario de la presente invención e incorporada en la presente para referencia. Además, el uso de la técnica de ABSDCT en combinación con una técnica de Transformación de Árbol cuádruple Diferencial se discute en la Patente Norteamericana No. 5,452,104, titulada "Adapti ve Block Size Image Compression Method And System" también asignada al cesionario de la presente invención e incorporada en la presente para referencia. Los sistemas descritos en esas patentes utilizan lo que se refiere como codificación de "intra-tramas", donde cada trama de datos de imagen se codifica" sin respecto al contenido de cualquier otra trama. Utilizando la técnica de ABSDCT, el Índice de datos disponible puede reducirse de alrededor de 1.5 billones ^e hii~s por segundo a aproximadamente 50 millones de bits por segundo sin degradación perceptible de la calidad de imagen. La técnica de ABSDCT puede utilizarse para comprimir ya sea una imagen de negro y blanco o a color o una señal que represente la imagen. La señal de entrada de color puede estar en un formato YIQ con Y siendo el ejemplo de luminiscencia, o brillantez, y I y Q siendo los ejemplos de crominancia o color para cada bloque de 4x4 pixeles. Otros formatos conocidos tales como los formatos YUV o RGB también pueden utilizarse. Debido a la baja sensibilidad espacial del ojo al color, la .mayoría de las investigaciones ha mostrado que una sub-muestra de los componentes de color por un factor de cuatro en las direcciones horizontal y vertical es razonable. Por consiguiente, una señal de video puede representarse por cuatro componentes de luminiscencia y dos componentes de crominancia. Utilizando ABSDCT, una señal de video generalmente se dividirá en bloques de pixeles para su procesamiento. Para cada bloque, los componentes de luminiscencia y cromina?cia pasan a un intercalador de bloques. Por ejemplo, un bloque de 16x1o (pixeles) puede presentarse al intercalador de bloques que ordena y organiza las muestras de imágenes dentro de cada bloque de 16x16 para producir bloques y sub-bloques compuestos de datos para el análisis de la transformación de coseno discreto (DCT) . El operador de DCT es un método para convertir una señal con muestras de tiempo en una representación de frecuencia de la misma señal. Al convertir una representación de frecuencia, las técnicas de DCT han mostrado que permiten muy altos niveles de compresión, ya que los cuantificadores pueden diseñarse para tomar ventaja de las características de distribución de frecuencia de una imagen. En una modalidad preferida, un DCT de 16x16 se aplica a una primera ordenación, cuatro DCT de 8x8 se aplican a una segunda oxdenación, 16 DCT de 4x4 se aplican a una tercera ordenación y 64 DCT de 2x2 se aplican a una cuarta ordenación. La operación de DCT reduce la redundancia espacial inherente en la fuente de video. Después de que se realiza el DCT, la mayor parte de la energía de la señal de video tiende a concentrarse en algunos coeficientes de DCT. Una transformación adicional, la Transformación de Árbol Cuádruple Diferencial (DQT) , puede utilizarse para reducir la redundancia entre los coeficientes de DCT. Para el bloque de 16x16 y cada sub-bloque, los valores del coeficiente de DCT y el valor de DQT (Si se utiliza el DQT) se analizan para determinar el número de bits requeridos pa a codificar el bloque o sub-blo ue.
Después, el bloque ó la combinación de sub-bloques que requiere por lo menos el menor número de bits para codificar se selecciona para representar ei segmento de imagen. Por ejemplo, dos sub-bloques de 8x8, seis sub- bloques de 4x4, y ocho sub-bloques de 2x2 pueden seleccionarse para representar el segmento de imagen. El bloque seleccionado o combinación de subbloques se acomoda adecuadamente en orden en un bloque de 16x16. Los valores del coeficiente de DCT/DQT entonces pueden experimentar el peso de frecuencia, cuantificación, y codificación (tal como la codificación de longitud variable) , en preparación para la transmisión. Aunque la técnica de ABSDCT descrita en lo anterior se realiza notablemente bien, es computacionalmente intensiva. De este modo, la implementación del hardware compacto de la técnica puede ser dificil. Se desea una técnica alternativa que pueda hacer la implementación de hardware más eficiente. Un _ método de compresión de imágenes y sistema que es computacionalmente más eficiente se proporciona por la presente invención en la forma descrita en lo siguiente.
SUMARIO DE LA INVENCIÓN La presente invención es un sistema y método de compresión de imágenes que utiliza bloques de tamaño adaptable y sub-bloques de datos de coeficiente de Transformación de Coseno Discreto. En una modalidad, un bloque de 16x16 pixeles se ingresa a un codificador. El codificador comprende un elemento de asignación de tamaño de bloque, que divide el bloque de entrada de pixeles para el procesamiento. La asignación de tamaño de bloque se basa en las variaciones del bloque de entrada y los bloques subdivididos . En general, áreas con mayores variaciones se subdividirán en bloques más chicos, mientras que las áreas con variaciones más chicas no se subdividirán, con la condición de que los valores de la media del bloque y sub-bloque caigan en diferentes rangos predeterminados. De este modo, primero el umbral de variación de un bloque se modifica a partir de su valor nominal dependiendo de su valor promedio, y después de la variación del bloque se compara con un umbral, y si la variación es mayor que el umbral, entonces, se subdivide el bloque. La asignación de tamaño de bloque se proporciona a un elemento de transformación, que transforma los datos de pixeles en los datos de dominio de frecuencia. La transformación se realiza solamente en el bloque y sub-bloque seleccionados a través de la asignación dei tamaño de bloque. Los datos de transformación entonces experimentan la cuantificación y serialización. Por ejemplo, el barrido en zigzag puede utilizarse para serializar los datos para producir una corriente de datos. La corriente de datos entonces puede codificarse por un codificador de longitud variable en preparación para la transmisión. Los datos codificados se envian a través de un canal de transmisión a un codificador, donde los datos de pixeles se reconstruyen en la preparación para el despliegue.
BREVE DESCRIPCIÓN DE LOS DIBUJOS Las características, objetos y ventajas de la presente invención se volverán más aparentes a partir de la descripción detallada establecida a continuación cuando se tome junto con los dibujos en los cuales caracteres de referencia similares se identifican correspondientemente a través de los mismos y en donde: La Figura 1 es un diagrama de bloque de un sistema de procesamiento de imágenes que incorpora el sistema de asignación de tamaño de bloque basado en la variación y método de la presente invención; La Figura 2 es un diagrama de flujo que ilustra las etapas de procesamiento implicadas en la asignación de tamaño de bloque basada en la variación; Las Figuras 3a, 3b, y 3c ilustran una asignación de tamaño de bioque ejemplar, la descomposición del árbol cuádruple correspondiente, y los datos de PQR correspondientes.
DESCRIPCIÓN DETALLADA DE LAS MODALIDADES PREFERIDAS Para poder facilitar la transmisión digital de señales digitales y disfrutar los beneficios correspondientes, generalmente jas necesario emplear cierta forma de compresión de señales. Para lograr alta definición en una imagen resultante, también es importante que la alta calidad de la imagen se mantenga. Además, la eficiencia computacional se desea para implementación de hardware compacto, lo cual es importante en muchas aplicaciones. La presente invención proporciona un sistema o aparato y método de compresión de imágenes que toma en cuenta la calidad de imagen y la eficiencia computacional en realizar la compresión de imágenes. La compresión de imágenes de la presente invención se basa en las técnicas de transformación de coseno discreto (DCT) . Generalmente, una imagen que se procesa en el dominio digital puede componerse de datos de pixeles di ididos en una disposición de bloques no traslapantes de NxN de tamaño. Un DCT bidimensional puede formarse en cada bloque. El DCT bidimensional se define por la siguiente relación: aU-)A \=?ví 2m + \)pk~\ ¡(In + Dpl^ ? ,,.., . f 1. i/*=0 donde <*W-m U ¡f k ? 0 . y x (m, n) es la ubicación de pixel (m, n) dentro de un bloque de NxM, y X (k,l ) es el coeficiente de DCT correspondiente. Puesto que los valores de pixeles no son negativos, el componente X (0, 0) de DCT siempre es positivo y normalmente tiene la mayor parte de energía. De hecho, para imágenes típicas, la mayor parte de la energía de transformación se concentra alrededor del componente X (0, 0) . Esta compactación de energía hace adecuadamente la técnica de DCT tal como un método de compresión atractivo. La técnica de compresión de imágenes de la presente invención utiliza la codificación adaptable del contraste para lograr reducción de proporción de bits adicional. Se ha observado que la mayor parte de las imágenes naturales se hacen de áreas de variación relativamente lentas llanas, y áreas ocupadas tales como limites de objeto y textura de alto contraste. Los esquemas de codificación adaptable de contraste toman ventaja de este factor asignando más bits a las áreas ocupadas y menos bits a las áreas menos ocupadas. La codificación adaptable en contraste también es útil para reducir el efecto de bloqueo. En la implementación de otras técnicas de codificación de DCT, el efecto de bloqueo es la degradación más importante para la calidad de imagen. Además, el efecto de bloqueo tiende a ser más perceptible en" áreas ocupadas de la imagen. Sin embargo, se ha comprendido que el efecto de bloqueo se reduce cuando se utiliza un DCT de tamaño más chico. El efecto de bloqueo se vuelve virtualmente invisible cuando se utiliza un DCT de 2x2, aunque el bit por rendimiento de pixeles puede sufrir. De este modo, la codificación adaptable de contraste puede reducir el efecto de bloqueo asignando tamaños de bloque más chicos (y con esto más bits) a las áreas ocupadas y tamaños de bloque más grandes a las áreas relativamente en blanco. Otra característica de la presente invención es que utiliza codificación de intra-tramas (procesamiento espacial) en lugar de codificación de tramas internas (procesamiento de espacio temporal) . Una razón para la adopción de codificación de intra-tramas es la alta complejidad del receptor requerida para procesar las señales de codificación de tramas internas. La codificación de tramas internas c rrare inherentemente múltiples compensadores de tramas además de más circuitos de procesamiento complejos. En algunas aplicaciones, la complejidad reducida se necesita para implementación actual. Una segunda razón para utilizar la codificación de intra-tramas es que puede existir una situación, o material de programación, que pueda hacer una interrupción del esquema de codificación de espacio temporal y desempeño deficiente. Por ejemplo, películas de 24 tramas por segundo pueden caer en esta categoría, debido al tiempo de integración, debido a que el obturador mecánico es relativamente corto. El tiempo de integración corto permite un mayor grado de almenado temporal. La conjetura de la correlación de trama a trama se interrumpe por el movimiento rápido a medida que se vuelve corcoveante. Una razón* adicional para utilizar la codificación de intra-tramas es que un esquema de codificación de espacio temporal es más dificil de estandarizar cuando se implican ambas frecuencias de linea de energía de 50 Hz y 60 Hz . La televisión actualmente transmite señales en ya sea 50 Hz o 60 Hz . El uso de un esquema de intra-tramas, que es un procedimiento digital, puede adaptarse a la operación de 50 Hz o 60 HL. G aún a películas de 24 tramas por segundo al cambiar la proporción de tramas contra la resolución espacial . Para propósitos de procesamiento de imágenes, la operación de DCT se realiza en datos de pixeles que se dividen en una exposición de bloques no traslapantes . Nótese que aunque los tamaños de bloque se discuten en la presente como siendo de NxN de tamaño, se visualiza que varios tamaños de bloque pueden utilizarse. Por ejemplo, un tamaño de bloque de NxM puede utilizarse donde N y M son números enteros con M siendo mayor que o menor que N. Otro aspecto importante es que el bloque es divisible en por lo menos un nivel de sub-bloques, tal como N/ixN/i, N/ixN/j, N/ixM/j, y etc., donde i y j son números enteros. Además, el tamaño de bloque ejemplar como se discute en la presente es un bloque de 16x16 pixeles con el bloque correspondiente y sub-bloques de coeficientes de DCT. Se visualiza además que otros diversos números enteros, tales como números enteros nones o pares pueden utilizarse, por ejemplo, 9x9. _ Con referencia ahora a la Figura 1, se muestra un sistema 100 de procesamiento de imágenes que incorpora el sistema de compresión de la presente invención. El sistema 100 de procesamiento de imágenes comprende un codificador 102 que comprende una señal de video recibida. La señal comprimida se t asmite a través de un canal 104 de transmisión y se recibe por un decodificador 106. El decodificador 106 decodifica la señal recibida en muestras de imágenes, que pueden entonces desplegarse. En general, una imagen se divide en bloques de pixeles para el procesamiento. Una señal de color puede convertirse de espacio RGB a espacio YC?C2, con Y siendo la lumi iscencia o componente de brillantez, y Ci y C siendo la crominancia, o componentes de_ color. Debido a la baja sensibilidad espacial del ojo al color, muchos sistemas sub-muestrean los componentes de Ci y C¿ por un factor de cuatro en las direcciones horizontal y vertical. Sin embargo, no es necesario el sub-muestreo . Una imagen de alta resolución, conocida como formato de 4:4:4, puede ser muy útil o necesaria en algunas aplicaciones tales como las referidas para abarcar "el cine digital". Dos representaciones de YC?C2 posibles son, la representación YIQ y la representación YUV, ambas de las cuales se conocen bien en la técnica. También es posible emplear una variación de la representación YUV conocida como YCbCr. En una modalidad preferida, cada uno de los componentes Y, Cb y Cr se procesa sin el sub-muestreo. De este modo, una entrada de un bloque de 16x16 pixeles se proporciona al codificador 102. El codificador 102 comprende un elemento 108 de asignación de tamaño de bloque, que realiza la asignación de tamaño de bloque en preparación para la compresión de video. El elemento 108 de asignación de tamaño de bloque determina la descomposición de los bloques del bloque de 16x16 basándose en las características perceptivas de la imagen en el bloque. La asignación de tamaño de bloque subdivide cada bloque de 16x16 en bloques mas chicos en una forma de árbol cuádruple dependiendo de la actividad dentro de un bloque de 16x16. El elemento 108 de asignación de tamaño de bloque genera datos del árbol cuádruple, llamados datos PQR, cuya longitud puede ser entre 1 y 21 bits. De este modo si la asignación de tamaño de bloque determina que un bloque de 16x16 se dividirá, el bit R de datos PQR se establece y es seguido por cuatro bits adicionales de datos P correspondientes a los cuatro bloques de 8x8 divididos. Si la asignación de tamaño de bloque determina que cualquiera de los bloques de 8x8 se dividirá, entonces se agregan cuatro bits adicionales de datos Q para cada bloque de 8x8 subdivididos . Con referencia ahora a la Figura 2, se proporciona un diagrama de flujo que muestra detalles de la operación del elemento 108 de asignación de tamaño de bloque. El algoritmo utiliza la operación de un bloque como una métrica en la decisió para subdividir un bloque. Ai ir L l z en la etapa 202, se lee un blorue de 16x16 pixeles. En la etapa 204, se calcula la variación vi 6 del bloque de 16x16. La variación se calcula como sigue: donde N=16, y xLíJ es el pixel en la fila iava, la columna java dentro del bloque NxN. En la etapa 206, primero se modifica el umbral T16 de variación para proporcionar un nuevo umbral T'16 si el valor promedio del bloque está entre dos valores predeterminados, entonces la variación de bloque se compara contra el nuevo umbral T'16. Si variación vl6 no es mayor que el umbral T16, entonces en la etapa 208, se escribe la dirección de inicio del bloque de 16x16, y el bit R de los datos PQR se establece en cero para indicar que el bloque de 16x16 no se subdivide. El algoritmo entonces lee el siguiente bloque de 16x16 pixeles. Si la variación vl6 es mayor que el umbral T16, entonces en la etapa 210, el bit R de los datos PQR se establece en 1 para indicar que el bloque de 16x16 se subdividirá en cuatro bloques de 8x8. Los cuatro bloques de 8x8, i=l : 4 se consideran secuencialmente para la subdivisión adicional, como se muestra en la etapa 212. Para cada bloque de 8x8, la variación v8 , se calcula, en la etapa 214. En la etapa 216, primero se modifica el umbral T8 de variación para proporcionar un nuevo umbral Tf 8 si el valor promedio del bloque está entre dos valores predeterminados, . entonces la variación de bloque se compara con este nuevo umbral. Si la variación v8L no es mayor que el umbral T8, entonces en la etapa 218, se escribe la dirección de inicio del bloque de 8x8, y el bit Q correspondiente, Qi, se establece en cero. El siguiente bloque de 8x8 entonces se procesa. Si la variación v8?r es mayor que el umbral T8, entonces en la etapa 220, el bit Q correspondiente, Ql r se establece en 1 para indicar que el bloque de 8x8 se subdividirá en .cuatro bloques de 4x4. Los cuatro bloques de 4x4, jx=l:4, se consideran secuencialmente para la subdivisión adicional, como se muestra en la etapa 222. Para cada bloque de «4x4, la variación v4±1/ se calcula en la etapa 224. En la etapa 226, primero se modifica el umbral T4 de variación para proporcionar un nuevo umbral T'4, si el valor promedio del bloque está entre dos valores predeterminados, entonces la variación de bloque se compara con este nuevo umbral. Si la variación v4?? no es mayor que el umbral T4, entonces en la etapa 228, se escribe la dirección del bloque de 4x4, y el bit P correspondiente, P , se establece en O . El siguiente bloque de 4x4 entonces se procesa. Si la variación v4 , , es mayor que el umbral T4, entonces en la etapa 230, el bit P correspondiente, P, , se establece en 1 para indicar que el bloque de 4x4 se subdividirá en cuatro bloques de 2x2. Además, se escribe la dirección de los cuatro bloques de 2x2. Los umbrales T16, T8 y T4 pueden ser constantes predeterminadas . Esto se conoce como la decisión dificil. Alternativamente, una decisión adaptable o flexible puede implementarse. La decisión flexible varia los umbrales para las variaciones dependiendo del valor promedio de pixeles de los bloques de 2Nx2N donde N puede ser 8, 4 o 2. De este modo, las funciones de los valores promedio de pixeles, pueden utilizarse como los umbrales. Para propósitos de ilustración, considérese el siguiente ejemplo. Dejemos que los umbrales de variación predeterminados para el componente Y sean 50, 1100, y 880 para los bloques de 16x16, 8x8 y 4x4, respectivamente. En otras palabras, T16 = 50, T8 = 1100, Y T16 = 880. Dejemos que el rango de valores promedio sea 80 y 100. Supongamos que la variación calculada para el bloque de 16x16 es 60. Puesto que 60 y su valor promedio 90 es mayor que T16, el bloque de 16x16 se subdivide en cuatro sub-bloques de 8x8. Supongamos que las variaciones calculadas para los bloques de 8x8 son 1180, 935, 980, y 1210. Puesto que dos de los bloques de 8x8 tienen variaciones que exceden T8, estos dos bloques se subdividen adicionalmente para producir un total de ocho sub-bloques de 4x4. Finalmente, supongamos que las variaciones de los ocho bloques de 4x4 son 620, 630, 670, 610, 590, 525, 930, y 690, con valores promedio correspondientes de 90, 120, 110, 115. Puesto que el valor promedio del primer bloque de 4x4 cae en el rango de (80, 100), su umbral se disminuirá a T' 4=200, el cual es menor que 880. Asi, este bloque de 4x4 se subdividirá, asi como el séptimo bloque de 4x4. La asignación de tamaño de bloque resultante se muestra en la Figura 3a. La descomposición del árbol cuádruple correspondiente se muestra en la Figura 3B . Adicionalmente, los datos de PQR generados por esta asignación de tamaño de bloque se muestran en la Figura 3c. Nótese que un procedimiento similar se utiliza para asignar los tamaños de bloque para los componentes C- y C_ de color. Los componentes de color pueden diezmarse horizontalmente, verticalmente o ambos. Adicionalmente, nótese que aunque la asignación de tamaño de bloque se ha descrito como un procedimiento de arriba abajo, en el cual se evalúa primero el bloque más largo IC.ilC en el presente ejemplo^- un procedimiento de abajo hacia arriba puede utilizarse en su lugar. El procedimiento de abajo hacia arriba devaluará los bloques más chicos (2x2 en el presente ejemplo) primero. Con referencia nuevamente a la Figura 2, el resto del sistema 110 de procesamiento de imágenes se describirá. Los datos de PQR, junto con las direcciones de los bloques seleccionados, se proporcionan a un elemento 110 de DCT. El elemento 110 de DCT utiliza los datos de PQR para realizar las transformaciones de coseno discreto de los tamaños apropiados en bloques seleccionados. Solamente los bloques seleccionados necesitan experimentar el procesamiento de DCT. El sistema 100 de procesamiento de imágenes puede comprender opcionalmente el elemento 112 de DQT para reducir la redundancia entre los coeficientes de CD de los DCT. Un coeficiente CD se encuentra en la esquina izquierda superior de cada bloque de DCT. Los coeficientes de CD son, en general, grandes comparados con los coeficientes de CA. La discrepancia en los tamaños hace dificil designar un codificador de longitud variable eficiente. Por consiguiente, es ventajoso reducir la redundancia entre los coeficientes de CD. El elemento 112 de DQT realiza los DCT 2-D sobre ios coeficientes de CD, tomados 2x2 a la vez. Al ,'1 iniciar con bloques de 2x2 dentro de los bloques 4x4, un DCT de 2-D se realiza en los cuatro coeficientes de CD. Este DCT de 2x2 se llama la transformación del árbol cuádruple diferencial o DQT, de los cuatro coeficientes de CD. Después, el coeficiente de CD del DQT junto con el árbol que está cerca de los coeficientes de CD con un bloque de 8x8 se utiliza para calcular el siguiente nivel DQT. Finalmente, los coeficientes de CD de los cuatro bloques de 8x8 dentro de un bloque de 16x16 se utilizan para calcular el DQT. De este modo, en un bloque de 16x16, existe un coeficiente de CD real y el resto son con coeficientes de CA correspondientes al DCT y DQT. Los coeficientes de transformación (ambos DCT y DQT) se proporcionan a un cuantificador 114 para la cuantificación. En una modalidad preferida, los coeficientes de DCT se cuantifican utilizando las máscaras de peso de frecuencia (FWM) y un factor de escala de cuantificación. Una FWM es una tabla de pesos de frecuencias de las mismas dimensiones que el bloque de los coeficientes de DCT de entrada. Los pesos de frecuencia aplican diferentes pesos a los diferentes coeficientes de DCT. Los pesos se diseñan para enfatizar las muestras de entrada que tiene contenido de frecuencia al que el sistema visual humano es más sensible, y para desenfatizar las muestras _ qu<~ tienen contenido de frecuencia al que es menos sensible el sistema visual. Los pesos también pueden diseñarse para basarse en factores tales como distancias de visión, etc. Los pesos se seleccionan basándose en los datos empíricos. Un método para diseñar las máscaras de peso para coeficientes de DCT de 8x8 se describe en ISO/IEC JTC1 CD 10918, "Compresión digital y codificación de imágenes fijas de tono continuo-parte 1: Requerimientos y guias", Organización de Estándares Internacionales, 1994, la cual se incorpora en la presente para referencia. En .general dos FWM se diseñan, una para el componente de luminiscencia y una para los componentes de prominancia. Las tablas de FWM para los tamaños de bloque de 2x2, 4x4 se obtienen por decimación y 16x16 por interpolación de éste para el bloque de 8x8. El factor de escala controla la cavidad y la proporción de bits de los coeficientes cuantificados . De este modo, cada coeficiente de DCT se cuantifica de acuerdo con la relación: donde DCT(i,j) es el coeficiente DCT de entrada, fwm(i,j) es la máscara de peso de frecuencia, q es le factor de escala, y DCTq(i,j) es el coeficiente cuantificado. Nótese que dependiendo del signo de coeficiente de DCT, el primer término dentro de los corchetes se redondea hacia arriba o hacia abajo. Los coeficientes de DQT también se cuantifican utilizando una 5 máscara de peso adecuada. Sin embargo, múltiples tablas o máscaras pueden utilizarse, y aplicarse a cada uno de los componentes de Y, Cb, y Cr. Los coeficientes cuantificados se proporcionan en un serializador 116 de barrido en zigzag. El 10 serializador 116 barre los lotes de coeficientes cuantificados en una forma en zigzag para producir una corriente serializada de coeficientes cuantificados. Un número de diferentes diseños de barrido en zigzag, asi como diseños diferentes al zigzag también puede 5 seleccionarse. Una técnica preferida emplea tamaños de bloque de 8x8 para el barrido en zigzag, aunque otros tamaños pueden emplearse. Nótese que el serializador 116 de barrido en zigzag puede colocarse ya sea antes o después del 0 cuantificador 114. Los resultados netos son los mismos. En cualquier caso, la corriente de coeficientes cuantificados se proporciona a un codificador 118 de longitud variable. El codificador 118 de longitud variable puede hacer uso de codificación de coordenada ~ Z diferencial de cero seguida por la codificación de Í Huffman. Esta técnica se discute en detalle en las Patentes Norteamericanas antes mencionadas Nos. 5,021,891, 5,107,345, y 5,452,104, y se resume en la misma. Un codificador de coordenada diferencial puede tomar los coeficientes cuantificados y separar el cero de los coeficientes no nulos. Los valores iniciales nulos son referidos como valores de coordenada diferencial, y se codifican mediante Huffman. Los valores no nulos se codifican separadamente por Huffman. Una codificación de Huffman modificada de los coeficientes cuantificados también es posible y se utiliza en la modalidad preferida. Aqui, después del barrido en zigzag, un codificador de coordenada diferencial determinará los pares de tamaño/coordenada diferencial dentro de cada bloque de 8x8. Estos pares de tamaño/coordenada diferencial se codifican entonces mediante Huffman. Los códigos de Huffman se diseñan a partir de las estadísticas medidas o teóricas de una imagen. Se ha observado que la mayoría de las imágenes naturales se hacen de áreas en blanco o de variación relativamente lenta y áreas ocupadas tales como limites y objetos y texturas de alto contraste. Los codificadores de Huffman con transformaciones de dominio-frecuencia tales como el DCT explotan estas características al asignar más bits a las áreas ocupadas y menos bits a las áreas en blanco. En general, los codificadores de Huffman hacen uso de tablas de consulta para codificar los valores de coordenada diferencial y no nulos. Múltiples tablas se .utilizan generalmente, con 3 tablas siendo preferidas en la presente invención, aunque 1 ó 2 pueden emplearse, según se desee. La señal de imagen comprimida generada por el codificador 102 se transmite al decodificador 106 mediante el canal 104 de transmisión. Los datos de PQR que contienen la información de la asignación de tamaño de bloque, también se proporcionan al decodificador 106. El decodificador 106 comprende un decodificador 120 de longitud variable, que decodifica los valores de coordenada diferencial y los valores no nulos. La salida del codificador 120 de longitud variable se proporciona aun serializador 122 de barrido en zigzag inverso" que ordena los coeficientes de acuerdo con el esquema de barrido empleado. El serializador 122 de barrido en zigzag inverso recibe los datos de PQR para ayudar a ordenar adecuadamente los coeficientes en un bloque de coeficiente compuesto. El bloque compuesto se proporciona a un cuantificador 124 inverso, para deshacer el procesamiento debido la uso de las máscaras de pc3~> frecuencia.
El bloque de coeficiente entonces se proporciona a un elemento 126 de^IDQT, seguido por un elemento 128 de IDCT, si la transformación de Árbol Cuádruple Diferencial se ha aplicado. De otra manera el bloque de coeficiente se proporciona directamente a elementos 128 de IDCT. El elemento 126 de IDQT y el elemento 128 de IDCT transforman inversamente los coeficientes para producir un bloque de datos de pixeles . Los datos de pixeles entonces pueden tener que interpolarse, convertirse en formato de RGB y después almacenarse para su despliegue futuro. Por consiguiente, se presenta un sistema y método para compresión de imágenes que realiza la asignación de tamaño de bloque basándose en la variación de pixeles. La asignación de tamaño de bloque basada en la variación ofrece varias ventajas. Debido a que la Transformación de Coseno Discreto se realiza después de que se determina los tamaños de bloque, se logra el cálculo eficiente. La transformación computacionalmente intensiva necesita sólo realizarse en los bloques seleccionados. Además, el proceso de selección de bloque es eficiente, ya que la variación de los valores de pixeles es matemáticamente simple para calcular. Aún otra ventaja de la asignación de tamaño ~de bloque basada en la variación es que se basa perceptivamente . La variación de pixeles es una medición de la actividad en un bloque y proporciona la indicación de la presencia de bordes, texturas, etc. Tiende a capturar los detalles de un bloque mucho mejor que las mediciones tales como el 5 promedio de los valores de pixeles. De este modo, el esquema basado en la variación de la presente invención asigna bloques más chicos a regiones con más bordes y bloques más grandes a las regiones más llanas. Como resultado, la calidad permanente puede lograrse en las 10 imágenes reconstruidas. Aún otra ventaja importante es que puesto que la asignación del tamaño de bloque se hace antes de la cuantificación, una mayor flexibilidad se ofrece al controlar la proporción de bits y la calidad. Puesto que 15 el umbral de variación se adapta al medio local, los bloques chicos se asignan aún en áreas relativamente obscuras. Esto conserva los detalles en todas las áreas que están por arriba de sólo el umbral de visibilidad notable. Además, la compresión de imágenes basada en la 20 variación proporciona una degradación gallarda de la calidad de imagen cuando el factor de escala de cuantificación se cambia de valores bajos a elevados a diferencia de los métodos tales como MPEG. Esto es particularmente crucial para aplicaciones tales como en Z Z el área del cine digital.
Con el video digital en alta demanda, la piratería es una amenaza seria. La~ marca de agua digital es un requerimiento importante para detener la infracción de los derechos reservados, y la pérdida de ingresos. Ya que la marca de agua se hace en áreas de una imagen que es perceptiblemente significante, la asignación de tamaño de bloque basada en la variación es un candidato natural para la marca de agua. La descripción previa de las modalidades preferidas se proporciona para permitir que una persona con experiencia en la técnica haga o utilice la presente invención. Las diversas modificaciones a estas modalidades serán fácilmente aparentes para aquellos expertos en la técnica, y los principios genéricos definidos en la presente pueden aplicarse a otras modalidades sin el uso de la facultad inventiva. De este modo, la presente invención no se pretende para limitarse a las modalidades mostradas en la presente pero debe estar de acuerdo con el alcance más amplio consistente con los principios y las características novedosas descritas en la presente.

Claims (35)

NOVEDAD DE LA INVENCIÓN Habiendo descrito la presente invención se considera como novedad y por lo tanto se reclama como propiedad lo descrito en las siguientes reivindicaciones.
1. Un método para determinar una asignación de tamaño de bloque para un bloque de entrada de pixeles de imágenes que se utiliza en el bloque de entrada de compresión, caracterizado porque comprende las etapas de: leer un bloque de datos de pixeles; generax una asignación de tamaño de bloque basándose en las variaciones de los valores de pixeles del bloque de datos de pixeles y bloques subdivididos del bloque de datos de pixeles; y proporcionar una estructura de datos que contiene información sobre la asignación de tamaño de bloque .
2. El método de conformidad con la reivindicación 1, caracterizado porque la etapa de generar además comprende las etapas de: determinar una variación de valores de pixeles del bloque de datos de pixeles; comparar la variación con un umbral; hacer una decisión para subdividir el bloque basándose en el resultado de la etapa de comparar; si la decisión es. subdividir el bloque, entonces repitiendo las etapas de determinar, comparar, y hacer para cada bloque subdividido hasta que se satisfaga los criterios predeterminados; y designar como asignación de tamaño de bloque a cada bloque que no se subdivide más.
3. El método de conformidad con la reivindicación 2, caracterizado porque la etapa de hacer una decisión exige que un bloque se subdivida si la variación es mayor que el umbral.
4. El método de conformidad con la reivindicación 3, donde el umbral ae predetermina.
5. El método de conformidad con la reivindicación 3, caracterizado porque el umbral es una función del medio de valores de pixeles del bloque que se evalúa.
6. El método de conformidad con la reivindicación 2, caracterizado porque el umbral cambia para cada nivel de subdivisión.
7. El método de conformidad con la reivindicación 2, caracterizado porque los criterios predeterminados para ya no repetir más las etapas de determinar, comparar, y hacer se basan en un tamaño de bloque minimo preseleccionado de datos de pixeles.
8. Un sistema de compresión de imágenes para comprimir un bloque de datos de pixeles, caracterizado porque comprende: medios de asignación de tamaño de bloque para seleccionar el bloque o bloques subdivididos del bloque que se comprime basándose en las variaciones de los valores de pixeles del bloque de datos de pixeles y los bloques súbdivididos del bloque de datos de pixeles; medios de transformación para transformar los datos de pixeles del bloque seleccionado o bloques subdivididos en datos de dominio de frecuencia; medios cuantificadores para cuantificar los datos de dominio de frecuencia; medios serializadores para barrer los datos cuantificados en una corriente serializada de datos; y medios de codificación de longitud variable para codificar la corriente serializada de datos en la preparación para la transmisión.
9. El sistema de conformidad con la reivindicación 8, caracterizado porque el medio de asignación de tamaño de bloque determina una variación de los valores de pixeles para el bloque de datos de pixeles, compara la variación con un umbral, hace una decisión para subdividir el bloque basándose en el resultado de la comparación, si la decisión es subdividir el bloque, entonces se repite la determinación de la variación, la comparación con un umbral, y la decisión para subdividir cada bloque subdividido hasta que se satisfaga un criterio predeterminado, y designa como asignación de tamaño de bloque a cada bloque que no se subdivide más.
10. El sistema de conformidad con la reivindicación 9, caracterizado porque la decisión de subdividir exige que un bloque se subdivida si la variación es mayor que el umbral.
11. El sistema de conformidad con la reivindicación 10, caracterizado porque el umbral se predetermina .
12. El sistema de conformidad con la reivindicación 10, caracterizado porque el umbral es una función del medio de valores de pixeles del bloque que se evalúa.
13. El sistema de conformidad con la reivindicación 9, caracterizado porque el umbral cambia para cada nivel de subdivisión.
14. El sistema de conformidad con la reivindicación 9, caracterizado porque los criterios predeterminados para ya no subdividir se basan en un tamaño de bloque minimo seleccionado de los datos de pixeles que se logran.
15. El sistema de conformidad con la reivindicación 8, caracterizado porque el medio de transformación realiza una Transformación de Coseno Discreto.
16. El sistema de .conformidad con la reivindicación 8, caracterizado porque el medio de transformación realiza una Transformación de Coseno Discreto seguido por una Transformación de Árbol Cuádruple Diferencia 1.
17. El sistema de conformidad con la reivindicación 8, caracterizado porque el medio serializador comprende un escáner en zigzag.
18. El sistema de conformidad con la reivindicación 17, caracterizado porque el escáner en zigzag emplea un tamaño de bloque de 8x8 para el barrido en zigzag.
19. El sistema de conformidad con la reivindicación 8, caracterizado porque el medio de codificación de longitud variable comprende un codificador de Huffman.
20. El sistema de conformidad con la reivindicación 19, caracterizado porque el codificador de Huffman se emplea tablas de consulta múltiples para codificar los valores de coordenada diferencial y no nulos .
21. El sistema de _ conformidad con la reivindicación 20, caracterizado porque existen tres tablas de consulta.
22. Un método para comprimir un bloque de datos de pixeles de una imagen, caracterizado porque comprende las etapas de: leer un bloque de datos de pixeles; generar una asignación de tamaño de bloque basándose en las variaciones de l*ps valores de pixeles del bloque de datos de pixeles y bloques subdivididos del bloque de datos de pixeles; proporcionar una estructura de datos que contenga información sobre la asignación del tamaño de bloque; transformar los datos de "pixeles de los bloques seleccionados como se indica por una estructura de datos en una representación de dominio de frecuencia; cuantificar los datos de dominio de frecuencia; barrer los datos cuantificados en una corriente serializada de datos; y codificar la corriente serializada de datos en preparación para la transmisión.
23. El método de conformidad con la reivindicación 22, caracterizado porque la etapa de generar además comprende las etapas de: determinar una variación de valores de pixeles para el bloque de datos de pixeles; comparar la variación con un umbral; hacer una decisión para subdividir el bloque basándose en el resultado de la etapa de comparar; si la decisión es subdividir el bloque, entonces repetir las etapas de determinar, comparar, y hacer para cada bloque subdividido hasta que se satisfaga un criterio predeterminado; y designar como asignación de tamaño de bloque a cada bloque que no se subdivide más.
24. El método de conformidad con la reivindicación 23, caracterizado porque la etapa de hacer una decisión exige que un bloque se subdivida si la variación es mayor que el umbral.
25. El método de conformidad con la reivindicación 24, caracterizado porque el umbral se predetermina .
26. El método de conformidad con la reivindicación 24, caracterizado porque el umbral es una función del medio de valores de pixeles del bloque que se evalúa.
27. El método de conformidad con la reivindicación 23, caracterizado porque el umbral cambia para cada nivel de subdivisión.
28. El método de conformidad con la reivindicación 23, caracterizado porque los criterios predeterminados para no repetir ya las etapas de determinar, comparar, y hacer se basan en un tamaño de bloque minimo preseleccionado de datos de pixeles.
29. El método de conformidad con la reivindicación 22, caracterizado porque la Transformación de Coseno Discreto se realiza durante la etapa de transformación.
30. El método de conformidad con la reivindicación 22, caracterizado porque una Transformación de Coseno Discreto se realiza seguido por una Tranformación de Árbol Cuádruple Diferencial durante la etapa de transformación.
31. El método de conformidad con la reivindicación 22, caracterizado porque el barrido en zigzag se realiza durante la etapa de barrido.
32. El método de conformidad con la reivindicación 31, caracterizado porque el barrido en zigzag se realiza utilizando un tamaño de bloque de 8x8.
33. El método de conformidad con la reivindicación 22, caracterizado porque la codificación de Huffman se realiza durante la etapa de codificación.
34. El sistema de conformidad con la reivindicación 33, caracterizado porque la codificación de Huffman emplea tablas de consulta múltiples para codificar los valores de coordenada diferencial y no nulos.
35. El sistema de conformidad con la reivindicación 34, caracterizado porque existen tres tablas de consulta.
MXPA02004577A 1999-11-08 2000-11-08 Compresion de imagenes de dct de tamano de bloque adaptable basada en variacion. MXPA02004577A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/436,085 US6529634B1 (en) 1999-11-08 1999-11-08 Contrast sensitive variance based adaptive block size DCT image compression
PCT/US2000/030883 WO2001035673A1 (en) 1999-11-08 2000-11-08 Variance based adaptive block size dct image compression

Publications (1)

Publication Number Publication Date
MXPA02004577A true MXPA02004577A (es) 2002-11-29

Family

ID=23731055

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA02004577A MXPA02004577A (es) 1999-11-08 2000-11-08 Compresion de imagenes de dct de tamano de bloque adaptable basada en variacion.

Country Status (18)

Country Link
US (1) US6529634B1 (es)
EP (1) EP1230804B1 (es)
JP (2) JP5289659B2 (es)
KR (1) KR100740818B1 (es)
CN (1) CN1186942C (es)
AR (1) AR033655A1 (es)
AT (1) ATE538598T1 (es)
AU (1) AU782176B2 (es)
BR (1) BR0015341B1 (es)
CA (1) CA2389410C (es)
ES (1) ES2376540T3 (es)
HK (1) HK1053565A1 (es)
IL (2) IL149455A0 (es)
MX (1) MXPA02004577A (es)
RU (1) RU2273112C2 (es)
TW (1) TW517500B (es)
WO (1) WO2001035673A1 (es)
ZA (1) ZA200203276B (es)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69941023D1 (de) * 1998-09-21 2009-08-06 Sony Corp Kodier- und dekodierverfahren sowie vorrichtung
GB2364415B (en) * 2000-06-30 2004-10-20 Post Office Image processing
US6972868B1 (en) * 2000-11-09 2005-12-06 Hewlett-Packard Development Company, L.P. Image data compression method
US7649947B2 (en) * 2001-06-05 2010-01-19 Qualcomm Incorporated Selective chrominance decimation for digital images
US6870963B2 (en) 2001-06-15 2005-03-22 Qualcomm, Inc. Configurable pattern optimizer
US6735254B2 (en) * 2001-06-29 2004-05-11 Qualcomm, Inc. DCT compression using Golomb-Rice coding
US7483581B2 (en) * 2001-07-02 2009-01-27 Qualcomm Incorporated Apparatus and method for encoding digital image data in a lossless manner
US6650784B2 (en) * 2001-07-02 2003-11-18 Qualcomm, Incorporated Lossless intraframe encoding using Golomb-Rice
US7630563B2 (en) * 2001-07-19 2009-12-08 Qualcomm Incorporated System and method for decoding digital image and audio data in a lossless manner
EP1424859A4 (en) * 2001-08-02 2010-01-13 Sony Corp IMAGE PROCESSING APPARATUS AND METHOD AND IMAGE PROCESSING PROGRAM
AU2002335743A1 (en) * 2001-09-14 2003-04-01 The Regents Of The University Of Michigan Audio distributor
AU2002346413A1 (en) * 2001-11-16 2003-06-10 Qualcomm Incorporated Block size assignment using local contrast ratio
US7742525B1 (en) * 2002-07-14 2010-06-22 Apple Inc. Adaptive motion estimation
JP4800615B2 (ja) * 2002-07-29 2011-10-26 クゥアルコム・インコーポレイテッド ディジタル画像の符号化
US6975773B1 (en) 2002-07-30 2005-12-13 Qualcomm, Incorporated Parameter selection in data compression and decompression
JP3679083B2 (ja) * 2002-10-08 2005-08-03 株式会社エヌ・ティ・ティ・ドコモ 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム
JP4541896B2 (ja) * 2002-11-15 2010-09-08 クゥアルコム・インコーポレイテッド 多重記述符合化のための装置及び方法
KR100828353B1 (ko) * 2003-02-05 2008-05-08 삼성전자주식회사 영상 블록 분할 방법 및 그 장치
CN100424717C (zh) * 2003-03-17 2008-10-08 高通股份有限公司 用于提高低比特率视频的视频质量的方法和装置
US7995849B2 (en) * 2003-03-17 2011-08-09 Qualcomm, Incorporated Method and apparatus for improving video quality of low bit-rate video
KR100510137B1 (ko) * 2003-04-30 2005-08-26 삼성전자주식회사 고속 움직임 추정을 위한 참조 픽쳐 및 블록 모드 결정방법, 그 장치, 블록 모드 결정 방법 및 그 장치
HUP0301368A3 (en) * 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
KR100723400B1 (ko) 2004-05-12 2007-05-30 삼성전자주식회사 복수의 룩업테이블을 이용한 디지털 신호 부호화 방법 및장치
US8111752B2 (en) 2004-06-27 2012-02-07 Apple Inc. Encoding mode pruning during video encoding
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
US7792188B2 (en) 2004-06-27 2010-09-07 Apple Inc. Selecting encoding types and predictive modes for encoding video data
CN1809161B (zh) * 2004-06-27 2010-11-17 苹果公司 对编码视频数据选择编码类型和预测模式
US7852916B2 (en) * 2004-06-27 2010-12-14 Apple Inc. Efficient use of storage in encoding and decoding video data streams
FI20050113A (fi) * 2005-02-01 2006-08-02 Paavo Eskelinen Menetelmä kuvainformaation käsittelemiseksi
US7609766B2 (en) * 2005-02-08 2009-10-27 Vixs Systems, Inc. System of intra-picture complexity preprocessing
US20070200738A1 (en) * 2005-10-12 2007-08-30 Yuriy Reznik Efficient multiplication-free computation for signal and data processing
US8595281B2 (en) 2006-01-11 2013-11-26 Qualcomm Incorporated Transforms with common factors
US8849884B2 (en) 2006-03-29 2014-09-30 Qualcom Incorporate Transform design with scaled and non-scaled interfaces
WO2007148428A1 (ja) * 2006-06-20 2007-12-27 Nikon Corporation 画像処理方法、画像処理装置、及び画像処理プログラム
US8606023B2 (en) * 2006-06-26 2013-12-10 Qualcomm Incorporated Reduction of errors during computation of inverse discrete cosine transform
RU2496139C2 (ru) * 2006-06-26 2013-10-20 Квэлкомм Инкорпорейтед Эффективные аппроксимации с фиксированной запятой прямого и обратного дискретных косинусных преобразований
US8699810B2 (en) * 2006-06-26 2014-04-15 Qualcomm Incorporated Efficient fixed-point approximations of forward and inverse discrete cosine transforms
JP4906458B2 (ja) * 2006-09-29 2012-03-28 キヤノン株式会社 画像符号化装置、画像符号化方法
RU2407221C1 (ru) 2006-10-10 2010-12-20 Ниппон Телеграф Энд Телефон Корпорейшн Способ и устройство управления кодированием с внутренним предсказанием, программа для них и запоминающий носитель, который хранит программу
US8542726B2 (en) * 2006-10-17 2013-09-24 Microsoft Corporation Directional and motion-compensated discrete cosine transformation
CN100542298C (zh) * 2007-09-29 2009-09-16 中国科学院计算技术研究所 一种柱面全景视频编码的块尺寸计算方法和传输方法
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
KR101619972B1 (ko) 2008-10-02 2016-05-11 한국전자통신연구원 이산 여현 변환/이산 정현 변환을 선택적으로 이용하는 부호화/복호화 장치 및 방법
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
WO2010116869A1 (ja) * 2009-04-08 2010-10-14 シャープ株式会社 動画像符号化装置および動画像復号装置
KR101624649B1 (ko) * 2009-08-14 2016-05-26 삼성전자주식회사 계층적인 부호화 블록 패턴 정보를 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR101456498B1 (ko) * 2009-08-14 2014-10-31 삼성전자주식회사 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR101487686B1 (ko) * 2009-08-14 2015-01-30 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR20110112168A (ko) * 2010-04-05 2011-10-12 삼성전자주식회사 내부 비트뎁스 확장에 기반한 비디오 부호화 방법 및 그 장치, 내부 비트뎁스 확장에 기반한 비디오 복호화 방법 및 그 장치
US8982961B2 (en) 2010-04-05 2015-03-17 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by using transformation index, and method and apparatus for decoding video by using transformation index
WO2011126283A2 (en) 2010-04-05 2011-10-13 Samsung Electronics Co., Ltd. Method and apparatus for encoding video based on internal bit depth increment, and method and apparatus for decoding video based on internal bit depth increment
WO2011126277A2 (en) 2010-04-05 2011-10-13 Samsung Electronics Co., Ltd. Low complexity entropy-encoding/decoding method and apparatus
SI3697089T1 (sl) * 2010-04-13 2022-01-31 Ge Video Compression, Llc Dedovanje v večdrevesni razčlenitvi niza vzorcev
JP5479225B2 (ja) * 2010-05-27 2014-04-23 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP5765893B2 (ja) * 2010-06-16 2015-08-19 キヤノン株式会社 画像処理装置、撮像装置および画像処理プログラム
JP5741729B2 (ja) * 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
JP5741076B2 (ja) * 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
US8761245B2 (en) 2010-12-21 2014-06-24 Intel Corporation Content adaptive motion compensation filtering for high efficiency video coding
JP2012238927A (ja) * 2011-05-09 2012-12-06 Sony Corp 画像処理装置及び画像処理方法
CN108924563B (zh) 2011-12-19 2022-11-15 索尼公司 图像处理设备和方法
CN103313046B (zh) * 2012-03-06 2019-06-14 中兴通讯股份有限公司 一种残差的表示方法和熵编码输入装置
CN103428485A (zh) * 2012-05-24 2013-12-04 富士通株式会社 图像编码方法及图像解码方法
US8675731B2 (en) 2012-08-13 2014-03-18 Gurulogic Microsystems Oy Encoder and method
US9258389B2 (en) 2012-08-13 2016-02-09 Gurulogic Microsystems Oy Encoder and method
US10333547B2 (en) 2012-08-13 2019-06-25 Gurologic Microsystems Oy Encoder and method for encoding input data using a plurality of different transformations or combinations of transformations
TW201419862A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
TW201419865A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
TW201419863A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
US9177393B2 (en) * 2013-02-04 2015-11-03 Qualcomm Incorporated Mixed mode for frame buffer compression
JP5719410B2 (ja) * 2013-07-25 2015-05-20 日本電信電話株式会社 画像符号化方法、画像符号化装置及び画像符号化プログラム
CN104331855A (zh) * 2014-05-22 2015-02-04 重庆大学 基于.net的鼠标拾取添加位置的数字图像自适应可见水印添加方法
US9392272B1 (en) 2014-06-02 2016-07-12 Google Inc. Video coding using adaptive source variance based partitioning
US9578324B1 (en) 2014-06-27 2017-02-21 Google Inc. Video coding using statistical-based spatially differentiated partitioning
US10554965B2 (en) 2014-08-18 2020-02-04 Google Llc Motion-compensated partitioning
US10291931B2 (en) 2016-10-13 2019-05-14 Ati Technologies Ulc Determining variance of a block of an image based on a motion vector for the block
EP3506633A1 (en) * 2017-12-19 2019-07-03 Axis AB Video encoding method and system
CN108335335B (zh) * 2018-02-11 2019-06-21 北京大学深圳研究生院 一种基于增强图变换的点云属性压缩方法
CN113114934B (zh) * 2021-03-31 2022-08-05 太原理工大学 尿红细胞多焦距视频采集方法与系统
CN117998094B (zh) * 2024-01-30 2024-09-06 广东科技学院 一种多媒体教学视频数据智能处理方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241395A (en) * 1989-08-07 1993-08-31 Bell Communications Research, Inc. Adaptive transform coding using variable block size
US5107345A (en) 1990-02-27 1992-04-21 Qualcomm Incorporated Adaptive block size image compression method and system
US5021891A (en) * 1990-02-27 1991-06-04 Qualcomm, Inc. Adaptive block size image compression method and system
EP0587783B1 (en) * 1991-06-04 1997-10-15 Qualcomm, Inc. Adaptive block size image compression system
US5471248A (en) 1992-11-13 1995-11-28 National Semiconductor Corporation System for tile coding of moving images
KR100276427B1 (ko) * 1993-01-30 2000-12-15 윤종용 화상데이타의 압축 및 복원장치
US5585944A (en) 1994-05-10 1996-12-17 Kaleida Labs, Inc. Method for compressing and decompressing images by subdividing pixel color distributions
JPH0811869A (ja) * 1994-06-27 1996-01-16 Dainippon Printing Co Ltd 紙カートン
KR960013055A (ko) * 1994-09-27 1996-04-20 김광호 조건부 퀴드트리 분할방식의 화상압축방법 및 장치
JPH08205140A (ja) * 1995-01-31 1996-08-09 Canon Inc 画像圧縮装置
US6633611B2 (en) * 1997-04-24 2003-10-14 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for region-based moving image encoding and decoding
JP3570863B2 (ja) * 1997-08-05 2004-09-29 三菱電機株式会社 動画像復号化装置および動画像復号化方法
JPH11164325A (ja) * 1997-11-26 1999-06-18 Oki Electric Ind Co Ltd パノラマ画像生成方法及びそのプログラムを記録した記録媒体

Also Published As

Publication number Publication date
HK1053565A1 (en) 2003-10-24
JP2012199963A (ja) 2012-10-18
IL149455A0 (en) 2002-11-10
TW517500B (en) 2003-01-11
JP2003523652A (ja) 2003-08-05
KR100740818B1 (ko) 2007-07-19
BR0015341A (pt) 2003-07-15
AR033655A1 (es) 2004-01-07
EP1230804A1 (en) 2002-08-14
BR0015341B1 (pt) 2015-01-06
AU1481101A (en) 2001-06-06
CN1186942C (zh) 2005-01-26
WO2001035673A1 (en) 2001-05-17
IL149455A (en) 2007-07-04
ES2376540T3 (es) 2012-03-14
JP5384696B2 (ja) 2014-01-08
ATE538598T1 (de) 2012-01-15
AU782176B2 (en) 2005-07-07
JP5289659B2 (ja) 2013-09-11
CA2389410C (en) 2011-06-28
US6529634B1 (en) 2003-03-04
KR20030036129A (ko) 2003-05-09
EP1230804B1 (en) 2011-12-21
CA2389410A1 (en) 2001-05-17
RU2273112C2 (ru) 2006-03-27
CN1421102A (zh) 2003-05-28
ZA200203276B (en) 2003-07-24

Similar Documents

Publication Publication Date Title
CA2389410C (en) Variance based adaptive block size dct image compression
CA2398386C (en) Quality based image compression
CA2450733C (en) A configurable image scanning pattern optimizer
AU2002315160A1 (en) Configurable pattern optimizer
CA2449709A1 (en) Interframe encoding method and apparatus
WO2003045069A2 (en) Block size assignment using local contrast ratio

Legal Events

Date Code Title Description
FG Grant or registration