ES2368706T3 - Un procedimiento y dispositivo asociado para filtrar imágenes digitales de video. - Google Patents
Un procedimiento y dispositivo asociado para filtrar imágenes digitales de video. Download PDFInfo
- Publication number
- ES2368706T3 ES2368706T3 ES01902442T ES01902442T ES2368706T3 ES 2368706 T3 ES2368706 T3 ES 2368706T3 ES 01902442 T ES01902442 T ES 01902442T ES 01902442 T ES01902442 T ES 01902442T ES 2368706 T3 ES2368706 T3 ES 2368706T3
- Authority
- ES
- Spain
- Prior art keywords
- block
- pixels
- limit
- pixel
- coding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Studio Circuits (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Analysis (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un procedimiento para reducir distorsiones visuales en una trama de una señal de vídeo digital, que se codifica en bloques y luego se descodifica, estando un tipo de bloque definido según el procedimiento de codificación de predicción para un bloque seleccionado entre un conjunto predeterminado de tipos de codificación, comprendiendo el procedimiento realizar una operación de filtrado adaptable de límites de bloque sobre un límite de bloque formado entre un primer bloque de imagen descodificada sobre un primer lado del límite de bloque y un segundo bloque de imagen descodificada sobre un segundo lado del límite de bloque, caracterizado porque el primer bloque de imagen descodificada ha sido codificado usando un primer tipo de procedimiento de codificación de predicción y el segundo bloque de imagen descodificada ha sido codificado usando un segundo tipo de procedimiento de codificación de predicción, en donde al menos un parámetro de la operación de filtrado se determina en base a los tipos de los procedimientos de codificación de predicción primero y segundo, y los tipos primero y segundo de procedimientos de codificación de predicción se seleccionan entre un grupo de procedimientos de codificación de predicción que comprende al menos: codificación intra, codificación por copia, codificación de predicción compensada por movimiento y codificación no codificada.
Description
Un procedimiento y dispositivo asociado para filtrar imágenes digitales de video
La presente invención se refiere a un procedimiento para reducir las distorsiones visuales en una trama de una señal de vídeo digital, que se codifica en bloques y luego se descodifica, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado entre un conjunto predeterminado de tipos de codificación, en el cual se realiza un filtrado para reducir las distorsiones visuales debidas a un límite de bloque. La presente invención también se refiere a un dispositivo para reducir distorsiones visuales en una trama de una señal de vídeo digital, que se codifica en bloques y luego se descodifica, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, comprendiendo el dispositivo un filtro para reducir las distorsiones visuales debidas a un límite de bloque. Además, la presente invención se refiere a un codificador de vídeo que comprende medios para codificar y descodificar una señal de vídeo digital en bloques, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, donde tal codificador comprende un filtro para reducir las distorsiones visuales debidas a un límite de bloque. La presente invención también se refiere a un codificador de vídeo que comprende medios para reducir distorsiones visuales en una trama de una señal de vídeo digital, que se codifica en bloques y luego se descodifica, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, donde tal codificador de vídeo comprende un filtro para reducir distorsiones visuales debidas a un límite de bloque. La presente invención también se refiere a un códec de vídeo que comprende medios para codificar y descodificar una señal de vídeo digital en bloques, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, donde tal códec de vídeo comprende un filtro para reducir distorsiones visuales debidas a un límite de bloque. La presente invención también se refiere a un terminal móvil que comprende un códec de vídeo, que comprende medios para codificar y descodificar una señal de vídeo digital en bloques, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, donde tal códec de vídeo comprende un filtro para reducir distorsiones visuales debidas a un límite de bloque. La presente invención se refiere adicionalmente a un medio de almacenamiento para almacenar un programa de software que comprende etapas ejecutables por máquina para codificar y descodificar una señal de vídeo digital en bloques, estando un tipo de bloque definido según el procedimiento de codificación para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, para reducir distorsiones visuales debidas a un límite de bloque mediante el filtrado.
Un sistema de transmisión como el mostrado en la Figura 1 se usa en general para transferir una imagen de vídeo digital en forma comprimida. La imagen de vídeo está formada por tramas secuenciales. En algunos sistemas de transmisión de vídeo de la tecnología anterior, por ejemplo, aquellos según las recomendaciones ITU_T H.261/H.263, se definen al menos tres tipos de trama: una trama-I (Intra), una trama-P (Predicha o Inter) y una trama-B (Bidireccional). La trama-I se genera únicamente en base a información contenida en la imagen misma, donde, en el extremo receptor, esta trama-I puede usarse para formar la imagen entera. Las tramas-P se forman en base a una trama-I o trama-P precedente, en donde, en la etapa de recepción, una trama-I o trama-P precedente se usa, de forma correspondiente, junto con la trama-P recibida, a fin de reconstruir la imagen. En la composición de tramas-P, por ejemplo, la compensación del movimiento se usa para comprimir la cantidad de información. Las tramas-B se forman en base a una o más tramas-P o tramas-I precedentes y / o una o más tramas-I o tramas-P siguientes.
Las tramas se dividen adicionalmente en bloques. Uno o más de tales bloques forman una región de bloques. Puede haber, en general, cuatro distintos tipos de región: región Intra, región de copia, región codificada y región no codificada. Una región Intra es una región de bloques en la cual los bloques se codifican independientemente, sin referencia a ninguna otra trama. Una región de copia consiste en bloques que se obtienen copiando el contenido de la trama de referencia en exactamente la misma ubicación, sin ninguna predicción compensada por movimiento. Una región codificada consiste en bloques que se obtienen usando predicción compensada por movimiento y codificación de errores de predicción. El error de predicción es una diferencia entre los valores de píxeles de la trama efectiva y una trama reconstruida que se forma en el sistema de codificación / descodificación usando predicción compensada por movimiento, como se describirá en más detalle más adelante en el texto. El error de predicción se codifica y se envía a un receptor. Una región no codificada se obtiene usando sólo predicción compensada por movimiento. De hecho, la región no codificada es equivalente a una región de copia si la información de movimiento es igual a 0. Todas las regiones de bloques de una trama no necesariamente son de tipos similares, pero una trama puede comprender regiones de bloques que sean de distintos tipos.
Con referencia a la Figura 1, que ilustra un típico sistema de codificación y descodificación (códec) usado, por ejemplo, en la transmisión de vídeo digital, una trama de vídeo actual, a codificar, llega al sistema 10 de transmisión como datos de entrada In(x,y). Los datos de entrada In(x,y), habitualmente, toman la forma de información de valores de píxel. En el sumador diferencial 11 se transforma en una trama En(x,y) de error de predicción, restándola de una trama Pn(x,y) de predicción, formada en base a una imagen previa. La trama de error de predicción se codifica en el bloque 12 de una manera descrita a continuación, y la trama codificada de error de predicción se dirige a un multiplexador 13. Para formar una nueva trama de predicción, la trama codificada de error de predicción también se dirige a un descodificador 14, que produce una trama Ên(x,y) descodificada de error de predicción, que se suma en un sumador 15 a la trama Pn(x,y) de predicción, dando como resultado una trama În(x,y) descodificada. La trama descodificada se guarda en una memoria 16 de tramas. Para codificar la próxima trama, la trama guardada en la memoria 16 de tramas se lee como una trama Rn(x,y) de referencia, y se transforma en una nueva trama Pn(x,y) de predicción en un bloque 17 de compensación y predicción, según la fórmula:
El par de números [Dx(x,y), Dy(x,y)] se llama el vector de movimiento del píxel en la ubicación (x,y), y los números Dx(x,y) y Dy(x,y) son los desplazamientos horizontal y vertical del píxel. Se calculan en un bloque 18 de estimación de movimiento. El conjunto de vectores [Dx(·), Dy(·)], constituido por todos los vectores de movimiento relacionados con los píxeles de la trama a comprimir, también se codifica usando un modelo de movimiento que comprende funciones de base y coeficientes. Las funciones de base son conocidas tanto por el codificador como por el descodificador. Los valores de coeficientes se codifican y se dirigen al multiplexador 13, que los multiplexa en el mismo flujo de datos con la trama codificada de error de predicción, para su envío a un receptor. De esta manera, la cantidad de información a transmitir se reduce drásticamente.
Algunas tramas pueden ser, parcial o totalmente, tan difíciles de predecir que no es práctico usar la predicción compensada por movimiento al codificarlas. Estas tramas, o partes de tramas, se codifican usando la intracodificación sin predicción y, por lo tanto, no es necesario enviar información de vectores de movimiento relacionada con ellas al receptor.
En el sistema receptor 20, un demultiplexador 21 separa las tramas codificadas de error de predicción y la información de movimiento transmitida por los vectores de movimiento, y dirige las tramas codificadas de error de predicción a un descodificador 22. El descodificador 22 produce una trama Ên(x,y) descodificada de error de predicción, que se suma en un sumador 23 a la trama Pn(x,y) de predicción, formada en base a una trama previa, dando como resultado una trama În(x,y) descodificada. La trama descodificada se dirige a una salida 24 del descodificador y, a la vez, se guarda en una memoria 25 de tramas. Al descodificar la próxima trama, la trama guardada en la memoria de tramas se lee como una trama de referencia y se transforma en una nueva trama de predicción en el bloque 26 de compensación y predicción de movimiento, según la fórmula (1) presentada anteriormente.
El procedimiento de codificación aplicado en el bloque 12 a la codificación de la trama de error de predicción o a la intracodificación de una trama, o parte de una trama-P, a enviar sin predicción, se basa en general en una transformación, la más común de las cuales es la Transformación Discreta de Coseno, DCT. La trama se divide en bloques adyacentes con un tamaño, p. ej., de 8 x 8 píxeles. En la codificación y descodificación, los bloques se procesan independientemente entre sí. La transformación se calcula para el bloque a codificar, dando como resultado una serie de términos. Los coeficientes de estos términos se cuantizan a escala discreta, a fin de que puedan procesarse digitalmente. La cuantización causa errores de redondeo, que pueden hacerse visibles en una imagen reconstruida a partir de bloques, por lo que hay una discontinuidad de valores de píxel en el límite entre dos bloques adyacentes. Debido a que se usa una cierta trama descodificada para calcular la trama de predicción para tramas predichas subsiguientes, estos errores pueden propagarse en tramas secuenciales, causando de esta manera bordes visibles en la imagen reproducida por el receptor. Los errores de imagen de este tipo se llaman distorsiones de bloqueo.
Se conocen algunos procedimientos de la técnica anterior para eliminar distorsiones de bloqueo. Estos procedimientos se caracterizan por los siguientes rasgos:
- -
- determinación de qué píxel / píxeles requiere(n) corrección de valores a fin de eliminar la distorsión de bloqueo,
- -
- determinación de un filtrado adecuado de paso bajo para cada píxel a corregir, en base a los valores de otros píxeles contenidos en una ventana de filtrado colocada alrededor del píxel,
- -
- cálculo de un nuevo valor para el píxel a corregir, y
- -
- redondeo del nuevo valor al valor más cercano de píxel digitalizado.
Los factores que influyen en la selección de un filtro y en la decisión de usar o no el filtrado pueden ser, por ejemplo, la diferencia entre los valores de píxeles a ambos lados del límite de bloque, el tamaño de la etapa de cuantización de los coeficientes recibidos como el resultado de la transformación y la diferencia de los valores de píxel en lados distintos del píxel que se está procesando.
La publicación GB 2.329.090 se refiere a un procedimiento de codificación de una imagen en movimiento, o similar, para reducir las distorsiones de bloqueo. El procedimiento incluye definir conjuntos S0, S1, S2 de píxeles alrededor de
un límite de bloque, determinando selectivamente una modalidad de desbloqueo como una modalidad 4045 por omisión o una modalidad 4075 de desplazamiento DC, según el grado de las distorsiones de bloqueo. Si se selecciona la modalidad por omisión, se obtiene información de frecuencia alrededor del límite de bloque por píxel, usando un núcleo 4055 DCT de 4 puntos, por ejemplo, una magnitud de un componente discontinuo perteneciente al límite de bloque es reemplazada 4065 por una magnitud mínima de componentes discontinuos pertenecientes a los alrededores del límite de bloque en el dominio de frecuencia, y la etapa de reemplazo se aplica al dominio espacial. Si se selecciona la modalidad de desplazamiento DC en el dominio de frecuencia y se toma la determinación de llevar a cabo la modalidad de desplazamiento DC, las distorsiones de bloqueo en una región llana se eliminan 4105 en la modalidad de desplazamiento DC. Las distorsiones de bloqueo en un límite de bloque se eliminan en un dominio de frecuencia. Las características de frecuencia alrededor del límite de bloque se obtienen usando un núcleo DCT de 4 puntos, que puede calcularse fácilmente. Así, puede procesarse una región compleja en el límite de bloque extendiendo la homogeneidad de una imagen desde el dominio de frecuencia al dominio espacial. La información de frecuencia en S1 y S2 se usa para reducir las distorsiones de bloqueo provenientes de S0.
Se ha hallado que los procedimientos de la técnica anterior tienden a eliminar líneas que pertenecen a características reales de la imagen. Por otra parte, los procedimientos de la técnica anterior no siempre son capaces de eliminar todas las distorsiones de bloqueo.
Un objetivo de la presente invención es presentar una nueva clase de disposición de filtrado para reducir distorsiones de bloqueo. La invención también tiene el objetivo de que el procedimiento y el dispositivo asociado funcionen más fiablemente y eficientemente que las soluciones de la técnica anterior.
El procedimiento según la invención ajusta parámetros de filtrado según el tipo de bloques cuyo límite ha de filtrarse. Se escogen distintos parámetros de filtrado según el tipo de bloque a cada lado del límite, a fin de producir un resultado mejorado del filtrado.
Los objetivos de la invención se logran adaptando la selección de píxeles para el filtrado, y el proceso de filtrado, más flexiblemente que antes a las características de la trama y al entorno del punto de filtrado, y teniendo en cuenta la naturaleza / tipo de los bloques a filtrar.
Según un primer aspecto de la invención, se proporciona un procedimiento para reducir distorsiones visuales en una trama que está codificada en bloques, caracterizado por lo que se revela en la reivindicación 1.
Según un segundo aspecto de la invención, se proporciona un dispositivo para implementar el procedimiento según la invención. El dispositivo según la invención se caracteriza por lo que se revela en la reivindicación 16.
Según un tercer aspecto de la invención, se proporciona un codificador según lo definido por la reivindicación 31.
Según un cuarto aspecto de la invención, se proporciona un descodificador según lo definido por la reivindicación 32.
Según un quinto aspecto de la invención, se proporciona un códec según lo definido por la reivindicación 33.
Según un sexto aspecto de la invención, se proporciona un terminal móvil según lo definido por la reivindicación 34.
Según un séptimo aspecto de la invención, se proporciona un medio de almacenamiento caracterizado por lo que se revela en la reivindicación 35.
Debido a que las distorsiones de bloqueo sólo ocurren en límites de bloque, según la invención, el filtrado se aplica ventajosamente sólo a píxeles en límites de bloque y en la vecindad de los mismos. Los bordes que son parte de la imagen pueden residir en cualquier parte en el área de la imagen. A fin de que sólo los píxeles que contienen distorsiones de bloqueo sean seleccionados para el filtrado correctivo, y de que la calidad de los bordes que son parte de la imagen misma no sea afectada durante el filtrado, se adoptan las siguientes hipótesis:
Los cambios en valores de píxel asociados a bordes que son parte de la imagen son generalmente mayores que los asociados a distorsiones de bloqueo, y aquellos bordes dentro de la imagen, donde el cambio de valores de píxel es pequeño, no padecen considerablemente el redondeo de la diferencia de valores de píxeles causado por el filtrado.
Debido a que la imagen a codificar se divide generalmente en bloques, tanto verticalmente como horizontalmente, la imagen contiene límites de bloque, tanto verticales como horizontales. Con respecto a los límites de bloques verticales, hay píxeles a la derecha e izquierda del límite y, con respecto a los límites de bloques horizontales, hay píxeles encima y debajo del límite. En general, la ubicación de los píxeles puede describirse como que están en un primer o segundo lado del límite de bloque. En una realización ejemplar del procedimiento de filtrado según la invención, el número de píxeles a corregir, los rasgos característicos del filtro que se está usando y el tamaño de la ventana de filtrado dependen de los siguientes factores:
a) El tipo de bloque a cada lado del límite (p. ej., inter, copia, codificado, no codificado), b) la diferencia en valores Δ de píxeles a ambos lados del límite de bloque. La diferencia puede definirse de varias maneras. Una definición es Δ = | r1 -l1|, donde r1 es el valor del píxel en el primer lado del límite de bloque más cercano al límite, y l1 es el valor del píxel en el segundo lado del límite de bloque más cercano al límite,
c) el tamaño de la etapa QP de cuantización de los coeficientes recibidos como resultado de la transformación usada en la codificación, y
d) diferencias en valores de píxel entre los píxeles en el primer lado del límite de bloque y, correspondientemente, entre los píxeles en el segundo lado del límite de bloque.
En una realización ventajosa del procedimiento según la invención, el número de los píxeles seleccionados para el filtrado puede variar, y no es necesariamente el mismo en lados distintos de un límite de bloque. El número de píxeles también depende del tipo de bloque a cada lado del límite. Debido a que el número de píxeles está adaptado a las características generales de la información de imagen contenida en la trama en una región específica, según los factores mencionados anteriormente, el procedimiento produce un mejor resultado de filtrado que el proporcionado por los procedimientos de la técnica anterior. Un “mejor” resultado, en este contexto, es uno en el cual las distorsiones de bloqueo se reducen en mayor medida, mientras que los bordes reales en la imagen se ven afectados en menor grado. Esto significa que puede eliminarse una mayor cantidad de distorsiones de bloqueo sin debilitar irrazonablemente los bordes de la imagen real.
Debería observarse que, en otras realizaciones de la invención, los factores que afectan al filtrado realizado en un límite de bloque pueden diferir de los presentados anteriormente.
En lo que sigue, se describirá la invención en más detalle, con referencia a las realizaciones preferidas y a los dibujos adjuntos, en los cuales
la Figura 1 representa un sistema de codificación y descodificación de vídeo digital (códec) según la técnica anterior,
la Figura 2 representa la ubicación de píxeles con respecto a un límite de bloque en una realización ejemplar del procedimiento según la invención,
la Figura 3 representa alternativas para ubicar el procedimiento de filtrado según la invención en un sistema de codificación y descodificación de vídeo digital,
la Figura 4 es una representación esquemática de un dispositivo para implementar un procedimiento según la invención,
la Figura 5 representa un dispositivo según la Figura 4 en funcionamiento, y
la Figura 6 es una representación esquemática de un dispositivo portátil de telecomunicaciones de vídeo que implementa un procedimiento según la invención.
En lo anterior, con respecto a la descripción de la técnica anterior, se hizo referencia a la Figura 1. En la siguiente descripción de la invención y sus realizaciones preferidas, se hará referencia mayormente a las Figuras 2 a 5. Se usan los mismos números de referencia para partes correspondientes en las figuras.
La Figura 2 muestra la ubicación de los píxeles r1 -r6 y l1 a l6 con respecto a un límite 30 de bloque vertical. Para implementar el procedimiento según la invención, se especifican ciertos parámetros. El parámetro n es el mayor número de píxeles a examinar provenientes del límite de bloque en una dirección y, en el caso de la Figura 2, su valor es 6. Es ventajoso seleccionar el valor del parámetro n de modo tal que tenga una cierta relación tanto con la diferencia de los valores ∆ de píxel a ambos lados del límite de bloque como con el tamaño de la etapa QP de cuantización de los coeficientes recibidos como resultado de la codificación de imagen. Además, el valor del parámetro n es ventajosamente más pequeño o igual que el número de píxeles en el bloque en la dirección del examen, para evitar posibles distorsiones de bloqueo asociadas a la dispersión de límites de bloque anteriores hasta el límite de bloque bajo examen. La siguiente definición se recomienda para su uso en una realización preferida de la invención aplicada a bloques de imagen que comprenden 8 x 8 píxeles:
0 ∆ > 2,00α
1 1,50α < ∆ < 2,00α
2 1,00α < ∆ < 1,50α
n = 3 0,66α < ∆ < 1,00α (2)
4 0,40α < ∆ < 0,66α
5 0,25α < ∆ < 0,40α
60α < ∆ < 0,25α
donde α = QP log(QP). Si QP tiene un valor distinto en bloques a lados distintos del límite de bloque, se usa el valor más pequeño de QP en los cálculos, así como en todos los casos presentados a continuación en el presente documento, en los cuales una definición incluye referencia a sólo un valor de QP. La invención no impone ninguna limitación en la determinación del valor del parámetro n, pero, según las directrices de la ecuación (2), es ventajoso que su valor sea generalmente mayor cuando la diferencia de valores ∆ de píxel a ambos lados del límite de bloque sea pequeña en comparación con el tamaño de la etapa QP de cuantización de los coeficientes recibidos como resultado de la transformación de codificación. Si la diferencia entre los valores ∆ de píxel es grande, hay una alta probabilidad de que haya un borde de imagen real en el límite de bloque y, en este caso, los píxeles, preferiblemente, no se examinan para el filtrado en absoluto (n = 0).
En la siguiente etapa del procedimiento de filtrado según la invención, se examina información del tipo de región concerniente a los dos bloques vecinos, es decir, se considera el tipo de los bloques a ambos lados del límite de bloque en cuestión. Según la información del tipo de región, puede limitarse (truncarse) adicionalmente el valor del parámetro n para proporcionar resultados aun mejores a fin de reducir distorsiones de bloqueo. La información del tipo de región se incluye, p. ej., en la información codificada relacionada con los píxeles de un bloque específico, en donde esa información se mantiene, o se almacena temporalmente, durante la descodificación del bloque, hasta que se determine un valor truncado ntr para el parámetro n.
La Tabla 1 muestra valores de truncado según una realización ventajosa de la presente invención. La Tabla 1 se aplica en una situación donde el valor máximo de n es 6 y, por supuesto, serían adecuados valores truncados distintos en situaciones donde el valor máximo es distinto a 6. Los valores de truncado se usan para los lados primero y segundo del límite de bloque, según el tipo de región del bloque en el primer lado del límite de bloque y el tipo de región del bloque en el segundo lado del límite de bloque.
TABLA 1
- tipo del Bloque en el Segundo lado de un límite
- tipo del Bloque en el Primer lado de un límite
- INTRA COPIA CODIFICADO NO CODIFICADO
- INTRA
- n n 2 2 n 4 n 2
- COPIA
- 2 2 2 2 2 4 2 2
- CODIFICADO
- 4 n 4 2 4 4 4 2
- NO CODIFICADO
- 4 n 2 2 2 4 2 2
Cada celda de la Tabla 1, correspondiente a una combinación específica de tipos de región, se divide en dos partes. El valor a la izquierda da el valor de truncado trval para el primer lado del límite de bloque y el valor a la derecha da el valor de truncado trval para el segundo lado del límite. Si el valor del parámetro n supera el valor dado en la Tabla 1, n se trunca al valor de truncado trval en la Tabla 1. Sin embargo, si el valor del parámetro n de actividad global no supera el valor dado en la Tabla 1, se conserva el valor del parámetro n (originalmente determinado a partir de la ecuación (2)). En la Tabla 1, el símbolo “n” indica que no se realiza un truncado adicional y que se conserva el valor del parámetro. El valor truncado ntr para el parámetro n también puede representarse por la fórmula:
La misma tabla puede usarse tanto para el filtrado a ambos lados de los límites de bloque verticales (filtrado horizontal), poniendo “Izquierda”/”Derecha” en lugar de “Primero”/”Segundo”, como para el filtrado a ambos lados de límites de bloque horizontales (filtrado vertical), poniendo “Abajo”/”Arriba” en lugar de “Primero”/”Segundo”, respectivamente. Ahora, el valor a la izquierda da el valor de truncado para los píxeles a la izquierda / debajo del límite de bloque, y el valor a la derecha da el valor de truncado para los píxeles a la derecha / encima del límite.
Para clarificar adicionalmente el uso de la Tabla 1, se presenta una situación ejemplar en lo siguiente. En esta situación ejemplar ilustrativa, el “filtrado horizontal” se realiza a ambos lados de un límite 30 de bloque vertical. Suponiendo que el valor para el parámetro n, calculado a partir de la ecuación 2, p. ej., es 4, el bloque al lado izquierdo del límite 30 de bloque en cuestión es del tipo Intra, y el bloque al lado derecho del límite 30 de bloque en cuestión es del tipo No codificado, la Tabla 1 indica que el valor de truncado para el lado izquierdo es n y el valor de truncado para el lado derecho es 2. Esto significa que los 4 píxeles más cercanos al límite de bloque (= al valor calculado de n) se seleccionan para su examen provenientes del lado izquierdo del límite, y los 2 píxeles más cercanos al límite de bloque (= al valor truncado de n) se seleccionan para su examen provenientes del lado derecho.
Otra situación ejemplar se presenta en lo siguiente. En esta situación ejemplar ilustrativa, el “filtrado horizontal” se realiza a ambos lados de un límite 30 de bloque vertical. Suponiendo que el valor del parámetro n calculado a partir de la ecuación (2), p. ej., es 4, y que los bloques a ambos lados del límite 30 de bloque en cuestión son del tipo Copia, la Tabla 1 indica que el valor de truncado para el lado izquierdo es 2 y que el valor de truncado para el lado derecho es 2. Esto significa que los 2 píxeles más cercanos al límite de bloque (= al valor truncado de n) se seleccionan para su examen provenientes del lado izquierdo del límite, y los 2 píxeles más cercanos al límite de bloque (= al valor truncado de n) se seleccionan para su examen provenientes del lado izquierdo.
Para tramas predichas bidireccionalmente (tramas-B), el truncado del parámetro n, ventajosamente, no se aplica, porque no hay ninguna información única del tipo de bloque.
La siguiente etapa en el procedimiento de filtrado según la invención es determinar los valores de los parámetros dl y dr, que representan la actividad, o las diferencias de valores de píxel, entre los píxeles a un lado del límite de bloque. Una definición preferida para dr es la siguiente:
dr = 6, si |r1 -rj| < β/j, con todos los j € [1,6].
en caso contrario; dr = i, donde i cumple las condiciones
i € [1, ntr], (4)
|r1 -ri+1| > β/i, y
|r1 -rj| < β/j, con todos los j € [1, i].
Aquí, el parámetro auxiliar β = 4 log(QP). El valor del parámetro dl se determina de manera similar, excepto en que todas las r son reemplazadas por las l, y que debe usarse el correspondiente valor truncado ntr para el parámetro n. El número 6 aparece en la definición (4) porque, según la ecuación (2), el mayor valor posible de n es 6 en este caso. Si n se define de manera diferente, pero los parámetros dr y dl se definen según la definición (4), el número 6 debe ser reemplazado por el mayor valor posible de n según la nueva definición.
Es ventajoso que los valores de los parámetros dr y dl se calculen independientemente entre sí, porque la información de imagen contenida en la trama puede ser distinta a ambos lados del límite de bloque. La invención no limita la definición de los parámetros dr y dl pero, según las directrices de la definición (4), es ventajoso que estos parámetros se usen para limitar el procesamiento de la distorsión de bloqueo relativamente cerca del límite de bloque, si hay un borde de imagen real cerca del límite de bloque. Las características esenciales de la definición (4) pueden resumirse de la siguiente manera: el valor del parámetro dr (y, de forma correspondiente, el valor del parámetro dl) proporciona una indicación de cuántos píxeles, contados desde el límite de bloque, tienen aproximadamente el mismo valor que el píxel en el límite de bloque.
Un valor alto del parámetro rr (p. ej., 6) indica que la diferencia ente los valores de píxel en el límite de bloque es relativamente pequeña en comparación con la variación general de los valores de píxel dentro del bloque. En este caso, es posible que haya un borde de imagen real cerca del límite de bloque. Seleccionando un valor suficientemente pequeño del parámetro dr (o dl), es posible restringir el filtrado orientado a corregir distorsiones de bloqueo, de modo tal que no tenga un efecto de deterioro sobre un borde de imagen real cerca del límite de bloque. En algunas situaciones, un gran número de píxeles contados a partir del límite de bloque tienen aproximadamente el mismo valor que el píxel en el límite de bloque. En ese caso, la definición (4) daría al parámetro dr (o dl) un valor relativamente alto. Sin embargo, si hay una clara discontinuidad en valores de píxel entre los bloques, el parámetro n tiene un valor pequeño y el valor truncado ntr se usa en la definición (4), lo que asegura que no se seleccione un valor irrazonablemente alto como el valor del parámetro dr (o dl). En caso contrario, un valor relativamente alto del parámetro dr (o dl) daría como resultado un filtrado innecesario.
Si los bloques a ambos lados del límite de bloque son bloques de tipo Intra, el truncado no tiene ningún efecto sobre la selección de los valores paramétricos n, dr y dl. Por otra parte, si al menos uno de los bloques tiene un tipo distinto a Intra, el truncado del valor n según la fórmula (3) puede limitar el número de píxeles filtrados. Esto tiene la ventaja de que los límites de bloque no se allanan demasiado.
Además, debe decidirse el mayor número posible de píxeles a filtrar. Esto no tiene una notación propia en la Figura 2, pero puede ser, p. ej., 3, lo que significa que el filtrado sólo puede usarse para corregir el valor de los píxeles r1, r2, r3, l1, l2 y l3. Cuando los valores de los parámetros n, ntr, dr y dl han sido determinados, el filtrado se lleva a cabo usando un filtro adecuado. La invención no limita la clase de filtro que puede usarse, pero una disposición de filtrado que ha resultado ser preferible se describirá en lo que sigue. El filtrado se usa para determinar un nuevo valor para los píxeles seleccionados para el filtrado. En una realización preferida de la invención, se determina un nuevo valor de píxel para
un píxel dado calculando la media de los valores de píxel que aparecen en una ventana de filtrado. En la realización preferida, la ventana de filtrado es simétrica con respecto al píxel a filtrar y contiene, además del píxel a filtrar, uno, dos
o tres píxeles de ambos lados, según los valores de los parámetros dr y dl descritos a continuación en el presente documento. Por supuesto, estos son sólo ejemplos, y podrían escogerse otros valores en situaciones donde n, ntr, dr y dl se definen de manera distinta. El valor medio calculado se redondea al valor más cercano de píxel digitalizado, por lo cual se convierte en el nuevo valor del píxel filtrado.
La Tabla 2 muestra la determinación del ancho de la ventana de filtrado para los píxeles r1, r2 y r3 según el valor del parámetro dr en una realización preferida de la invención. Los valores de los píxeles l1, l2 y l3 se determinan de la misma manera, según el valor del parámetro dl. En la tabla, “X” significa que el píxel en cuestión no está filtrado en absoluto, y el número significa que la ventana de filtrado incluye un cierto número de píxeles, mostrado por el número a cada lado del píxel que se está examinando. Entre otras cosas, la Tabla 2 muestra que para que se aplique el filtrado a cualquier píxel, ambos parámetros dr y dl deben tener un valor mayor que 1.
- dr (dl > 1)
- r1 r2 r3
- 1
- X X X
- 2
- 1 X X
- 3
- 1 1* X
- 4
- 2 2 X
- 5
- 2 2 2**
- 6
- 3 o 2*** 3 3
- * el valor filtrado del píxel r1 se usa para el filtrado del píxel r2 ** los valores filtrados de los píxeles r1 y r2 se usan para filtrar el píxel r3 *** 3 si dl > 2, 2 en caso contrario.
La descripción anterior se refiere a la implementación del filtrado en una parte horizontal de una fila de píxeles, que es de 12 píxeles de largo y está situada simétricamente a ambos lados de un límite de bloque vertical. La descripción puede generalizarse fácilmente para afectar a partes verticales de columnas de píxeles, que estén situadas simétricamente a ambos lados de un límite de bloque horizontal: la Figura 2 puede girarse 90 grados en sentido contrario a las agujas del reloj, por lo cual el límite 30 de bloque se hace horizontal, y los píxeles mostrados en la figura forman parte de la columna de píxeles verticales, de modo tal que los píxeles r1 -r6 sean los píxeles por encima y los píxeles l1 -l6 sean los píxeles por debajo del límite. Para filtrar los límites de bloque por toda la trama entera, aplicando el procedimiento según la invención, todos los límites de bloque verticales se examinan fila por fila y todos los límites de bloque horizontales se examinan columna por columna. El orden no tiene importancia como tal, y por tanto todos los limites de bloque horizontales de la trama podrían examinarse primero columna por columna, y luego todos los límites de bloque verticales fila por fila. En una realización ventajosa de la invención, el filtrado se repite línea por línea, es decir, la primera línea de los píxeles en los bloques (junto al límite) se filtra primero, luego la segunda línea, etc.
La Figura 3 muestra en qué puntos puede mejorarse un sistema de codificación y descodificación (códec) de imagen digital según la tecnología anterior, aplicando el filtrado según la invención. La primera alternativa es colocar un bloque que implementa el procedimiento de filtrado según la invención en la salida del descodificador del receptor, según lo ilustrado por el número 31 de referencia. En este caso, los límites de bloque en la trama de vídeo se filtran después de que todos los bloques dentro de la trama han sido descodificados. Esto requiere que la información del tipo de bloque se almacene para todos los bloques en una trama. Otra alternativa es colocar el bloque de filtrado en el receptor antes del punto en el cual la trama descodificada se dirige a la memoria 25 de tramas para formar una trama de predicción, según lo ilustrado por el número 32 de referencia. En este caso, también debe almacenarse la información del tipo de bloque para todos los bloques dentro de la trama, ya que el filtrado de límites de bloque aún se efectúa después de descodificar y reconstruir la trama entera. Sin embargo, esta alternativa tiene la ventaja de que la eliminación de distorsiones de bloqueo también tiene efecto sobre la formación de una trama de predicción, por lo cual las distorsiones de bloqueo en una trama no se propagan mediante la trama de predicción a tramas subsiguientes. A fin de lograr el efecto recién descrito, el bloque que realiza el filtrado según la invención puede colocarse bien antes o después de la memoria 25 de tramas. Sin embargo, se prefiere la ubicación mostrada por el número 32 de referencia, porque, cuando se aplica en esta etapa, el filtrado influye simultáneamente en la trama a ser emitida por el descodificador receptor y en la trama a guardar en la memoria. En el transmisor, puede colocarse un bloque que implementa el procedimiento de
filtrado según la invención, según lo mostrado por los números 33 y 34 de referencia, bien antes o después de la memoria 16 de tramas. De esta manera, la invención también puede usarse para producir una trama de predicción correcta en el extremo de transmisión.
En una realización especialmente ventajosa de la invención, el bloque que lleva a cabo el filtrado según la invención se implementa en un procesador de señales digitales o un dispositivo correspondiente, adecuado para el procesamiento de una señal digital, que pueda programarse para aplicar funciones predeterminadas de procesamiento a una señal recibida como datos de entrada. La Figura 4 presenta los elementos funcionales de un bloque que lleva a cabo el procedimiento de filtrado según la invención, implementado como un procesador de señales digitales. De forma correspondiente, el funcionamiento del bloque de filtrado es ilustrado por la Figura 5. Con referencia primero a la Figura 4, los elementos funcionales se programan con definiciones funcionales (35 a 39) para calcular los parámetros que controlan el procedimiento de filtrado según la invención. Ventajosamente, las definiciones funcionales se cargan en el procesador de señales en relación con su fabricación o programación. Durante el funcionamiento según la Figura 5, la trama se guarda temporalmente en el registro 41, de modo tal que pueda ser procesada por el procesador de señales.
El procesamiento de la trama continúa bloque a bloque. En un instante dado, se selecciona un cierto número de píxeles, indicado por el parámetro n, ntr, según las definiciones proporcionadas en la Tabla 1, para ser examinados 42, desde cada lado de un cierto punto de un cierto límite de bloque, se calculan los parámetros-d 43 y se realiza el filtrado
44. Estas operaciones se repiten hasta que todos los límites de todos los bloques hayan sido filtrados / procesados, después de lo cual la trama puede emitirse desde el registro 41 y una nueva trama puede guardarse para su procesamiento. Las medidas según las Figuras 4 y 5 pueden ser llevadas a cabo en un procesador de señales distinto,
o bien pueden implementarse en un procesador general que también contenga otras disposiciones para el procesamiento de señales.
Puede usarse un medio de almacenamiento para almacenar un programa de software que comprenda etapas ejecutables por máquina, para llevar a cabo el procedimiento según la invención. En una realización ventajosa de la invención, el programa de software se lee desde el medio de almacenamiento, hasta un dispositivo que comprende medios programables, p. ej., un procesador, para llevar a cabo el procedimiento de la invención.
La invención puede modificarse sin apartarse del alcance definido por las reivindicaciones presentadas más adelante en el presente documento, usando las capacidades de una persona experta en la técnica, sin etapas inventivas efectivas. Por ejemplo, el parámetro ∆ puede calcularse usando la fórmula ∆ = |(r1 + r2) -(l1 + l2)|, o alguna otra fórmula considerada adecuada. Las definiciones de los otros parámetros presentados anteriormente también deberían considerarse como ejemplos solamente. Un uso especialmente ventajoso de la invención es en aplicaciones móviles de telecomunicación por vídeo, receptores de televisión digital y otros dispositivos que al menos reciban y descodifiquen imágenes de vídeo digital. Debería observarse además que, en general, el procedimiento según la invención puede aplicarse a cualquier procedimiento de codificación de imágenes en el cual una imagen se codifique / descodifique bloque por bloque, incluyendo las imágenes digitales individuales (es decir, fijas).
La Figura 6 muestra un terminal móvil 46 concebido para su uso como un dispositivo portátil de telecomunicaciones de vídeo, y que aplica el procedimiento según la invención. Ventajosamente, el terminal móvil 46 comprende al menos el medio 47 de visor para exhibir imágenes, el medio 48 de audio para capturar y reproducir información de audio, un teclado 49 para ingresar, p. ej., comandos de usuario, una pieza 50 de radio para comunicarse con una red móvil de comunicaciones (no mostrada), medios 51 de procesamiento para controlar el funcionamiento del dispositivo, medios 52 de memoria para almacenar información y, preferiblemente, una cámara 53 para tomar imágenes.
La presente invención no está únicamente restringida a las realizaciones presentadas anteriormente, sino que puede modificarse dentro del alcance de las reivindicaciones adjuntas.
Claims (32)
- REIVINDICACIONES
- 1.
- Un procedimiento para reducir distorsiones visuales en una trama de una señal de vídeo digital, que se codifica en bloques y luego se descodifica, estando un tipo de bloque definido según el procedimiento de codificación de predicción para un bloque seleccionado entre un conjunto predeterminado de tipos de codificación, comprendiendo el procedimiento realizar una operación de filtrado adaptable de límites de bloque sobre un límite de bloque formado entre un primer bloque de imagen descodificada sobre un primer lado del límite de bloque y un segundo bloque de imagen descodificada sobre un segundo lado del límite de bloque, caracterizado porque el primer bloque de imagen descodificada ha sido codificado usando un primer tipo de procedimiento de codificación de predicción y el segundo bloque de imagen descodificada ha sido codificado usando un segundo tipo de procedimiento de codificación de predicción, en donde al menos un parámetro de la operación de filtrado se determina en base a los tipos de los procedimientos de codificación de predicción primero y segundo, y los tipos primero y segundo de procedimientos de codificación de predicción se seleccionan entre un grupo de procedimientos de codificación de predicción que comprende al menos: codificación intra, codificación por copia, codificación de predicción compensada por movimiento y codificación no codificada.
-
- 2.
- Un procedimiento según la Reivindicación 1, caracterizado porque la trama comprende al menos una región de bloques, teniendo cada bloque dentro de dicha región un tipo de región, y porque el filtrado realizado sobre el límite de bloque depende de un tipo de región de los bloques en el entorno del límite (30) de bloque.
-
- 3.
- Un procedimiento según la Reivindicación 1 o 2, caracterizado porque dicho al menos un parámetro se selecciona entre un grupo que comprende: un cierto número de píxeles a examinar, un cierto número de píxeles a filtrar, una medida de actividad que proporciona una indicación de la diferencia entre valores de píxel en un lado del límite de bloque, una ventana de filtrado.
-
- 4.
- Un procedimiento según cualquiera de las Reivindicaciones 1 a 3, en el cual se selecciona un cierto número de píxeles (n) para su examen, provenientes de al menos un lado del límite (30) de bloque, caracterizado porque el número de píxeles (n) seleccionados para su examen depende del contenido de imágenes de la trama en el entorno del límite (30) de bloque, y porque el número de píxeles (n) seleccionados para su examen depende adicionalmente del tipo de bloque de un bloque en el entorno del límite (30) de bloque.
-
- 5.
- Un procedimiento según la Reivindicación 4, caracterizado porque el número de píxeles (n) seleccionados para su examen depende de la diferencia en valor (∆) de píxel entre los píxeles a ambos lados del límite de bloque.
-
- 6.
- Un procedimiento según la Reivindicación 4 o 5, caracterizado porque el número de píxeles seleccionados para su examen depende del tamaño de la etapa (QP) de cuantización de los coeficientes usados en la codificación de los bloques.
-
- 7.
- Un procedimiento según la Reivindicación 6, caracterizado porque el número de píxeles (n) seleccionados para su examen está determinado por la fórmula:
0 ∆ > 2,00α1 1,50α < ∆ < 2,00α2 1,00α < ∆ < 1,50αn = 3 0,66α < ∆ < 1,00α (2)4 0,40α < ∆ < 0,66α5 0,25α < ∆ < 0,40α60α < ∆ < 0,25αdonde ∆ es la diferencia en valor entre los pixeles a ambos lados del límite de bloque, α = QP log(QP) y QP es el tamaño de la etapa de cuantización de los coeficientes usados en la codificación de los bloques. -
- 8.
- Un procedimiento según la Reivindicación 5, 6 o 7, caracterizado porque el número de píxeles (n) se define primero según el contenido de imágenes de la trama en el entorno del límite (30) de bloque, y el número de píxeles (n) se trunca adicionalmente según el tipo de bloque de un bloque en el entorno del límite (30) de bloque, a fin de dar un número truncado de píxeles (ntr) para su examen.
-
- 9.
- Un procedimiento según la Reivindicación 8, caracterizado porque el número truncado de píxeles (ntr) se determina seleccionando un valor de truncado (trval) según la tabla
- Tipo de región del Bloque en el Segundo lado
- Tipo de región del Bloque en el Primer lado
- INTRA COPIA CODIFICADO NO CODIFICADO
- INTRA
- n n 2 2 n 4 n 2
- COPIA
- 2 2 2 2 2 4 2 2
- CODIFICADO
- 4 n 4 2 4 4 4 2
- NO CODIFICADO
- 4 n 2 2 2 4 2 2
y usando dicho valor de truncado (trval) seleccionado con la fórmulantr = mín (trval, n), (3). - 10. Un procedimiento según cualquier Reivindicación precedente, caracterizado porque se seleccionan ciertos píxelespara filtrar, y se determina un nuevo valor para cada píxel a filtrar en base a los píxeles que aparecen en una ventana 5 de filtrado puesta alrededor del píxel.
-
- 11.
- Un procedimiento según cualquier Reivindicación precedente, caracterizado porque los píxeles a filtrar se seleccionan entre los píxeles seleccionados para su examen.
-
- 12.
- Un procedimiento según la Reivindicación 10 u 11, caracterizado porque el nuevo valor del píxel a filtrar es el valor medio de los píxeles que aparecen en la ventana de filtrado.
10 13. Un procedimiento según la Reivindicación 10, caracterizado porque, para determinar un nuevo valor para los píxeles a filtrar en el primer lado del límite de bloque, se usa dicha ventana de filtrado, y se determina el tamaño de la ventana según la tabla- dr (dl > 1)
- r1 r2 r3
- 1
- X X X
- 2
- 1 X X
- 3
- 1 1* X
- 4
- 2 2 X
- 5
- 2 2 2**
- 6
- 3 o 2*** 3 3
- * el valor filtrado del píxel r1 se usa para el filtrado del píxel r2 ** los valores filtrados de los píxeles r1 y r2 se usan para filtrar el píxel r3 *** 3 si dl > 2, 2 en caso contrario.
donde un parámetro entero dr indica actividad en el primer lado del límite de bloque, y un parámetro entero dl indica actividad en el segundo lado del límite de bloque, r1, r2 y r3 son los tres píxeles en el primer lado del límite de bloque15 más cercanos al límite en este orden, X significa que el píxel no se filtra, el número significa que, además del píxel a filtrar, se lleva una cierta cantidad de píxeles, mostrada por el número, a la ventana de filtrado desde ambos lados del píxel a filtrar, y “3 o 2” significa “3, si dl > 2, 2 en caso contrario” y, para determinar el nuevo valor de los píxeles a filtrar en el otro lado del límite de bloque, se usa una ventana de filtrado definida de manera similar, con la excepción de que todas las r son reemplazadas por las l, y viceversa.20 14. Un procedimiento según la Reivindicación 13, caracterizado porque dicha actividad se determina en base a cambios en valores de píxel. - 15. Un procedimiento según la Reivindicación 13 o 14, caracterizado porquedr = 6, si |r1 -rj| < β/j, con todos los j € [1,6].en caso contrario; dr = i, donde i cumple las condicionesi € [1, ntr],|r1 -ri+1| > β/i,y|r1 -rj| < β/j, con todos los j € [1, i],donde el parámetro auxiliar β = 4 log (QP) y QP es el tamaño de la etapa de cuantización de los coeficientes usados en la codificación de los bloques, y el valor del parámetro dl se determina de manera similar, con la excepción de que todas las r son reemplazadas por las l.
-
- 16.
- Un dispositivo para reducir distorsiones visuales en una trama de una señal de vídeo digital, que se codifica en bloques y luego se descodifica, estando un tipo de bloque definido según el procedimiento de codificación de predicción para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, comprendiendo el dispositivo medios (39) para realizar una operación de filtrado adaptable de límite de bloque sobre un límite de bloque formado entre un primer bloque de imagen descodificada en un primer lado del límite de bloque y un segundo bloque de imagen descodificada en un segundo lado del límite de bloque, caracterizado porque el primer bloque de imagen descodificada ha sido codificado usando un primer tipo de procedimiento de codificación de predicción y el segundo bloque de imagen descodificada ha sido codificado usando un segundo tipo de procedimiento de codificación de predicción, en donde el dispositivo comprende medios para determinar al menos un parámetro de la operación de filtrado en base a los tipos de los procedimientos de codificación de predicción primero y segundo, el primer tipo de procedimiento de codificación de predicción es codificación intra, codificación de copia, codificación de predicción compensada por movimiento o codificación no codificada, y el segundo tipo de procedimiento de codificación de predicción es codificación intra, codificación de copia, codificación de predicción compensada por movimiento o codificación no codificada.
-
- 17.
- Un dispositivo según la Reivindicación 16, caracterizado porque el filtro está dispuesto de modo tal que la trama comprende al menos una región de bloques, teniendo cada bloque dentro de dicha región un tipo de región, y porque el filtrado realizado en el límite de bloque depende de un tipo de región de los bloques en el entorno del límite (30) de bloque.
-
- 18.
- Un dispositivo según la Reivindicación 17, caracterizado porque dicho al menos un parámetro se selecciona entre un grupo que comprende: un cierto número de píxeles a examinar, un cierto número de píxeles a filtrar, una medida de actividad que proporciona una indicación de la diferencia entre valores de píxel en un lado del límite de bloque, una ventana de filtrado.
-
- 19.
- Un dispositivo según la Reivindicación 17 o 18, caracterizado porque comprende medios (42) que funcionan adaptablemente según el contenido de imagen de la trama, para seleccionar un cierto número de píxeles (n) para su examen, y ese medio (42) para seleccionar un cierto número de píxeles (n) para su examen comprende medios (42) adicionales para examinar el tipo de bloque de un bloque en el entorno del límite (30) de bloque.
-
- 20.
- Un dispositivo según la Reivindicación 19, caracterizado porque comprende medios (42) para seleccionar el número de píxeles (n) para su examen, según la diferencia en valor (∆) de píxel entre los píxeles a ambos lados del límite de bloque.
-
- 21.
- Un dispositivo según cualquiera de las Reivindicaciones 16 a 20, caracterizado porque comprende medios (42) para seleccionar un cierto número de píxeles (n) para su examen, según el tamaño de la etapa (QP) de cuantización de los coeficientes usados en la codificación de los bloques.
-
- 22.
- Un dispositivo según la Reivindicación 21, caracterizado porque el medio (42) para seleccionar el número de píxeles (n) para su examen comprende medios (35) para determinar dicho número de píxeles según la fórmula:
0 ∆ > 2,00α1 1,50α < ∆ < 2,00α2 1,00α < ∆ < 1,50αn = 3 0,66α < ∆ < 1,00α (2)4 0,40α < ∆ < 0,66α5 0,25α < ∆ < 0,40α 60α < ∆ < 0,25αdonde ∆ es la diferencia en valor entre los píxeles a ambos lados del límite de bloque, α = QP log(QP) y QP es el tamaño de la etapa de cuantización de los coeficientes usados en la codificación de los bloques. - 23. Un dispositivo según cualquiera de las Reivindicaciones 16 a 22, caracterizado porque comprende medios (42)5 para truncar el número de píxeles (n) seleccionados para su examen, en base al tipo de bloque de un bloque en el entorno del límite de bloque.
- 24. Un dispositivo según cualquiera de las Reivindicaciones 16 a 23, caracterizado porque el medio (42) para seleccionar un cierto número de píxeles para su examen comprende medios para definir el número de píxeles (n) según el contenido de imagen de la trama en el entorno del límite (30) de bloque, y medios para truncar el número de10 píxeles (n) según el tipo de bloque de un bloque en el entorno del límite (30) de bloque.
- 25. Un dispositivo según la Reivindicación 24, caracterizado porque el medio para truncar el número de píxeles (n) comprende medios para seleccionar un valor de truncado (trval) según la tabla:
- tipo del Bloque en el Segundo lado
- tipo del Bloque en el Primer lado
- INTRA COPIA CODIFICADO NO CODIFICADO
- INTRA
- n n 2 2 n 4 n 2
- COPIA
- 2 2 2 2 2 4 2 2
- CODIFICADO
- 4 n 4 2 4 4 4 2
- NO CODIFICADO
- 4 n 2 2 2 4 2 2
y usar dicho valor (trval) de truncado seleccionado con la fórmula:ntr = mín (trval, n), (3).15 26. Un dispositivo según cualquiera de las Reivindicaciones 16 a 25, caracterizado porque comprende medios (42) para seleccionar ciertos píxeles a filtrar, medios (42) para definir una ventana de filtrado y medios para determinar un nuevo valor para cada píxel a filtrar, en base a píxeles que aparecen en una ventana de filtrado puesta alrededor del píxel. - 27. Un dispositivo según la Reivindicación 26, caracterizado porque el medio para determinar un nuevo valor para 20 cada píxel comprende medios para calcular un valor medio de los píxeles que aparecen en la ventana de filtrado.
-
- 28.
- Un dispositivo según la Reivindicación 22, caracterizado porque el medio para determinar un nuevo valor para cada píxel comprende medios para usar dicha ventana de filtrado para los píxeles a filtrar en el primer lado del límite de bloque, y medios para determinar el tamaño de la ventana según la tabla
donde un parámetro entero dr indica actividad en el primer lado del límite de bloque, y un parámetro entero dl indica actividad en el segundo lado del límite de bloque, r1, r2 y r3 son los tres píxeles en el primer lado del límite de bloque más cercanos al límite en este orden, X significa que el píxel no se filtra, el número significa que, además del píxel a filtrar, se lleva una cierta cantidad de píxeles, mostrada por el número, a la ventana de filtrado desde ambos lados del píxel a filtrar, y “3 o 2” significa “3, si dl > 2, 2 en caso contrario”, y medios para usar una ventana de filtrado definida de manera similar, para determinar el nuevo valor de los píxeles a filtrar en el otro lado del límite de bloque, con la excepción de que todas las r son reemplazadas por las l, y viceversa. -
- 29.
- Un dispositivo según la Reivindicación 28, caracterizado porque
- dr (dl > 1)
- r1 r2 r3
- 1
- X X X
- 2
- 1 X X
- 3
- 1 1* X
- 4
- 2 2 X
- 5
- 2 2 2**
- 6
- 3 o 2*** 3 3
- * el valor filtrado del píxel r1 se usa para el filtrado del píxel r2 ** los valores filtrados de los píxeles r1 y r2 se usan para filtrar el píxel r3 *** 3 si dl > 2, 2 en caso contrario.
dr = 6, si |r1 -rj| < β/j, con todos los j € [1,6].en caso contrario; dr = i, donde i cumple las condicionesi € [1, ntr],|r1 -ri+1| > β/i,y|r1 -rj| < β/j, con todos los j € [1, i],donde el parámetro auxiliar β = 4 log (QP) y QP es el tamaño de la etapa de cuantización de los coeficientes usados en la codificación de transformación de los bloques, y el valor del parámetro dl se determina de manera similar, con la excepción de que todas las r son reemplazadas por las l. - 30. Un dispositivo según cualquiera de las Reivindicaciones 16 a 29, caracterizado porque comprende medios programables (42) para seleccionar píxeles de una trama guardada como los píxeles a examinar, medios programables(45) para seleccionar píxeles a filtrar entre los píxeles a examinar, y medios programables (44) para determinar el nuevo valor de los píxeles a filtrar.
-
- 31.
- Un codificador (10) de vídeo que comprende el dispositivo según cualquiera de las reivindicaciones 16 a 30.
-
- 32.
- Un descodificador (20) de vídeo que comprende el dispositivo según cualquiera de las reivindicaciones 16 a 30.
-
- 33.
- Un códec (10, 20) de vídeo que comprende el dispositivo según cualquiera de las reivindicaciones 16 a 30.
-
- 34.
- Un terminal móvil (46) que comprende el dispositivo según cualquiera de las reivindicaciones 16 a 30.
-
- 35.
- Un medio de almacenamiento para almacenar un programa de software que comprende etapas ejecutables por máquina para codificar y descodificar una señal de vídeo digital en bloques, estando un tipo de bloque definido según el procedimiento de codificación de predicción para un bloque seleccionado según un conjunto predeterminado de tipos de codificación, para reducir distorsiones visuales debidas a un límite de bloque mediante filtrado, comprendiendo el programa de software etapas ejecutables por máquina para realizar una operación de filtrado adaptable de límite de bloque sobre un límite de bloque formado entre un primer bloque de imagen descodificada en un primer lado del límite de bloque y un segundo bloque de imagen descodificada en un segundo lado del límite de bloque, caracterizado porque el primer bloque de imagen descodificada ha sido codificado usando un primer tipo de procedimiento de codificación de predicción y el segundo bloque de imagen descodificada ha sido codificado usando un segundo tipo de procedimiento de codificación de predicción, en donde el programa de software comprende adicionalmente etapas ejecutables por máquina para determinar al menos un parámetro de la operación de filtrado, en base a los tipos de los procedimientos de codificación de predicción primero y segundo, y los tipos primero y segundo de los procedimientos de codificación de predicción se seleccionan entre un grupo de procedimientos de codificación de predicción que comprende al menos: codificación intra, codificación de copia, codificación de predicción compensada por movimiento y codificación no codificada.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI20000120A FI117533B (fi) | 2000-01-20 | 2000-01-20 | Menetelmä digitaalisten videokuvien suodattamiseksi |
FI20000120 | 2000-01-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2368706T3 true ES2368706T3 (es) | 2011-11-21 |
Family
ID=8557147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES01902442T Expired - Lifetime ES2368706T3 (es) | 2000-01-20 | 2001-01-22 | Un procedimiento y dispositivo asociado para filtrar imágenes digitales de video. |
Country Status (12)
Country | Link |
---|---|
US (2) | US9800891B2 (es) |
EP (1) | EP1186177B1 (es) |
CN (2) | CN1230001C (es) |
AT (1) | ATE522088T1 (es) |
AU (1) | AU778990B2 (es) |
CA (1) | CA2374523C (es) |
ES (1) | ES2368706T3 (es) |
FI (1) | FI117533B (es) |
HK (2) | HK1048411B (es) |
RU (2) | RU2295203C2 (es) |
SG (1) | SG128476A1 (es) |
WO (1) | WO2001054415A1 (es) |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7450641B2 (en) | 2001-09-14 | 2008-11-11 | Sharp Laboratories Of America, Inc. | Adaptive filtering based upon boundary strength |
US6931063B2 (en) | 2001-03-26 | 2005-08-16 | Sharp Laboratories Of America, Inc. | Method and apparatus for controlling loop filtering or post filtering in block based motion compensationed video coding |
US7929610B2 (en) * | 2001-03-26 | 2011-04-19 | Sharp Kabushiki Kaisha | Methods and systems for reducing blocking artifacts with reduced complexity for spatially-scalable video coding |
KR100525785B1 (ko) * | 2001-06-15 | 2005-11-03 | 엘지전자 주식회사 | 이미지 화소 필터링 방법 |
AU2002323591A1 (en) * | 2001-09-05 | 2003-03-18 | Emblaze Systems Ltd. | Method for reducing blocking artifacts |
US20050013494A1 (en) * | 2003-07-18 | 2005-01-20 | Microsoft Corporation | In-loop deblocking filter |
US8625680B2 (en) * | 2003-09-07 | 2014-01-07 | Microsoft Corporation | Bitstream-controlled post-processing filtering |
US7724827B2 (en) * | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
US9715898B2 (en) * | 2003-12-16 | 2017-07-25 | Core Wireless Licensing S.A.R.L. | Method and device for compressed-domain video editing |
US7551793B2 (en) * | 2004-01-14 | 2009-06-23 | Samsung Electronics Co., Ltd. | Methods and apparatuses for adaptive loop filtering for reducing blocking artifacts |
GB2418093B (en) * | 2004-09-09 | 2007-03-28 | Imagination Tech Ltd | Method and apparatus for removing visible artefacts in video images |
US20080084932A1 (en) * | 2006-10-06 | 2008-04-10 | Microsoft Corporation | Controlling loop filtering for interlaced video frames |
US7876808B2 (en) * | 2006-11-30 | 2011-01-25 | Broadcom Corp. | Method and apparatus for adaptive noise and/or signal filtering in an HSDPA channel quality indicator (CQI) selection |
MX2009006404A (es) * | 2006-12-18 | 2009-06-23 | Koninkl Philips Electronics Nv | Compresion y descompresion de imagen. |
US9967590B2 (en) | 2008-04-10 | 2018-05-08 | Qualcomm Incorporated | Rate-distortion defined interpolation for video coding based on fixed filter or adaptive filter |
US8831086B2 (en) | 2008-04-10 | 2014-09-09 | Qualcomm Incorporated | Prediction techniques for interpolation in video coding |
JP4813517B2 (ja) * | 2008-05-29 | 2011-11-09 | オリンパス株式会社 | 画像処理装置、画像処理プログラム、画像処理方法、および電子機器 |
US10123050B2 (en) | 2008-07-11 | 2018-11-06 | Qualcomm Incorporated | Filtering video data using a plurality of filters |
US20110211636A1 (en) * | 2008-11-07 | 2011-09-01 | Yoshihisa Yamada | Image encoder and image decoder |
KR101680915B1 (ko) * | 2008-11-25 | 2016-11-29 | 톰슨 라이센싱 | 비디오 인코딩 및 디코딩을 위한 희소성-기반 아티팩트 제거 필터링 방법 및 장치 |
JP5490404B2 (ja) | 2008-12-25 | 2014-05-14 | シャープ株式会社 | 画像復号装置 |
US9143803B2 (en) | 2009-01-15 | 2015-09-22 | Qualcomm Incorporated | Filter prediction based on activity metrics in video coding |
US8559733B2 (en) * | 2009-03-31 | 2013-10-15 | Citrix Systems, Inc. | Methods and systems for approximating progressive image encoding using image partitioning |
WO2010146771A1 (ja) * | 2009-06-19 | 2010-12-23 | 三菱電機株式会社 | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
JP5597968B2 (ja) * | 2009-07-01 | 2014-10-01 | ソニー株式会社 | 画像処理装置および方法、プログラム、並びに記録媒体 |
JP2011049740A (ja) * | 2009-08-26 | 2011-03-10 | Sony Corp | 画像処理装置および方法 |
US8787443B2 (en) | 2010-10-05 | 2014-07-22 | Microsoft Corporation | Content adaptive deblocking during video encoding and decoding |
ES2714349T3 (es) * | 2011-01-14 | 2019-05-28 | Ericsson Telefon Ab L M | Filtrado de desbloqueo |
US8964852B2 (en) | 2011-02-23 | 2015-02-24 | Qualcomm Incorporated | Multi-metric filtering |
JP5291134B2 (ja) | 2011-03-09 | 2013-09-18 | 日本電信電話株式会社 | 映像符号化/復号方法,映像符号化/復号装置およびそのプログラム |
JP5291133B2 (ja) * | 2011-03-09 | 2013-09-18 | 日本電信電話株式会社 | 画像処理方法,画像処理装置,映像符号化/復号方法,映像符号化/復号装置およびそれらのプログラム |
US9042458B2 (en) | 2011-04-01 | 2015-05-26 | Microsoft Technology Licensing, Llc | Multi-threaded implementations of deblock filtering |
US8724701B1 (en) * | 2011-04-18 | 2014-05-13 | Google Inc. | Using object decomposition to improve the selection of example-based predictors |
JP2014526818A (ja) * | 2011-09-09 | 2014-10-06 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 低複雑度のデブロッキングフィルタ決定 |
GB201119206D0 (en) | 2011-11-07 | 2011-12-21 | Canon Kk | Method and device for providing compensation offsets for a set of reconstructed samples of an image |
RU2586029C1 (ru) * | 2012-04-13 | 2016-06-10 | Мицубиси Электрик Корпорейшн | Устройство кодирования изображений, устройство декодирования изображений, способ кодирования изображений и способ декодирования изображений |
EP2858354B1 (en) | 2012-05-25 | 2022-12-21 | Sun Patent Trust | Video image coding method, video image decoding method, video image coding device, video image decoding device, and video image coding-decoding device |
WO2013175698A1 (ja) | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置および画像符号化復号装置 |
WO2013175736A1 (ja) | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および、動画像符号化復号装置 |
EP2858357B1 (en) | 2012-06-04 | 2022-07-06 | Sun Patent Trust | Video image encoding method, video image decoding method |
WO2017052409A1 (en) | 2015-09-25 | 2017-03-30 | Huawei Technologies Co., Ltd. | Apparatus and method for video motion compensation with selectable interpolation filter |
MY197611A (en) | 2015-09-25 | 2023-06-28 | Huawei Tech Co Ltd | Apparatus and method for video motion compensation |
CN108141603B (zh) | 2015-09-25 | 2020-12-15 | 华为技术有限公司 | 视频编解码方法及视频编解码器 |
JP6678735B2 (ja) * | 2015-09-25 | 2020-04-08 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 予測符号化のための適応シャープニングフィルタ |
EP3354027A1 (en) | 2015-09-25 | 2018-08-01 | Huawei Technologies Co., Ltd. | Apparatus and method for video motion compensation |
RU2640298C1 (ru) * | 2015-10-12 | 2017-12-27 | Общество С Ограниченной Ответственностью "Яндекс" | Способ обработки и хранения изображений |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5225904A (en) * | 1987-10-05 | 1993-07-06 | Intel Corporation | Adaptive digital video compression system |
US5218649A (en) * | 1990-05-04 | 1993-06-08 | U S West Advanced Technologies, Inc. | Image enhancement system |
RU2042282C1 (ru) | 1992-07-27 | 1995-08-20 | Санкт-Петербургский государственный электротехнический университет им.Ульянова (Ленина В.И.) | Устройство цифрового кодирования и декодирования телевизионного сигнала |
EP0708563B1 (en) * | 1994-10-19 | 2004-12-22 | Matsushita Electric Industrial Co., Ltd. | Image decoding device |
GB9502274D0 (en) * | 1995-02-06 | 1995-03-29 | Central Research Lab Ltd | Method and apparatus for coding information |
DE69619002T2 (de) * | 1995-03-10 | 2002-11-21 | Kabushiki Kaisha Toshiba, Kawasaki | Bildkodierungs-/-dekodierungsvorrichtung |
DE19604050B4 (de) | 1995-08-17 | 2005-09-29 | Siemens Ag | Verfahren zur Bearbeitung von decodierten Bildblöcken eines blockbasierten Verfahrens zur Bildcodierung |
US5896176A (en) * | 1995-10-27 | 1999-04-20 | Texas Instruments Incorporated | Content-based video compression |
US5812702A (en) * | 1995-11-22 | 1998-09-22 | U S West, Inc. | System and method for enhancement of coded images using adaptive spatial filtering |
JP3967405B2 (ja) * | 1996-10-09 | 2007-08-29 | テキサス インスツルメンツ インコーポレイテツド | 画像信号の符号化方法 |
JP3800704B2 (ja) | 1997-02-13 | 2006-07-26 | ソニー株式会社 | 映像信号処理装置及び方法 |
FI106071B (fi) | 1997-03-13 | 2000-11-15 | Nokia Mobile Phones Ltd | Mukautuva suodatin |
DE69720192T2 (de) | 1997-05-30 | 2003-12-04 | Stmicroelectronics S.R.L., Agrate Brianza | Nachverarbeitungsmethode zur Verringerung von Artefakten in blockweise kodierten digitalen Bildern, und Vorrichtung zur Verwendung der Methode |
FI103003B1 (fi) | 1997-06-13 | 1999-03-31 | Nokia Mobile Phones Ltd | Suodatusmenetelmä, suodatin ja matkaviestinpääte |
KR100244290B1 (ko) | 1997-09-09 | 2000-02-01 | 구자홍 | 저속 전송에서의 동영상을 위한 디블록킹 필터링 방법 |
US6285801B1 (en) | 1998-05-29 | 2001-09-04 | Stmicroelectronics, Inc. | Non-linear adaptive image filter for filtering noise such as blocking artifacts |
KR100720841B1 (ko) | 1999-02-16 | 2007-05-25 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 블록 효과 감소를 위해 필터링 단계를 사용한 비디오 복호화 장치 및 방법 |
-
2000
- 2000-01-20 FI FI20000120A patent/FI117533B/fi not_active IP Right Cessation
-
2001
- 2001-01-19 US US09/766,035 patent/US9800891B2/en not_active Expired - Fee Related
- 2001-01-22 ES ES01902442T patent/ES2368706T3/es not_active Expired - Lifetime
- 2001-01-22 EP EP01902442A patent/EP1186177B1/en not_active Expired - Lifetime
- 2001-01-22 WO PCT/FI2001/000049 patent/WO2001054415A1/en active Application Filing
- 2001-01-22 CA CA002374523A patent/CA2374523C/en not_active Expired - Lifetime
- 2001-01-22 RU RU2002100648/09A patent/RU2295203C2/ru active
- 2001-01-22 CN CNB018005659A patent/CN1230001C/zh not_active Expired - Lifetime
- 2001-01-22 AU AU30275/01A patent/AU778990B2/en not_active Expired
- 2001-01-22 CN CN2005101137676A patent/CN1756362B/zh not_active Expired - Lifetime
- 2001-01-22 AT AT01902442T patent/ATE522088T1/de active
- 2001-01-22 SG SG200405663A patent/SG128476A1/en unknown
-
2003
- 2003-01-10 HK HK03100263.7A patent/HK1048411B/zh unknown
-
2006
- 2006-08-17 HK HK06109148.6A patent/HK1089030A1/xx not_active IP Right Cessation
- 2006-11-10 RU RU2006139951/09A patent/RU2358410C2/ru active
-
2017
- 2017-10-23 US US15/790,314 patent/US20180048910A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
SG128476A1 (en) | 2007-01-30 |
HK1089030A1 (en) | 2006-11-17 |
CN1230001C (zh) | 2005-11-30 |
RU2295203C2 (ru) | 2007-03-10 |
CN1756362A (zh) | 2006-04-05 |
AU778990B2 (en) | 2004-12-23 |
EP1186177A1 (en) | 2002-03-13 |
RU2006139951A (ru) | 2008-05-20 |
FI20000120A0 (fi) | 2000-01-20 |
US9800891B2 (en) | 2017-10-24 |
WO2001054415A1 (en) | 2001-07-26 |
HK1048411A1 (en) | 2003-03-28 |
EP1186177B1 (en) | 2011-08-24 |
CA2374523C (en) | 2008-04-08 |
CA2374523A1 (en) | 2001-07-26 |
US20010017944A1 (en) | 2001-08-30 |
FI117533B (fi) | 2006-11-15 |
RU2358410C2 (ru) | 2009-06-10 |
FI20000120A (fi) | 2001-07-21 |
CN1756362B (zh) | 2013-08-07 |
AU3027501A (en) | 2001-07-31 |
CN1365575A (zh) | 2002-08-21 |
US20180048910A1 (en) | 2018-02-15 |
HK1048411B (zh) | 2006-08-11 |
ATE522088T1 (de) | 2011-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2368706T3 (es) | Un procedimiento y dispositivo asociado para filtrar imágenes digitales de video. | |
ES2545089T3 (es) | Procedimiento de decodificación de imágenes | |
JP3771275B2 (ja) | 適応フィルタ | |
KR101238974B1 (ko) | 비디오 코더 및 디코더 공동 최적화를 위한 방법 및 시스템 | |
US7388996B2 (en) | Method for filtering digital images, and a filtering device | |
ES2548043T3 (es) | Filtrado de desbloqueo | |
US8792738B2 (en) | Image decoding apparatus and image coding apparatus | |
MXPA05007447A (es) | Aparato de decodificador y metodo para suavizar artefactos creados durante el ocultamiento de error. | |
WO2012152174A1 (en) | Method and apparatus for reduction of in-loop filter buffer | |
US11317095B2 (en) | Virtual boundary processing for adaptive loop filtering | |
KR20050099256A (ko) | 디블록킹을 이용한 영상처리 장치와 영상처리 방법 | |
KR20010075465A (ko) | 이미지 포인트로 디지털 이미지를 처리하는 방법 및 장치 | |
ZA200205507B (en) | A method for filtering digital images, and a filtering device. |