ES2926702T3 - Codificación y decodificación multivista - Google Patents

Codificación y decodificación multivista Download PDF

Info

Publication number
ES2926702T3
ES2926702T3 ES16785246T ES16785246T ES2926702T3 ES 2926702 T3 ES2926702 T3 ES 2926702T3 ES 16785246 T ES16785246 T ES 16785246T ES 16785246 T ES16785246 T ES 16785246T ES 2926702 T3 ES2926702 T3 ES 2926702T3
Authority
ES
Spain
Prior art keywords
view
current
decoding
decoded
views
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
ES16785246T
Other languages
English (en)
Inventor
Joël Jung
Antoine Dricot
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.)
Orange SA
Original Assignee
Orange SA
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 Orange SA filed Critical Orange SA
Application granted granted Critical
Publication of ES2926702T3 publication Critical patent/ES2926702T3/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

La invención se refiere a la decodificación de una vista actual perteneciente a una imagen multivista previamente codificada, en el transcurso de la cual se implementa: - determinación (D24a)), en un conjunto de vistas pertenecientes a dicha imagen multivista o a otra imagen multivista, de una ruta de vistas necesaria para la decodificación de dicha vista actual, comprendiendo dicha ruta al menos una vista aún sin decodificar, - decodificación (D25a)) de dicha al menos una vista aún sin decodificar, - decodificación (D26a)) de dicha vista actual sobre la base de un conjunto de datos codificados representativos de al menos una diferencia entre dicha vista actual y otra vista de dicha imagen multivista o de otra imagen multivista, y de dicha al menos una vista decodificada. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Codificación y decodificación multivista
Campo de la invención
La presente invención se refiere de manera general al campo del procesamiento de imágenes en 3D, y más precisamente a la codificación y la decodificación de imágenes multivista y de secuencias de imágenes multivista.
La invención puede especialmente, pero no exclusivamente, aplicarse a la codificación de video implementada en los codificadores de video actuales Av C y HEVC y sus extensiones (MVC, 3D-AVC, MV-HEVC, 3D-HEVC, etc.), y a la correspondiente decodificación de vídeo.
Técnica anterior
Una imagen multivista se obtiene de manera convencional a través de la multiplexación, en un momento t actual, de un conjunto N de vistas que cada una representa una misma escena 3D según una posición angular de visualización específica. Cuando N es pequeño (típicamente inferior a 10), se habla de una imagen multivista. Cuando N es más grande, se habla de una imagen de súper multivista. De manera general, con el fin de simplificar la descripción, se considerará que una imagen multivista comprende N vistas, con N>1.
Varias imágenes multivista capturadas cada una en diferentes momentos, forman una secuencia de imágenes multivista.
Una tal secuencia de imágenes multivista se codifica con la ayuda de una codificación adecuada, tal como por ejemplo una codificación MVC (abreviatura en inglés de «Multiview Video Coding») o MV-HEVC (abreviatura en inglés de «Multiview High Efficiency Video Coding») que explota a la vez:
- las redundancias espaciales que existen en el interior incluso de la vista actual, independientemente de las otras vistas,
- las redundancias entre vistas entre la vista actual por codificar y otra vista de la imagen multivista actual,
- las redundancias temporales entre la vista actual por codificar y una vista perteneciente a otra imagen multivista situada en un momento diferente al de la dicha imagen multivista y que representa la escena 3D según la misma posición angular de visualización que la vista actual,
- las redundancias espaciotemporal entre la vista actual por codificar y una vista que pertenece a otra imagen multivista situada en un momento diferente al de la dicha imagen multivista y que representa la escena 3D según una posición angular de visualización diferente a la de la vista actual.
A continuación, se implementa una decodificación correspondiente de la secuencia de imágenes multivista codificada con el fin de poder representar esta secuencia en la pantalla de un terminal, tal como por ejemplo una tableta, un teléfono móvil, un smartphone («teléfono inteligente»), un ordenador personal, un receptor de televisión, etc. Es, por tanto, teóricamente posible, para un usuario, navegar libremente de una vista a otra en una misma imagen multivista de la secuencia o incluso entre una primera vista perteneciente a una imagen multivista capturada en un momento t actual y una segunda vista perteneciente a una imagen multivista capturada en un momento anterior o posterior al momento t actual. La segunda vista puede representar la escena 3D según una posición angular de visualización que es la misma que en la primera vista o incluso diferente.
Aunque la eficacia del procedimiento de codificación mencionado anteriormente está probada, el procedimiento de decodificación correspondiente es muy restrictivo. En efecto, cuando el usuario requiere la visualización de una vista de una imagen multivista capturada en el momento t en la secuencia, el decodificador está obligado a decodificar previamente de manera sistemática el conjunto de vistas de la imagen multivista en el momento t, e igualmente el conjunto de vistas de las otras imágenes multivista que preceden el momento t en la secuencia. Por lo tanto, la complejidad de los cálculos del decodificador resulta muy alta. Lo mismo sucede con la latencia entre el momento en que el usuario ha requerido la visualización de una vista y el momento en que realmente se visualiza la vista requerida. Teniendo en cuenta estas limitaciones, un tal procedimiento de decodificación claramente no es adecuado para una navegación libre entre las vistas de una secuencia de imágenes multivista, en particular en el caso en que el número N de vistas sea superior a 10.
Con el fin de resolver estos inconvenientes, se propone, especialmente en el documento «Applying Prediction Techniques to reduce uplink transmission and energy requirements for mobile free viewpoint video applications», De Raffaele, Debono, ICAM 2010, hacer dialogar el terminal, que contiene el decodificador, con un servidor. El terminal transmite al servidor las vistas en las cuales ha navegado el usuario en el interior de la secuencia en los momentos anteriores al momento actual. Por tanto, el servidor procede a la codificación de la vista requerida en el momento actual, prediciendo la vista actual con respecto a las vistas que le han sido transmitidas previamente. El documento «Interactive Multiview video system with low decoding complexity», ICIP 2011, Maugey, T., Frossard, P., también explota un tal diálogo entre el terminal, que contiene el decodificador, y un servidor. Para este efecto, el terminal transmite al servidor, a intervalos de tiempo regulares, las vistas en las cuales ha navegado el usuario en el interior de la secuencia en los momentos anteriores al momento actual. Sólo se codifican las vistas de la imagen multivista que son susceptibles de ser seleccionadas por el usuario en el intervalo de tiempo siguiente.
Tales técnicas de diálogo entre el terminal que contiene el decodificador y un servidor son relativamente engorrosas y costosas de implementar. Además, conducen a un consumo significativo de ancho de banda de red, lo que las hace difícilmente realistas, en particular cuando el usuario navega muchas veces en la secuencia de imágenes multivista. Un ejemplo de un procedimiento de codificación multivista se describe en el documento A. Dricot et al: «Full parallax supermulti-view video coding», 2014 IEEE International Conference on Image Processing (ICIP), 1 de octubre de 2014 (2014-10-01), páginas 135-139. También se conoce del documento US 2017/121722 un procedimiento de decodificación multivista, en el cual solo se seleccionan determinadas vistas de la imagen multivista para decodificar la vista actual.
Objeto y resumen de la invención
Uno de los objetivos de la invención es remediar los inconvenientes del estado de la técnica antes mencionada.
La invención está definida por las reivindicaciones adjuntas; los ejemplos denominados «modos de realización» son ejemplos ilustrativos.
Según la invención, el primer y el segundo residuo de predicción contienen cada uno datos codificados que permiten obtener una vista actual decodificada única e idéntica para cada uno de los dos residuos. Cada residuo debe respetar la restricción de permitir decodificar una misma vista. Esto significa que, si la vista actual ha sido predicha con respecto a una primera vista y a una segunda vista, obteniendo así respectivamente un primer y un segundo residuo de predicción, la vista actual se puede reconstruir:
- ya sea agregando al primer residuo la primera vista ya decodificada o no, si es el primer residuo el que se selecciona en la decodificación,
- ya sea agregando al segundo residuo la segunda vista ya decodificada o no, si es el segundo residuo el que se selecciona en la decodificación. El decodificador puede entonces, de manera ventajosa, utilizar uno de estos residuos para decodificar la imagen actual, siendo una tal elección de residuo una función del recorrido de navegación, por el usuario, de una vista a otra.
El modo de realización particular definido en la reivindicación 3 permite optimizar la reducción de la complejidad del decodificador y aumentar su velocidad de decodificación, durante la decodificación de la vista actual. Además, permite una reducción del coste de almacenamiento de las vistas decodificadas en el decodificador.
El modo de realización particular definido en la reivindicación 4 permite, cuando la vista actual debe ser decodificada con respecto a las vistas situadas en diferentes momentos temporales, buscar, para decodificar la vista actual, al menos una vista que ha sido decodificada independientemente de otras vistas, esto con el fin de maximizar la calidad de reconstrucción de la vista actual.
El modo de realización particular definido en la reivindicación 5 permite al decodificador determinar un recorrido de vistas necesarias para la decodificación de la vista actual que sean lo más relevantes posible con respecto:
- a la geometría del recorrido de navegación efectuado por el usuario, de una vista a otra, hasta el momento actual,
- y al posible desplazamiento del usuario hacia tal o cual próxima vista en al menos un momento siguiente o anterior al momento actual.
Por tanto, se obtiene con certeza un recorrido óptimo, teniendo en cuenta los probables desplazamientos futuros del usuario hacia una vista o las otras.
El modo de realización particular definido en la reivindicación 6 permite al decodificador determinar un recorrido de vistas necesarias para la decodificación de la vista actual que sean lo más relevantes posible con respecto:
- a la geometría del recorrido de navegación efectuado por el usuario, de una vista a otra, hasta el momento actual,
- y al probable desplazamiento del usuario hacia una próxima vista de una imagen multivista situada en al menos un momento siguiente o anterior al momento actual.
Por tanto, teniendo en cuenta los probables desplazamientos futuros del usuario hacia tal o cual vista, se incrementan las posibilidades de obtener un recorrido óptimo.
El modo de realización particular definido en la reivindicación 7 permite al decodificador seleccionar una vista actual distinta a la que se va a decodificar, en el caso de que la determinación del recorrido de vistas necesarias para la decodificación de la vista actual no se adapte a determinadas restricciones de decodificación. Una de estas restricciones es, por ejemplo, de tipo material. El decodificador puede, especialmente, estar limitado en el número de vistas decodificadas por utilizar para decodificar la vista actual. Por tanto, en el caso de que el recorrido determinado utilice un número de vistas decodificadas superior a este número, el decodificador no será capaz de decodificar la vista actual.
El modo de realización particular definido en la reivindicación 8 permite al decodificador, gracias a la determinación del orden de recorrido de las vistas decodificadas y disponibles, eliminar las vistas decodificadas y, en su caso, las imágenes multivista a las cuales pertenecen, a medida que se utilizan, a lo largo del recorrido. En consecuencia, la gestión del búfer del decodificador se mejora significativamente.
El programa de ordenador definido en la reivindicación 10 o la reivindicación 14 puede utilizar cualquier lenguaje de programación, y estar en forma de código fuente, código objeto, o código intermedio entre el código fuente y el código objeto, tal como en una forma parcialmente compilada, o en cualquier otra forma deseable.
El soporte de registro definido en la reivindicación 11 puede ser cualquier entidad o dispositivo capaz de almacenar el programa. Por ejemplo, el soporte puede incluir un medio de almacenamiento, tal como una ROM, por ejemplo, un CD ROM o una ROM de circuito microelectrónico, o incluso un medio de registro magnético, por ejemplo, una memoria USB o un disco duro.
Por otro lado, el soporte de registro puede ser un soporte transmisible, tal como una señal eléctrica u óptica, que puede ser transmitida a través de un cable eléctrico u óptico, por radio o por otros medios. En particular, el programa según la invención puede ser descargado en una red de tipo Internet.
De manera alternativa, el soporte de registro puede ser un circuito integrado en el cual se incorpora el programa, estando el circuito adaptado para ejecutar o para ser utilizado en la ejecución del procedimiento de codificación o decodificación antes mencionado.
Breve descripción de los dibujos
Otras características y ventajas aparecerán con la lectura de varios modos de realización preferidos descritos con referencia a las figuras en las cuales:
- la Figura 1A representa las etapas del procedimiento de codificación según un primer modo de realización de la invención,
- la Figura 1B representa las etapas del procedimiento de codificación según un segundo modo de realización de la invención,
- la Figura 2A representa un dispositivo de codificación que implementa el procedimiento de codificación de la Figura IA,
- la Figura 2B representa un dispositivo de codificación que implementa el procedimiento de codificación de la Figura I B,
- la Figura 3A representa un ejemplo de imagen multivista,
- la Figura 3B representa un ejemplo de secuencia de imágenes multivista,
- la Figura 4A representa una porción de la señal de datos obtenida al final del procedimiento de codificación de la Figura 1A,
- la Figura 4B representa una variante de la porción de señal de la Figura 4A,
- la Figura 4C representa una porción de la señal de datos obtenida al final del procedimiento de codificación de la Figura 1B,
- la Figura 4D representa una variante de la porción de señal de la Figura 4C,
- la Figura 5A representa un ejemplo de árbol de codificación asociado con la al menos una vista actual por codificar de acuerdo con el procedimiento de codificación de la Figura 1A,
- la Figura 5B representa un ejemplo de árbol de codificación asociado con la al menos una vista actual por codificar de acuerdo con el procedimiento de codificación de la Figura 1B,
- la Figura 6A representa las etapas del procedimiento de decodificación según un primer modo de realización de la invención,
- la Figura 6B representa las etapas del procedimiento de decodificación según un segundo modo de realización de la invención,
- la Figura 7A representa un dispositivo de decodificación que implementa el procedimiento de decodificación de la Figura 6A,
- la Figura 7B representa un dispositivo de decodificación que implementa el procedimiento de decodificación de la Figura 6B,
- la Figura 8A representa un ejemplo de recorrido de decodificación asociado con la al menos una vista actual por decodificar, la cual ha sido codificada de acuerdo con el árbol de codificación de la Figura 5A,
- la Figura 8B representa un ejemplo de recorrido de decodificación asociado con la al menos una vista actual por decodificar, la cual ha sido codificada de acuerdo con uno de los árboles de codificación alternativos de la Figura 5b , - la Figura 8C representa una variante del recorrido de decodificación representado en la Figura 8B,
- la Figura 8D representa un ejemplo de recorrido de decodificación asociado a la al menos una vista actual por decodificar que contiene un número mínimo de vistas, habiendo sido la vista actual codificada de acuerdo con uno de los árboles de codificación alternativos de la Figura 5B,
- la Figura 8E representa un ejemplo de recorrido de decodificación asociado a la al menos una vista actual por decodificar que tiene en cuenta la decodificación de la vista susceptible de ser decodificada a al menos un momento siguiente o anterior al momento actual.
Descripción del principio general de la invención
La invención propone principalmente una técnica de decodificación de al menos una vista actual de una imagen multivista actual que ha sido previamente codificada y cuyos datos codificados están contenidos en una señal de datos, proponiendo la dicha técnica de decodificación decodificar únicamente la o las vista(s) realmente necesaria(s) para la decodificación de la al menos una vista actual.
Según la invención, entre las vistas necesarias para la decodificación de la al menos una vista actual, al menos una de ellas es una vista que aún no ha sido decodificada y que por lo tanto no está disponible en el momento en que se procede a la decodificación de la al menos una vista actual. Una tal vista aún no decodificada puede pertenecer a la imagen multivista actual y, por lo tanto, representar una escena según una posición angular de visualización diferente de la al menos una vista actual. Una tal vista aún no decodificada también puede pertenecer a una imagen multivista diferente de la imagen multivista actual, es decir situada, en una secuencia de imágenes multivista, en otro momento que la imagen multivista actual. En este caso, la vista necesaria para la decodificación de la imagen actual puede ser una vista que represente la escena según la misma posición de visualización angular que la al menos una vista actual o bien según una posición angular de visualización diferente a la de la al menos una vista actual.
Descripción detallada de un primer modo de realización
Según un primer modo de realización, la técnica de decodificación según la invención se basa en un procedimiento de codificación de imágenes multivista convencional, tal como se implementa en un codificador de acuerdo con una cualquiera de los estándares de codificación de video actuales o futuros.
Codificación
El procedimiento de codificación de acuerdo con el primer modo de realización se representa en forma de un algoritmo que incluye las etapas C1a) a C3a) tal como se representa en la figura 1A.
Según el primer modo de realización de la invención, el procedimiento de codificación se implementa en un dispositivo de codificación o codificador CO1 representado en la figura 2A.
Como se ilustra en la figura 2A, un tal dispositivo codificador comprende:
- una entrada ENT_C1 para recibir una imagen multivista actual por codificar,
- un circuito CT_C1 de procesamiento para implementar el procedimiento de codificación según el primer modo de realización, conteniendo el circuito CT_C1 de procesamiento:
• una memoria MEM_C1 que comprende un búfer MT_C1,
• un procesador PROC_C1 controlado por un programa PG_C1 de ordenador,
- una salida SOR_C1 para entregar un flujo codificado que contiene los datos obtenidos al final de la codificación de la imagen multivista actual.
En la inicialización, las instrucciones de código del programa PG_C1 de ordenador son, por ejemplo, cargadas en una memoria RAM, MR_C1, antes de ser ejecutadas por el circuito CT_C1 de procesamiento.
El procedimiento de codificación representado en la figura 1A se aplica a cualquier imagen IMVj multivista actual fijada o bien que haga parte de una secuencia de imágenes multivista IMV1, IMVj, IMVK(1<j<K) por codificar.
Como se representa en la figura 3A, una imagen IMVj multivista actual en un momento tj actual se compone de N vistas Vi,j, V2,j, ..., Vu,j, ..., VN,j diferentes que cada una representa una misma escena según una posición de visualización angular correspondiente, tal como N>1 y 1<u<N.
Como se representa en la figura 3B, una secuencia de imágenes multivista comprende una pluralidad K de imágenes IMV1, IMV2, ..., IMVj, ..., IMVk multivista, tal como 1<j <K, que se suceden respectivamente en los momentos ti, t2, ..., tj, ..., tK.
En el momento t1, la imagen IMV1 multivista se compone de N diferentes vistas V1,1, V2,1, ..., Vu,1, ..., Vn,1, que cada una representa una misma escena según una posición de visualización angular correspondiente.
En el momento t2, la imagen IMV2 multivista se compone de N diferentes vistas V1,2, V2,2, ..., Vu,2, ..., Vn,2, que cada una representa una misma escena según una posición de visualización angular correspondiente.
En el momento tj, la imagen IMVj multivista se compone de N diferentes vistas V1,j, V2,j, ..., Vu,j, ..., VN,j, que cada una representa una misma escena según una posición de visualización angular correspondiente.
En el momento tK, la imagen multivista IMVk se compone de N diferentes vistas V1,k, V2,k, ..., Vu,k, ..., Vn,k, que cada una representa una misma escena según una posición de visualización angular correspondiente.
A lo largo de una etapa C1a) representada en la figura 1A, para una imagen IMVj multivista actual, se procede a la codificación de la dicha al menos una vista Vu,j.
Una tal etapa C1a) se implementa mediante un dispositivo MCV_C1 de codificación de vistas, tal como se representa en la figura 2A, cuyo dispositivo está controlado por el procesador PROC_C1.
Un tal dispositivo MCV_C1 de codificación de vistas comprende de manera convencional:
- un dispositivo PRED_C1 de predicción,
- un dispositivo CAL_C1 de cálculo de datos residuales,
- un dispositivo MT_C1 de transformación de tipo DCT (abreviatura en inglés de «Discréte Cosine Transform»), DST (abreviatura en inglés de «Discréte Sine Transform»), DWT (abreviatura en inglés de «Discréte Wavelet Transform»), - un dispositivo MQ_C1 de cuantificación,
- un dispositivo MCE_C1 de codificación entrópica por ejemplo de tipo CABAC («Context Adaptive Binary Arithmetic Coder») o incluso un codificador de Huffman conocido como tal.
De manera en sí conocida, a lo largo de la etapa C1a), se procede a una subetapa C11a) de predicción de la dicha al menos una vista Vu,j mediante técnicas conocidas de predicción intra y/o inter. Para este efecto, la dicha al menos una vista Vu,j se predice de acuerdo con un modo de predicción seleccionado entre una pluralidad de modos de predicción predeterminados. Por ejemplo, en el caso de una codificación de tipo MVC, y como ya se ha explicado anteriormente, se puede predecir la dicha al menos una vista Vuj
- independientemente de las otras vistas de la imagen IMVj multivista o de la secuencia de K imágenes IMV1, IMV2, ..., IMVj, ..., IMVk multivista,
- con respecto a otra vista de la imagen IMVj multivista actual,
- con respecto a una vista que pertenece a otra imagen multivista que la dicha imagen multivista actual y que representa la escena según la misma posición angular de visualización que la dicha al menos una vista actual, - con respecto a otra imagen multivista que la dicha imagen IMVj multivista actual y que representa la escena según una posición angular de visualización diferente a la de la al menos una vista actual.
La vista predictiva utilizada para predecir la al menos una vista Vu,j actual es una vista que ya ha sido codificada y luego decodificada. Una tal vista predictiva se almacena previamente en el búfer MT_C1 del codificador CO1, tal como se representa en la figura 2A.
Para la al menos una vista Vu,j actual por codificar, se obtiene una vista Vpu,j predictiva óptima después de una puesta en competencia de los dichos modos de predicción predeterminados, por ejemplo, mediante la minimización de un criterio de tasa de distorsión bien conocido por el experto en la técnica. La vista predictiva óptima se considera como una aproximación de la al menos una vista Vu,j actual considerada.
Una tal subetapa C11a) es implementada por el dispositivo PRED_C1 de predicción representado en la figura 2A.
La etapa de codificación C1a) también comprende una subetapa C12a) a lo largo de la cual se procede de manera convencional al cálculo de la diferencia entre la al menos una vista Vu,j actual y la vista Vpu,j predictiva óptima que ha sido seleccionada al final de la subetapa C11a).
Luego se obtiene una vista Vru,j residual al final de la subetapa C12a).
Una tal subetapa C12a) es implementada por el módulo CAL_C1 de cálculo representado en la figura 2A.
La etapa de codificación C1a) también comprende una subetapa C13a) a lo largo de la cual se procede de manera convencional a la transformación de la vista Vru,j residual según una operación convencional de transformación directa, tal como por ejemplo una transformación de tipo DCT, DST o DWT, para producir una vista transformada , designada por la referencia Vtu,j. Una tal operación es efectuada por el dispositivo MT_C1 representado en la figura 2A.
La etapa de codificación C1a) también comprende una subetapa C14a) a lo largo de la cual se procede de manera convencional a la cuantificación de la vista Vtu,j transformada según una operación convencional de cuantificación, tal como por ejemplo una cuantificación escalar o vectorial. Luego se obtiene un conjunto Vqu,j de coeficientes cuantificados al final de esta subetapa. Una tal subetapa C14a) es efectuada por medio del dispositivo MQ_C1 de cuantificación, tal como se representa en la figura 2A.
La etapa de codificación C1a) también comprende una subetapa C15a) a lo largo de la cual se procede de manera convencional a la codificación del conjunto Vqu,j de coeficientes según un orden predeterminado, tal como, especialmente, el orden «ráster sean». Luego se obtiene un conjunto Vcqu,j de datos codificados al final de la subetapa C15a).
En el modo preferido de realización, la codificación efectuada es una codificación entrópica de tipo aritmético o de Huffman. La subetapa C15a) consiste entonces en:
- leer el o los símbolo(s) de un conjunto predeterminado de símbolos que están asociados con los datos cuantificados de la vista Vu,j,
- asociar informaciones digitales, tales como bits, con el(los) símbolo(s) leído(s).
Una tal subetapa C15a) de codificación entrópica es implementada por el módulo MCE_C1 de codificación entrópico representado en la figura 2A.
Al final de la etapa de codificación C1a) de la vista Vu,j, se procede, a lo largo de una etapa C2a) representada en la figura 1A, a la elaboración de una señal F1 de datos que, de manera en sí conocida, como se representa en la figura 4A, comprende:
- un campo CH1 que contiene el tipo de predicción (inter o intra) aplicada a la subetapa C11a) de la figura 1A y, en su caso, el modo de predicción seleccionado,
- si el modo de predicción Inter ha sido aplicado, un campo CH2 que contiene el índice de al menos la vista Vpu,j predictiva seleccionada al final de la subetapa C11a) y el al menos un vector MVpu,j de movimiento utilizado, - un campo CH3 que contiene el conjunto Vcqu,j de datos codificados entrópicamente asociados con la vista Vu,j. A continuación, se entrega una tal señal a través de la salida SOR_C1 del codificador CO1 de la figura 2A, y luego se transmite a través de una red de comunicación (no se representa), a un terminal remoto. Este incluye un decodificador que se describirá con más detalle en la continuación de la descripción.
La etapa C2a) de producción de una tal señal es implementada por el módulo MGF1 de generación de señal de datos, tal como se representa en la figura 2A.
Según una variante de realización innovadora propia de la invención, para cada una de las vistas de la secuencia de imágenes considerada, o para cada una de las vistas de un subconjunto de vistas de la secuencia de imágenes considerada, habiendo sido las dichas vistas codificadas según un modo de predicción intra o inter, se propone señalar en un campo particular de la señal F'1:
- ya sea una información representativa del hecho de que la vista considerada en la secuencia de imágenes ha sido codificada en Intra,
- o una información representativa del índice de la al menos una vista predictiva que ha sido utilizada para predecir la vista considerada en la secuencia de imágenes.
En el ejemplo representado en la figura 4B, donde se representa, por razones de simplificación, únicamente una porción de la señal F'1 en la cual se señala únicamente un subconjunto de vistas de la secuencia de imágenes considerada, el cual contiene la dicha al menos una vista Vu,j actual que ha sido codificada, así como un número W de vistas VR1, ..., VRw que han sido codificadas antes de la dicha al menos una vista Vu,j actual, habiendo sido la dicha primera vista VRi codificada en modo intra y habiendo sido las otras vistas VR2 a VRw, cada una codificada por ejemplo, en modo inter con respecto a la al menos una vista VpR2 a VpRw predictiva correspondiente. También se supone que la dicha al menos una vista Vu,j actual ha sido codificada en inter con respecto a al menos la vista VRw. Según la variante de realización representada, la porción de la señal F'1 comprende ventajosamente un campo CH10 que contiene una primera información, designada por ejemplo por el símbolo O, y representativa del hecho de que la primera vista VR1 de los subconjuntos de vistas de la secuencia de imágenes considerada ha sido codificada intra, el índice pR2 de al menos la vista VpR2 que sirvió para la predicción de la vista VR2, el índice pRw de al menos la vista VpRw que sirvió para la predicción de la vista v Rw, el índice Rw de al menos la vista VRw predictiva que sirvió para la predicción de la dicha al menos una vista Vu,j actual.
De acuerdo con esta variante, se procede entonces, a lo largo de la etapa C2a) representada en la figura 1A, a la elaboración de una porción de la señal F'1 de datos, específicamente asociada con la codificación de la dicha al menos una vista Vu,j actual.
Una tal elaboración consiste en añadir a la señal F'1, de manera similar a la figura 4A, un campo CH30 que contiene el tipo de predicción, en este caso, inter, asociada a la dicha al menos una vista Vu,j actual, el al menos un vector MVpu,j de movimiento que describe el movimiento entre la dicha al menos una vista VRw predictiva y la dicha al menos una vista Vu,j actual, el conjunto Vcqu,j de datos codificados entrópicamente asociados con la dicha al menos una vista Vu,j actual. El campo CH30 se añade a los siguientes campos ya presentes en la señal F'1:
- el campo CH11 añadido previamente durante la codificación de la primera vista VR1 del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción (intra) asociada a esta vista, así como el conjunto VcqR1 de datos codificados entrópicamente asociado a esta vista,
- el campo CH12 añadido previamente durante la codificación de la segunda vista VR2 del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción (inter) asociado a esta vista, el al menos un vector MVR2 de movimiento que describe el movimiento entre la al menos una vista VpR2 predictiva y la vista VR2, el conjunto VcqR2 de datos codificados entrópicamente asociado con la vista VR2,
- el campo CHw añadido previamente durante la codificación de la vista VRw del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción (inter) asociado a la vista VRw de la secuencia de imágenes considerada, el al menos un vector MVRw de movimiento que describe el movimiento entre la al menos una vista VpRw predictiva y la vista VRw, el conjunto VcqRw de datos codificados entrópicamente asociado con la vista VRw.
Según un modo de realización, una tal elaboración consiste además en añadir a la señal F'1, en el campo CH10, el índice Rw de al menos la vista VRw predictiva que sirvió para la predicción de la dicha al menos una vista Vu,j actual, como complemento de los índices pR2, ..., pRw de vistas predictivas ya presentes en el campo CH10.
Según otro modo de realización, la adición del índice Rw no es necesaria en el caso de que ya esté presente en el campo CH10. Según este otro modo de realización, el campo CH10 ha sido completado por todos los índices de las vistas predictivas de las vistas del subconjunto de vistas considerado, antes de la codificación de estas vistas.
Gracias a la presencia del campo CH10, las dependencias de codificación asociadas a la dicha al menos una vista Vu,j actual se indican de manera reagrupada en la señal F'1 y, por tanto, se harán accesibles de manera rápida y directamente durante la decodificación de la dicha al menos una vista Vu,j actual.
De manera en sí conocida, a lo largo de una etapa C3a) representada en la figura 1A, se procede a la decodificación de la al menos una vista Vu,j actual.
Una tal etapa C3a) se implementa a través de un dispositivo MDV_C1 de decodificación de vistas, tal como se representa en la figura 2A.
Un tal dispositivo MDV_C1 de decodificación de vistas comprende de manera convencional:
- un dispositivo MDE_C1 de decodificación entrópica, por ejemplo, de tipo CABAC («Context Adaptive Binary Arithmetic Coder» en inglés) o incluso un decodificador de Huffman conocido como tal,
- un módulo MQ_1_C1 de decuantificación,
- un módulo MT_1_C1 de transformación inversa de tipo DCT'1 (abreviatura en inglés de «Discrete Cosine Transform»), DST'1 (abreviatura en inglés de «Discrete Sine Transform»), DWT'1 (abreviatura en inglés de «Discrete Wavelet Transform»),
- un módulo PRED_1_C1 de predicción inversa,
- un módulo CAL-1_C1 de cálculo de reconstrucción de vista.
A lo largo de la etapa C3a), se procede a una subetapa C31a) de decodificación entrópica de los datos Vcqu,j codificados entrópicamente asociados a la al menos una vista Vu,j actual, según un orden predeterminado. En el modo preferido de realización, la decodificación efectuada es una decodificación entrópica de tipo aritmética o de Huffman. La subetapa C31a) consiste entonces en:
- leer el o los símbolo(s) de un conjunto predeterminado de símbolos que están asociados con los datos Vcqu,j codificados entrópicamente de la vista Vu,j,
- asociar las informaciones digitales, tales como bits, con el(los) símbolo(s) leído(s).
Al final de la subetapa C31a) mencionada anteriormente, se obtiene una pluralidad de informaciones digitales asociadas con los datos cuantificados que han sido codificados a lo largo de la etapa C15a) mencionada anteriormente.
Una tal subetapa C31a) de decodificación entrópica es implementada por el dispositivo MDE_C1 de decodificación entrópica representado en la figura 2A.
A lo largo de la subetapa C31a) mencionada anteriormente, también se decodifica el índice de la vista Vpu,j predictiva que ha sido utilizada para predecir la al menos una vista Vu,j actual en la subetapa C11a) de la figura 1A.
La etapa de codificación C3a) también comprende una subetapa C32a) a lo largo de la cual se procede a la decuantificación de las informaciones digitales obtenidas al final de la subetapa C31a), según una operación convencional de decuantificación que es la operación inversa de la cuantificación implementada en la subetapa C14a). Luego se obtiene un conjunto VDqu,j de coeficientes decuantificados al final de esta subetapa. Una tal subetapa C32a) es implementada por el dispositivo MQ-1_C1 de decuantificación, tal como se representa en la figura 2A.
La etapa de codificación C3a) también comprende una subetapa C33a) a lo largo de la cual se procede a una transformación del conjunto VDqu,j de coeficientes cuantificados que es de tipo DCT-1, DST-1 o DWT-1. Esta transformación es la operación inversa de la transformación efectuada en la subetapa C13a). Al final de esta subetapa, se obtiene una vista residual decodificada, tal como la designada por la referencia VDru,j. Una tal operación es efectuada por el dispositivo MT-1_C1 representado en la figura 2A.
La etapa de codificación C3a) también comprende una subetapa C34a) de predicción de la dicha al menos una vista Vu,j actual por decodificar, por selección, en el búfer MT_C1 de la figura 2A, de la al menos una vista Vpu,j predictiva óptima obtenida al final de la subetapa C11a) mencionada anteriormente, que está asociada con el índice decodificado al final de la subetapa C31a).
Una tal subetapa C34a) es implementada por el dispositivo de predicción PRED-1_C1 representado en la figura 2A.
La etapa de codificación C3a) también comprende una subetapa de cálculo C35a), a lo largo de la cual se procede a la construcción (también denominada predicción inversa) de la al menos una vista VDu,j decodificada añadiendo a la al menos una vista VDru,j residual decodificada obtenida al final de la subetapa C33a), al menos la vista Vpu,j predictiva que ha sido identificada en la subetapa C31a) mencionada anteriormente.
Una tal subetapa C35a) es implementada por el dispositivo CAL-1_C1 de cálculo representado en la figura 2A.
Las etapas de codificación C1a) a C3a) que se acaban de describir más arriba se implementan entonces para cada una de las vistas Vu,1, Vu,2, ..., Vu,n por codificar de la imagen IMVj multivista actual considerada.
Con referencia ahora a la figura 5A, se representa un ejemplo de codificación de al menos una vista Vu,j actual según el procedimiento de codificación de la figura 1A. En el ejemplo representado, la imagen IMVj multivista actual es la cuarta imagen IMV4 de una secuencia de imágenes multivista, comprendiendo cada imagen multivista, por ejemplo, seis vistas. La al menos una vista actual codificada que se considera en este ejemplo es, por ejemplo, la tercera vista V3,4 comenzando desde la izquierda, de la imagen IMV4 multivista actual. La vista V3,4 se representa en negrita en la figura 5A.
En el ejemplo representado, la vista V3,4 actual se codifica en modo Inter a partir de la vista V3,3 de la imagen IMV3 multivista. La vista V3,3 ha sido codificada en Inter con respecto a la vista V3,2 de la imagen IMV2 multivista. La vista V3,2 ha sido codificada en Inter con respecto a la vista V3,1 de la imagen IMV1 multivista. La vista V3,1 ha sido codificada en Intra, estando este modo representado por rayas en la figura 5A. Las dependencias de codificación de una vista a otra están representadas por flechas en la figura 5A. En otras palabras, la vista V3,4 actual se codifica según un árbol de codificación que comprende la vista V3,1, la vista V3,2 y la vista V3,3. Un tal árbol se representa en negrita en la figura 5A.
Decodificación
A continuación, se describirá un primer modo de realización de la invención, en el cual el procedimiento de decodificación se utiliza para decodificar al menos una vista actual perteneciente a una imagen multivista que ha sido previamente codificada de acuerdo con el procedimiento de codificación de la figura 1A y cuyos datos codificados están contenidos en la señal F1 o F'1 de datos. La al menos una vista actual es capaz de ser decodificada por un decodificador de acuerdo con uno cualquiera de los estándares de decodificación de video actuales o futuros.
El procedimiento de decodificación según el primer modo de realización de la invención se implementa, por ejemplo, en forma de software o hardware mediante modificaciones de un tal decodificador.
El procedimiento de decodificación según la invención se representa en forma de un algoritmo que comprende las etapas D1a) a D2a), tales como las representadas en la figura 6A.
Según este primer modo de realización, el procedimiento de decodificación según la invención se implementa en un dispositivo de decodificación o decodificador DO1 representado en la figura 7A.
Como se ilustra en la figura 7A, un tal dispositivo decodificador comprende:
- una entrada ENT_D1 para recibir la señal F1 o F'1 de datos representativa de la imagen multivista actual que ha sido previamente codificada,
- un circuito CT_D1 de procesamiento para implementar el procedimiento de decodificación según la invención, conteniendo el circuito c T_D1 de procesamiento:
• una memoria MEM_D1 que comprende un búfer MT_D1,
• un procesador PROC_D1 controlado por un programa PG_D1 de ordenador,
- una salida SOR_D1 para entregar al menos una vista actual reconstruida que contiene los datos obtenidos al final de la decodificación según el primer modo de realización.
En la inicialización, las instrucciones de código del programa PG_D1 de ordenador se cargan, por ejemplo, en una memoria RAM, MR_D1, antes de ser ejecutadas por el circuito CT_D1 de procesamiento.
El procedimiento de decodificación representado en la figura 6A se aplica a cualquier vista Vu,j actual de una imagen IMVj multivista actual fija o bien que hace parte de una secuencia de imágenes IMV1, ..., IMVj, ..., IMVk(1<í<K) multivista. Para este efecto, se identifican informaciones representativas de la al menos una vista Vu,j actual por decodificar: - ya sea en la porción correspondiente, representada en la figura 4A, de la señal F1 de datos recibida en el decodificador y entregada después del procedimiento de codificación de la figura 1A,
- o en la porción correspondiente, representada en la figura 4B, de la señal F'1 de datos recibida en el decodificador y entregada después del procedimiento de codificación de la figura 1A.
A lo largo de una etapa D1a) representado en la figura 6A, se procede, de manera en sí conocida, a la identificación, en la porción correspondiente de la señal F1 de datos:
- del conjunto Vcqu,j de datos asociados a la al menos una vista Vu,j actual, tales como los codificados entrópicamente al final de la subetapa de codificación C15a) de la figura 1A y contenidos en el campo CH3 de la señal F1 de datos representada en la figura 4A,
- de la información de identificación de la al menos una vista Vpu,j predictiva obtenida al final de la subetapa de predicción C11a) del procedimiento de codificación representado en la figura 1A y contenida en el campo CH2 de la señal F1 de datos representada en la figura 4A, consistiendo una tal información por ejemplo en el índice de la al menos una vista Vpu,j predictiva,
- del al menos un vector MVpu,j de movimiento utilizado en asociación con la al menos una vista Vpu,j predictiva, tal como el contenido también en el campo CH2,
- del tipo de predicción inter o intra.
Según una variante innovadora de la etapa D1a) representada en la figura 6A, se procede a la identificación, en la porción correspondiente de la señal F'1 de datos de la figura 4B:
- a partir del campo CH30, del conjunto Vcqu,j de datos asociados a la al menos una vista Vu,j actual, tales como los codificados entrópicamente al final de la subetapa de codificación C15a) de la figura 1A, del tipo de predicción inter asociada a la dicha en al menos una vista Vu,j actual, del al menos un vector MVpu,j de movimiento que describe el movimiento entre la al menos una vista VRw y la dicha al menos una vista Vu,j actual,
- a partir del campo CH10, del índice Rw de al menos la vista VRw que sirvió para la predicción de la dicha al menos una vista Vu,j actual, y posiblemente, si tales informaciones no son aún conocidas en el momento de la decodificación de la dicha al menos una vista Vu,j actual, de la información según la cual la primera vista VR1 fue predicha en Intra, del índice pR2 de al menos la vista VpR2 que sirvió para la predicción de la vista VR2, del índice pRw de al menos la vista VpRw que sirvió para la predicción de la vista VRw.
La etapa de identificación D1a) es implementada por un dispositivo MI_D1 de análisis de señal, tal como se representa en la figura 7A.
Según la invención, al final de la etapa D1a), se procede, a lo largo de una etapa D2a) representada en la figura 6A, a la decodificación de la al menos una vista Vu,j actual codificada entrópicamente.
Una tal etapa D2a) es implementada por un dispositivo MDV_D1 de decodificación de vistas, tal como se representa en la figura 7A.
A lo largo de la etapa de decodificación D2a), se procede de manera convencional a una subetapa D21a) de decodificación entrópica de los datos Vcqu,j codificados entrópicamente asociados a la dicha al menos una vista Vu,j actual por decodificar, según un orden predeterminado. En el modo preferido de realización, la decodificación efectuada es una decodificación entrópica de tipo aritmética o de Huffman. La subetapa D21a) consiste entonces en:
- leer el o los símbolo(s) de un conjunto predeterminado de símbolos que están asociados con el conjunto de datos Vcqu,j cuantificados en relación con la dicha al menos una vista Vu,j actual,
- asociar las informaciones digitales, tales como bits, con el(los) símbolo(s) leído(s).
Al final de la subetapa D21a) mencionada anteriormente, se obtiene una pluralidad de informaciones digitales asociadas a los datos cuantificados que han sido codificados a lo largo de la etapa de codificación entrópica C15a) de la figura 1A.
Una tal subetapa D21a) de decodificación entrópica es implementada por un dispositivo MDE_D1 de decodificación entrópica del dispositivo MDV_D1 de decodificación de vistas de la figura 7A.
A lo largo de la subetapa D21a) mencionada anteriormente, también se decodifica el índice de la al menos una vista Vpu,j predictiva que ha sido utilizada para predecir la al menos una vista Vu,j actual durante la subetapa C11a) de la figura 1A. La al menos una vista Vpu,j predictiva es una vista que ya ha sido decodificada o no. En el caso de que la al menos una vista Vpu,j predictiva haya sido decodificada, se almacena previamente en el búfer MT_D1 del decodificador DO1 de la figura 7a . De lo contrario, se decodifica a partir de una o más vistas ya decodificadas en el recorrido de decodificación determinado en una etapa siguiente.
La etapa de decodificación D2a) también comprende una subetapa D22a) a lo largo de la cual se procede a la decuantificación de las informaciones digitales obtenidas al final de la subetapa D21a) según una operación convencional de decuantificación que es la operación inversa de la cuantificación implementada durante la subetapa de cuantificación C14a) de la figura 1A. Luego se obtiene un conjunto VDqu,j de coeficientes decuantificados al final de la subetapa D22a). Una tal subetapa D22a) es implementada por un dispositivo MQ-1_D1 de decuantificación del dispositivo MDV_D1 de decodificación de vistas de la figura 7A.
La etapa de decodificación D2a) también comprende una subetapa D23a) a lo largo de la cual se procede a una transformación del conjunto VDqu,j de coeficientes decuantificados que es de tipo DCT-1, DST-1 o DWT-1. Esta transformación es la operación inversa de la transformación efectuada en la subetapa C13a) de la figura 1A. Al final de la subetapa D23a), se obtiene al menos la vista residual actual decodificada, designada por la referencia VDru,j. Una tal operación es efectuada por un dispositivo MT1_D1 de transformación inversa de tipo DCT-1 (abreviatura en inglés de «Discrete Cosine Transform»), DST-1 (abreviatura en inglés de «Discrete Sine Transform»), DWT-1 (abreviatura en inglés de «Discrete Wavelet Transform»). El dispositivo MT-1_D1 de transformación pertenece al dispositivo MDV_D1 de decodificación de vistas de la figura 7A.
Según la invención, a lo largo de la etapa de decodificación D2a), se procede a una subetapa D24a) de determinación, en un conjunto de vistas que pertenecen a la imagen IMVj multivista actual o bien a otra imagen multivista de la secuencia, de al menos un recorrido de vistas necesarias para la decodificación de la dicha al menos una vista Vu,j actual. El dicho al menos un recorrido comprende al menos una vista aún no decodificada, designada por la referencia Vndi. Una tal operación es efectuada por un dispositivo CAL1_D1 de cálculo perteneciente al dispositivo MDV_D1 de decodificación de vistas de la figura 7A.
Según la invención, a lo largo de una subetapa D25a) representada en la figura 6A, se procede a la decodificación de la al menos una vista Vndi aún no decodificada situada en el recorrido determinado.
Como ya se ha explicado anteriormente, en función de los datos de codificación de la al menos una vista Vndi aún no decodificada que pueden ser inscritos en la señal F1 de datos, si la al menos una vista Vndi pertenece a la imagen IMVj multivista actual, o en otra señal de datos representativa de otra imagen multivista de la secuencia, si la al menos una vista Vndi pertenece a esta otra imagen multivista, la al menos una vista Vndi aún no decodificada será según el caso:
- decodificada en Intra,
- decodificada con referencia a al menos una vista previamente decodificada de la dicha imagen IMVj multivista, - decodificada con referencia a al menos una vista previamente decodificada de otra imagen multivista de la secuencia, representando la dicha al menos una vista previamente decodificada la escena según la misma posición de visualización angular que la al menos una vista Vndi aún no decodificada o según a una posición de visualización angular diferente.
De manera conocida como tal, se procede a las siguientes operaciones:
- decodificación entrópica de los datos representativos de la al menos una vista Vndi aún no decodificada, entregando informaciones digitales asociadas,
- decuantificación de estas informaciones asociadas, entregando coeficientes decuantificados,
- transformación inversa de los coeficientes decuantificados, entregando al menos una vista VDrndi residual decodificada,
- y en el caso de que se haya aplicado el modo de predicción Inter, añadir la al menos una vista VDrndi residual decodificada a la al menos una vista previamente decodificada de la dicha imagen IMVj multivista o de otra imagen multivista de la secuencia.
Al final de estas operaciones se obtiene al menos una vista VDndi decodificada.
Según la invención, a lo largo de una subetapa D26a) representada en la figura 6A, se procede a la construcción (también denominada predicción inversa) de la al menos una vista VDu,j actual decodificada agregando a la al menos una vista VDru,j residual actual decodificada obtenida al final de la subetapa D23a), la al menos una vista VDndi decodificada que se obtuvo en la subetapa D25a) mencionada anteriormente.
Una tal subetapa D26a) es implementada por un dispositivo CAL2_D1 de cálculo que pertenece al dispositivo MDV_D1 de decodificación de vistas de la figura 7A.
La al menos una vista VDu,j actual decodificada es entonces entregada por la salida SOR_D1 del decodificador DO1, y luego se almacena en el búfer MT_D1 de modo que sea utilizada para la decodificación de una próxima vista por decodificar.
Con referencia ahora a la figura 8A, se representa un ejemplo de decodificación de al menos una vista Vu,j actual, tal como la codificada con referencia a la figura 5A.
En el ejemplo representado, cada vista actual considerada es la que un usuario elige requerir sucesivamente durante su navegación de una vista a otra en la secuencia de imágenes IMV1 a IMV4 multivista. Por ejemplo, se trata de las vistas V5,1, V6,2, V5,3, V4,3 y luego V3,4. Un tal recorrido de navegación se representa en negrita en la figura 8A. a) Ahora se considera la primera vista V5,1 actual por decodificar. Esta vista se decodifica en Intra (representada por rayas en la figura 8A), es decir, sin referencia a otras vistas. Por lo tanto, el procedimiento según la invención no se aplica para la vista V5,1 actual considerada. Una vez decodificada, la vista V5,1 se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas.
b) Ahora se considera la segunda vista V6,2 actual por decodificar. Según la invención, se determina un recorrido de decodificación de la vista V6,2 actual que contiene las vistas V6,1 y V5,2 de referencia que aún no han sido decodificadas y que son necesarias para la decodificación de la vista V6,2 actual.
La vista V6,1 se decodifica con referencia a la vista V5,1 previamente decodificada.
La vista V5,2 se decodifica con referencia a la vista V5,1 previamente decodificada.
La vista V6,2 actual se decodifica luego con referencia a las vistas V6,1 y V5,2 decodificadas. Una vez decodificadas, las vistas V6,1, V5,2 y V6,2 se almacenan en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizadas para la decodificación de próximas vistas.
c) Ahora se considera la tercera vista V5,3 actual por decodificar. Esta vista se decodifica con referencia a la vista V5,2. Sin embargo, la vista V5,2 ya se ha decodificado anteriormente. Por lo tanto, el procedimiento de decodificación según la invención no se aplica a la vista V5,3 actual considerada. Una vez decodificada, la vista V5,3 se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas. d) Ahora se considera la cuarta vista V4,3 actual por decodificar. Según la invención, se determina un recorrido de decodificación de la vista V4,3 actual que contiene las vistas V4,2 y V3,3 de referencia que aún no han sido decodificadas y que son necesarias para la decodificación de la vista V4,3 actual. El recorrido de decodificación contiene además la vista V3,2 de referencia que aún no ha sido decodificada y que es necesaria para la decodificación de las vistas V3,3 y V4,2, la vista V4,1 de referencia que aún no ha sido decodificada y que es necesaria para la decodificación de la vista V4,2, así como la vista V3,i de referencia que aún no ha sido decodificada y que es necesaria para la decodificación de las vistas V4,1 y V3,2. Una vez que se ha determinado el recorrido de decodificación:
- la vista V3,1 se decodifica en Intra (representada por rayas en la figura 8A), es decir sin referencia a otras vistas. Una vez decodificada, la vista V3,1 se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas;
- la vista V4,1 se decodifica con referencia a la vista V3,1 decodificada previamente y luego se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas;
- la vista V3,2 se decodifica con referencia a la vista V3,1 decodificada previamente y luego se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas;
- la vista V4,2 se decodifica con referencia a las vistas V4,1 y V3,2 previamente decodificadas y luego se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas;
- la vista V3,3 se decodifica con referencia a la vista V3,2 previamente decodificada y luego se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas.
La vista V4,3 actual se decodifica luego con referencia a las vistas V4,2 y V3,3 decodificadas. Una vez decodificada, la vista V4,3 se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas.
e) Ahora se considera la quinta vista V3,4 actual por decodificar. Esta vista se decodifica con referencia a la vista V3,3, que a su vez se decodifica con referencia a la vista V3,2, que a su vez se decodifica con referencia a la vista V3,1. Sin embargo, las vistas V3,1 y V3,2 ya han sido decodificadas previamente. Por lo tanto, el procedimiento de decodificación según la invención no se aplica a la vista V3,4 actual considerada. Una vez decodificada, la vista V3,4 se almacena en la memoria MT_D1 del decodificador de la figura 7A, con vistas a ser utilizada para la decodificación de próximas vistas.
Por tanto, gracias a la determinación del recorrido de decodificación mencionada anteriormente, cuando se ha decodificado la vista V3,4, sólo se han decodificado 12 vistas de la secuencia en comparación con las 24 vistas necesariamente decodificadas por los decodificadores convencionales. Se trata de las vistas V3,1, V4,1, V5,1, Va,1, V3,2, V4,2, V5,2, Va,2, V3,3, V4,3, V5,3, V3,4 que están para este efecto señaladas en la figura 8A por una cruz «X».
Descripción detallada de un segundo modo de realización
Según un segundo modo de realización, la técnica de decodificación según la invención se basa en un procedimiento de codificación de imágenes multivista innovador, tal como el implementado a través de modificaciones de un codificador de acuerdo con uno cualquiera de los estándares de codificación de video actuales o futuros.
Codificación
El procedimiento de codificación de acuerdo con el segundo modo de realización se representa en forma de un algoritmo que comprende las etapas C1b) a C3b), tales como las representadas en la figura 1B.
Según el segundo modo de realización de la invención, el procedimiento de codificación se implementa en un dispositivo de codificación o codificador CO2 representado en la figura 2B.
Como se ilustra en la figura 2B, un tal dispositivo codificador comprende:
- una entrada ENT_C2 para recibir una imagen multivista actual por codificar,
- un circuito CT_C2 de procesamiento para implementar el procedimiento de codificación según el segundo modo de realización, conteniendo el circuito CT_C2 de procesamiento:
• una memoria MEM_C2 que comprende un búfer MT_C2,
• un procesador PROC_C2 controlado por un programa PG_C2 de ordenador,
- una salida SOR_C2 para entregar un flujo codificado que contiene los datos obtenidos al final de la codificación de la imagen multivista actual.
En la inicialización, las instrucciones de código del programa PG_C2 de ordenador se cargan, por ejemplo, en una memoria RAM, MR_C2, antes de ser ejecutadas por el circuito CT_C2 de procesamiento.
El procedimiento de codificación representado en la figura 1B se aplica a cualquier imagen IMVj multivista actual fija, tal como se representa en la figura 3A o bien que hace parte de una secuencia de imágenes IMV1, ..., IMVj, ..., IMVK(1<j<K) multivista por codificar, tal como se representa en la figura 3B.
A lo largo de una etapa C1b) representada en la figura 1B, para una imagen IMVj multivista actual, se procede a la codificación de la dicha al menos una vista Vu,j.
Una tal etapa C1b) es implementada por un dispositivo MCV_C2 de codificación de vistas, tal como se representa en la figura 2B.
Un tal dispositivo MCV_C2 de codificación de vistas comprende de manera convencional:
- un dispositivo PRED_C2 de predicción,
- un dispositivo CAL_C2 de cálculo de datos residuales,
- un dispositivo MT_C2 de transformación de tipo DCT, DST, DWT,
- un dispositivo MQ_C2 de cuantificación,
- un dispositivo MCE_C2 de codificación entrópica por ejemplo de tipo CABAC o incluso un codificador de Huffman conocido como tal.
A lo largo de la etapa C1b), de acuerdo con la invención, se procede a una subetapa C11 b) de predicción de la dicha al menos una vista Vu,j actual con respecto a una primera vista y con respecto a al menos una segunda vista, según técnicas conocidas de predicción intra y/o inter. Para este efecto, la dicha al menos una vista Vu,j actual se predice de acuerdo con un primer modo de predicción y a al menos un segundo modo de predicción seleccionado entre una pluralidad de modos de predicción predeterminados. Según contexto de codificación, el primer y al menos el segundo modos de predicción pueden ser idénticos o diferentes. Por ejemplo, en el caso de una codificación de tipo MVC, y como ya se ha explicado anteriormente, se puede predecir la dicha al menos una vista Vu,j actual:
- independientemente de las otras vistas de la imagen IMVj multivista o de la secuencia de K de imágenes IMV1, IMV2, ..., IMVj, ..., IMVk multivista,
- con respecto a otra vista de la imagen IMVj multivista actual,
- con respecto a una vista que pertenece a otra imagen multivista que la dicha imagen multivista actual y que representa la escena según la misma posición angular de visualización que la dicha al menos una vista actual,
- con respecto a otra imagen multivista que la dicha imagen IMVj multivista actual y que representa la escena según una posición angular de visualización diferente a la de la dicha al menos una vista actual.
Las al menos dos vistas predictivas utilizadas para predecir la dicha al menos una vista Vu,j actual son vistas que ya han sido codificadas y luego decodificadas. Las al menos dos vistas predictivas se almacenan previamente en el búfer MT_C2 del codificador CO2, tal como se muestra en la figura 2B.
Para la al menos una vista Vu,j actual por codificar, se obtienen al menos dos vistas Vp1 u,j y Vp2u,j predictivas óptimas después de una puesta en competencia de los dichos modos de predicción predeterminados, por ejemplo, minimizando un criterio de tasa de distorsión bien conocido por los expertos en la técnica. Cada una de las al menos dos vistas Vp1u,j y Vp2u,j predictivas óptimas se considera como una misma aproximación de la dicha al menos una vista Vu,j actual considerada.
Una tal subetapa C11 b) es implementada por el dispositivo PRED_C2 de predicción representado en la figura 2B.
La etapa de codificación C1b) también comprende una subetapa C12b) a lo largo de la cual se procede al cálculo de la diferencia entre la dicha al menos una vista Vu,j actual y, según la invención, cada una de las al menos dos vistas Vp1 u,j y Vp2u,j predictivas óptimas que han sido seleccionadas al final de la subetapa C11b).
A continuación, se obtienen al menos dos vistas residuales Vr1u,j y Vr2u,j al final de la subetapa C12b).
Una tal subetapa C12b) es implementada por el dispositivo CAL_C2 de cálculo representado en la figura 2B.
La etapa de codificación C1b) también comprende una subetapa C13b) a lo largo de la cual se procede a la transformación de las al menos dos vistas Vr1u,j y Vr2u,j residuales según una operación convencional de transformación directa, tal como, por ejemplo, una transformación de tipo DCT, DST o dWt , para producir según la invención al menos dos vistas transformadas, designadas respectivamente por las referencias Vt1u,j y Vt2u,j. Una tal operación es efectuada por el dispositivo MT_C2 representado en la figura 2B.
La etapa de codificación C1b) también comprende una subetapa C14b) a lo largo de la cual se procede a la cuantificación de las al menos dos vistas Vt1u,j y Vt2u,j transformadas según una operación convencional de cuantificación, tal como por ejemplo una cuantificación escalar o vectorial. Según la invención, al final de esta subetapa se obtienen al menos dos conjuntos Vq1u,j y Vq2u,j de coeficientes cuantificados. Una tal subetapa C14b) es implementada por medio del dispositivo MQ_c 2 de cuantificación, tal como se representa en la figura 2 B.
La etapa de codificación C1b) también comprende una subetapa C15b) a lo largo de la cual se procede de manera convencional a la codificación de al menos dos conjuntos Vq1u,j y Vq2u,j de coeficientes, según un orden predeterminado. Según la invención, al final de la subetapa C15b) se obtienen al menos dos conjuntos Vcq1u,j y Vcq2u,j de datos codificados.
En el modo preferido de realización, la codificación efectuada es una codificación entrópica de tipo aritmético o de Huffman. La subetapa C15b) consiste entonces en:
- leer el o los símbolo(s) de un conjunto predeterminado de símbolos que están asociados con los al menos dos conjuntos Vq1u,j y Vq2u,j de coeficientes cuantificados considerados para la dicha al menos una vista Vu,j,
- asociar las informaciones digitales, tales como bits, con el(los) símbolo(s) leído(s).
Una tal subetapa C15b) de codificación de entrópica es implementada por el dispositivo MCE_C2 de codificación entrópica representado en la figura 2B.
Al final de la etapa de codificación C1b) de la vista Vu,j, se procede, a lo largo de una etapa C2b) representada en la figura 1B, a la elaboración de una señal F2 de datos que, como se representa en la figura 4C, comprende según la invención:
- un campo CH'11 que contiene el tipo de predicción (inter o intra) aplicado por primera vez a la subetapa C11 b) de la figura 1B, y si es necesario, el modo de predicción seleccionado,
- si el modo de predicción Inter ha sido aplicado, un campo CH'21 que contiene el índice de la primera vista Vp1u,j predictiva seleccionada al final de la subetapa C11b) y el vector MVp1u,j de movimiento utilizado,
- un campo CH'31 que contiene el primer conjunto de datos Vcq1u,j codificados entrópicamente asociados con la dicha al menos una vista Vu,j actual,
- un campo CH'12 que contiene el tipo de predicción (inter o intra) aplicado al menos una segunda vez a la subetapa C11 b) de la figura 1B, y si es necesario, el modo de predicción seleccionado,
- si el modo de predicción Inter ha sido aplicado, un campo CH'22 que contiene el índice de la al menos segunda vista Vp2u,j predictiva seleccionada al final de la subetapa C11b) y el vector MVp2u,d de movimiento utilizado,
- un campo CH'32 que contiene al menos el segundo conjunto Vcq2u,j de datos codificados entrópicamente asociados con la dicha al menos una vista Vu,j actual.
A continuación, se entrega una tal señal a través de la salida SOR_C2 del codificador CO2 de la figura 2B, y luego se transmite a través de una red de comunicación (no se representa) a un terminal remoto. Este incluye un decodificador que se describirá con más detalle en la continuación de la descripción.
La etapa C2b) de producción de una tal señal es implementada por el dispositivo MGF2 de generación de señales de datos, tal como se representa en la figura 2B.
Según una variante de realización innovadora propia de la invención, para cada una de las vistas de la secuencia de imágenes considerada, o para cada una de las vistas de un subconjunto de vistas de la secuencia de imágenes considerada, habiendo sido las dichas vistas codificadas según un modo de predicción intra o inter, se propone señalar en un campo particular de la señal F'2:
- ya sea una información representativa del hecho de que la vista considerada en la secuencia de imágenes ha sido codificada en Intra,
- o una información representativa del índice de la al menos una vista predictiva que ha sido utilizada para predecir la vista considerada en la secuencia de imágenes.
En el ejemplo representado en la figura 4D, donde se representa, por razones de simplificación, únicamente una porción de la señal F'2 en la cual se señala únicamente un subconjunto de vistas de la secuencia de imágenes considerada, el cual contiene la dicha al menos una vista Vu,j actual que ha sido codificada, así como un número W de vistas VR1, ..., VRw que han sido codificadas antes de la dicha al menos una vista Vu actual, habiendo sido la dicha primera vista VR1 codificada en modo intra y habiendo sido las otra vistas VR2 a VRw cada una codificada, por ejemplo, en modo inter con respecto a al menos una vista VpR2 a VpRw predictiva correspondiente. También se supone que la dicha al menos una vista Vu,j actual ha sido codificada en inter con respecto a una primera vista VRw1 de la secuencia de imágenes considerada y con al menos una segunda vista VRw2 de la secuencia de imágenes considerada.
Según la variante de realización representada, la porción de la señal F'2 comprende ventajosamente un campo CH'101 que contiene una primera información, designada por ejemplo por el símbolo O, y representativa del hecho de que la primera vista VR1 de los subconjuntos de vistas de la secuencia de imágenes considerada ha sido codificada en intra, el índice pR2 de al menos la vista VpR2 que sirvió para la predicción de la vista VR2, el índice pRw1 de al menos la vista VpRwi que sirvió para la predicción de la vista VRw i, el índice pRw2 de al menos la vista VpRw2 que sirvió para la predicción de la vista VRw2, el índice Rwi de la dicha primera vista VRwi predictiva que puede servir para la predicción de la dicha al menos una vista Vu,j actual, el índice Rw2 de la dicha al menos segunda vista VRw2 predictiva que puede servir para la predicción de la dicha al menos una vista Vu,j actual. Los índices Rwi y Rw2 están reagrupados juntos en el campo CH'101 y separados por el símbolo «/» para señalar que solo uno de ellos es seleccionado en función de la elección de la vista VRwi o VRw2 predictiva que se implementa para predecir la dicha al menos una vista Vu,j actual.
De acuerdo con esta variante, se procede entonces, a lo largo de la etapa C2b) representada en la figura 1B, a la elaboración de una porción de la señal F'2 de datos específicamente asociada a la codificación de la dicha al menos una vista Vu,j actual.
Una tal elaboración consiste en añadir a la señal F'2, de manera similar a la figura 4C:
- un campo CH'31 que contiene el tipo de predicción inter asociado con la dicha al menos una vista Vu,j actual, describiendo el vector MVp1u,j de movimiento el movimiento entre la primera vista VRwi predictiva y la dicha al menos una vista Vu,j actual, el conjunto Vcq1u,j de datos codificados entrópicamente asociados con la dicha al menos una vista Vu,j actual,
- un campo CH'32 que contiene el tipo de predicción inter asociado con la dicha al menos una vista Vu,j actual, describiendo el vector MVp2u,j de movimiento el movimiento entre la al menos segunda vista VRw2 predictiva y la dicha al menos una vista Vu,j actual, el conjunto Vcq2u,j de datos codificados entrópicamente asociados con la dicha al menos una vista Vu,j actual.
Los campos CH'31 y CH'32 se añaden a los siguientes campos ya presentes en la señal F'2:
- el campo CH'111 añadido previamente durante la codificación de la primera vista VR1 del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción asociado a esta vista, así como el conjunto VcqR1 de datos codificados entrópicamente asociado a esta vista,
- el campo CH'112 añadido previamente durante la codificación de la segunda vista VR2 del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción (inter) asociado a esta vista, describiendo el vector MVR2 de movimiento el movimiento entre la al menos una vista VpR2 predictiva y la vista VR2, el conjunto VcqR2 de datos codificados entrópicamente asociado con la vista VR2,
- un campo CH'w añadido previamente durante la codificación de la vista VRw1 del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción (inter) asociado a la vista VRw1, describiendo el vector MVRw1 de movimiento el movimiento entre la al menos una vista VpRw1 predictiva y la vista VRw1, el conjunto VcqRw1 de datos codificados entrópicamente asociado con la vista VRw1,
- un campo CH'w2 añadido previamente durante la codificación de la vista VRw2 del subconjunto de vistas de la secuencia de imágenes considerada y que contiene el tipo de predicción (inter) asociado a la vista VRw2 de la secuencia de imágenes considerada, describiendo el vector MVRw2 de movimiento el movimiento entre la al menos una vista VpRw2 predictiva y la vista VRw2, el conjunto VcqRw2 de datos codificados entrópicamente asociado con la vista VRw2.
Según un modo de realización, una tal elaboración consiste además en añadir a la señal F'2, en el campo CH'101, además de los índices pR2, ..., pRw1, pRw2 de vistas predictivas ya presentes en el campo CH'101, el índice Rw de la primera vista VRw1 predictiva que sirvió para la predicción de la dicha al menos una vista Vu,j actual y el índice Rw2 de la al menos segunda vista VRw2 predictiva que sirvió para la predicción de la dicha al menos una vista Vu,j actual.
Según otro modo de realización, la adición de los índices Rw1 y Rw2 no es necesaria en el caso de que estos índices ya estén presentes en el campo CH'101. Según este otro modo de realización, el campo CH'101 se ha completado para todos los índices de las vistas predictivas de las vistas del subconjunto de vistas considerado, antes de la codificación de estas vistas.
Gracias a la presencia del campo CH'101, las dependencias de codificación asociadas a la dicha al menos una vista Vu,j actual se indican de forma reagrupada en la señal F'2 y, por tanto, se harán accesibles de manera rápida y directamente durante la decodificación de la dicha al menos una vista Vu,j actual.
De manera en sí conocida, a lo largo de una etapa C3b) representada en la figura 1B, se procede a la decodificación de la dicha al menos una vista Vu,j actual.
Una tal etapa C3b) es implementada por un dispositivo MDV_C2 de decodificación de vistas, tal como se representa en la figura 2B.
Un tal dispositivo MDV_C2 de decodificación de vistas comprende de manera convencional:
- un dispositivo MDE_C2 de decodificación entrópica, por ejemplo, de tipo CABAC o incluso un decodificador de Huffman conocido como tal,
- un módulo MQ-1_C2 de decuantificación,
- un módulo MT-1_C2 de transformación inversa de tipo DCT-1, DST-1, DWT-1,
- un módulo PRED-1_C2 de predicción inversa,
- un módulo CAL_1_C2 de cálculo de reconstrucción de vistas.
A lo largo de la etapa C3b), según la invención, se procede a una subetapa C31b) de decodificación entrópica de los al menos dos conjuntos Vcq1u,j y Vcq2u,j de datos codificados entrópicamente que están asociados con la dicha al menos una vista Vu,j actual. En el modo preferido de realización, la decodificación efectuada es una decodificación entrópica de tipo aritmético o de Huffman. La subetapa C31b) consiste entonces en:
- leer el o los símbolo(s) de un conjunto predeterminado de símbolos que están asociados con cada uno de los conjuntos Vcq1 u,j y Vcq2u,j de datos codificados entrópicamente de la dicha al menos una vista Vu,j actual,
- asociar las informaciones digitales, tales como bits, con el(los) símbolo(s) leído(s).
Al final de la subetapa C31b) mencionada anteriormente, se obtiene una pluralidad de informaciones digitales asociadas según la invención a al menos dos conjuntos Vcq1u,j y Vcq2u,j de datos cuantificados que han sido codificados a lo largo de la etapa C15b) mencionada anteriormente.
Una tal subetapa C31b) de decodificación entrópica es implementada por el dispositivo MDE_C2 de decodificación entrópica representado en la figura 2B.
A lo largo de la subetapa C31b) mencionada anteriormente, también se decodifica el índice de la primera vista Vp1u,j predictiva y de la al menos segunda vista Vp2u,j predictiva que se utilizaron para predecir la dicha al menos una vista Vu,j actual en la subetapa C11 b) de la figura 1B.
La etapa de codificación C3b) también comprende una subetapa C32b) a lo largo de la cual se procede a la decuantificación de las informaciones digitales obtenidas al final de la subetapa C31b), según una operación convencional de decuantificación que es la operación inversa de la cuantificación implementada en la subetapa C14b). Al final de esta subetapa se obtienen al menos dos conjuntos VDq1u,j y VDq2u,j de coeficientes decuantificados. Una tal subetapa C32b) es implementada por el dispositivo MQ'1_C2 de decuantificación, tal como se representa en la figura 2B.
La etapa de codificación C3b) también comprende una subetapa C33b) a lo largo de la cual se procede a una transformación de cada uno de los al menos dos conjuntos VDq1u,j y VDq2u,j de coeficientes decuantificados, la cual es de tipo DCT'1, DST'1 o DWT'1. Esta transformación es la operación inversa de la transformación efectuada en la subetapa C13b). Al final de esta subetapa, según la invención, se obtienen al menos dos vistas residuales decodificadas, designadas respectivamente por las referencias VDr1u,j y VDr2u,j. Una tal operación es efectuada por el dispositivo MT'1_C2 representado en la figura 2B.
La etapa de codificación C3b) también comprende una subetapa C34b) de predicción de la dicha al menos una vista Vu,j actual por decodificar, por selección, en el búfer MT_C2 de la figura 2B, de una u otra de las al menos dos vistas Vp1u,j y Vp2u,j predictivas óptimas que se obtuvieron al final de la subetapa C11b) mencionada anteriormente y que están asociadas respectivamente a los dos índices decodificados al final de la subetapa C31b).
Una tal subetapa C34b) es implementada por el dispositivo PRED_1_C2 de predicción representado en la figura 2B.
La etapa de codificación C3b) también comprende una subetapa de cálculo C35b), a lo largo de la cual se procede a la construcción (también denominada predicción inversa) de la dicha al menos una vista VDu,j decodificada añadiendo a una u otra de las al menos dos vistas VDr1u,j y VDr2u,j residuales decodificadas obtenidas al final de la subetapa C33b), respectivamente una u otra de las al menos dos vistas Vp1u,j y Vp2u,j predictivas que se identificaron en la subetapa C31b) mencionada anteriormente.
Una tal subetapa C35b) es implementada por el dispositivo CAL_1_C2 de cálculo representado en la figura 2B.
Las etapas de codificación C1b) a C3b) que se acaban de describir más arriba se implementan entonces para cada una de las vistas Vu,1, Vu,2, ..., Vu,n por codificar de la imagen IMVj multivista actual considerada.
Con referencia ahora a la figura 5B, se representa un ejemplo de codificación de al menos una vista Vu,j actual de acuerdo con el procedimiento de codificación de la figura 1B. En el ejemplo representado, la imagen IMVj multivista actual es la cuarta imagen IMV4 de una secuencia de imágenes multivista, comprendiendo cada imagen multivista, por ejemplo, seis vistas. La al menos una vista actual codificada que se considera en este ejemplo es, por ejemplo, la tercera vista V3,4 de la imagen IMV4 multivista actual. La vista V3,4 se representa en negrita en la figura 5B.
En el ejemplo representado, la vista V3,4 actual se codifica en modo Inter a partir de la vista V2,3 o de la vista V3,3 de la imagen IMV3 multivista.
a) Cuando la vista V3,4 actual se codifica a partir de la vista V2,3, la vista V2,3 se codifica a su vez a partir de la vista V1,2, V2,2 o V3,2. Si se utiliza la vista V i,2 para codificar la vista V2,3, la vista V i ,2 se codifica a su vez a partir de la vista V i,i codificada en Intra, estando este modo representado por rayas en la figura 5B, o bien de la vista V2,i. Si la vista V i ,2 se codifica a partir de la vista V2,i, esta última se codifica a su vez con respecto a la vista V i,i. Si la vista V2,2 se utiliza para codificar la vista V2,3, la vista V2,2 se codifica a partir de la vista V i,i o de la vista V2,i o de la vista V3,i. Si se elige la vista V2,i, esta última se codifica con respecto a la vista V i,i. Si se elige la vista V3,i, esta última se codifica a partir de la vista V2,i, que a su vez se codifica con respecto a la vista V i,i. Si se utiliza la vista V3,2 para codificar la vista V2,3, la vista V3,2 se codifica a su vez a partir de la vista V2,i o a partir de la vista V3,i. Si se elige la vista V2,i, esta última se codifica con respecto a la vista V i,i. Si se elige la vista V3,i, esta última se codifica a partir de la vista V2,i, que a su vez se codifica con respecto a la vista Vi,i.
b) Cuando la vista V3,4 actual se codifica a partir de la vista V3,3, la vista V3,3 se codifica a su vez a partir de la vista V2,2 o V3,2. Si la vista V2,2 se utiliza para codificar la vista V3,3, la vista V2,2 se codifica a partir de la vista V i,i o a partir de la vista V2,i o a partir de la vista V3,i. Si se elige la vista V2,i, esta última se codifica con respecto a la vista Vi,i. Si se elige la vista V3,i, esta última se codifica a partir de la vista V2,i, que a su vez se codifica con respecto a la vista V i,i. Si la vista V3,2 se utiliza para codificar la vista V3,3, la vista V3,2 se codifica a partir de la vista V2,i o a partir de la vista V3,i. Si se elige la vista V2,i, esta última se codifica con respecto a la vista V i,i. Si se elige la vista V3,i, esta última se codifica a partir de la vista V2,i, que a su vez se codifica con respecto a la vista Vi,i.
Las dependencias de codificación de una vista a otra están representadas por flechas en la figura 5B.
Según el segundo modo de realización de codificación según la invención, se propone, por lo tanto, para codificar la vista actual V3,4 una pluralidad de árboles de codificación alternativa, estando el conjunto de estos árboles representado sin distinción, en negrita en la figura 5B.
Decodificación
A continuación, se describirá un segundo modo de realización de la invención, en el cual el procedimiento de decodificación se utiliza para decodificar al menos una vista actual perteneciente a una imagen multivista que ha sido previamente codificada de acuerdo con el procedimiento de codificación de la figura 1B y cuyos datos codificados están contenidos en la señal F2 o F'2 de datos. La dicha al menos una vista actual puede ser decodificada por un decodificador de acuerdo con uno cualquiera de los estándares de decodificación de video actuales o futuros.
El procedimiento de decodificación según el segundo modo de realización de la invención es, por ejemplo, implementado en forma de software o hardware mediante modificaciones de un tal decodificador.
El procedimiento de decodificación según la invención se representa en forma de un algoritmo que comprende las etapas D1b) a D2b), tales como las representadas en la figura 6B.
Según este primer modo de realización, el procedimiento de decodificación según la invención se implementa en un dispositivo de decodificación o decodificador DO2 representado en la figura 7B.
Como se ilustra en la figura 7B, un tal dispositivo decodificador comprende:
- una entrada ENT_D2 para recibir la señal F2 o F'2 de datos representativa de la imagen multivista actual que se codificó previamente,
- un circuito CT_D2 de procesamiento para implementar el procedimiento de decodificación según la invención, conteniendo el circuito c T_D2 de procesamiento:
• una memoria MEM_D2 que comprende un búfer MT_D2,
• un procesador PROC_D2 controlado por un programa PG_D2 de ordenador,
- una salida SOR_D2 para entregar al menos una vista actual reconstruida que contiene los datos obtenidos al final de la decodificación según el segundo modo de realización.
En la inicialización, las instrucciones de código del programa PG_D2 de ordenador se cargan, por ejemplo, en una memoria RAM, MR_D2, antes de ser ejecutadas por el circuito CT_D2 de procesamiento.
El procedimiento de decodificación representado en la figura 6B se aplica a cualquier vista Vu,j actual de una imagen IMVj multivista actual fija o bien que hace parte de una secuencia de imágenes IMV1, ..., IMVj, ..., IMVk(1^<K) multivista.
Para este efecto, se identifican las informaciones representativas de la dicha al menos una vista Vu,j actual por decodificar:
- ya sea en la porción correspondiente, representada en la figura 4C, de la señal F2 de datos recibida en el decodificador y tal como la entregada después del procedimiento de codificación de la figura 1B,
- o en la porción correspondiente, representada en la figura 4D, de la señal F'2 de datos recibida en el decodificador y tal como la entregada después del procedimiento de codificación de la figura 1B.
A lo largo de una etapa D1b) representada en la figura 6B, se procede, de manera en sí conocida, a la identificación, en la porción correspondiente de la señal F2 de datos:
- de los al menos primer y segundo conjuntos Vcq1u,j y Vcq2u,j de datos asociados a la dicha al menos una vista Vu,j actual, tales como los codificados entrópicamente al final de la subetapa de codificación C15b) de la figura 1B y contenidos respectivamente en los campos CH'31 y CH'32 de la señal F2 de datos representada en la figura 4C,
- de la información de identificación de las al menos dos vistas Vp1u,j y Vp2u,j predictivas obtenidas al final de la subetapa de predicción C11b) del procedimiento de codificación representado en la figura 1B y contenidas respectivamente en los campos CH'21 y CH'22 de la señal F2 de datos representada en la figura 4C, consistiendo una tal información por ejemplo en el índice de cada una de las al menos dos vistas Vp1u,j y Vp2u,j predictivas.
Según una variante innovadora de la etapa D1b) representada en la figura 6B, se procede a la identificación, en la porción correspondiente de la señal F'2 de datos de la figura 4D:
- a partir de los campos CH'31 y CH'32 respectivamente, de los al menos primer y segundo conjuntos Vcq1u,j y Vcq2u,j de datos asociados a la dicha al menos una vista Vu,j actual, tales como los codificados entrópicamente al final de la subetapa de codificación C15b) de la figura 1B,
- a partir del campo CH'101, del índice Rw de la primera vista VRw1 que sirvió para la predicción de la dicha al menos una vista Vu,j actual, del índice Rw2 de la al menos segunda vista VRw2 que sirvió para la predicción de la dicha al menos una vista Vu,j actual y posiblemente, si tales informaciones no se conocen aún en el momento de la decodificación de la dicha al menos una vista Vu,j actual, la información según la cual se predijo la primera vista VR1 en Intra, el índice pR2 de al menos la vista VpR2 que sirvió para la predicción de la vista VR2, ..., el índice pRw1 de al menos la vista VpRw1 que sirvió para la predicción de la vista VRw1, el índice pRw2 de al menos la vista VpRw2 que sirvió para la predicción de la vista VRw2.
La etapa de identificación D1 b) es implementada por un dispositivo MI_D2 de análisis de señal, tal como se representa en la figura 7B.
Según la invención, al final de la etapa D1b), se procede, a lo largo de una etapa D2b) representada en la figura 6B, a la decodificación de la dicha al menos una vista Vu,j codificada entrópicamente.
Una tal etapa D2b) es implementada por un dispositivo MDV_D2 de decodificación de vistas, tal como se representa en la figura 7B.
Según la invención, a lo largo de la etapa de decodificación D2b), se procede a una subetapa D21 b) de determinación, en un conjunto de vistas que pertenecen a la imagen IMVj multivista actual o bien a otra imagen multivista de la secuencia , de al menos un recorrido PR'u,j de vistas de referencia necesarias para la decodificación de la dicha al menos una vista Vu,j actual que, teniendo en cuenta los árboles de codificación alternativos implementados en la codificación, contiene una de la primera o al menos segunda vistas predictivas Vp1u,j y Vp2u,j. Según una primera alternativa, el dicho al menos un recorrido PR'u,j solo contiene una o más vistas de referencia ya decodificadas. Según una segunda alternativa, el dicho al menos un recorrido PR'u,j comprende al menos una vista aún no decodificada, designada por la referencia V'ndi. Una tal operación de determinación de recorrido es efectuada por un dispositivo CAL1_D2 de cálculo que pertenece al dispositivo MDV_D2 de decodificación de vistas de la figura 7b .
Si se ha implementado la segunda alternativa, a lo largo de una subetapa D22b) representada en la figura 6B, se procede a la decodificación de la al menos una vista aún no decodificada V'ndi situada en el recorrido determinado. Teniendo en cuenta el hecho de que esta segunda alternativa no se implementa de manera sistemática, se representa en línea discontinua en la figura 6B.
Como ya se ha explicado anteriormente, en función de los datos de codificación de la al menos una vista V'ndi aún no decodificada que pueden, ya sea ser inscritos en la señal F2 o F'2 de datos si la al menos una vista V'ndi pertenece a la imagen IMVj multivista actual, o en otra señal de datos representativa de otra imagen multivista de la secuencia si la al menos una vista V'ndi pertenece a esta otra imagen multivista, la dicha al menos una vista V'ndi aún no decodificada será según el caso:
- decodificada en Intra,
- decodificada con referencia a al menos una vista previamente decodificada de la dicha imagen IMVj multivista,
- decodificada con referencia a al menos una vista previamente decodificada de otra imagen multivista de la secuencia, representando la dicha al menos una vista previamente decodificada la escena según la misma posición de visualización angular que la dicha al menos una vista V'ndi aún no decodificada o según una posición de visualización angular diferente.
De manera conocida como tal, se procede a las siguientes operaciones:
- decodificación entrópica de los datos representativos de la dicha al menos una vista aún no decodificada V'ndi, entregando las informaciones digitales asociadas,
- decuantificación de estas informaciones asociadas, entregando coeficientes decuantificados,
- transformación inversa de los coeficientes decuantificados, entregando al menos una vista VD'rndi residual decodificada,
- y en el caso de que se haya aplicado el modo de predicción Inter, añadir la al menos una vista VD'rndi residual decodificada a la al menos una vista previamente decodificada de la dicha imagen IMVj multivista o de otra de imagen multivista de la secuencia.
Al final de estas operaciones, se obtiene al menos una vista VD'ndi decodificada.
A lo largo de la etapa de decodificación D2b), de acuerdo con la invención, en función de la geometría del al menos un recorrido PR'u,j de decodificación determinado en la subetapa anterior, se procede a una subetapa D23b) de selección de uno de los conjuntos Vcq1u,j o Vcq2u,j de datos codificados de manera entrópica asociados a la dicha al menos una vista Vu,j por decodificar.
Una tal subetapa D23b) es implementada por un dispositivo MS_D2 de selección del dispositivo MDV_D2 de decodificación de vistas de la figura 7B.
A lo largo de la etapa de decodificación D2b), se procede a una subetapa D24b) de decodificación entrópica de uno de los al menos dos conjuntos Vcq1u,j o Vcq2u,j de datos codificados de manera entrópica asociados a la dicha al menos una vista Vu,j por decodificar. En el modo preferido de realización, la decodificación efectuada es una decodificación entrópica de tipo aritmético o de Huffman. La subetapa D24b) consiste entonces en:
- leer el o los símbolo(s) de un conjunto predeterminado de símbolos que están asociados con el conjunto Vcq1u,j o Vcq2u,j de datos codificados de manera entrópica que ha sido seleccionado,
- asociar las informaciones digitales, tales como bits, con el(los) símbolo(s) leído(s).
Al final de la subetapa D24b) mencionada anteriormente, se obtiene una pluralidad de informaciones digitales asociadas al conjunto Vcq1u,j o Vcq2u,j de datos codificados de manera entrópica que ha sido seleccionado.
A lo largo de la etapa D24b), si es la señal F2 de la figura 4C la que se ha recibido en el decodificador, también se lee en el campo CH'21 o CH'22 de la porción de la señal F2 de datos:
- el vector MVp1u,j o MVp2u,j de movimiento que se utilizó en asociación respectivamente con la vista Vp1u,j o Vp2u,j predictiva,
- el tipo de predicción inter o intra asociado con la primera o segunda vista predictiva.
Si es la señal F'2 de la figura 4D la que se ha recibido en el decodificador, también se lee:
- en el caso de que se seleccione el conjunto Vcq1u,j, de datos codificados de manera entrópica, a partir del campo CH'w1 de la porción de la señal F'2 de datos:
• el tipo de predicción inter asociado con la vista VRw1 de la secuencia de imágenes considerada,
• el vector MVRw1 de movimiento utilizado,
- en el caso de que se seleccione el conjunto de datos codificados de manera entrópica Vcq2u,j, a partir del campo CH' w2 de la porción de la señal F 2 de datos:
• el tipo de predicción inter asociado con la vista VRw2 de la secuencia de imágenes considerada,
• el vector MVRw2 de movimiento utilizado.
Una tal subetapa D24b) de decodificación entrópica es implementada por un dispositivo MDE_D2 de decodificación entrópica del dispositivo MDV_D2 de decodificación de vistas de la figura 7B.
A lo largo de la subetapa D24b) mencionada anteriormente, también se decodifica el índice de la vista Vp1u,j o Vp2u,j predictiva que se utilizó para predecir la dicha al menos una vista Vu,j actual durante la subetapa C11b) de la figura 1B y que está asociada al conjunto Vcq1u,j o Vcq2u,j de datos codificados de manera entrópica que ha sido seleccionado.
La vista Vp1u,j o Vp2u,j predictiva es una vista que ya ha sido decodificada o no. En el caso de que la vista Vp1u,j o Vp2u,j predictiva haya sido decodificada, se almacena previamente en el búfer MT_D2 del decodificador DO2 de la figura 7B. En caso contrario, se decodifica a partir de una o más vistas ya decodificadas en el recorrido PR'u,j determinado.
La etapa de decodificación D2b) también comprende una subetapa D25b) a lo largo de la cual se procede a la decuantificación de las informaciones digitales obtenidas al final de la subetapa D24b), según una operación convencional de decuantificación que es la operación inversa de la cuantificación implementada durante la subetapa de cuantificación C14b) de la figura 1B. Luego se obtiene un conjunto VDq1u,j o VDq2u,j de coeficientes decuantificados al final de la subetapa D25b). Una tal subetapa D25b) es implementada por un dispositivo de decuantificación MQ-1_D2 del dispositivo MDV_D2 de decodificación de vistas de la figura 7B.
La etapa de decodificación D2b) también comprende una subetapa D26b) a lo largo de la cual se procede a una transformación del conjunto VDq1u,j o VDq2u,j de coeficientes decuantificados, que es de tipo DCT-1, DST-1 o DWT-1. Esta transformación es la operación inversa de la transformación efectuada en la subetapa C13b) de la figura 1B. Al final de la subetapa D26b), se obtiene la al menos una vista residual actual decodificada, designada por la referencia VDr1u,j o VDr2u,j. Una tal operación es efectuada por un dispositivo MT-1_D2 de transformación inversa de tipo DCT-1, DST-1, DWT-1. El dispositivo MT-1_D2 de transformación pertenece al dispositivo MDV_D2 de decodificación de vistas de la figura 7B.
Según la invención, a lo largo de una subetapa D27b) representada en la figura 6B, se procede a la construcción (también denominada predicción inversa) de la dicha al menos una vista VDu,j decodificada añadiendo a la al menos una vista VDr1u,j o VDr2u,j residual actual decodificada obtenida al final de la subetapa D26b), la dicha al menos una vista VD'ndi decodificada que se obtuvo en la subetapa D22b) mencionada anteriormente.
Una tal subetapa D27b) es implementada por un dispositivo CAL2_D2 de cálculo que pertenece al dispositivo MDV_D2 de decodificación de vistas de la figura 7B.
La dicha al menos una vista VDu,j decodificada es luego entregada por la salida SOR_D2 del decodificador DO2, y luego es almacenada en el búfer MT_D2 de modo que sea utilizada para la decodificación de una próxima vista por decodificar.
Según el contexto de decodificación, el procedimiento de decodificación según el segundo modo de realización puede implementarse independientemente del procedimiento de decodificación según el primer modo de realización de la figura 6A o bien implementarse en combinación con este último.
Con referencia ahora a la figura 8B, se representa un ejemplo de decodificación de al menos una vista Vu,j actual, tal como la codificada con referencia a la figura 5B. En el ejemplo representado, cada imagen multivista comprende por ejemplo seis vistas. Además, según la vista actual considerada:
- se utiliza necesariamente un único residuo de predicción para reconstruir la vista Vu,j actual,
- se pueden utilizar de manera alternativa dos residuos de predicción diferentes para reconstruir una vista Vu,j actual,
- se pueden utilizar de manera alternativa tres residuos de predicción diferentes para reconstruir una vista Vu,j actual.
En el ejemplo representado, cada vista actual considerada es la que un usuario elige requerir sucesivamente durante su navegación de una vista a otra en la secuencia de imágenes IMV1 a IMV4 multivista. Por ejemplo, se trata de las vistas V5,1, V6,2, V5,3, V4,3 y luego V3,4. Un tal recorrido de navegación se representa en negrita en la figura 8B.
Se supone que la al menos una vista actual por decodificar que se considera en este ejemplo es, por ejemplo, la primera vista V5,1 que el usuario desea visualizar.
En el ejemplo que se representa, la vista V5,1 solo se puede decodificar a partir de la vista V4,1, que aún no se ha decodificado. Por lo tanto, la vista V4,1 se decodifica en primer lugar en intra (representada por rayas en la figura 8B), y luego se almacena en el búfer MT_D2 de la figura 7B con vistas a ser utilizada para la decodificación de próximas vistas. A continuación, la vista V5,1 se decodifica a su vez con referencia a la vista V4,1 previamente decodificada, y luego se almacena en el búfer MT_D2 de la figura 7B con vistas a ser utilizada para la decodificación de próximas vistas.
Por tanto, gracias a la invención, es necesario decodificar únicamente 2 vistas de la secuencia en comparación de las 6 vistas de la imagen IMV1 multivista que son necesariamente decodificadas por los decodificadores convencionales.
Ahora se supone que la al menos una vista actual por decodificar que se considera en este ejemplo es, por ejemplo, la segunda vista V6,2 que el usuario desea visualizar.
En el ejemplo que se representa, la vista V6,2 se puede decodificar a partir de la vista V5,1 o de la vista V6,1. Ya que el usuario ha visualizado previamente la vista V5,1 que, por lo tanto, ha sido decodificada para este efecto y que, por lo tanto, está disponible en el búfer MT_D2 de la figura 7B, es la vista V5,i la que se elige preferentemente para decodificar la vista Va,2.
Por tanto, gracias a la invención, es necesario decodificar únicamente 3 vistas de la secuencia en comparación con las 12 vistas (6 vistas de la imagen IMVi multivista y 6 vistas de la imagen IMV2 multivista) que son necesariamente decodificadas por los decodificadores convencionales.
Ahora se supone que la al menos una vista actual por decodificar que se considera en este ejemplo es, por ejemplo, la tercera vista V5,3 que el usuario desea visualizar.
En el ejemplo que se representa, la vista V5,3 se puede decodificar a partir de la vista V4,2, de la vista V5,2 o de la vista Va,2. Ya que el usuario ha visualizado previamente la vista Va,2 que, por lo tanto, ha sido decodificada para este efecto y que, por lo tanto, está disponible en el búfer MT_D2 de la figura 7B, es la vista Va,2 la que se elige preferentemente para decodificar la vista V5,3.
Por tanto, gracias a la invención, es necesario decodificar únicamente 4 vistas de la secuencia en comparación con las 18 vistas (6 vistas de la imagen IMV1 multivista, 6 vistas de la imagen IMV2 multivista y 6 vistas de la imagen IMV3 multivista) que son necesariamente decodificadas por los decodificadores convencionales.
Ahora se supone que la al menos una vista actual por decodificar que se considera en este ejemplo es, por ejemplo, la cuarta vista V4,3 que el usuario desea visualizar.
En el ejemplo que se representa, la vista V4,3 se puede decodificar a partir de la vista V4,2 o de la vista V5,2. Ya que la vista V4,i ha sido previamente decodificada y, por lo tanto, está disponible en el búfer MT_D2 de la figura 7B, se elige decodificar la vista V4,2 con respecto a la vista V4,i y luego decodificar la vista V4,3 con respecto a la vista V4,2.
Por tanto, gracias a la invención, es necesario decodificar únicamente 3 vistas de la secuencia en comparación con las 18 vistas (6 vistas de la imagen IMVi multivista, 6 vistas de la imagen IMV2 multivista y 6 vistas de la imagen IMV3 multivista) que son necesariamente decodificadas por los decodificadores convencionales.
Se supone que la al menos una vista actual por decodificar que se considera en este ejemplo es, por ejemplo, la quinta vista V3,4 que el usuario desea visualizar.
En el ejemplo que se representa, la vista V3,4 se puede decodificar a partir de la vista V2,3 o de la vista V3,3, las vistas V2,3 y V3,3 aún no se han decodificado. Se elige por ejemplo decodificar la vista V2,3. En el ejemplo representado, la vista V2,3 se puede decodificar a partir de la vista V1,2, V2,2 o V3,2, no habiéndose decodificado aún las vistas V1,2, V2,2 y V3,2. Se elige por ejemplo decodificar la vista V1,2. En el ejemplo representado, la vista V1,2 se puede decodificar a partir de la vista V1,1 o V2,1, no habiéndose decodificado aún las vistas V1,1, V2,1. Se elige por ejemplo decodificar la vista V1,1. En este ejemplo, el recorrido de decodificación de la vista V3,4 actual determinado entre varios recorridos posibles incluye, por lo tanto, en el orden de la decodificación por implementar, las vistas V1,1, V1,2 y V2,3 aún no decodificadas.
Una vez que se ha determinado un tal recorrido de decodificación, la vista V1,1 se decodifica en Intra (representada por rayas en la figura 8B). Una vez decodificada, la vista V1,1 se almacena en la memoria MT_D2 del decodificador de la figura 7B, con vistas a ser utilizada para la decodificación de próximas vistas. A continuación, la vista V1,2 se decodifica con referencia a la vista V1,1 previamente decodificada, y luego se almacena en la memoria MT_D2 del decodificador de la figura 7B, con vistas a ser utilizada para la decodificación de próximas vistas. A continuación, la vista V2,3 se decodifica con referencia a la vista V1,2 previamente decodificada, y luego se almacena en la memoria MT_D2 del decodificador de la figura 7B, con vistas a ser utilizada para la decodificación de próximas vistas. Finalmente, la vista V3,4 se decodifica con referencia a la vista V2,3 previamente decodificada, y luego se almacena en la memoria MT_D2 del decodificador de la figura 7B, con vistas a ser utilizada para la decodificación de próximas vistas.
Por tanto, gracias a la invención, es necesario decodificar únicamente 4 vistas de la secuencia en comparación con las 24 vistas (6 vistas de la imagen IMV1 multivista, 6 vistas de la imagen IMV2 multivista, 6 vistas de la imagen IMV3 multivista y 6 vistas de la imagen IMV4 multivista) que son necesariamente decodificadas por los decodificadores convencionales.
Por tanto, en el momento t4, el recorrido de navegación del usuario de una vista a otra ha necesitado la decodificación de solo 9 vistas en comparación con las 24 vistas que son necesariamente decodificadas por los decodificadores convencionales.
En relación con el segundo modo de realización del procedimiento de decodificación de la figura 6B, se ha observado que existe una relación entre el número de residuos de predicción transmitidos en la señal F2 o F'2 de datos, los cuales dependen del procedimiento de codificación implementado, y la velocidad de cambio de vistas que el usuario podrá aplicar.
Por ejemplo, en el caso del recorrido de decodificación de la figura 8B según el cual se pueden utilizar de manera alternativa tres residuos de predicción diferentes para reconstruir una vista Vu,j actual, el usuario tiene la posibilidad de navegar lateralmente de una vista a otra, en cada momento temporal.
Una variante del procedimiento de codificación de la figura 6B podría permitir una menor flexibilidad, permaneciendo a la vez realista desde un punto de vista práctico.
En la figura 8C se representa un ejemplo de decodificación de al menos una vista Vu,j actual según esta variante. En el ejemplo representado, si la dicha al menos una vista actual es la vista V2,4, se puede utilizar un solo residuo de predicción (simbolizado por la flecha entre la vista V2,3 y la vista V2,4) para reconstruir esta vista, mientras que en el ejemplo anterior de la figura 8B, se podrían utilizar de manera alternativa tres residuos de predicción diferentes para reconstruir esta vista (simbolizados respectivamente por la flecha entre la vista V1,3 y la vista V2,4, la flecha entre la vista V2,3 y la vista V2,4 y la flecha entre la vista V3,3 y la vista V2,4).
Ahora se describirán varios modos de realización diferentes que se aplican a la subetapa D21b) de determinación del recorrido de decodificación del procedimiento de decodificación de la figura 6B.
Según un primer modo de realización, si son posibles varios recorridos de decodificación de vistas necesarios para la decodificación de la dicha al menos una vista Vu,j actual, se selecciona el recorrido que contiene el menor número posible de vistas adicionales por decodificar.
En la figura 8D, se representa un tal ejemplo de un recorrido de decodificación de al menos una vista Vu,j actual, la cual se ha codificado con referencia a la figura 5B. En el ejemplo representado, cada imagen multivista comprende por ejemplo seis vistas.
En el ejemplo representado, cada vista actual considerada es la que un usuario elige requerir sucesivamente durante su navegación de una vista a otra en la secuencia de imágenes IMVi a IMV4 multivista. Por ejemplo, se trata de las vistas V5,i, V6,2, V5,3 y luego V4,4. Un tal recorrido de navegación se representa en negrita en la figura 8D.
Se supone en este ejemplo que las vistas V5,i, V6,2, V5,3 han sido decodificadas de la misma manera que en la figura 8B y que la al menos una vista actual por decodificar que se considera es por ejemplo la vista V4,4 que el usuario desea visualizar. El recorrido de decodificación de la vista V4,4 que utiliza un número mínimo de vistas adicionales por decodificar es la que consiste en decodificar la vista V4,4 actual directamente a partir de la vista V5,3, la cual ha sido visualizada por el usuario en el momento t3 anterior y por consiguiente ya ha sido decodificada y por lo tanto puesta a disposición en el búfer MT_D2 de la figura 7B.
Por tanto, en el caso de la decodificación de la vista actual V4,4, el recorrido de decodificación se optimiza en gran medida ya que no contiene ninguna vista adicional por decodificar.
Un tal recorrido de decodificación optimizado se determina teniendo en cuenta las vistas ya decodificadas en el recorrido de navegación de una vista a otra ya efectuado por el usuario, lo que se hace posible teniendo en cuenta el árbol de decodificación propuesto que se puede seleccionar entre varios árboles alternativos posibles.
Según un segundo modo de realización, si son posibles varios recorridos de decodificación de vistas necesarios para la decodificación de la al menos una vista actual Vu,j, es el recorrido para el cual se minimiza la distancia entre al menos una vista que ha sido decodificada sin referencia a otras vistas y la al menos una vista Vu,j actual que se selecciona.
Si se toma el ejemplo de la figura 8D, el recorrido de decodificación de la vista V4,4 actual que utiliza una distancia mínima entre al menos una vista que ha sido decodificada sin referencia a otras vistas y la vista V4,4 actual es el que consiste en:
- decodificar la vista V4,2 que aún no se ha decodificado, a partir de la vista V4,i que ya se ha decodificado en Intra durante la visualización del usuario de la vista V5,i,
- decodificar la vista V4,3 que aún no ha sido decodificada, a partir de la vista V4,2,
- decodificar la vista V4,4 a partir de la vista V4,3.
Por tanto, gracias a este segundo modo de determinación del recorrido de decodificación de la vista V4.4 actual, esta última está separada de la vista V4,i decodificada en Intra únicamente por dos vistas V4,2 y V4,3, mientras que, en el primer modo de determinación mencionado anteriormente, la vista V4,4 fue separada de la vista V4,i decodificada en Intra por tres vistas V5,i, V6,2 y V5,3.
Por tanto, el segundo modo de determinación que se acaba de describir permite reducir los artefactos que tienen tendencia a acumularse y a propagarse durante la decodificación de una vista con respecto a la otra de acuerdo con un modo de predicción no intra.
Según un tercer modo de realización no representado, si el recorrido de vistas necesario para la decodificación de la dicha al menos una vista actual, que se determinó al final de la subetapa D24a) del procedimiento de decodificación de la figura 6A o al final de la subetapa D21b) del procedimiento de decodificación de la figura 6B, no permite decodificar la dicha al menos una vista Vu,j actual debido a al menos una restricción de decodificación, la al menos una vista actual es reemplazada por otra vista de la imagen multivista en el momento tj actual, que es capaz de ser decodificada, siendo la dicha otra vista la más cercana espacialmente a la al menos una vista actual.
En efecto, es posible que durante la determinación del recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual, el decodificador no sea capaz de decodificar esta última. Una tal situación puede producirse, por ejemplo, cuando el decodificador está sometido a restricciones de hardware, tales como, especialmente, un número máximo NBmax de vistas que pueden ser decodificadas, y el recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual requiere la decodificación de un número de vistas superior al número NBmax. A continuación, la al menos una vista actual será reemplazada por la vista que esté más cerca de ella espacialmente y que sea decodificable de acuerdo con las restricciones del decodificador.
Según un cuarto modo de realización, el recorrido de vistas necesarias para la decodificación de la dicha al menos una vista Vu,j actual que se determina durante la subetapa de determinación D24a) o D21b) mencionada anteriormente, contiene una vista de la cual depende al menos una vista susceptible de ser decodificado en al menos un momento que sigue o que precede al momento tj actual.
Con referencia ahora a la figura 8E, se representa un ejemplo de decodificación de al menos una vista Vu,j actual codificada de una manera similar a la representada en la figura 5B (árboles de decodificación alternativos). En el ejemplo representado, la imagen IMVj multivista actual es la tercera imagen IMV3 de una secuencia de imágenes multivista, comprendiendo cada imagen multivista, por ejemplo, cinco vistas. La al menos una vista actual por decodificar que se considera en este ejemplo es, por ejemplo, la tercera vista V2,3 de la imagen IMV3 multivista actual.
En la figura 8E, la imagen V3,1 se decodifica en intra, estando este modo de decodificación representado por rayas. Un ejemplo de un recorrido de navegación de una vista a otra se representa en negrita en la Figura 8E. Contiene, en el orden, las vistas V4,1, V3,2, V2,3. Aparte de estas tres vistas y la vista V3,1, todas las otras vistas representadas aún no han sido decodificadas.
Para decodificar la vista V2,3 actual, el recorrido de vistas necesarias para la decodificación de esta última consiste en tener en cuenta, ya sea la vista V2,2 que aún no ha sido decodificada, o la vista V3,3 que tampoco ha sido aún decodificada. Con el fin de hacer una elección entre estas dos vistas, se analiza el impacto de la decodificación de cada una de ellas durante la visualización, y por lo tanto la decodificación, de una vista susceptible de ser requerida por el usuario en al menos un momento posterior o anterior al momento t3 actual. Se supone, en el ejemplo representado, que se trata del momento t4 el que sigue inmediatamente al momento t3 siguiente. Como variante, el usuario podría desear visualizar una vista en un momento anterior al momento t3 actual, por ejemplo, el momento t1.
Se pueden considerar tres recorridos de navegación diferentes representados en líneas discontinuas en la figura 8E cuando se requiere una vista en el momento t4 siguiente a partir de la última vista V2,3 actual decodificada:
- si se requiere la vista V1,4, es necesario, para decodificar esta vista, ya sea decodificar la vista V1,3, o decodificar la vista V2,4, siendo las vistas V1,3 y V2,4 las dos decodificadas a partir de la vista V2,3 que ya ha sido decodificada previamente en el recorrido de navegación del usuario y que está disponible en el búfer del decodificador,
- si se requiere la vista V2,4, la vista V2,4 se decodifica directamente a partir de la vista V2,3 que ya ha sido decodificada previamente en el recorrido de navegación del usuario y que está disponible en el búfer del decodificador,
- si se requiere la vista V3,4, es necesario decodificar la vista V3,3 a partir de la vista V3,2 que ya ha sido decodificada previamente en el recorrido de navegación del usuario y que está disponible en el búfer del decodificador.
Los recorridos primero y tercero anteriores implican una decodificación adicional de vistas, es el segundo recorrido el que se selecciona.
En una variante de este cuarto modo de realización, la determinación del recorrido de las vistas necesarias para la decodificación de la dicha al menos una vista actual se implementa calculando la probabilidad de que tal o cual vista en al menos un momento posterior o anterior al momento actual sea requerida para ser decodificada. Un tal cálculo se puede determinar en función de las estadísticas relacionadas con la forma en que el usuario navega en la secuencia de imágenes multivista. Se puede predefinir un modelo de probabilidad para la elección de vistas por el usuario o se puede inicializar de manera equiprobable y actualizarse continuamente a lo largo de la decodificación. El recorrido seleccionado será entonces el que «tenga más posibilidades» de ser óptimo después, es decir, por ejemplo, por el hecho de contener un número mínimo de vistas adicionales por decodificar para decodificar la dicha al menos una vista actual. Otra manera de predecir que tal o cual vista se requiere decodificar al menos un momento posterior o anterior al momento actual consiste en anticipar el hecho de que el usuario conserva la misma dirección de desplazamiento entre dos vistas visualizadas consecutivamente, estas dos vistas pueden ser situadas en el mismo momento o en dos momentos diferentes.
La optimización del recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual puede, según el contexto de decodificación, ser implementada:
- según uno de los diferentes modos de determinación de recorrido que se acaban de describir,
- o bien según una combinación de estos diferentes modos.
- o bien sucesivamente según un orden de prioridad predefinido.
En el caso de que se considere una combinación de los diferentes modos de determinación de recorrido, se debe dar una prioridad a cada uno de ellos. Por ejemplo, para mejorar la calidad de una vista decodificada, la optimización del recorrido se hará con prioridad apreciando la distancia más pequeña entre la al menos una vista actual por decodificar y una vista de la secuencia de imágenes multivista que se ha decodificado en intra. En otro ejemplo, para reducir la complejidad en el decodificador, se dará prioridad a la minimización del número de vistas por decodificar. Según aún otro ejemplo, en el caso de un modo de realización similar a la variante del cuarto modo de realización mencionado anteriormente, donde se anticipan los futuros desplazamientos del usuario, admitiendo que se pueden considerar varios recorridos de navegación diferentes cuando se requiere una vista en el momento t4 siguiente a partir de la última vista V2,3 actual decodificada y se determina que dos recorridos de decodificación son óptimos, con el mismo número de vistas adicionales por decodificar, finalmente se selecciona una de estos dos recorridos óptimos determinando el recorrido de decodificación óptimo en un momento t4 anterior o posterior.
En el caso de que los diferentes modos de determinación de recorrido respeten un orden de prioridad, cuando dos recorridos de vistas se consideran óptimos siguiendo la implementación de un primer modo de determinación prioritario, entonces se selecciona el segundo modo de determinación prioritario.
De acuerdo con otro modo de realización:
- se implementa una etapa de gestión D10a) del búfer MT_D1 de la figura 7A en el procedimiento de decodificación de la figura 6A, antes de la etapa de decodificación D2a) de la dicha al menos una vista Vu,j actual,
- y/o se implementa una etapa de gestión D10b) del búfer MT_D2 de la figura 7B en el procedimiento de decodificación de la figura 6B, antes de la etapa de decodificación D2b) de la dicha al menos una vista Vu,j actual.
La etapa D10a) es implementada por un dispositivo MG_D1 de gestión representado en la figura 7A.
La etapa D10b) es implementada por un dispositivo MG_D2 de gestión representado en la figura 7B.
Siendo estas etapas opcionales, se representan con líneas discontinuas en las figuras 6A y 6B.
Según la invención, a lo largo de la etapa de gestión D10a) o D10b), el búfer se actualiza:
- en función de la distancia temporal que separa las vistas ya decodificadas, que están almacenadas en el búfer, de la dicha al menos una vista actual por decodificar,
- y/o cuando se hayan decodificado todas las vistas de una imagen multivista que precede a la imagen IMVj actual multivista.
Una tal disposición permite, de manera ventajosa, economizar los recursos del búfer MT_D1 o MT_D2 que están limitados. Además, permite disponer de búferes desincronizados entre el codificador y el decodificador, siendo una tal desincronización posible gracias a la implementación de la etapa de determinación del recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual y la decodificación de la o las vista(s) aún no decodificada(s) que han sido identificadas en el recorrido determinado.
Según un primer ejemplo, las vistas almacenadas más alejadas de la al menos una vista actual serán las primeras en abandonar el búfer. Según un segundo ejemplo, si ya se han decodificado todas las vistas de una imagen multivista, abandonan automáticamente el búfer.

Claims (14)

REIVINDICACIONES
1. Procedimiento de decodificación de al menos una vista (Vu,j) actual perteneciente a una imagen (IMVj) multivista que ha sido previamente codificada y cuyos datos codificados están contenidos en una señal de datos, representando la dicha al menos una vista actual una perspectiva determinada de una escena, comprendiendo la dicha señal de datos un conjunto de datos codificados representativos de al menos una diferencia entre la dicha al menos una vista actual y al menos otra vista (Vpu,j; Vp1u,j, Vp2u,j) de la dicha imagen multivista o de otra imagen multivista, habiendo servido la dicha al menos otra vista para la predicción de la dicha al menos una vista actual, comprendiendo el dicho procedimiento de decodificación lo siguiente:
- determinación (D24a); D21b)), en la dicha señal de datos o en otra señal de datos representativa de otra imagen multivista, de datos codificados asociados a al menos una vista que es necesaria para la decodificación de la dicha al menos una vista actual y que aún no ha sido decodificada, estando a su vez la dicha al menos una vista necesaria para la decodificación de la dicha al menos una vista actual destinada para ser decodificada independientemente o bien con respecto a al menos otra vista ya decodificada o no, constituyendo la al menos una vista necesaria para la decodificación de la dicha al menos una vista actual una vista situada en al menos un recorrido (PRu,j; PR'u,j) de vistas necesarias para la decodificación de la dicha al menos una vista actual, correspondiendo el dicho al menos un recorrido a un recorrido de navegación de una vista a otra, efectuado por un usuario, para llegar a la vista actual,
- decodificación (D25a); D22b)) de la dicha al menos una vista aún no decodificada situada en el dicho al menos un recorrido,
estando el dicho procedimiento de decodificación caracterizado porque comprende lo siguiente:
- identificación (D1b)) en la señal de datos:
- de primeros datos (Vcq1u,j) codificados representativos de una diferencia entre la dicha al menos una vista actual y una primera vista de la dicha imagen multivista o de otra imagen multivista,
- al menos de segundos datos (Vcq2u,j) codificados representativos de una diferencia entre la dicha al menos una vista actual y una segunda vista de la dicha imagen multivista o de otra imagen multivista,
- selección (D23b)) ya sea de los dichos primeros datos codificados, o de los dichos al menos segundos datos codificados, siendo la dicha selección implementada en función del dicho recorrido de navegación efectuado,
- decodificación (D2b)) de la dicha al menos una vista actual a partir de la dicha al menos una vista decodificada en el dicho al menos un recorrido y a partir de los primeros y al menos segundos datos codificados que han sido seleccionados.
2. Procedimiento de decodificación según la reivindicación 1, que comprende una determinación del dicho al menos un recorrido a través de la lectura, en la señal de datos, de informaciones representativas del dicho al menos un recorrido.
3. Procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 2, en el cual la determinación del dicha al menos un recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual se implementa según un criterio de minimización del número de vistas situadas en el dicho al menos un recorrido.
4. Procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 2, en el cual la determinación del dicho al menos un recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual se implementa según un criterio de minimización de la distancia entre al menos una vista que ha sido decodificada sin referencia de otras vistas y la dicha al menos una vista actual.
5. Procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 4, en el cual el dicho al menos un recorrido determinado contiene una vista de la cual depende al menos una vista susceptible de ser decodificada en al menos un momento que sigue o que precede al momento actual.
6. Procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 4, en el cual la determinación del dicho al menos un recorrido se implementa estimando, con la ayuda de un cálculo de probabilidades, al menos una vista susceptible de ser decodificada en al menos un momento que sigue o que precede el momento actual.
7. Procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 6, en el cual si el dicho al menos un recorrido de vistas necesarias para la decodificación de la dicha al menos una vista actual no permite decodificar la dicha al menos una vista actual debido a al menos una restricción de decodificación, la dicha al menos una vista actual se reemplaza por otra vista de la imagen multivista en el momento actual, que es capaz de ser decodificada, siendo la dicha otra vista la más cercana espacialmente a la dicha al menos una vista actual.
8. Procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 7, en el cual las vistas decodificadas y disponibles están almacenadas en una memoria, la dicha memoria se actualiza en función de la distancia temporal que las separa de la dicha al menos una vista actual por decodificar o bien cuando se decodifican todas las vistas de una imagen multivista anterior a la imagen multivista en el momento actual.
9. Dispositivo de decodificación de al menos una vista (Vu,j) actual perteneciente a una imagen (IMVj) multivista que ha sido previamente codificada y cuyos datos codificados están contenidos en una señal de datos, representando la dicha al menos una vista actual una perspectiva determinada de una escena, comprendiendo la dicha señal de datos un conjunto de datos codificados representativos de al menos una diferencia entre la dicha al menos una vista actual y al menos otra vista de la dicha imagen multivista o de otra imagen multivista, habiendo la dicha al menos otra vista servido para la predicción de la dicha al menos una vista actual,
comprendiendo el dicho dispositivo de decodificación un circuito (CT_D1; CT_D2) de procesamiento que está dispuesto para implementar lo siguiente:
- determinación, en la dicha señal de datos o en otra señal de datos representativa de otra imagen multivista, de datos codificados asociados a al menos una vista que es necesaria para la decodificación de la dicha al menos una vista actual y que aún no ha sido decodificada, estando la dicha al menos una vista necesaria para la decodificación de la dicha al menos una vista actual destinada para ser decodificada independientemente o bien con respecto a al menos otra vista ya decodificada o no, constituyendo la al menos una vista necesaria para la decodificación de la dicha al menos una vista actual una vista situada en al menos un recorrido (PRu,j; PR'u,j) de vistas necesarias para la decodificación de la dicha al menos una vista actual, correspondiendo el dicho al menos un recorrido a un recorrido de navegación de una vista a otra, efectuado por un usuario, para llegar a la vista actual,
- decodificación de la dicha al menos una vista aún no decodificada situada en el dicho al menos un recorrido,
estando el dicho dispositivo de decodificación caracterizado porque el circuito de procesamiento está dispuesto para implementar lo siguiente:
- identificación en la señal de datos:
- de primeros datos (Vcq1u,j) codificados representativos de una diferencia entre la dicha al menos una vista actual y una primera vista de la dicha imagen multivista o de otra imagen multivista,
- al menos de segundos datos (Vcq2u,j) codificados representativos de una diferencia entre la dicha al menos una vista actual y una segunda vista de la dicha imagen multivista o de otra imagen multivista,
- selección, ya sea de los dichos primeros datos codificados, o de los dichos al menos segundos datos codificados, siendo la dicha selección implementada en función del dicho recorrido de navegación efectuado,
- decodificación de la dicha al menos una vista actual que se implementa a partir de la dicha al menos una vista decodificada en el dicho al menos un recorrido y a partir de los de los primeros y al menos segundos datos codificados que han sido seleccionados.
10. Programa de ordenador que comprende instrucciones de código de programa para la ejecución de las etapas del procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 8, cuando se ejecuta en un ordenador.
11. Soporte de registro legible por un ordenador en el cual se registra un programa de ordenador que comprende instrucciones de código de programa para la ejecución de las etapas del procedimiento de decodificación según una cualquiera de las reivindicaciones 1 a 8, cuando se ejecuta en un ordenador.
12. Procedimiento de codificación de al menos una imagen (IMVj) multivista, en el cual se implementa la codificación de al menos una vista (Vu,j) actual de la dicha imagen multivista, representando la dicha al menos una vista actual una perspectiva determinada de una escena, que comprende:
- la codificación de un conjunto de datos representativos de al menos una diferencia entre la dicha al menos una vista actual y al menos otra vista (Vpu,j; Vp1u,j, Vp2u,j) de la dicha imagen multivista o de otra imagen multivista, habiendo la dicha al menos otra vista servido para la predicción de la dicha al menos una vista actual,
- la codificación de datos codificados asociados con al menos una vista que es necesaria para la codificación de la dicha al menos una vista actual y que no está decodificada, estando a su vez la dicha al menos una vista necesaria para la codificación de la dicha al menos una vista actual destinada para ser codificada independientemente o bien con respecto a al menos otra vista ya decodificada o no, constituyendo la al menos una vista necesaria para la codificación de la dicha al menos una vista actual una vista situada en al menos un recorrido (PRu,j; PR'u,j) de vistas necesarias para la codificación de la dicha al menos una vista actual, correspondiendo el dicho al menos un recorrido a un recorrido de navegación de una vista a otra, hasta la vista actual, capaz de ser efectuado por un usuario en la decodificación,
estando el dicho procedimiento de codificación caracterizado porque implementa:
- una primera predicción (C12b)) de la dicha al menos una vista actual con respecto a una primera vista (Vp1 u,j) de la dicha imagen multivista o de otra imagen multivista, entregando un primer conjunto de datos predichos,
- al menos una segunda predicción (C12b)) de la dicha al menos una vista actual con respecto a una segunda vista (Vp2u,j) de la dicha imagen multivista o de otra imagen multivista, entregando al menos un segundo conjunto de datos predichos,
- una codificación (C15b)) del primer y del al menos segundo conjunto de datos predichos,
- una elaboración (C2b)) de una señal de datos que comprende el dicho conjunto de datos codificados, así como los dichos primer y al menos segundo conjuntos de datos codificados, siendo uno de los dichos primer y al menos segundo conjuntos de datos codificados capaz de ser utilizado para la decodificación de la dicha al menos una vista actual en función del dicho recorrido de navegación efectuado.
13. Dispositivo de codificación de al menos una imagen (IMVj) multivista, que comprende un circuito (CT_C2) de procesamiento que está dispuesto para implementar la codificación de al menos una vista actual de la dicha imagen multivista, representando la dicha al menos una vista actual una perspectiva determinada de una escena, implementando el dicho circuito de procesamiento la codificación de un conjunto de datos representativos de al menos una diferencia entre la dicha al menos una vista actual y al menos otra vista (Vpu,j; Vp1u,j, Vp2u,j) de la dicha imagen multivista o de otra imagen multivista, habiendo la dicha al menos otra vista servido para la predicción de la dicha al menos una vista actual,
- la codificación de datos codificados asociados con al menos una vista que es necesaria para la codificación de la dicha al menos una vista actual y que no está decodificada, estando a su vez la dicha al menos una vista necesaria para la codificación de la dicha al menos una vista actual destinada para ser codificada independientemente o bien con respecto a al menos otra vista ya decodificada o no, constituyendo la al menos una vista necesaria para la codificación de la dicha al menos una vista actual una vista situada en al menos un recorrido (PRu,j; PR'u,j) de vistas necesarias para la codificación de la dicha al menos una vista actual, correspondiendo el dicha al menos un recorrido a un recorrido de navegación de una vista a otra, hasta la vista actual, capaz de ser manipulado por un usuario en la decodificación,
estando el dicho dispositivo de codificación caracterizado porque el dicho circuito de procesamiento está además dispuesto para implementar:
- una primera predicción de la dicha al menos una vista actual con respecto a una primera vista de la dicha imagen multivista o de otra imagen multivista, entregando un primer conjunto de datos predichos,
- al menos una segunda predicción de la dicha al menos una vista actual con respecto a una segunda vista de la dicha imagen multivista o de otra imagen multivista, entregando al menos un segundo conjunto de datos predichos, - una codificación del primer y del al menos segundo conjunto de datos predichos,
- una elaboración de una señal de datos que comprende el dicho conjunto de datos codificados, así como los dichos primer y al menos segundo conjunto de datos codificados,
siendo uno de los dichos primer y al menos segundo conjuntos de datos codificados capaz de ser utilizado para la decodificación de la dicha al menos una vista actual en función del dicho recorrido de navegación efectuado.
14. Programa de ordenador que comprende instrucciones de código de programa para la ejecución de las etapas del procedimiento de codificación según la reivindicación 12, cuando se ejecuta en un ordenador.
ES16785246T 2015-10-08 2016-09-29 Codificación y decodificación multivista Active ES2926702T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1559592A FR3042368A1 (fr) 2015-10-08 2015-10-08 Procede de codage et de decodage multi-vues, dispositif de codage et de decodage multi-vues et programmes d'ordinateur correspondants
PCT/FR2016/052475 WO2017060587A1 (fr) 2015-10-08 2016-09-29 Codage et décodage multi-vues

Publications (1)

Publication Number Publication Date
ES2926702T3 true ES2926702T3 (es) 2022-10-27

Family

ID=55236523

Family Applications (1)

Application Number Title Priority Date Filing Date
ES16785246T Active ES2926702T3 (es) 2015-10-08 2016-09-29 Codificación y decodificación multivista

Country Status (6)

Country Link
US (1) US10893295B2 (es)
EP (1) EP3360328B1 (es)
CN (1) CN108293134B (es)
ES (1) ES2926702T3 (es)
FR (1) FR3042368A1 (es)
WO (1) WO2017060587A1 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7168848B2 (ja) * 2018-11-21 2022-11-10 日本電信電話株式会社 評価装置、評価方法、及びプログラム。
CN117396914A (zh) * 2021-05-26 2024-01-12 Oppo广东移动通信有限公司 使用特征全景图的全景视图重建

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7903737B2 (en) * 2005-11-30 2011-03-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for randomly accessing multiview videos with known prediction dependency
WO2008084443A1 (en) * 2007-01-09 2008-07-17 Nokia Corporation System and method for implementing improved decoded picture buffer management for scalable video coding and multiview video coding
KR101301181B1 (ko) * 2007-04-11 2013-08-29 삼성전자주식회사 다시점 영상의 부호화, 복호화 방법 및 장치
JP4837772B2 (ja) * 2009-12-15 2011-12-14 パナソニック株式会社 多視点動画像復号装置、多視点動画像復号方法、プログラム及び集積回路
EP2781091B1 (en) * 2011-11-18 2020-04-08 GE Video Compression, LLC Multi-view coding with efficient residual handling
WO2014166096A1 (en) * 2013-04-11 2014-10-16 Mediatek Singapore Pte. Ltd. Reference view derivation for inter-view motion prediction and inter-view residual prediction
CN104768015B (zh) * 2014-01-02 2018-10-26 寰发股份有限公司 视频编码方法及装置

Also Published As

Publication number Publication date
WO2017060587A1 (fr) 2017-04-13
CN108293134A (zh) 2018-07-17
EP3360328A1 (fr) 2018-08-15
EP3360328B1 (fr) 2022-06-08
US10893295B2 (en) 2021-01-12
US20180302648A1 (en) 2018-10-18
CN108293134B (zh) 2022-07-05
FR3042368A1 (fr) 2017-04-14

Similar Documents

Publication Publication Date Title
ES2946909T3 (es) Método, aparato y producto de programa informático para interpredicción
JP5782522B2 (ja) ビデオ符号化方法および装置
ES2961397T3 (es) Codificación y reconstrucción de datos residuales en base a información de soporte
JP6437097B2 (ja) 予測符号化、復号化方法、対応するエンコーダ、デコーダ及び電子機器
ES2781556T3 (es) Dispositivo de codificación por predicción de vídeo, método de codificación por predicción de vídeo, dispositivo de descodificación por predicción de vídeo y método de descodificación por predicción de vídeo
KR102071581B1 (ko) 서브블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치
ES2966479T3 (es) Un codificador, un decodificador y métodos correspondientes para la intrapredicción
BR112021000935A2 (pt) codificador, decodificador e métodos correspondentes usando buffer dedicado de ibc e atualização de valor padrão para componente luma e croma
ES2803426T3 (es) Procedimiento y aparato para codificar o descodificar una imagen con predicción de información de movimiento de capas inter según un esquema de compresión de información de movimiento
ES2773774T3 (es) Dispositivo, método y programa de codificación bipredictiva de imágenes, y dispositivo, método y programa de decodificación bipredictiva de imágenes
ES2965276T3 (es) Método de decodificación de vídeo y decodificador de vídeo
ES2823195T3 (es) Dispositivo de codificación de imagen, procedimiento de codificación de imagen, programa de codificación de imagen, dispositivo de decodificación de imagen, procedimiento de decodificación de imagen y programa de decodificación de imagen
BR112021008016A2 (pt) codificador, decodificador e métodos correspondentes para modo de fusão
ES2926702T3 (es) Codificación y decodificación multivista
ES2960693T3 (es) Método y aparato para una transformación primaria mediante el uso de un núcleo de transformación de 8 bits
ES2961328T3 (es) Dispositivo de decodificación de imágenes, procedimiento de decodificación de imágenes y programa de decodificación de imágenes
ES2820332T3 (es) Dispositivo de decodificación de imágenes, procedimiento de decodificación de imágenes, programa de decodificación de imágenes, dispositivo de codificación de imágenes, procedimiento de codificación de imágenes, y programa de codificación de imágenes
US10085040B2 (en) Image encoding device
US20210400295A1 (en) Null tile coding in video coding
ES2946058T3 (es) Un codificador, un decodificador y los métodos correspondientes que usan la codificación intramodo para la intrapredicción
JP7279047B2 (ja) 全方位ビデオを表すマルチビュービデオシーケンスを符号化及び復号化する方法及びデバイス
ES2875586T3 (es) Procedimiento de codificación y descodificación de imágenes, dispositivo de codificación y de descodificación y programas informáticos correspondientes
RU2776664C2 (ru) Способы и устройства для кодирования и декодирования многовидовой видеопоследовательности всенаправленного видео
JP2014039303A (ja) 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
JP2014039302A (ja) 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム