MXPA06003925A - Proceso de derivacion de modo directo para el ocultamiento de error. - Google Patents

Proceso de derivacion de modo directo para el ocultamiento de error.

Info

Publication number
MXPA06003925A
MXPA06003925A MXPA06003925A MXPA06003925A MXPA06003925A MX PA06003925 A MXPA06003925 A MX PA06003925A MX PA06003925 A MXPA06003925 A MX PA06003925A MX PA06003925 A MXPA06003925 A MX PA06003925A MX PA06003925 A MXPA06003925 A MX PA06003925A
Authority
MX
Mexico
Prior art keywords
accordance
missing
direct
spatial
macroblock
Prior art date
Application number
MXPA06003925A
Other languages
English (en)
Inventor
Cristina Gomila
Original Assignee
Thomson Licensing
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 Thomson Licensing filed Critical Thomson Licensing
Publication of MXPA06003925A publication Critical patent/MXPA06003925A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • 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/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • 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
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

El ocultamiento temporal de macrobloques faltantes/alterados confia en el proceso de derivacion de modo de direccion tipicamente estandarizado en los decodificadores de video. Luego de detectar un error en la forma de una imagen (Figura 1), se encuentra un macrobloque co-ubicado en una imagen previamente transmitida. El vector de movimiento para ese macrobloque co-ubicado se determina (Figura 2). El macrobloque identificado se pronostica con los datos compensados de movimiento de una segunda imagen previamente transmitida de conformidad con el vector de movimiento determinado para el macrobloque co-ubicado (Figura 3).

Description

PROCESO DE DERIVACIÓN DE MODO DIRECTO PARA EL OCULTAMIENTO DE ERROR CAMPO DE LA INVENCIÓN Esta invención se relaciona con una técnica para el ocultamiento temporal de macrobloques faltantes/alterados en una corriente de video codificada.
ANTECEDENTES DE LA INVENCIÓN En muchos casos, las corrientes de video deben experimentar la compresión (codificación) para facilitar el almacenamiento y transmisión. En la actualidad existe una variedad de esquemas de compresión, incluyendo los esquemas con base en bloque como la norma de codificación ISO MPEG AVC/ITU H.264, con frecuencia llamada simplemente ITU H.264 o JVT. Es muy común que tales corrientes de video codificado presenten pérdidas de datos o se alteren durante la transmisión debido a errores de canal y/o congestión de la red. Luego de la decodificación, la pérdida/alteración de datos se manifiesta como valores de píxel faltantes/alterados, que dan origen a artefactos en la imagen. El ocultamiento espacial busca derivar los valores de píxel faltantes/alterados con el uso de valores de píxel de otras áreas en la misma imagen, lo cual explota la redundancia espacial entre los bloques vecinos en el mismo cuadro. Al contrario del ocultamiento de error espacial, el ocultamiento temporal intenta recuperar la información de movimiento codificada, a saber, los índices de la imagen de referencia y los vectores de movimiento, para calcular los valores de píxel faltantes de por lo menos un macrobloque transmitido previamente, lo cual explota la redundancia temporal entre bloques en diferentes cuadros de la misma secuencia. Cuando se efectúa el ocultamiento temporal de error, cada macrobloque faltante/alterado se calcula comúnmente al compensar de movimiento uno o más de los macrobloques previamente transmitidos. Típicamente, las estrategias de ocultamiento temporal actuales aceptan tales soluciones sub-óptimas que reducen al mínimo el esfuerzo de computación para reducir la complejidad y aumentar la velocidad. Tales soluciones sub-óptimas típicamente caen en dos categorías, dependiendo de si hacen uso de los vecinos espaciales (dentro del mismo cuadro) o vecinos temporales (dentro de otros cuadros) para inferir el valor del vector de movimiento faltante. El ocultamiento de error hace uso de los vecinos espaciales que intentan la recuperación del vector de movimiento de un bloque faltante con base en la información de movimiento dentro de la vecindad. Tales técnicas suponen una alta correlación entre el desplazamiento de ios bloques espacialmente vecinos. Cuando se consideran los vectores de movimiento, el mejor candidato se encuentra al computar el por lo menos MSE (Error de media cuadrada) entre la información externa de borde del bloque faltante/aiterado en el cuadro actual y la información interna de borde del bloque oculto a partir del cuadro de referencia. Tal proceso tiende a maximizar la suavidad de la imagen oculta a costo de una cantidad en aumento de esfuerzo computacional . Los algoritmos más rápidos computan la media o el promedio de los vectores de movimiento adyacentes, y proponen este valor como el vector de movimiento del bloque faltante. La otra solución sub-óptima para el ocultamiento de error hace uso de los macrobloques vecinos temporales. Esta medida intenta la recuperación del vector de movimiento de un bloque faltante al explotar la correlación temporal entre los bloques co-ubicados en los cuadros vecinos. Típicamente, estas técnicas hacen uso de que los macrobloques vecinos temporales suponen que el bloque perdido no ha cambiado su ubicación entre dos cuadros consecutivos, que es equivalente a decir que el desplazamiento del bloque se puede modelar con un vector de movimiento cero. En esta base, el ocultamiento temporal de un bloque faltante en el cuadro actual ocurre simplemente al copiar el bloque co-ubicado del cuadro previamente transmitido. Tal procedimiento alcanza velocidad y sencillez pero no logra un buen desempeño en las regiones de movimiento. Existen estrategias similares en las normas de codificación de video más recientes, para derivar los vectores de movimiento de un bloque para el cual no se ha transmitido la información de movimiento, pero ofrece un desempeño limitado. Por lo tanto, existe la necesidad de una técnica para el ocultamiento temporal de macrobloques faltantes/alterados que supere las desventajas ya mencionadas.
BREVE DESCRIPCIÓN DE LA INVENCIÓN En resumen, de conformidad con una primera modalidad preferida, se proporciona una técnica para el ocultamiento temporal de un macrobloque faltante/alterado en un arreglo de macrobloques codificados en el modo directo. El modo directo constituye un modo de inter-codificación particular en donde no se transmiten los parámetros de movimiento en la corriente de video para un macrobloque en la rebanada o imagen B, al contrario de los macrobloques saltados de cuadro P en donde no se transmite ningún dato. Inicialmente, se identifica por lo menos un macrobloque en el arreglo que tiene valores faltantes/alterados. Después, un macrobloque co-ubicado se localiza en una primera imagen transmitida previamente compuesta de un arreglo de macrobloques y se determina el vector de movimiento para ese macrobloque coubicado. El vector de movimiento (referido como "vector de movimiento co-ubicado"), es escalado de conformidad con otra distancia de cuenta de orden de imagen (POC) que por lo general, corresponde a la distancia entre el macrobloque identificado y el macrobloque co-ubicado. El macrobloque identificado se pronostica al compensar de movimiento los datos de la primera imagen y de la segunda imagen previamente transmitidas de conformidad con el vector de movimiento co-ubicado escalado. Esta técnica tiene aplicación en un video comprimido de conformidad con una técnica de compresión con base de bloques que utiliza las imágenes de los cuadros B como MPEG 4. De conformidad con una segunda modalidad preferida, se proporciona una técnica para el ocultamiento temporal de un macrobloque f altante/alterado en un arreglo de macrobloques codificados en el modo directo de conformidad con una norma de codificación como la norma de codificación ITU H.264. lnicialmente, se identifica por lo menos un macrobloque en el arreglo que tiene valores f altantes/alterados. Después, un macrobloque co-ubicado se localiza en una primera imagen transmitida previamente compuesta de un arreglo de macrobloques y el vector de movimiento co-ubicado y se determina el índice de referencia para ese macrobloque coubicado. El vector de movimiento co-ubicado es escalado de conformidad con la distancia POC. Se selecciona una segunda imagen transmitida previamente de conformidad con el índice de referencia y los datos de la primera y segunda imágenes transmitidas previamente se compensan de movimiento con el uso del vector de movimiento co-ubicado escalado para producir una predicción para el macrobloque identificado.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 ilustra un arreglo parcial de los macrobloques utilizados para la predicción de modo directo-espacial. La Figura 2 ilustra en forma gráfica una técnica para la predicción de modo directo temporal para una división B de la primera y la segunda imágenes de referencia.
La Figura 3 ilustra la forma en que se escala el vector de movimiento co-ubicado. La Figura 4A ilustra un diagrama de flujo de los pasos de un método para alcanzar el ocultamiento de error de conformidad con los presentes principios con el uso de cierto criterio aplicado a priori; y La Figura 4B ilustra un diagrama de flujo de los pasos de un método para alcanzar el ocultamiento de error de conformidad con los presentes principios con el uso de un criterio aplicado a posteriori.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN 1. Antecedentes La técnica para el ocultamiento temporal de un macrobloque faltante/alterado de conformidad con los presentes principios se comprenderá mejor en el contexto de una norma de codificación ITU H.264 aunque, como se describe después, la técnica puede aplicarse en otras normas de codificación, como la norma de codificación MPEG 4. Por tanto, una breve explicación del proceso de derivación disponible para la codificación de modo directo de conformidad con la norma de codificación ITU H-264 será muy útil. La norma de codificación ITU H.264 permite el uso de múltiples imágenes de referencia para la ¡nter-predicción, con un índice de referencia codificado para indicar las imágenes que se utilizan entre la memoria intermedia (no mostrada) de la imagen de referencia asociada con un decodificador (no mostrado). La memoria intermedia de imagen de referencia aloja dos listas: la lista 0 y la lista 1. La predicción de bloques en rebanadas P puede ocurrir con el uso de un único vector de movimiento de diferentes imágenes de referencia en la lista 0 de conformidad con un índice de referencia transmitido denominado como "RefldxLO" y un vector de movimiento transmitido denominado como " vLO". La predicción de bloques en las rebanadas B puede ocurrir ya sea de la lista 0 o de la lista 1 con un índice de referencia y un vector de movimiento transmitidos como RefldxLO y MvLO, respectivamente, de la lista 0 o un índice de referencia "RefldxLI" y un vector de movimiento "MvL1", respectivamente, de la lista 1, pero también utiliza ambas listas en un modo bi-predictivo. Para este último caso, la predicción del contenido de un bloque ocurre al promediar el contenido de un bloque de la lista 0 y de otro bloque de la lista . Para evitar siempre la transmisión de Ref IdxLO-MvLO y/o de RefldxLI -MvL1 , la norma H.264 también permite la codificación de los bloques en las rebanadas B en el modo directo. En este caso, existen dos diferentes métodos para derivar los vectores de movimiento y los índices de imagen de referencia no transmitidos. Estos incluyen: (a) el modo directo-espacial y (b) el modo directo-temporal. Existe una descripción para cada modo de la codificación progresiva, suponiendo la disponibilidad de toda la información requerida. Existen definiciones para otros casos en las especificaciones de la norma de codificación ITU H.264. 1.1 Predicción de vector de movimiento directo-espacial en la norma de codificación ITU H.264 Cuando se solicita la predicción de vector de movimiento directo-espacial para el macrobloque E de la Figura 1, los índices de referencia para la lista 0 y la lista 1 se infieren de los bloques A-D vecinos en la Figura 1, de conformidad con las siguientes relaciones: RefldxL0= M¡nPositivo(RefldxLOA, MinPositivo (RefldxLOB, RefldxLOC)) (Ec. 1) RefldxL1= MinPositivo (RefldxLI A, MinPositivo (RefldxLIB, RefldxLI C)) (Ec. 2) Con el operador MinPositivo determinado como: v , ; (b< )ll((a=0)&&(a<b)) MirtPosittve( ,¿>) = < „ \b ¦ ((a<0)&&(¿>0))ll(( =0)&&(¿>0)&&(a>í)){Eq ¾ Cada componente de la predicción de vector de movimiento MvpLX (en donde X puede ser 0 ó 1), se determina por la media de los componentes de vector correspondientes del vector de movimiento MvLXA, MvLXB y MvLXC; MvpLX(0) = Media(MvLXA(0), MvLXB(O), MvLXC(O)) (Ec. 4) MvpLX(1) = Media(MvLXA(1), MvLXB(1), MvLXCQ) (Ec. 5) Se debe observar que cuando se utiliza con propósitos de ocultamiento de error, las muestras fuera de la rebanada que contiene a E en la Figura 1 se pueden considerar para la predicción.
En el modo directo, la determinación del tamaño del bloque puede ser importante, especialmente en conexión con la norma de codificación ITÜ H.264 que permite el uso de diferentes tamaños de bloque. Cuando se utiliza un modo directo-espacial indicado por un mb_tipo de Directo 16x16, se deriva un único vector de movimiento y se derivan los índices de referencia para la Lista 0 y la Lista 1 para el macrobloque 16x16 completo. Cuando se utiliza el modo directo espacial por un sub_mb_tipo de directo 8x8, o para un sub-macrobloque 8x8, un único vector de movimiento y los índices de referencia para la Lista 0 y la Lista 1 se derivan para el sub-macrobloque 8x8. 1.2 Predicción de vector de movimiento directo temporal en la norma de codificación ITU H.264 Tomando como datos de entrada la dirección del macrobloque actual (MbAddr), un algoritmo ejemplifícativo para la predicción de vector de movimiento directo temporal computa la posición del bloque co-ubicado en la primera imagen de referencia de la lista 1 (consultar Figura 2). El bloque co-ubicado proporciona los parámetros MvLOCol, MvL1Co1, RefldxLOCol, y RefldxL1Co1, para calcular su contenido y el vVertEscalaFactor como se observa en la Figura 2. A partir de estos valores, el algoritmo deriva el valor del vector de movimiento co-ubicado MvCol, y los índices de referencia RefldxLO y RefldxLI como sigue: Ajusfar RefldxLI = 0, que es la primera imagen en la lista 1.
Cuando RefldxLOCol es no negativo, el vector de movimiento de la lista 0 MvLOCol se asigna para MvCol y el índice de referencia de la lista 0 RefldxLOCOI se asigna a RefldxLO; MvCol (0) = MvLOCol (0) (Ec. 6) MvCol (1) = MvVertEscalaFactor x MvLOCol (1) (Ec. 7) RefldxLO = RefldxLoCol / MvVertEscalaFactor (Ec. 8) Cuando RefldxL1Co1 es no negativo, el vector de movimiento de la lista 1 MvL1Co1 se asigna a MvCol y el índice de referencia de la lista 1 RedldxL1Co1 se asigna a RefldzLO: MvCol (0) = MvL1Co1(0) (Ec. 9 MvCo1(1) = MvVertEscalaFactor x MvL1Co1(1) (Ec. 10) RefldxLO = (índice de referencia en la lista LO de referencia a RefldxL1Co1 en L1 )/MvVertEscalaFactor (Ec.11) De otra forma, la división del sub-macrobloque 4x4 co-ubicada se intra-codif ica. Las siguientes relaciones describen los vectores de movimiento MvLOCol y MvL1Co1: X = (16384 + TDD »1))/ TDD (Ec. 12) Z = clip3 (-1024, 1023, (TDB X + 32) >>6) (Ec. 13) MvLO = (Z MvCol + 128)>>8 (Ec. 14) MvL1 = MvLO - MVCol (Ec. 15) En donde el c I i p 3 (a,b,c) es un operador que adjunta c en el intervalo (a.b) y TDB = clip3 (-128, 127, DiferPicOrdenCnt (imagen actual, RefldxLO)) (Ec. 15) TDD = clip3 (-128, 127, DiferPicOrdenCnt (RefldxLI, RefldxLO)) (Ec. 16) En el modo directo temporal, el vector de movimiento derivado se aplica al bloque de mismo tamaño de píxeles como fue utilizado en el macrobloque co-ubicado. Como se puede apreciar a partir de las relaciones anteriores, el vector de movimiento se escala de conformidad con la distancia de Cuenta de orden de imagen, que por lo general, corresponde a la distancia entre el macrobloque identificado y el macrobloque co-ubicado.
Codificación directa para MPEG 4 La norma de codificación MPEG 4 utiliza la compensación de movimiento bi-direccional directa derivada al extender la norma de codificación ITU H.263, la cual emplea los vectores de movimiento del macrobloque de imagen P y los escala para derivar los vectores de movimiento delantero y trasero para los macrobloques en las imágenes B. Este es el único modo que hace posible utilizar los vectores de movimiento en los bloques 8x8. Esto solamente es posible cuando el macrobloque co-ubicado en el plano de objeto de video predictivo (P-VOP) utiliza un modo MV 8x8. De conformidad con la norma de codificación ITU H.263, con el uso de la sintaxis del cuadro B, solamente se permite un vector de movimiento delta por macrobloque. La Figura 3 muestra el escalamiento de los vectores de movimiento en conexión con la codificación directa para la norma de codificación MPEG-4. La primera extensión de la norma de codificación H.263 dentro de la norma de codificación MPEG 4 proporciona las predicciones bi-direccionales que se pueden hacer para un macrobloque/bloque completo como en norma de codificación MPEG-1. La segunda extensión de la norma de codificación ITU H.263 dicta que en lugar de permitir la interpolación de una VOP involucrada, se pueden interpolar uno o más VOP. Cuando la predicción es deficiente debido a un movimiento rápido o a una distancia grande entre cuadros, se pueden seleccionar otros modos de compensación de movimiento.
Cálculo de los vectores de movimiento El cálculo de los vectores de movimiento delantero y trasero involucra el escalamiento lineal del bloque co-ubicado en la siguiente P-VOP temporal seguida por la corrección por un vector delta, y es prácticamente idéntico al procedimiento seguido por la norma de codificación ITU H.263. El único cambio es que con el esquema de codificación MPEG 4, existían VOP en lugar de imágenes y en lugar de una única imagen B entre un par de imágenes de referencia, se permitieron múltiples VOP bidireccionales (B-VOP) entre un par de VOP de referencia. Como en la norma de codificación H.263, la referencia temporal de VOP se utiliza para determinar los factores de escalamiento para computar los vectores de movimiento, que son corregidos por el vector delta. Además, los macrobloques co-ubicados (Mbs) se definen como Mbs con el mismo índice, cuando sea posible. De otra forma, no se utiliza el modo directo. Los vectores de movimiento delantero y trasero, referidos como "MVF" y "MVB", respectivamente, se determinan en unidades de media muestra como sigue: MVF = (TRB x MV)/TRD + MVD (Ec. 17) MVB = (TRB - TRD) x MV)/TRD cuando MVD es igual a 0 (Ec. 18), pero MVB = MVF)-MV cuando VD no es igual a 0 (Ec. 19) Cuando MV es el vector de movimiento directo de un macrobloque en P-VOP con respecto a una referencia VOP, TRB es la diferencia en la referencia temporal de B-VOP y la referencia previa VOP. TRD es la diferencia en la referencia temporal del siguiente VOP temporal con el VOP de referencia previo temporal, suponiendo que B-VOP o VOP saltados entre ellos. 2. Uso de procesos de derivación directa temporal y espacial para el ocultamiento de error. De conformidad con los presentes principios, el modo directo se utiliza para derivar: (1) los vectores de movimiento, (2) los índices de imagen de referencia, (3) el modo de codificación (Lista O/Lista 1/Bidir) y (4) el tamaño del bloque sobre el cual se aplica el modo de codificación para propósitos de ocultamiento. Se ha encontrado que el proceso de derivar la información necesaria para pronosticar los macrobloques faltantes/alterados define un problema muy parecido a la recuperación de los macrobloques codificados directo al compensar de movimiento los datos de los cuadros previamente transmitidos. De conformidad con esto, el mismo algoritmo para pronosticar bloques codificados en el modo directo puede pronosticar los bloques faltantes/alterados en los cuadros inter-codificados con el uso de cualquier decodificador de video compatible con la norma, para la cual se define el modo directo como un caso particular de inter-codificación, sin ningún costo adicional de ¡mplemeníación. Esto aplica para los decodificadores de video MPEG-4 y H.264 actuales y puede aplicar para los decodificadores de video MPEG-2 al implementar un algoritmo para derivar los vectores de movimiento en el modo directo. La detección de error y el ocultamiento de error constituyen procesos independientes, el último llamado cuando el primero determina que algunos de los datos recibidos están alterados o son faltantes. Cuando se lleva a cabo la detección de error a nivel móvil, cuando se detecta un error en el macrobloque actualmente decodificado, el ocultamiento ocurre sin alterar el proceso de decodificación. Sin embargo, cuando la detección de error ocurre a un nivel de rebanada, todos los macrobloques dentro de la rebanada requerirán el ocultamiento enfrente del error. En esta etapa, existen muchas estrategias para decidir el mejor orden de ocultamiento. De conformidad con una estrategia más sencilla, el ocultamiento de error empieza en el primer macrobloque dentro de la rebanada y avanza siguiendo el orden de decodificación previo. Otras estrategias más sofisticadas se desarrollarán en otras direcciones para evitar la propagación de error. 2.2 Criterio para seleccionar un proceso de derivación cuando más de uno está disponible El ocultamiento de error de conformidad con los presentes principios ocurre al confiar exclusi amente en el modo directo espacial, en el modo directo temporal o al hacer uso de ambos modos. Cuando se hace uso de ambos modos, debe existir un criterio para seleccionar el modo que ofrezca el mejor ocultamiento en el bloque o macrobloque particular. En la modalidad preferida, existe una diferencia entre el criterio aplicado a priori, que es antes de seleccionar el modo a ser utilizado y el criterio aplicado a posteriori, que es el criterio aplicado después de efectuar ambos modos para seleccionar el modo que ofrezca mejores resultados. 2.2.1 Criterio aplicado a priori El tamaño de la región que requiere el ocultamiento constituye un criterio aplicado a priori para determinar el uso del modo directo espacial o el directo temporal. El ocultamiento del modo directo temporal ofrece mejores resultados en regiones más grandes, mientras que el modo directo espacial ofrece mejores resultados en regiones más pequeñas. El modo de ocultamiento seleccionado en otras rebanadas en la misma imagen constituye otro criterio para seleccionar un modo particular para el ocultamiento de una rebanada faltante o perdida. De este modo, cuando otras rebanadas en la misma imagen se codifican en el modo directo espacial, entonces ese modo debe seleccionarse para región de interés. La Figura 4A ¡lustra un diagrama de flujo del proceso para decodificar y el ocultamiento de error con el uso de la selección de modo con un criterio a priori tal como el tamaño o el modo de ocultamiento utilizado para las rebanadas vecinas. Una selección de modo a priori empieza luego de la entrada de parámetros que se relacionan con el criterio seleccionado (paso 100). Después, ocurre la detección de error durante el paso 102, con el fin de detectar la presencia de macrobloques faltantes/alterados. En el paso 104 ocurre una verificación para determinar si existe un error en la forma de un macrobloque faltante/alterado . Luego de encontrar un error durante el paso 104, se ramifica al paso 106, en donde se hace una selección de uno de los modos de derivación directa temporal o directa espacial, de conformidad con el criterio de entrada. En caso de no encontrar un error durante el paso 104, entonces ocurre una verificación durante el paso 108 para determinar si el macrobloque se codifica en el modo directo. Cuando no es así, entonces se ramifica en el paso 109, por lo cual el macrobloque experimenta la decodificación del modo inter-predicción antes de emitir los datos durante el paso 111. Cuando, durante el paso 108 el macrobloque se codifica en el modo directo, o después del paso 106, ocurre una verificación durante el paso 110 dependiendo de si el modo seleccionado fue el modo directo temporal. Cuando es así, entonces la recuperación del vector de movimiento y el índice de referencia ocurre con el uso del proceso de modo directo temporal durante el paso 112 antes de avanzar el paso 109. De otra forma, después del paso 110, la recuperación del vector de movimiento y del índice de referencia ocurre con el proceso de derivación de modo directo espacial antes de ejecutar el paso 109. 2.2.2 Criterio aplicado a posteriori: Como se describe antes, tanto el proceso de derivación de modo directo temporal como el proceso de derivación de modo directo espacial pueden ocurrir, lo que da como resultado un proceso particular de conformidad con uno de los criterios aplicados a posteriori. Por ejemplo, pueden ocurrir ambos procesos mientras solamente se retienen los resultados del proceso que produce transiciones suaves entre los bordes del bloque oculto y sus vecinos. De manera alternativa, ambos procesos ocurren solamente se retiene el proceso que produjo el menor valor de fuerza de límite en un filtro de desbloqueo, según medido después del ocultamiento de error. Un valor de fuerza de límite más bajo alcanza una transición más suave y una mejor compensación de movimiento. La Figura 4B ilustra un diagrama de flujo de un proceso para la decodificación y ocultamiento de error con el uso de la selección de modo, con un criterio a posteriori para determinar la selección de modo. La selección de modo de conformidad con un criterio a posteriori empieza luego de la entrada de parámetros que se relacionan con el criterio seleccionado (paso 200). Después, ocurre la detección de error durante ei paso 202 para detectar la presencia de macrobloques faltantes/alterados. Durante el paso 204 ocurre una verificación para determinar si existe error en forma de un macrobloque faltante/alterado. Luego de encontrar un error durante el paso 204, ocurre una ramificación para ambos pasos 206 y 208. Durante el paso 206, los procesos de derivación directa temporal empiezan para derivar el vector de movimiento y el índice de referencia en la manera antes descrita para los bloques de referencia vecinos en el dominio temporal. Durante el paso 208, los procesos de derivación directa espacial empiezan para derivar un vector de movimiento y el índice de referencia en la manera antes descrita, a partir de los bloques de referencia vecinos en el dominio espacial. Después, la selección del vector de movimiento (Mv) y del índice de referencia (Refldx) ocurren durante el paso 210 de conformidad con la entrada de criterio durante el paso 200. Después del paso 210, la decodificación del modo ¡nter-predicción comienza durante el paso 212 y los datos resultantes de este paso se emiten durante el paso 213. Luego de no encontrar un error en el paso 204, ocurre una verificación durante el paso 214 para determinar si el macrobloque está codificado en el modo directo. Cuando no es así, entonces en el paso 213 ocurre una ramificación antes descrita. Luego de encontrar el macrobloque codificado en el modo directo durante el paso 214, sigue el paso 216 durante el cual ocurre una verificación para determinar si el modo seleccionado fue el modo directo temporal. Cuando es así, entonces ocurre la recuperación del vector de movimiento y del índice de referencia con el uso del proceso de modo directo temporal durante el paso 218 antes de avanzar al paso 212. De otra forma, después del paso 216, ocurre la recuperación del vector de movimiento y del índice de referencia por el proceso de derivación de modo directo espacial durante el paso 220 antes de ejecutar el paso 212. Lo anterior describe una técnica para el ocultamiento temporal de macrobloques faltantes/alterados en una corriente de video codificada.

Claims (17)

REIVINDICACIONES
1. Un método para el ocultamiento temporal de macrobloques faltantes/alterados en una corriente de video codificada en modo directo, caracterizado porque comprende los pasos de: identificar por lo menos un macrobloque f altante/alterado; encontrar el macrobloque co-ubicado en una primera imagen transmitida previamente; determinar un vector de movimiento co-ubicado para el macrobloque co-ubicado; escalar el vector de movimiento co-ubicado de conformidad con una distancia de cuenta de orden de imagen (POC); pronosticar los datos faltantes/alterados para el macrobloque identificado por compensar de movimiento los datos de tanto la primera imagen previamente transmitida como de la segunda imagen de referencia previamente transmitida de conformidad con el vector de movimiento co-ubicado escalado.
2. El método de conformidad con la reivindicación 1, caracterizado porque los datos faltantes/alterados se pronostican con el uso de un modo directo temporal.
3. El método de conformidad con la reivindicación 1, caracterizado porque los datos faltantes/alterados se pronostican con el uso de uno de los procesos de derivación de modos directo espacial y temporal de conformidad con por lo menos un criterio seleccionado antes de tal predicción.
4. El método de conformidad con la reivindicación 3, caracterizado porque la selección de uno de los procesos de derivación de modo directo espacial y temporal se hace de conformidad con el tamaño de la región de ocultamiento.
5. El método de conformidad con la reivindicación 4, caracterizado porque uno de los procesos de derivación de modos directo espacial y temporal se hace de conformidad con el modo de derivación de las rebanadas vecinas.
6. El método de conformidad con la reivindicación 1, caracterizado porque los datos f altantes/alterados se pronostican por los pasos de: llevar a cabo los procesos de derivación de los modos directo espacial y temp'oral; y seleccionar resultados de uno de los procesos de derivación de modos directo espacial y temporal de conformidad con lo por lo menos un criterio a posteriori.
7. El método de conformidad con la reivindicación 1, caracterizado porque además comprende el paso de derivar el tamaño de los bloques en la primera y segunda imágenes para los cuales aplica el vector de movimiento co-ubicado.
8. El método de conformidad con la reivindicación 1, caracterizado porque los resultados se seleccionan de conformidad con un valor de fuerza de borde del desbloqueo de conformidad con la norma de codificación ITU H.264.
9. El método de conformidad con la reivindicación 1, caracterizado porque los datos faltantes/alterados se pronostican con el uso del modo directo temporal definido en la norma de codificación ITU H.264.
10. Un método para el ocultamiento temporal de macrobloques faltantes/alterados en una corriente de video codificada en el modo directo de conformidad con la norma de codificación ITU H.264, caracterizado porque comprende los pasos de: identificar por lo menos un macrobloques faltantes/alterados; encontrar un macrobloque co-ubicado en una primera imagen transmitida previamente; determinar un índice de referencia y un vector de movimiento para el macrobloque co-ubicado; escalar el vector de movimiento; seleccionar una segunda imagen transmitida previamente de conformidad con el índice de referencia; y pronosticar los datos faltantes/alterados para el macrobloque identificado al compensar de movimiento los datos de la primera y segunda imágenes de referencia previamente transmitidas de conformidad con el vector de movimiento determinado.
11. El método de conformidad con la reivindicación 10, caracterizado porque los datos faltantes/alterados se pronostican con el uso del modo directo temporal definido en la norma de codificación ITU H.264.
12. El método de conformidad con la reivindicación 10, caracterizado porque los datos faltantes/alterados se pronostican con el uso del modo directo espacial definido en la norma de codificación ITU H.264.
13. El método de conformidad con la reivindicación 10, caracterizado porque los datos faltantes/alterados se pronostican con el uso de uno de los procesos de derivación de modos directo espacial y temporal definidos en la norma de codificación ITU H.264 de conformidad con por lo menos un criterio seleccionado antes de tal predicción.
14. El método de conformidad con la reivindicación 10, caracterizado porque la selección de uno de los procesos de derivación de modos directo espacial y temporal se hace de conformidad con el tamaño de la región de ocultamiento.
15. El método de conformidad con la reivindicación 14, caracterizado porque la selección de uno de los procesos de derivación de modos directo espacial y temporal se hace de conformidad con el modo de derivación de las rebanadas vecinas.
16. El método de conformidad con la reivindicación 10, caracterizado porque los datos faltantes/alterados se pronostican con los pasos de: llevar a cabo los procesos de derivación de los modos directo espacial y temporal definidos en la norma de codificación ITU H.264, seleccionar resultados de uno de los procesos de derivación de modos espacial y temporal de conformidad con por lo menos un criterio a posteriori.
17. El método de conformidad con la reivindicación 16, caracterizado porque los resultados se seleccionan de conformidad con un valor de fuerza de borde del desbloqueo de conformidad con la norma de codificación ITU H.264.
MXPA06003925A 2003-10-09 2003-10-09 Proceso de derivacion de modo directo para el ocultamiento de error. MXPA06003925A (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2003/031825 WO2005046072A1 (en) 2003-10-09 2003-10-09 Direct mode derivation process for error concealment

Publications (1)

Publication Number Publication Date
MXPA06003925A true MXPA06003925A (es) 2006-07-05

Family

ID=34572270

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA06003925A MXPA06003925A (es) 2003-10-09 2003-10-09 Proceso de derivacion de modo directo para el ocultamiento de error.

Country Status (8)

Country Link
US (1) US20070014359A1 (es)
EP (1) EP1671427A4 (es)
JP (1) JP2007521696A (es)
KR (1) KR100941123B1 (es)
AU (1) AU2003282462A1 (es)
BR (1) BR0318528A (es)
MX (1) MXPA06003925A (es)
WO (1) WO2005046072A1 (es)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8036271B2 (en) * 2004-02-24 2011-10-11 Lsi Corporation Method and apparatus for determining a second picture for temporal direct-mode block prediction
US7885339B2 (en) * 2004-11-17 2011-02-08 Microsoft Corporation Bi-directional temporal error concealment
KR20060088461A (ko) * 2005-02-01 2006-08-04 엘지전자 주식회사 영상신호의 엔코딩/디코딩시에 영상블록을 위한 모션벡터를베이스 레이어 픽처의 모션벡터로부터 유도하는 방법 및장치
US7660354B2 (en) * 2005-05-11 2010-02-09 Fang Shi Temporal error concealment for bi-directionally predicted frames
JP2009504001A (ja) * 2005-07-25 2009-01-29 トムソン ライセンシング リファレンスビデオフレーム及びノンリファレンスビデオフレームの検出及び隠蔽の方法及び装置
JP4752631B2 (ja) 2006-06-08 2011-08-17 株式会社日立製作所 画像符号化装置、及び画像符号化方法
US8238442B2 (en) * 2006-08-25 2012-08-07 Sony Computer Entertainment Inc. Methods and apparatus for concealing corrupted blocks of video data
EP2099227B1 (en) * 2006-12-27 2019-11-13 Panasonic Intellectual Property Management Co., Ltd. Moving picture image decoding device
US7933372B2 (en) * 2007-03-08 2011-04-26 Freescale Semiconductor, Inc. Successive interference cancellation based on the number of retransmissions
FR2915342A1 (fr) * 2007-04-20 2008-10-24 Canon Kk Procede et dispositif de codage video
US8526499B2 (en) * 2007-06-15 2013-09-03 Sungkyunkwan University Foundation For Corporate Collaboration Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording medium
WO2008153262A1 (en) 2007-06-15 2008-12-18 Sungkyunkwan University Foundation For Corporate Collaboration Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording midium
US8121189B2 (en) * 2007-09-20 2012-02-21 Microsoft Corporation Video decoding using created reference pictures
US9848209B2 (en) * 2008-04-02 2017-12-19 Microsoft Technology Licensing, Llc Adaptive error detection for MPEG-2 error concealment
US9924184B2 (en) * 2008-06-30 2018-03-20 Microsoft Technology Licensing, Llc Error detection, protection and recovery for video decoding
US9788018B2 (en) * 2008-06-30 2017-10-10 Microsoft Technology Licensing, Llc Error concealment techniques in video decoding
JP2010016453A (ja) * 2008-07-01 2010-01-21 Sony Corp 画像符号化装置および方法、画像復号装置および方法、並びにプログラム
JP2010035137A (ja) * 2008-07-01 2010-02-12 Sony Corp 画像処理装置および方法、並びにプログラム
JP2010016454A (ja) * 2008-07-01 2010-01-21 Sony Corp 画像符号化装置および方法、画像復号装置および方法、並びにプログラム
WO2010035730A1 (ja) * 2008-09-24 2010-04-01 ソニー株式会社 画像処理装置および方法
CN102160384A (zh) * 2008-09-24 2011-08-17 索尼公司 图像处理设备和方法
BRPI0918028A2 (pt) * 2008-09-24 2015-12-01 Sony Corp dispositivo e método de processamento de imagem.
US9131241B2 (en) * 2008-11-25 2015-09-08 Microsoft Technology Licensing, Llc Adjusting hardware acceleration for video playback based on error detection
JP5115519B2 (ja) * 2009-05-26 2013-01-09 富士通株式会社 動画像復号装置、動画像復号方法及び動画像復号用コンピュータプログラム
WO2010137086A1 (ja) * 2009-05-26 2010-12-02 パナソニック株式会社 動画像処理装置および動画像処理方法
US8340510B2 (en) * 2009-07-17 2012-12-25 Microsoft Corporation Implementing channel start and file seek for decoder
MX367863B (es) 2010-10-06 2019-09-05 Ntt Docomo Inc Dispositivo para codificación predictiva de imágenes, método para codificación predictiva de imágenes, programa informático para codificación predictiva de imágenes, dispositivo para decodificación predictiva de imágenes, método para la decodificación predictiva de imágenes y programa informático para decodificación predictiva de imágenes.
JP5701018B2 (ja) * 2010-11-12 2015-04-15 三菱電機株式会社 画像復号装置
JP5649412B2 (ja) * 2010-11-12 2015-01-07 三菱電機株式会社 エラーコンシールメント装置及び復号装置
JP5893570B2 (ja) * 2011-01-28 2016-03-23 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法および画像復号化方法
KR20120088488A (ko) * 2011-01-31 2012-08-08 한국전자통신연구원 시간적 움직임 벡터 저장 방법 및 그 장치
GB2493212B (en) * 2011-07-29 2015-03-11 Canon Kk Method and device for error concealment in motion estimation of video data
BR112013022641B1 (pt) 2011-09-09 2022-07-12 Kt Corporation Método para derivar um vetor de predição de movimento candidato
US9363513B2 (en) * 2011-12-14 2016-06-07 Intel Corporation Methods, systems, and computer program products for assessing a macroblock candidate for conversion to a skipped macroblock
US9762904B2 (en) 2011-12-22 2017-09-12 Qualcomm Incorporated Performing motion vector prediction for video coding
US9344742B2 (en) * 2012-08-10 2016-05-17 Google Inc. Transform-domain intra prediction

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428399A (en) * 1991-04-15 1995-06-27 Vistek Electronics Limited Method and apparatus for image translation with improved motion compensation
US5621467A (en) * 1995-02-16 1997-04-15 Thomson Multimedia S.A. Temporal-spatial error concealment apparatus and method for video signal processors
JP3263807B2 (ja) * 1996-09-09 2002-03-11 ソニー株式会社 画像符号化装置および画像符号化方法
GB2318246B (en) * 1996-10-09 2000-11-15 Sony Uk Ltd Processing digitally encoded signals
US6078616A (en) * 1997-03-13 2000-06-20 Sony Corporation Methods and apparatus for error concealment utilizing temporal domain motion vector estimation
US6404813B1 (en) * 1997-03-27 2002-06-11 At&T Corp. Bidirectionally predicted pictures or video object planes for efficient and flexible video coding
JP3604290B2 (ja) * 1998-09-25 2004-12-22 沖電気工業株式会社 動画像復号方法及び装置
GB2343321B (en) * 1998-11-02 2003-03-26 Nokia Mobile Phones Ltd Error concealment in a video signal
JP3630590B2 (ja) * 1999-08-25 2005-03-16 沖電気工業株式会社 復号化装置及び伝送システム
WO2002071639A1 (en) * 2001-03-05 2002-09-12 Intervideo, Inc. Systems and methods for error resilient encoding
DE60135036D1 (de) * 2001-10-05 2008-09-04 Mitsubishi Electric Corp Verfahren und Vorrichtung zur Kompensation von fehlerhaften Bewegungsvektoren in Bilddaten
KR100924850B1 (ko) * 2002-01-24 2009-11-02 가부시키가이샤 히타치세이사쿠쇼 동화상 신호의 부호화 방법 및 복호화 방법
US8175159B2 (en) * 2002-01-24 2012-05-08 Hitachi, Ltd. Moving picture signal coding method, decoding method, coding apparatus, and decoding apparatus
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
US7068722B2 (en) * 2002-09-25 2006-06-27 Lsi Logic Corporation Content adaptive video processor using motion compensation
US7020207B1 (en) * 2002-12-02 2006-03-28 Hitachi, Ltd. Video error concealment mechanism for block based video decompression
MXPA05007447A (es) * 2003-01-10 2005-09-12 Thomson Licensing Sa Aparato de decodificador y metodo para suavizar artefactos creados durante el ocultamiento de error.
CN100568964C (zh) * 2003-02-18 2009-12-09 诺基亚有限公司 图像解码方法
US7609763B2 (en) * 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames

Also Published As

Publication number Publication date
AU2003282462A1 (en) 2005-05-26
EP1671427A4 (en) 2010-04-07
KR100941123B1 (ko) 2010-02-10
KR20060090990A (ko) 2006-08-17
WO2005046072A1 (en) 2005-05-19
BR0318528A (pt) 2006-09-12
US20070014359A1 (en) 2007-01-18
EP1671427A1 (en) 2006-06-21
JP2007521696A (ja) 2007-08-02

Similar Documents

Publication Publication Date Title
MXPA06003925A (es) Proceso de derivacion de modo directo para el ocultamiento de error.
US9894378B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, moving picture encoding program, and moving picture decoding program
EP1993292B1 (en) Dynamic image encoding method and device and program using the same
KR100985236B1 (ko) 움직임 보상 방법, 화상 부호화 방법 및 화상 복호화 방법
EP1980115B1 (en) Method and apparatus for determining an encoding method based on a distortion value related to error concealment
KR101691199B1 (ko) 비디오 부호화 및 복호화에서의 템플릿 매칭 예측을 위한 방법 및 장치
US20100086052A1 (en) Method and an apparatus for processing a video signal
TWI401972B (zh) 時間性錯誤隱藏方法
KR101482514B1 (ko) 움직임 예측 방법 및 비디오 인코딩 방법
JP4128028B2 (ja) Mpeg4標準を用いたビデオ符号化の方法及び装置
Itani et al. Adaptive direct vector derivation for video coding
JP2004032355A (ja) 動画像符号化方法,動画像復号方法,動画像符号化装置および動画像復号装置
US20050013496A1 (en) Video decoder locally uses motion-compensated interpolation to reconstruct macro-block skipped by encoder
KR101307682B1 (ko) H.264/avc 베이스라인 프로파일에서의 rdo에 기반한 움직임 벡터 숨김 정보 삽입을 이용한 에러 검출 방법
KR20030088543A (ko) 동영상 코딩방법
KR100986992B1 (ko) H.264 인코딩 시 고속 인터 모드 결정 방법
CA2877306A1 (en) Apparatus and method for coding a video signal
CN101931819B (zh) 时间性错误隐藏方法
KR101021538B1 (ko) H.264 인코딩 시 고속 인트라 모드 결정 방법
KR100299962B1 (ko) 동영상 부호화 시스템의 프레임간 적응 평활화 장치 및 방법
Klomp et al. Motion estimation at the decoder
KR20050099079A (ko) 동영상 복호화 시 에러 은닉 방법

Legal Events

Date Code Title Description
FG Grant or registration