MXPA05007303A - Metodo y dispositivo para seleccionar un modo de codificacion. - Google Patents
Metodo y dispositivo para seleccionar un modo de codificacion.Info
- Publication number
- MXPA05007303A MXPA05007303A MXPA05007303A MXPA05007303A MXPA05007303A MX PA05007303 A MXPA05007303 A MX PA05007303A MX PA05007303 A MXPA05007303 A MX PA05007303A MX PA05007303 A MXPA05007303 A MX PA05007303A MX PA05007303 A MXPA05007303 A MX PA05007303A
- Authority
- MX
- Mexico
- Prior art keywords
- blocks
- subset
- coding
- energy function
- calculation
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
La presente invencion se relaciona con un metodo y un dispositivo para seleccionar un modo de codificacion (112) de entre una pluralidad de modos de codificacion para un subconjunto de bloques (109) incluidos en un conjunto de bloques (101). Una funcion (105) de energia sobre el conjunto de bloques (101) para cada uno de los modos de codificacion se calcula (102)y los elementos (103) de calculo de la funcion (105) de energia se almacenan para al menos el subconjunto de bloques (109). Se selecciona un primer modo de codificacion (107) que minimiza la funcion (105) de energia sobre el conjunto de bloques (101). La funcion (110) de energia sobre el subconjunto de bloques (109) para cada uno de los modos de codificacion posteriormente se calcula (108) mediante la utilizacion de los elementos (103) de calculo almacenados para el subconjunto de bloques (109) y por implementacion de un calculo (113) sobre la vecindad del subconjunto (109), de un costo de codificacion para los modos de codificacion distintos del primer modo de codificacion (107). Despues se lleva a cabo la seleccion (111) de un modo de codificacion (112) que minimiza la funcion (110) de energia sobre el subconjunto (109.
Description
MÉTODO Y DISPOSITIVO PARA SELECCIONAR UN MODO DE CODIFICACIÓN
DESCRIPCIÓN DE LA INVENCIÓN La presente invención se relaciona con un método para selección de los modos de codificación de los bloques de una imagen dividida en bloques, de entre una pluralidad de modos de codificación de compresión de imagen. El método consiste en seleccionar iterativamente un modo de codificación de manera que se codifica un conjunto de bloques y después se refine esta selección sobre los subconjuntos de bloques del conjunto de bloques. El refinamiento puede reproducirse a si mismo iterativamente sobre los subconj ntos procesados de esta manera. El contexto de la invención por lo tanto es la compresión, en particular la compresión de video, en base en esquemas de codificación por bloques, de MPEG-2, PEG-4, tipo parte 2 ó 10. Estos esquemas de compresión operan en entidades de base denominadas macrobloques. En lo que sigue el término bloque puede indicar grupos de cualquier tamaño de bloques más pequeños y por lo tanto en particular puede indicar macrobloques . Estos esquemas implementan un método de decisión de codificación cuyo objetivo es seleccionar para cada macrobloque el modo de codificación el cual parece más adecuado. Esta selección se puede realizar a posteriori, es decir, al evaluar la totalidad de los modos posibles, en particular al calcular el costo de codificación y distorsión. De esta manera se selecciona el modo de codificación que muestra la mejor relación entre velocidad de bitos y distorsión. Los métodos de decisión de codificación conocidos operan de una manera causal: una vez que se ha tomado una decisión con respecto a un macrobloque, se avanza al siguiente macrobloque. Esto se realiza con el fin de explorar la imagen. Los métodos conocidos por lo tanto no toman en consideración el impacto de las decisiones en los macrobloques posteriores. Esto tiene consecuencias negativas respecto al mapa de los modos que se seleccionan sobre la totalidad de una imagen la cual puede mostrar un grado de heterogeneidad. Los efectos de bloque de esta manera son visibles. Esto también lleva a consecuencias negativas respecto al costo de la codificación puesto que el costo de la codificación de un macrobloque generalmente depende mucho de la selección de los modos de codificación de los macrobloques aledaños, en particular situados por encima y a la izquierda en el caso de una exploración de izquierda a derecha y de la parte superior a la inferior. La decisión tomada respecto a un macrobloque puede ser la mejor para ese macrobloque pero dado que afecta a los siguientes macrobloques, su consecuencia puede ser la selección de una decisión que no sea la óptima para macrobloques posteriores. Se pueden utilizar soluciones con varias repeticiones que hagan posible reconsiderar la decisión tomada previamente. De esta manera la cantidad de cálculo es elevada. Además, estas soluciones vuelven posible evitar una decisión no óptima para los macrobloques posteriores únicamente al adoptar lo que se denomina una estrategia de relajamiento estocástico el cual involucra una cantidad de cálculo que es incompatible, en particular, con codificación de video. Otras soluciones basadas en el cálculo de una recolección de modo de codificación sobre un conjunto de macrobloques suponen de antemano la consideración de todas las combinaciones posibles de modos de codificación, esto evidentemente resulta muy costoso en términos de tiempo de cálculo . La presente invención propone un método de decisión de codificación el cual no genera los defectos mencionados antes. Por lo tanto, un método de decisión de codificación de acuerdo con la invención vuelve posible obtener una imagen comprimida de mejor calidad en relación a la solución convencional mencionada en lo anterior, y al mismo tiempo optimiza los costos de codificación. La presente invención se relaciona con un método de selección de un modo de codificación, de entre una pluralidad de modos de codificación por compresión de imágenes divididas en bloques, de manera que codifica un subconjunto de bloques incluido en un conjunto de bloques, el método incluye las etapas de cálculo de una función de energía sobre el conjunto de bloques para cada uno de los modos de codificación, de almacenamiento de elementos de cálculo de la función de energía para al menos el subcon unto de bloques, de selección de un primer modo de codificación que minimiza la función de energía sobre el conjunto de bloques, de cálculo de la función de energía sobre el subconjunto de bloques para cada uno de los modos de codificación, el cálculo de la función de energía utiliza los elementos de cálculo almacenados para el subconjunto de bloques e implementa una etapa de cálculo sobre la cercanía del subconjunto, de un costo de codificación para los modos de codificación distinto del primer modo de codificación y, de selección de un segundo modo de codificación que minimiza la función de energía sobre el subconjunto. Específicamente, la solución escala múltiple propuesta por la invención utiliza una selección de un modo de codificación para un conjunto de bloques de manera que posteriormente se decida el modo de codificación para un subconjunto del conjunto de bloques. Esto permite que se retome una decisión homogénea con respecto al conjunto de bloques . Esto solución también posibilita una solución más cercana al mínimo global con respecto al conjunto de bloques de la función de energía y por lo tanto, en particular, optimiza el costo de codificación sobre el conjunto de bloques. Está de más decir que el primero y segundo modo de codificación pueden ser distintos o pueden ser iguales, dado que uno y el mismo modo de codificación pueden minimizar la función de energía para el conjunto de bloques y para el subconjunto de bloques. En una modalidad, el conjunto de bloques es un grupo de bloques 2n*2n, el subconjunto es un grupo de bloques 2n_1*2n_1. Esta modalidad es especialmente ventajosa dentro de la infraestructura de codificaciones de imagen, en particular de acuerdo con las estándares MPEG, en donde los bloques están agrupados en particular en macrobloques , los cuales también pueden ser agrupados juntos, en particular en grupos de 2n x 2n bloques. En una modalidad, las cercanías son el grupo de bloque de bajo y a la derecha del subconjunto de bloques. Esta modalidad es especialmente ventajosa dentro de la infraestructura de codificaciones de imagen, en particular de acuerdo con los estándares MPEG, en donde los bloques son explorados, para codificación, de izquierda a derecha y desde la parte superior a la inferior. En una modalidad, los elementos de cálculo son una distorsión y un costo de codificación para cada subconjunto de bloques. Esta característica refleja la naturaleza de una función de energía como se calcula de acuerdo con la invención. La distorsión representa el error observado entre la imagen codificada y la imagen original no codificada. El costo de codificación generalmente representa el número de bitios necesarios para la codificación de la imagen. Estos elementos de cálculo se almacenan de manera que es capaz de que sean solicitados por la etapa de cálculo de la función de energía para el subconjunto de macrobloques . En una modalidad, la etapa de selección de un modo de codificación incluye un subconjunto de selecciones y un parámetro del modo de codificación. Esta característica vuelve posible ampliar la aplicación de la invención a una selección de parámetros específicos para el modo de codificación, por ejemplo de un vector . En una modalidad, el método de acuerdo con la invención se repite iterativamente sobre una serie de subconjuntos de conjuntos de bloques. Esta modalidad es especialmente útil para codificación MPEG. El conjunto de bloques puede ser, por ejemplo, el del tamaño más grande posible de 2n bloques en la imagen que se va a codificar, el siguiente subconjunto puede ser del tamaño 2n_1. De acuerdo con el método de la invención, un modo de codificación después se selecciona para cuatro subconj untos . Posteriormente, cada subconjunto de tamaño 2n_1 se vuelve el conjunto de bloques, el subconjunto después se vuelve al tamaño 2n~2 y asi sucesivamente en adelante. La invención también se relaciona con un dispositivo para implementar el método como se describe en lo anterior. La invención también se relaciona con una imagen comprimida que se obtiene al implementar iterativamente un método de acuerdo con la invención (partiendo de una división en bloques de un tamaño muy grande - típicamente
128*128 pixeles - de la imagen completa) . Otras características y ventajas de la presente invención se vuelven evidentes ante la lectura de la descripción de las diversas modalidades, las descripciones que se realizan con referencia a los dibujos anexos, en los cuales : La figura 1 es un diagrama de un dispositivo de acuerdo con la invención. La figura 2a y la figura 2b representan el papel de las cercanías de un bloque de un macrobloque en el cálculo de un costo de codificación. La figura 3 ilustra la manera de operación de la invención sobre un conjunto de macrobloques. La figura 4 representa una función de energia con diversas escalas. Las figuras 5a a la figura 5c ilustran el conducto de un método de acuerdo con la invención sobre un conjunto de macrobloques. Como se representa en la figura 1, un dispositivo
100 de acuerdo con la invención incluye un módulo 102 de cálculo para calcular una función 105 de energia sobre un conjunto 101 de bloques para cada uno de los modos de codificación. Una memoria 104 vuelve posible almacenar los elementos 103 de cálculo de la función 105 de energía para al menos un subconjunto de bloques 109. La función de energía, representada por una referencia 105 única por razones de claridad, se calcula para varios modos de codificación. Por lo tanto, se evalúan tantos valores de la función de energía, con el número de referencia 105, como sean almacenados como modos de codificación. El dispositivo 100 incluye un módulo 106 para selección de un modo de codificación, denominado el primer modo de codificación 107, que minimiza la función 105 de energía sobre el conjunto de bloques 101. La selección de un modo de codificación consiste en la búsqueda del conjunto de modos de codificación M y el conjunto de sus parámetros asociados P que minimicen la función 105 de energía, indicada como E en las ecuaciones: MinM,P E (M, P/Icurf Iref) en donde ICUr designa la imagen actual, Iref designa la imagen que sirve como referencia para la predicción temporal, M = {mi, ]¾, mN} es el conjunto de modos de codificación de los N macrobloques, mi es capaz de adquirir sus valores de entre el conjunto de Q modos de codificación permitidos T = {ti, t2, ·.., tQ} , P es el conjunto de parámetros relacionados en cada sitio s con su modo ms . Esto puede ser materia de la dirección de predicción espacial para el modo Intra de codificación, de vectores de movimiento de coeficientes de ponderación bidireccional para un modo Inter. La función de energía E es una suma de funciones elementales sobre el conjunto de bloques. Como se señala previamente, estas funciones elementales dependen de la vecindad del bloque. Como se representa en la figura 2a, en un esquema de codificación que se lleva a cabo con un explorador de la izquierda a la derecha y de la parte superior a la inferior, tal como por ejemplo el esquema de codificación MPEG-4 parte 10, la función elemental calculada sobre el bloque 200 depende de los modos de codificación seleccionados dentro de las vecindades que consisten de bloques 201 a 204. De una manera complementaria, como se representa en la figura 2b, cada una de las funciones elementales calculadas para los bloques 206 a 209 dependen en particular del modo de codificación seleccionado para el bloque 205. Asi, la suma de funciones elementales se pueden escribir: E(M,P/ICur , Iref ) = ? s e S Es(ms, ps(ms)/mr, pr(mr), £l s , Icur ^ Iref ) en donde S es el conjunto de posiciones (o sitios) de los macrobloques N de la imagen y Vs designa la vecindad de los sitios s por ejemplo los bloques 201 a 204 en la figura 2a. La función Es puede adquirir varias formas. En un enfoque a posteriori, puede adquirir la siguiente forma, cuya anotación ha sido simplificada al omitir las dependencias condicionales: Es(m) = D(m,p(m)) + X.C(m,p(m)) en donde D es una medida de la distorsión y C es una medida del costo de codificación, ? es un parámetro determinado o calculado, convencionalmente como una función del tamaño de etapa de cuantificación del bloque.
La selección del primer modo de codificación 107 sobre el conjunto de bloque se determina por el modo de minimización de la función Es (m) anterior. Los elementos de cálculo D y C, que tienen como número de referencia 103 en la figura 1, se almacenan para cada subconjunto de bloques, para cada modo evaluado. De acuerdo con la invención, se almacenan por lo menos los elementos 103 de cálculo para los bloques del subconjunto 109 para los cuales deben seleccionarse el modo 112 de codificación. Por lo tanto, el dispositivo 100 en lo siguiente tiene la posibilidad de trabajar con un subconjunto 109 del conjunto 101 de bloques. De esta manera se incluye un módulo 108 de cálculo para calcular la función 110 de energía sobre el subconjunto 109 de bloques para cada uno de los modos m de codificación. La figura 3 posteriormente ilustra la manera de operación de la invención. Se ha seleccionado un primer modo de codificación para el conjunto de bloques 301. Es, por ejemplo, para el subconjunto 309 de bloques 4 x 4 que la función 110 de energía se calcula posteriormente. Cualquier otro subconjunto, por ejemplo el del tamaño 3 3 y que se indica como 303 en la figura 3, del conjunto 301 también se puede seleccionar de acuerdo con el método de la invención. Todos los otros tamaños, por ejemplo 3 x 2, etc., también se pueden implementar en la invención. De acuerdo con la figura 1, el módulo 108 para calcular la función 110 de energía requiere que los elementos 103 de cálculo almacenados para el subconjunto 109 de bloques. El módulo 108 de cálculo también incluye un módulo 113 de estimación o de cálculo para calcular, sobre una vecindad del subconjunto, un costo de codificación para los modos de codificación diferentes al primer modo 107 de codificación. De acuerdo con la figura 3, la vecindad del subconjunto es la vecindad 302 definida por los bloques que se encuentran en la parte inferior y a la derecha del subconjunto 309 de bloques. Específicamente, como se ilustra en la figura 2b, el cambio de modo para un bloque 205 situado en un sitio s también altera la energía de los bloques futuros 206 a 209. Los bloques futuros se indican Fs en las ecuaciones. Si en un sitio s se sustituye un modo m con un modo m' , la variación en energía que resulta de esto es la siguiente: ?? = Es(m',ps(m' ) )-Es(m,ps(m) ) +
?reFs (Er (mr,pr (mr) /m1 , ps (m1 ) ) -Er (mr,pr (mr) /m,ps (m) ) ) Los primeros dos términos representan el cambio de la función de energía de dependiendo de los bloques pasados, el tercer término representa el cambio de la función de energía generado sobre la función de energía de los bloques futuros. En las soluciones causales de monoescala convencionales, la selección del modo de codificación después se lleva a cabo al medir la variación de la función de energía del macrobloque s, es decir, los primeros dos términos sin tomar en consideración las variaciones de energía involucradas en los bloques futuros. Se observa que para los tamaños de etapa de cuantificación pequeña a media en la imagen dividida en bloques, se puede considerar que el impacto para un bloque de un cambio de modo de un bloque anterior de la vecindad que no tiene apoyo en la distorsión sino únicamente en el costo de codificación. Específicamente, un bloque reconstruido después de la descuantificación no está demasiado lejos del bloque de fuente o bloque inicial para los intervalos pequeño a medio de el tamaño de etapa de cuantificación . En este caso, no necesitan volver a calcular la distorsión. Así, para cada subconjunto de bloques, las distorsiones para cada modo se calculan en base en la escala más general. En este caso, el almacenamiento de los elementos 103 de cálculo vuelve posible requerir que los elementos 103 de cálculo que representan la distorsión D con facilidad sin tener que volver a calcularlas.
Como un resultado del trabajado en los subconjuntos de bloques y de que necesariamente tienen el mismo modo dentro de un subconjunto, el costo de codificación no cambia para los bloques situados dentro del subconjunto de bloques. Por lo tanto, se observa que para una escala dada, las variaciones de costo de codificación generadas por el cambio de modo de codificación para el subconjunto 309 de bloques son sensibles únicamente para los bloques situados en la vecindad 302 del subconjunto 309. Esto vuelve posible disminuir considerablemente la cantidad de cálculos realizados dado que únicamente se calculan las variaciones en el costo de codificación para los bloques de la vecindad 302 del subconjunto 309 de bloques. Los otros costos de codificación para los bloques internos al subconjunto de hecho se almacenan como se observa previamente en la guisa del elemento 103 del cálculo. Específicamente, con referencia a la figura 3, un cálculo convencional de los costos de codificación genera cálculos de 16 + 9, mientras que la invención vuelve posible llevarlo a cabo en únicamente 9. El dispositivo finalmente incluye un módulo 111 para selección de un modo de codificación 112 que minimiza la función 110 de energía calculada por el módulo 108 de cálculo sobre el subconjunto 109. La solución de escala múltiple propuesta de acuerdo con la invención vuelve posible solucionar de manera más fácil y más cercana la optimización de la codificación sobre la imagen. Específicamente, una solución a escala múltiple vuelve posible volver uniforme la función para que se minimice toda de manera más significativa cuando el método se lleva a cabo con un conjunto de bloques a gran escala. Por lo tanto, a una escala suficientemente grande para el conjunto de bloques iniciales para el método, la función se vuelve convexa y se alcanza con facilidad de un mínimo global. La figura 4 ilustra en este caso sencillo una función de energía calculada sobre una dimensión única, para una pluralidad de modos representados a lo largo de la abscisa. De esta manera, se hace notar que la curva 401 de la función de energía en la escala más pequeña presenta varios mínimos. Por lo tanto, si iniciamos desde una inicializacion pobre durante la minimización de la función de energía, estamos en riesgo de descender dentro de un mínimo local. La curva 402 representa una escala intermedia la cual, además del mínimo global, muestra un mínimo local menos pronunciado. La curva 401 representa una escala más grande, esta curva 401 muestra solo un mínimo que se obtendrá de manera definitiva. Como se ilustra en esta última figura, para determinar la mejor colección de modos de codificación sobre una imagen dividida en bloques, es necesario minimizar la función de energía con varias dimensiones, en particular el número de bloques de la imagen, el número de modos por bloque, el espacio de predicción espacio-temporal, por configuración de que se encuentre el mínimo de la función de energía. Cuando se utiliza una solución causal, por lo tanto a pequeña escala, terminamos obteniendo suministro de un mínimo local el cual puede estar lejos del mínimo global de la función de energía. De esta manera, la invención vuelve posible solucionar más cerca de la minimización de la función de energía para la codificación de una imagen completa dado que es posible definir el conjunto de bloques para que sea la imagen completa. Con referencia a la figura 5, el método de acuerdo con la invención se repite iterativamente de manera ventajosa sobre una pluralidad de escalas para el conjunto y el subconjunto de bloques de manera que se obtienen optimización de la recolección de los modos de codificación sobre la totalidad de una imagen. De acuerdo con esta iteración o repetición, el subconjunto de una etapa previa se vuelve el conjunto de la siguiente etapa y así sucesivamente, en adelante. Ventajosamente, la escala más general es la imagen completa. De acuerdo con este principio de iteración, la minimización de la función de energía se calcula en una primera escala representada en la figura 5a por un conjunto 500 de bloques de 8 x 8 bloques. Para esta primera escala, los subconjuntos 501 a 504 son de un tamaño 4 x . Para la segunda escala representada en la figura 5b, cada uno de los subconjuntos 501 a 504 de la escala previa se han vuelto un conjunto de bloques para llevar a cabo un método de acuerdo con la invención. Los subconjuntos ahora son los grupos 505 a 505 de 2 x 2 bloques. Finalmente, en la tercera escala, los subconjuntos son ahora los bloques 521 en sí mismos. De esta manera, los bloques se agrupan en subconjuntos de 2n x 2n bloques. Los bloques de cada subcon unto necesariamente tienen todos el mismo modo de codificación . La invención vuelve posible llevar a cabo la optimización a partir de la escala más general. Se utiliza una escala causal para atravesar cada uno de los subconjuntos dentro de un conjunto. De acuerdo con la invención, el modo el cual genera la energía más baja se busca para cada subconjunto en una escala dada K. Por ejemplo, en la figura 5, el conjunto 500 de escala K + 1 se utiliza para determinar el modo el cual genera la menor energía para cada uno de los subconjuntos 501 a 504 de la escala K y así sucesivamente. Una vez que se ha procesado la escala K, tenemos disponible para una escala menor K-l un mapa inicial de los modos para cada nuevo conjunto de escala K. Para cada subcon unto de la escala K-l, después se busca el modo el cual obtiene la mayor disminución de energía. Una vez que se ha procesado la escala K-l, se avanza a la escala K-2 y así sucesivamente en adelante descendiendo a la escala 0, en donde, por ejemplo, un bloque único constituye el subconjunto. La invención también se puede aplicar para optimizar la función de energía como una función de los parámetros de los modos de codificación. Se pueden considerar dos soluciones. Cualquiera de los parámetros de cada subconjunto de bloques pueden ser diferentes. Por lo tanto, el modo de codificación de un subconjunto es, por ejemplo el modo Inter con un parámetro de vector de movimiento para cada subconjunto de bloques. O bien operamos para un parámetro P dado de la misma manera que para los modos por procesamiento de un subconjunto Pn del parámetro P en cada escala. En ambos casos, el cálculo de parámetros P y, sí es necesario de Pn se puede realizar de una manera totalmente independiente. Por ejemplo, es posible llevar a cabo un cálculo de movimiento a escala múltiple sobre la totalidad de la imagen antes de la implementación del dispositivo de decisión de codificación. Esta solución tiene la ventaja de ser menos costosa en cuanto a cálculo en comparación con la solución del cálculo simultaneo de los conjuntos Mn y Pn. La invención no se limita a las modalidades descritas y una persona experta en la técnica reconocerá la existencia de diversas modalidades alternativas tales como, por ejemplo, la posibilidad de considerar diversos tipos de vecindad para el cálculo de los costos de codificación de los bloques vecinos. También debe hacerse notar que los costos de codificación se pueden calcular por medio de un cálculo riguroso o por un cálculo aproximado utilizando técnicas de aproximación conocidas.
Claims (12)
1. Método para seleccionar un modo de codificación, de entre una pluralidad de modos de compresión de codificación de imágenes dividido en bloques, de manera que codifica un subconjunto de bloques incluidos en un conjunto de bloques, el método incluye las etapas de: cálculo de una función de energía sobre el conjunto de bloques para cada uno de los modos de codificación, almacenamiento de los elementos de cálculo de la función de energía para al menos el subconjunto de bloques, selección de un primer modo de codificación que minimiza la función de energía sobre el conjunto de bloques, cálculo de la función de energía sobre el subconjunto de bloques para cada uno de los modos de codificación, el cálculo de la función de energía utilizando los elementos de cálculo almacenados para el subconjunto de bloques e implementación de una etapa de cálculo o estimación sobre la vecindad del subconjunto de un costo de codificación para los modos de codificación distintos del primer modo de codificación, y selección de un segundo modo de codificación que minimiza la función de energía sobre el subconjunto.
2. El método como se describe en la reivindicación 1, en el cual el conjunto de bloques es un grupo de 2n*2n bloques, el subconjunto es un grupo de 2n" 1*2n~1 bloques.
3. El método como se describe en cualquiera de las reivindicaciones 1 y 2 , en el cual la vecindad es el grupo de los bloques por debajo y a la derecha del subconjunto de bloques.
4. El método como se describe en cualquiera de las reivindicaciones 1 a 3, en el cual los elementos de cálculo son una distorsión y un costo de codificación para cada subconjunto de bloques.
5. El método de acuerdo con cualquiera de las reivindicaciones 1 a 4, en el cual la etapa de selección de un modo de codificación incluye una subetapa de selección de un parámetro del modo de codificación.
6. El método como se describe en cualquiera de las reivindicaciones 1 a 5, repetido iterativamente sobre una serie de subcon untos de conjuntos de bloques.
7. Un dispositivo diseñado para llevar a cabo una selección de un modo de codificación de entre una pluralidad de modos de codificación para un subconjunto de bloques incluidos en un conjunto de bloques, el dispositivo incluye: un módulo de cálculo para calcular una función de energía sobre el conjunto de bloques para cada uno de los modos de codificación, .· 'una memoria para almacenar elementos de cálculo de la función de energía para al menos el subconjunto de bloques, un módulo para seleccionar un primer modo de codificación que minimiza la función de energía sobre el conjunto de bloques, un módulo de cálculo para calcular la función de energía sobre el subconjunto de bloques para cada uno de los modos de codificación, el módulo para calcular la función de energía requiere del cálculo de los elementos almacenados para el subconjunto de bloques e incluye un módulo de cálculo o estimación para calcular, sobre la vecindad del subconj nto, un costo de codificación para los modos de codificación distintos del primer modo de codificación, un módulo para seleccionar un segundo modo de codificación que minimice la función de energía sobre el subconjunto.
8. El dispositivo como se describe en la reivindicación 7, en el cual el conjunto de bloques es un grupo de 2n*2n bloques, el subconjunto es un grupo de 2n~ i*2n-i bloqueS-
9. El dispositivo como se describe en cualquiera de las reivindicaciones 7 y 8, en el cual la vecindad es el grupo de los bloques debajo y a la derecha del subconjunto de bloques.
10. El dispositivo como se describe en cualquiera de las reivindicaciones 7 a 9, en el cual los elementos de cálculo son una distorsión y un costo de codificación para cada subconjunto de bloques.
11. El dispositivo de acuerdo con cualquiera de las reivindicaciones 7 a 10, en el cual por lo menos uno de los módulos para selección de un modo de codificación incluye una submódulo para selección de un parámetro del modo de codificación.
12. El método de codificación de una imagen de video que implementa una pluralidad de modos de codificación, caracterizado porque incluye una fase de selección de modo de codificación de acuerdo con el método de la reivindicación 1.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0451447A FR2872975A1 (fr) | 2004-07-06 | 2004-07-06 | Procede et dispositif pour choisir un mode de codage |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA05007303A true MXPA05007303A (es) | 2006-05-25 |
Family
ID=34949756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MXPA05007303A MXPA05007303A (es) | 2004-07-06 | 2005-07-05 | Metodo y dispositivo para seleccionar un modo de codificacion. |
Country Status (9)
Country | Link |
---|---|
US (1) | US8059722B2 (es) |
EP (1) | EP1615172B1 (es) |
JP (1) | JP4880255B2 (es) |
KR (1) | KR101177939B1 (es) |
CN (1) | CN1719900B (es) |
DE (1) | DE602005012184D1 (es) |
ES (1) | ES2319663T3 (es) |
FR (1) | FR2872975A1 (es) |
MX (1) | MXPA05007303A (es) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4563981B2 (ja) * | 2006-10-23 | 2010-10-20 | 日本電信電話株式会社 | 映像符号化方法、映像符号化装置、映像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US9125807B2 (en) | 2007-07-09 | 2015-09-08 | Incept Llc | Adhesive hydrogels for ophthalmic drug delivery |
US20110261876A1 (en) * | 2008-10-17 | 2011-10-27 | Yih Han Tan | Method for encoding a digital picture, encoder, and computer program element |
WO2010093873A2 (en) | 2009-02-12 | 2010-08-19 | Incept, Llc | Drug delivery through hydrogel plugs |
US8961501B2 (en) | 2010-09-17 | 2015-02-24 | Incept, Llc | Method for applying flowable hydrogels to a cornea |
US9635383B2 (en) * | 2011-01-07 | 2017-04-25 | Texas Instruments Incorporated | Method, system and computer program product for computing a motion vector |
US10230956B2 (en) | 2012-09-26 | 2019-03-12 | Integrated Device Technology, Inc. | Apparatuses and methods for optimizing rate-distortion of syntax elements |
US10277907B2 (en) | 2012-10-25 | 2019-04-30 | Integrated Device Technology, Inc. | Rate-distortion optimizers and optimization techniques including joint optimization of multiple color components |
US20140219331A1 (en) * | 2013-02-06 | 2014-08-07 | Magnum Semiconductor, Inc. | Apparatuses and methods for performing joint rate-distortion optimization of prediction mode |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5376968A (en) * | 1993-03-11 | 1994-12-27 | General Instrument Corporation | Adaptive compression of digital video data using different modes such as PCM and DPCM |
JP2980810B2 (ja) | 1994-04-20 | 1999-11-22 | 株式会社グラフィックス・コミュニケーション・ラボラトリーズ | 動きベクトル探索方法と装置 |
JPH0846968A (ja) | 1994-08-03 | 1996-02-16 | Nippon Telegr & Teleph Corp <Ntt> | 階層的動ベクトル検出方法および装置 |
JPH08223578A (ja) | 1995-02-13 | 1996-08-30 | Nippon Telegr & Teleph Corp <Ntt> | 動きベクトル探索方法および装置 |
US5686963A (en) * | 1995-12-26 | 1997-11-11 | C-Cube Microsystems | Method for performing rate control in a video encoder which provides a bit budget for each frame while employing virtual buffers and virtual buffer verifiers |
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 | 三菱電機株式会社 | 動画像復号化装置および動画像復号化方法 |
US6711211B1 (en) | 2000-05-08 | 2004-03-23 | Nokia Mobile Phones Ltd. | Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder |
US6654502B1 (en) * | 2000-06-07 | 2003-11-25 | Intel Corporation | Adaptive early exit techniques in image correlation |
US7079579B2 (en) * | 2000-07-13 | 2006-07-18 | Samsung Electronics Co., Ltd. | Block matching processor and method for block matching motion estimation in video compression |
WO2003026315A1 (en) * | 2001-09-14 | 2003-03-27 | Ntt Docomo, Inc. | Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program |
WO2003043347A1 (en) * | 2001-11-16 | 2003-05-22 | Ntt Docomo, Inc. | Image encoding method, image decoding method, image encoder, image decode, program, computer data signal, and image transmission system |
CN1206864C (zh) * | 2002-07-22 | 2005-06-15 | 中国科学院计算技术研究所 | 结合率失真优化的码率控制的方法及其装置 |
FR2846835B1 (fr) * | 2002-11-05 | 2005-04-15 | Canon Kk | Codage de donnees numeriques combinant plusieurs modes de codage |
JP4777889B2 (ja) * | 2003-08-25 | 2011-09-21 | エージェンシー フォー サイエンス,テクノロジー アンド リサーチ | 映像符号化における中間予測のためのモード判定 |
JP2005268879A (ja) | 2004-03-16 | 2005-09-29 | Matsushita Electric Ind Co Ltd | 画像符号化方法およびその装置 |
-
2004
- 2004-07-06 FR FR0451447A patent/FR2872975A1/fr active Pending
-
2005
- 2005-06-30 EP EP05105967A patent/EP1615172B1/en active Active
- 2005-06-30 DE DE602005012184T patent/DE602005012184D1/de active Active
- 2005-06-30 ES ES05105967T patent/ES2319663T3/es active Active
- 2005-07-01 US US11/174,165 patent/US8059722B2/en active Active
- 2005-07-01 CN CN200510082188XA patent/CN1719900B/zh active Active
- 2005-07-05 KR KR1020050060071A patent/KR101177939B1/ko active IP Right Grant
- 2005-07-05 MX MXPA05007303A patent/MXPA05007303A/es active IP Right Grant
- 2005-07-06 JP JP2005198126A patent/JP4880255B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
DE602005012184D1 (de) | 2009-02-26 |
KR20060049842A (ko) | 2006-05-19 |
US8059722B2 (en) | 2011-11-15 |
JP2006025430A (ja) | 2006-01-26 |
JP4880255B2 (ja) | 2012-02-22 |
CN1719900A (zh) | 2006-01-11 |
CN1719900B (zh) | 2010-06-09 |
EP1615172B1 (en) | 2009-01-07 |
KR101177939B1 (ko) | 2012-08-28 |
EP1615172A1 (en) | 2006-01-11 |
ES2319663T3 (es) | 2009-05-11 |
FR2872975A1 (fr) | 2006-01-13 |
US20060039479A1 (en) | 2006-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
MXPA05007303A (es) | Metodo y dispositivo para seleccionar un modo de codificacion. | |
CN111886870B (zh) | 使用整数像素分辨率的运动矢量修正搜索 | |
RU2391794C2 (ru) | Устройство видеокодирования, способ видеокодирования, программа видеокодирования, устройство видеодекодирования, способ видеодекодирования и программа видеодекодирования | |
CN107241605B (zh) | 视频编码器以及视频编码方法 | |
US6909749B2 (en) | Hierarchical segment-based motion vector encoding and decoding | |
KR101670532B1 (ko) | 픽처 시퀀스를 나타내는 스트림을 디코딩하는 방법, 픽처 시퀀스를 코딩하는 방법, 및 코딩 데이터 스트럭처 | |
TWI688257B (zh) | 視訊編解碼之方法及裝置 | |
JP4993676B2 (ja) | 画像符号化装置及び画像符号化方法 | |
CN111201792B (zh) | 指向分数像素点位置的运动矢量的修正运动矢量 | |
CN1370376A (zh) | 自适应运动矢量场的编码 | |
CN109348234B (zh) | 一种高效亚像素运动估计方法及*** | |
CN104754338A (zh) | 一种帧内预测模式的选择方法和装置 | |
CN111479110B (zh) | 针对h.266/vvc的快速仿射运动估计方法 | |
CN111201795A (zh) | 存储访问窗口和用于运动矢量修正的填充 | |
CN108076347A (zh) | 一种编码起始点的获取方法以及装置 | |
CN111567047A (zh) | 进行子预测块运动矢量推导的存储器访问窗口 | |
JP2004520744A (ja) | 画像の符号化と復号のための方法及び装置、それに関連する用途 | |
Pfaff et al. | Data-driven intra-prediction modes in the development of the versatile video coding standard | |
US20070064807A1 (en) | Adaptive area of influence filter | |
KR101192060B1 (ko) | 블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및장치 | |
CN115190300A (zh) | 属性信息的预测方法、编码器、解码器、及存储介质 | |
CN110049339A (zh) | 图像编码中的预测方向选取方法、装置和存储介质 | |
KR102681958B1 (ko) | 계층 탐색을 통해 모션 추정을 수행하는 전자 회로 및 전자 장치 | |
TW202037171A (zh) | 以區塊為基礎之圖像預測式編碼和解碼技術 | |
JP4767908B2 (ja) | 画像復号装置及び画像符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Grant or registration |