ES2645943T3 - Señalización de imágenes de referencia - Google Patents

Señalización de imágenes de referencia Download PDF

Info

Publication number
ES2645943T3
ES2645943T3 ES16170866.4T ES16170866T ES2645943T3 ES 2645943 T3 ES2645943 T3 ES 2645943T3 ES 16170866 T ES16170866 T ES 16170866T ES 2645943 T3 ES2645943 T3 ES 2645943T3
Authority
ES
Spain
Prior art keywords
image
images
buffer
identifier
information
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
ES16170866.4T
Other languages
English (en)
Inventor
Jonatan Samuelsson
Rickard Sjöberg
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=46197673&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2645943(T3) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of ES2645943T3 publication Critical patent/ES2645943T3/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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio

Landscapes

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

Abstract

Método de codificación de una imagen (10) de un flujo continuo (1) de vídeo de múltiples imágenes (10, 40, 42, 50), comprendiendo dicho método: determinar (S1), para dicha imagen (10), por lo menos una imagen (40, 42) de referencia de dichas múltiples imágenes (10, 40, 42, 50) como referencia de codificación para dicha imagen (10); proporcionar (S2), para cada imagen (40, 42) de referencia entre dicha por lo menos una imagen (40, 42) de referencia, un identificador de imagen que identifica dicha imagen (40, 42) de referencia entre dicha por lo menos una imagen (40, 42) de referencia, generar (S3), basándose en dicho por lo menos un identificador de imagen, información de descripción de memoria intermedia que define dicha por lo menos una imagen (40, 42) de referencia; introducir (S4) dicha información de descripción de memoria intermedia en una estructura de datos en la representación codificada (60) de dicha imagen (10), en donde todas las imágenes de referencia presentes en una memoria intermedia (530, 650) de imágenes descodificadas y que no están asociadas a ninguno de dicho por lo menos un identificador de imagen determinado sobre la base de dicha información de descripción de memoria intermedia, se deben marcar como no utilizadas para referencia; caracterizado por que las imágenes descodificadas que se utilizarán como imágenes de referencia durante la descodificación se especifican de una manera absoluta y explícita con independencia de una representación codificada de imágenes previas en el flujo continuo de vídeo.

Description

5
10
15
20
25
30
35
40
45
DESCRIPCION
Senalizacion de imagenes de referencia Campo tecnico
Las realizaciones se refieren en general a la gestion de imagenes de referencia en relacion con la codificacion y la descodificacion de video, y en particular a la senalizacion de imagenes de referencia y a la gestion de memorias intermedias de dichas imagenes de referencia.
Antecedentes
La H.264, a la que tambien se hace referencia como Codificacion de Video Avanzada (AVC) del Grupo de Expertos en Imagenes en Movimiento 4 (MPEG-4), es la norma de codificacion de video del estado de la tecnica. Consiste en un esquema de codificacion tubrida de video, basada en bloques, que se aprovecha de la prediccion temporal y espacial.
La Codificacion de Video de Alta Eficiencia (HEVC) es una nueva norma de codificacion de video que se esta desarrollando actualmente en la Codificacion de Video - Grupo Cooperativo Mixto (JCT-VC). El JCT-VC es un proyecto de colaboracion entre el MPEG y el sector de normalizacion de Telecomunicacion de la Union Internacional de Telecomunicaciones (ITU-T). En la actualidad, hay definido un Borrador de Trabajo (WD) que incluye macrobloques grandes (abreviados como LCUs, por Unidades de Codificacion Mas Grandes) y una serie de otras nuevas herramientas, y el mismo es considerablemente mas eficiente que la H.264/AVC.
En un receptor, un descodificador recibe un flujo continuo de bits que representa imagenes, es decir, paquetes de datos de video de datos comprimidos. Los datos comprimidos comprenden carga util e informacion de control. La informacion de control comprende, por ejemplo, informacion sobre que imagenes de referencia se deben almacenar en una memoria intermedia de imagenes de referencia, a la que se hace referencia tambien como memoria intermedia de imagenes descodificadas (DPB). Esta informacion es una referencia relativa a imagenes recibidas anteriores. Ademas, el descodificador descodifica el flujo continuo de bits recibido y visualiza la imagen descodificada. Adicionalmente, las imagenes descodificadas se almacenan en la memoria intermedia de imagenes descodificadas de acuerdo con la informacion de control. Estas imagenes de referencia almacenadas son utilizadas por el descodificador cuando se descodifican imagenes subsiguientes.
Una suposicion de trabajo para los procesos de las operaciones de la memoria intermedia de imagenes descodificadas en el borrador de trabajo de la HEVC es que los mismos en gran medida se heredaran de la H.264/AVC. En la Figura 1 se muestra un diagrama de flujo simplificado del esquema segun esta disenado en la H.264/AVC.
Antes de la descodificacion real de una imagen, el frame_num en el encabezamiento de franja (slice) se analiza sintacticamente para detectar un posible vacfo en frame_num si el elemento de sintaxis del Conjunto de Parametros de Secuencia (SPS) gaps_in_frame_num_value_allowed_flag es 1. El frame_num indica el orden de descodificacion. Si se detecta un vacfo en frame_num, se crean cuadros “no existentes” y los mismos se introducen en la memoria intermedia de imagenes descodificadas (DPB).
Independientemente de si habfa o no un vacfo en frame_num, la siguiente etapa es la descodificacion real de la imagen actual. Si los encabezamientos de franja de la imagen contienen ordenes de Operaciones de Control de Gestion de Memoria (MMCO), se aplica un proceso de control de memoria adaptativo despues de la descodificacion de la imagen para obtener una referencia relativa a las imagenes que se van a almacenar en la memoria intermedia de imagenes descodificadas; en caso contrario, se aplica un proceso de ventana deslizante para obtener una referencia relativa a las imagenes a almacenar en la memoria intermedia de imagenes descodificadas. Como etapa final, se aplica el proceso de “lanzamiento” (“bumping”) para entregar las imagenes en el orden correcto.
Un problema de la H.264/AVC es su vulnerabilidad a las perdidas de imagenes que contienen MMCO de tipo 2, 3, 4, 5 o 6 segun se describe en la siguiente Tabla 1.
Tabla 1 - Valores de operaciones de control de gestion de memoria para H.264/AVC
memory_management_control_operation
Operacion de Control de Gestion de Memoria
0
Finalizar bucle del elemento de sintaxis memory_management_control_operation
1
Marcar una imagen de referencia de corto plazo como “no utilizada para referencia”
2
Marcar una imagen de referencia de largo plazo como “no utilizada para referencia”
5
10
15
20
25
30
35
40
memory_management_control_operation
Operacion de Control de Gestion de Memoria
3
Marcar una imagen de referencia de corto plazo como “utilizada para referencia de largo plazo” y asignar a la misma un mdice de cuadro de largo plazo
4
Especificar el mdice maximo de cuadro de largo plazo y marcar como “no utilizada para referencia” todas las imagenes de referencia de largo plazo que tienen indices de cuadro de largo plazo mayores que el valor maximo
5
Marcar todas las imagenes de referencia como “no utilizada para referencia” y fijar la variable MaxLongTermFrameIdx a “sin indices de cuadro de largo plazo”
6
Marcar la imagen actual como “utilizada para referencia de largo plazo” y asignar a la misma un mdice de cuadro de largo plazo
Evidentemente, la perdida de una imagen que no contiene MMCO, o una imagen que contiene MMCO de tipo 0 o 1, es seria para el proceso de descodificacion. Los valores de pfxeles de la imagen perdida no estaran disponibles y pueden afectar a imagenes futuras durante un penodo de tiempo prolongado debido a una prediccion inter incorrecta. Tambien existe un riesgo de que las listas de imagenes de referencia para unas cuantas imagenes despues de la imagen perdida sean erroneas, por ejemplo si la imagen perdida contema MMCO que marcaban una imagen de referencia de corto plazo como “no utilizada para referencia” que, de otro modo, se habna incluido en la lista de imagenes de referencia de la siguiente imagen. Sin embargo, el proceso de descodificacion en general puede recuperar dicha perdida mediante el uso de franjas intra o bloques intra restringidos o por otros medios.
No obstante, si se pierde una imagen que contiene MMCO de tipo 2, 3, 4, 5 o 6, existe un riesgo de que el numero de imagenes de largo plazo en la DPB sea diferente de lo que habna sido si la imagen se hubiera recibido, lo que da como resultado un proceso de ventana deslizante “incorrecto” para todas las imagenes sucesivas. Es decir, el codificador y el descodificador contendran un numero diferente de imagenes de corto plazo lo cual da como resultado un comportamiento del proceso de ventana deslizante fuera de sincronizacion. Esta perdida no se puede recuperar por el uso de franjas intra o bloques intra restringidos, o tecnicas similares (ni siquiera una imagen Intra del Grupo De Imagenes (GOP) abierto). La unica manera de garantizar la recuperacion de dicha perdida es a traves de una imagen por Regeneracion Instantanea del Descodificador (IDR) o a traves de una MMCO que anule el efecto de la MMCO perdida. Lo que empeora todavfa mas la situacion es que un descodificador no tendra conocimiento necesariamente de que el proceso de ventana deslizante esta fuera de sincronizacion y por lo tanto no puede informar del problema al codificador o solicitar una imagen de IDR ni siquiera en aplicaciones en las que haya disponible un canal de retroalimentacion.
Una forma de reducir el riesgo de perder informacion importante de MMCO es utilizar mensajes de Informacion de Mejora Suplementaria (SEI) dec_ref_pic_marking_repetition. Sin embargo, el codificador no sabra si el descodificador tiene la capacidad de hacer uso de mensajes de SEI dec_ref_pic_marking_repetition. Ademas, existe un riesgo de que tambien se pierda el mensaje de SEI dec_ref_pic_marking_repetition.
Borgwardt, Multi-Picture Buffer Semantics for Interlaced Coding, Equipo Mixto de Video (JVT) de ISO/IEC MPEG & ITU-T VEVG (ISO/IEC JTC1/SC29/wG11 e ITU-T SG166 Q.6), 3a Reunion: Fairfax, Virginia, Estados Unidos, del 6 al 10 de mayo de 2002, JVT-C049, da a conocer la revision de la Memoria Intermedia de Multiples Imagenes en el JVT de manera que pueda almacenar tanto cuadros como campos y tratar con referencias de ambos.
Por lo tanto, existe la necesidad de una senalizacion eficiente de imagenes de referencia y de una gestion eficiente de memorias intermedias de imagenes de referencia, que no padezcan los inconvenientes y limitaciones de las soluciones de la tecnica anterior.
Compendio
Uno de los objetivos generales es proporcionar una senalizacion eficiente de imagenes de referencia y una gestion eficiente de memorias intermedias de imagenes de referencia en relacion con la codificacion y descodificacion de video.
Este y otros objetivos se logran con realizaciones dadas a conocer en este documento.
Segun un primer aspecto, se proporciona un metodo de codificacion de una imagen de un flujo continuo de video de multiples imagenes. Dicho metodo comprende:
determinar, para dicha imagen, por lo menos una imagen de referencia de dichas multiples imagenes como referencia de codificacion para dicha imagen;
5
10
15
20
25
30
35
40
45
50
proporcionar, para cada imagen de referencia de dicha por lo menos una imagen de referencia, un identificador de imagen que identifica dicha imagen de referencia entre dicha por lo menos una imagen de referencia,
generar, basandose en dicho por lo menos un identificador de imagen, informacion de descripcion de memoria intermedia que define dicha por lo menos una imagen de referencia. Ademas, las imagenes descodificadas que se utilizaran para imagenes de referencia durante la descodificacion se especifican de una manera absoluta y explfcita con independencia de una representacion codificada de imagenes previas en el flujo continuo de video. El metodo comprende ademas
introducir dicha informacion de descripcion de memoria intermedia en una estructura de datos en la representacion codificada de dicha imagen, en donde todas las imagenes de referencia presentes en una memoria intermedia de imagenes descodificadas y que no estan asociadas a ninguno de dicho por lo menos un identificador de imagen determinado sobre la base de dicha informacion de descripcion de memoria intermedia, se deben marcar como no utilizadas para referencia.
Segun otro aspecto, se proporciona un codificador configurado para codificar una imagen de un flujo continuo de video de multiples imagenes. El codificador comprende un determinador de imagenes de referencia configurado para determinar, para dicha imagen, por lo menos una imagen de referencia de dichas multiples imagenes como referencia de codificacion para dicha imagen; un proveedor de identificadores de imagen configurado para proporcionar, para cada imagen de referencia de dicha por lo menos una imagen de referencia, un identificador de imagen que identifica dicha imagen de referencia entre dicha por lo menos una imagen de referencia; un generador de informaciones de descripcion de memoria intermedia configurado para generar, basandose en dicho por lo menos un identificador de imagen, informacion de descripcion de memoria intermedia que define dicha por lo menos una imagen de referencia. Las imagenes descodificadas que se utilizaran para imagenes de referencia durante la descodificacion se especifican de una manera absoluta y explfcita con independencia de una representacion codificada de imagenes previas en el flujo continuo de video. El codificador comprende ademas un introductor de datos configurado para introducir dicha informacion de descripcion de memoria intermedia en una estructura de datos en la representacion codificada de dicha imagen, en donde todas las imagenes de referencia presentes en una memoria intermedia de imagenes descodificadas y que no estan asociadas a ninguno de dicho por lo menos un identificador de imagen determinado sobre la base de dicha informacion de descripcion de memoria intermedia, se deben marcar como no utilizadas para referencia.
Segun todavfa otro aspecto, se proporciona un transmisor. El transmisor comprende
una seccion de entrada configurada para recibir multiples imagenes de un flujo continuo de video;
un codificador de acuerdo con el aspecto anterior, configurado para codificar dichas multiples imagenes con el fin de generar representaciones codificadas respectivas de dichas multiples imagenes; y
una seccion de salida configurada para dar salida a dichas representaciones codificadas respectivas de dichas multiples imagenes.
En clara contraposicion a las soluciones de la tecnica anterior en las cuales la gestion correcta de las imagenes de referencia depende de que las imagenes previamente codificadas se recibido y descodificado correctamente, las realizaciones proporcionan informacion de descripcion de memoria intermedia que se utiliza para imagenes de referencia de una manera absoluta y explfcita en lugar de una manera relativa o implfcita. Por lo tanto, la representacion codificada de una imagen contiene la informacion sobre que imagenes de referencia utilizar como referencia durante la descodificacion con independencia de las representaciones codificadas de imagenes previas en el flujo continuo de video.
Las realizaciones consiguen de esta manera que la gestion y la senalizacion de imagenes de referencia sean menos vulnerables a errores puesto que el descodificador solamente tendra que basarse en informacion contenida en la imagen actual para la gestion de imagenes de referencia de la imagen actual, en lugar de basarse en operaciones entregadas e interpretadas correctamente en imagenes previas.
Breve descripcion de los dibujos
La invencion, junto con otros objetos y ventajas de la misma, puede entenderse mejor haciendo referencia a la siguiente descripcion considerada conjuntamente con los dibujos adjuntos, en los cuales:
la Figura 1 es un diagrama de flujo simplificado del esquema de memoria intermedia de referencias H.264/AVC;
la Figura 2 es un ejemplo de una estructura de codificacion con dos capas temporales;
la Figura 3 es un diagrama de flujo de un metodo de codificacion de una imagen de acuerdo con una realizacion;
la Figura 4 es un flujo continuo de video de multiples imagenes de acuerdo con una realizacion;
la Figura 5 es una representacion codificada de una imagen de acuerdo con una realizacion;
la Figura 6 es un diagrama de flujo de una etapa adicional, opcional, del metodo de la Figura 3;
la Figura 7 es un diagrama de flujo de etapas opcionales adicionales del metodo de la Figura 3 y una realizacion de generacion de informacion de descripcion de memoria intermedia de la Figura 3;
la Figura 8 es un ejemplo de una estructura de codificacion con tamano de (sub)GOP 8;
5 la Figura 9 es un diagrama de flujo de un metodo de descodificacion de una representacion codificada de una imagen de acuerdo con una realizacion;
la Figura 10 es un diagrama de flujo de una realizacion de determinacion de un identificador de imagen de la Figura
9;
la Figura 11 es un diagrama de flujo de una realizacion de recuperacion de informacion de descripcion de memoria 10 intermedia de la Figura 9;
la Figura 12 es un diagrama de flujo de otra realizacion de la determinacion de un identificador de imagen de la Figura 9;
la Figura 13 es un diagrama de flujo de etapas opcionales adicionales del metodo de la Figura 9;
la Figura 14 es un diagrama de flujo de una etapa adicional, opcional, del metodo de la Figura 9;
15 la Figura 15 es un ejemplo de una estructura de codificacion;
la Figura 16 es un diagrama de flujo simplificado de un esquema de memoria intermedia de referencias de acuerdo con una realizacion;
la Figura 17 es un diagrama de
la Figura 18 es un diagrama de
20 la Figura 19 es un diagrama de
la Figura 20 es un diagrama de
la Figura 21 es un diagrama de
la Figura 22 es un diagrama de
Descripcion detallada
25 En la totalidad los dibujos, correspondientes.
Las presentes realizaciones se refieren en general a la codificacion y descodificacion de imagenes, a las que se hace referencia tambien en la tecnica como cuadros, de un flujo continuo de video. En particular, las realizaciones se refieren a la gestion de imagenes de referencia en relacion con la codificacion y descodificacion de video, y a la 30 senalizacion de dichas imagenes de referencia desde el codificador al descodificador.
La codificacion de video, tal como la representada por la H.264/MPEG-4 AVC y HEVC, utiliza imagenes de referencia como predicciones o referencias para la codificacion y descodificacion de datos de pfxeles de una imagen actual. A esto se le hace referencia generalmente como codificacion inter en la tecnica, en donde una imagen se codifica y se descodifica en relacion con dichas imagenes de referencia. Por lo tanto, con el fin de poder descodificar 35 una imagen codificada, el descodificador tiene que conocer que imagenes de referencia utilizar para la imagen codificada actual y tiene que tener acceso a estas imagenes de referencia. Generalmente, el descodificador utiliza una memoria intermedia de imagenes descodificadas (DPB), tambien denominada, en la presente, memoria intermedia de imagenes de referencia, para almacenar las imagenes de referencia. Es entonces importante que las imagenes de referencia almacenadas en la memoria intermedia de imagenes descodificadas sean realmente las 40 imagenes de referencia correctas cuando se descodifica una imagen codificada, si no el descodificador utilizara imagenes de referencia erroneas durante el proceso de descodificacion provocando un deterioro de la calidad del video presentado.
Los planteamientos de la tecnica anterior pueden padecer problemas en relacion con el uso de imagenes de referencia incorrectas cuando una imagen portadora de informacion MMCO se pierde de manera no intencionada, lo 45 cual se describio la seccion de antecedentes. Este problema de la tecnica anterior se puede ilustrar con el siguiente ejemplo implementado en H.264. Supongase que la memoria intermedia de imagenes descodificadas almacena tres imagenes de corto plazo con identificadores de imagen 300, 302 y 303 y dos imagenes de largo plazo con identificadores de imagen 0 y 3. El codificador podna entonces generar una nueva imagen codificada con una orden MMCO tipo 2 estableciendo que la imagen de largo plazo 0 debe ser: no utilizada para referencia. Si esta imagen
bloques esquematico de un transmisor de acuerdo con una realizacion; bloques esquematico de un codificador de acuerdo con una realizacion; bloques esquematico de un codificador de acuerdo con otra realizacion; bloques esquematico de un receptor de acuerdo con una realizacion; bloques esquematico de un descodificador de acuerdo con una realizacion; y bloques esquematico de un descodificador de acuerdo con otra realizacion.
se utilizan los mismos numeros de referencia para elementos similares o
5
10
15
20
25
30
35
40
45
50
55
60
codificada se hubiese recibido correctamente en el descodificador, la imagen de largo plazo 0 se habna marcado como no utilizada para referencia, y la lista de imagenes de referencia habna sido {300, 302, 303, 3}. Sin embargo, si se pierde la imagen codificada con la orden MMCO de tipo 2, al descodificador no se le informa de que la imagen de largo plazo 0 se debe marcar como no utilizada para referencia, y por lo tanto la lista de imagenes de referencia es en cambio {300, 302, 303, 0, 3}. Si una imagen codificada sucesiva recibida en el descodificador comprende informacion de que la imagen de referencia en la posicion 3 de la lista de imagenes de referencia se va a usar como prediccion para un macrobloque en la imagen, se producira un problema si se pierde la orden MMCO de tipo 2. Si la orden MMCo de tipo 2 se hubiese recibido correctamente en el descodificador, la imagen de referencia en la posicion 3 en la lista de imagenes de referencia se corresponded con la imagen de largo plazo 3 ya que esta imagen de referencia ocupa la posicion 3 (si se comienza con 0) en la lista de imagenes de referencia. Sin embargo, con una orden MMCO de tipo 2 perdida, la posicion 3 en la lista de imagenes de referencia es ocupada en cambio por la imagen de largo plazo 0. Esto significa que como base de la prediccion se usaran datos de pfxeles de la imagen de largo plazo 0, en lugar de los datos de pfxeles correctos del identificador de imagen de largo plazo 3.
Por lo tanto, la solucion de la tecnica anterior tiene el problema de que la gestion correcta de las imagenes de referencia depende de que las imagenes previamente descodificadas se hayan recibido y descodificado correctamente.
Las presentes realizaciones no adolecen de estos problemas de los planteamientos de la tecnica anterior al usar un enfoque fundamentalmente diferente para la senalizacion de imagenes de referencia en comparacion con la tecnica anterior. Por el contrario, las presentes realizaciones especifican que imagenes descodificadas se usaran para imagenes de referencia de una manera absoluta o explfcita en lugar de una manera relativa o implfcita. Otra forma de plantearlo es que la representacion codificada, es decir, el flujo continuo de bits, para una imagen actual contiene la informacion sobre que imagenes usar como referencia, es decir, imagenes de referencia, independientemente de las representaciones codificadas de imagenes anteriores. Por lo tanto, se puede decir que la responsabilidad logica para mantener correcta la memoria intermedia de imagenes descodificadas pasa del descodificador al flujo continuo de bits. Una forma de considerarlo es decir que la informacion sobre que imagenes de referencia utilizar para la prediccion inter y la prediccion con vectores de movimiento para una imagen se incluye en la informacion de control de la imagen. Por lo tanto, el estado de la memoria intermedia de imagenes descodificadas se senaliza para cada imagen que se codifica y descodifica en relacion con otras imagenes.
De acuerdo con un aspecto de las realizaciones se proporciona un metodo que crea Informacion de descripcion de memoria intermedia, por ejemplo, una estructura de datos, tal como una tabla general con informacion absoluta sobre que imagenes se usaran para imagenes de referencia, es decir, almacenada en una memoria intermedia de imagenes descodificadas (a la que se hace referencia tambien como memoria intermedia de imagenes de referencia) que se utilizara para la posterior codificacion. Al menos una parte de la informacion de descripcion de memoria intermedia se introduce en el flujo continuo de bits codificada por un codificador.
La Figura 3 es un diagrama de flujo de un metodo de codificacion de una imagen de acuerdo con una realizacion. El metodo generalmente comienza en la etapa S1 en la que al menos una imagen de referencia de un flujo continuo de video de multiples imagenes se determina como referencia de codificacion. En una realizacion, la etapa S1 determina una o mas imagenes de referencia que se utilizan como referencia de codificacion para una imagen actual a codificar. Por lo tanto, los datos de pfxeles de la imagen actual se codifican entonces en referencia a la imagen o imagenes de referencia. Alternativamente, o de forma adicional, al menos una imagen de referencia determinada en la etapa S1 podna utilizarse como referencia de codificacion para una imagen subsiguiente del flujo continuo de video, es decir, una imagen que se codificara y descodificara despues de la imagen actual. Esta imagen subsiguiente se encuentra por lo tanto despues de la imagen actual de acuerdo con un orden de descodificacion (y orden de codificacion). En una realizacion particular, S1 determina, para la imagen actual, cualquier imagen de referencia del flujo continuo de video como referencia de codificacion para la imagen actual y cualquier imagen de referencia del flujo continuo de video como referencia de codificacion para la imagen subsiguiente. Por lo tanto, en una realizacion particular, la etapa S1 determina todas las imagenes de referencia que son anteriores a la imagen actual en el orden de descodificacion y que se pueden usar para la prediccion inter para la imagen actual o cualquier imagen despues de la imagen actual de acuerdo con el orden de descodificacion.
La Figura 4 ilustra esquematicamente este concepto mostrando un flujo continuo 1 de video de multiples imagenes 10, 40, 42, 50. Una imagen actual 10 puede comprender una o mas franjas 20, 22 que comprenden bloques 30 de pfxeles, tales como macrobloques, a los se hace referencia tambien como bloques de arbol, o unidades de codificacion, a descodificar. Las flechas debajo de las imagenes 10, 40, 42, 50 indican la relacion de descodificacion. La imagen actual 10 se descodifica en relacion con una imagen de referencia anterior 40 y una imagen de referencia subsiguiente 42. La imagen de referencia anterior 40 es precedente y la imagen de referencia subsiguiente 42 es sucesiva con respecto a la imagen actual 10 de acuerdo con el orden de salida, pero las dos preceden a la imagen actual 10 de acuerdo con el orden de descodificacion. Esta imagen 42 de referencia subsiguiente se utiliza, ademas, como imagen de referencia para una imagen subsiguiente 50 en el flujo continuo 1 de video. Por lo tanto, en una realizacion particular, la etapa S1 podna determinar imagenes de referencia como las imagenes 40, 42 de la Figura 4.
5
10
15
20
25
30
35
40
45
50
55
Una etapa sucesiva S2 de la Figura 3 proporciona un identificador de imagen respectivo para cada imagen de referencia de la por lo menos una imagen de referencia determinada en la etapa S1. El identificador de imagen se utiliza, posiblemente junto con otros datos, para identificar de forma inequvoca una imagen de referencia. Por lo tanto, el identificador de imagen se puede considerar como una referencia absoluta a imagenes que se utilizaran como imagenes de referencia. Esto significa que es posible identificar correctamente la imagen de referencia pertinente dado su identificador de imagen y opcionalmente los otros datos.
Hay disponibles varias alternativas que podnan utilizarse como identificador de imagen de acuerdo con las realizaciones. Por ejemplo, el identificador de imagen podna ser el numero de orden de descodificacion, el numero de orden de visualizacion, el numero de orden de salida o una combinacion de numero de orden de visualizacion y un identificador adicional o de hecho cualquier otra informacion que se pueda utilizar para identificar de forma ineqmvoca la imagen.
Ejemplos de dichos identificadores de imagen incluyen el Contador de Orden de las Imagenes (POC), el numero de cuadro (frame_num) o el POC y un identificador adicional (additional_picture_id).
En una realizacion particular, el valor real del identificador de imagen se usa junto con informacion adicional u otros datos, tales como la posicion del identificador de imagen en informacion de descripcion de memoria intermedia que se genera en la etapa S3 para identificar de forma inequvoca la imagen de referencia pertinente. Por lo tanto, la descripcion de memoria intermedia identificada u obtenida con la informacion de descripcion de memoria intermedia permite una identificacion inequvoca de la(s) imagen(es) de referencia pertinente(s). En una realizacion, el propio identificador de imagen, tal como el POC o el POC mas un identificador adicional, se puede utilizar para identificar de forma ineqmvoca la imagen de referencia.
La expresion identificar ineqmvocamente una imagen de referencia se utiliza en la presente para indicar que el propio identificador de imagen o el identificador de imagen junto con otra informacion incluida en la informacion de descripcion de memoria intermedia, tal como el orden en el que la informacion de descripcion de memoria intermedia define los identificadores de imagen, se utiliza para identificar de forma explfcita una imagen de referencia. Por lo tanto, dado el identificador de imagen o el identificador de imagen y la otra informacion se habilita la identificacion de la imagen de referencia pertinente entre las imagenes del flujo continuo de video.
En una realizacion particular de la etapa S1, el numero total de imagenes de referencia determinadas para la imagen actual puede estar limitado por un parametro que se puede senalizar desde el codificador al descodificador, tal como un parametro indicado como max_num_ref_frames.
La etapa S2 se realiza preferiblemente para cada imagen de referencia determinada en la etapa S1, lo cual se ilustra esquematicamente con la lmea L1.
El(los) identificador(es) de imagen proporcionado(s) en la etapa S2 se podna(n) leer a partir de partes de encabezamiento de la(s) imagen(es) de referencia determinada(s) en la etapa S1 o alternativamente se recupera a partir de los datos que representan la(s) imagen(es) de referencia de la etapa S1.
La siguiente etapa S3 genera informacion de una descripcion de memoria intermedia, a la que se hace referencia tambien como Conjunto de Imagenes de Referencia (RPS). Esta informacion se indica como informacion de descripcion de memoria intermedia en la presente. La informacion de descripcion de memoria intermedia se genera basandose en el(los) identificador(es) de imagen proporcionado(s) en la etapa S2. Esta informacion de descripcion de memoria intermedia define, preferentemente define de forma inequvoca, la por lo menos una imagen de referencia determinada en la etapa S1. Por lo tanto, es posible obtener el identificador de imagen respectivo de la por lo menos una imagen de referencia a partir de la informacion de descripcion de memoria intermedia.
La informacion de descripcion de memoria intermedia generada se introduce en la etapa S4 en una representacion codificada de la imagen actual. Por lo tanto, la imagen codificada es asf portadora de la informacion de descripcion de memoria intermedia que se puede utilizar en el descodificador para definir e identificar las imagenes de referencia que se necesitan para descodificar la imagen actual y/o cualquier imagen subsiguiente del flujo continuo de video.
Por consiguiente, la informacion de descripcion de memoria intermedia se proporciona en informacion de control de la imagen codificada proporcionada desde el codificador a un descodificador. Como mmimo, la informacion de descripcion de memoria intermedia contiene informacion que necesita el descodificador para identificar las imagenes de referencia que se utilizaran en la memoria intermedia de imagenes descodificadas.
Por lo tanto, la informacion de descripcion de memoria intermedia se puede considerar como informacion que identifica una descripcion de memoria intermedia que es un conjunto de imagenes de referencia asociadas a una imagen actual. Esta compuesta por todas las imagenes de referencia que son anteriores a la imagen actual en el orden de descodificacion y que pueden ser utilizadas para la prediccion inter de la imagen actual o cualquier imagen que suceda a la imagen actual en el orden de descodificacion.
En una realizacion, la informacion de descripcion de memoria intermedia contiene o define informacion sobre cada imagen que es utilizada por el descodificador en el proceso de descodificacion, incluso si la imagen no se utiliza para
5
10
15
20
25
30
35
40
45
50
55
la prediccion inter o la prediccion con vectores de movimiento o cualquier otra prediccion. Esta informacion podna incluir, aunque sin caracter limitativo, el orden de descodificacion, el orden de visualizacion, informacion de capas temporales e informacion de visionado.
Tal como se ha mencionado anteriormente, el numero de imagenes de referencia que puede ser senalizado por la informacion de descripcion de memoria intermedia podna estar limitado por el parametro max_num_ref_frames. Sin embargo, la informacion de descripcion de memoria intermedia puede definir un numero menor que este numero maximo de imagenes, en cuyo caso las restantes se interpretan como “vadas”.
El metodo de la Figura 3 con las etapas S1 a S4 se realiza preferentemente para cada imagen del flujo continuo de video, excepto cualquier imagen de Regeneracion Instantanea del Descodificador (IDR) que provoca la regeneracion de la memoria intermedia de imagenes descodificadas y por lo tanto no requiere ninguna informacion de descripcion de memoria intermedia, lo cual se ilustra esquematicamente con la lmea L2. Por lo tanto, cada representacion codificada generada por el codificador es portadora preferentemente de informacion de descripcion de memoria intermedia que define las imagenes de referencia utilizadas para la codificacion y descodificacion de la imagen actual y/o cualquier imagen subsiguiente en el flujo continuo de video.
Este planteamiento de las realizaciones proporciona una ventaja significativa sobre la senalizacion de imagenes de referencia relativas de la tecnica anterior que hace uso de la orden MMCO. La senalizacion explfcita de imagenes de referencia a traves de la informacion de descripcion de memoria intermedia en cada representacion codificada de las imagenes del flujo continuo de video consigue que la gestion de imagenes de referencia sea menos vulnerable a errores y aumenta el nivel de robustez ante errores del descodificador. De esta manera, en lugar de basarse en operaciones de memoria intermedia entregadas e interpretadas correctamente en imagenes anteriores, el descodificador solamente tendra que basarse en informacion contenida en la representacion codificada de la imagen actual.
En una realizacion particular, la informacion de descripcion de memoria intermedia introducida en la representacion codificada de la imagen en la etapa S4 es, de hecho, la propia descripcion de memoria intermedia. Por lo tanto, la informacion de descripcion de memoria intermedia comprende en este caso un listado del(de los) identificador(es) de imagen proporcionado(s) en la etapa S2 o datos que permiten calcular el(los) identificador(es) de imagen proporcionado(s) en la etapa S2. Este ultimo caso se describira de forma adicional mas adelante en relacion con la Figura 6.
Por ejemplo, la descripcion de memoria intermedia podna definir una lista con identificadores de imagen 3, 5 y 6, como imagenes de referencia para una imagen actual. La informacion de descripcion de memoria intermedia introducida en la representacion codificada en la etapa S4 incluina entonces estos identificadores de imagen 3, 5 y 6.
Un planteamiento alternativo que es en general mas eficiente en cuanto a los bits, es decir, en general requiere un menor numero de bits o sfmbolos para la definicion de los identificadores de imagen, es senalizar las propiedades de imagenes de referencia, es decir, identificadores de imagen, en relacion con el valor de estas propiedades segun se haya senalizado para la imagen actual. Por ejemplo, si la imagen actual tiene un identificador de imagen 7, la lista de imagenes de referencia con identificadores 3, 5 y 6 se podna definir como -1, -2 y -4, lo cual tfpicamente se puede representar con menos bits en comparacion con 3, 5 y 6, en particular si se utiliza la codificacion de longitud variable para los identificadores de imagen.
La Figura 6 ilustra esquematicamente este planteamiento. El metodo continua desde la etapa S2 de la Figura 3. En una etapa sucesiva Slo se calcula una diferencia para cada identificador de imagen proporcionado en la etapa S2, entre el identificador de imagen y un identificador de imagen que identifica la imagen actual. Como resultado de este calculo se obtiene una diferencia o un identificador o valor delta. El metodo continua entonces hacia la etapa S3 de la Figura 3, en donde se genera la informacion de descripcion de memoria intermedia sobre la base de la(s) diferencia(s) o identificador(es) delta calculado(s).
Por lo tanto, la informacion de descripcion de memoria intermedia podna incluir en este caso los identificadores delta -1, -2 y -4 en lugar de 3, 5 y 6.
En una realizacion, se incluye informacion de orden de visualizacion delta o deltaPOC en la descripcion de memoria intermedia codificada con un codigo de longitud variable (VLC). En una realizacion particular deltaPOC se codifica con VLC para absolute_delta_POC_minus_one, y una bandera, es decir, un unico bit, para deltaPOC_sign se senaliza solamente si number_of_reorder_frames > 0, de lo contrario se deduce que el signo es negativo.
En las realizaciones anteriores que proporcionan una senalizacion explfcita de los identificadores de imagen, ya sean los propios identificadores de imagen o los identificadores delta, la informacion de descripcion de memoria intermedia constituira, de hecho, la descripcion de memoria intermedia de la imagen actual. Esta informacion de descripcion de memoria intermedia se introduce entonces en la representacion codificada de la imagen.
La informacion de descripcion de memoria intermedia podna incluirse como informacion de control en una posicion adecuada en la representacion codificada. La Figura 5 ilustra esquematicamente un ejemplo de una representacion
5
10
15
20
25
30
35
40
45
50
55
codificada 60 de una imagen. La representacion codificada 60 comprende datos 66 de carga util de v^deo que representan los datos de pfxeles codificados de los bloques de pfxeles en una franja. La representacion codificada 60 tambien comprende un encabezamiento 65 de franja que es portador de informacion de control. El encabezamiento 65 de franja forma junto con la carga util de video y un encabezamiento 64 de Capa de Abstraccion de Red (NAL) una unidad de NAL que es la entidad a la que se da salida desde un codificador. A esta unidad de NAL se le pueden anadir encabezamientos adicionales, tales como un encabezamiento 63 de Protocolo de Transporte en Tiempo Real (RTP), un encabezamiento 62 de Protocolo de Datagrama de Usuario (UDP) y un encabezamiento 61 de Protocolo de Internet (IP), para formar un paquete de datos que se puede transmitir desde el codificador al descodificador. Esta forma de empaquetamiento de unidades de NAL constituye meramente un ejemplo en relacion con el transporte de video. Son posibles otros planteamientos de gestion de unidades de NAL, tales como el formato de archivo, flujos continuos de transporte MPEG-2, flujos continuos de programa MPEG-2, etcetera.
La informacion de descripcion de memoria intermedia podna incluirse entonces en el encabezamiento 65 de franja, otro encabezamiento de imagen u otra estructura de datos especificada por la norma con la que concuerdan el codificador y el descodificador.
En otra realizacion, la informacion de descripcion de memoria intermedia introducida en la representacion codificada 60 de la imagen no tiene que ser necesariamente la misma que la descripcion de memoria intermedia de la imagen actual, sino que mas bien permite la identificacion y la recuperacion de la descripcion de memoria intermedia. Por lo tanto, en esta realizacion, la informacion de descripcion de memoria intermedia introducida en la representacion codificada 60 de la imagen define indirectamente la por lo menos una imagen de referencia determinada en la etapa S1 apuntando a la descripcion de memoria intermedia que es portadora de los identificadores de imagen o los datos, tales como identificadores delta, que permiten el calculo de los identificadores de imagen.
En tal caso, la descripcion de memoria intermedia podna ser portada por una estructura de datos asociada a la representacion codificada 60 de la imagen. Ejemplos de dichas estructuras de datos incluyen un Conjunto de Parametros de Imagen (PPS) 67 y un Conjunto de Parametros de Secuencia (SPS) 68. El PPS 67 y/o el sPs 68 se podnan incluir directamente en la representacion codificada 60, pero tipicamente se asocia a la misma a traves de la inclusion de un identificador de PPS y/o identificador de SPS en la representacion codificada 60. Por ejemplo, cada encabezamiento 65 de franja podna incluir un identificador de PPS que notifica que PPS 67 aplicar para la imagen actual. El PPS pertinente 67 a su vez puede incluir un identificador de SPS que notifica que SPS 68 aplicar para el PPS 67 y por lo tanto para la imagen actual.
La descripcion de memoria intermedia podna introducirse entonces en el PPS 67 o el SPS 68 asignado a la imagen actual. En tal caso, el identificador de PPS o identificador de SPS que se introduce en la representacion codificada 60 constituye la informacion de descripcion de memoria intermedia que se introduce en la representacion codificada 60. Este identificador de PPS o identificador de SPS permite la recuperacion de la descripcion de memoria intermedia que define los identificadores de imagen de las imagenes de referencia, y por lo tanto el identificador de PPS o identificador de SPS define indirectamente los identificadores de imagen.
El PPS 67 y el SPS 68 constituyen simplemente ejemplos de estructuras de datos asociadas a representaciones codificadas 60 de imagenes y que se pueden usar como portadoras de informacion de descripcion de memoria intermedia de acuerdo con las realizaciones.
La Figura 7 ilustra una realizacion alternativa en donde una o mas descripciones de memoria intermedia se senalizan en una estructura de datos de manera que la misma descripcion de memoria intermedia puede usarse para multiples imagenes.
El metodo comienza en la etapa S20, en donde se genera una estructura de datos, tal como una tabla. La estructura de datos comprende multiples descripciones de memoria intermedia predefinidas que definen, cada una de ellas, al menos una imagen de referencia.
Cada descripcion de memoria intermedia de la estructura de datos generada podna definir los identificadores de imagen directamente, es decir, incluir una lista de identificadores de imagen. Sin embargo, un planteamiento de este tipo requiere en general mucha descripcion de memoria intermedia predefinida en la estructura de datos. Un planteamiento mas eficiente es combinar el uso de multiples descripciones de memoria intermedia predefinidas con la senalizacion de identificadores delta segun se ha descrito anteriormente. En tal caso, cada descripcion de memoria intermedia predefinida comprende al menos un identificador delta respectivo, que se utiliza en el descodificador junto con el identificador de imagen de la imagen actual para calcular el(los) identificador(es) de imagen de una descripcion de memoria intermedia predefinida.
La Tabla 1 a continuacion ilustra un ejemplo de una estructura de datos del tipo mencionado con identificadores delta que se pueden utilizar para un flujo continuo de video segun se ilustra en la Figura 8. El flujo continuo de video de la Figura 8 comienza con una imagen de IDR, la cual es un cuadro Intra (I) que elimina todas las dependencias con respecto a datos transmitidos antes de la imagen de IDR, es decir, marca todas las imagenes de referencia como “no utilizada para referencia”. La imagen de IDR no necesita una descripcion de memoria intermedia ya que
5
10
15
20
25
30
35
40
45
vada la memoria intermedia de imagenes descodificadas. El flujo continuo de v^deo de la Figura 8 esta en forma de video por capas que proporciona imagenes en diferentes capas temporales, identificadas por identificadores temporales (tempomljd) n, n+1 y n+2 en la Figura 8.
Tabla 1 - estructura de datos con descripciones de memoria intermedia predefinidas
Entrada
Memoria intermedia de imagen 1 Memoria intermedia de imagen 2 Memoria intermedia de imagen 3 Memoria intermedia de imagen 4
0
dP: -1 tld: 2 dP: -2 tld: 1 dP: -4 tld: 0 dP: -8 tld: 0
1
dP: -1 tld: 0 dP: -2 tld: 2 dP: -5 tld: 0 dP: -9 tld: 0
2
dP: -1 tld: 2 dP: -2 tld: 0 dP: -6 tld: 0 dP: -10 tld: 0
3
dP: -1 tld: 1 dP: -2 tld: 2 dP: -3 tld: 0 dP: -7 tld: 0
La Tabla 1 muestra un ejemplo de una tabla de descripcion de memoria intermedia en donde se indican deltaPOC (dP) y tempomljd (tId). La tabla se construye utilizando el esquema en el que se incluyen las dos imagenes de referencia mas cercanas (POC(actual)-1 y POc(actual)-2) y las dos de la capa temporal mas baja en el intervalo de POC(actual)-3 a POC (actual)-10.
Un ejemplo de uso de esta tabla por parte del codificador es, para una imagen con POC=n, senalizar la entrada de la tabla (n%4), es decir, n modulo 4, al descodificador. En este ejemplo, la memoria intermedia de imagenes descodificadas esta compuesta por cuatro imagenes (memoria intermedia de imagen 1 a memoria intermedia de imagen 4). Las imagenes dependen del POC de la imagen actual y de que entrada se use. Por ejemplo, si la imagen con POC=7 utiliza la entrada 3, las imagenes de referencia en la memoria intermedia de imagenes descodificadas se compondran de imagenes con POC {6, 5, 4, 0}.
La estructura de datos generada en la etapa S20 se senaliza desde el codificador al descodificador. Esta senalizacion se puede realizar de acuerdo con diversas realizaciones. La estructura de datos podna transportarse en el PPS, el SPS, un conjunto de parametros nuevo o en otra estructura de datos especificada por la norma a la que se ajusta el codificador y el descodificador. Esto se ilustra esquematicamente por medio de la etapa S21 en donde la estructura de datos se introduce en un PPS o un SPS asociado a una representacion codificada del flujo continuo de video. En tal caso, la etapa S22 introduce preferentemente un identificador de PPS o identificador de SPS en la representacion codificada de la imagen, por ejemplo en un encabezamiento de franja. Este identificador de PPS o identificador de SPS permite entonces la identificacion de la estructura de datos que esta disponible cuando se descodifica la imagen actual.
El metodo continua hacia las etapas S1 y S2 de la Figura 7, en donde se determinan imagenes de referencia y se proporcionan identificadores de imagen para la imagen actual. Una etapa sucesiva S23 selecciona, basandose en el por lo menos un identificador de imagen proporcionado en la etapa S2, una descripcion de memoria intermedia a partir de la estructura de datos generada en la etapa S20.
Una vez que se ha seleccionado dicha descripcion de memoria intermedia, tal como una entrada en la Tabla 1, la etapa S24 genera informacion de descripcion de memoria intermedia que comprende un identificador, tal como un numero de entrada, de la descripcion de memoria intermedia seleccionada. El metodo continua hacia la etapa S4 donde se introduce la informacion de descripcion de memoria intermedia en la representacion codificada de la imagen.
Por lo tanto, con el fin de especificar que descripcion de memoria intermedia usar para la imagen actual se puede senalizar un identificador para la imagen actual. Un ejemplo de dicho identificador es un entero no negativo senalizado en el(los) encabezamiento(s) de franja de la imagen actual que representa el numero de la descripcion de memoria intermedia en el orden en que se senalizan las descripciones de memoria intermedia.
En una implementacion tfpica, la etapa S20 se realiza una vez para el flujo continuo de video o una vez para un conjunto de multiples imagenes del flujo continuo de video. Esto significa que se genera entonces una sola de estas estructuras de datos para el flujo continuo de video o para el conjunto de multiples imagenes. Las siguientes etapas S21 a S24 de la Figura 7 se realizan preferentemente para cada imagen del flujo continuo de video o el conjunto de multiples imagenes.
Por lo tanto, la estructura de datos, tal como la tabla, se puede crear en el codificador y se puede transmitir al descodificador. En la informacion de control del flujo continuo de bits codificado se proporciona el numero de entrada que se utilizara. Mediante el uso de una tabla del tipo mencionado, el descodificador puede obtener informacion absoluta sobre que imagenes se utilizaran como imagenes de referencia detectando el numero de entrada en el flujo continuo de bits descodificado y usando este numero de entrada para buscar la entrada en la tabla. La entrada se utiliza entonces para determinar que imagenes se almacenaran en la memoria intermedia de imagenes descodificadas.
5
10
15
20
25
30
35
40
45
50
55
La introduccion de entradas de la descripcion de memoria intermedia en, por ejemplo, el SPS reduce la tara de bits de senalizacion de las descripciones de memoria intermedia de forma explfcita en el encabezamiento de franja. Estas descripciones de memoria intermedia se pueden utilizar para multiples franjas/imagenes en la misma secuencia, es decir, flujo continuo de video, y de esta manera reducir el numero de bits requeridos por imagen.
En una realizacion, para cada entrada de la descripcion de memoria intermedia en el PPS podnan estar presentes el delta_POC y la temporaljd de todas las imagenes de referencia. La additional_picture_id opcional se deduce preferentemente de manera que sea 0 para imagenes descritas por una entrada en el PPS.
De acuerdo con una realizacion adicional, la senalizacion explfcita de la descripcion de memoria intermedia y la senalizacion de referencia a una entrada en una estructura de datos general con multiples descripciones de memoria intermedia predefinidas, tales como una entrada en la tabla anterior, se pueden combinar. En tal caso, las mismas se pueden combinar por medio del descodificador para formar una descripcion de memoria intermedia final para la imagen actual. Una forma de combinar la senalizacion explfcita y la senalizacion de referencia es unir el conjunto de imagenes de referencia descrito por senalizacion explfcita con el conjunto de imagenes de referencia descrito por la senalizacion de referencia para formar un conjunto combinado de imagenes de referencia.
En tal caso, la etapa S3 de la Figura 3 comprende preferentemente la generacion de la informacion de descripcion de memoria intermedia el identificador de la descripcion de memoria intermedia seleccionada en la etapa S23 y de manera que comprende informacion que define por lo menos una imagen de referencia. Esta informacion que define al menos una imagen de referencia podna ser el identificador de imagen de la propia imagen de referencia o un identificador delta a partir del cual se puede calcular el identificador de imagen.
Una imagen que se utiliza como referencia durante un penodo de tiempo prolongado (imagen de referencia de largo plazo) viene indicada preferentemente por descripcion explfcita en los encabezamientos de franja de las imagenes para las que esta disponible como referencia. La razon es que resultana inadecuado incluir todas las distancias de los numeros de POC en las descripciones de memoria intermedia predefinidas senalizadas en el PPS o SPS.
En una realizacion particular, la representacion codificada de la imagen comprende preferentemente una bandera para indicar si la senalizacion explfcita de la informacion de descripcion de memoria intermedia y/o la senalizacion implfcita de la informacion de descripcion de memoria intermedia ha sido seleccionada para la imagen actual. Esta bandera podna, por ejemplo, incluirse en el encabezamiento de franja de la representacion codificada de la imagen o en algun otro campo de informacion de control.
En una realizacion particular, una imagen 10 puede estar compuesta por una o multiples franjas 20, 22 como se muestra en la Figura 4. En tal caso, una franja 20, 22 es una parte de la imagen 10 descodificable independientemente. En otras palabras, una franja codificada se puede descodificar incluso si se pierden los datos de otra franja codificada de la misma imagen 10.
En un planteamiento de este tipo, la etapa S1 de la Figura 3 determina preferentemente al menos una imagen de referencia del flujo continuo de video para cada franja en la imagen. A continuacion, podna ser posible que una primera franja usase un primer conjunto de una o mas imagenes de referencia y una segunda franja usase un segundo conjunto de una o mas imagenes de referencia. El segundo conjunto podna ser igual al primer conjunto o ser diferente del primer conjunto. Tambien es posible que al menos una de las imagenes de referencia sea comun para el primer conjunto y el segundo conjunto.
La etapa S2 determina preferentemente los identificadores de imagen para todas las imagenes de referencia determinadas en la etapa S1 para al menos una franja, preferentemente para todas las franjas, de la imagen. La informacion de descripcion de memoria intermedia se genera a continuacion en la etapa S3 sobre la base de estos identificadores de imagen y por lo tanto define las imagenes de referencia. En una realizacion, la descripcion de memoria intermedia generada en la etapa S3 se introduce en un encabezamiento de franja respectivo de la representacion codificada de la imagen para cada franja. Por lo tanto, cada encabezamiento de franja de la representacion codificada de la imagen es portador preferentemente de una instancia respectiva de la informacion de descripcion de memoria intermedia. Mas preferentemente, la informacion de descripcion de memoria intermedia transportada en el encabezamiento de franja de una primera franja de la imagen es igual a la informacion de descripcion de memoria intermedia transportada en el encabezamiento de franja de una segunda franja de la imagen.
La codificacion y descodificacion de video tambien se pueden aplicar al video denominado escalable o por capas. Por ejemplo, la escalabilidad temporal es soportada en la H.264/MPEG-4 AVC y la Codificacion de Video Escalable (SVC) a traves de la definicion de subsecuencias y el uso de la temporal_id en la SVC y la introduccion de cuadros “no existentes”. Sin embargo, con el fin de soportar la escalabilidad temporal, las imagenes en las capas temporales mas altas presentan restricciones cuando se trata de usar las MMCO. El codificador es responsable de garantizar que las mMcOs en una capa temporal no afectan a imagenes de capas temporales mas bajas de manera diferente con respecto al caso en el que se pierde la capa temporal y se introducen imagenes “no existentes” y se aplica el proceso de ventana deslizante.
5
10
15
20
25
30
35
40
45
50
55
Esto impone restricciones sobre el codificador en la seleccion de la estructura de codificacion y el uso de imagenes de referencia. Por ejemplo, considerese el ejemplo de la Figura 2. Supongase que el numero maximo de cuadros de referencia en la memoria intermedia de imagenes descodificadas (max_num_ref_frames) es tres aun cuando cada imagen solamente utiliza dos imagenes de referencia para la prediccion inter. La razon es que cada imagen debe tener una imagen adicional de la otra capa temporal que sera usada para la prediccion inter por la siguiente imagen.
Con el fin de poder disponer de la imagen POC=0 y la imagen POC=2 cuando se descodifica la imagen POC=4, la imagen POC=3 debe tener una orden de marcacion de imagen de referencia explfcita (MMCO) que marque la imagen 1 como no disponible.
Sin embargo, si se elimina la capa temporal 1 (por ejemplo, por parte de un nodo de red) se produciran vados en frame_num para todas las imagenes de numeracion impar. Se crearan imagenes “no existentes” para estas imagenes y se aplicara un proceso de ventana deslizante. Eso dara como resultado que la imagen “no existente” POC=3 marque la imagen POC=0 como no disponible. Por lo tanto, no estara disponible para la prediccion cuando se descodifique la imagen POC=4. Dado que el codificador no puede hacer que el proceso de descodificacion sea el mismo para los dos casos; cuando todas las imagenes se descodifican y cuando se descodifica solamente la capa mas baja; el ejemplo de estructura de codificacion de la Figura 2 no se puede utilizar para la escalabilidad temporal segun la tecnica anterior.
Por lo tanto, hay soluciones de la tecnica anterior que tienen problemas con la escalabilidad temporal para ciertas estructuras de codificacion ya que la informacion sobre las imagenes de referencia para la imagen actual se ve afectada por la eliminacion de una imagen previa del flujo continuo de bits en la medida en que la informacion de imagen de referencia se senaliza de una manera relativa. Al usar las realizaciones, la escalabilidad temporal no se vera limitada como anteriormente, ya que la imagen de referencia para la imagen actual no se ve afectada por la eliminacion de imagenes anteriores del flujo continuo de bits puesto que se senaliza de un modo absoluto.
En el caso de un flujo continuo de video escalable con las imagenes agrupadas en multiples capas, la etapa S2 de la Figura 3 comprende preferentemente proporcionar un identificador de imagen e informacion de capa temporal que identifica una capa de las multiples capas a las que pertenece la imagen de referencia. La informacion de descripcion de memoria intermedia se genera a continuacion en la etapa S3 basandose en el por lo menos un identificador de imagen y la informacion de capa temporal. Esto significa que la informacion de descripcion de memoria intermedia define de este modo el por lo menos un identificador de imagen y la informacion de capa temporal.
Por ejemplo, se incluye informacion de capa temporal, tal como temporal_id, para cada imagen en la descripcion de memoria intermedia senalizada usando ceil(log2(max_temporal_layers_minus1)) bits para la senalizacion de temporal_id. La escalabilidad temporal es simplemente un ejemplo de video multi-capa en el cual pueden aplicarse las realizaciones. Otros tipos incluyen video multi-capa en el que cada imagen tiene un identificador de imagen y un identificador de vista. Otros ejemplos de escalabilidad incluyen escalabilidad espacial, escalabilidad de la relacion senal/ruido (SNR), escalabilidad de la profundidad de bits y escalabilidad del formato de croma.
Las realizaciones implican que conmutacion temporal en sentido descendente es siempre posible. Cada capa temporal junto con las capas inferiores constituira una sub-secuencia. Estas sub-secuencias no necesitan senalizacion explfcita.
En general, el codificador es libre de seleccionar que imagenes incluir en la descripcion de memoria intermedia y puede basar su seleccion en cualquier aspecto, tal como las imagenes mas cercanas en el orden de visualizacion. Tfpicamente, un codificador selecciona la descripcion de memoria intermedia para intentar lograr la maxima compresion, mientras se cumple un conjunto de restricciones colaterales. Un ejemplo de una restriccion de este tipo es un numero maximo de imagenes de referencia debido al tamano de la memoria. Otro ejemplo es que el flujo continuo de video sea descodificable tambien cuando ciertas imagenes codificadas en el flujo continuo de bits se eliminen del flujo continuo de bits antes de la descodificacion. Un ejemplo adicional es que como imagenes de referencia solamente se pueden seleccionar imagenes que estan disponibles para referencia en la memoria intermedia de imagenes descodificadas.
Por lo tanto, en una realizacion la etapa S1 de la Figura 3 comprende determinar la por lo menos una imagen de referencia para la imagen actual mediante la maximizacion de la eficiencia de compresion de la representacion codificada de la imagen, mientras se cumple por lo menos una restriccion colateral. La por lo menos una restriccion colateral se selecciona preferentemente en este caso de entre un numero maximo predefinido de imagenes de referencia y tambien se genera una representacion codificada descodificable del flujo continuo de video cuando, de la representacion codificada del flujo continuo de video, se elimina por lo menos una representacion codificada de una imagen.
De acuerdo con otro aspecto de las realizaciones se proporciona un metodo en el que se recibe un video o flujo continuo de datos codificado, se detecta informacion de descripcion de memoria intermedia en el flujo continuo de video codificado y se determina una referencia absoluta a imagenes que se usaran como imagenes de referencia para la descodificacion de una imagen actual o como imagenes de referencia para una descodificacion futura, sobre
5
10
15
20
25
30
35
40
45
50
55
la base de la informacion de descripcion de memoria intermedia. Las imagenes que se utilizaran como imagenes de referencia se almacenan en una memoria intermedia de imagenes descodificadas.
La Figura 9 es un diagrama de flujo de un metodo para descodificar una representacion codificada de una imagen de acuerdo con una realizacion. El metodo comienza en la etapa S30, donde a partir de la representacion codificada de la imagen se recupera informacion de descripcion de memoria intermedia que define al menos una imagen de referencia. La informacion de descripcion de memoria intermedia se utiliza en la etapa S31 para determinar al menos un identificador de imagen que, preferentemente de forma ineqmvoca, identifica una imagen de referencia respectiva como referencia de descodificacion para la imagen. El por lo menos un identificador de imagen de referencia determinado en la etapa S31 se utiliza en la etapa S32 para actualizar una memoria intermedia de imagenes descodificadas.
Una vez que la memoria intermedia de imagenes descodificadas se ha actualizado para comprender las imagenes de referencia correctas necesarias para la descodificacion de la imagen, el metodo tfpicamente continua hacia la etapa S33 donde la imagen se descodifica sobre la base de la representacion codificada de la imagen y por lo menos una de las imagenes de referencia comprendida, presente o almacenada en la memoria intermedia de imagenes descodificadas e identificada sobre la base de la informacion de descripcion de memoria intermedia.
En una realizacion preferida, la etapa de descodificacion S33 se realiza despues de la actualizacion de la memoria intermedia de imagenes descodificadas segun se indica en la Figura 9.
La actualizacion de la memoria intermedia de imagenes descodificadas en la etapa S32 implica preferentemente que la imagen de referencia identificada por el identificador de imagen determinado se marca como “utilizada para referencia” o se marca como “utilizada para prediccion” para indicar que esta imagen de referencia se usara como referencia o prediccion de descodificacion para la imagen actual y/o cualquier imagen subsiguiente. En una realizacion particular, se podnan marcar imagenes de referencia como utilizadas para referencia de corto plazo o como utilizadas para referencia de largo plazo.
En una realizacion particular la etapa S30 recupera la informacion de descripcion de memoria intermedia que define multiples imagenes de referencia a partir de la representacion codificada de la imagen. En dicha realizacion, la etapa S31 podna determinar, sobre la base de la informacion de descripcion de memoria intermedia, i) al menos un identificador de imagen que identifica una imagen de referencia respectiva como referencia de descodificacion para la imagen y ii) al menos un identificador de imagen que identifica una imagen de referencia respectiva como referencia de descodificacion para una imagen subsiguiente, de acuerdo con un orden de descodificacion, del flujo continuo de video. En realizaciones alternativas, la informacion de descripcion de memoria intermedia identifica uno o mas identificadores de imagen de imagen(es) de referencia respectiva(s) como referencia de descodificacion para la imagen actual y/o uno o mas identificadores de imagen de imagen(es) de referencia respectiva(s) como referencia de descodificacion para una imagen subsiguiente, de acuerdo con el orden de descodificacion, del flujo continuo de video.
La etapa S32 actualiza preferentemente la memoria intermedia de imagenes descodificadas de manera que comprenda la imagen de referencia respectiva identificada por el por lo menos un identificador de imagen determinado en la etapa S31.
Tal como se ha descrito previamente en el presente documento, la informacion de descripcion de memoria intermedia se puede proporcionar en un encabezamiento de franja u otro campo de informacion de control de la representacion codificada de la imagen. En tal caso, la etapa S30 de la Figura 9 comprende recuperar la informacion de descripcion de memoria intermedia a partir de un encabezamiento de franja de la representacion codificada de la imagen. Una imagen multi-franja generalmente comprende multiples encabezamientos de franja. En tal caso, cada encabezamiento de franja comprende preferentemente la misma informacion de descripcion de memoria intermedia. Entonces en la etapa S30 es suficiente con recuperar la informacion de descripcion de memoria intermedia del primer encabezamiento de franja de la imagen ya que cualquiera de los encabezamientos de franja restantes de la imagen incluira la misma informacion de descripcion de memoria intermedia. La informacion de descripcion de memoria intermedia en los otros encabezamientos de franja se puede utilizar entonces como caractenstica de reparacion de errores si se pierde la primera franja.
La informacion de descripcion de memoria intermedia podna incluir explfcitamente el(los) identificador(es) de imagen de la(s) imagen(es) de referencia. En tal caso, la etapa S30 simplemente recupera el por lo menos un identificador de imagen a partir de la informacion de descripcion de memoria intermedia.
En una realizacion alternativa, la informacion de descripcion de memoria intermedia comprende valores delta o identificadores delta. La Figura 10 es un diagrama de flujo que ilustra una realizacion de la etapa S31 en la Figura 9 para dicho caso. El metodo continua entonces desde la etapa S30 de la Figura 9. Una etapa sucesiva S40 recupera un identificador delta respectivo sobre la base de la informacion de descripcion de memoria intermedia. El(los) identificador(es) delta se usa(n) en la etapa S41 junto con un identificador de imagen de la imagen actual para calcular el(los) identificador(es) de imagen de la(s) imagen(es) de referencia. El metodo continua entonces hacia la etapa S32 de la Figura 10.
5
10
15
20
25
30
35
40
45
50
55
Por lo tanto, en esta realizacion el descodificador utiliza informacion disponible para la imagen actual para la construccion de la descripcion de memoria intermedia final para la imagen actual a partir de la informacion de descripcion de memoria intermedia senalizada. Dicha informacion incluye, aunque sin caracter limitativo, el POC actual (POC(act)), que junto con un deltaPOC senalizado se puede utilizar para calcular el POC de la imagen de referencia (POc(ref)) como POC(ref)=POC(act) + deltaPOC.
Otra realizacion se refiere al uso de multiples descripciones de memoria intermedia predefinidas. La Figura 11 ilustra esquematicamente un planteamiento de este tipo. En una primera etapa S50 se recupera una estructura de datos que comprende multiples descripciones de memoria intermedia predefinidas. En una realizacion preferida, la estructura de datos se recupera sobre la base de informacion transportada en la representacion codificada de la imagen. Por ejemplo, la estructura de datos se puede senalizar desde el lado del codificador hacia el lado del descodificador como parte de PPS o del SPS de la representacion codificada de la imagen. En tal caso, la estructura de datos se recupera a partir del PPS o del SPS en la etapa S50 sobre la base de un identificador de PPS o identificador de sPs usado como parte de la informacion de descripcion de memoria intermedia en la representacion codificada de la imagen, tal como en el encabezamiento de franja. Alternativamente, un identificador de PPS se recupera a partir del encabezamiento de franja y el PPS a su vez comprende un identificador de SPS que se puede utilizar si la estructura de datos se senaliza como parte del SPS.
Una etapa sucesiva S51 recupera un identificador de una descripcion de memoria intermedia como parte de la informacion de descripcion de memoria intermedia a partir de la representacion codificada de la imagen, por ejemplo, a partir del encabezamiento de franja. Este identificador se utiliza con el fin de identificar que descripcion de memoria intermedia predefinida de la estructura de datos recuperada en la etapa S50 se va a utilizar para la imagen actual en la etapa S52. El metodo continua entonces hacia la etapa S31 de la Figura 1, donde se determinan identificadores de imagen a partir de la descripcion de memoria intermedia predefinida identificada.
Haciendo uso de las realizaciones es posible aplicar el esquema de memoria intermedia optimo para cualquier estructura de codificacion con muy poca tara. Lo que se necesita en el encabezamiento de franja es simplemente una referencia a la descripcion de memoria intermedia correcta en el PPS o similar. Observese que la descripcion de memoria intermedia tambien se puede poner en un encabezamiento de imagen o similar, o un conjunto de parametros compartido entre todas las franjas de una imagen. La propiedad importante es que la descripcion de memoria intermedia que se va a usar para descodificar una imagen espedfica se envfa con la imagen y no con la imagen previa en el orden de descodificacion como en la tecnica anterior. Ademas, la informacion de descripcion de memoria intermedia se utiliza para senalizar todas las imagenes de referencia en la memoria intermedia de imagenes descodificadas que se deben mantener para descodificar cada imagen respectiva en el flujo continuo de video, en lugar de senalizar informacion delta que puede provocar desajustes de largo plazo entre el lado del codificador y el lado de descodificacion cuando se pierde de manera no intencionada un solo paquete de datos.
Tal como se ha dado a conocer anteriormente en el presente documento, se pueden combinar la senalizacion explfcita de la descripcion de memoria intermedia en la representacion codificada de una imagen y la senalizacion de referencia a la descripcion de memoria intermedia predefinida en una estructura de datos. Una forma de combinar la senalizacion explfcita y la senalizacion de referencia es unir el conjunto de imagenes de referencia descrito por senalizacion explfcita con el conjunto de imagenes de referencia descrito por la senalizacion de referencia para formar un conjunto combinado de imagenes de referencia. Entonces una o mas imagenes de referencia incluidas en el conjunto de imagenes de referencia descritas por la senalizacion de referencia, pero no incluidas en la senalizacion explfcita, posiblemente se eliminan del conjunto combinado de imagenes de referencia con el fin de tener una descripcion de memoria intermedia final con no mas de un numero maximo (max_num_ref_frames) de imagenes de referencia. Preferentemente las imagenes se eliminan en el orden en que se enumeran en la descripcion de memoria intermedia general, es decir, la descripcion de memoria intermedia predefinida, empezando con el ultimo hacia delante.
La Figura 12 es un diagrama de flujo que ilustra un planteamiento de este tipo. El metodo continua desde las etapas S30 en la Figura 9 y la etapa S52 en la Figura S31. Por lo tanto, en esta realizacion, la informacion de descripcion de memoria intermedia comprende tanto el identificador de la descripcion de memoria intermedia recuperado en la etapa S51 de la Figura 11 como informacion que define por lo menos una imagen de referencia recuperada en la etapa S30 de la Figura 9. Esta informacion recuperada en la etapa S30 puede ser el(los) identificador(es) de imagen real(es) o el(los) identificador(es) delta mencionado(s) anteriormente.
Una etapa sucesiva S60 determina un primer conjunto de al menos un identificador de imagen que identifica una imagen de referencia respectiva a partir de la descripcion de memoria intermedia predefinida identificada en la etapa S52 de la Figura 11. Correspondientemente, un segundo conjunto de por lo menos un identificador de imagen que identifica una imagen de referencia respectiva se determina en la etapa S61 a partir de la informacion recuperada en la etapa S30 de la Figura 9. Las etapas S60 y S61 se podnan llevar a cabo secuencialmente en cualquier orden o al menos parcialmente en paralelo.
La siguiente etapa S62 forma un conjunto combinado de identificadores de imagen basandose en el primer conjunto determinado en la etapa S60 y el segundo conjunto determinado en la etapa S61.
5
10
15
20
25
30
35
40
45
50
55
60
Una etapa sucesiva opcional aunque preferida S63 compara el numero total de identificadores de imagen (IDS) del conjunto combinado con un numero maximo de imagenes de referencia (MAX), es decir, el parametro max_num_ref_frames tipicamente senalizado en el SPS. Si el numero total de identificadores de imagen en el conjunto combinado supera el numero maximo de imagenes de referencia que se pueden almacenar en la memoria intermedia de imagenes descodificadas, el metodo continua hacia la etapa S64. Esta etapa S64 elimina uno o mas identificadores de imagen incluidos en el primer conjunto, pero no en el segundo conjunto hasta que el numero total de identificadores de imagen en el conjunto combinado ya no supera el numero maximo de imagenes de referencia. Asf, el conjunto combinado se actualiza por lo tanto eliminando identificadores de imagen determinados en la etapa S60. Los identificadores de imagen se eliminan preferentemente en el orden en el que se enumeran en la descripcion de memoria intermedia predefinida identificada en la etapa S52 de la Figura 11 comenzando desde el ultimo identificador de imagen y siguiendo hacia delante.
En una realizacion particular, la representacion codificada de la imagen comprende preferentemente una bandera para indicar si para la imagen actual se ha seleccionado senalizacion explfcita de la informacion de descripcion de memoria intermedia y/o senalizacion implfcita de la informacion de descripcion de memoria intermedia. En tal caso, el descodificador recupera la bandera a partir de la representacion codificada de la imagen, por ejemplo, a partir del encabezamiento de franja o de algun otro campo de informacion de control, con el fin de determinar que tipo de senalizacion de la informacion de descripcion de memoria intermedia se ha utilizado para la imagen actual.
La Figura 13 es un diagrama de flujo que ilustra etapas adicionales del metodo de la Figura 9, por el cual la memoria intermedia de imagenes descodificadas actualizada en la etapa S32 se utiliza con fines de descodificacion.
Una vez que la memoria intermedia de imagenes descodificadas se ha actualizado en la etapa S32, puede haber imagenes disponibles en la memoria intermedia de imagenes descodificadas, pero las mismas no estan incluidas en la descripcion de memoria intermedia. Por lo tanto, en una realizacion, las imagenes que estan disponibles en la memoria intermedia de imagenes descodificadas pero no incluidas en la descripcion de memoria intermedia se eliminan, por parte del descodificador, de la memoria intermedia de imagenes descodificadas o se marcan como “no utilizada para referencia” o “no utilizada para prediccion”. Por lo tanto, en esta realizacion la eliminacion de imagenes de referencia de la memoria intermedia de imagenes descodificadas o la marcacion de imagenes como “no utilizada para referencia” se lleva a cabo por el descodificador antes del proceso de descodificacion de imagenes de la imagen que contiene la descripcion de memoria intermedia.
La etapa S70 ilustra este procedimiento mediante la eliminacion, de la memoria intermedia de imagenes descodificadas, de cualquier imagen de referencia almacenada en la memoria intermedia de imagenes descodificadas y que no este asociada a ninguno del por lo menos un identificador de imagen determinado a partir de la informacion de descripcion de memoria intermedia. En una realizacion alternativa de esta etapa S70, la(s) imagen(es) de referencia no se elimina(n) necesariamente de la memoria intermedia de imagenes descodificadas. Esta realizacion de la etapa S70 marca como no utilizada para referencia o no utilizada para prediccion cualquier imagen de referencia almacenada en la memoria intermedia de imagenes descodificadas y que no este asociada a ninguno del por lo menos un identificador de imagen determinado a partir de la informacion de descripcion de memoria intermedia. Esto significa que la imagen de referencia marcada no se utilizara como base de prediccion para la imagen actual o para cualquier imagen subsiguiente en el flujo continuo de video. El descodificador, por lo tanto, puede dar salida a la imagen de referencia marcada si existe una necesidad de obtener una posicion disponible en la memoria intermedia de imagenes descodificadas. En una realizacion particular, una imagen marcada como no utilizada para referencia no se puede incluir en la descripcion de memoria intermedia y volverse a marcar como utilizada para referencia.
En una realizacion particular, cualquier imagen de referencia presente en la memoria intermedia de imagenes descodificadas y asociada a cualquiera de los identificadores de imagen determinados sobre la base de la informacion de descripcion de memoria intermedia se marca preferentemente en la etapa S70 como utilizada para referencia. En una realizacion, una imagen de referencia se podna marcar o bien como utilizada para referencia de corto plazo o bien como utilizada para referencia de largo plazo. La seleccion entre estas dos alternativas particulares se realiza preferentemente sobre la base de la informacion de descripcion de memoria intermedia.
La etapa S71 ilustra una realizacion opcional adicional. Esta realizacion da salida a cero o mas de las imagenes que se han marcado como no utilizada para referencia por parte del descodificador de acuerdo con la descripcion de memoria intermedia para su visualizacion por el descodificador. Uno de estos procesos de ejemplo para la salida es el proceso de lanzamiento de la H.264/MPEG-4 AVC. Salida se refiere en la presente a dar salida para la visualizacion. Que imagenes utilizar como imagenes de referencia y a cuales dar salida, es decir visualizar, son procesos independientes en la H.264 y HEVC. Esto significa que a una imagen se le puede dar salida antes de que se elimine como imagen de referencia, es decir, se marque como no utilizada para referencia, o se puede eliminar como cuadro de referencia marcandola como no utilizada para referencia antes de que se le de salida.
Durante el proceso de descodificacion, puede ocurrir que la descripcion de memoria intermedia contenga informacion sobre imagenes (a las que se hace referencia tambien como cuadros) que no estan disponibles y por lo tanto no se pueden utilizar para imagenes de referencia. En una realizacion, una serie de imagenes “no existentes” se genera por parte del descodificador si la descripcion de memoria intermedia contiene informacion sobre imagenes
5
10
15
20
25
30
35
40
45
50
55
que no estan disponibles en la memoria intermedia de imagenes descodificadas. A cada una de estas imagenes se les puede asignar valores a variables que contienen informacion que es utilizada por el descodificador en el proceso de descodificacion, incluso si la imagen no se utiliza para prediccion inter o prediccion con vectores de movimiento. Dicha informacion podna incluir, aunque sin caracter limitativo, numero de orden de descodificacion, numero de orden de visualizacion, informacion de capas temporales, informacion de vista, es decir, parametros tales como frame_num, POC, temporaljd y view_id.
En una realizacion, la generacion de imagenes no existentes se lleva a cabo por parte del descodificador antes del proceso de descodificacion de imagenes de la imagen que contiene la informacion de descripcion de memoria intermedia.
Las etapas S72 y S73 ilustran una realizacion de este tipo. La etapa S72 compara el por lo menos un identificador de imagen determinado a partir de la informacion de descripcion de memoria intermedia con identificadores de imagen asociados a imagenes de referencia ya almacenadas en la memoria intermedia de imagenes descodificadas. Si un identificador de imagen determinado no se encuentra entre los identificadores de imagen de las imagenes de referencia almacenadas en la memoria intermedia de imagenes descodificadas, se determina que la imagen asociada al identificador de imagen determinado falta o que no existe. En una realizacion, opcionalmente se genera una imagen no existente en la etapa S73 y la misma se almacena en la memoria intermedia de imagenes descodificadas. A esta imagen no existente se le asignan entonces todos los parametros, tales como identificador de imagen, obtenidos a partir de la informacion de descripcion de memoria intermedia con respecto a esta imagen particular. El metodo continua entonces hacia la etapa S33 de la Figura 9 en donde se puede iniciar el proceso de descodificacion.
Las imagenes que se senalizan en la descripcion de memoria intermedia pero no existen en la memoria intermedia de imagenes descodificadas se marcan preferentemente como “no existentes”. Sin embargo, puesto que el POC y la temporaljd de dichas imagenes se incluyen en la descripcion de memoria intermedia, no se requiere ninguna senalizacion explfcita de modificacion de la lista de imagenes de referencia.
Si la imagen “no existente” no se utiliza como referencia, el proceso de descodificacion proseguira correctamente sin senalizacion adicional (y sin la tara incorporada con la senalizacion explfcita de modificaciones de la lista de imagenes de referencia).
En una realizacion, la marcacion de cero o mas imagenes en la etapa S70 se lleva a cabo por parte del descodificador en una primera etapa. En una segunda etapa, el descodificador da salida a cero o mas imagenes en la etapa S71. En una tercera etapa el descodificador genera cero o mas imagenes “no existentes” en la etapa S73.
En una realizacion alternativa, la marcacion de cero o mas imagenes se realiza por parte del descodificador en una primera etapa en la etapa S70. A continuacion, el descodificador realiza un proceso iterativo en el que se da salida a imagenes (S71) y se generan imagenes no existentes (S73) para cada imagen descrita en la descripcion de memoria intermedia que no esta disponible en la memoria intermedia de imagenes descodificadas.
Las realizaciones se refuerzan adicionalmente mediante la aplicacion de operaciones de memoria intermedia, por ejemplo, el proceso de marcacion de imagenes, antes de la descodificacion de imagenes correspondiente a la imagen actual, con lo cual se consigue que la descripcion de memoria intermedia explfcita se aplique a la imagen actual. Esto consigue que la gestion de imagenes de referencia sea todavfa menos vulnerable a errores, mejora las posibilidades de escalabilidad temporal y reduce la tara introducida por la senalizacion de modificaciones de la lista de imagenes de referencia.
En una realizacion, la descripcion de memoria intermedia puede contener informacion que es utilizada por el descodificador en la inicializacion de listas de imagenes de referencia o la modificacion de listas de imagenes de referencia o la combinacion de listas de imagenes de referencia. Un ejemplo es que el orden en el que las imagenes se enumeran en una descripcion de memoria intermedia se puede utilizar como orden inicial para una de las listas de imagenes de referencia en la inicializacion de las listas de imagenes de referencia. Por lo tanto, la informacion de descripcion de memoria intermedia puede utilizarse cuando se crea la lista de imagenes de referencia.
La Figura 14 es un diagrama de flujo que ilustra un planteamiento de este tipo. El metodo continua desde la etapa S32 de la Figura 9. Una etapa sucesiva S80 lleva a cabo la inicializacion de la lista de imagenes de referencia basandose en la informacion de descripcion de memoria intermedia. En una realizacion particular de la etapa S80, la inicializacion de la lista de imagenes de referencia se realiza sobre la base de la informacion de descripcion de memoria intermedia al ordenar imagenes de referencia en una lista de imagenes de referencia de acuerdo con un orden en el que la informacion de descripcion de memoria intermedia define el por lo menos un identificador de imagen determinado en la etapa S31 de la Figura 9.
En una realizacion, se especifican restricciones para las imagenes incluidas en la descripcion de memoria intermedia. Un ejemplo de restriccion es que una imagen A con temporaljd tId(A) descrita en la descripcion de memoria intermedia en relacion con una imagen B con temporaljd tId(B) puede que no sea una imagen no existente si tId(A) < tId(B).
5
10
15
20
25
30
35
40
45
50
55
En una realizacion, tambien es posible senalizar cambios en las propiedades de imagenes en la memoria intermedia de imagenes descodificadas a traves de descripciones de memoria intermedia. Un ejemplo es cambiar la capa temporal y/o el orden de visualizacion de imagenes a traves de la senalizacion del nuevo valor para la capa temporal y/o el orden de visualizacion en la descripcion de memoria intermedia.
La Figura 16 es un diagrama de flujo simplificado de un esquema de memoria intermedia de referencias de acuerdo con una realizacion. En este esquema, todas las operaciones de memoria intermedia de imagenes descodificadas se aplican despues del analisis sintactico del primer encabezamiento de franja de una imagen, pero antes de la descodificacion de imagenes, utilizando una descripcion de la memoria intermedia de imagenes descodificadas segun se ilustra en la Figura 16. La descripcion de memoria intermedia se senaliza, por ejemplo, en el encabezamiento de franja o bien explfcitamente o bien por referencia a una estructura predefinida senalizada en un PPS.
Asf, las realizaciones proporcionan grandes cambios conceptuales en el proceso de descodificacion. En la
H. 264/MPEG-4 AVC tradicional y el diseno actual de HEVC, las operaciones relativas se proporcionan al descodificador o bien de forma implfcita, es decir, por ventana deslizante, o bien explfcitamente, MMCO, y el descodificador es responsable de la aplicacion de estas operaciones relativas y de realizar el seguimiento de las imagenes de referencia, es decir, que imagenes se pueden usar para referencia. En el esquema propuesto las imagenes de referencia, es decir, que imagenes se pueden utilizar como referencia, se senalizan dentro de la imagen actual, por ejemplo en el encabezamiento de franja, eliminando asf la necesidad de operaciones relativas senalizadas implfcita y explfcitamente.
Esto significa que cada imagen tendra una descripcion absoluta de las imagenes de referencia en lugar de una descripcion relativa como en la H.264/MEPG-4 AVC donde se recupera informacion delta a partir de MMCO o por el uso del proceso de ventana deslizante.
De acuerdo con una realizacion particular, la descripcion de memoria intermedia contiene el delta_POC, la temporaljd y la additional_picture_id de todas las imagenes de referencia en la memoria intermedia de imagenes descodificadas con el fin de proporcionar una referencia absoluta a las imagenes que se utilizaran como imagenes de referencia. El delta_POC se utiliza para calcular el POC de una imagen de referencia como POC(ref) = POC(actual) + delta_POC. Las imagenes, en una realizacion, se identificaran por el par POC y additional_picture_id. La temporal_id esta incluida en la descripcion de memoria intermedia para permitir la modificacion correcta de listas de imagenes de referencia en el caso de imagenes perdidas o eliminadas, por ejemplo, escalabilidad temporal. Sin embargo, el esquema no se limita a las palabras de codigo delta_POC, temporal_id y additional_picture_id. Cualquier palabra de codigo que este asociada a una imagen y se utilice en la gestion de imagenes de referencia se puede usar como identificador de imagen y se puede incluir en la descripcion de memoria intermedia, o bien en relacion con el valor de la imagen actual, por ejemplo POC y delta_POC, o bien de manera absoluta, por ejemplo temporal_id.
Todas las imagenes en la memoria intermedia de imagenes descodificadas que no forman parte de la descripcion de memoria intermedia se marcan preferentemente como no utilizada para referencia.
En la H.264/MPEG-4 AVC el proceso que entrega imagenes para su salida (al que se hace referencia como proceso de “lanzamiento” en la Figura 1) se realiza en ocasiones antes de la descodificacion, es decir, si habfa un vacfo en frame_num. El proceso de “lanzamiento” tambien se lleva a cabo despues de la descodificacion y la marcacion de imagenes.
En el esquema propuesto de la Figura 16 el proceso de “lanzamiento” se aplica antes de la descodificacion. Se podna argumentar que esto impone un retardo adicional en el proceso de descodificacion antes de la entrega de imagenes para su salida. Sin embargo, debe indicarse que la primera imagen a visualizar se define de forma unica ya despues de la etapa del proceso de descodificacion en cuanto el numero de imagenes no visualizadas, en la memoria intermedia de imagenes descodificadas, es superior o igual a num_reorder_frames. Por lo tanto, un descodificador puede entregar esa imagen para la visualizacion directamente despues de la etapa del proceso de descodificacion. Asf, el retardo del sistema propuesto es igual al retardo del esquema actual de HEVC.
En la H.264/MPEG-4 AVC se usa el elemento de sintaxis frame_num para identificar imagenes en la memoria intermedia de imagenes descodificadas y detectar vacfos en frame_num. Si gaps_in_frame_num_allowed es igual a
I, el descodificador introducira cuadros “no existentes” en la memoria intermedia de imagenes descodificadas para que el proceso de ventana deslizante funcione correctamente.
En el esquema propuesto ilustrado en la Figura 16, la combinacion de POC y additional_picture_id se puede utilizar para identificar imagenes en la memoria intermedia de imagenes descodificadas. El esquema propuesto no necesita contener un proceso de ventana deslizante. Por lo tanto, se propone eliminar los elementos de sintaxis frame_num y gaps_in_frame_num_allowed.
La Figura 15 es un ejemplo de una estructura de codificacion a la que se pueden aplicar las realizaciones. En el ejemplo de la Figura 15, la segunda imagen en el orden de descodificacion incluira POC 0 en su descripcion de memoria intermedia mientras que la tercera imagen en el orden de descodificacion incluira POC 0 y POC 4 en su
5
10
15
20
25
30
35
40
45
50
55
descripcion de memoria intermedia. La cuarta imagen en el orden de descodificacion debe incluir no solamente POC 0 y pOc 2 en su descripcion de memoria intermedia, sino tambien POC 4 puesto que esa imagen se utilizara para referencia en el futuro. La quinta imagen en el orden de descodificacion no necesita incluir POC 0 en su descripcion de memoria intermedia a no ser que se vaya a utilizar como referencia en el futuro. Si POC 0 no esta incluido en la descripcion de memoria intermedia se transformara en no utilizada para referencia.
En el ejemplo de la Figura 15 additional_picturejd (o additionaljd) es 0 para todas las imagenes. Se recomienda fijar additional_picturejd a 0 a no ser que haya dos imagenes diferentes disponibles para referencia con el mismo POC, debido a la reiniciacion cfclica de POC. Si POC es el mismo para dos imagenes diferentes, la additional_picture_id es preferentemente diferente con el fin de no sustituir incondicionalmente la imagen mas antigua por la mas nueva. Additional_picture_id se puede utilizar con el fin de proporcionar todas las funcionalidades y posibilidades que aportan las imagenes de largo plazo en la H.264/MPEG-4 aVc. Por lo tanto, en una realizacion particular, la additional_picture_id que constituye una parte del identificador de imagen se podna utilizar para senalizar si una imagen de referencia se va a usar para referencia de largo plazo o para referencia de corto plazo.
Considerese un ejemplo en el que un codificador deseana usar una imagen A con POC 14 y additional_picturejd fijada a 0, como “imagen de largo plazo”. El codificador debe asegurarse entonces de que la imagen A se incluye en la descripcion de memoria intermedia en el encabezamiento de franja de todas las imagenes que suceden a la A durante todo el tiempo que el codificador desee que la imagen A este disponible para referencia. Si el codificador desease codificar otra imagen con POC 14 (debido a la reiniciacion dclica de POC) mientras que A sigue estando disponible para referencia, el codificador debena seleccionar otro valor de additional_picture_id, por ejemplo 1, para evitar que A se sustituya como imagen de referencia.
Para imagenes que se utilizaran como referencia durante un periodo de tiempo corto (imagenes de referencia de corto plazo), se recomienda fijar additional_picturejd a 0, con el fin de minimizar la tara de bits. Para imagenes que se utilizaran como referencia durante un periodo de tiempo largo (imagenes de largo plazo), se recomienda que el codificador se asegure de que no hay disponibles para la prediccion al mismo tiempo dos imagenes con el mismo POC y la misma additionaljpicturejid.
Un aspecto adicional de las realizaciones define un codificador configurado para crear informacion de descripcion de memoria intermedia que define que imagenes se usaran como imagenes de referencia, es decir, se almacenaran en una memoria intermedia de imagenes descodificadas para ser utilizadas para la descodificacion posterior. Al menos parte de la informacion de descripcion de memoria intermedia se introduce en el flujo continuo de bits codificado por el codificador.
La Figura 18 es un diagrama de bloques esquematico de una realizacion de un codificador 100. El codificador 100 esta configurado para codificar una imagen de un flujo continuo de video que comprende multiples imagenes. El codificador 100 comprende un determinador 110 de imagenes de referencia configurado para determinar al menos una imagen de referencia para la imagen actual entre las multiples imagenes del flujo continuo de video. La por lo menos una imagen de referencia se utiliza como referencia de codificacion para la imagen actual. Un proveedor 120 de identificadores de imagen del codificador 100 esta configurado para proporcionar un identificador de imagen respectivo de cada imagen de referencia determinada por el determinador 110 de imagenes de referencia. Un identificador de imagen proporcionada por el proveedor 120 de identificadores de imagen identifica su imagen de referencia asociada. El(los) identificador(es) de imagen proporcionado(s) por el proveedor 120 de identificadores de imagen constituyen en conjunto una descripcion de memoria intermedia para la imagen actual al enumerar identificador(es) de imagen de la(s) imagen(es) de referencia requerida(s) para la codificacion y descodificacion de la imagen actual y opcionalmente tambien cualquier (cualesquiera) imagen(es) de referencia previa(s) del flujo continuo de video requerida(s) para la codificacion y descodificacion de una imagen subsiguiente del flujo continuo de video.
El codificador 100 tambien comprende un generador 130 de informaciones de descripcion de memoria intermedia configurado para generar informacion de la descripcion de memoria intermedia, es decir, la informacion de descripcion de memoria intermedia, que define la por lo menos una imagen de referencia determinada por el determinador 110 de imagenes de referencia. El generador 130 de informaciones de descripcion de memoria intermedia esta configurado para generar esta informacion de descripcion de memoria intermedia basandose en el por lo menos un identificador de imagen del proveedor 120 de identificadores de imagen.
Un introductor 140 de datos esta implementado en el codificador 100 para introducir la informacion de descripcion de memoria intermedia generada por el generador 130 de informaciones de descripcion de memoria intermedia en una representacion codificada de la imagen actual. Por lo tanto, el flujo continuo de bits codificado del flujo continuo de video con respecto a la imagen actual es portador de la informacion de descripcion de memoria intermedia. Esto significa que la representacion codificada de la imagen sera portadora de la informacion de descripcion de memoria intermedia que define la informacion pertinente, es decir, identificadores de imagen, requerida por un descodificador con el fin de actualizar la memoria intermedia de imagenes descodificadas para la imagen actual, para permitir de esta manera la descodificacion de la representacion codificada de la imagen.
Tal como se ha descrito anteriormente en el presente documento, el determinador 110 de imagenes de referencia esta configurado preferentemente para determinar cualquier imagen de referencia del flujo continuo de video como
5
10
15
20
25
30
35
40
45
50
55
60
referencia de codificacion no solamente para la imagen actual, sino para determinar tambien cualquier imagen de referencia, preferentemente presente en el flujo continuo de video antes de la imagen actual en el orden de descodificacion, como codificacion de referencia para una o mas imagenes posteriores de acuerdo con el orden de descodificacion.
En una realizacion particular, cada imagen puede estar compuesta por una o mas franjas. Cada una de dichas franjas puede entonces codificarse y descodificarse con independencia de otras franjas de la misma imagen. Por lo tanto, el determinador 110 de imagenes de referencia determina preferentemente, para al menos una franja, preferentemente para cada franja de la imagen, por lo menos una imagen de referencia que se utilizara para la codificacion y la descodificacion de la franja particular. El proveedor 120 de identificadores de imagen proporciona preferentemente identificadores de imagen respectivos para todas las imagenes de referencia determinadas por el determinador 110 de imagenes de referencia para la imagen actual, es decir, para todas sus franjas. La informacion de descripcion de memoria intermedia es generada de esta manera por el generador 130 de informaciones de descripcion de memoria intermedia sobre la base de estos identificadores de imagen proporcionados. En una realizacion preferida, el introductor 140 de datos esta configurado para introducir la informacion de descripcion de memoria intermedia en un encabezamiento de franja respectivo de la representacion codificada de la imagen. En tal caso, cada encabezamiento de franja de la imagen actual es portador preferentemente de la misma informacion de descripcion de memoria intermedia. Esto permite la descodificacion de una franja dada aun cuando otra franja de la imagen se haya perdido de forma no intencionada.
Tambien son posibles otras posiciones entre la informacion de control en la representacion codificada de la imagen para que sean portadoras de la informacion de descripcion de memoria intermedia segun se ha descrito previamente en la presente.
La descripcion de memoria intermedia de las realizaciones podna incluir el(los) identificador(es) de imagen de la(s) imagen(es) de referencia. Alternativamente, la descripcion de memoria intermedia comprende el(los) identificador(es) delta descrito(s) previamente que se puede(n) utilizar junto con el identificador de imagen de la imagen actual para calcular el(los) identificador(es) de imagen de la(s) imagen(es) de referencia.
En tal caso, el codificador 100 comprende preferentemente un modulo 150 de calculo de identificadores que esta configurado para calcular, para cada identificador de imagen proporcionado por el proveedor 120 de identificadores de imagen, una diferencia entre el identificador de imagen y el identificador de imagen de la imagen actual. Esta diferencia se corresponde con el identificador delta para la imagen de referencia. El generador 130 de informaciones de descripcion de memoria intermedia se configura entonces para generar la informacion de descripcion de memoria intermedia basandose en la por lo menos una diferencia/un identificador delta calculado por el modulo 150 de calculo de identificadores. La informacion de descripcion de memoria intermedia define de esta manera el por lo menos un identificador de imagen de la(s) imagen(es) de referencia en relacion con el identificador de imagen de la imagen actual.
La representacion codificada de la imagen podna ser portadora de los identificadores de imagen proporcionados por el proveedor 120 de identificadores de imagen o los identificadores delta calculados por el modulo 150 de calculo de identificadores como informacion de descripcion de memoria intermedia, por ejemplo, en los encabezamientos de franja. Esto proporciona una senalizacion explfcita de la descripcion de memoria intermedia en la representacion codificada de la imagen.
En una realizacion alternativa, el codificador 100 comprende un generador 160 de estructuras de datos configurado para generar una estructura de datos que comprende multiples descripciones de memoria intermedia predefinidas. Cada una de dichas descripciones de memoria intermedia predefinidas define de esta manera por lo menos una imagen de referencia. La estructura de datos de esta manera se puede usar para multiples imagenes en el flujo continuo de video con el fin de proporcionar la descripcion de memoria intermedia a usar durante la descodificacion correspondiente a las imagenes. El generador 130 de informaciones de descripcion de memoria intermedia esta configurado asf para seleccionar una descripcion de memoria intermedia de la estructura de datos basandose en el por lo menos un identificador de imagen proporcionado por el proveedor 120 de identificadores de imagen para la imagen actual. Se selecciona asf la descripcion de memoria intermedia que se corresponde correctamente con el por lo menos un identificador de imagen de referencia, y la informacion de descripcion de memoria intermedia generada por el generador 130 de informaciones de descripcion de memoria intermedia comprende un identificador de la descripcion de memoria intermedia seleccionada.
La estructura de datos generada por el generador 160 de estructuras de datos podna entonces introducirse en un campo de informacion de control asociado a una representacion codificada del flujo continuo de video, tal como en un PPS o SPS. Un identificador de la informacion de control pertinente, es decir, un identificador de PPS o un identificador de SPS (podna estar en forma de un identificador de PPS para un PPS que a su vez comprende un identificador de SPS para el SPS pertinente), se incluye preferentemente en informacion de control de la representacion codificada de la imagen actual, tal como en el encabezamiento de franja. En una realizacion, el encabezamiento de franja u otro campo de informacion de control es portador asf del identificador de informacion de control y el identificador de la descripcion de memoria intermedia seleccionada, como informacion de descripcion de memoria intermedia.
5
10
15
20
25
30
35
40
45
50
55
60
Las realizaciones de senalizacion expKcita de identificadores de imagen y de senalizacion de referencia de identificadores de imagen de la descripcion anterior se pueden combinar. En tal caso, el generador 130 de informaciones de descripcion de memoria intermedia esta configurado para generar la informacion de descripcion de memoria intermedia que comprende el identificador de la descripcion de memoria intermedia seleccionada, preferentemente tambien el identificador de informacion de control, y que comprende informacion, tal como identificador delta o identificador de imagen explfcito, que define un identificador de imagen de una imagen de referencia.
El codificador 100 podna utilizar cualquiera de los ejemplos descritos anteriormente de identificadores de imagen, tales como el valor de POC que identifica de forma inequvoca una imagen de referencia, o un valor de POC y un identificador adicional.
El flujo continuo de video podna ser un flujo continuo de video escalable en donde las imagenes se agrupan en multiples capas. En tal caso, el proveedor 120 de identificadores de imagen esta configurado para proporcionar, para cada imagen de referencia, el identificador de imagen e informacion de capas temporales o un identificador que identifica una capa a la que pertenece la imagen de referencia. El generador 130 de informaciones de descripcion de memoria intermedia genera entonces la informacion de descripcion de memoria intermedia basandose en el por lo menos un identificador de imagen y sobre la base de la informacion de capas temporales. Por lo tanto, la informacion de descripcion de memoria intermedia define preferentemente el por lo menos un identificador de imagen y la informacion de capas temporales.
El determinador 110 de imagenes de referencia esta configurado preferentemente para determinar la por lo menos una imagen de referencia como referencia de codificacion para la prediccion inter y/o la prediccion con vectores de movimiento para la imagen actual. Asf, la por lo menos una imagen de referencia puede determinarse maximizando la eficiencia de compresion o codificacion de la representacion codificada de la imagen, es decir, minimizando el numero de sfmbolos, tales como bits, necesarios para representar la representacion codificada. Esta maximizacion de la compresion se realiza preferentemente al mismo tiempo que se cumple por lo menos una restriccion colateral seleccionada de entre tener un numero maximo predefinido de imagenes de referencia y generar una representacion descodificable del flujo continuo de video tambien cuando se elimina de la representacion codificada del flujo continuo de video por lo menos una representacion codificada de una imagen. Otra restriccion colateral alternativa o adicional es que una imagen de referencia seleccionada deba estar disponible para referencia y prediccion en la memoria intermedia de imagenes descodificadas.
El codificador se podna implementar al menos parcialmente en software. En una realizacion tal como se muestra en la Figura 19, el codificador 300 comprende una seccion 310 de entrada configurada para recibir multiples imagenes de un flujo continuo de video. El codificador 300 tambien comprende un procesador 330 configurado para procesar medios de codigo de un programa de ordenador almacenado en una memoria 340. Los medios de codigo, cuando se ejecutan en el procesador 330, provocan que el procesador 330 determine, para una imagen del flujo continuo de video, al menos una imagen de referencia del flujo continuo de video como referencia de codificacion para la imagen. Tambien se provoca que el procesador 330 proporcione, para cada imagen de referencia, un identificador de imagen que identifica la imagen de referencia y genere, basandose en el por lo menos un identificador de imagen, informacion de descripcion de memoria intermedia que define la por lo menos una imagen de referencia. Se provoca ademas que el procesador 330 introduzca la informacion de descripcion de memoria intermedia en una representacion codificada de la imagen. El codificador 300 tambien comprende una seccion 320 de salida configurada para dar salida a las representaciones codificadas de las imagenes.
El procesador 330 podna ser un ordenador de proposito general o adaptado especialmente, un procesador o un microprocesador, tal como una unidad de procesado central (CPU). El software incluye elementos de codigo de programa de ordenador o partes de codigo de software que materializan el funcionamiento de por lo menos el determinador 110 de imagenes de referencia, el proveedor 120 de identificadores de imagenes, el generador 130 de informaciones de descripcion de memoria intermedia, y el introductor 140 de datos de la Figura 18.
El programa se puede almacenar en su totalidad o parcialmente, en o dentro de uno o mas soportes legibles por ordenador o medios de almacenamiento de datos, volatiles, tales como una RAM, o uno o mas soportes legibles por ordenador o medios de almacenamiento de datos, no volatiles, tales como discos magneticos, CD-ROMs, discos DVD, discos duros, en memoria ROM o flash. Los medios de almacenamiento de datos pueden ser unos medios de almacenamiento de datos locales o se pueden proporcionar de forma remota, tal como en un servidor de datos. Asf, el software se puede cargar en la memoria de funcionamiento de un ordenador o sistema de procesado equivalente para su ejecucion por un procesador. El ordenador/procesador no tiene que estar dedicado a solamente ejecutar las funciones descritas anteriormente, sino que tambien puede ejecutar otras tareas de software. Un ejemplo no limitativo de codigo de programa utilizado para definir el codificador 300 incluye codigo de una instruccion, multiples datos (SIMD).
Alternativamente, el codificador se puede implementar en hardware. Existen numerosas variantes de elementos de circuitena que se pueden utilizar y combinar para lograr las funciones de las unidades 110 a 160 del codificador 100 de la Figura 18. Las realizaciones abarcan dichas variantes. Son ejemplos particulares de implementacion en hardware del codificador 100 una implementacion en hardware de procesador de senal digital (DSP) y tecnologfa de
5
10
15
20
25
30
35
40
45
50
55
circuitos integrados, incluyendo tanto circuitena electronica de proposito general como circuitena de aplicacion espedfica.
De acuerdo con un aspecto de las realizaciones se proporciona un transmisor 200 segun se muestra en la Figura 17. El transmisor 200 comprende una seccion 210 de entrada configurada para recibir multiples imagenes 10 de un flujo continuo de video. Las imagenes 10 se reenvfan a un codificador 100, tal como se ilustra en la Figura 18 o en la Figura 19, que esta configurado para codificar las multiples imagenes 10 con el fin de generar representaciones codificadas respectivas de las multiples imagenes. Una seccion 220 de salida del transmisor 200 esta configurada para dar salida a las representaciones codificadas respectivas de las multiples imagenes en forma de un flujo continuo de bits codificado que es portador de la informacion de descripcion de memoria intermedia de las realizaciones.
Un aspecto de las realizaciones se refiere a un descodificador para detectar informacion de descripcion de memoria intermedia y para la determinacion de una referencia absoluta a imagenes que se usaran como imagenes de referencia para la descodificacion basandose en la descripcion de memoria intermedia detectada, y a una memoria intermedia para el almacenamiento de las imagenes que se utilizaran como imagenes de referencia.
La Figura 21 es un diagrama de bloques esquematico de un descodificador 400 de acuerdo con una realizacion. El descodificador 400 esta configurado para descodificar una representacion codificada de una imagen de un flujo continuo de video que comprende multiples imagenes. El descodificador 400 comprende un recuperador 410 de datos configurado para recuperar informacion de descripcion de memoria intermedia que define al menos una imagen de referencia a partir de la representacion codificada de la imagen. La informacion de descripcion de memoria intermedia es usada por un determinador 420 de identificadores de imagen que esta configurado para determinar al menos un identificador de imagen que identifica una imagen de referencia respectiva como referencia de descodificacion para la imagen. El descodificador 400 comprende tambien un gestor 430 de memoria intermedia configurado para actualizar una memoria intermedia de imagenes descodificadas del o asociada al descodificador 400 basandose en el por lo menos un identificador de imagen determinado por el determinador 420 de identificadores de imagen.
En una realizacion particular, el recuperador 410 de datos esta configurado para recuperar la informacion de descripcion de memoria intermedia que define multiples identificadores de imagen a partir de la representacion codificada de la imagen. El determinador 420 de identificadores de imagen se configura a continuacion para determinar, sobre la base de la informacion de descripcion de memoria intermedia recuperada, al menos un identificador de imagen que identifica una imagen de referencia respectiva como referencia de descodificacion para la imagen y al menos un identificador de imagen que identifica una imagen de referencia respectiva como referencia de descodificacion para una imagen subsiguiente, de acuerdo con un orden de descodificacion, del flujo continuo de video.
El gestor 430 de memoria intermedia esta configurado preferentemente para actualizar la memoria intermedia de imagenes descodificadas de manera que comprenda la imagen de referencia respectiva identificada por el por lo menos un identificador de imagen.
Asf, la informacion de descripcion de memoria intermedia de la cual es portadora la representacion codificada de la imagen se utiliza para identificar que imagen(es) de referencia es necesario almacenar en la memoria intermedia de imagenes descodificadas para la descodificacion de la imagen actual y para la descodificacion de una imagen subsiguiente del flujo continuo de video. La informacion de descripcion de memoria intermedia de esta manera proporciona la informacion al descodificador 400 requerido para actualizar la memoria intermedia de imagenes descodificadas con el fin de almacenar la(s) imagen(es) de referencia correcta(s).
Una vez que el gestor 430 de memoria intermedia ha actualizado la memoria intermedia de imagenes descodificadas, el descodificador 400 puede descodificar la imagen basandose en la representacion codificada de la imagen y por lo menos una imagen de referencia almacenada en la memoria intermedia de imagenes descodificadas actualizada.
La informacion de descripcion de memoria intermedia se proporciona preferentemente en informacion de control de la representacion codificada de la imagen. Por ejemplo, el recuperador 410 de datos se puede configurar para recuperar la informacion de descripcion de memoria intermedia a partir de un encabezamiento de franja de la representacion codificada de la imagen. En tal caso, la informacion de descripcion de memoria intermedia se recupera preferentemente a partir del primer encabezamiento de franja recibido para la imagen actual, ya que cualquiera de los encabezamientos de franja restantes de la imagen sera portador preferentemente de la misma informacion de descripcion de memoria intermedia.
La informacion de descripcion de memoria intermedia recuperada podna incluir identificadores de imagen explfcitos de las imagenes de referencia a almacenar en la memoria intermedia de imagenes descodificadas. En una realizacion alternativa, la informacion de descripcion de memoria intermedia define un identificador delta respectivo para las imagenes de referencia. El determinador 420 de identificadores de imagen esta configurado entonces para recuperar el por lo menos un identificador delta a partir de la informacion de descripcion de memoria intermedia y
5
10
15
20
25
30
35
40
45
50
55
calcular el por lo menos un identificador de imagen sobre la base del identificador delta respectivo y el identificador de imagen de la imagen actual, preferentemente en forma de una suma del identificador delta y el identificador de imagen de la imagen actual.
En lugar de la senalizacion explfcita de identificadores de imagen o identificadores delta en la representacion codificada de la imagen, se puede utilizar una senalizacion de referencia. El recuperador 410 de datos en esta realizacion esta configurado para recuperar un identificador de una descripcion de memoria intermedia a partir de la representacion codificada de la imagen. El descodificador 400 comprende preferentemente un identificador 480 de descripcion de memoria intermedia configurado para identificar una descripcion de memoria intermedia a partir de una estructura de datos que comprende multiples descripciones de memoria intermedia predefinidas utilizando el identificador recuperado de la descripcion de memoria intermedia.
El recuperador 410 de datos preferentemente, en esta realizacion, esta tambien configurado para recuperar la estructura de datos que define las multiples descripciones de memoria intermedia predefinidas a partir de un campo de informacion de control de, o asociado a, una representacion codificada del flujo continuo de video, tal como a partir de un PPS o SPS.
En una realizacion particular, un campo de informacion de control de la representacion codificada de la imagen, tal como un encabezamiento de franja, comprende preferentemente un identificador del campo de informacion de control, tal como PPS o SPS, que es portador de la estructura de datos. El recuperador 410 de datos de este modo recupera este identificador y lo usa para identificar el campo de informacion de control pertinente con la estructura de datos.
En otra realizacion, la informacion de descripcion de memoria intermedia comprende el identificador de la descripcion de memoria intermedia e informacion, tal como un identificador de imagen o identificador delta, que identifica al menos un identificador de imagen. El determinador 420 de identificadores de imagen se configura entonces para determinar un primer conjunto de por lo menos un identificador de imagen a partir de la descripcion de memoria intermedia identificada, preferentemente a partir de la estructura de datos. El determinador 420 de identificadores de imagen tambien determina un segundo conjunto de por lo menos un identificador de imagen a partir de la informacion que define por lo menos un identificador de imagen, en donde esta informacion se ha senalizado explfcitamente en la representacion codificada de la imagen, tal como en forma de un identificador de imagen o un identificador delta. Entonces se forma un conjunto combinado de identificadores de imagen a partir del primer conjunto y el segundo conjunto por medio del determinador 420 de identificadores de imagen.
En una realizacion particular, el descodificador 400 comprende un comparador 440 de numeros configurado para comparar un numero total de identificadores de imagen en el conjunto combinado, con un numero maximo de imagenes de referencia que se pueden almacenar en la memoria intermedia de imagenes descodificadas. Si el numero total de identificadores de imagen en el conjunto combinado supera el numero maximo de imagenes de referencia, el determinador 420 de identificadores de imagen se configura para eliminar uno o mas identificadores de imagen incluidos en el primer conjunto pero no en el segundo conjunto, hasta que el numero total de identificadores de imagen en el conjunto combinado ya no supera el numero maximo de imagenes de referencia.
El gestor 430 de memoria intermedia del descodificador 400 esta configurado, en una realizacion particular, para eliminar cualquier imagen de referencia presente en la memoria intermedia de imagenes descodificadas pero que no este asociada a ninguno del por lo menos un identificador de imagen determinado a partir de la informacion de descripcion de memoria intermedia. Por lo tanto, cualquier imagen de referencia que se almacena en la memoria intermedia de imagenes descodificadas pero no identificada a partir de la informacion de descripcion de memoria intermedia, se elimina preferentemente de la memoria intermedia de imagenes descodificadas por parte del gestor 430 de memoria intermedia.
En un planteamiento alternativo y preferido, el gestor 430 de memoria intermedia esta configurado para marcar como no utilizada para referencia, a lo que se hace referencia tambien como no utilizada para prediccion, todas las imagenes de referencia almacenadas en la memoria intermedia de imagenes descodificadas pero que no estan asociadas a ninguno del por lo menos un identificador de imagen de la informacion de descripcion de memoria intermedia.
En una realizacion particular, cualquier imagen de referencia presente en la memoria intermedia de imagenes descodificadas y asociada a cualquiera de los identificadores de imagen determinados sobre la base de la informacion de descripcion de memoria intermedia es marcada preferentemente por el gestor 430 de memoria intermedia como utilizada para referencia. En una realizacion, una imagen de referencia se podna marcar o bien como utilizada para referencia de corto plazo o bien como utilizada para referencia de largo plazo. La seleccion entre estas dos alternativas particulares se realiza preferentemente sobre la base de la informacion de descripcion de memoria intermedia.
El gestor 430 de memoria intermedia del descodificador 400 esta configurado preferentemente para marcar cualquier imagen de referencia antes de que el descodificador 400 descodifique la imagen actual.
5
10
15
20
25
30
35
40
45
50
55
60
En una realizacion particular, el descodificador 400 comprende una seccion 450 de salida configurada para dar salida a cero o mas imagenes de la memoria intermedia de imagenes descodificadas con vistas a su visualizacion antes de que el descodificador 400 descodifique la imagen actual. En una realizacion particular, la seccion 450 de salida da salida a cualquier imagen de referencia marcada como no utilizada para referencia por el gestor 430 de memoria intermedia.
Una realizacion opcional del descodificador 400 comprende un comparador 460 de identificadores configurado para comparar el por lo menos un identificador de imagen determinado por el determinador 420 de identificadores de imagen con el(los) identificador(es) de imagen correspondiente(s) a imagen(es) de referencia almacenada(s) en la memoria intermedia de imagenes descodificadas. Si ninguno del por lo menos un identificador de imagen definido por la informacion de descripcion de memoria intermedia no tiene una imagen de referencia coincidente en la memoria intermedia de imagenes descodificadas, el determinador 420 de identificadores de imagen determina que la imagen asociada al identificador de imagen dado es no existente o que falta.
En una realizacion opcional, el determinador 420 de identificadores de imagen esta configurado para generar cualquier imagen no existente y almacenar dicha imagen generada en la memoria intermedia de imagenes descodificadas. El identificador de imagen y cualquier otra informacion obtenible a partir de la informacion de descripcion de memoria intermedia con respecto a la imagen no existente se asignan preferentemente a la imagen generada, por parte del determinador 420 de identificadores de imagen.
El descodificador 400 puede comprender tambien un administrador 470 de listas configurado para llevar a cabo una inicializacion de listas de imagenes de referencia basandose en la informacion de descripcion de memoria intermedia. En una realizacion particular, el administrador 470 de listas esta configurado para llevar a cabo la inicializacion de listas de imagenes de referencia ordenando imagenes de referencia en una lista de imagenes de referencia de acuerdo con un orden en el que la informacion de descripcion de memoria intermedia define el por lo menos un identificador de imagen. Por lo tanto, la informacion de descripcion de memoria intermedia no solamente define los identificadores de imagen de las imagenes de referencia, sino que el orden en el cual se definen los mismos en la informacion de descripcion de memoria intermedia tambien proporciona instrucciones para el administrador 470 de listas con respecto a la formacion de la lista de imagenes de referencia.
El descodificador se podna implementar al menos parcialmente en software. En una realizacion tal como se muestra en la Figura 22, el descodificador 600 comprende una seccion 610 de entrada configurada para recibir representaciones codificadas de multiples imagenes de un flujo continuo de video. El descodificador 600 tambien comprende un procesador 630 configurado para procesar medios de codigo de un programa de ordenador almacenado en una memoria 640. Los medios de codigo, cuando se ejecutan en el procesador 630, provocan que el procesador 630 recupere informacion de descripcion de memoria intermedia que define al menos una imagen de referencia a partir de una representacion codificada de una imagen. Los medios de codigo tambien provocan que el procesador 630 determine por lo menos un identificador de imagen que identifica una imagen de referencia respectiva a partir de la informacion de descripcion de memoria intermedia. La imagen de referencia respectiva se usara como referencia de descodificacion para la imagen. Se provoca ademas que el procesador 630 actualice una memoria intermedia 650 de imagenes descodificadas basandose en el por lo menos un identificador de imagen. El descodificador 600 tambien comprende una seccion 620 de salida configurada para dar salida a las imagenes descodificadas del flujo continuo de video.
El procesador 630 podna ser un ordenador de proposito general o adaptado especialmente, un procesador o un microprocesador, tal como una unidad de procesado central (CPU). El software incluye elementos de codigo de programa de ordenador o partes de codigo de software que materializan el funcionamiento de por lo menos el recuperador 410 de datos, el determinador 420 de identificadores de imagen y el gestor 430 de memoria intermedia de la Figura 21.
El programa se puede almacenar en su totalidad o parcialmente, en o dentro de uno o mas soportes legibles por ordenador o medios de almacenamiento de datos, volatiles, tales como una RAM, o uno o mas soportes legibles por ordenador o medios de almacenamiento de datos, no volatiles, tales como discos magneticos, CD-ROMs, discos DVD, discos duros, en memoria ROM o flash. Los medios de almacenamiento de datos pueden ser unos medios de almacenamiento de datos locales o se pueden proporcionar de forma remota, tal como en un servidor de datos. Asf, el software se puede cargar en la memoria de funcionamiento de un ordenador o sistema de procesado equivalente para su ejecucion por un procesador. El ordenador/procesador no tiene que estar dedicado a solamente ejecutar las funciones descritas anteriormente, sino que tambien puede ejecutar otras tareas de software. Un ejemplo no limitativo de codigo de programa utilizado para definir el descodificador 600 incluye codigo de una instruccion, multiples datos (SIMD).
Alternativamente, el descodificador se puede implementar en hardware. Existen numerosas variantes de elementos de circuitena que se pueden utilizar y combinar para lograr las funciones de las unidades 410 a 480 del descodificador 400 de la Figura 21. Las realizaciones abarcan dichas variantes. Son ejemplos particulares de implementacion en hardware del descodificador 400 una implementacion en hardware de procesador de senal digital (DSP) y tecnologfa de circuitos integrados, incluyendo tanto circuitena electronica de proposito general como circuitena de aplicacion espedfica.
De acuerdo con un aspecto de las realizaciones se proporciona un receptor 500 segun se muestra en la Figura 20. El receptor 500 comprende una seccion 510 de entrada configurada para recibir representaciones codificadas de multiples imagenes de un flujo continuo de video. La representacion codificada es portadora de informacion de descripcion de memoria intermedia de acuerdo con las realizaciones. Las representaciones codificadas se reenvfan 5 a un descodificador 400, tal como se ilustra en la Figura 21 o en la Figura 22, que esta configurado para descodificar las representaciones codificadas de las multiples imagenes. Una seccion 520 de salida del receptor 500 esta configurada para dar salida a imagenes descodificadas del flujo continuo de video. El receptor 500 tambien comprende una memoria intermedia 530 de imagenes descodificadas que almacena imagenes de referencia para su uso por el descodificador 400 cuando se descodifican las imagenes.
10 ANEXO
El presente anexo presenta una sintaxis propuesta de una realizacion. En el anexo anadio elemento de sintaxis con respecto al estado de la tecnica propuesta HEVC esta marcado con el subrayado y los elementos de sintaxis retirados estan marcados con tachado.
Encabezamiento de franja
slice_header(){
Descriptor
first_tb_in_slice
ue(v)
entropy_slice_flag
u(1)
si( !entropy_slice_flag ) {
slice_type
ue(v)
pic_parameter_set_id
ue(v)
additional picture id
ue(v)
si( IdrPicFlag )
idr_pic_id
ue(v)
si( pic_order_cnt_type = = 0 )
pic_order_cnt_lsb /*
u(v)
si(!IdrPicFlag){
buffer description reference flag
u(1)
si(buffer description reference flag = = 1){
buffer description id
ue(v)
}
si(buffer description reference flag = = 0){
number of explicitly signaled pictures
ue(v)
para(number of explicitly signaled pictures) {
additional picture id
ue(v)
si(num reorder frames >0)
delta POC sign
u(1)
absolute delta POC minus one
ue(v)
temporal id
u(v)
}
}
}
}
si( slice_type = = P | | slice_type = = B ) {
slice_header(){
Descriptor
num_ref_idx_active_override_flag
u(1)
si( num_ref_idx_active_ovemde_flag ) {
num_ref_idx_l0_active_minus1
ue(v)
si(slice_type = = B )
num_ref_idx_l1_active_minus1
ue(v)
}
}
ref_pic_list_modification( )
ref_pic_list_combination( )
si( entropy_coding_mode_flag && slice_type != l)
cabac_init_idc
ue(v)
slice_qp_delta
se(v)
si( adaptive_loop_filter_enabled_flag )
alf_param()
si( deblocking_filter_control_present_flag ) {
disable_deblocking_filter_idc
si( disable_deblocking_filter_idc != 1 ) {
slice_alpha_c0_offset_div2
slice_beta_offset_div2
}
}
si( slice_type = = B )
collocated_from_l0_flag
u(1)
} si no
si( entropy_coding_mode_flag && slice_type != l)
cabac_init_idc
ue(v)
}
Conjunto de parametros de imagen
pic_parameter_set_rbsp( ) {
Descriptor
pic_parameter_set_id
ue(v)
seq_parameter_set_id
ue(v)
entropy_coding_mode_flag
u(1)
num_ref_idx_l0_default_active_minus1
ue(v)
num_ref_idx_l1_default_active_minus1
ue(v)
pic_init_qp_minus26 /* con respecto a 26 */
se(v)
constrained_intra_pred_flag
u(1)
number of buffer descriptions
ue(v)
5
10
15
20
25
30
para(number of buffer descriptions^
number of Dicutres in buffer description
ue(v)
para(number of pictures in buffer description) {
si(num reorder frames > 0)
delta POC sign
u(1)
absolute delta POC minus one
ue(v)
temporal id
u(v)
}
rbsp_trailing_bits( )
}
Semantica propuesta
Proceso de descodificacion para la aplicacion de descripcion de memoria intermedia
Este proceso se invoca en el comienzo del proceso de descodificacion para cada imagen I, P, o B, antes de la descodificacion de la primera Unidad de Codificacion en la primera franja de la imagen y antes del proceso de descodificacion para la construccion de listas de imagenes de referencia.
El proceso puede dar como resultado la marcacion de una o mas imagenes como “no utilizada para referencia”.
El proceso puede dar como resultado la construccion de imagenes “no existentes” segun se describe en Creacion de imagenes no existentes.
Una imagen de referencia se identifica para su uso en el proceso de descodificacion mediante las variables POC y additional_picture_id.
Se dice que una imagen de referencia r en la memoria intermedia de imagenes descodificadas forma parte de una descripcion de memoria intermedia si y solamente si POC(r) = POC(act) + delta_POC(i) y additional_picture_id(r) = additional_picture_id(i) para cualquier i en el intervalo de 0 a number_pictures_in_buffer_description.
Secuencia de funcionamiento para la aplicacion de descripcion de memoria intermedia
La aplicacion de la descripcion de memoria intermedia se desarrolla en las siguientes etapas ordenadas:
1. En funcion de si la imagen actual es una imagen de IDR, se aplica lo siguiente.
- Si la imagen actual es una imagen de IDR, todas las imagenes de referencia se marcan como no utilizada para referencia.
- Si no (la imagen actual no es una imagen de IDR), se aplican las siguientes etapas ordenadas:
1. La informacion de descripcion de memoria intermedia en el encabezamiento de franja de la primera franja de la imagen actual se utiliza para crear una lista de imagenes de referencia, a la que se denomina como descripcion de memoria intermedia segun se describe en Creacion de una descripcion de memoria intermedia.
II. Todas las imagenes de referencia (en la memoria intermedia de imagenes descodificadas) que no forman parte de la descripcion de memoria intermedia se marcan como “no utilizada para referencia”.
III. Si una o mas imagenes que estan incluidas en la descripcion de memoria intermedia no estan disponibles para la referencia (es decir, existentes en la memoria intermedia de referencias y marcadas como “utilizada para referencia”) se invoca el proceso descrito en Creacion de imagenes no existentes.
2. Se descodifican las franjas de la imagen actual.
Creacion de una descripcion de memoria intermedia
Si buffer_description_reference_flag es 1, se crea una descripcion de memoria intermedia fijando deltaPOC al deltaPOC de la entrada de la descripcion de memoria intermedia del PPS identificada por buffer_description_id, fijando temporal_id al temporal_id de la entrada de la descripcion de memoria intermedia del PPS identificada por buffer_description_id y fijando additional_picture_id a 0 para cada imagen i en el intervalo de 0 a number_of_pictures_in_buffer_description-1.
Si buffer_description_reference_flag es 0, se crea una descripcion de memoria intermedia fijando deltaPOC al deltaPOC de la descripcion de memoria intermedia senalizada expUcitamente, fijando temporal_id al temporal_id de la descripcion de memoria intermedia senalizada expUcitamente y fijando additional_picture_id a la additional_picture_id de la descripcion de memoria intermedia senalizada explfcitamente para cada imagen i en el 5 intervalo de 0 a number_of_explicitly_signaled_pictures-1.
Creacion de imagenes no existentes
Este proceso se invoca preferentemente para cada imagen que esta incluida en la descripcion de memoria intermedia de la imagen actual, pero no esta disponible en la memoria intermedia de imagenes descodificadas. Es decir, si la descripcion de memoria intermedia de la imagen actual contiene una entrada i, con un POC(i) y 10 additional_picture_id(i) tales que no hay ninguna imagen j en la memoria intermedia de imagenes descodificadas marcada como “utilizada para referenda” con POC(j) == POc(i) y additional_picture_id(j) == additional_picture_id(i).
Para cada una de estas descripciones se genera una imagen “no existente” con el POC fijado a POC(i), la additional_picture_id fijada a additional_picture_id(i), la temporal_id fijada a temporal_id(i) y marcada como “no existente” y “utilizada para referenda”. Los valores de muestra de los cuadros generados se pueden fijar a cualquier 15 valor. A estos cuadros generados que estan marcados como “no existente” no se les hara referencia en el proceso de prediccion inter.
Las realizaciones descritas anteriormente deben interpretarse como algunos ejemplos ilustrativos de la presente invencion.

Claims (5)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    REIVINDICACIONES
    1. Metodo de codificacion de una imagen (10) de un flujo continuo (1) de v^deo de multiples imagenes (10, 40, 42, 50), comprendiendo dicho metodo:
    determinar (S1), para dicha imagen (10), por lo menos una imagen (40, 42) de referencia de dichas multiples imagenes (10, 40, 42, 50) como referencia de codificacion para dicha imagen (10);
    proporcionar (S2), para cada imagen (40, 42) de referencia entre dicha por lo menos una imagen (40, 42) de referencia, un identificador de imagen que identifica dicha imagen (40, 42) de referencia entre dicha por lo menos una imagen (40, 42) de referencia,
    generar (S3), basandose en dicho por lo menos un identificador de imagen, informacion de descripcion de memoria intermedia que define dicha por lo menos una imagen (40, 42) de referencia;
    introducir (S4) dicha informacion de descripcion de memoria intermedia en una estructura de datos en la representacion codificada (60) de dicha imagen (10), en donde todas las imagenes de referencia presentes en una memoria intermedia (530, 650) de imagenes descodificadas y que no estan asociadas a ninguno de dicho por lo menos un identificador de imagen determinado sobre la base de dicha informacion de descripcion de memoria intermedia, se deben marcar como no utilizadas para referencia; caracterizado por que las imagenes descodificadas que se utilizaran como imagenes de referencia durante la descodificacion se especifican de una manera absoluta y explfcita con independencia de una representacion codificada de imagenes previas en el flujo continuo de video.
  2. 2. Metodo segun la reivindicacion 1, en el que la determinacion (S1) de dicha por lo menos una imagen (40, 42) de referencia comprende determinar (S1), para dicha imagen (10), cualquier imagen (40, 42) de referencia entre dichas multiples imagenes (10, 40, 42, 50) como referencia de codificacion para dicha imagen (10) y cualquier imagen (42) de referencia entre dichas multiples imagenes (10, 40, 42, 50) como referencia de codificacion para una imagen subsiguiente (50), segun un orden de descodificacion, de dicho flujo continuo (1) de video.
  3. 3. Codificador (100) configurado para codificar una imagen (10) de un flujo continuo (1) de video de multiples imagenes (10, 40, 42, 50), que comprende:
    un determinador (110) de imagenes de referencia configurado para determinar, para dicha imagen (10), por lo menos una imagen (40, 42) de referencia entre dichas multiples imagenes (40, 42, 50), como referencia de codificacion para dicha imagen (10);
    un proveedor (120) de identificadores de imagen configurado para proporcionar, para cada imagen (40, 42) de referencia de dicha por lo menos una imagen (40, 42) de referencia, un identificador de imagen que identifica dicha imagen (40, 42) de referencia entre dicha por lo menos una imagen (40, 42) de referencia;
    un generador (130) de informaciones de descripcion de memoria intermedia configurado para generar, basandose en dicho por lo menos un identificador de imagen, informacion de descripcion de memoria intermedia que define dicha por lo menos una imagen (40, 42) de referencia; y
    un introductor (140) de datos configurado para introducir dicha informacion de descripcion de memoria intermedia en una estructura de datos en la representacion codificada (60) de dicha imagen (10), en donde todas las imagenes de referencia presentes en una memoria intermedia (530, 650) de imagenes descodificadas y que no estan asociadas a ninguno de dicho por lo menos un identificador de imagen determinado sobre la base de dicha informacion de descripcion de memoria intermedia, se deben marcar como no utilizadas para referencia, caracterizado por que las imagenes descodificadas que se utilizaran como imagenes de referencia durante la descodificacion se especifican de una manera absoluta y explfcita con independencia de una representacion codificada de imagenes previas en el flujo continuo de video.
  4. 4. Codificador segun la reivindicacion 3, en el que dicho determinador (110) de imagenes de referencia esta configurado para determinar, para dicha imagen (10), cualquier imagen (40, 42) de referencia entre dichas multiples imagenes (10, 40, 42, 50) como referencia de codificacion para dicha imagen (10) y cualquier imagen (42) de referencia entre dichas multiples imagenes (10, 40, 42, 50) como referencia de codificacion para una imagen subsiguiente (50), segun un orden de descodificacion, de dicho flujo continuo (1) de video.
  5. 5. Transmisor (200) que comprende:
    una seccion (210) de entrada configurada para recibir multiples imagenes (10, 40, 42, 50) de un flujo continuo (1) de video;
    un codificador (100) de acuerdo con las reivindicaciones 3 a 4, configurado para codificar dichas multiples imagenes (10, 40, 42, 50) con el fin de generar representaciones codificadas (60) respectivas de dichas multiples imagenes (10, 40, 42, 50); y
    una seccion (220) de salida configurada para dar salida a dichas representaciones codificadas (60) respectivas de
    dichas multiples imagenes (10, 40, 42, 50).
ES16170866.4T 2011-06-30 2012-04-26 Señalización de imágenes de referencia Active ES2645943T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161503019P 2011-06-30 2011-06-30
US201161503019P 2011-06-30

Publications (1)

Publication Number Publication Date
ES2645943T3 true ES2645943T3 (es) 2017-12-11

Family

ID=46197673

Family Applications (4)

Application Number Title Priority Date Filing Date
ES16170866.4T Active ES2645943T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia
ES12724780.7T Active ES2595732T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia
ES17173414T Active ES2714756T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia
ES18178762T Active ES2892283T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia

Family Applications After (3)

Application Number Title Priority Date Filing Date
ES12724780.7T Active ES2595732T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia
ES17173414T Active ES2714756T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia
ES18178762T Active ES2892283T3 (es) 2011-06-30 2012-04-26 Señalización de imágenes de referencia

Country Status (24)

Country Link
US (9) US9706223B2 (es)
EP (5) EP2727342B1 (es)
JP (4) JP5616562B2 (es)
KR (3) KR101813769B1 (es)
CN (1) CN103797797B (es)
AP (1) AP3858A (es)
AU (1) AU2012276348C1 (es)
BR (1) BR112013033191B1 (es)
CA (2) CA2967452C (es)
DK (4) DK3410725T3 (es)
ES (4) ES2645943T3 (es)
HK (1) HK1192390A1 (es)
HU (1) HUE028853T2 (es)
IL (1) IL230146A (es)
MA (1) MA35202B1 (es)
MX (1) MX2013014857A (es)
MY (1) MY166340A (es)
PL (4) PL3410725T3 (es)
PT (4) PT2727342T (es)
RU (3) RU2710903C2 (es)
SG (1) SG10201605216XA (es)
TR (1) TR201901275T4 (es)
WO (1) WO2013002700A1 (es)
ZA (2) ZA201309396B (es)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3410725T3 (pl) 2011-06-30 2022-02-21 Telefonaktiebolaget Lm Ericsson (Publ) Sygnalizacja obrazu referencyjnego
PL2749027T3 (pl) * 2011-08-25 2020-10-19 Sun Patent Trust Sposoby i urządzenia do kodowania i dekodowania wideo z użyciem zaktualizowanego opisu bufora
ES2685431T3 (es) * 2011-09-07 2018-10-09 Sun Patent Trust Procedimiento de decodificación de imágenes y aparato de decodificación de imágenes
ES2844148T3 (es) 2011-09-19 2021-07-21 Sun Patent Trust Procedimiento de descodificación de imágenes, dispositivo de descodificación de imágenes
US9131245B2 (en) 2011-09-23 2015-09-08 Qualcomm Incorporated Reference picture list construction for video coding
US9451284B2 (en) * 2011-10-10 2016-09-20 Qualcomm Incorporated Efficient signaling of reference picture sets
US20130094774A1 (en) * 2011-10-13 2013-04-18 Sharp Laboratories Of America, Inc. Tracking a reference picture based on a designated picture on an electronic device
US8787688B2 (en) * 2011-10-13 2014-07-22 Sharp Laboratories Of America, Inc. Tracking a reference picture based on a designated picture on an electronic device
US8768079B2 (en) * 2011-10-13 2014-07-01 Sharp Laboratories Of America, Inc. Tracking a reference picture on an electronic device
US8855433B2 (en) * 2011-10-13 2014-10-07 Sharp Kabushiki Kaisha Tracking a reference picture based on a designated picture on an electronic device
CN104025598B (zh) * 2011-10-19 2017-11-14 太阳专利托管公司 图像编码方法、图像编码装置
GB2497914B (en) * 2011-10-20 2015-03-18 Skype Transmission of video data
US9264717B2 (en) 2011-10-31 2016-02-16 Qualcomm Incorporated Random access with advanced decoded picture buffer (DPB) management in video coding
US10003817B2 (en) * 2011-11-07 2018-06-19 Microsoft Technology Licensing, Llc Signaling of state information for a decoded picture buffer and reference picture lists
EP3576412B1 (en) 2011-11-08 2021-09-01 Nokia Technologies Oy Reference picture handling
US9369710B2 (en) * 2012-02-06 2016-06-14 Qualcomm Incorporated Reference picture list modification for video coding
KR20130116782A (ko) 2012-04-16 2013-10-24 한국전자통신연구원 계층적 비디오 부호화에서의 계층정보 표현방식
JP6030749B2 (ja) 2012-04-16 2016-11-24 サムスン エレクトロニクス カンパニー リミテッド 復号化方法及び復号化装置
US9979958B2 (en) 2012-04-20 2018-05-22 Qualcomm Incorporated Decoded picture buffer processing for random access point pictures in video sequences
US10491913B2 (en) * 2012-04-24 2019-11-26 Telefonaktiebolaget L M Ericsson (Publ) Identifying a parameter set for decoding a multi-layer video representation
JP6182719B2 (ja) * 2012-06-29 2017-08-23 ヴェロス メディア インターナショナル リミテッドVelos Media International Limited 符号化装置および符号化方法
US9479776B2 (en) 2012-07-02 2016-10-25 Qualcomm Incorporated Signaling of long-term reference pictures for video coding
US9584825B2 (en) 2012-09-27 2017-02-28 Qualcomm Incorporated Long-term reference picture signaling in video coding
KR101561012B1 (ko) * 2012-09-28 2015-10-15 텔레폰악티에볼라겟엘엠에릭슨(펍) 비디오 시퀀스의 픽처의 디코딩 및 인코딩
US9313500B2 (en) 2012-09-30 2016-04-12 Microsoft Technology Licensing, Llc Conditional signalling of reference picture list modification information
CN103916666B (zh) * 2013-01-09 2017-07-14 北京大学 视频编码方法、解码方法、编码器及解码器
WO2014109609A1 (ko) * 2013-01-10 2014-07-17 삼성전자 주식회사 멀티 레이어 비디오의 복호화 방법 및 장치, 멀티 레이어 비디오의 부호화 방법 및 장치
WO2014163452A1 (ko) * 2013-04-05 2014-10-09 삼성전자 주식회사 멀티 레이어 비디오의 복호화 방법 및 장치, 멀티 레이어 비디오의 부호화 방법 및 장치
EP2966864A4 (en) * 2013-04-05 2016-10-19 Samsung Electronics Co Ltd METHOD AND DEVICE FOR DECODING A MULTILAYER VIDEO AND METHOD AND DEVICE FOR CODING MULTILAYER VIDEOS
CN105103563B (zh) * 2013-04-08 2019-05-21 寰发股份有限公司 关于缩放列表数据信令的方法和装置
US11438609B2 (en) * 2013-04-08 2022-09-06 Qualcomm Incorporated Inter-layer picture signaling and related processes
JP6365924B2 (ja) * 2013-05-09 2018-08-01 サン パテント トラスト 画像復号方法及び画像復号装置
EP3078195A4 (en) * 2013-12-02 2017-08-09 Nokia Technologies OY Video encoding and decoding
KR20150075041A (ko) 2013-12-24 2015-07-02 주식회사 케이티 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치
WO2015147427A1 (ko) 2014-03-24 2015-10-01 주식회사 케이티 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치
US9832463B2 (en) * 2014-06-18 2017-11-28 Telefonaktiebolaget L M Ericsson (Publ) Robust encoding and decoding of pictures in video
GB2531271A (en) * 2014-10-14 2016-04-20 Nokia Technologies Oy An apparatus, a method and a computer program for image sequence coding and decoding
CN104811721B (zh) * 2015-05-26 2017-09-22 珠海全志科技股份有限公司 视频解码数据存储方法及运动向量数据的计算方法
EP3292691A4 (en) * 2015-05-29 2019-01-23 HFI Innovation Inc. METHOD FOR MANAGING DECODED IMAGE PADS FOR THE INTRA-IMAGE BLOCKS COPYING METHOD
US10097836B2 (en) * 2015-09-28 2018-10-09 Samsung Electronics Co., Ltd. Method and device to mark a reference picture for video coding
JP6848873B2 (ja) * 2015-10-13 2021-03-24 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
KR102476207B1 (ko) 2015-11-12 2022-12-08 삼성전자주식회사 반도체 장치의 동작 방법 및 반도체 시스템
US11445223B2 (en) * 2016-09-09 2022-09-13 Microsoft Technology Licensing, Llc Loss detection for encoded video transmission
CN114501018B (zh) * 2018-08-17 2024-01-09 华为技术有限公司 参考图像管理的解码方法、设备和系统
KR20240032173A (ko) * 2018-09-12 2024-03-08 후아웨이 테크놀러지 컴퍼니 리미티드 참조 화상 목록 구조에 대한 후보 시그널링
CN112703736B (zh) 2018-09-14 2022-11-25 华为技术有限公司 视频译码方法,视频译码设备以及非瞬时性计算机可读介质
EP3854099A4 (en) * 2018-09-21 2022-06-29 Sharp Kabushiki Kaisha Systems and methods for signaling reference pictures in video coding
EP4221226A1 (en) * 2018-11-07 2023-08-02 HFI Innovation Inc. Method and apparatus of encoding or decoding video blocks by current picture referencing coding
US11196988B2 (en) * 2018-12-17 2021-12-07 Apple Inc. Reference picture management and list construction
CN112770179B (zh) * 2021-01-05 2023-06-16 武汉球之道科技有限公司 一种用于在线赛事转播的高效传输系统

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US631447A (en) 1898-11-16 1899-08-22 American Cotton Bale Company Press.
US5155851A (en) * 1989-05-15 1992-10-13 Bell Communications Research, Inc. Routing an incoming data stream to parallel processing stations
US5935213A (en) * 1996-05-02 1999-08-10 Fore Systems, Inc. System and method for generating explicit rate value information for flow control in ATAM network
US6252873B1 (en) * 1998-06-17 2001-06-26 Gregory O. Vines Method of ensuring a smooth transition between MPEG-2 transport streams
US6314477B1 (en) * 1998-10-30 2001-11-06 Agilent Technologies, Inc. Performance of fibre channel protocol sequence reassembly using expected frame information and buffer list calculations
AU764308B2 (en) * 1999-02-17 2003-08-14 Matsushita Electric Industrial Co., Ltd. Information recording medium, apparatus and method for performing after-recording on the recording medium
US6789128B1 (en) * 2000-03-11 2004-09-07 Oracle International Corporation System and method for reducing network traffic between two computing devices
JP2001285234A (ja) * 2000-04-04 2001-10-12 Sony Corp データ多重化装置およびデータ多重化方法、並びに記録媒体
US7376475B2 (en) * 2001-03-05 2008-05-20 Microsoft Corporation Audio buffer configuration
US6970509B2 (en) * 2001-07-31 2005-11-29 Wis Technologies, Inc. Cell array and method of multiresolution motion estimation and compensation
US7486678B1 (en) * 2002-07-03 2009-02-03 Greenfield Networks Multi-slice network processor
KR100961036B1 (ko) * 2002-07-11 2010-06-01 파나소닉 주식회사 화상 복호화 방법 및 화상 복호화 장치
JP3513148B1 (ja) * 2002-10-11 2004-03-31 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、動画像符号化プログラム、及び動画像復号プログラム
KR100693669B1 (ko) * 2003-03-03 2007-03-09 엘지전자 주식회사 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법
US7353299B2 (en) * 2003-05-29 2008-04-01 International Business Machines Corporation Method and apparatus for managing autonomous third party data transfers
US8995536B2 (en) * 2003-07-23 2015-03-31 Broadcom Corporation System and method for audio/video synchronization
CN1875637A (zh) * 2003-08-26 2006-12-06 汤姆森特许公司 最小化用于相互编码的参考画面数目的方法和装置
US7391787B1 (en) * 2003-09-11 2008-06-24 Pmc-Sierra, Inc. System and method for opportunistic request-grant switching
US7248261B1 (en) * 2003-12-15 2007-07-24 Nvidia Corporation Method and apparatus to accelerate rendering of shadow effects for computer-generated images
WO2005083637A1 (es) * 2004-02-27 2005-09-09 Td Vision Corporation, S.A. De C.V. Método y sistema de decodificación digital de imágenes de video 3d estereoscópicas
CN101924945B (zh) * 2004-03-08 2012-07-18 三叉微系统(远东)有限公司 具有可变压缩比和用于存储及检索参考帧数据的缓冲器的视频解码器
US20060013318A1 (en) 2004-06-22 2006-01-19 Jennifer Webb Video error detection, recovery, and concealment
FR2874292B1 (fr) * 2004-08-10 2007-01-26 Thales Sa Procede de mise en forme de trames d'une sequence video
US8615038B2 (en) * 2004-12-06 2013-12-24 Nokia Corporation Video coding, decoding and hypothetical reference decoder
US8054882B2 (en) * 2005-05-13 2011-11-08 Streaming Networks (Pvt.) Ltd. Method and system for providing bi-directionally predicted video coding
KR100770704B1 (ko) * 2005-08-04 2007-10-29 삼성전자주식회사 픽쳐 스킵 방법 및 장치
US8155194B2 (en) * 2005-08-05 2012-04-10 Lsi Corporation Method and apparatus for MPEG-2 to H.264 video transcoding
US7881384B2 (en) * 2005-08-05 2011-02-01 Lsi Corporation Method and apparatus for H.264 to MPEG-2 video transcoding
US8879857B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
WO2007080223A1 (en) * 2006-01-10 2007-07-19 Nokia Corporation Buffering of decoded reference pictures
US7769239B2 (en) * 2006-01-12 2010-08-03 Gary Demos Efficient bit-exact lossless image coding residual system
MX357910B (es) * 2006-07-06 2018-07-30 Thomson Licensing Método y aparato para desacoplar el número de cuadro y/o la cuenta del orden de imagen (poc) para la codificación y decodificación de video de múltiples vistas.
JP2008105389A (ja) * 2006-08-04 2008-05-08 Kyodo Printing Co Ltd 印刷用紙および複製画
KR101385808B1 (ko) * 2006-10-16 2014-04-17 톰슨 라이센싱 비디오 동작 동안 nal 유닛을 이용하여 동시 디코딩 리프레시를 시그널링하는 방법
AP2545A (en) * 2006-10-20 2012-12-20 Nokia Corp Virtual decoded reference picture marking and reference picture list
US8015483B2 (en) 2006-10-20 2011-09-06 Microsoft Corporation Processing an XML feed with extensible or non-typed elements
RU2426227C2 (ru) * 2006-11-14 2011-08-10 Квэлкомм Инкорпорейтед Кодирование кодов переменной длины с эффективным использованием памяти
JP2008177907A (ja) * 2007-01-19 2008-07-31 Fujitsu Ltd 動画データ復号装置、情報機器、動画データ復号方法および動画データ復号プログラム
JP5023739B2 (ja) * 2007-02-28 2012-09-12 ソニー株式会社 画像情報符号化装置及び符号化方法
KR101115547B1 (ko) * 2007-04-24 2012-03-05 노키아 코포레이션 미디어 파일들에서의 다중 디코딩 시각들을 시그날링
JP4519159B2 (ja) 2007-07-12 2010-08-04 株式会社日立製作所 パケット転送装置及びパケット転送方法
JP2009260736A (ja) 2008-03-24 2009-11-05 Fujitsu Ltd エンコーディング装置、デコーディング装置、動画像処理方法、動画像処理システム、エンコーディングプログラムおよびデコーディングプログラム
CA2730543C (en) * 2008-07-16 2014-04-22 Nokia Corporation Method and apparatus for track and track subset grouping
TW201032597A (en) * 2009-01-28 2010-09-01 Nokia Corp Method and apparatus for video coding and decoding
US8189666B2 (en) * 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
TWI387347B (zh) * 2009-02-18 2013-02-21 Novatek Microelectronics Corp 圖像解碼器,參考圖資訊溝通介面以及參考圖控制方法
JP5332773B2 (ja) * 2009-03-18 2013-11-06 ソニー株式会社 画像処理装置および方法
US8933989B2 (en) * 2009-04-22 2015-01-13 Lg Electronics Inc. Reference picture list changing method of multi-view video
JP2011082683A (ja) * 2009-10-05 2011-04-21 Sony Corp 画像処理装置、画像処理方法、及び、プログラム
TW201121331A (en) * 2009-12-10 2011-06-16 Novatek Microelectronics Corp Picture decoder
US9226045B2 (en) * 2010-08-05 2015-12-29 Qualcomm Incorporated Signaling attributes for network-streamed video data
US9723318B2 (en) * 2011-01-12 2017-08-01 Siemens Aktiengesellschaft Compression and decompression of reference images in a video encoder
US9516379B2 (en) * 2011-03-08 2016-12-06 Qualcomm Incorporated Buffer management in video codecs
PL3410725T3 (pl) 2011-06-30 2022-02-21 Telefonaktiebolaget Lm Ericsson (Publ) Sygnalizacja obrazu referencyjnego
WO2013048324A1 (en) * 2011-09-29 2013-04-04 Telefonaktiebolaget L M Ericsson (Publ) Reference picture list handling
US8768079B2 (en) * 2011-10-13 2014-07-01 Sharp Laboratories Of America, Inc. Tracking a reference picture on an electronic device
US9979958B2 (en) * 2012-04-20 2018-05-22 Qualcomm Incorporated Decoded picture buffer processing for random access point pictures in video sequences
US9609341B1 (en) * 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
CH707789A1 (de) * 2013-03-25 2014-09-30 Liebherr Machines Bulle Sa Kolben für eine Axialkolbenmaschine.
JP2017522767A (ja) * 2014-06-18 2017-08-10 テレフオンアクチーボラゲット エルエム エリクソン(パブル) ビデオビットストリームにおけるランダムアクセス
US10375399B2 (en) * 2016-04-20 2019-08-06 Qualcomm Incorporated Methods and systems of generating a background picture for video coding

Also Published As

Publication number Publication date
US11792425B2 (en) 2023-10-17
DK2727342T3 (en) 2016-10-03
PT3229474T (pt) 2019-02-04
US20190297346A1 (en) 2019-09-26
EP3410725A1 (en) 2018-12-05
CN103797797B (zh) 2016-07-13
MA35202B1 (fr) 2014-06-02
US9807418B2 (en) 2017-10-31
CA2967452C (en) 2019-07-09
JP2015015755A (ja) 2015-01-22
KR101813768B1 (ko) 2017-12-29
PL2727342T3 (pl) 2017-01-31
US10368088B2 (en) 2019-07-30
US20200288167A1 (en) 2020-09-10
HK1192390A1 (zh) 2014-08-15
IL230146A (en) 2016-07-31
PL3410725T3 (pl) 2022-02-21
EP3902258A1 (en) 2021-10-27
RU2765751C2 (ru) 2022-02-02
PT3410725T (pt) 2021-09-06
US20180338157A1 (en) 2018-11-22
RU2019137954A3 (es) 2021-11-25
ZA201309396B (en) 2015-09-30
BR112013033191B1 (pt) 2022-05-10
US20220210468A1 (en) 2022-06-30
KR20150043559A (ko) 2015-04-22
SG10201605216XA (en) 2016-08-30
JP2015015756A (ja) 2015-01-22
JP5889983B2 (ja) 2016-03-22
JP5616562B2 (ja) 2014-10-29
WO2013002700A1 (en) 2013-01-03
RU2016125119A3 (es) 2019-10-15
ZA201500885B (en) 2016-10-26
CN103797797A (zh) 2014-05-14
RU2019137954A (ru) 2021-05-25
EP3229474A1 (en) 2017-10-11
US10063882B2 (en) 2018-08-28
MX2013014857A (es) 2014-03-26
RU2710903C2 (ru) 2020-01-14
EP3091744A1 (en) 2016-11-09
JP6148293B2 (ja) 2017-06-14
ES2892283T3 (es) 2022-02-03
PL3229474T3 (pl) 2019-05-31
PT3091744T (pt) 2017-08-31
JP2015222971A (ja) 2015-12-10
EP3091744B1 (en) 2017-08-02
CA2840349A1 (en) 2013-01-03
US20220174313A1 (en) 2022-06-02
HUE028853T2 (en) 2017-01-30
PL3091744T3 (pl) 2018-01-31
CA2967452A1 (en) 2013-01-03
JP5889982B2 (ja) 2016-03-22
KR20140053117A (ko) 2014-05-07
DK3410725T3 (da) 2021-09-20
AU2012276348A1 (en) 2014-01-16
AU2012276348B2 (en) 2015-07-16
BR112013033191A2 (pt) 2017-03-01
KR101578308B1 (ko) 2015-12-16
EP3410725B1 (en) 2021-07-28
PT2727342T (pt) 2016-08-01
US20180035131A1 (en) 2018-02-01
EP2727342B1 (en) 2016-06-29
KR20150046359A (ko) 2015-04-29
RU2014102959A (ru) 2015-08-10
US20170041633A1 (en) 2017-02-09
US10708618B2 (en) 2020-07-07
ES2714756T3 (es) 2019-05-29
US11770552B2 (en) 2023-09-26
CA2840349C (en) 2017-07-04
DK3229474T3 (en) 2019-03-11
MY166340A (en) 2018-06-25
KR101813769B1 (ko) 2017-12-29
RU2595562C2 (ru) 2016-08-27
JP2014523690A (ja) 2014-09-11
EP2727342A1 (en) 2014-05-07
US11265576B2 (en) 2022-03-01
RU2016125119A (ru) 2018-12-04
ES2595732T3 (es) 2017-01-03
AP3858A (en) 2016-10-31
US20230421803A1 (en) 2023-12-28
DK3091744T3 (en) 2017-10-02
EP3229474B1 (en) 2018-12-05
AP2014007381A0 (en) 2014-01-31
AU2012276348C1 (en) 2015-11-26
TR201901275T4 (tr) 2019-02-21
US20130215975A1 (en) 2013-08-22
US9706223B2 (en) 2017-07-11

Similar Documents

Publication Publication Date Title
ES2645943T3 (es) Señalización de imágenes de referencia
US9247262B2 (en) Absolute or explicit reference picture signaling