ES2563292T3 - Filtrado de desbloqueo con derivación de intensidad de límite de bloque de imagen modificada - Google Patents

Filtrado de desbloqueo con derivación de intensidad de límite de bloque de imagen modificada Download PDF

Info

Publication number
ES2563292T3
ES2563292T3 ES12783574.2T ES12783574T ES2563292T3 ES 2563292 T3 ES2563292 T3 ES 2563292T3 ES 12783574 T ES12783574 T ES 12783574T ES 2563292 T3 ES2563292 T3 ES 2563292T3
Authority
ES
Spain
Prior art keywords
parameter
block
video
data
blocks
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.)
Active
Application number
ES12783574.2T
Other languages
English (en)
Inventor
Thomas Wedi
Anand KOTRA
Semih Esenlik
Matthias Narroschke
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Application granted granted Critical
Publication of ES2563292T3 publication Critical patent/ES2563292T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream

Abstract

Un método para filtrado de desbloqueo de bloques de píxeles de imagen, que comprende las etapas de determinar (S700; S1600) un primer parámetro (BS) que indica una intensidad de un límite de bloque entre dos bloques de imagen adyacentes, calcular (S720) un segundo parámetro (tc), basándose en dicho primer parámetro (BS) y un parámetro de cuantificación (QP), en donde dicho segundo parámetro (tc) se calcula como una función de la suma de dicho primer parámetro (BS) y dicho parámetro de cuantificación (QP), y seleccionar (S730, S732, S735; S1630) un primer o un segundo filtros de desbloqueo para aplicarse a dicho límite de bloque usando un umbral que se define basándose en dicho segundo parámetro (tc), en donde dicho primer y dicho segundo filtros de desbloqueo tienen diferentes intensidades de filtro, caracterizado por que dicha etapa de determinación (S700; S1600) comprende la etapa (S810) de determinar en primer lugar si al menos uno de dichos bloques de píxeles adyacentes están intra-codificados, en donde dicho primer parámetro (BS) se establece a un primer valor fijo si dicha primera determinación (S810) es afirmativa.

Description

5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Filtrado de desbloqueo con derivacion de intensidad de Kmite de bloque de imagen modificada Antecedentes de la invencion
1. Campo de la invencion
La presente invencion se refiere al filtrado de imagenes. En particular, la presente invencion se refiere a filtrado de desbloqueo y a la derivacion de criterios de decision para filtrado de desbloqueo.
2. Descripcion de la tecnica relacionada
En la actualidad, la mayoria de los algoritmos de codificacion de video normalizados estan basados en codificacion de v^deo hforida. Los metodos de codificacion de video hibrida normalmente combinan varios esquemas de compresion sin perdidas y con perdidas diferentes para conseguir la ganancia de compresion deseada. La codificacion de video hibrida es tambien la base para las normas de la ITU-T (normas H.26x tales como H.261, H.263) asi como normas las normas del ISO/IEC (normas MPEG-X tales como MPEG-1, MPEG-2 y MPEG-4). La norma de codificacion de video mas reciente y avanzada es actualmente la norma indicada como codificacion de video avanzada H.264/MPEG-4 (AVC) que es un resultado de los esfuerzos de normalizacion por el equipo mixto de video (JVT), un equipo mixto de los grupos ITU-T y MPEG de ISO/IEC. Este codec se esta desarrollando ademas mediante el Equipo Colaborativo Mixto en Codificacion de Video (JCT-VC) bajo el nombre Codificacion de Video de Alta Eficacia (HEVC), que tiene por objeto, en particular en mejoras de eficacia con respecto a la codificacion de video de alta resolucion.
Una senal de video introducida en un codificador es una secuencia de imagenes denominadas fotogramas, siendo cada fotograma una matriz bidimensional de pixeles. Todas las normas anteriormente mencionadas basadas en la codificacion de video hibrida incluyen subdividir cada fotograma de video individual en bloques mas pequenos que consisten en una pluralidad de pixeles. El tamano de los bloques puede variar, por ejemplo, de acuerdo con el contenido de la imagen. La manera para codificar puede variarse normalmente en una base por bloque. El tamano mas grande posible para un bloque de este tipo, por ejemplo en HEVC, es 64 x 64 pixeles. Se denomina entonces la mayor unidad de codificacion (LCU). En H.264/MpeG-4 AVC, un macrobloque (que indica normalmente un bloque de 16 x 16 pixeles) era el elemento de imagen basico, para el que se realiza la codificacion, con una posibilidad para dividirlo ademas en subbloques mas pequenos a los que se aplicara alguna de las etapas de codificacion/decodificacion.
Normalmente, las etapas de codificacion de una codificacion de video hibrida incluyen una prediccion espacial y/o una temporal. Por consiguiente, cada bloque a codificar se predice en primer lugar usando cualquiera de los bloques en su proximidad espacial o bloques a partir de su proximidad temporal, es decir, desde fotogramas de video previamente codificados. Se calcula a continuacion un bloque de diferencias entre el bloque a codificar y su prediccion, denominado tambien bloque de residuos de prediccion. Otra etapa de codificacion es una transformacion de un bloque de residuos desde el dominio espacial (pixel) en un dominio de frecuencia. La transformacion tiene por objeto reducir la correlacion del bloque de entrada. La etapa de codificacion adicional es la cuantificacion de los coeficientes de transformacion. En esta etapa tiene lugar la compresion con perdidas (irreversible) real. Normalmente, los valores de coeficientes de transformacion comprimidos se compactan ademas (comprimidos sin perdidas) por medio de una codificacion por entropia. Ademas, se codifica informacion secundaria necesaria para la reconstruccion de la senal de video codificada y se proporciona junto con la senal de video codificada. Esta es, por ejemplo, informacion acerca de la prediccion espacial y/o temporal, cantidad de cuantificacion, etc.
La Figura 1 es un ejemplo de un codificador de video 100 de H.264/MPEG-4 AVC y/o HEVC tipico. Un restador 105 determina en primer lugar diferencias e entre un bloque actual a codificar de una imagen de video de entrada (senal de entrada s) y un bloque de prediccion correspondiente s, que se usa como una prediccion del bloque actual a codificar. La senal de prediccion puede obtenerse mediante una prediccion temporal o una espacial 180. El tipo de prediccion puede variarse en una base por fotograma o en una base por bloque. Los bloques y/o fotogramas predichos usando la prediccion temporal se denominan “inter”-codificados y los bloques y/o fotogramas predichos usando prediccion espacial se denominan “intra”-codificados. La senal de prediccion que usa prediccion temporal se obtiene de las imagenes previamente codificadas, que se almacenan en una memoria. La senal de prediccion que usa prediccion espacial se obtiene de los valores de pixeles de limite en los bloques vecinos, que se han codificado previamente, decodificado y almacenado en la memoria. La diferencia e entre la senal de entrada y la senal de prediccion, indicada error de prediccion o residuo, se transforma 110 dando como resultado coeficientes, que se cuantifican 120. El codificador por entropia 190 se aplica a continuacion a los coeficientes cuantificados para reducir ademas la cantidad de datos a almacenarse y/o transmitirse de una manera sin perdidas. Esto se consigue principalmente aplicando un codigo con palabras de codigo de longitud variable en el que la longitud de una palabra de codigo se elige basandose en la probabilidad de su aparicion.
5
10
15
20
25
30
35
40
45
50
55
60
65
En el codificador de video 100, se incorpora una unidad de decodificacion para obtener una senal de v^deo decodificada (reconstruida) s'. De conformidad con las etapas de codificacion, las etapas de decodificacion incluyen la descuantificacion y transformacion inversa 130. La senal de error de prediccion asi obtenida e' se diferencia de la senal de error de prediccion original debido al error de cuantificacion, denominado tambien ruido de cuantificacion. Una serial de imagen reconstruida s’ se obtiene a continuacion anadiendo 140 la serial de error de prediccion decodificada e’ a la serial de prediccion s. Para mantener la compatibilidad entre el lado de codificador y el lado de decodificador, la serial de prediccion s se obtiene basandose en la serial de video codificada y decodificada posteriormente que se conoce en ambos lados del codificador y del decodificador.
Debido a la cuantificacion, el ruido de cuantificacion se superpone a la senal de video reconstruida. Debido a la codificacion a nivel de bloques, el ruido superpuesto a menudo tiene caracteristicas de bloqueo, que da como resultado, en particular para cuantificacion intensa, limites de bloque visibles en la imagen decodificada. Tales artefactos de bloqueo tienen un efecto negativo en la percepcion visual humana. Para reducir estos artefactos, se aplica un filtro de desbloqueo 150 a cada bloque de imagen reconstruido. El filtro de desbloqueo se aplica a la senal reconstruida s'. Por ejemplo, el filtro de desbloqueo de H.264/MPEG-4 AVC tiene la capacidad de adaptacion local. En el caso de un alto grado de ruido de bloqueo, se aplica un filtro de paso bajo intenso (banda estrecha), mientras que para un bajo grado de ruido de bloqueo, se aplica un filtro de paso bajo mas debil (banda ancha). La intensidad del filtro de paso bajo se determina mediante la serial de prediccion s y mediante la serial de error de prediccion cuantificado e'. El filtro de desbloqueo generalmente suaviza los bordes de bloque que conduce a una calidad subjetiva mejorada de las imagenes decodificadas. Ademas, puesto que la parte filtrada de una imagen se usa para la prediccion de movimiento compensado de imagenes adicionales, el filtrado tambien reduce los errores de prediccion, y posibilita por lo tanto mejora de la eficacia de codificacion.
Despues de un filtro de desbloqueo, puede aplicarse una compensacion adaptativa de muestra 155 y/o filtro de bucle adaptativo 160 a la imagen que incluye la senal ya desbloqueada s”. Mientras que el filtro de desbloqueo mejora la calidad subjetiva, la compensacion adaptativa de muestra (SAO) y ALF tienen por objeto mejorar la fidelidad a nivel de pixel (calidad “objetiva”). En particular, SAO anade una compensacion de acuerdo con la proximidad inmediata de un pixel. El filtro de bucle adaptativo (ALF) se usa para compensar la distorsion de imagen producida por la compresion. Normalmente, el filtro de bucle adaptativo es un filtro Wiener con coeficientes de filtro determinados de manera que se minimiza el error cuadratico medio (MSE) entre las imagenes reconstruida s' y de fuente s. Los coeficientes de ALF pueden calcularse y transmitirse en una base por fotograma. ALF puede aplicarse a todo el fotograma (imagen de la secuencia de video) o a areas locales (bloques). Puede transmitirse una informacion secundaria adicional que indica que areas se han de filtrar (basada en bloques, basada en fotogramas o basada en arbol cuadruple).
Para decodificarse, los bloques inter-codificados requieren tambien almacenar las porciones de imagen o imagenes previamente codificadas y posteriormente decodificadas en la memoria intermedia de fotograma de referencia 170. Un bloque inter-codificado se predice 180 empleando prediccion de movimiento compensado. En primer lugar, se encuentra un bloque mejor coincidente para el bloque actual en los fotogramas de video previamente codificados y decodificados mediante un estimador de movimiento. El bloque mejor coincidente a continuacion se hace una senal de prediccion y el desplazamiento relativo (movimiento) entre el bloque actual y su mejor coincidencia se senalizan a continuacion como datos de movimiento en forma de vectores de movimiento tridimensionales en la informacion secundaria proporcionada junto con los datos de video codificados. Las tres dimensiones consisten en dos dimensiones espaciales y una dimension temporal. Para optimizar la precision de la prediccion, pueden determinarse vectores de movimiento con una resolucion de sub-pixel espacial, por ejemplo resolucion de mitad de un pixel o de un cuarto de pixel. Un vector de movimiento con resolucion de sub-pixel espacial puede apuntar a una posicion espacial en un fotograma ya decodificado donde no hay disponible el valor de pixel real, es decir una posicion de sub-pixel. Por lo tanto, es necesaria interpolacion espacial de tales valores de pixel para realizar prediccion de movimiento compensado. Esto puede conseguirse mediante un filtro de interpolacion (en la Figura 1 integrado en el bloque de prediccion 180).
Para ambos, los modos de intra- e inter-codificacion, las diferencias e entre la senal de entrada actual y la senal de prediccion se transforman 110 y cuantifican 120, dando como resultado los coeficientes cuantificados. En general, se emplea una transformacion ortogonal tal como una transformacion de coseno discreta (DCT) bidimensional o una version de enteros de la misma puesto que reduce la correlacion de las imagenes de video natural eficazmente. Despues de la transformacion, los componentes de frecuencia inferiores son normalmente mas importantes para calidad de imagen que los componentes de alta frecuencia de modo que pueden gastarse mas bits para codificar los componentes de baja frecuencia que para los componentes de alta frecuencia. En el codificador por entropia, la matriz bidimensional de coeficientes cuantificados se convierte en una serie unidimensional. Normalmente, esta conversion se realiza mediante una denominada exploracion en zigzag, que empieza con el coeficiente de DC en la esquina superior izquierda de la serie bidimensional y explora la serie bidimensional en una secuencia predeterminada que finaliza con un coeficiente de AC en la esquina inferior derecha. Ya que la energia se concentra normalmente en la parte superior izquierda de la matriz bidimensional de los coeficientes, que corresponden a las frecuencias inferiores, la exploracion en zigzag da como resultado una serie donde normalmente los ultimos valores son cero. Esto permite codificacion eficaz usando codigos de longitud de gama de repeticiones como parte de/antes
5
10
15
20
25
30
35
40
45
50
55
60
65
de la codificacion por entropia real.
El H.264/MPEG-4 H.264/MPEG-4 AVC asi como HEVC incluyen dos capas funcionales, una Capa de Codificacion de Video (VCL) y una Capa de Abstraccion de Red (NAL). La VCL proporciona la funcionalidad de codificacion como se ha descrito en resumen anteriormente. La NAL encapsula elementos de informacion en unidades normalizadas denominadas unidades de NAL de acuerdo con su aplicacion adicional tal como transmision a traves de un canal o almacenar en almacenamiento. Los elementos de informacion son, por ejemplo, la senal de error de prediccion codificada u otra informacion necesaria para la decodificacion de la senal de video tal como el tipo de prediccion, parametro de cuantificacion, vectores de movimiento, etc. Hay unidades de VCL NAL que contienen los datos de video comprimido y la informacion relacionada, asi como unidades no de VCL que encapsulan datos adicionales tales como el conjunto de parametros relacionados con una secuencia de video entera, o una Informacion de Mejora Complementaria (SEI) que proporciona informacion adicional que puede usarse para mejora el rendimiento de codificacion.
La Figura 2 ilustra un decodificador de ejemplo 200 de acuerdo con la norma de codificacion de video H.264/MPEG- 4 AVC o HEVC. La senal de video codificada (senal de entrada al decodificador) pasa en primer lugar al decodificador por entropia 290, que decodifica los coeficientes cuantificados, los elementos de informacion necesarios para decodificar tales como datos de movimiento, modo de prediccion, etc. Los coeficientes cuantificados se exploran inversamente para obtener una matriz bidimensional, que se alimenta a continuation a la cuantificacion inversa y transformation inversa 230. Despues de la cuantificacion inversa y la transformation inversa 230, se obtiene una senal de error de prediccion decodificada (cuantificada) e', que corresponde a las diferencias obtenidas restando la senal de prediccion de la senal introducida al codificador en caso de que no se introduzca ruido de cuantificacion y no tengan lugar errores.
La senal de prediccion se obtiene desde cualquiera de una prediccion temporal o una espacial 280. Los elementos de informacion decodificados normalmente incluyen ademas la informacion necesaria para la prediccion tal como el tipo de prediccion en el caso de intra-prediccion y datos de movimiento en el caso de prediccion de movimiento compensado. La senal de error de prediccion cuantificada en el dominio espacial se anade a continuacion con un sumador 240 a la senal de prediccion obtenida desde cualquiera de la prediccion de movimiento compensado o la prediccion de intra-fotograma 280. La imagen reconstruida s' puede pasarse a traves de un filtro de desbloqueo 250, procesamiento de compensation adaptativa de muestra 255 y un filtro de bucle adaptativo 260 y la senal decodificada resultante se almacena en la memoria 270 para aplicarse para prediccion temporal o espacial de los siguientes bloques/imagenes.
Una ilustracion adicional de un codificador de video hibrido ejemplar se muestra en la Figura 3. El codificador de la Figura 3 se diferencia del codificador de la Figura 1 en que el filtro de desbloqueo 150 de la Figura 1 se ha subdividido en un filtro 350a para desbloqueo horizontal de bordes verticales y un filtro 350b para desbloqueo vertical de bordes horizontales. El filtro 350a se aplica a la senal reconstruida S' que es la salida del sumador 140. La salida del filtro 350b, es decir una imagen con bordes verticales desbloqueados como se indica S” y se introduce en el filtro 350b. La senal de salida del filtro 350b, es decir una imagen desbloqueada vertical y horizontalmente, y se ha indicado S”'. Ademas, la Figura 3 muestra explicitamente el parametro de cuantificacion QP para introducirse en el codificador por entropia 190, el filtro de desbloqueo horizontal 350a y el filtro de desbloqueo vertical 350b.
Los bloques restantes de la Figura 3 corresponden a bloques respectivos de la Figura 1, y se han indicado caracteristicas similares mediante los mismos numeros de referencia en la Figura 3 y Figura 1. En la Figura 3, el filtro de bucle adaptado 160 se ha descrito explicitamente como un filtro Wiener, y los bloques 155 (SAO) y 160 (ALF) se han intercambiado. La secuencia de estas etapas, sin embargo, no es esencial para la presente invention. Ademas, la memoria intermedia de fotograma de referencia 170 no se ha mostrado explicitamente en la Figura 3.
En vista de la analogia cercana de las caracteristicas respectivas del codificador de la Figura 1 y del decodificador de la Figura 2, un experto en la materia conoce como modificar la Figura 2 para ilustrar un decodificador en el que el desbloqueo horizontal y vertical en dos etapas posteriores se hace explicito. Por lo tanto, una respectiva figura se ha omitido en el presente documento.
Cuando se comprime y descomprime una imagen, los artefactos de bloqueo son normalmente los artefactos mas molestos para el usuario. El filtrado de desbloqueo ayuda a mejorar la experiencia perceptual del usuario suavizando los bordes entre los bloques en la imagen reconstruida. Una de las dificultades en el filtrado de desbloqueo es decidir correctamente entre un borde provocado por bloqueo debido a la aplicacion de un cuantificador y entre bordes que son parte de la senal codificada. La aplicacion del filtro de desbloqueo es unicamente deseable si el borde en el limite de bloque es debido a artefactos de compresion. En otros casos, aplicando el filtro de desbloqueo, la senal reconstruida puede desemparejarse, distorsionarse. Otra dificultad es la selection de un filtro apropiado para el filtrado de desbloqueo. Normalmente, la decision se realiza entre varios filtros de paso bajo con diferentes respuestas de frecuencia que dan como resultado filtrado de paso bajo intenso o debil. Para decidir si el filtrado de desbloqueo se ha de aplicar y para seleccionar un filtro apropiado, se consideran datos en la proximidad del limite de dos bloques.
5
10
15
20
25
30
35
40
45
50
55
60
65
Por ejemplo, pueden considerase parametros de cuantificacion de los bloques vecinos. Como alternativa o ademas, pueden considerarse modos de prediccion tales como intra o inter. Otra posibilidad es evaluar coeficientes de error de prediccion cuantificados, por ejemplo, cuantos de ellos estan cuantificados a cero. Los fotogramas de referencia usados para la prediccion de movimiento compensado pueden ser tambien indicativos para la seleccion del filtro, por ejemplo, si se usan los mismos fotogramas de referencia para prediccion del bloque actual y los bloques vecinos. La decision puede basarse tambien en vectores de movimiento usados para la prediccion de movimiento compensado y en si los vectores de movimiento para el bloque actual y para los bloques vecinos son los mismos o mejor se retrasan. La decision puede implicar posiciones espaciales de las muestras tales como distancia al parche de bloque.
Por ejemplo, H.264/MPEG-4 AVC evalua los valores absolutos de la primera derivacion (derivada) en cada uno de los dos bloques vecinos, el limite de los cuales se ha de desbloquear. Ademas, se evaluan los valores absolutos de la primera derivada a traves del borde entre los dos bloques, como se describe, por ejemplo en la norma H.264/MPEG-4 AVC, Seccion 8.7.2.2. Un enfoque similar se describe tambien en el documento uS 2007/854204 A. La decision se toma para todos los pixeles a filtrar basandose en el mismo criterio y la seleccion se realiza para todo el bloque. HEVC emplea un mecanismo similar, sin embargo, usa tambien una segunda derivada.
De acuerdo con estos enfoques, para un borde particular (limite) entre dos bloques, tiene que decidirse si aplicar desbloqueo o no, y si es asi, que filtro de una pluralidad de diferentes filtros de desbloqueo que tienen diferentes intensidades de filtro se ha de aplicar. Hablando en general, un filtro de desbloqueo que tiene una intensidad de filtro mas alta (“filtro intenso”) realiza modificaciones mas sustanciales a los valores de pixeles adyacentes al limite que un filtro que tiene menos intensidad de filtro (“filtro debil”). El objeto de la decision de si filtrar o no es filtrar unicamente aquellas muestras, para las que el cambio de senal grande detectado en el limite de bloque resulta de la cuantificacion aplicada en el procesamiento a nivel de bloque. El resultado de este filtrado es una senal suave en el limite de bloque. La senal suave es menos molesta para el observador que el artefacto de bloqueo. Estas muestras para las que el cambio de senal grande en el limite de bloque pertenecen a la senal original a codificar no deberian filtrarse para mantener altas frecuencias, y por lo tanto la agudeza visual. En el caso de decisiones erroneas, la imagen se suaviza innecesariamente o permanece en bloques.
Se han obtenido una pluralidad de criterios de decision en la tecnica para realizar las decisiones anteriormente descritas. Los criterios de decision operan basandose en parametros que especifican detalles particulares de la distribucion de valor de pixel en ambos lados del limite de bloque. Hablando en general, en primer lugar se deduce un parametro (intensidad de limite, BS) para indicar como de pronunciados aparecen los artefactos de bloque en un limite de bloque. Basandose en lo mismo, se deducen parametros para definir umbrales de decision. Cada etapa en dicho flujo de decision, y en particular, en la derivacion de la intensidad de limite (BS) consume algun (1 o varios) ciclo de CPU. Ademas, cada uno de los parametros implicados en el flujo de decision requiere un respectivo espacio de memoria. Por razones de eficacia de procesamiento, es por lo tanto deseable realizar los calculos y decisiones necesarios y con tan pocas etapas y parametros intermedios como sea posible.
El documento WO 2005/117447 A2 describe compresion de video de baja tasa de bits, y especificamente una decision acerca de filtrado de pixeles adyacentes a un limite de bloque con un filtro de paso bajo, o, viceversa, que mejora pixeles de dos bloques adyacentes a un limite de bloque. La decision esta basada en la medicion de la “actividad de borde”, es decir, una medicion que indica si las diferencias de pixeles cerca de un limite de bloque son debido a un borde real en la instantanea o es probable que sean artefactos de bloque. Un unico umbral o dos pueden deducirse y emplearse para la decision (en el ultimo caso, no se aplica filtrado entre los dos umbrales).
El documento US 2004/0101059 A1 describe un filtro de desbloqueo, en el que se selecciona un modo de filtrado entre al menos dos modos de filtrado (un modo por defecto basandose en el filtro no recursivo y un modo de filtrado intenso, habiendo ademas dos sub-modos de filtrado intensos). La decision tiene lugar en un parametro de intensidad de limite.
Sumario de la invencion
La presente invencion tiene por objeto un enfoque de filtrado de desbloqueo mejorado, en el que se mejora la eficacia de procesamiento para decidir sobre la seleccion de desbloqueo y filtro simplificando los calculos subyacentes. Esto se consigue mediante las caracteristicas de las reivindicaciones independientes.
Las realizaciones se exponen en el conjunto de reivindicaciones adjuntas; los ejemplos adicionales denominados realizaciones en la descripcion son ejemplos ilustrativos, no realizaciones reivindicadas en la presente solicitud.
Es el enfoque particular de la presente invencion seleccionar el filtro de desbloqueo para desbloquear un limite de bloque de una pluralidad de filtros de desbloqueo que tienen diferentes intensidades de filtro basandose en un umbral que se deduce como una unica funcion de una suma de dos parametros. Un parametro (intensidad de limite) indica la intensidad de artefactos de bloqueo en el limite, es decir como de en bloques aparece el borde (limite). El otro parametro (cuantificacion) indica un tamano de los intervalos de cuantificacion aplicados en codificacion.
5
10
15
20
25
30
35
40
45
50
55
60
65
Breve descripcion de los dibujos
Los dibujos adjuntos se incorporan en y forman una parte de una memoria descriptiva para ilustrar varias realizaciones de la presente invencion. Estos dibujos junto con la descripcion sirven para explicar los principios de la invention. Los dibujos son unicamente para el fin de ilustrar ejemplos preferidos y alternativos de como puede realizarse y usarse la invencion y no deben interpretarse como que limitan la invencion a unicamente las realizaciones ilustradas y descritas. Caracteristicas y ventajas adicionales se haran evidentes a partir de lo siguiente y de la descripcion mas particular de las diversas realizaciones de la invencion, como se ilustra en los dibujos adjuntos, en los que numeros de referencia similares hacen referencia a elementos similares y en los que:
La
Figura 1
La
Figura 2
La
Figura 3
La
Figura 4A
La
Figura 4B
La
Figura 5
La
Figura 6A
La
Figura 6B
La
Figura 7
La
Figura 8
La
Figura 9
La
Figura 10
La
Figura 11
La
Figura 12
La
Figura 13
La
Figura 14
La
Figura 15
La
Figura 16
La
Figura 17
La
Figura 18
La
Figura 19
La
Figura 20
La
Figura 21
La
Figura 22A
La
Figura 22B
La
Figura 23
La
Figura 24
La
Figura 25
La
Figura 26
La
Figura 27
La
Figura 28
La
Figura 29
La
Figura 30
La
Figura 31
La
Figura 32
La
Figura 33
La
Figura 34
es un diagrama de bloques que ilustra un ejemplo de un codificador de video;
es un diagrama de bloques que ilustra un ejemplo de un decodificador de video;
es otro diagrama de bloques que ilustra un ejemplo de un codificador de video;
es un dibujo esquematico que ilustra la aplicacion de un filtro de desbloqueo en un limite vertical;
es un dibujo esquematico que ilustra la aplicacion de un filtro de desbloqueo en un limite
horizontal;
es un dibujo esquematico que ilustra una decision de si aplicar o no aplicar desbloqueo y una selection de un filtro de desbloqueo;
es un dibujo esquematico que ilustra operaciones de desbloqueo realizadas mediante un filtro intenso;
es un dibujo esquematico que ilustra operaciones de desbloqueo realizadas mediante un filtro debil;
es un diagrama de flujo que ilustra un esquema de procesamiento tipico para desbloquear;
es un diagrama de flujo que ilustra un esquema convencional de derivation de un valor de
intensidad de limite de desbloqueo;
es un diagrama de flujo que ilustra una derivacion mejorada de un parametro de desplazamiento para determinar un parametro umbral basandose en la intensidad de limite, de acuerdo con un aspecto de la presente invencion;
ilustra una comparacion de eficacia de codification entre el esquema mejorado de la Figura 9 y el esquema convencional de la Figura 8;
es un diagrama de flujo que ilustra un esquema de determination simplificada para la intensidad de limite de acuerdo con una realization de la presente invencion;
ilustra una comparacion de eficacia de codificacion entre el esquema simplificado de la Figura 11 y el esquema convencional de la Figura 8;
es un diagrama de flujo que ilustra un esquema de calculo de BS mejorado y simplificado de acuerdo con una realizacion de la presente invencion;
es un diagrama de flujo que ilustra un ejemplo modificado adicional de un esquema de calculo de acuerdo con una realizacion de la presente invencion;
es un diagrama de flujo que ilustra un esquema de determinacion de BS mejorado adicional de acuerdo con una realizacion de la presente invencion;
es un diagrama de flujo que ilustra la simplification en el arbol de decision de filtrado de desbloqueo global de acuerdo con un aspecto de la presente invencion;
muestra una configuration global de un sistema proveedor de contenido para implementar servicios de distribution de contenido.
muestra una configuracion global de un sistema de difusion digital.
muestra un diagrama de bloques que ilustra un ejemplo de una configuracion de una television. muestra un diagrama de bloques que ilustra un ejemplo de una configuracion de una unidad de reproduccion/grabacion de information que lee y escribe information desde y en un medio de grabacion que es un disco optico.
muestra un ejemplo de una configuracion de un medio de grabacion que es un disco optico. muestra un ejemplo de un telefono celular.
es un diagrama de bloques que muestra un ejemplo de una configuracion de un telefono celular. ilustra una estructura de datos multiplexados.
muestra esquematicamente como se multiplexa cada flujo en datos multiplexados. muestra como se almacena un flujo de video en un flujo de paquetes de PES en mas detalle. muestra una estructura de paquetes de TS y paquetes de fuente en los datos multiplexados. muestra una estructura de datos de una PMT.
muestra una estructura interna de informacion de datos multiplexados. muestra una estructura interna de informacion de atributo de flujo. muestra etapas para identificar datos de video.
muestra un ejemplo de una configuracion de un circuito integrado para implementar el metodo de
codificacion de instantanea en movimiento y el metodo de decodificacion de instantanea en
movimiento de acuerdo con cada una de las realizaciones.
muestra una configuracion para conmutar entre frecuencias de accionamiento.
muestra etapas para identificar datos de video y conmutar entre frecuencias de accionamiento.
muestra un ejemplo de una tabla de correspondencia en la que se asocian normas de datos de
5
10
15
20
25
30
35
40
45
50
55
60
video con frecuencias de accionamiento.
La Figura 35A es un diagrama que muestra un ejemplo de una configuration para compartir un modulo de una unidad de procesamiento de senal.
La Figura 35B es un diagrama que muestra otro ejemplo de una configuracion para compartir un modulo de la unidad de procesamiento de senal.
Descripcion detallada de la invencion
Los codificadores de video hnbridos del estado de la tecnica tales como aquellos ilustrados en la Figura 3, aplican prediction a nivel de bloques y codification de error de prediction a nivel de bloques. La codification de error de prediction incluye una etapa de cuantificacion. Debido a este procesamiento a nivel de bloques, tienen lugar los denominados artefactos de bloqueo, especialmente en el caso de cuantificacion basta. Un artefacto de bloqueo esta asociado con un cambio de senal grande en un borde de bloque. Estos artefactos de bloqueo son muy molestos para el observador. Para reducir estos artefactos de bloqueo, se aplican filtros de desbloqueo, por ejemplo en la norma de codificacion de video H.264/MPEG-4 AVC o en la HM, que es el modelo de prueba de la actividad de normalization de codificacion de video HEVC (consultese, por ejemplo, filtro de desbloqueo de HM, JCTVC- F803_d4, “WD4: Working Draft 4 of High-Efficiency Video Coding", 6a reunion Torino, IT, 14 - 22 de julio de 2011).
Los filtros de desbloqueo deciden para cada muestra en un limite de bloque si se filtra o no y aplicar un filtro de paso bajo en el caso que se decida filtrar. El objeto de esta decision es filtrar unicamente aquellas muestras para las que el cambio de senal grande en el limite de bloque resulta de la cuantificacion aplicada en el procesamiento a nivel de bloques. El resultado de este procesamiento es una senal suave en el limite de bloque. La senal suave es menos molesta para el observador que el artefacto de bloqueo. Estas muestras para las que el cambio de senal grande en el limite de bloque pertenecen a la senal original a codificar no deberian filtrarse para mantener altas frecuencias y por lo tanto la agudeza visual. En el caso de decisiones erroneas, la imagen se suaviza innecesariamente o permanece en bloques.
La Figura 4 muestra un ejemplo de una aplicacion de un filtro de des-bloqueo (tal como 150, 250, 350a y 350b) que se hace referencia en la descripcion de la Figuras 1, 2 y 3, respectivamente. Un filtro de desbloqueo de este tipo puede decidir para cada muestra en un limite de bloque si se ha de filtrar o no. Cuando se ha de filtrar, se aplica un filtro de paso bajo. El objeto de esta decision es filtrar unicamente aquellas muestras, para las que el cambio de senal grande en el limite de bloque resulta de la cuantificacion aplicada en el procesamiento a nivel de bloques como se describe en la section de antecedentes de la tecnica anterior. El resultado de este filtrado es una senal suavizada en el limite de bloque. La senal suavizada es menos molesta para el observador que el artefacto de bloqueo. Estas muestras, para las que el cambio de senal grande en el limite de bloque pertenece a la senal original a codificar, no deberian filtrarse para mantener altas frecuencias y por lo tanto la agudeza visual. En el caso de decisiones erroneas, la imagen se suaviza innecesariamente o permanece en bloques.
La Figura 4A ilustra la decision en un limite vertical (filtrar o no filtrar con un filtro de desbloqueo horizontal) y la Figura 4B ilustra la decision en un limite horizontal (filtrar o no con un filtro de desbloqueo vertical). En particular, la Figura 5A muestra un bloque actual 340 a decodificar y sus bloques vecinos ya decodificados 310, 320 y 330. Para los pixeles 360 en una linea, se realiza la decision. De manera similar, la Figura 5B muestra el mismo bloque actual 340 y la decision realizada para los pixeles 370 en una columna.
La determination sobre si aplicar el filtro de desbloqueo puede realizarse como sigue, de manera similar a H.264/MPEG-4 AVC. Tomemos una linea de seis pixeles 360, los primeros tres pixeles p2, p1, p0 de los cuales pertenecen a un bloque vecino izquierdo A 330 y los siguientes tres pixeles q0, q1 y q2 de los cuales pertenecen al bloque actual B 340 como se ilustra tambien en la Figura 5. La linea 410 ilustra un limite entre los bloques A y B. Los pixeles p0 y q0 son los pixeles del vecino izquierdo A y del bloque actual B, respectivamente, localizados directamente adyacentes entre si. Los pixeles p0 y q0 se filtran mediante el filtrado de desbloqueo por ejemplo, cuando se satisface las siguientes condiciones:
imagen1
y
l^l “ Iffij ^ ^.f/264 ) >
en el que, en general, ph 264 (QPNuevo) < an 264(QPNuevo). Estas condiciones tienen por objeto detectar si la diferencia entre p0 y q0 proviene de artefactos de bloqueo. Corresponden a evaluation de la primera derivation en cada uno
5
10
15
20
25
30
35
40
45
50
de los bloques A y B y entre ellos.
El pixel pi se filtra si, ademas de las tres condiciones anteriores, se satisface tambien la siguiente condicion:
\Pi~ Pn\< ^i,2(a(QPn,sJ-
El pixel q1 se filtra, por ejemplo, si ademas de las tres primeras condiciones anteriores se satisface tambien la siguiente condicion:
\C!l C!t\ ^ PaXA^Q^Nuevo)-
Estas condiciones corresponden a una primera derivacion en el primer bloque y a una primera derivacion en el segundo bloque, respectivamente. En las condiciones anteriores, QP indica el parametro de cuantificacion que indica la cantidad de cuantificacion aplicada, y p,a son constantes escalares. En particular, QPNuevo es el parametro de cuantificacion deducido basandose en los parametros de cuantificacion QPa y QPb aplicados a los respectivos primer y segundo bloque A y B como sigue:
QJJ;..... = (QPa + QPb +1) » 1.
en el que “>>n” indicado se desplaza a la derecha en n bits (en la formula anterior: un bit).
Las condiciones anteriores corresponden a la evaluacion de la primera derivada en los bloques. La decision puede realizarse unicamente para una linea seleccionada o lineas seleccionadas de un bloque, mientras que el filtrado de pixeles en consecuencia se realiza a continuacion para todas las lineas 360. Un ejemplo 420 de las lineas 430 implicado en la decision de conformidad con HEVC se ilustra en la Figura 5. Basandose en las lineas 430, se lleva a cabo la decision de si filtrar el bloque entero.
Otro ejemplo de filtrado de desbloqueo en HEVC pueden encontrarse en el documento JCTVC-E603, Seccion 8.6.1, de JTC-VC, de ITU-T SG16 WP3 y ISO/IEC JTC1/SC29/WG11, libremente disponible bajo
http://wftp3.itu.int/av- arch/jctvcsite/.
Por consiguiente, en HEVC las dos lineas 430 se usan para decidir si y como se ha de aplicar el filtrado de desbloqueo. Esta etapa de decision se etiqueta primera etapa de decision D1 a lo largo de toda esta memoria descriptiva. El ejemplo 420 supone la evaluacion de la tercera (con indice 2) y la sexta (con indice 5) linea para el fin de filtrado de bloqueo horizontalmente. En particular, se evalua la segunda derivada en cada uno de los bloques que da como resultado la obtencion de las medidas dp y dq como sigue:
imagen2
Los pixeles p pertenecen al bloque A y los pixeles q pertenecen al bloque B. El primer numero despues de p o q indica el indice de columna y el siguiente numero en subindice indica el numero de fila en el bloque. El desbloqueo para las ocho lineas ilustradas en el ejemplo 420 se posibilita cuando se satisface la siguiente condicion:
d - dp + dq < P{QP).
Si la condicion anterior no se satisface, no se aplica desbloqueo. En el caso de que se active el desbloqueo, el filtro a usarse para desbloquear se determina en una etapa de decision posterior etiquetada segunda etapa de decision D2 a lo largo de toda la presente memoria descriptiva. Esta determinacion es basandose en la evaluacion de la primera derivada entre los bloques A y B. En particular, para cada linea i, en el que i es un entero entre 0 y 7, se decide si se ha de aplicar un filtro de paso bajo intenso o uno debil. Un filtro intenso se elige si se satisface la siguiente condicion.
5
10
15
20
25
30
35
|p3* - p0;| + \q3t ~qQf\ < if&QP )» 3) A d<{/3{QP)» 2) a
|pO,:-^Oi|<((^(OP)-5 + l)»l).
De conformidad con el modelo HEVC “el filtro intenso” filtra las muestras p2/,p1/,p0/,q0/,q1/,g2/ usando p3i,p2i,p1i,p0i,q0i,q1i,q2i,q3i, mientras un “filtro debil” filtra las muestras p1(,p0/,q0/,q1/ usando p2/,p1/,p0/,q0i,q1/,q2/. En las condiciones anteriores, los parametros p y tc son ambos funciones del parametro de cuantificacion QPe que pueden establecerse para un segmento de la imagen o similares. Los valores de p y tc se deducen normalmente basandose en QP usando tablas de correspondencia. La Figura 6 explica en mas detalle soluciones ejemplares para operaciones de filtro intenso y operaciones de filtro debil de conformidad con la norma H264/MPEG-4 AVC (implementada en HEVC modelo de software HM4.0).
En la Figura 6A el dibujo izquierdo ilustra las muestras usadas para filtrar horizontalmente un borde vertical en un filtro intenso. El dibujo derecho de la Figura 6A ilustra las muestras que se modifican mediante el filtro. Como puede observarse a partir del dibujo, en las muestras de ejemplo dadas que corresponden a los 4 pixeles mas adyacentes a ambos lados del limite, indicado mediante el numero de referencia 6l0, se usan para el filtrado. Realmente modificados hay unicamente estos 3 pixeles mas cercanos al limite desde ambos lados indicado mediante 620 en el dibujo izquierdo de la Figura 6A. Realmente, el filtrado se realiza de acuerdo con las siguientes formulas.
pQ'i = Clip({p2i + 2 • />!,. + 2 ■ p0t + 2 ■ q0_ + q2i + 4)» 3)
pK = Clip{{p2l + pi; + pO; +1/0: + 2)» 2)
p2\ = Clip({2 - pi, + 3 ■ p2; + p\i + pO; + qO; + 4)» 3) q0' - Clip{(q2; + 2-qlt + 2-^0; + 2- /?0 + p2, + 4)» 3)
qX; = Clip((q2i + qlt, + q0t + /?0; + 2) » 2)
q2; = Clip ({2- cj3l + 3-^2, + q\: + qO; + pOf + 4)» 3)
La funcion Clip(x) se define como sigue:
imagen3
Por la presente, max_valor_permitido es un valor maximo, que x puede tener. En el caso de codificacion de PCM con k muestras de bits, el valor maximo seria max_valor_permitido = 2k -1. Por ejemplo, en el caso de codificacion de PCM con muestras de 8 bits, el valor maximo seria max_valor_permitido = 255. En el caso de codificacion de PCM con muestras de 10 bits, el valor maximo seria max_valor_permitido =1023.
Como puede observarse a partir de las ecuaciones anteriores, el filtrado se realiza individualmente para cada linea (unicamente un unico indice de linea i = 0, 1, 2, 3, 4, 5, 6 o 7) se emplea en cada una de las formulas donde los pixeles se modifican mediante un filtro (indicado mediante un primo despues del numero de filtro). Aunque no se calculan pixeles modificados para p3i y q3i, respectivamente, puede observarse a partir de las ecuaciones para p2’i y q2’i, respectivamente que p3i y q3i tienen lugar en los lados derechos de las respectivas ecuaciones de calculo.
Como puede observarse a partir de la figura 6B, los tres pixeles mas cercanos al limite desde ambos lados se usan para filtrado mediante el filtro debil (muestras 630 en el esquema izquierdo). Realmente modificados hay unicamente los dos vecinos mas cercanos al limite (muestras 640 en el lado derecho de la Figura 6B. El procesamiento de
5
10
15
20
25
30
35
40
45
50
calculo para el filtrado debil se diferencia sustancialmente del calculo en el caso de filtrado intenso e incluye decisiones adicionales. En primer lugar, se calcula un valor de discriminacion A de acuerdo con la ecuacion
A = (9 • (?0, — pO, )-3 • (ql, - )+8) » 4
en la que estan basadas las decisiones.
Posteriormente en una tercera etapa de decision D3 se decide si realizar filtrado o no. De acuerdo con la tercera decision, el filtrado unicamente se aplica a las muestras de pfxeles 640, si se satisface la condicion |A| < 10. tc.
En el caso de que la condicion se satisfaga, los pfxeles mas cercanos al lfmite en ambos lados se filtran de acuerdo con las ecuaciones
imagen4
en las que
imagen5
La funcion Clip(x) se define como anteriormente. La funcion Clip3(x) se define como sigue:
imagen6
x < a x > b
de otro modo
Despues de filtrar las muestras p0 y q0, se realiza una cuarta decision D4 en cuanto a si filtrar tambien las siguientes muestras de pfxeles mas cercanas desde el punto de vista del lfmite, p1i y q1i. La cuarta decision D4 se realiza por separado para ambos lados del lfmite, es decir para los pfxeles p1i que pertenecen al bloque A de la Figura 6B y los pfxeles q1i del bloque B de la Figura 6B.
La cuarta decision para los pixeles p1i es basandose en el parametro introducido anteriormente dP. Si se satisface la condicion dP < (/?/6), se realiza el filtrado de acuerdo con p\' = Clip(p\i + A2p), en el que
A2p - Clip3(- tc2,tc2,{((pi, + p()i +1)» l)- pi. + AL)»l).
La decision D4 para los pixeles qi del bloque B se realiza si se satisface la condicion dq <(/?/6). El filtrado se realiza de acuerdo con q\' = Clip(q\; + A2 J, en el que
A2? = Clip3(- tc2,tc2, {{{q2. + q0t +1)»l)- q\ - A,)»l).
En lo anterior, el parametro tc2 se define de conformidad con tc2 = tc >>1.
Se observa que el procedimiento de filtrado anterior, aunque se describe a modo de ejemplo para filtrado horizontal de bordes verticales es igualmente aplicable a filtrado vertical de bordes horizontales intercambiando respectivamente direcciones horizontal y vertical y filas con columnas. Ademas, a lo largo de toda la memoria descriptiva, se aplica una convencion, de acuerdo con la que el termino “lmea” significa cualquiera de columna o fila.
Las etapas necesarias para decidir acerca de la aplicacion de un filtro, y preferentemente para seleccionar ademas un tipo de filtro a aplicarse para desbloquear de una pluralidad de filtros que tienen diferentes intensidades, dan como resultado un cierto esfuerzo computacional. Como se ha mostrado anteriormente, en general, para definir la intensidad de filtro, se toma una decision que implica valores umbral (consultese p y tc introducidos anteriormente). La presente invencion tiene por objeto particularmente mejorar el esquema de calculo para el ultimo parametro umbral tc para reducir el esfuerzo de calculo necesario, mejorando de esta manera la eficacia de procesamiento simplificando el esquema de calculo.
5
10
15
20
25
30
35
40
45
50
55
60
65
Convencionalmente, el calculo del parametro tc es basandose en un primer valor de parametro (intensidad de Kmite (BS)) que indica una estimacion de como de “en bloques” es un limite (un borde), y un parametro de cuantificacion (QP) que indica un tamano de las etapas de cuantificacion empleadas en codificacion. Para la determination de tc, en un procesamiento intermedio, un valor de desplazamiento tc_desplazamiento), que ya no refleja inequivocamente la “formation en bloques” del limite, se deduce, para combinarse con el QP para definir la intensidad de filtro.
La presente invention mejora el esquema de calculo convencional, en que posibilita deducir el parametro tc directamente, basandose en una funcion de una combination predeterminada (suma) de parametros BS y QP.
La Figura 7 muestra un diagrama de flujo tipico de un proceso para decidir si aplicar desbloqueo o no y seleccionar un filtro de desbloqueo apropiado. El diagrama de flujo de la Figura 7 es en general aplicable en los esquemas convencionales anteriormente analizados de desbloqueo, asi como en realizaciones de la presente invencion.
Los cuadros pequenos P y Q en la esquina superior derecha de la Figura 7 representan una ilustracion esquematica de dos bloques P y Q de una imagen, que son adyacentes y por lo tanto comparten un limite comun. Como se ilustra, y como se ha analizado anteriormente, el limite entre los bloques P y Q puede ser vertical (esquema izquierdo) asi como horizontal (esquema derecho).
En la etapa inicial S700 de la Figura 7, la intensidad de limite (BS) se calcula como un primer parametro para la decision. En general, la intensidad de limite BS es un parametro entero que puede ser cero o positivo. Los detalles de dicha intensidad de calculo de limite de la etapa S700 se analizan a continuation con referencia a la Figura 8 y figuras posteriores.
Despues de la etapa S700, el flujo de procesamiento continua a la etapa S710. En la etapa S710, se decide si un valor de intensidad de limite calculado BS es positivo. Si se decide que BS no es positivo (es decir BS = 0) en la etapa S710, se decide que no se realiza desbloqueo para el borde actualmente procesado, y el procesamiento del diagrama de flujo finaliza en la etapa S715.
Si, por el contrario, la decision en la etapa S710 es afirmativa, se decide continuar con una decision adicional sobre el desbloqueo. En la etapa S720, se calculan los parametros tc y p. Los parametros tc y p calculados en la etapa S720 son variables que se usan a continuacion para manipular la operation de desbloqueo, de manera como se ha descrito anteriormente con referencia a las Figuras 5 y 6. Ambos parametros tc y p dependen del parametro de cuantificacion QP, como se ha descrito anteriormente. Como se detallara a continuacion, tc depende ademas de la intensidad de limite BS. Por lo tanto tc depende de tanto BS como QP.
En la etapa posterior S730, se realiza una decision en cuanto a si seleccionar filtrado intenso (S732), filtrado debil (S735) o que una investigation mas detallada revele que, al contrario de la decision inicial en la etapa S710, no se ha de aplicar filtrado (S738). Aunque en los primeros dos casos se realiza el respectivo procesamiento de filtrado, en el ultimo caso el flujo continua a la etapa S715 y finaliza sin filtrado. La decision en la etapa S730, incluyendo la decision de no filtrado revisada de la etapa S738, es basandose en los parametros recien calculados tc y p.
La Figura 8 muestra los detalles de la derivation del valor de intensidad de limite de desbloqueo (BS) de la etapa S700. Despues de empezar, en la etapa S810, se decide si al menos uno de los bloques P y Q pertenece a una imagen intra-codificada. El fondo de dicha decision reside en que para instantaneas intra-codificadas (instantaneas I) es probable que tenga lugar un mayor error de cuantificacion en la cuantificacion.
Si la decision de la etapa S810 es afirmativa, un procesamiento convencional continua a la etapa S812, donde se realiza una decision en cuanto a si el limite de bloque actualmente procesado es un limite entre unidades de codificacion. Una unidad de codificacion es generalmente una unidad que comprende uno o mas bloques de imagen. Mas especificamente, en un codificador hibrido, cada LCU (minima unidad de codificacion de 64 x 64 muestras) se divide ademas en unidades de codificacion (CU). El borde de la CU se define como borde de CU. Una CU puede dividirse ademas en unidades de prediction (PU) y unidades de transformation (TU). Cada bloque de PU y de TU tiene un borde (borde de PU y borde de TU). Se realiza el desbloqueo para bordes de CU, PU y TU. Por lo tanto un “bloque” de acuerdo con la presente memoria descriptiva es un termino que puede tener el significado de una CU, pero tambien de una PU y TU, si la CU se subdivide ademas. Un limite de una PU y TU puede por lo tanto al mismo tiempo ser un borde de CU o no.
Si la decision en la etapa S812 es afirmativa (es decir, el limite de bloque actualmente procesado es un borde de CU), la intensidad de limite BS se establece al valor de 4 (etapa S816). En el caso contrario, si la decision en la etapa S812 es negativa, BS se establece a 3 (S814).
En el caso de que la decision en la etapa S810 sea negativa, el procesamiento continua a la etapa S820. En la etapa S820, se determina si ninguno de los parametros cbf-P o cbf-Q tiene un valor de cero. Se observa que la combinacion de signos (!=) empleada en las expresiones relacionales en la etapas S820 y S830 significa “no igual”. En la decision, la variable cbf-P determina si el bloque P contiene uno o mas niveles de coeficiente de transformacion que no son iguales a cero. La respectiva indication para el bloque Q se proporciona mediante la
5
10
15
20
25
30
35
40
45
50
55
60
65
variable cbf-Q. Mas espedficamente, cada uno de los parametros cbf-P y cbf-Q puede suponer valores 0 y 1. Un valor igual a 1 especifica que el bloque de transformacion del respectivo bloque contiene uno o mas niveles de coeficiente de transformacion no iguales a cero. Si el valor es igual a 0, no estan presentes niveles de coeficiente de transformacion distintos de cero en el respectivo bloque de transformacion.
Si la decision en la etapa S820 es afirmativa, BS se establece a un valor de 2 (S822).
En el caso contrario, el procesamiento continua a la etapa S830. En la etapa S830, se realiza una decision en cuanto a si los indices de referencia del bloque P (Refldx-P) y del bloque Q (Refldx-Q) se diferencian entre si. Los indices de referencia (Refldx- P y -Q) indican una instantanea desde la que se hace referencia a un respectivo bloque. De acuerdo con ello, una decision negativa en la etapa S830 significa que ambos bloques P y Q se hacen referencia desde la misma instantanea. Una decision afirmativa en la etapa S830 significa que ambos bloques P y Q se hacen referencia desde diferentes instantaneas. En el caso de una decision afirmativa, BS se establece a un valor de 1 (S832).
En el caso de una decision negativa (S830: NO), el procesamiento continua a la etapa S840. En la etapa S840, se realiza una decision en cuanto a si uno de los parametros AbsHor de AbsVer es mayor que 0. En el presente documento, el parametro AbsHor determina la diferencia absoluta en el valor de componente de vector de movimiento horizontal del vector de movimiento que pertenece al bloque P y al bloque Q. AbsVer determina la diferencia absoluta en el valor de componente de vector de movimiento vertical del vector de movimiento que pertenece al bloque P y Q. Se ha de observar que en la decision de la etapa S840, el valor de 3 se proporciona a modo de ejemplo unicamente. Otros valores son igualmente posibles dentro del alcance de la presente memoria descriptiva. Si la decision en la etapa S840 es afirmativa, BS se establece a 1 en la etapa S842. En el caso contrario, BS se establece a cero en la etapa S844.
Como se ha indicado anteriormente, los valores de BS implican como de en bloques es un borde. En general, cuanto mayor es la intensidad del limite, mas en bloques es el borde. Como puede observarse a partir del esquema de la Figura 8, la ultima propiedad del BS se ve reflejada por las decisiones de la Figura 8. Por ejemplo, en caso de bloques intra-codificados, en vista de los mayores errores de cuantificacion, se asignan en general valores superiores para BS.
El esquema convencional de la Figura 8 corresponde al filtro de desbloqueo HM de JCTVC-F803 d4 citado anteriormente, y los parametros empleados en el mismo y descritos anteriormente se han introducido en el respectivo documento “HM deblocking filter, JCTVC-F803_d4, “WD4: Working Draft 4 of High-Efficiency Video Coding", 6a reunion Torino, IT, 14 - 22 de julio de 2011" (consultese en secciones particulares 7.4.8 y 8.6.1.3).
En general, el desbloqueo para el borde se realiza basandose en el valor deducido de BS. Si BS es igual a cero, no se realiza desbloqueo. En el caso contrario, se deduce el parametro umbral tc, para decisiones de filtrado adicionales.
Son conocidos en la tecnica esquemas de calculos convencionales generales.
Por ejemplo, en AVC, tc se deduce basandose en una tabla preprogramada bidimensional indexada mediante el parametro de cuantificacion QP y el valor de intensidad de limite BS.
tc = cliptabla [QP][BS].
Dicho enfoque tiene la desventaja de un requisito de gran memoria para almacenar una tabla bidimensional.
Se conoce un enfoque convencional diferente en HEVC (que empieza desde la version de HM 1.0). En este caso, tc se deduce desde una tabla preprogramada unidimensional indexada mediante una variable tc_desplazamiento. Mas espedficamente, en una primera etapa, basandose en el valor deducido de BS, se calcula un parametro tc_desplazamiento. En concreto, si BS es menor o igual que 2, se establece tc_desplazamiento = 0, y en el caso contrario, se establece tc_desplazamiento = 2. El parametro tc se determina de acuerdo con la formula
tc = Tctabla [QP + tc_desplazamiento].
La funcion Tctabla [ ] se define como una funcion tabular con diferentes valores de tc indexados usando el argumento de funcion. En el presente caso, el argumento de funcion es el parametro de cuantificacion QP, con el valor de desplazamiento anadido tc_desplazamiento. La tabla se define en el documento citado anteriormente JCTVC-F803_d4 “HM deblocking filter, JCTVC-F803 d4, “WD4: Working Draft 4 of High-Efficiency Video Coding", 6a reunion, Torino, IT, 14 - 22 de julio de 2011" (consultese en particular la tabla 8-15).
Es una desventaja del ultimo esquema convencional que no se realice diferenciacion entre los valores BS=1 y BS=2. Como consecuencia, mas bordes en bloques que tienen BS=2 y menos bordes en bloques que tienen BS=1 pueden experimentar la misma operation de desbloqueo.
5
10
15
20
25
30
35
40
45
50
55
60
65
La presente invencion proporciona la manera sencilla y menos compleja de deducir el parametro TCz. En concreto, si BS=2, tc_desplazamiento = 1. Si BS = 1, se establece tc_desplazamiento = 0.
Como consecuencia se reduce el tamano de tabla cuando se compara con AVC. Por otra parte, en comparacion con HEVC (HM superior a 1.0) se introduce una diferenciacion adicional entre bordes mas en bloques (BS = 2) y menos en bloques (BS = 1). En otras palabras en comparacion con el enfoque HEVC convencional, la presente invencion posibilita una derivacion de tc_desplazamiento mas detallada basandose en intensidad de limite BS.
Dicha diferencia se ilustra en la figura 9.
El lado izquierdo de la Figura 9 ilustra el enfoque HM-4.0 convencional de HEVC. Como puede observarse a partir de la misma, ambos valores BS = 2 y BS = 1 conducen al mismo valor de tc. Por el contrario, en el lado derecho se ilustra el esquema modificado de acuerdo con una realization de la presente invencion. Como puede observarse partir del mismo, se obtienen diferentes valores de tc para los diferentes valores de BS = 2 y BS = 1.
Las etapas de procesamiento global para deducir BS corresponden al esquema de la Figura 8, y se hace referencia a las mismas etapas de procesamiento con los mismos numeros de etapa en las Figuras 8 y 9.
Hablando en general, de acuerdo con la realizacion de la presente invencion, el parametro tc_desplazamiento se establece siempre diferente cuando se determina en la etapa S820 que es afirmativo en comparacion con el caso cuando dicha determination es negativa.
La Figura 10 ilustra una comparacion de eficacia de codification (como se especifica en el documento de JCT-VC JCTVC-F900, disponible bajo
http://phenix.int-evry.fr/jct/doc_end_user/documents/6_Torino/wg11/JCTVC-F900- v1.zip) entre el esquema convencional y el esquema mejorado de la Figura 9, lado derecho. La tabla izquierda de la Figura 10A corresponde a condiciones de prueba comunes. El lado derecho de la Figura 10B corresponde a parametros de alta conversation (QP = 39, 41,43 y 45). BD - tasa se calcula usando interpolation cubica a nivel de pieza (interpolacion cubica para numeros sombreados). Hay una ligera ganancia de eficacia de codificacion observada en el caso de bajo retardo P alta eficacia y bajo retardo P baja complejidad. Los tiempos de codificacion y tiempos de decodificacion son similares al esquema convencional.
La Figura 11 ilustra una simplification adicional del esquema de procesamiento de la Figura 8.
La simplificacion de la Figura 11 se ha desarrollado para reducir la complejidad del arbol de decision y por lo tanto el esfuerzo de calculo. Para destacar las diferencias entre el enfoque convencional y el enfoque simplificado de acuerdo con una realizacion de la presente invencion, el enfoque convencional de la Figura 8 se ha ilustrado una vez mas en el lado izquierdo de la Figura 11, en el que numeros de referencia iguales hacen referencia a etapas iguales. El metodo mejorado de acuerdo con la realizacion de la presente invencion se ilustra en el lado derecho de la Figura 11. Como puede observarse a partir del mismo, en caso de decision afirmativa en la etapa S810, el valor BS = 3 se asigna automaticamente (etapa S1115 que reemplaza la etapa S812). El valor 3 es sin embargo unicamente un ejemplo, y puede usarse otro valor fijo en la presente invencion.
En otras palabras, no se realiza distincion entre bordes de CU y otros limites de bloque (en particular: bordes de TU y bordes de PU como se ha descrito anteriormente). Todos los bordes adyacentes a al menos un bloque intra- codificado se tratan por lo tanto de la misma manera y se asignan el mismo BS. Por lo tanto, la etapa adicional para realizar la comprobacion para el borde de CU no es necesaria. Por lo tanto, puede reducirse el esfuerzo de calculo, puesto que, como se ha indicado anteriormente, cada etapa en la derivacion de BS incluye varios ciclos de CPU.
La Figura 12 ilustra una comparacion de eficacia de codificacion (como se especifica en el documento de JCT-VC JCTVC-F900, disponible bajo
http://phenix.int-evry.fr/jct/doc_end_user/documents/6_Torino/wg11/JCTVC-F900- v1 .zip) entre un esquema de la Figura 11 (lado derecho) y el esquema convencional de la Figura 8.
Como puede observarse a partir de la Figura 12, las eficacias de codificacion generalmente coinciden con el enfoque convencional. Sin embargo, se ahorra potencia computacional, puesto que el esquema de derivacion es menos complejo debido a la omision de la instruction de comprobacion de limite de CU en la parte critica del calculo de BS.
La Figura 13 ilustra un esquema de decision simplificado que refleja una combination de los enfoques innovadores de ambas figuras 9 y 11. En la Figura 13, los mismos numeros corresponden a las etapas de metodo respectivas como en las figuras anteriores.
Como puede observarse a partir de la Figura 13, se proporciona una ventaja en vista de la correspondencia biunivoca (uno a uno y entre) entre intensidad de iimite BS y el parametro de desplazamiento adicional tc_desplazamiento. Una determinacion intermedia del parametro de desplazamiento tc_desplazamiento se ha vuelto obsoleta en vista de las definiciones variadas de acuerdo con la presente invencion, y puede por lo tanto omitirse completamente, para ahorrar requisitos de memoria y potencia de calculo. Como puede observarse, tc depende directamente de BS, y se deduce de acuerdo con la formula
5
10
15
20
25
30
35
40
45
50
55
60
65
tc = Tctabla [BS - 1 + QP]
En otras palabras, tc se ha vuelto una funcion (unica) de la suma de BS y QP.
Mas espedficamente, de acuerdo con la tecnica anterior, tc se definio de acuerdo con the formula tc = Tctabla[tc_desplazamiento + QP], en el que Tc_desplazamiento = 2 cuando BS > 2 y tc_desplazamiento = 0 cuando BS <=2.
De acuerdo con la presente invencion la variable tc_desplazamiento no se emplea mas, y tc puede deducirse como
tc = Tctabla [BS - 1 + QP] (figura 13),
o incluso
tc = Tctabla [BS + QP] (figura 14; vease a continuacion).
La Figura 14 ilustra una modificacion adicional en comparacion con la Figura 13. En concreto, el valor de BS a asignar en vista de las decisiones tomadas como las respectivas etapas de decision se desplaza hacia abajo en uno. Mas espedficamente, en el caso de una decision afirmativa en la etapa S810, la etapa S1115 se reemplaza por la etapa S1415, en la que se establece BS=2. En el caso de una decision afirmativa en la etapa S820, la etapa S822 se reemplaza por la etapa S1422, en la que se establece BS=1. En el caso de una decision afirmativa en la etapa S830, la etapa S832 se reemplaza con la etapa S1432, en la que se establece BS=0. De manera similar, en el caso de una decision afirmativa en la etapa S840, la etapa S842 se reemplaza con la etapa S1442, en la que se establece BS=0.
Como consecuencia, el calculo del parametro tc puede realizarse de acuerdo con la formula simplificada adicional
tc = Tctabla [BS + QP].
De acuerdo con ello, la suma de BS y QP se usa directamente como un parametro de correspondencia en la funcion de tabla de correspondencia Tctabla.
Una situacion espedfica tiene que considerarse en el caso de una decision negativa en la etapa S840. Puesto que en la Figura 13 (y las figuras respectivas anteriores), en este caso el valor BS=0 se establecio en la etapa S844, y no hay disponible desplazamiento hacia abajo en uno adicional (puesto que no son aceptables valores negativos de la intensidad de limite), el esquema de procesamiento se modifica ligeramente en dicho caso espedfico. En concreto, la etapa S844 se reemplaza en la Figura 14 con la etapa S1444, en la que se decide no realizar desbloqueo, sin establecer ningun valor de BS particular. En otras palabras, la decision de “no desbloquear” se realiza sin referencia al valor de intensidad de limite en absoluto. Puesto que en el caso de no desbloquear, cualquier decision adicional que implique al parametro tc no es necesaria, la etapa intermedia de asignar un valor de intensidad de limite es tambien innecesaria en ese caso.
Resumiendo, los esquemas de calculo mejorado de la Figuras 13 y 14 posibilitan las siguientes ventajas:
a) se evita la necesidad de emplear el parametro intermedio tc_desplazamiento, y por lo tanto la derivation del valor de tc que determina la intensidad del filtro se ha simplificado.
b) se ha introducido una diferenciacion adicional entre bordes mas en bloques que tienen BS=2 (BS=1 en el caso de la Figura 14) de bordes menos en bloques que tienen BS=1 (BS=0 en la figura 14). Como consecuencia, puede conseguirse una ganancia en eficacia de codification y calidad subjetiva.
c) la etapa adicional de comprobar si un limite procesado es un borde de unidad de codificacion se omite, y por lo tanto se simplifica la derivacion de la intensidad de limite. La consecuencia es una reduction en complejidad, que conduce a un numero menor de instrucciones (ciclos de CPU) en la derivacion de BS.
Una modificacion adicional del esquema de la Figura 14 se ilustra en la Figura 15. En la figura 15, se ilustra un refinamiento adicional del arbol de decision realizando las decisiones adicionales con respecto a indices de referencia y diferencias de vector de movimiento, no unicamente en el caso de una decision negativa en la etapa S820, sino tambien en el caso de una decision afirmativa en dicha etapa. Mas espedficamente, mientras que en la Figura 14 en el caso de una decision afirmativa en la etapa S820, se asigna automaticamente BS = 1 en la etapa S1422, de acuerdo con el esquema de la Figura 15 el procesamiento continua ademas a la etapa S1530. En la etapa S1530, se realiza una decision en cuanto a si los indices de referencia de los bloques P y Q son diferentes o no. En el caso de una decision negativa, el valor BS = 1 se establece en la etapa S1532. En caso de una decision afirmativa, la decision adicional se realiza en la etapa S1540, en cuanto a si las diferencias absolutas, por ejemplo, son valores de componente de vector de movimiento vertical entre los bloques P y Q que superan un valor predeterminado (preferentemente 3). En caso de una decision negativa en la etapa S1540, una vez mas se establece BS = 1, en la etapa S1542. En caso de una decision afirmativa en la etapa S1540, en contraste, la etapa
5
10
15
20
25
30
35
40
45
50
55
60
65
S1544 establece BS = 2. En otras palabras, las etapas de decision adicional de la Figura 15 sirven para destacar que tiene lugar un caso mas en bloques cuando hay al menos un nivel de coeficiente de transformacion no igual a cero, los bloques P y Q se hacen referencia mediante diferentes instantaneas, y las diferencias absolutas en los componentes de vector de movimiento estan presentes (es decir las tres decisiones S820, S1530 y S1540 se deciden afirmativamente). En dicho caso, se asigna una intensidad de limite diferente (preferentemente: intensidad de limite superior) en comparacion con la situacion en la Figura 14. Mas especificamente, si las tres decisiones anteriormente mencionadas se determinan afirmativamente, en el presente ejemplo se asigna el mismo valor BS = 2 como en caso de los bloques intra-codificados. Sin embargo, se observa que la presente invencion no esta limitada a dichos valores, y son igualmente posibles otros valores para destacar casos particularmente en bloques.
Ademas, una simplificacion del esquema de decision global de la Figura 7 se muestra en la Figura 16. El esquema en el lado izquierdo de la Figura 16 corresponde al esquema convencional de la Figura 7. La simplificacion adicional posibilita simplificar ademas el calculo. El esquema global se muestra en el lado derecho inferior de la Figura 16. En la primera etapa de S1600, se calcula la intensidad de limite de acuerdo con un esquema simplificado adicional. Dicho esquema simplificado adicional se ilustra en la porcion de lado derecho superior de la Figura 16. En concreto, unicamente se lleva a cabo una unica decision en el esquema de calculo de BS simplificado adicional de la Figura 16. Si la unica decision en la etapa S810 es afirmativa (al menos un bloque intra-codificado), se establece BS = 2 en la etapa S1450. En contraste a los esquemas anteriores, tambien en el caso de decision negativa de la etapa S810 no se realizan decisiones adicionales. Por el contrario, el procesamiento continua a la etapa S1620, en el que se establece BS al valor fijo BS = 0. Basandose en el calculo modificado en la etapa S1600 (detallado en la porcion superior derecha de la figura) el procesamiento continua inmediatamente a la etapa S720, en la que se calculan los parametros tc y p. Basandose en tc y p, en la etapa posterior S1630, se decide si realizar filtrado intenso (S732), filtrado debil (S735) o no filtrado (S738). Se observa que los valores 2 y cero a asignar al parametro BS en las etapas S1415 y S1620 son valores ejemplares unicamente, y otros valores fijos estan dentro del alcance de la presente invencion.
Como consecuencia, no se decide unicamente filtrado en una etapa basada en pixeles de las decisiones de bloqueo. El calculo de tc se simplifica ademas en que un valor de 2 (u otro valor fijo) se anade o no anade al argumento de la funcion de tabla Tctabla.
Por lo tanto, el calculo se simplifica ademas en que se asignan diferentes valores fijos a la intensidad de limite BS, en resultado de unicamente una unica decision a realizar en la etapa S810.
Una ventaja adicional de la presente invencion se refiere a una reduccion de la cantidad de bits requeridos para almacenar los valores de intensidad de limite BS. Como se ha descrito anteriormente con referencia a la Figura 8, en la tecnica anterior la intensidad de limite BS toma valores en el intervalo inclusivo [0, 4]. Como consecuencia, se requiere un minirno de tres bits para representar los valores de BS para cada borde. Por otra parte, el metodo en la invencion actual, unicamente usa valores de BS en el intervalo inclusivo [0,3]. Por lo tanto, la presente invencion tiene en cuenta dicha situacion especifica, y posibilita usar unicamente dos bits para representar el valor de BS. En concreto, la presente invencion, evita la diferenciacion entre limites de unidad de codificacion y otros tipos de limites de bloque que no son bordes de unidad de codificacion, dando como resultado tener unicamente valores de intensidad de limite de 0 a 3. Una realizacion (consultese figura 14 y figuras posteriores) incluso produce el intervalo de BS para que sea el intervalo inclusivo [0,2].
Por lo tanto, la presente invencion proporciona la ventaja adicional de conseguir el mismo resultado de desbloqueo que el HM-4.0 actual mientras implica menos requisitos de memoria.
A continuacion, se describen brevemente algunos aspectos y caracteristicas particulares adicionales de la presente invencion.
De acuerdo con una realizacion, el primer parametro se establece a un segundo valor fijo, diferente del primer valor fijo si la primera determinacion es negativa.
Ademas, de acuerdo con una realizacion, el metodo de acuerdo con la invencion comprende la etapa de decidir no aplicar en absoluto el desbloqueo a dicho limite, basandose en otro umbral definido usando el segundo parametro, si el filtro que tiene la intensidad inferior de dicho primer y dicho segundo filtros de desbloqueo se han seleccionado en dicha etapa de seleccion. El aparato de acuerdo con la realizacion comprende una unidad de decision para realizar la etapa de decision.
Tambien, de acuerdo con una realizacion, si la primera determinacion es negativa, la etapa de determinacion comprende ademas las etapas de determinar en segundo lugar si al menos uno de dichos bloques de pixeles adyacentes incluye al menos un nivel distinto de cero de coeficientes de transformacion, determinar en tercer lugar si un indice de referencia que indica una instantanea, a partir de la cual se hace referencia a un bloque de imagen, es diferente para ambos de dichos bloques de imagen adyacentes, y en cuarto lugar determinar si la diferencia absoluta en al menos uno de los valores de componente de vector de movimiento horizontal y vertical entre los dos bloques de imagen adyacentes supera un valor umbral predeterminado. Si la segunda, tercera y cuarta etapas de
5
10
15
20
25
30
35
40
45
50
55
60
65
determinacion se determinan todas afirmativamente, el valor del primer parametro se determina para que sea dicho primer valor fijo. De otra manera, el primer parametro se determina para que sea un valor diferente. Un aparato de acuerdo con la realizacion comprende ademas una segunda, una tercera y una cuarta seccion de determinacion para operarse si la determinacion mediante la primera seccion de determinacion es negativa, para realizar la segunda, tercera y cuarta etapas de determinacion.
El procesamiento descrito en cada una de las realizaciones puede implementarse de manera sencilla en un sistema informatico independiente, grabando, en un medio de grabacion, un programa para implementar las configuraciones del metodo de codificacion de instantanea en movimiento (metodo de codificacion de imagen) y el metodo de decodificacion de instantanea en movimiento (metodo de decodificacion de imagen) descritos en cada una de las realizaciones. El medio de grabacion puede ser cualquier medio de grabacion siempre que el programa pueda grabarse, tal como un disco magnetico, un disco optico, un disco optico magnetico, una tarjeta de IC y una memoria de semiconductores.
En lo sucesivo, se describiran las aplicaciones para el metodo de codificacion de instantanea en movimiento (metodo de codificacion de imagen) y el metodo de decodificacion de instantanea en movimiento (metodo de decodificacion de imagen) descritas en cada una de las realizaciones y sistemas que usan las mismas. El sistema tiene una caracteristica de tener un aparato de codificacion y decodificacion de imagen que incluye un aparato de codificacion de imagen que usa el metodo de codificacion de imagen y un aparato de decodificacion de imagen que usa el metodo de decodificacion de imagen. Otras configuraciones en el sistema pueden cambiarse segun sea apropiado dependiendo de los casos.
(Realizacion A)
La Figura 17 ilustra una configuracion global de un sistema proveedor de contenido ex100 para implementar servicios de distribution de contenido. El area para proporcionar servicios de comunicacion se divide en celdas de tamano deseado, y las estaciones base ex106, ex107, ex108, ex109, y ex110 que son estaciones base inalambricas fijas se colocan en cada una de las celdas.
El sistema proveedor de contenido ex100 esta conectado a dispositivos, tales como un ordenador ex111, un asistente digital personal (PDA) ex112, una camara ex113, un telefono celular ex114 y una maquina de juegos ex115, mediante internet ex101, un proveedor de servicios de internet ex102, una red de telefonia ex104, asi como las estaciones base ex106 a ex110, respectivamente.
Sin embargo, la configuracion del sistema proveedor de contenido ex100 no esta limitada a la configuracion mostrada en la Figura 17, y es aceptable una combination en la que cualquiera de los elementos esten conectados. Ademas, cada dispositivo puede conectarse directamente a la red de telefonia ex104, en lugar de mediante las estaciones base ex106 a ex110 que son las estaciones inalambricas fijas. Ademas, los dispositivos pueden interconectarse entre si mediante una comunicacion inalambrica de corta distancia y otras.
La camara ex113, tal como una camara de video digital, puede capturar video. Una camara ex116, tal como una camara digital, puede capturar tanto imagenes fijas como video. Ademas, el telefono celular ex114 puede ser el que cumple cualquiera de las normas tal como Sistema Global para Comunicaciones Movil (GSM) (marca comercial registrada), Acceso Multiple por Division de Codigo (CDMA), Acceso Multiple por Division de Codigo de Banda Ancha (W-CDMA), Evolution a Largo Plazo (LTE), y Acceso de Paquetes a Alta Velocidad (HSPA). Como alternativa, el telefono celular ex114 puede ser un Sistema de Telefono Portatil Personal (PHS).
En el sistema proveedor de contenido ex100, un servidor de flujo continuo ex103 esta conectado a la camara ex113 y a otros mediante la red de telefonia ex104 y la estacion base ex109, que posibilita la distribucion de imagenes de un espectaculo en directo y otros. En una distribucion de este tipo, un contenido (por ejemplo, video de un espectaculo de musica en directo) capturado mediante el usuario que usa la camara ex113 se codifica como se ha descrito anteriormente en cada una de las realizaciones (es decir, la camara funciona como el aparato de codificacion de imagen de acuerdo con un aspecto de la presente invention), y el contenido codificado se transmite al servidor de flujo continuo ex103. Por otra parte, el servidor de flujo continuo ex103 lleva a cabo distribucion de flujo de los datos de contenido transmitido a los clientes tras sus solicitudes. Los clientes incluyen el ordenador ex111, el PDA ex112, la camara ex113, el telefono celular ex114 y la maquina de juegos ex115 que pueden decodificar los datos codificados anteriormente mencionados. Cada uno de los dispositivos que ha recibido los datos distribuidos decodifica y reproduce los datos codificados (es decir, funciona como el aparato de decodificacion de imagen de acuerdo con un aspecto de la presente invencion).
Los datos capturados pueden codificarse mediante la camara ex113 o el servidor de flujo continuo ex103 que transmite los datos, o los procesos de codificacion pueden compartirse entre la camara ex113 y el servidor de flujo continuo ex103. De manera similar, los datos distribuidos pueden decodificarse mediante los clientes o el servidor de flujo continuo ex103, o los procesos de decodificacion pueden compartirse entre los clientes y el servidor de flujo continuo ex103. Ademas, los datos de las imagenes fijas y el video capturado mediante no unicamente la camara ex113 sino tambien de la camara ex116 puede transmitirse al servidor de flujo continuo ex103 a traves del
5
10
15
20
25
30
35
40
45
50
55
60
65
ordenador ex111. Los procesos de codificacion pueden realizarse mediante la camara ex116, el ordenador ex111, o el servidor de flujo continuo ex103, o compartirse entre ellos.
Ademas, los procesos de codificacion y decodificacion pueden realizarse mediante un LSI ex500 incluido generalmente en cada uno del ordenador ex111 y los dispositivos. El LSI ex500 puede configurarse en un unico chip o una pluralidad de chips. El software para codificar y decodificar video puede integrarse en algun tipo de un medio de grabacion (tal como un CD-ROM, un disco flexible y un disco duro) que es legible mediante el ordenador ex111 y otros, y los procesos de codificacion y decodificacion pueden realizarse usando el software. Ademas, cuando el telefono celular ex114 esta equipado con una camara, los datos de video obtenidos mediante la camara pueden transmitirse. Los datos de video son datos codificados mediante el LSI ex500 incluido en el telefono celular ex114.
Ademas, el servidor de flujo continuo ex103 puede estar compuesto de servidores y ordenadores, y puede descentralizar datos y procesar los datos descentralizados, registrar o distribuir datos.
Como se ha descrito anteriormente, los clientes pueden recibir y reproducir los datos codificados en el sistema proveedor de contenido ex100. En otras palabras, los clientes pueden recibir y decodificar informacion transmitida mediante el usuario, y reproducir los datos decodificados en tiempo real en el sistema proveedor de contenido ex100, de modo que el usuario que no tiene ningun derecho ni equipo particular puede implementar difusion personal.
Aparte del ejemplo del sistema proveedor de contenido ex100, al menos uno del aparato de codificacion de instantanea en movimiento (aparato de codificacion de imagen) y el aparato de decodificacion de instantanea en movimiento (aparato de decodificacion de imagen) descritos en cada una de las realizaciones puede implementarse en un sistema de difusion digital ex200 ilustrado en la Figura 18. Mas especificamente, una estacion de difusion ex201 comunica o transmite, mediante ondas de radio a un satelite de difusion ex202, datos multiplexados obtenidos multiplexado datos de audio y otros en datos de video. Los datos de video son datos codificados mediante el metodo de codificacion de instantanea en movimiento descrito en cada una de las realizaciones (es decir, datos codificados mediante el aparato de codificacion de imagen de acuerdo con un aspecto de la presente invencion). Tras la recepcion de los datos multiplexados, el satelite de difusion ex202 transmite ondas de radio para difusion. A continuacion, una antena de uso domestico ex204 con una funcion de recepcion de difusion por satelite recibe las ondas de radio. A continuacion, un dispositivo tal como una television (receptor) ex300 y un decodificador de salon (STB) ex217 decodifica los datos multiplexados recibidos, y reproduce los datos decodificados (es decir, funciona como el aparato de decodificacion de imagen de acuerdo con un aspecto de la presente invencion).
Ademas, un lector/grabador ex218 (i) lee y decodifica los datos multiplexados grabados en un medio de grabacion ex215, tal como un DVD y un BD, o (i) codifica senales de video en el medio de grabacion ex215, y en algunos casos, escribe datos obtenidos multiplexando una senal de audio en los datos codificados. El lector/grabador ex218 puede incluir el aparato de decodificacion de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento como se muestra en cada una de las realizaciones. En este caso, las senales de video reproducidas se presentan en el monitor ex219, y pueden reproducirse mediante otro dispositivo o sistema usando el medio de grabacion ex215 en el que se graban los datos multiplexados. Es posible tambien implementar el aparato de decodificacion de instantanea en movimiento en el decodificador de salon ex217 conectado al cable ex203 para una television por cable o a la antena ex204 para difusion por satelite y/o terrestre, para presentar las senales de video en el monitor ex219 de la television ex300. El aparato de decodificacion de instantanea en movimiento puede implementarse no en el decodificador de salon si no en la television ex300.
La Figura 19 ilustra la television (receptor) ex300 que usa el metodo de codificacion de instantanea en movimiento y el metodo de decodificacion de instantanea en movimiento, descritos en cada una de las realizaciones. La television ex300 incluye: un sintonizador ex301 que obtiene o proporciona datos multiplexados obtenidos multiplexando datos de audio en datos de video, a traves de la antena ex204 o el cable ex203, etc., que recibe una difusion; una unidad de modulacion/demodulacion ex302 que demodula los datos multiplexados recibidos o modula datos en datos multiplexados para suministrarse al exterior; y una unidad de multiplexacion/demultiplexacion ex303 que demultiplexa los datos multiplexados modulados en datos de video y datos de audio, o multiplexa datos de video y datos de audio codificados mediante una unidad de procesamiento de senal ex306 en datos.
La television ex300 incluye ademas: una unidad de procesamiento de senal ex306 que incluye una unidad de procesamiento de senal de audio ex304 y una unidad de procesamiento de senal de video ex305 que decodifica datos de audio y datos de video y codifica datos de audio y datos de video, respectivamente (que funciona como el aparato de codificacion de imagen y el aparato de decodificacion de imagen de acuerdo con los aspectos de la presente invencion); y una unidad de salida ex309 que incluye un altavoz ex307 que proporciona la senal de audio decodificada, y una unidad de visualization ex308 que presenta la senal de video decodificada, tal como una pantalla. Ademas, la television ex300 incluye una unidad de interfaz ex317 que incluye una unidad de entrada de operation ex312 que recibe una entrada de una operation de usuario. Ademas, la television ex300 incluye una unidad de control ex310 que controla cada elemento constituyente global de la television ex300, y una unidad de circuito de fuente de alimentation ex311 que suministra alimentation a cada uno de los elementos. Distinta de la unidad de entrada de operacion ex312, la unidad de interfaz ex317 puede incluir: un puente ex313 que esta
5
10
15
20
25
30
35
40
45
50
55
60
65
conectado a un dispositivo externo, tal como el lector/grabador ex218; una unidad de ranura ex314 para posibilitar la conexion del medio de grabacion ex216, tal como una tarjeta de SD; un controlador ex315 para conectarse a un medio de grabacion externo, tal como un disco duro; y un modem ex316 para conectarse a una red de telefonia. En este punto, el medio de grabacion ex216 puede grabar electricamente informacion usando un elemento de memoria de semiconductores no volatil/volatil para almacenamiento. Los elementos constituyentes de la television ex300 estan conectados entre si a traves de un bus sincrono.
En primer lugar, se describira la configuracion en la que la television ex300 decodifica datos multiplexados obtenidos desde el exterior a traves de la antena ex204 y otros y reproduce los datos decodificados. En la television ex300, tras una operacion de usuario a traves de un controlador remoto ex220 y otros, la unidad de multiplexacion/demultiplexacion ex303 demultiplexa los datos multiplexados demodulados mediante la unidad de modulacion/demodulacion ex302, bajo el control de la unidad de control ex310 incluyendo una CPU. Ademas, la unidad de procesamiento de senal de audio ex304 decodifica los datos de audio demultiplexados, y la unidad de procesamiento de senal de video ex305 decodifica los datos de video demultiplexados, usando el metodo de decodificacion descrito en cada una de las realizaciones, en la television ex300. La unidad de salida ex309 proporciona la senal de video y la senal de audio decodificadas al exterior, respectivamente. Cuando la unidad de salida ex309 proporciona la senal de video y la senal de audio, las senales pueden almacenarse temporalmente en las memorias intermedias ex318 y ex319, y otras de modo que las senales se reproducen en sincronizacion entre si. Ademas, la television ex300 puede leer datos multiplexados no a traves de una difusion y otros sino desde el medio de grabacion ex215 y ex216, tal como un disco magnetico, un disco optico y una tarjeta SD. A continuacion, se describira una configuracion en la que la television ex300 codifica una senal de audio y una senal de video, y transmite los datos al exterior o escribe los datos en un medio de grabacion. En la television ex300, tras una operacion de un usuario a traves del controlador remoto ex220 y otros, la unidad de procesamiento de senal de audio ex304 codifica una senal de audio, y la unidad de procesamiento de senal de video ex305 codifica una senal de video, bajo el control de la unidad de control ex310 usando el metodo de codificacion descrito en cada una de las realizaciones. La unidad de multiplexacion/demultiplexacion ex303 multiplexa la senal de video y la senal de audio codificadas, y proporciona la senal resultante al exterior. Cuando la unidad de multiplexacion/demultiplexacion ex303 multiplexa la senal de video y la senal de audio, las senales pueden almacenarse temporalmente en las memorias intermedias ex320 y ex321, y otras de modo que las senales se reproducen en sincronizacion entre si. En este punto, las memorias intermedias ex318, ex319, ex320 y ex321 pueden ser varias como se ilustra, o al menos una memoria intermedia puede compartirse en la television ex300. Ademas, los datos pueden almacenarse en una memoria intermedia de modo que puede evitarse el desbordamiento o la infrautilizacion del sistema entre la unidad de modulacion/demodulacion ex302 y la unidad de multiplexacion/demultiplexacion ex303, por ejemplo.
Ademas, la television ex300 puede incluir una configuracion para recibir una entrada de AV desde un microfono o una camara distinta de la configuracion para obtener datos de audio y de video desde una difusion o un medio de grabacion, y puede codificar los datos obtenidos. Aunque la television ex300 puede codificar, multiplexar y proporcionar datos al exterior en la descripcion, puede ser capaz de unicamente recibir, decodificar y proporcionar datos al exterior pero no la codificacion, multiplexacion y proveer datos al exterior.
Ademas, cuando el lector/grabador ex218 lee o escribe datos multiplexados desde o en un medio de grabacion, uno de la television ex300 y del lector/grabador ex218 puede decodificar o codificar los datos multiplexados, y la television ex300 y el lector/grabador ex218 pueden compartir la decodificacion o codificacion.
Como un ejemplo, la Figura 20 ilustra una configuracion de una unidad de reproduccion/grabacion de informacion ex400 cuando se leen o escriben datos desde o en un disco optico. La unidad de reproduccion/grabacion de informacion ex400 incluye los elementos constituyentes ex401, ex402, ex403, ex404, ex405, ex406 y ex407 que se van a describir en lo sucesivo. El cabezal optico ex401 irradia un punto laser en una superficie de grabacion del medio de grabacion ex215 que es un disco optico para escribir informacion, y detecta luz reflejada desde la superficie de grabacion del medio de grabacion ex2l5 para leer la informacion. La unidad de grabacion de modulacion ex402 acciona electricamente un laser de semiconductor incluido en el cabezal optico ex401, y modula la luz laser de acuerdo con los datos grabados. La unidad de demodulacion de reproduccion ex403 amplifica una senal de reproduccion obtenida detectando electricamente la luz reflejada desde la superficie de grabacion usando un foto detector incluido en el cabezal optico ex401, y demodula la senal de reproduccion separando un componente de senal grabado en el medio de grabacion ex215 para reproducir la informacion necesaria. La memoria intermedia ex404 mantiene temporalmente la informacion a grabar en el medio de grabacion ex215 y la informacion reproducida desde el medio de grabacion ex215. El motor de disco ex405 gira el medio de grabacion ex215. La unidad de servo control ex406 mueve el cabezal optico ex401 a una pista de informacion predeterminada mientras controla el mecanismo de rotacion del motor de disco ex405 para seguir el punto laser. La unidad de control de sistema ex407 controla en general la unidad de reproduccion/grabacion de informacion ex400. Los procesos de lectura y escritura pueden implementarse mediante la unidad de control de sistema ex407 usando diversa informacion almacenada en la memoria intermedia ex404 y generar y anadir nueva informacion segun sea necesario, y mediante la unidad de grabacion de modulacion ex402, la unidad de demodulacion de reproduccion ex403, y la unidad de servo control ex406 que graban y reproducen informacion a traves del cabezal optico ex401 mientras se operan de una manera coordinada. La unidad de control de sistema ex407 incluye, por ejemplo, un microprocesador, y ejecuta el procesamiento provocando que un ordenador ejecute un programa para leer y escribir.
5
10
15
20
25
30
35
40
45
50
55
60
65
Aunque el cabezal optico ex401 irradia un punto laser en la descripcion, puede realizar grabacion de alta densidad usando una luz de campo cercano.
La Figura 21 ilustra el medio de grabacion ex215 que es el disco optico. En la superficie de grabacion del medio de grabacion ex215, se forman en espiral surcos de guia, y una pista de information ex230 graba, con antelacion, information de direction que indica una position absoluta en el disco de acuerdo con el cambio en una forma de los surcos de guia. La informacion de direccion incluye informacion para determinar posiciones de los bloques de grabacion ex231 que son una unidad para grabar datos. Reproducir la pista de informacion ex230 y leer la informacion de direccion en un aparato que graba y reproduce datos puede conducir a la determination de las posiciones de los bloques de grabacion. Ademas, el medio de grabacion ex215 incluye un area de grabacion de datos ex233, un area de circunferencia interior ex232 y un area de circunferencia exterior ex234. El area de grabacion de datos ex233 es un area para uso al grabar los datos de usuario. El area de circunferencia interior ex232 y el area de circunferencia exterior ex234 que estan dentro y fuera del area de grabacion de datos ex233, son respectivamente para uso excepto para grabar los datos de usuario. La unidad de reproduccion/grabacion de informacion 400 lee y escribe audio codificado, datos de video codificado o datos multiplexados obtenidos multiplexando los datos de audio y de video codificados, desde y en el area de grabacion de datos ex233 del medio de grabacion ex215.
Aunque un disco optico que tiene una capa, tal como un DVD y un BD se describen como un ejemplo en la descripcion, el disco optico no esta limitado como tal, y puede ser un disco optico que tiene una estructura multicapa y que puede grabarse en una parte distinta de la superficie. Ademas, el disco optico puede tener una estructura para grabacion/reproduccion multidimensional, tal como grabacion de informacion usando luz de colores con diferentes longitudes de onda en la misma portion del disco optico y para grabar informacion que tiene diferentes capas desde diversos angulos.
Ademas, un coche ex210 que tiene una antena ex205 puede recibir datos desde el satelite ex202 y otros, y reproducir video en un dispositivo de visualization tal como un sistema de navegacion de coche ex211 establecido en el coche ex210, en el sistema de difusion digital ex200. En este punto, una configuration del sistema de navegacion de coche ex211 sera una configuracion, por ejemplo, que incluye una unidad de reception de GPS a partir de la configuracion ilustrada en la Figura 19. Lo mismo se cumplira para la configuracion del ordenador ex111, el telefono celular ex114, y otros.
La Figura 22A ilustra el telefono celular ex114 que usa el metodo de codification de instantanea en movimiento y el metodo de decodificacion de instantanea en movimiento, descritos en las realizaciones. El telefono celular ex1l4 incluye: una antena ex350 para transmitir y recibir ondas de radio a traves de la estacion base ex110; una unidad de camara ex365 que puede capturar imagenes en movimiento y fijas; y una unidad de visualizacion ex358 tal como una pantalla de cristal liquido para visualizar los datos tales como video decodificado capturado mediante la unidad de camara ex365 o recibirse mediante la antena ex350. El telefono celular ex114 incluye ademas: una unidad de cuerpo principal que incluye una unidad de tecla de operation ex366; una unidad de salida de audio ex357 tal como un altavoz para salida de audio; una unidad de entrada de audio ex356 tal como un microfono para entrada de audio; una unidad de memoria ex367 para almacenar video capturado o imagenes fijas, audio grabado, datos codificados o decodificados del video recibido, las imagenes fijas, correos electronicos u otros; y una unidad de ranura ex364 que es una unidad de interfaz para un medio de grabacion que almacena datos de la misma manera que la unidad de memoria ex367.
A continuation, se describira un ejemplo de una configuracion del telefono celular ex114 con referencia a la Figura 22B. En el telefono celular ex114, una unidad de control principal ex360 disenada para controlar en general cada unidad del cuerpo principal que incluye la unidad de visualizacion ex358 asi como la unidad de tecla de operacion ex366 estan conectadas mutuamente, mediante un bus sincrono ex370, a una unidad de circuito de fuente de alimentation ex361, una unidad de control de entrada de operacion ex362, una unidad de procesamiento de senal de video ex355, una unidad de interfaz de camara ex363, una unidad de control de pantalla de cristal liquido (LCD) ex359, una unidad de modulacion/demodulacion ex352, una unidad de multiplexacion/demultiplexacion ex353, una unidad de procesamiento de senal de audio ex354, la unidad de ranura ex364 y la unidad de memoria ex367.
Cuando una tecla de finalization de llamada o una tecla de alimentacion se ENCIENDE mediante una operacion del usuario, la unidad de circuito de fuente de alimentacion ex361 suministra a las respectivas unidades con alimentacion desde un conjunto de baterias para activar el telefono celular ex114.
En el telefono celular ex114, la unidad de procesamiento de senal de audio ex354 convierte las senales de audio recogidas mediante la unidad de entrada de audio ex356 en modo de conversation de voz en senales de audio digital bajo el control de la unidad de control principal ex360 que incluye una CPU, ROM y RAM. A continuacion, la unidad de modulacion/demodulacion ex352 realiza procesamiento de espectro ensanchado en las senales de audio digital, y la unidad de transmision y recepcion ex351 realiza conversion de digital a analogico y conversion de frecuencia en los datos, para transmitir los datos resultantes mediante la antena ex350. Tambien, en el telefono celular ex114, la unidad de transmision y recepcion ex351 amplifica los datos recibidos mediante la antena ex350 en modo de conversacion de voz y realiza conversion de frecuencia y la conversion de analogico a digital en los datos.
5
10
15
20
25
30
35
40
45
50
55
60
A continuacion, la unidad de modulacion/demodulacion ex352 realiza procesamiento de espectro ensanchado inverso en los datos, y la unidad de procesamiento de senal de audio ex354 los convierte en senales de audio analogicas, para emitirlas mediante la unidad de salida de audio ex357.
Ademas, cuando se transmite un correo electronico en modo de comunicacion de datos, los datos de texto del correo electronico introducidos mediante la unidad de tecla de operacion ex366 y otras del cuerpo principal se envian fuera a la unidad de control principal ex360 mediante la unidad de control de entrada de operacion ex362. La unidad de control principal ex360 provoca que la unidad de modulacion/demodulacion ex352 realice procesamiento de espectro ensanchado en los datos de texto, y la unidad de transmision y recepcion ex351 realiza la conversion de digital a analogico y la conversion de frecuencia en los datos resultantes para transmitir los datos a la estacion base ex110 mediante la antena ex350. Cuando se recibe un correo electronico, se realiza el procesamiento que es aproximadamente inverso al procesamiento para transmitir un correo electronico en los datos recibidos, y los datos resultantes se proporcionan a la unidad de visualizacion ex358.
Cuando se transmite video, imagenes fijas, o video y audio en modo de comunicacion de datos, la unidad de procesamiento de senal de video ex355 comprime y codifica senales de video suministradas desde la unidad de camara ex365 usando el metodo de codificacion de instantanea en movimiento mostrado en cada una de las realizaciones (es decir, funciona como el aparato de codificacion de imagen de acuerdo con el aspecto de la presente invencion), y transmite los datos de video codificados a la unidad de multiplexacion/demultiplexacion ex353. En contraste, durante cuando la unidad camara ex365 captura video, imagenes fijas y otros, la unidad de procesamiento de senal de audio ex354 codifica senales de audio recogidas mediante la unidad de entrada de audio ex356, y transmite los datos de audio codificados a la unidad de multiplexacion/demultiplexacion ex353.
La unidad de multiplexacion/demultiplexacion ex353 multiplexa los datos de video codificados suministrados desde la unidad de procesamiento de senal de video ex355 y los datos de audio codificados suministrados desde la unidad de procesamiento de senal de audio ex354, usando un metodo predeterminado. A continuacion, la unidad de modulacion/demodulacion (unidad de circuito de modulacion/demodulacion) ex352 realiza procesamiento de espectro ensanchado en los datos multiplexados, y la unidad de transmision y recepcion ex351 realiza conversion de digital a analogico y conversion de frecuencia en los datos para transmitir los datos resultantes mediante la antena ex350.
Cuando se reciben datos desde un fichero de video que esta enlazado a una pagina web y a otros en modo de comunicacion de datos o cuando se recibe un correo electronico con video y/o audio adjunto, para decodificar los datos multiplexados recibidos mediante la antena ex350, la unidad de multiplexacion/demultiplexacion ex353 demultiplexa los datos multiplexados en un flujo de bits de datos de video y un flujo de bits de datos de audio, y suministra la unidad de procesamiento de senal de video ex355 con los datos de video codificados y la unidad de procesamiento de senal de audio ex354 con los datos de audio codificados, a traves del bus sincrono ex370. La unidad de procesamiento de senal de video ex355 decodifica la senal de video usando un metodo de decodificacion de instantanea en movimiento que corresponde al metodo de codificacion de instantanea en movimiento mostrado en cada una de las realizaciones (es decir, funciona como el aparato de decodificacion de imagen de acuerdo con el aspecto de la presente invencion), y a continuacion la unidad de visualizacion ex358 presenta, por ejemplo, las imagenes de video y fijas incluidas en el fichero de video enlazado a la pagina web mediante la unidad de control de LCD ex359.
Ademas, la unidad de procesamiento de senal de audio ex354 decodifica la senal de audio, y la unidad de salida de audio ex357 proporciona el audio.
Ademas, de manera similar a la television ex300, un terminal tal como el telefono celular ex114 probablemente tiene 3 tipos de configuraciones de implementacion incluyendo no unicamente (i) un terminal de transmision y recepcion que incluye tanto un aparato de codificacion como un aparato de decodificacion, pero tambien (ii) un terminal de transmision que incluye unicamente un aparato de codificacion y (iii) un terminal de recepcion que incluye unicamente un aparato de decodificacion. Aunque el sistema de difusion digital ex200 recibe y transmite los datos multiplexados obtenidos multiplexando datos de audio en datos de video en la descripcion, los datos multiplexados pueden ser datos obtenidos multiplexando no datos de audio sino datos de caracter relacionados con el video en los datos de video, y pueden no ser datos multiplexados sino los propios datos de video.
Como tal, el metodo de codificacion de instantanea en movimiento y el metodo de decodificacion de instantanea en movimiento en cada una de las realizaciones pueden usarse en cualquiera de los dispositivos y sistemas descritos. Por lo tanto, pueden obtenerse las ventajas descritas en cada una de las realizaciones.
Ademas, la presente invencion no esta limitada a las realizaciones, y son posibles diversas modificaciones y revisiones sin alejarse del alcance de la presente invencion.
5
10
15
20
25
30
35
40
45
50
55
60
65
(Realization B)
Los datos de v^deo pueden generarse conmutando, segun sea necesario, entre (i) el metodo de codification de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento mostrados en cada una de las realizaciones y (ii) un metodo de codificacion de instantanea en movimiento o un aparato de codificacion de instantanea en movimiento en conformidad con una norma diferente, tal como MPEG-2, MPEG-4 AVC y VC-1.
En este punto, cuando se genera una pluralidad de datos de video que se ajustan a las diferentes normas y se decodifican a continuation los metodos de codificacion necesitan seleccionarse para ajustarse a las diferentes normas. Sin embargo, puesto que no puede detectarse a que norma se ajusta cada uno de la pluralidad de los datos de video a decodificar, hay un problema de que no puede seleccionarse un metodo de decodificacion apropiado.
Para resolver el problema, los datos multiplexados obtenidos multiplexando datos de audio y otros en los datos de video tienen una estructura que incluye information de identification que indica a que norma se ajustan los datos de video. La estructura especifica de los datos multiplexados que incluye los datos de video generados en el metodo de codificacion de instantanea en movimiento y mediante el aparato de codificacion de instantanea en movimientos mostrados en cada una de las realizaciones se describira en lo sucesivo en el presente documento. Los datos multiplexados son un flujo digital en el formato de Flujo de Transporte de MPEG-2.
La Figura 23 ilustra una estructura de los datos multiplexados. Como se ilustra en la Figura 23, los datos multiplexados pueden obtenerse multiplexando al menos uno de un flujo de video, un flujo de audio, un flujo de graficos de presentation (PG) y un flujo de graficos interactivos. El flujo de video representa el video primario y video secundario de una pelicula, el flujo de audio (IG) representa una parte de audio primaria y una parte de audio secundaria a mezclarse con la parte de audio primaria, y el flujo de graficos de presentacion representa subtitulos de la pelicula. En este punto, el video primario es video normal a presentarse en una pantalla, y el video secundario es video a presentarse en una ventana mas pequena en el video primario. Ademas, el flujo de graficos interactivos representa una pantalla interactiva a generarse disponiendo los componentes de la GUI en una pantalla. El flujo de video se codifica en el metodo de codificacion de instantanea en movimiento o mediante el aparato de codificacion de instantanea en movimiento mostrados en cada una de las realizaciones, o en un metodo de codificacion de instantanea en movimiento o mediante un aparato de codificacion de instantanea en movimiento en conformidad con una norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1. El flujo de audio se codifica de acuerdo con una norma, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD y pCm lineal.
Cada flujo incluido en los datos multiplexados se identifica mediante el PID. Por ejemplo, se asigna 0x1011 al flujo de video a usarse para el video de una pelicula, se asignan 0x1100 a 0x111F a los flujos de audio, se asignan 0x1200 a 0x121F a los flujos de graficos de presentacion, se asignan 0x1400 a 0x141F a los flujos de graficos interactivos, se asignan 0x1B00 a 0x1B1F a los flujos de video a usarse para el video secundario de la pelicula, y se asignan 0x1A00 a 0x1A1F a los flujos de audio a usarse para el audio secundario a mezclarse con el audio primario.
La Figura 24 ilustra esquematicamente como se multiplexan los datos. En primer lugar, un flujo de video ex235 compuesto de fotogramas de video y un flujo de audio ex238 compuesto de fotogramas de audio se transforman en un flujo de paquetes de PES ex236 y un flujo de paquetes de PES ex239, y ademas paquetes de TS ex237 y paquetes de TS ex240, respectivamente. De manera similar, los datos de un flujo de graficos de presentacion ex241 y los datos de un flujo de graficos interactivos ex244 se transforman en un flujo de paquetes de PES ex242 y un flujo de paquetes de PES ex245, y ademas en paquetes de TS ex243 y paquetes de TS ex246, respectivamente. Estos paquetes de TS se multiplexan en un flujo para obtener datos multiplexados ex247.
La Figura 25 ilustra como se almacena un flujo de video en un flujo de paquetes de PES en mas detalle. La primera barra en la Figura 25 muestra un flujo de fotogramas de video en un flujo de video. La segunda barra muestra el flujo de paquetes de PES. Como se indica mediante las flechas indicadas como yy1, yy2, yy3 e yy4 en la Figura 25, el flujo de video se divide en instantaneas como instantaneas I, instantaneas B e instantaneas P cada una de las cuales es una unidad de presentacion de video, y las instantaneas se almacenan en una cabida util de cada uno de los paquetes de PES. Cada uno de los paquetes de PES tiene un encabezamiento de PES, y el encabezamiento de PES almacena una Indication de Tiempo de Presentacion (PTS) que indica un tiempo de visualization de la instantanea, y una Indicacion de Tiempo de Decodificacion (DTS) que indica un tiempo de decodificacion de la instantanea.
La Figura 26 ilustra un formato de paquetes de TS a escribirse finalmente en los datos multiplexados. Cada uno de los paquetes de TS es un paquete de longitud fija de 188 bytes que incluye un encabezamiento de TS de 4 bytes que tiene informacion, tal como un PID para identificar un flujo y una cabida util de TS de 184 bytes para almacenar datos. Los paquetes de PES se dividen y almacenan en las cabidas utiles de TS, respectivamente. Cuando se usa un BD ROM, cada uno de los paquetes de TS se le proporciona un Encabezamiento_Extra_TP de 4 bytes, dando como resultado por lo tanto paquetes de fuente de 192 bytes. Los paquetes de fuente se escriben en los datos multiplexados. El Encabezamiento TP_Extra almacena informacion tal como una Indicacion_Tiempo_Llegada (ATS). La ATS muestra un tiempo de inicio de transferencia en el cual cada uno de los paquetes de TS se ha de transferir a un filtro de PID. Los paquetes de fuente estan dispuestos en los datos multiplexados como se muestra en la parte
5
10
15
20
25
30
35
40
45
50
55
60
65
inferior de la Figura 26. Los numeros que aumentan desde la cabecera de los datos multiplexados se denominan numeros de paquete de fuente (SPN).
Cada uno de los paquetes de TS incluido en los datos multiplexados incluye no unicamente flujos de audio, video, subtitulos y otros, sino tambien una Tabla de Asociacion de Programa (PAT), una Tabla de Mapeo de Programa (PMT), y una Referencia de Reloj de Programa (PCR). La PAT muestra que indica un PID en una PMT usada en los datos multiplexados, y un PID de la propia PAT se registra como cero. La PMT almacena los PID de los flujos de video, audio, subtitulos y otros incluidos en los datos multiplexados, e informacion de atributo de los flujos que corresponden a los PID. La PMT tiene tambien diversos descriptores relacionados con los datos multiplexados. Los descriptores tienen informacion tal como informacion de control de copia que muestra si se permite o no el copiado de los datos multiplexados. La PCR almacena informacion de tiempo de STC que corresponde a una ATS que muestra cuando se transfiere el paquete de PCR a un decodificador, para conseguir sincronizacion entre un Reloj de Tiempo de Llegada (ATC) que es un eje de tiempo de ATS, y un Reloj de Tiempo de Sistema (STC) que es un eje de tiempo de PTS y DTS.
La Figura 27 ilustra la estructura de datos de la PMT en detalle. Un encabezamiento de PMT esta dispuesto en la parte superior de la PMT. El encabezamiento de PMT describe la longitud de datos incluidos en la PMT y otros. Una pluralidad de descriptores relacionados con los datos multiplexados esta dispuesta despues del encabezamiento de la PMT. La informacion tal como la informacion de control de copia se describe en los descriptores. Despues de los descriptores, esta dispuesta una pluralidad de piezas de informacion de flujo relacionadas con los flujos incluidos en los datos multiplexados. Cada pieza de informacion de flujo incluye descriptores de flujo describiendo cada uno informacion, tal como un tipo de flujo para identificar un codec de compresion de un flujo, un PID de flujo e informacion de atributo de flujo (tal como una velocidad de fotograma o una relacion de aspecto). Los descriptores de flujo son iguales en numero al numero de flujos en los datos multiplexados.
Cuando se graban los datos multiplexados en un medio de grabacion y otros, se graban junto con ficheros de informacion de datos multiplexados.
Cada una de los ficheros de informacion de datos multiplexados es informacion de gestion de los datos multiplexados como se muestra en la Figura 28. Los ficheros de informacion de datos multiplexados estan en una correspondencia uno a uno con los datos multiplexados, y cada uno de los ficheros incluye informacion de datos multiplexados, informacion de atributo de flujo y un mapa de entrada.
Como se ilustra en la Figura 28, la informacion de datos multiplexados incluye una velocidad de sistema, un tiempo de inicio de reproduccion y un tiempo de fin de reproduccion. La velocidad de sistema indica la maxima velocidad de transferencia en la que un decodificador objetivo de sistema que se va a describir mas adelante transfiere los datos multiplexados a un filtro de PID. Los intervalos de las ATS incluidas en los datos multiplexados se establecen para que no sean tan altos como una velocidad de sistema. El tiempo de inicio de reproduccion indica una PTS en un fotograma de video en la cabecera de los datos multiplexados. Un intervalo de un fotograma se anade a una PTS en un fotograma de video al final de los datos multiplexados, y la PTS se establece en el tiempo de fin de reproduccion.
Como se muestra en la Figura 29, una pieza de informacion de atributo se registra en la informacion de atributo de flujo, para cada PID de cada flujo incluido en los datos multiplexados. Cada pieza de informacion de atributo tiene informacion diferente dependiendo de si el flujo correspondiente es un flujo de video, un flujo de audio, un flujo de graficos de presentacion, o un flujo de graficos interactivos. Cada pieza de informacion de atributo de flujo de video lleva informacion que incluye que tipo de codec de compresion se usa para comprimir el flujo de video, y la resolucion, relacion de aspecto y velocidad de fotograma de las piezas de los datos de instantanea que se incluyen en el flujo de video. Cada pieza de informacion de atributo de flujo de audio lleva informacion que incluye que tipo de codec de compresion se usa para comprimir el flujo de audio, cuantos canales se incluyen en el flujo de audio, que idioma soporta el flujo de audio, y como de alta es la frecuencia de muestreo. La informacion de atributo de flujo de video y la informacion de atributo de flujo de audio se usan para inicializacion de un decodificador antes de que el reproductor reproduzca la informacion.
En la presente realization, los datos multiplexados a usarse son de un tipo de flujo incluido en la PMT. Ademas, cuando los datos multiplexados se graban en un medio de grabacion, se usa la informacion de atributo de flujo de video incluida en la informacion de datos multiplexados. Mas especificamente, el metodo de codification de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento descrito en cada una de las realizaciones incluye una etapa o una unidad para asignar informacion unica que indica datos de video generados mediante el metodo de codificacion de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento en cada una de las realizaciones, al tipo de flujo incluido en la PMT o la informacion de atributo de flujo de video. Con la configuration, los datos de video generados mediante el metodo de codificacion de instantanea en movimiento o el aparato de codificacion de instantanea en movimientos descritos en cada una de las realizaciones pueden distinguirse de los datos de video que se ajustan a otra norma.
Ademas, la Figura 30 ilustra etapas del metodo de decodificacion de instantanea en movimiento de acuerdo con la presente realizacion. En la etapa exS100, el tipo de flujo incluido en la PMT o la informacion de atributo de flujo de
5
10
15
20
25
30
35
40
45
50
55
60
65
video incluida en la information de datos multiplexados se obtiene desde los datos multiplexados. A continuation, en la etapa exS101, se determina si el tipo de flujo o la informacion de atributo de flujo de video indica o no que los multiplexados se generan mediante el metodo de codification de instantanea en movimiento o el aparato de codification de instantanea en movimiento en cada una de las realizaciones. Cuando se determina que el tipo de flujo o la informacion de atributo de flujo de video indica que los datos multiplexados se generan mediante el metodo de codificacion de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento en cada una de las realizaciones, en la etapa exS102, se realiza la decodificacion mediante el metodo de decodificacion de instantanea en movimiento en cada una de las realizaciones. Ademas, cuando el tipo de flujo o la informacion de atributo de flujo de video indica conformidad con las normas convencionales, tales como MPEG-2, MPEG-4 AVC y VC-1, en la etapa exS103, se realiza la decodificacion mediante un metodo de decodificacion de instantanea en movimiento en conformidad con las normas convencionales.
Como tal, asignar un nuevo unico valor al tipo de flujo o a la informacion de atributo de flujo de video posibilita la determination de si el metodo de decodificacion de instantanea en movimiento o el aparato de decodificacion de instantanea en movimiento que se describen en cada una de las realizaciones pueden realizar o no decodificacion. Incluso cuando se introducen los datos multiplexados que se ajustan a una norma diferente, puede seleccionarse un metodo o aparato de decodificacion apropiados. Por lo tanto, se hace posible decodificar informacion sin ningun error. Ademas, el metodo o aparato de codificacion de instantanea en movimiento, o el metodo o aparato de decodificacion de instantanea en movimiento en la presente realization puede usarse en los dispositivos y sistemas anteriormente descritos.
(Realizacion C)
Cada uno del metodo de codificacion de instantanea en movimiento, el aparato de codificacion de instantanea en movimiento, el metodo de decodificacion de instantanea en movimiento y el aparato de decodificacion de instantanea en movimiento en cada una de las realizaciones se consigue normalmente en forma de un circuito integrado o un circuito Integrado a Gran Escala (LSI). Como un ejemplo del LSI, la Figura 31 ilustra una configuration del LSI ex500 que se fabrica en un chip. El LSI ex500 incluye los elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 y ex509 que se van a describir a continuacion, y los elementos estan conectados entre si a traves de un bus ex510. La unidad de circuito de fuente de alimentation ex505 se activa suministrando a cada uno de los elementos con alimentacion cuando se enciende la unidad de circuito de fuente de alimentacion ex505.
Por ejemplo, cuando se realiza codificacion, el LSI ex500 recibe una senal de AV desde un microfono ex117, una camara ex113, y otros a traves de una ES de AV ex509 bajo el control de una unidad de control ex501 que incluye una CPU ex502, un controlador de memoria ex503, un controlador de flujo ex504, y una unidad de control de frecuencia de accionamiento ex512. La senal de AV recibida se almacena temporalmente en una memoria externa ex511, tal como una SDRAM. Bajo el control de la unidad de control ex501, los datos almacenados se segmentan en porciones de datos de acuerdo con la cantidad de procesamiento y velocidad a transmitirse a una unidad de procesamiento de senal ex507. A continuacion, la unidad de procesamiento de senal ex507 codifica una senal de audio y/o una senal de video. En este punto, la codificacion de la senal de video es la codificacion descrita en cada una de las realizaciones. Ademas, la unidad de procesamiento de senal ex507 en ocasiones multiplexa los datos de audio codificados y los datos de video codificados, y una ES de flujo ex506 proporciona los datos multiplexados al exterior. Los datos multiplexados proporcionados se transmiten a la estacion base ex107, o se escriben en el medio de grabacion ex215. Cuando se multiplexan conjuntos de datos, los datos deberian almacenarse temporalmente en la memoria intermedia ex508 de modo que los conjuntos de datos se sincronicen entre si.
Aunque la memoria ex511 es un elemento exterior del LSI ex500, puede incluirse en el LSI ex500. La memoria intermedia ex508 no esta limitada a una memoria intermedia, sino que puede estar compuesta de memorias intermedias. Ademas, el LSI ex500 puede fabricarse en un chip o en una pluralidad de chips.
Adicionalmente, aunque la unidad de control ex501 incluye la CPU ex502, el controlador de memoria ex503, el controlador de flujo ex504, la unidad de control de frecuencia de accionamiento ex512, la configuracion de la unidad de control ex501 no esta limitada como tal. Por ejemplo, la unidad de procesamiento de senal ex507 puede incluir ademas una CPU. La inclusion de otra CPU en la unidad de procesamiento de senal ex507 puede mejorar la velocidad de procesamiento. Ademas, como otro ejemplo, la CPU ex502 puede servir como o ser una parte de la unidad de procesamiento de senal ex507, y, por ejemplo, puede incluir una unidad de procesamiento de senal de audio. En un caso de este tipo, la unidad de control ex501 incluye la unidad de procesamiento de senal ex507 o la CPU ex502 que incluye una parte de la unidad de procesamiento de senal ex507.
El nombre usado en este documento es LSI, pero puede denominarse tambien IC, sistema LSI, super LSI o ultra LSI dependiendo del grado de integration.
Ademas, las maneras para conseguir la integracion no estan limitadas al LSI, y un circuito especial o un procesador de fin general y asi sucesivamente pueden conseguir tambien la integracion. Pueden usarse Campos de Matrices de Puertas Programables (FPGA) que pueden programarse y despues de fabricar los LSI o un procesador
5
10
15
20
25
30
35
40
45
50
55
60
65
reconfigurable que permite la re-configuracion de la conexion o la configuration de un LSI para el mismo fin.
En el futuro, con el avance en la tecnologia de semiconductores, una tecnologia completamente nueva puede reemplazar LSI. Los bloques funcionales pueden integrarse usando una tecnolog^a de este tipo. La posibilidad es que la presente invention se aplique a biotecnologia.
(Realization D)
Cuando se decodifican los datos de video generados en el metodo de codification de instantanea en movimiento o mediante el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones, en comparacion con cuando se decodifican los datos de video que se ajustan una norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, la cantidad de procesamiento probablemente aumente. Por lo tanto, el LSI ex500 necesita establecerse a una frecuencia de accionamiento superior que la de la CPU ex502 a usarse cuando se decodifican datos de video en conformidad con la norma convencional. Sin embargo, cuando la frecuencia de accionamiento se establece mas alta, existe un problema de que el consumo de alimentation aumente.
Para resolver el problema, el aparato de decodificacion de instantanea en movimiento, tal como la television ex300 y el LSI ex500 estan configurados para determinar a que norma se ajustan los datos de video, y conmutar entre las frecuencias de accionamiento de acuerdo con la norma determinada. La Figura 32 ilustra una configuracion ex800 en la presente realizacion. Una unidad de conmutacion de frecuencia de accionamiento ex803 establece una frecuencia de accionamiento a una frecuencia de accionamiento superior cuando se generan datos de video mediante el metodo de codificacion de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones. A continuation, la unidad de conmutacion de frecuencia de accionamiento ex803 ordena a una unidad de procesamiento de decodificacion ex801 que ejecute el metodo de decodificacion de instantanea en movimiento descrito en cada una de las realizaciones para decodificar los datos de video. Cuando los datos de video se ajustan a la norma convencional, la unidad de conmutacion de frecuencia de accionamiento ex803 establece una frecuencia de accionamiento a una frecuencia de accionamiento inferior que la de los datos de video generados mediante el metodo de codificacion de instantanea en movimiento o el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones. A continuacion, la unidad de conmutacion de frecuencia de accionamiento ex803 ordena a la unidad de procesamiento de decodificacion ex802 que se ajusta a la norma convencional decodificar los datos de video.
Mas especificamente, la unidad de conmutacion de frecuencia de accionamiento ex803 incluye la CPU ex502 y la unidad de control de frecuencia de accionamiento ex512 en la Figura 31. En este punto, cada una de la unidad de procesamiento de decodificacion ex801 que ejecuta el metodo de decodificacion de instantanea en movimiento descrito en cada una de las realizaciones y la unidad de procesamiento de decodificacion ex802 que se ajusta a la norma convencional corresponde a la unidad de procesamiento de senal ex507 en la Figura 31. La CPU ex502 determina a que norma se ajustan los datos de video. A continuacion, la unidad de control de frecuencia de accionamiento ex512 determina una frecuencia de accionamiento basandose en una senal desde la CPU ex502. Ademas, la unidad de procesamiento de senal ex507 decodifica los datos de video basandose en la senal desde la CPU ex502. Por ejemplo, la information de identification descrita en la Realizacion B probablemente se usa para identificar los datos de video. La informacion de identificacion no esta limitada a la descrita en la Realizacion B sino que puede ser cualquier informacion siempre que la informacion indique a que norma se ajustan los datos de video. Por ejemplo, cuando puede determinarse a que norma se ajustan los datos de video basandose en una senal externa para determinar que los datos de video se usan para una television o un disco, etc., la determination puede realizarse basandose en una senal externa de este tipo. Ademas, la CPU ex502 selecciona una frecuencia de accionamiento basandose en, por ejemplo, una tabla de correspondencia en la que las normas de los datos de video estan asociadas con las frecuencias de accionamiento como se muestra en la Figura 34. La frecuencia de accionamiento puede seleccionarse almacenando la tabla de correspondencia en la memoria intermedia ex508 y en una memoria interna de un LSI, y con referencia a la tabla de correspondencia mediante la CPU ex502.
La Figura 33 ilustra etapas para ejecutar un metodo en la presente realizacion. En primer lugar, en la etapa exS200, la unidad de procesamiento de senal ex507 obtiene informacion de identificacion desde los datos multiplexados. A continuacion, en la etapa exS201, la CPU ex502 determina si los datos de video se generan o no mediante el metodo de codificacion y el aparato de codificacion descritos en cada una de las realizaciones, basandose en la informacion de identificacion. Cuando los datos de video se generan mediante el metodo de codificacion de instantanea en movimiento y el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones, en la etapa exS202, la CPU ex502 transmite una senal para establecer la frecuencia de accionamiento a una frecuencia de accionamiento superior a la unidad de control de frecuencia de accionamiento ex512. A continuacion, la unidad de control de frecuencia de accionamiento ex512 establece la frecuencia de accionamiento a la frecuencia de accionamiento superior. Por otra parte, cuando la informacion de identificacion indica que los datos de video se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, en la etapa exS203, la CPU ex502 transmite una senal para establecer la frecuencia de accionamiento a una frecuencia de accionamiento inferior a la unidad de control de frecuencia de accionamiento ex512. A continuacion, la unidad de control de frecuencia de accionamiento ex512 establece la frecuencia de accionamiento a la frecuencia de accionamiento inferior que la de en el caso donde los datos de video se generan mediante el metodo de codificacion
5
10
15
20
25
30
35
40
45
50
55
60
65
de instantanea en movimiento y el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones.
Ademas, junto con la conmutacion de las frecuencias de accionamiento, el efecto de conservation de alimentation puede mejorarse cambiando la tension a aplicar al LSI ex500 o a un aparato que incluye el LSI ex500. Por ejemplo, cuando la frecuencia de accionamiento se establece mas baja, la tension a aplicar al LSI ex500 o al aparato que incluye el LSI ex500 probablemente se establece a una tension inferior que la de en el caso donde la frecuencia de accionamiento se establece mas alta.
Ademas, cuando la cantidad de procesamiento para decodificar es mayor, la frecuencia de accionamiento puede establecerse mas alta, y cuando la cantidad de procesamiento para decodificacion es menor, la frecuencia de accionamiento puede establecerse mas baja que el metodo para establecer la frecuencia de accionamiento. Por lo tanto, el metodo de establecimiento no esta limitado a los anteriormente descritos. Por ejemplo, cuando la cantidad de procesamiento para decodificar datos de video en conformidad con MPEG-4 AVC es mayor que la cantidad de procesamiento para decodificar datos de video generados mediante el metodo de codificacion de instantanea en movimiento y el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones, la frecuencia de accionamiento se establece probablemente en orden inverso al establecimiento anteriormente descrito.
Ademas, el metodo para establecer la frecuencia de accionamiento no esta limitado al metodo para establecer la frecuencia de accionamiento mas baja. Por ejemplo, cuando la information de identification indica que los datos de video se generan mediante el metodo de codificacion de instantanea en movimiento y el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones, la tension a aplicar al LSI ex500 o al aparato que incluye el LSI ex500 se establece probablemente mas alta. Cuando la informacion de identificacion indica que los datos de video se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, la tension a aplicar al LSI ex500 o al aparato que incluye el LSI ex500 se establece probablemente mas baja. Como otro ejemplo, cuando la informacion de identificacion indica que los datos de video se generan mediante el metodo de codificacion de instantanea en movimiento y el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones, el accionamiento de la CPU ex502 probablemente no tiene que suspenderse. Cuando la informacion de identificacion indica que los datos de video se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, el accionamiento de la CPU ex502 probablemente se suspende en un tiempo dado puesto que la CPU ex502 tiene capacidad de procesamiento extra. Incluso cuando la informacion de identificacion indica que los datos de video se generan mediante el metodo de codificacion de instantanea en movimiento y el aparato de codificacion de instantanea en movimiento descritos en cada una de las realizaciones, en el caso donde la CPU ex502 tiene capacidad de procesamiento extra, el accionamiento de la CPU ex502 probablemente se suspende en un tiempo dado. En un caso de este tipo, el tiempo de suspension se establece probablemente mas corto que el de en el caso donde cuando la informacion de identificacion indica que los datos de video se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1.
Por consiguiente, el efecto de conservacion de alimentacion puede mejorarse conmutando entre las frecuencias de accionamiento de acuerdo con la norma a la que se ajustan los datos de video. Ademas, cuando el LSI ex500 o el aparato que incluye el LSI ex500 se accionan usando una bateria, la vida de la bateria puede aumentarse con el efecto de conservacion de alimentacion.
(Realization E)
Hay casos donde una pluralidad de datos de video que se ajustan a diferentes normas, se proporciona a los dispositivos y sistemas, tales como una television y un telefono celular. Para posibilitar la decodificacion de la pluralidad de datos de video que se ajustan a las diferentes normas, la unidad de procesamiento de senal ex507 del LSI ex500 necesita ajustarse a las diferentes normas. Sin embargo, surgen problemas de aumento en la escala del circuito del LSI ex500 y el aumento en el coste con el uso individual de las unidades de procesamiento de senal ex507 que se ajustan a las respectivas normas.
Para resolver el problema, lo que se concibe es una configuration en que la unidad de procesamiento de decodificacion para implementar el metodo de decodificacion de instantanea en movimiento descrito en cada una de las realizaciones y la unidad de procesamiento de decodificacion que se ajusta a la norma convencional, tal como MPEG-2, MPEG-4 AVC y VC-1 esta parcialmente compartida. Ex900 en la Figura 35A muestra un ejemplo de la configuracion. Por ejemplo, el metodo de decodificacion de instantanea en movimiento descrito en cada una de las realizaciones y el metodo de decodificacion de instantanea en movimiento que se ajusta a MPEG-4 AVC tienen, parcialmente en comun, los detalles de procesamiento, tales como codificacion por entropia, cuantificacion inversa, filtrado de desbloqueo y prediction de movimiento compensado. Los detalles del procesamiento a compartir probablemente incluyen el uso de una unidad de procesamiento de decodificacion ex902 que se ajusta a MPEG-4 AVC. En contraste, una unidad de procesamiento de decodificacion especializada ex901 se usa probablemente para otro procesamiento unico para un aspecto de la presente invention. Puesto que el aspecto de la presente invention esta caracterizado por la cuantificacion inversa En particular, por ejemplo, la unidad de procesamiento de decodificacion especializada ex901 se usa para cuantificacion inversa. De otra manera, la unidad de procesamiento
de decodificacion probablemente se comparte para uno de la decodificacion por entrop^a, filtrado de desbloqueo y compensacion de movimiento o todos para el procesamiento. La unidad de procesamiento de decodificacion para implementar el metodo de decodificacion de instantanea en movimiento descrito en cada una de las realizaciones puede compartirse para el procesamiento a compartir, y una unidad de procesamiento de decodificacion 5 especializada puede usarse para procesamiento unico al de MPEG-4 AVC.
Ademas, ex1000 en la Figura 35B muestra otro ejemplo en que el procesamiento esta parcialmente compartido. Este ejemplo usa una configuracion que incluye una unidad de procesamiento de decodificacion especializada ex1001 que soporta el procesamiento unico para un aspecto de la presente invention, una unidad de procesamiento 10 de decodificacion especializada ex1002 que soporta el procesamiento unico para otra norma convencional, y una unidad de procesamiento de decodificacion ex1003 que soporta procesamiento para compartirse entre el metodo de decodificacion de instantanea en movimiento de acuerdo con el aspecto de la presente invencion y el metodo de decodificacion de instantanea en movimiento convencional. En este punto, las unidades de procesamiento de decodificacion especializadas ex1001 y ex1002 no estan necesariamente especializadas para el procesamiento de 15 acuerdo con el aspecto de la presente invencion y el procesamiento de la norma convencional, respectivamente, y pueden ser las que son capaces de implementar el procesamiento general. Ademas, la configuracion de la presente realization puede implementarse mediante el LSI ex500.
Como tal, reducir la escala del circuito de un LSI y reducir el coste es posible compartiendo la unidad de 20 procesamiento de decodificacion para el procesamiento a compartir entre el metodo de decodificacion de instantanea en movimiento de acuerdo con el aspecto de la presente invencion y el metodo de decodificacion de instantanea en movimiento en conformidad con la norma convencional.
En resumen, la presente invencion se refiere a un esquema ventajoso para derivation de intensidad de limite y 25 procesamiento de decision relacionados con filtrado de desbloqueo. Mas particularmente, la presente invencion mejora esquemas para decidir desbloquear y seleccionar filtros de desbloqueo apropiados conocidos en la tecnica para reducir el numero de ciclos de calculo y espacio de memoria requerido.

Claims (13)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    60
    65
    REIVINDICACIONES
    1. Un metodo para filtrado de desbloqueo de bloques de pixeles de imagen, que comprende las etapas de determinar (S700; S1600) un primer parametro (BS) que indica una intensidad de un limite de bloque entre dos bloques de imagen adyacentes,
    calcular (S720) un segundo parametro (tc), basandose en dicho primer parametro (BS) y un parametro de cuantificacion (QP), en donde dicho segundo parametro (tc) se calcula como una funcion de la suma de dicho primer parametro (BS) y dicho parametro de cuantificacion (QP), y
    seleccionar (S730, S732, S735; S1630) un primer o un segundo filtros de desbloqueo para aplicarse a dicho limite de bloque usando un umbral que se define basandose en dicho segundo parametro (tc), en donde dicho primer y dicho segundo filtros de desbloqueo tienen diferentes intensidades de filtro, caracterizado por que
    dicha etapa de determinacion (S700; S1600) comprende la etapa (S810) de determinar en primer lugar si al menos uno de dichos bloques de pixeles adyacentes estan intra-codificados, en donde dicho primer parametro (BS) se establece a un primer valor fijo si dicha primera determinacion (S810) es afirmativa.
  2. 2. El metodo de acuerdo con la reivindicacion 1, que comprende ademas la etapa (S710) de decidir basandose en dicho primer parametro (BS), si aplicar desbloqueo a dicho limite o no, antes de dicha etapa de seleccion (S730).
  3. 3. El metodo de acuerdo con las reivindicaciones 1 o 2, en el que dicho primer valor fijo es 2 (S1415).
  4. 4. El metodo de acuerdo con cualquiera de las reivindicaciones 1 a 3, en el que dicha etapa de determinacion (S700; S1600) que comprende la etapa (S820) de determinar en segundo lugar si al menos uno de dichos bloques de pixeles adyacentes incluye al menos un nivel distinto de cero de coeficientes de transformacion, si dicha determinacion (S810) es negativa, y
    el valor determinado del primer parametro (BS) depende de si la segunda determinacion (S820) es afirmativa o negativa.
  5. 5. El metodo de acuerdo con cualquiera de las reivindicaciones 1 a 4, que comprende ademas la etapa (S830) de determinar en tercer lugar, si un indice de referencia que indica una instantanea, a partir de la cual se hace referencia a un bloque de imagen, es diferente para ambos de dichos bloques de imagen adyacentes.
  6. 6. El metodo de acuerdo con cualquiera de las reivindicaciones 1 a 5, que comprende ademas la etapa (S840) de determinar en cuarto lugar si la diferencia absoluta en al menos uno de los componentes vertical y horizontal de los vectores de movimiento que corresponden a dichos bloques de imagen adyacentes es mayor que un valor predeterminado.
  7. 7. El metodo de acuerdo con cualquiera de las reivindicaciones 1 a 6, en el que dicho umbral se determina basandose en dicho segundo parametro (tc) usando una tabla de correspondencia.
  8. 8. El metodo de acuerdo con cualquiera de las reivindicaciones 1 a 7, en el que dicha etapa de seleccion (S730, S732, S735; S1630) incluye la etapa de comparar diferencias de valor de pixel de pixeles adyacentes a ambos lados de dicho limite de bloque con dicho umbral.
  9. 9. Un metodo para codificar un bloque actual de una imagen que incluye una pluralidad de pixeles, comprendiendo el metodo las etapas de:
    comprimir y reconstruir el bloque actual, y
    aplicar todas las etapas de acuerdo con cualquiera de las reivindicaciones 1 a 8 al bloque reconstruido.
  10. 10. Un metodo para decodificar un bloque actual codificado de una imagen que incluye una pluralidad de pixeles, comprendiendo el metodo las etapas de:
    reconstruir el bloque actual codificado, y
    aplicar todas las etapas de acuerdo con cualquiera de las reivindicaciones 1 a 8 al bloque reconstruido.
  11. 11. Un producto de programa informatico que comprende un medio legible por ordenador que tiene un codigo de programa legible por ordenador incorporado en el mismo, estando adaptado el codigo de programa para llevar a cabo el metodo de acuerdo con cualquiera de las reivindicaciones 1 a 10.
  12. 12. Un aparato para filtrado de desbloqueo de bloques de pixeles de imagen, que comprende
    una unidad de determinacion para determinar un primer parametro (BS) que indica una intensidad de un limite de bloque entre dos bloques de imagen adyacentes,
    una unidad de calculo para calcular un segundo parametro (tc), basandose en dicho primer parametro (BS) y un parametro de cuantificacion (QP), en donde la unidad de calculo calcula dicho segundo parametro (tc) como una funcion de la suma de dicho primer parametro (BS) y dicho parametro de cuantificacion (QP), y
    una unidad de seleccion para seleccionar un primer o un segundo filtros de desbloqueo para aplicarse a dicho limite de bloque usando un umbral que se define basandose en dicho segundo parametro (tc), en donde dicho primer y segundo filtros de desbloqueo tienen diferentes intensidades de filtro, caracterizado por que
    5 dicha unidad de determinacion comprende una primera seccion de determinacion para determinar si al menos uno de dichos bloques de pixeles adyacentes esta intra-codificado, y para establecer dicho primer parametro (BS) a un primer valor fijo si dicha primera seccion de determinacion determina afirmativamente.
  13. 13. Un circuito integrado para incorporar el aparato de la reivindicacion 12, que comprende ademas una memoria 10 para almacenar pixeles a filtrar.
ES12783574.2T 2011-11-04 2012-10-31 Filtrado de desbloqueo con derivación de intensidad de límite de bloque de imagen modificada Active ES2563292T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161555805P 2011-11-04 2011-11-04
US201161555805P 2011-11-04
PCT/EP2012/071584 WO2013064547A1 (en) 2011-11-04 2012-10-31 Deblocking filtering with modified image block boundary strength derivation

Publications (1)

Publication Number Publication Date
ES2563292T3 true ES2563292T3 (es) 2016-03-14

Family

ID=47146377

Family Applications (1)

Application Number Title Priority Date Filing Date
ES12783574.2T Active ES2563292T3 (es) 2011-11-04 2012-10-31 Filtrado de desbloqueo con derivación de intensidad de límite de bloque de imagen modificada

Country Status (9)

Country Link
US (4) US9591306B2 (es)
EP (1) EP2774359B1 (es)
JP (3) JP6083614B2 (es)
KR (1) KR102032000B1 (es)
CN (1) CN104025593B (es)
ES (1) ES2563292T3 (es)
IN (1) IN2014CN03020A (es)
PL (1) PL2774359T3 (es)
WO (1) WO2013064547A1 (es)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9918740B2 (en) 2006-02-27 2018-03-20 Biomet Manufacturing, Llc Backup surgical instrument system and method
US9345548B2 (en) 2006-02-27 2016-05-24 Biomet Manufacturing, Llc Patient-specific pre-operative planning
US20150335438A1 (en) 2006-02-27 2015-11-26 Biomet Manufacturing, Llc. Patient-specific augments
US9907659B2 (en) 2007-04-17 2018-03-06 Biomet Manufacturing, Llc Method and apparatus for manufacturing an implant
US8603180B2 (en) 2006-02-27 2013-12-10 Biomet Manufacturing, Llc Patient-specific acetabular alignment guides
US9173661B2 (en) 2006-02-27 2015-11-03 Biomet Manufacturing, Llc Patient specific alignment guide with cutting surface and laser indicator
US8407067B2 (en) 2007-04-17 2013-03-26 Biomet Manufacturing Corp. Method and apparatus for manufacturing an implant
US9339278B2 (en) 2006-02-27 2016-05-17 Biomet Manufacturing, Llc Patient-specific acetabular guides and associated instruments
US9289253B2 (en) 2006-02-27 2016-03-22 Biomet Manufacturing, Llc Patient-specific shoulder guide
US9113971B2 (en) 2006-02-27 2015-08-25 Biomet Manufacturing, Llc Femoral acetabular impingement guide
US9795399B2 (en) 2006-06-09 2017-10-24 Biomet Manufacturing, Llc Patient-specific knee alignment guide and associated method
DE102009028503B4 (de) 2009-08-13 2013-11-14 Biomet Manufacturing Corp. Resektionsschablone zur Resektion von Knochen, Verfahren zur Herstellung einer solchen Resektionsschablone und Operationsset zur Durchführung von Kniegelenk-Operationen
US9271744B2 (en) 2010-09-29 2016-03-01 Biomet Manufacturing, Llc Patient-specific guide for partial acetabular socket replacement
US9968376B2 (en) 2010-11-29 2018-05-15 Biomet Manufacturing, Llc Patient-specific orthopedic instruments
US9675400B2 (en) 2011-04-19 2017-06-13 Biomet Manufacturing, Llc Patient-specific fracture fixation instrumentation and method
US20130001121A1 (en) 2011-07-01 2013-01-03 Biomet Manufacturing Corp. Backup kit for a patient-specific arthroplasty kit assembly
US9386993B2 (en) 2011-09-29 2016-07-12 Biomet Manufacturing, Llc Patient-specific femoroacetabular impingement instruments and methods
KR20130046337A (ko) 2011-10-27 2013-05-07 삼성전자주식회사 멀티뷰 디바이스 및 그 제어방법과, 디스플레이장치 및 그 제어방법과, 디스플레이 시스템
US9301812B2 (en) 2011-10-27 2016-04-05 Biomet Manufacturing, Llc Methods for patient-specific shoulder arthroplasty
WO2013062848A1 (en) 2011-10-27 2013-05-02 Biomet Manufacturing Corporation Patient-specific glenoid guides
US9451973B2 (en) 2011-10-27 2016-09-27 Biomet Manufacturing, Llc Patient specific glenoid guide
US9237950B2 (en) 2012-02-02 2016-01-19 Biomet Manufacturing, Llc Implant with patient-specific porous structure
TR201808710T4 (tr) * 2013-01-07 2018-07-23 Nec Corp Pcm ile kodlanmış bloklar için kodlama ünitesi bölümlü sinyalizasyonu.
US9839438B2 (en) 2013-03-11 2017-12-12 Biomet Manufacturing, Llc Patient-specific glenoid guide with a reusable guide holder
US9826981B2 (en) 2013-03-13 2017-11-28 Biomet Manufacturing, Llc Tangential fit of patient-specific guides
US9498233B2 (en) 2013-03-13 2016-11-22 Biomet Manufacturing, Llc. Universal acetabular guide and associated hardware
US20150112349A1 (en) 2013-10-21 2015-04-23 Biomet Manufacturing, Llc Ligament Guide Registration
AU2014202921B2 (en) * 2014-05-29 2017-02-02 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking a block of video samples
EP3178228B1 (en) * 2014-09-15 2023-10-04 HFI Innovation Inc. Method of deblocking for intra block copy in video coding
US9833245B2 (en) 2014-09-29 2017-12-05 Biomet Sports Medicine, Llc Tibial tubercule osteotomy
KR20180006411A (ko) * 2015-06-07 2018-01-17 엘지전자 주식회사 디블록킹 필터링을 수행하는 방법 및 장치
US10226262B2 (en) 2015-06-25 2019-03-12 Biomet Manufacturing, Llc Patient-specific humeral guide designs
US10568647B2 (en) 2015-06-25 2020-02-25 Biomet Manufacturing, Llc Patient-specific humeral guide designs
CN107590155B (zh) * 2016-07-08 2020-09-08 富士通株式会社 文档图像的字符真值获取装置及方法、电子设备
CN107734347B (zh) * 2016-08-12 2019-07-12 珠海市杰理科技股份有限公司 去块滤波边界强度确定方法和装置
US20180091812A1 (en) * 2016-09-23 2018-03-29 Apple Inc. Video compression system providing selection of deblocking filters parameters based on bit-depth of video data
US10555006B2 (en) * 2016-12-22 2020-02-04 Qualcomm Incorporated Deriving bilateral filter information based on a prediction mode in video coding
US20180184127A1 (en) * 2016-12-22 2018-06-28 Qualcomm Incorporated Determining neighboring samples for bilateral filtering in video coding
CN110100443B (zh) * 2016-12-27 2021-12-28 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法及解码方法
WO2018123423A1 (ja) * 2016-12-28 2018-07-05 ソニー株式会社 画像処理装置及び画像処理方法
CN116170585A (zh) * 2017-01-16 2023-05-26 世宗大学校产学协力团 影像编码/解码方法
US20180242016A1 (en) * 2017-02-21 2018-08-23 Intel Corporation Deblock filtering for 360 video
US10722310B2 (en) 2017-03-13 2020-07-28 Zimmer Biomet CMF and Thoracic, LLC Virtual surgery planning system and method
US10645408B2 (en) 2017-09-17 2020-05-05 Google Llc Dual deblocking filter thresholds
CN114979633B (zh) * 2017-10-09 2023-10-27 佳能株式会社 用于对样本块进行滤波的方法、装置和存储介质
KR20190107944A (ko) * 2018-03-13 2019-09-23 삼성전자주식회사 복원 영상에 대한 필터링을 수행하는 영상 처리 장치 및 이의 필터링 방법
CN110290384A (zh) * 2018-03-19 2019-09-27 华为技术有限公司 图像滤波方法、装置及视频编解码器
US11297351B2 (en) * 2018-03-29 2022-04-05 Arris Enterprises Llc System and method for deblocking HDR content
US10708592B2 (en) * 2018-04-02 2020-07-07 Qualcomm Incorporated Deblocking filter for video coding and processing
CN110933419B (zh) * 2018-09-20 2022-07-01 杭州海康威视数字技术股份有限公司 一种运动矢量确定、边界强度确定方法和设备
US10638146B2 (en) 2018-10-01 2020-04-28 Tencent America LLC Techniques for QP coding for 360 image and video coding
WO2021134654A1 (zh) * 2019-12-31 2021-07-08 深圳市大疆创新科技有限公司 视频编码的方法和装置
US11516514B2 (en) * 2020-03-27 2022-11-29 Tencent America LLC High level control for deblocking operations

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1978747B1 (en) * 2001-11-29 2014-05-21 Panasonic Corporation Coding distortion removal method
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US7430336B2 (en) * 2004-05-06 2008-09-30 Qualcomm Incorporated Method and apparatus for image enhancement for low bit rate video compression
JP4241559B2 (ja) * 2004-09-21 2009-03-18 日本ビクター株式会社 ブロック歪み低減用ループフィルタ
NO322722B1 (no) * 2004-10-13 2006-12-04 Tandberg Telecom As Fremgangsmate for videokoding gjennom reduksjon av blokkartefakter
JP4784188B2 (ja) * 2005-07-25 2011-10-05 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
US8619880B2 (en) * 2007-10-10 2013-12-31 Qualcomm Incorporated Universal blockiness correction
US20090304085A1 (en) * 2008-06-04 2009-12-10 Novafora, Inc. Adaptive Deblocking Complexity Control Apparatus and Method
JP5793511B2 (ja) * 2010-02-05 2015-10-14 テレフオンアクチーボラゲット エル エム エリクソン(パブル) デブロッキングフィルタリング制御
US9185430B2 (en) * 2010-03-15 2015-11-10 Mediatek Singapore Pte. Ltd. Deblocking filtering method and deblocking filter
MA34906B1 (fr) * 2011-01-14 2014-02-01 Ericsson Telefon Ab L M Filtrage de déblocage
DK2664149T3 (en) * 2011-01-14 2017-02-27 ERICSSON TELEFON AB L M (publ) UNBLOCK FILTERING
CN103430537B (zh) * 2011-03-01 2016-10-12 瑞典爱立信有限公司 去块滤波控制

Also Published As

Publication number Publication date
US20180205969A1 (en) 2018-07-19
US20170134759A1 (en) 2017-05-11
CN104025593B (zh) 2017-06-27
US10375417B2 (en) 2019-08-06
WO2013064547A8 (en) 2013-07-11
US10194174B2 (en) 2019-01-29
JP6233790B2 (ja) 2017-11-22
EP2774359B1 (en) 2015-12-30
IN2014CN03020A (es) 2015-07-03
JP6083614B2 (ja) 2017-02-22
US10021428B2 (en) 2018-07-10
US20190116384A1 (en) 2019-04-18
JP2014533027A (ja) 2014-12-08
PL2774359T3 (pl) 2016-06-30
KR20140098740A (ko) 2014-08-08
JP2017085651A (ja) 2017-05-18
US9591306B2 (en) 2017-03-07
US20140056350A1 (en) 2014-02-27
JP2018033160A (ja) 2018-03-01
EP2774359A1 (en) 2014-09-10
JP6422067B2 (ja) 2018-11-14
KR102032000B1 (ko) 2019-10-14
CN104025593A (zh) 2014-09-03
WO2013064547A1 (en) 2013-05-10

Similar Documents

Publication Publication Date Title
ES2563292T3 (es) Filtrado de desbloqueo con derivación de intensidad de límite de bloque de imagen modificada
JP7361285B2 (ja) 符号化方法および符号化装置
JP7246008B2 (ja) 復号装置および符号化装置
JP6799798B2 (ja) 画像復号装置および画像復号方法
JP6064235B2 (ja) 符号化方法、プログラムおよび符号化装置
KR101954461B1 (ko) 필터 방법, 동화상 부호화 장치, 동화상 복호 장치 및 동화상 부호화 복호 장치
ES2754784T3 (es) Procedimiento de decodificación de vídeo, aparato de decodificación de vídeo