ES2961495T3 - Procedimiento de decodificación de imágenes y procedimiento de codificación de imágenes - Google Patents

Procedimiento de decodificación de imágenes y procedimiento de codificación de imágenes Download PDF

Info

Publication number
ES2961495T3
ES2961495T3 ES12799908T ES12799908T ES2961495T3 ES 2961495 T3 ES2961495 T3 ES 2961495T3 ES 12799908 T ES12799908 T ES 12799908T ES 12799908 T ES12799908 T ES 12799908T ES 2961495 T3 ES2961495 T3 ES 2961495T3
Authority
ES
Spain
Prior art keywords
mode
intra
prediction
target
prediction mode
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
ES12799908T
Other languages
English (en)
Inventor
Hisao Sasai
Takahiro Nishi
Youji Shibahara
Toshiyasu Sugio
Kyoko Tanikawa
Toru Matsunobu
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.)
Sun Patent Trust Inc
Original Assignee
Sun Patent Trust Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Patent Trust Inc filed Critical Sun Patent Trust Inc
Application granted granted Critical
Publication of ES2961495T3 publication Critical patent/ES2961495T3/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/16Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • 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
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission

Landscapes

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

Abstract

Se proporciona un método de decodificación de imágenes que decodifica, para cada bloque, datos de imágenes incluidos en un flujo codificado, y que comprende las siguientes etapas: una etapa de derivación para derivar candidatos para modos de intra-predicción de los cuales siempre hay al menos dos, los candidatos ser candidatos de modo de intrapredicción usados para la predicción intrapantalla de un bloque sujeto a decodificar; una etapa de adquisición para adquirir un índice del flujo codificado con el fin de especificar un candidato de los candidatos del modo de intra-predicción derivados; una etapa de selección para seleccionar en base al índice adquirido un candidato, de los candidatos de modo de intrapredicción derivados, como el modo de intrapredicción usado para la predicción intrapantalla de un bloque sujeto de decodificación. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Procedimiento de decodificación de imágenes y procedimiento de codificación de imágenes
Campo Técnico
La presente invención se refiere a procedimientos de decodificación de imágenes en movimiento y procedimientos de codificación de imágenes en movimiento y, en particular, a procedimientos de decodificación y codificación de información que incluyen números de modo de intrapredicción usados para generar píxeles de predicción.
Técnica Anterior
En el estándar de codificación de vídeo de alta eficiencia (HEVC), que es uno de los estándares de codificación de imágenes de próxima generación, se han llevado a cabo varias consideraciones para aumentar la eficiencia de la codificación (véase la Bibliografía No de Patentes 1).
Los ejemplos de codificación incluyen codificación interfotograma e intracodificación. En la codificación interfotograma, la compresión se lleva a cabo por medio de predicción interfotograma en la que se genera una imagen de predicción con referencia a la información de píxeles de un fotograma anterior. En la intracodificación, la compresión se lleva a cabo por medio de intrapredicción en la que se genera una imagen de predicción con referencia a información de píxeles dentro de una imagen.
En la intracodificación, los modos se preparan en número (intraPredModeNum) correspondiente a los tamaños predeterminados de los bloques objetivo de codificación (los tamaños predeterminados son, por ejemplo, los valores de log2TrafoSize y los tipos de Unidades de Predicción) a fin de diferenciar las direcciones, etc. para generar píxeles de intrapredicción.
Por ejemplo, actualmente se considera preparar 34 modos (el valor de intraPredModeNum es 34) para codificar bloques objetivo, cada uno de los cuales tiene un valor del tamaño log2TrafoSize dentro de un intervalo de 3 a 5 inclusive (FIG. 15).
Estos modos se denominan como modos de intrapredicción (IntraPredMode). El valor del modo de intrapredicción (número de modo de intrapredicción) es un valor que representa una dirección de predicción correspondiente. Por ejemplo, hay 34 o 17 modos de intrapredicción. Por ejemplo, un valor (o una etiqueta) “0” del número de modo de intrapredicción muestra la (dirección) vertical, un valor “1” del número de modo de intrapredicción muestra la (dirección) horizontal, un valor “2” del número de modo de intrapredicción no muestra ninguna dirección llamada predicción del modo DC, y valores de 3 y mayores (valores entre 3 y 33 inclusive para bloques que tienen un tamaño predeterminado) del número de modo de intrapredicción muestran direcciones de ángulos predeterminados asociados respectivamente al mismo.
En adelante en la presente memoria, en esta Descripción, el número de modo de intrapredicción asociado con un bloque objetivo de codificación se denomina como “número de modo objetivo”. El valor indicado por una cadena de código obtenida por medio de la codificación del “número de modo objetivo” de acuerdo con un esquema de codificación predeterminado se denomina como “número de modo de codificación” a fin de diferenciarlo del “número de modo objetivo”.
Para decodificar un bloque objetivo de decodificación (tal como un bloque de luminancia), se usa información que es “información para identificar cuál de los modos de intrapredicción se debería usar”. La información de modo se genera para cada unidad de predicción (en adelante en la presente memoria, se denomina como PU).
La publicación de solicitud de patente internacional WO 2011/032332 A1 describe una codificación y decodificación de vídeo eficiente de un modo de intrapredicción. Se han descrito múltiples realizaciones. En particular, de acuerdo con la realización 2, se derivan de antemano dos modos candidatos más probables. El documento EP 2719 180 A0 describe la señalización de modo de intrapredicción para codificación de vídeo empleando modos de predicción de bloques vecinos como modos más probables (modos candidatos) que se señalizarán de manera simplificada cuando se seleccionen para codificar un bloque. En concreto, se establece de antemano un número (igual o superior a 2) de los modos de intrapredicción más probables para todos los bloques de un fotograma/imagen. El documento EP 2719 180 A0 es un documento del estado de la técnica de acuerdo con el Artículo 54(3) EPC.
El documento NPL 2 describe la construcción de un listado de candidatos que comprende hasta dos modos candidatos. Si ambos modos vecinos están disponibles, el modo que tiene el índice más bajo se inserta en la primera posición dentro del listado, seguido por el otro. Si sólo hay uno disponible o si son idénticos, el modo restante se inserta solo en el listado. Si no hay ninguno disponible, el modo predeterminado DC se inserta en el listado.
En la actualidad, se considera actualmente que la información de modo incluye tres piezas de información como se indica a continuación.
(I1) Un “indicador de uso del modo de predicción” (prev_intra_luma_pred_flag) que es un indicador que determina si se usa o no el valor del modo de intrapredicción de una PU adyacente decodificada antes.
(12) Un “número de modo de predicción candidato” (m pm jdx) que es un índice que indica, cuando hay dos o más candidatos para el modo de intrapredicción (en adelante en la presente memoria, se denominan como modos de intrapredicción candidatos), cuál de los modos de intrapredicción candidatos se debe usar. Por ejemplo, el valor de índice predeterminado es “0”, lo que indica el primer modo de intrapredicción candidato.
(13) Un “número de modo de codificación” (rem_intra_luma_pred_mode) que es un código (valor) asociado con un “número de modo objetivo” cuando el número de modo de intrapredicción de una PU adyacente decodificada antes no se usa en el proceso de decodificación, (1) el “número de modo de codificación” se extrae primero de la cadena de código incluida en la información de modo de acuerdo con un procedimiento de decodificación de longitud variable predeterminado, etc. (procedimiento de decodificación aritmética, etc.), y (2) mediante el uso del valor extraído, el “número de modo objetivo” (cualquiera de los 34 modos mencionados anteriormente del 0 al 33 inclusive) se deriva (o se deriva la información usada para la derivación).
Listado de Citas
Bibliografía No de Patentes
[NPL 1]
Equipo de Colaboración Conjunta sobre Codificación de Vídeo (JCT-VC) del UIT-T SG16 WP3 e ISO/IEC JTC1/SC29/WG11 5ta reunión: Ginebra, CH, del 6 al 23 de marzo de 2011<j>C<t>VC-E603 Título: WD3: Borrador de Trabajo 3 de Codificación de Vídeo de Alta Eficiencia ver. 5 http://phenix.intevry.fr/jct/doc_end_user/documents/5_Geneva/wg 11JCTVC-E603-v5.zip
[NPL2] SANDEEP KANUMURI ET AL.: “Enhancements to Intra Coding”,4. REUNIÓN JCT-VC; 95. REUNIÓN MPEG; 20-1-2011 - 28-1-2011; DAEGU; (EQUIPO DE COLABORACIÓN CONJUNTA EN CODIFICACIÓN DE VÍDEO DE ISO/IEC JTC1/SC29/WG11 E ITU-T SG.16); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/, núm. JCTVC-D235, enero de 2011 (2011-01-14), ISSN: 0000-0013
Sumario de la Invención
Problema Técnico
Sin embargo, en la intracodificación convencional, la eficacia de compresión de la información de modo es insuficiente.
La presente invención se ha concebido para resolver dicho inconveniente y tiene como objetivo proporcionar un procedimiento de codificación de imágenes, un aparato de codificación de imágenes, un procedimiento de decodificación de imágenes, un aparato de decodificación de imágenes y un aparato de codificación y decodificación de imágenes que comprime la información de modo con mayor eficiencia.
Solución al problema
Esto se logra por medio de las características de las reivindicaciones independientes.
Estos aspectos generales y específicos se pueden implementar mediante el uso de un sistema, un procedimiento, un circuito integrado, un programa informático, un medio de grabación o cualquier combinación del sistema, procedimiento, circuito integrado, programa informático o medio de grabación.
Efectos ventajosos de la invención
De acuerdo con la presente invención, es posible reducir la cantidad de procesamiento manteniendo al mismo tiempo la eficiencia de codificación.
Breve descripción de los dibujos
[FIG. 1]
La FIG. 1 es un diagrama de bloques que ilustra un ejemplo de configuración de un aparato de codificación de imágenes de acuerdo con la Realización 1.
[FIG. 2]
La FIG. 2 es un diagrama de flujo de un procedimiento de generación de información de modo en un procedimiento de codificación de imágenes de acuerdo con la Realización 1.
[FIG. 3]
La FIG. 3 es un diagrama de flujo de un detalle de la Etapa S215 en la FIG. 2.
[FIG. 4]
La FIG. 4 es un diagrama de flujo de un procedimiento de determinación del modo de predicción de acuerdo con la Realización 1.
[FIG. 5]
La FIG. 5 es un diagrama de flujo de un ejemplo de un procedimiento para codificar un número de modo de codificación de acuerdo con un esquema CABAC (Etapa s 217).
[FIG. 6A]
La FIG. 6a es un diagrama conceptual que ilustra un ejemplo de una estructura de sintaxis convencional.
[FIG. 6B]
La FIG. 6B es un diagrama conceptual que ilustra un ejemplo de una estructura de sintaxis de acuerdo con la Realización 1.
[FIG. 7]
La FIG. 7 es un diagrama de flujo de una variación del procedimiento de determinación del modo de predicción de acuerdo con la Realización 1, que es útil para comprender la invención, pero no está dentro del alcance de las reivindicaciones.
[FIG. 8]
La FIG. 8 es un diagrama de flujo de un ejemplo de otro procedimiento para codificar el número de modo de codificación (Etapa S217).
[FIG. 9A]
La FIG. 9A es un ejemplo de una tabla de codificación usada en otro procedimiento para codificar el número de modo de codificación (Etapa S217).
[FIG. 9B]
La FIG. 9B es otro ejemplo de la tabla de codificación usada en otro procedimiento para codificar el número de modo de codificación (Etapa S217).
[FIG. 10]
La FIG. 10 es un diagrama de bloques que ilustra una configuración de un aparato de decodificación 2 de acuerdo con la Realización 2.
[FIG. 11]
La FIG. 11 es un diagrama de flujo de un procedimiento de decodificación de acuerdo con la Realización 2. [FIG. 12A]
La FIG. 12a es un diagrama de flujo de un procesamiento de decodificación aritmética llevado a cabo cuando se emite una cadena de bits de acuerdo con el esquema CABAC.
[FIG. 12B]
La FIG. 12B es un diagrama de flujo del procesamiento de decodificación aritmética llevado a cabo cuando se emite una cadena de bits de acuerdo con el esquema CAVLC.
[FIG. 13]
La FIG. 13 es un diagrama de flujo de un detalle de un primer ejemplo de la Etapa S1117.
[FIG. 14]
La FIG. 14 es un diagrama de flujo de un detalle de la Etapa S1115.
[FIG. 15]
La FIG. 15 es un diagrama conceptual de un ejemplo de un modo de predicción de decodificación.
[FIG. 16]
La FIG. 16 muestra una configuración general de un sistema de suministro de contenido para implementar servicios de distribución de contenido.
[FIG. 17]
La FIG. 17 muestra una configuración general de un sistema de radiodifusión digital.
[FIG. 18]
La FIG. 18 es un diagrama de bloques que ilustra un ejemplo de una configuración de una televisión.
[FIG. 19]
La FIG. 19 es un diagrama de bloques que ilustra un ejemplo de una configuración de una unidad de reproducción/grabación de información que lee y escribe información desde y sobre un medio de grabación que es un disco óptico.
[FIG. 20]
La FIG. 20 muestra un ejemplo de una configuración de un medio de grabación que es un disco óptico.
[FIG. 21A]
La FIG. 21a muestra un ejemplo de un teléfono celular.
[FIG. 21B]
La FIG. 21<b>es un diagrama de bloques que muestra un ejemplo de una configuración de un teléfono celular. [FIG. 22]
La FIG. 22 ilustra una estructura de datos multiplexados.
[FIG. 23]
La FIG. 23 muestra de manera esquemática cómo se multiplexa cada secuencia en datos multiplexados.
[FIG. 24]
La FIG. 24 muestra con más detalle cómo se almacena una secuencia de vídeo en una secuencia de paquetes PES.
[FIG. 25]
La FIG. 25 muestra una estructura de paquetes TS y paquetes de origen en los datos multiplexados.
[FIG. 26]
La FIG. 26 muestra una estructura de datos de un PMT.
[FIG. 27]
La FIG. 27 ilustra una estructura interna de información de datos multiplexados.
[FIG. 28]
La FIG. 28 ilustra una estructura interna de información de atributos de secuencia.
[FIG. 29]
La FIG. 29 muestra etapas para identificar datos de vídeo.
[FIG. 30]
La FIG. 30 muestra un ejemplo de una configuración de un circuito integrado para implementar el procedimiento de codificación de imágenes en movimiento y el procedimiento de decodificación de imágenes en movimiento de acuerdo con cada una de las realizaciones.
[FIG. 31]
La FIG. 31 muestra una configuración para cambiar entre frecuencias de conducción.
[FIG. 32]
La FIG. 32 muestra etapas para identificar datos de vídeo y cambiar entre frecuencias de conducción.
[FIG. 33]
La FIG. 33 muestra un ejemplo de una tabla de consulta en la que los estándares de datos de vídeo están asociados con frecuencias de conducción.
[FIG. 34A]
La FIG. 34a es un diagrama que muestra un ejemplo de una configuración para compartir un módulo de una unidad de procesamiento de señales.
[FIG. 34B]
La FIG. 34b es un diagrama que muestra otro ejemplo de una configuración para compartir un módulo de la unidad de procesamiento de señales.
Descripción de Realizaciones
A fin de solucionar el inconveniente anterior, se proporcionan un procedimiento de decodificación de imágenes de acuerdo con la reivindicación 1 y un procedimiento de codificación de imágenes de acuerdo con la reivindicación 2.
Las siguientes son tres posibles estructuras de la información de modo convencional.
(M1) Cuando se usa uno de los modos de intrapredicción candidatos y hay una pluralidad de modos de intrapredicción candidatos (el valor de NumMPMCand es mayor que 1), la información de modo incluye el (I1) “indicador de uso del modo de predicción” y el (I2) “número de modo de predicción del candidato”.
(M2) Cuando se usa el modo de intrapredicción candidato y hay un modo de intrapredicción candidato, la información de modo incluye sólo el (I1) “indicador de uso del modo de predicción”. Esto se debe a que el número de modo objetivo se identifica de forma única cuando sólo hay un modo de intrapredicción candidato, por lo que no se requiere el (12) “número de modo de predicción candidato”. Convencionalmente, el “número de modo de predicción candidato” no se incluye cuando sólo hay un modo de intrapredicción candidato, para reducir la cantidad de información de la información de modo.
(M3) Cuando no se usa ningún modo de intrapredicción candidato, la información de modo incluye el (I1) “ indicador de uso del modo de predicción” y el (13) “número de modo de codificación” obtenido por medio de la codificación del número de modo objetivo. La cantidad de información del “número de modo de codificación” es significativamente mayor que la del (12) “número de modo de predicción candidato” o similar.
En el procedimiento de decodificación de imágenes con la configuración anterior, se derivan constantemente dos o más candidatos, lo que da como resultado una alta tasa de PU que usan los modos de intrapredicción candidatos. En otras palabras, es posible reducir la cantidad de información porque la tasa de la información de modo (M2) que tiene una cantidad de información relativamente menor aumenta y la tasa de la información de modo (M3) que tiene una cantidad de información mayor disminuye. Cuando la información de modo corresponde a la información de modo convencional (M1), es necesaria la misma cantidad de información que la de la información de modo (M2); y así, cuando la información de modo corresponde a la información de modo convencional (M1), la cantidad de información aumenta. Sin embargo, la cantidad de información del (I2) “número de modo de predicción candidato” es significativamente menor que la del (I3) “número de modo de codificación”. Como resultado, la cantidad de información reducida es mayor que la cantidad de información aumentada en un fotograma completo o en un bloque objetivo de codificación completo, lo que lleva a una reducción en la cantidad de información de modo.
De acuerdo con el procedimiento de decodificación de imágenes con la configuración anterior, el número de modos de intrapredicción candidatos a derivar se fija en dos. Como resultado, cuando se usa un modo de intrapredicción candidato, no es necesario llevar a cabo un proceso para determinar el número de modos de intrapredicción candidatos.
Aquí, el proceso para derivar los números de modo de intrapredicción de las PU a las que se hará referencia y el proceso para obtener el modo de intrapredicción usado para un bloque objetivo de decodificación se pueden llevar a cabo en paralelo para aumentar la velocidad de procesamiento. Convencionalmente, cuando el (I1) “indicador de uso del modo de predicción” indica el uso del modo de intrapredicción candidato, es necesario obtener un resultado del proceso para derivar los números de modo de intrapredicción de las PU a las que se hará referencia a fin de determinar si una secuencia de codificación incluye o no un índice. Como resultado, el proceso para obtener el modo de intrapredicción usado para un bloque objetivo de decodificación no se puede llevar a cabo hasta que se obtenga el resultado, lo que resulta en un aumento insuficiente de la velocidad de procesamiento.
Por otro lado, de acuerdo con el procedimiento de decodificación de imágenes con la configuración anterior, se genera constantemente el número fijo de dos de los modos de predicción candidatos. Como resultado, el proceso para determinar el número de modos de intrapredicción candidatos no es necesario, lo cual permite la decodificación de parámetros en el lado de decodificación independientemente del número de modos de predicción (el número de candidatos). Como resultado, es posible llevar a cabo el proceso para obtener el modo de intrapredicción usado para el bloque objetivo de decodificación sin esperar el resultado del proceso para derivar los números de modo de intrapredicción de las PU a las que se hará referencia. Permite un aumento de la velocidad de procesamiento de un aparato que ejecuta el procedimiento de decodificación de imágenes.
Por ejemplo, puede ser que la derivación incluya: la derivación de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación a partir de un modo de intrapredicción usado para la intrapredicción para cada uno de los bloques adyacentes que son adyacentes al bloque objetivo de decodificación; la determinación de si el número de los primeros candidatos derivados es menor que 2; y la derivación además de un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación, cuando se determina que el número de los primeros candidatos derivados es menor que 2.
Por ejemplo, también puede ser que durante la derivación de un primer candidato, el número de bloques adyacentes para los cuales se obtiene el modo de intrapredicción usado para la intrapredicción sea igual a dos.
Por ejemplo, también puede ser que durante la derivación de un segundo candidato, se derive como segundo candidato un modo de intrapredicción diferente del modo de intrapredicción usado para la intrapredicción para cada uno de los bloques adyacentes que son adyacentes al bloque objetivo de decodificación.
Por ejemplo, también puede ser que durante la derivación de un segundo candidato, al menos uno de (i) un modo de intrapredicción que indica predicción mediante el uso de un valor medio de valores de píxeles del bloque objetivo de decodificación, (ii) un modo de intrapredicción que indica predicción plana, y (iii) un modo de intrapredicción que indica predicción vertical, se deriva como segundo candidato.
Por ejemplo, también puede ser que la secuencia codificada incluya un indicador que indique si se usa uno de los candidatos para el modo de predicción real, cuando el indicador indica que se usa uno de los candidatos para el modo de predicción real, (i) en la obtención, se obtiene el índice, y (ii) en la determinación, uno de los candidatos derivados se determina como el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación, y cuando el indicador indica que uno de los candidatos para el modo de intrapredicción no se usa, (i) en la obtención, se obtiene un número de modo a partir de la secuencia codificada, el número de modo indica el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación, y (ii) en la determinación, el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación se determina en base al número de modo obtenido y, cuando el indicador indica que se usa uno de los candidatos para el modo de predicción real, se ejecuta el procedimiento de decodificación de imágenes de acuerdo con la reivindicación 1.
Por ejemplo, también puede ser que en la derivación, (i) cuando existe un bloque adyacente que es adyacente al bloque objetivo de decodificación, se derive un modo de intrapredicción distinto del modo de intrapredicción usado para la intrapredicción para el bloque adyacente como los candidatos para el modo de intrapredicción, y (ii) cuando el bloque adyacente que es adyacente al bloque objetivo de decodificación no existe, los candidatos para el modo de intrapredicción se derivan en base a una condición predeterminada.
Por ejemplo, también puede ser que en la derivación se genere además un listado de candidatos mediante el uso de los candidatos para el modo de intrapredicción, y el índice sea un número para identificar uno de los candidatos para el modo de intrapredicción incluido en el listado de candidatos.
A fin de resolver el inconveniente anterior, un procedimiento de codificación de imágenes de acuerdo con una realización ejemplar de la presente invención es un procedimiento de codificación de imágenes para generar una secuencia codificada por medio de la codificación de imágenes.
Por ejemplo, también puede ser que en la determinación, un candidato que coincide con el modo de intrapredicción usado para la intrapredicción para el bloque objetivo de codificación se determine como uno de los candidatos derivados para el modo de intrapredicción, el candidato está incluido en los candidatos derivados para el modo de intrapredicción.
Una parte o todos los elementos constituyentes que constituyen un aparato de codificación de imágenes ejemplar y un aparato de decodificación de imágenes ejemplar para implementar la presente invención se pueden configurar desde un único sistema LSI (Integración a Gran Escala). El sistema LSI es un LSI supermultifunción fabricado por medio de la integración de unidades constituidas en un chip, y es concretamente un sistema informático configurado por medio de la inclusión de un microprocesador, una ROM, una RAM (Memoria de Acceso Aleatorio), etc.
A continuación, se describen ciertas realizaciones ejemplares de la presente invención con referencia a los dibujos adjuntos. Cada una de las realizaciones ejemplares descritas a continuación muestra un ejemplo específico deseable.
Los elementos estructurales, la disposición y conexión de los elementos estructurales, las etapas, el orden de procesamiento de las etapas, etc. mostrados en las siguientes realizaciones ejemplares son meros ejemplos y, por lo tanto, no limitan la presente invención. Por lo tanto, entre los elementos estructurales en las siguientes realizaciones, los elementos estructurales no mencionados en cualquiera de las reivindicaciones independientes que definen la parte más genérica de la presente invención se describen como elementos estructurales arbitrarios.
(Realización 1)
Con referencia a la FIG. 1 a la FIG. 6B, se dan descripciones de un procedimiento de codificación de imágenes y de un aparato de codificación de imágenes que ejecuta el procedimiento de codificación de imágenes de acuerdo con la Realización 1.
El aparato de codificación de imágenes tiene una función para generar, para cada PU, información de forma que indica el modo de intrapredicción usado para la intrapredicción. En la Realización 1, el número de modos de intrapredicción candidatos se fija de antemano en dos (el número fijo que son dos o más modos de intrapredicción candidatos se deriva constantemente).
[1-1. Configuración del aparato de codificación de imágenes]
Con referencia a la FIG. 1, se proporciona una descripción de una configuración de un aparato de codificación de imágenes de acuerdo con la Realización 1. La FIG. 1 es un diagrama de bloques que ilustra una configuración de un aparato de codificación de imágenes 100.
El aparato de codificación de imágenes 100 recibe una entrada de una señal de imagen, codifica la señal de imagen y envía, a un aparato de decodificación de imágenes (no mostrado en la FIG. 1), una secuencia de bits (bitStr) que se emite desde una unidad de codificación de longitud variable 120 que se describirá más adelante.
Como se muestra en la FIG. 1, el aparato de codificación de imágenes 100, por ejemplo, incluye: una unidad de sustracción 101 que genera una imagen sustraída entre una imagen indicada por una señal de imagen y una imagen de predicción; una unidad de transformación 102 que lleva a cabo, por ejemplo, una transformación de coseno discreta (DCT) en la imagen sustraída; una unidad de cuantificación 103 que cuantifica la imagen sustraída que se sometió a DCT; una unidad de cuantificación inversa 104 que lleva a cabo una cuantificación inversa; una unidad de transformación inversa 105 que lleva a cabo, por ejemplo, DCT inversa; una unidad de adición 106 que suma una imagen de predicción previa y una imagen sustraída reconstruida por la unidad de transformación inversa 105 para generar una imagen anterior; una unidad de interpredicción 107 que genera una imagen de predicción por medio de predicción interfotograma; una unidad de intrapredicción 108 que genera una imagen de predicción por medio de intrapredicción; una unidad de conmutación 109 que genera selectivamente la imagen de predicción desde la unidad de interpredicción 107 y la imagen de predicción desde la unidad de intrapredicción 108; una unidad de control de codificación 100 que controla cada función del aparato de codificación de imágenes 100; y una unidad de codificación de longitud variable 120 que lleva a cabo codificación de longitud variable en los datos de la unidad de cuantificación 103.
La unidad de control de codificación 110 contiene un “número de modo objetivo” y un “procedimiento de codificación de longitud variable” que se debe aplicar a un bloque objetivo de codificación (PU o un bloque incluido en la PU, y esto se aplica en adelante en la presente memoria) determinado de acuerdo con un predeterminado estándar de evaluación. El estándar de evaluación se establece, por ejemplo, para reducir el número de bits de cadenas de código que se generan bajo la condición de lograr una exactitud de predicción predeterminada.
De acuerdo con el “número de modo objetivo” especificado por la unidad de control de codificación 110, la unidad de intrapredicción 108 predice el valor de píxel de un bloque objetivo de codificación actual mediante el uso de un píxel de predicción situado en una dirección especificada por el modo de intrapredicción indicado por el número de modo objetivo. Además, la unidad de intrapredicción 108 codifica el “número de modo objetivo” para generar el “número de modo de codificación”.
La unidad de codificación de longitud variable 120 lleva a cabo la codificación entrópica tal como la codificación aritmética del “número de modo de codificación” generado por la unidad de intrapredicción 108, de acuerdo con el “procedimiento de codificación de longitud variable” especificado por la unidad de control de codificación 110 para generar una secuencia de bits (bitStr).
[1-2. Procedimiento del Procedimiento de Codificación de Imágenes]
Con referencia a la FIG. 2, se proporciona una descripción de un procedimiento de codificación de imágenes de acuerdo con la Realización 1. La FIG. 2 es un diagrama de flujo de un procedimiento de generación de información de modo ejecutado por el aparato de codificación de imágenes mostrado en la FIG. 1.
La unidad de control de codificación 110 obtiene primero el “número de modo objetivo” del bloque objetivo de codificación para el cual se genera información de modo (Etapa S201).
La unidad de control de codificación 110 obtiene entonces modos de intrapredicción candidatos para el bloque objetivo de codificación para obtener una “matriz de modo de predicción” (candModeList) (Etapa S203). En la Realización 1, el número de modos de intrapredicción candidatos se fija en dos; y por lo tanto, el número de elementos incluidos en la matriz de modo de predicción es dos.
La matriz de modo de predicción es una matriz en la que cada elemento tiene un valor de índice (comenzando con 0) que es el “número de modo de predicción candidato” que se describirá más adelante. Los detalles del procedimiento para la obtención de los modos de intrapredicción candidatos en esta etapa se describirán más adelante con referencia a la FIG. 4.
A continuación, se determina si el número de modo objetivo coincide o no con el valor de cualquiera de los elementos de la matriz de modo de predicción (Etapa S205).
(Caso en el que el número de modo objetivo coincide con el valor de cualquiera de los elementos de la matriz de modo de predicción)
Cuando la determinación en la Etapa S205 muestra que “el número de modo objetivo coincide con el valor de cualquiera de los elementos de la matriz de modo de predicción” (SÍ en la Etapa S205), la unidad de control de codificación 110 determina que el valor del indicador de uso del modo de predicción es “1” (Etapa S207).
La unidad de control de codificación 110 lleva a cabo codificación de longitud variable (Etapa S209) en los números de modo de predicción candidatos (valores de índice de la matriz de modo de predicción) de acuerdo con un esquema especificado, a fin de identificar el modo de predicción usado entre los modos de intrapredicción candidatos obtenidos en la Etapa S203.
(Caso en el que el número de modo objetivo no coincide con el valor de ninguno de los elementos de la matriz de modo de predicción)
Cuando la determinación en la Etapa S205 muestra que “el número de modo objetivo no coincide con el valor de cualquiera de los elementos de la matriz de modo de predicción” (NO en la Etapa S205), la unidad de control de codificación 110 determina que el “indicador de uso del modo de predicción” es 0 (Etapa S213).
La unidad de control de codificación 110 genera entonces, en base al número de modo objetivo y el número de modos de intrapredicción candidatos, un “número de modo de codificación” (el valor de rem_intra_luma_pred_mode”) (Etapa S215). En esta etapa, se generan diferentes números de modo de codificación en base al número de modo objetivo y de acuerdo con el número de modos de intrapredicción candidatos, incluso en el caso del mismo número de modo objetivo. La Etapa (S215) se describirá más adelante con referencia a la FIG. 3.
Por último, la unidad de control de codificación 110 codifica el número de modo de codificación de acuerdo con el procedimiento de codificación de longitud variable especificado (Etapa S217). La Etapa (S217) se describirá más adelante con referencia a la FIG. 5 (esquema CABAC) y la FIG. 8 (esquema CAVLC).
[1-2-1. Ejemplo de Generación del Número de modo de codificación]
Se proporciona una descripción de un ejemplo de la Etapa S215 para generar el número de modo de codificación. La FIG. 3 es un diagrama de flujo de un ejemplo de la Etapa S215 para generar el número de modo de codificación. El número de modo de codificación se puede generar por medio de otros procedimientos.
En primer lugar, la unidad de control de codificación 110 obtiene el número total de modos de intrapredicción (el número de tipos de modos de intrapredicción, que es 34 en la Realización 1) y el número de modos de intrapredicción candidatos (Etapa S301). En la Realización 1, como se describió anteriormente, el número de modos de intrapredicción candidatos es un número fijo que es dos.
La unidad de control de codificación 110 repite el bucle especificado como la Etapa S302 a la Etapa S307 el número de veces especificado por el número de modos de intrapredicción candidatos. En la Realización 1, el número de modos de intrapredicción candidatos es 2; y por lo tanto, la Etapa S303 (y la Etapa S305 dependiendo de la determinación en la Etapa S303) se ejecuta dos veces cuando los valores de los índices (i) son 1 y 0. Cuando el número de modos de predicción candidatos es N, la Etapa S303 (y la Etapa S305 dependiendo de la determinación en la Etapa S303) se ejecuta N veces.
En la Etapa S302, i se establece en 0.
En la Etapa S303, se lleva a cabo una determinación sobre si el valor del número de modo objetivo en un punto de tiempo actual es mayor que el valor del elemento especificado por el índice (i) en la matriz de modo de predicción. Cuando la determinación muestra que el valor del número de modo objetivo en el punto de tiempo actual es mayor que el valor del elemento especificado, el valor del número de modo objetivo en el punto de tiempo actual se reduce en 1 (Etapa S305).
Esto se repite el número de veces especificado por el valor del número de modos de intrapredicción candidatos, y finalmente se determina que el número de modo objetivo actual que refleja el resultado de la disminución o similar en la Etapa S305 es el “número de modo de codificación” (Etapa S309).
El procesamiento de la Etapa S215 equivale, por ejemplo, a determinar, en asociación con el “número de modo de codificación”, el valor del “número de modo objetivo” que toma cualquiera de los treinta y cuatro valores totales de 0 a 33.
La Tabla 1 muestra las asociaciones entre (a) números de modo objetivo y (b) “números de modo de codificación” en el caso en que el “número de modos de predicción candidatos” sea dos (en el que hay índices 0 y 1). En la Tabla 1, (c) indica el proceso de la Etapa S305 (un valor cambiado del número de modo objetivo actual) cuando i = 0, y (d) indica ese proceso de la Etapa S305 (un valor cambiado del número de modo objetivo actual) cuando i = 1. En la Tabla 1, candModeList[0] indica el primer elemento de la matriz de modo de predicción y candModeList[1] indica el segundo elemento de la matriz de modo de predicción.
[Tabla 1]
A partir de la Tabla 1, el número de modo de codificación se puede derivar como se describe a continuación de acuerdo con el valor del número de modo objetivo.
(1) El número de modo objetivo coincide con el número de modo de codificación cuando 0 < número de modo objetivo < el valor del primer elemento de la matriz de modo de predicción (0 < número de modo objetivo < candModeList[0]) se cumple.
(2) El número de modo de codificación es un número menor que el número de modo objetivo en 1 cuando el valor del primer elemento de la matriz de modo de predicción < número de modo objetivo < el valor del segundo elemento de la matriz de modo de predicción (candModeList[0] < número de modo objetivo < candModeList[1]) se cumple. (3) El número de modo de codificación es un número menor que el número de modo objetivo en 2 cuando se satisface el valor del segundo elemento de la matriz de modo de predicción < número de modo objetivo (candModeList[1] < número de modo objetivo).
En otras palabras, cuando la matriz de modo de predicción se compone de un k número de elementos (cuando hay un k número de modos de intrapredicción candidatos), es posible ordenar los elementos de acuerdo con los valores en la matriz de modo de predicción, comparar el modo objetivo número con cada uno de los elementos dispuestos en la matriz de modo de predicción para determinar la posición del elemento en el que el número de modo objetivo es mayor que el valor en la matriz de modo de predicción.
(k) El número de modo de codificación es menor que el número de modo objetivo en k -1 cuando el valor del (k -1 )-ésimo elemento de la matriz de modo de predicción < número de modo objetivo < el valor del k-ésimo elemento (cuando candModeList[K-1] < número de modo objetivo < candModeList[k]) se cumple.
[1-2-2. Procedimiento de Generación de Matriz de modo de predicción]
Con referencia a la FIG. 4, se proporciona una descripción de un procedimiento para determinar una “matriz de modo de predicción” (candModeList). La FIG. 4 es un diagrama de flujo de un detalle de la etapa de obtención de la matriz de modo de predicción (Etapa S203) mostrado en la FIG. 2. Aquí se proporciona una descripción del caso en el que la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación se determina cuando el número de modos de intrapredicción candidatos se fija en dos.
En la Realización 1, los números de modo objetivo de bloques adyacentes que ya se han codificado se usan como elementos de la “matriz de modo de predicción” (candModeList). En el caso en el que el número de números de modo objetivo de bloques adyacentes que ya se han codificado es menor que el número de elementos de la matriz de modo de predicción, como en el caso en el que los números de modo objetivo de bloques adyacentes coinciden entre sí (se supone que el número de modo objetivo coincidente es un modo de intrapredicción candidato), los modos de intrapredicción candidatos se determinan a partir de modos de intrapredicción distintos de los números de modo objetivo de bloques adyacentes, tales como el modo de predicción DC, la predicción plana (intraplanar), y predicción vertical (intraangular).
La unidad de control de codificación 110 establece el número de modo objetivo del bloque ya codificado a la izquierda del bloque objetivo de codificación en intraPredModeLeft (Etapa S401).
Más específicamente, por ejemplo, cuando el bloque adyacente izquierdo se codifica mediante el uso de intrapredicción, el número de modo objetivo usado en la codificación (decodificación) se establece en intraPredModeLeft. Cuando el bloque adyacente izquierdo se codifica mediante el uso de un procedimiento de codificación distinto de la intrapredicción (por ejemplo, codificación interfotograma), el número de modo de intrapredicción (por ejemplo, “2”) indica el modo de predicción DC (indicado como predicción DC en la FIG. 4) está configurado en intraPredModeLeft. Cuando se determina que el bloque adyacente izquierdo no existe (por ejemplo, en el caso de un límite de corte o un borde de imagen), No Disponible se establece en intraPredModeLeft.
De manera similar, la unidad de control de codificación 110 establece el número de modo objetivo del bloque ya codificado encima del bloque objetivo de codificación en intraPredModeAbove (Etapa S402). El procedimiento para establecer intraPredModeAbove es el mismo que el procesamiento llevado a cabo en el bloque adyacente izquierdo (Etapa S401) distinto de la posición del bloque.
Después de establecer intraPredModeLeft e intraPredModeAbove, la unidad de control de codificación 110 determina si los números de modo objetivo de los bloques adyacentes izquierdo y superior son inexistentes (si tanto intraPredModeLeft como intraPredModeAbove indican No Disponible) (Etapa S403).
Aquí, en el caso de SÍ en la Etapa S403 (en la que los bloques adyacentes izquierdo y superior son inexistentes), la unidad de control de codificación 110 establece un número de modo de intrapredicción “0” en el listado 0 (candModeList[0]) que es el primer elemento de la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación y establece un número de modo de intrapredicción que indica que el modo de predicción DC (por ejemplo, “2”) se establece en el listado 1 (candModeList[1]) que es el segundo elemento de la “matriz de modo de predicción” (Etapa S404).
En el caso de NO en la Etapa S403, la unidad de control de codificación 110 determina si uno de intraPredModeLeft e intraPredModeAbove es inexistente, o si intraPredModeLeft e intraPredModeAbove coinciden o no entre sí (Etapa S405).
En el caso de No en la Etapa S405 (cuando los números de modo objetivo de los bloques adyacentes izquierdo y superior existen pero no coinciden entre sí), la unidad de control de codificación 110 establece el listado 0 (candModeList[0]) de la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación, el número de modo objetivo que es el menor entre el número de modo objetivo del bloque adyacente izquierdo y el número de modo objetivo del bloque adyacente anterior. La unidad de control de codificación 110 además establece, en el listado 1 (candModeList[1]), el número de modo objetivo que es el mayor entre el número de modo objetivo del bloque adyacente izquierdo y el número de modo objetivo del bloque adyacente anterior (Etapa S406).
En el caso de SÍ en la Etapa S405 (en la que sólo existe uno de los números de modo objetivo de los bloques adyacentes izquierdo y superior, o en la que los números de modo objetivo de los bloques adyacentes izquierdo y superior coinciden entre sí), la unidad de control de codificación 110 determina si el número de modo objetivo coincidente o el número de modo objetivo que existe (en adelante en la presente memoria, se denomina como el “número de modo adyacente”) es un número de modo de intrapredicción (por ejemplo, “2”) que indica el modo de predicción DC (Etapa S407).
En el caso de Sí en la Etapa S407 (en la que el número de modo adyacente es un número de modo de intrapredicción que indica el modo de predicción DC), la unidad de control de codificación 110 establece el listado 0 (candModeList[0]) en la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación, el número de modo de intrapredicción que es el menor del número de modo adyacente (el número de modo objetivo coincidente o el número de modo objetivo que existe) y el número de modo de intrapredicción que indica el modo de predicción DC. La unidad de control de codificación 110 además establece, en el listado 1 (candModeList[1]), el número de modo de intrapredicción que es el mayor entre el número de modo adyacente (el número de modo objetivo coincidente o el número de modo objetivo que existe) y el número de modo de intrapredicción que indica el modo de predicción DC (Etapa S408).
En el caso de NO en la Etapa S407 (en la que el número de modo adyacente no es el número de modo de intrapredicción (por ejemplo, “2”) que indica el modo de predicción DC), la unidad de control de codificación 110 determina si el número de modo adyacente es o no “0” (Etapa S409).
En el caso de NO en la Etapa S409 (en la que el número de modo adyacente no es “0”), la unidad de control de codificación 110 establece un número de modo de intrapredicción “0” en el listado 0 (candModeList[0]), y establece el número de modo adyacente al listado 1 (candMod-eList[1]), en la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación (Etapa S410).
En el caso de SÍ en la Etapa S409 (en la que el número de modo adyacente es “0”), la unidad de control de codificación 110 establece el número de modo adyacente “0” en el listado 0 (candModeList[0]), y establece un número de modo de intrapredicción “ 1” al listado 1 (candMod-eList[1]), en la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación (Etapa S411).
En las Etapas S408 a S411, el número de modo de predicción DC y los números de modo de intrapredicción“0”y “1” se asignan preferentemente a cada elemento de la matriz de modo de predicción. Como resultado, como se muestra en la Tabla 1 anterior, los números de modo de codificación se pueden hacer más pequeños, lo que lleva a un aumento en la eficiencia de codificación.
El orden preferencial aquí (número de modo de predicción DC, números de modo de intrapredicción “0” y “1”) es simplemente un ejemplo. Al priorizar el número de modo de intrapredicción más pequeño, es posible aumentar la eficiencia de codificación incluso cuando se reduce la prioridad del modo de predicción DC.
[1-2-3. Codificación del Número de modo de codificación]
Con referencia a la FIG. 5, se proporciona una descripción de un ejemplo de la Etapa S217 para codificar el número de modo de codificación. La codificación en el ejemplo se lleva a cabo de acuerdo con una codificación de longitud variable especificada y el esquema CABAC. La FIG. 5 es un diagrama de flujo de un procedimiento de codificación de acuerdo con el esquema CABAC.
La unidad de control de codificación 110 obtiene un número de modo de codificación, por ejemplo, de acuerdo con el procedimiento mostrado en la FIG. 3 (Etapa S701 y Etapa S215), y lleva a cabo el proceso de binarización en el número de modo de codificación obtenido de acuerdo con un procedimiento de binarización correspondiente al número total de modos de intrapredicción (el número máximo de modos) (Etapa S702). Esto significa que, por ejemplo, en el caso en el que el número máximo de modos varía dependiendo de la unidad de codificación del modo de intrapredicción (por ejemplo, 17 modos cuando la unidad de codificación es de tamaño 4 x 4 y 34 cuando la unidad de codificación tiene un tamaño de 8 x 8 o mayor), el procesamiento de binarización se lleva a cabo correspondiente al tamaño.
La unidad de control de codificación 110 lleva a cabo codificación aritmética binaria en la señal en la que se binariza el número de modo de codificación (Etapa S703). Esto permite que el número de modo de codificación se registre en la secuencia.
Con referencia a la FIG. 6A y la FIG. 6B, se dan descripciones de ejemplos de sintaxis que muestran una estructura de datos específica. La FIG. 6A es un diagrama conceptual que ilustra un ejemplo de una estructura de sintaxis, extraída de NPL 1, que indica una estructura de datos que almacena números de modo objetivo. La FIG. 6B es un diagrama conceptual que ilustra un ejemplo de una estructura de sintaxis de acuerdo con la Realización 1.
Se supone que las porciones que no se mencionan particularmente aquí funcionan como se menciona en NPL 1. En la estructura de sintaxis convencional, primero se codifica un indicador de uso del modo de predicción (prev_intra_luma_pred_flag).
Cuando el indicador de uso del modo de predicción indica 1, se determina si el número de modos de intrapredicción candidatos (NumMPMCand) es mayor que uno (901). Cuando el número de modos de intrapredicción candidatos (NumMPMCand) es mayor que uno (dos o más), se codifica el número del modo de predicción candidato (mpm_idx).
Cuando el indicador de uso del modo de predicción indica 0, se codifica el número de modo de codificación (rem_intra_luma_pred_mode).
En la configuración de acuerdo con la presente invención, el número de modos de intrapredicción candidatos se fija en al menos dos o más; y por lo tanto, la expresión condicional 901 “if(NumMPMCand>1)” en la FIG. 6A es innecesario, lo que da como resultado que la secuencia de bits tenga la estructura de sintaxis mostrada en la FIG. 6B. En otras palabras, cuando el indicador de uso del modo de predicción es 1, el número del modo de predicción candidato (mpm_idx) siempre está codificado. Esto da como resultado una ramificación menos condicional, lo que permite la generación de una secuencia de bits que se puede decodificar con una cantidad de procesamiento reducida. Aunque no se muestra en los dibujos, convencionalmente, después de la Etapa S207 en la FIG. 2, el proceso se lleva a cabo para determinar si el número de modo objetivo del bloque adyacente izquierdo coincide o no con el número de modo objetivo del bloque adyacente anterior. Cuando los números del modo objetivo coinciden entre sí, se lleva a cabo la Etapa S209.
(Variación de la Realización 1)
(Variación 1: Variación del Procedimiento de Determinación del Modo de Predicción)
La siguiente variación es útil para comprender la invención pero no una realización de la invención.
El procedimiento para determinar la matriz de modo de predicción descrita con referencia a la FIG. 4 se puede variar de la siguiente manera.
En la Variación 1, además de los números de modo objetivo usados para los bloques adyacentes, se selecciona como número de modo más frecuente un número de modo de intrapredicción que tiene la mayor probabilidad de aparición para un bloque objetivo de codificación. Luego, el número de modo más frecuente se reemplaza con uno de los “modo de predicción DC 2”, “número de modo 0” y “número de modo 1” mostrados en la FIG. 4.
Para seleccionar el número de modo más frecuente, por ejemplo, el número de modo de intrapredicción que tiene la longitud de código mínima se puede seleccionar de acuerdo con el estado de contexto usado en la codificación aritmética en la Etapa S703 de la FIG. 5. Además, por ejemplo, el número de modo de intrapredicción asignado a la longitud mínima de bits de acuerdo con la tabla de longitud variable usada en las etapas S502 y S503 de la FIG 8 que se describirá más adelante, se puede determinar como el número de modo más frecuente. También puede ser que el número de modo más frecuente se seleccione de acuerdo con un procedimiento totalmente diferente (por ejemplo, derivando estadísticamente el número de modo más frecuente a partir de historiales de números de modo adyacentes y números de modo objetivo acumulativos). Los dos primeros procedimientos pueden aumentar la eficiencia de la codificación sin aumentar la cantidad de procesamiento al compartir las etapas existentes. Se espera que el último procedimiento aumente significativamente la eficiencia de la codificación, aunque la cantidad de procesamiento aumenta ligeramente.
Con referencia a la FIG. 7, se proporciona una descripción de un procedimiento para determinar una matriz de modo de predicción mediante el uso del número de modo más frecuente. La FIG. 7 es un diagrama de flujo de un ejemplo de la etapa para determinar la matriz de modo de predicción (Etapa S203). El procedimiento mostrado en el diagrama de flujo de la FIG. 7 es una variación del procedimiento mostrado en el diagrama de flujo de la FIG. 4. Las etapas (Etapas S401 a S403 y S405 a S408) en la FIG. 7 son los mismos que los de la FIG. 4, distintos de la Etapa<s>404 (Etapa S804), la Etapa S409 (Etapa S809), la Etapa S410 (Etapa S810) y la Etapa S411 (Etapa S811). Por lo tanto, las descripciones de las etapas duplicadas se pueden omitir apropiadamente.
Aquí, se proporciona una descripción del caso en el que la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación se determina cuando el número de modos de intrapredicción candidatos se fija en dos.
La unidad de control de codificación 110 establece, en intraPredModeLeft, el número de modo objetivo del bloque ya codificado a la izquierda del bloque objetivo de codificación (Etapa S401), y establece, en intraPredModeAbove, el número de modo objetivo del bloque ya codificado encima del bloque objetivo de codificación (Etapa S402).
Después de establecer intraPredModeLeft e intraPredModeAbove, la unidad de control de codificación 110 determina si los números de modo objetivo de los bloques adyacentes izquierdo y superior son inexistentes (si tanto intraPredModeLeft como intraPredMode-Above indican No Disponible) (Etapa S403).
En el caso de SÍ en la Etapa S403 (en la que los bloques adyacentes izquierdo y superior son inexistentes), la unidad de control de codificación 110 establece el listado 0 (candModeList[0]) en la “matriz de modo de predicción” de la codificación. bloque objetivo, el número de modo de intrapredicción que es el menor entre el número de modo más frecuente y el número de modo de intrapredicción que indica el modo de predicción DC (por ejemplo, “2”). La unidad de control de codificación 110 además establece, en el listado 1 (candModeList[1]), el número de modo de intrapredicción que es el mayor entre el número de modo más frecuente y el número de modo de intrapredicción que indica el modo de predicción DC (por ejemplo, “2” ) (Etapa S804).
En el caso de NO en la Etapa S403, la unidad de control de codificación 110 determina si uno de intraPredModeLeft e intraPredModeAbove es inexistente, o si intraPredModeLeft e intraPredModeAbove coinciden o no entre sí (Etapa S405).
En el caso de NO en la Etapa S405 (en la que los números de modo objetivo de los bloques adyacentes izquierdo y superior existen pero no coinciden entre sí), la unidad de control de codificación 110 establece el listado 0 (candModeList[0]) de la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación, el número de modo objetivo, que es el menor entre el número de modo objetivo del bloque adyacente izquierdo y el número de modo objetivo del bloque adyacente anterior. La unidad de control de codificación 110 además establece, en el listado 1 (candModeList[1]), el número de modo objetivo que es el mayor entre el número de modo objetivo del bloque adyacente izquierdo y el número de modo objetivo del bloque adyacente anterior (Etapa S406).
En el caso de SÍ en la Etapa S405 (en la que sólo existe uno de los números de modo objetivo de los bloques adyacentes izquierdo y superior, o en los que los números de modo objetivo de los bloques adyacentes izquierdo y superior coinciden entre sí), la unidad de control de codificación 110 determina si el número de modo objetivo coincidente o el número de modo objetivo que existe (número de modo adyacente) es un número de modo de intrapredicción (por ejemplo, “2”) que indica el modo de predicción DC (Etapa S407).
En el caso de Sí en S407 (en la que el número de modo adyacente es un número de modo de intrapredicción que indica el modo de predicción DC), la unidad de control de codificación 110 establece el listado 0 (candModeList[0]) en la “matriz de modo de predicción” (candModeList) del bloque objetivo de codificación, el número de modo de intrapredicción que es el menor del número de modo adyacente (el número de modo objetivo coincidente o el número de modo objetivo que existe) y el número de modo de intrapredicción que indica el modo de predicción DC. La unidad de control de codificación 110 además establece, en el listado 1 (candModeList[1]), el número de modo de intrapredicción que es el mayor entre el número de modo adyacente (el número de modo objetivo coincidente o el número de modo objetivo que existe) y el número de modo de intrapredicción que indica el modo de predicción DC (Etapa S408).
En el caso de NO en la Etapa S407 (en la que el número de modo adyacente no es el número de modo de intrapredicción (por ejemplo, “2”) que indica el modo de predicción DC), la unidad de control de codificación 110 determina si el número de modo adyacente es el número de modo más frecuente o no (Etapa S809).
En el caso de NO en la Etapa S809 (en la que el número de modo adyacente no es el número de modo más frecuente), la unidad de control de codificación 110 establece, en el listado 0 (candModeList[0]), el número de modo de intrapredicción que es el menor del número de modo más frecuente y el número de modo adyacente, y establece, en el listado 1 (candModeList[1]), el número de modo de intrapredicción que es el mayor entre el número de modo más frecuente y el número de modo adyacente, en la “matriz de modo de predicción” del bloque objetivo de codificación (Etapa S810).
En el caso de SÍ en la Etapa S809 (en la que el número de modo adyacente es el número de modo más frecuente), la unidad de control de codificación 110 establece, en el listado 0 (candModeList[0]), el número de modo de intrapredicción que es el menor de los número de modo adyacente (= número de modo más frecuente) y el número de modo de intrapredicción que indica el modo de predicción DC, y establece, en el listado 1 (candModeList[1]), el número de modo de intrapredicción que es el más grande del número de modo adyacente (= número de modo más frecuente) y el número de modo de intrapredicción que indica el modo de predicción DC, en la “matriz de modo de predicción” del bloque objetivo de codificación (Etapa S811).
En las etapas S809 a S811, como se describió anteriormente, el número de modo más frecuente y el número de modo de predicción DC se asignan preferentemente a elementos respectivos de la matriz de modo de predicción. Como resultado, es posible aumentar la proporción de coincidencia con el modo de intrapredicción. Además, como se muestra en la Tabla 1, los números de modo de codificación se pueden reducir, lo que conduce a un aumento en la eficiencia de la codificación.
El orden preferencial aquí (el orden preferencial del número de modo de predicción DC, el número de modo más frecuente y el número de modo de intrapredicción “0”) es meramente un ejemplo y se puede cambiar en base a la información estadística. El número de modo de intrapredicción “0” indica, por ejemplo, predicción plana (intraplanar) y predicción vertical (intraangular).
(Variación 2: Variación de Codificación del Número de modo de codificación)
La codificación de los números de modo de codificación se puede llevar a cabo no sólo de acuerdo con el esquema CABAC, sino también de acuerdo con un esquema CAVLC. A continuación, se describirá el procedimiento de codificación de acuerdo con el esquema CAVLC con referencia a la FIG. 8, la FIG. 9A y la FIG. 9B. La FIG. 8 es un diagrama de flujo de un procedimiento de codificación de acuerdo con el esquema CAVLc . La FIG. 9A es un ejemplo de una tabla de codificación cuando el número máximo de modos (número total de modos de intrapredicción) es 17. La FIG. 9B es un ejemplo de una tabla de codificación cuando el número máximo de modos es 34.
La unidad de control de codificación 110 obtiene un número de modo de codificación (Etapa S501), por ejemplo, de acuerdo con el procedimiento mostrado en la FIG. 3, y selecciona una tabla de longitud variable (no mostrada) correspondiente al número máximo de modos (Etapa S502). Esto significa que en el caso en el que, por ejemplo, el número máximo de modos varía dependiendo del tamaño de la unidad de codificación (por ejemplo, 17 modos para el tamaño de unidad de codificación de 4 x 4 y 34 modos para el tamaño de unidad de codificación de 8 x 8 o mayor), se selecciona la tabla de longitud variable que corresponde al tamaño de la unidad de codificación.
De acuerdo con la Realización 1, es suficiente que se use un tipo de tabla de longitud variable para cada unidad de codificación; y así, se puede reducir la cantidad de memoria necesaria para un aparato de codificación.
La unidad de control de codificación 110 deriva un número de índice de codificación a partir del número de modo de codificación mediante el uso de la tabla de longitud variable seleccionada (Etapa S503). La tabla de longitud variable se actualiza por bloque, bloque grande o corte de forma que el índice de codificación disminuye a medida que aumenta la frecuencia del número de modo de codificación. Por lo tanto, el proceso de codificación de longitud variable, que se describirá más adelante, se lleva a cabo de forma que la longitud del código disminuye a medida que disminuye el número de índice de codificación.
Por último, la unidad de control de codificación 110 codifica el número de índice de codificación derivado mediante el uso de una tabla de codificación predeterminada (Etapa S504).
En el proceso de la FIG. 2, el establecimiento del indicador de uso del modo de predicción (Etapa S207) y la codificación del número de modo de codificación (Etapa 209) se llevan a cabo por separado. Sin embargo, se proporciona aquí un ejemplo de un caso en el que el número de modo de codificación se codifica por medio de la inclusión del indicador de modo de predicción en el esquema CAVLC.
En la FIG. 9A y la FIG. 9B, MPM1 indica el caso en el que el modo de predicción usa el indicador = 1 y el número del modo de predicción candidato es 0. En este caso, MPM1 tiene un código “10”. MPM2 indica el caso en el que el modo de predicción usa el indicador = 1 y el número del modo de predicción candidato es 0. En este caso, MPM 2 tiene un código “11”. Los siguientes números izquierdos del 0 al 14 (correspondiente a 15 modos obtenidos por medio de la sustracción de 2 modos de 17 modos, dado que este es el ejemplo en el que el número de modos de intrapredicción candidatos es dos), y 0 a 31 (correspondiente a 32 modos obtenidos por medio de la sustracción de 2 modos de 34 modos, como es el ejemplo en el que el número de modos de intrapredicción candidatos es dos) indican los números de modo de codificación derivados en (Etapa S503). Los códigos de la derecha indican cadenas de códigos escritas en secuencias de bits.
Este procedimiento permite codificar toda la información de modo en el mismo mecanismo, lo cual reduce la cantidad de memoria necesaria.
De la misma manera que el flujo mostrado en la FIG. 2, el indicador de uso del modo de predicción y el número de modo de codificación se pueden codificar por separado. En este caso, siendo el código para MPM1 1 y el indicador de uso del modo de predicción = 1, se puede codificar un índice de 1 bit para el número del modo de predicción.
Para la codificación de acuerdo con el esquema CAVCL, se puede hacer referencia a una tabla vlc que se comparte entre el indicador de uso del modo de predicción (prev_intra_luma_pred_flag), el número del modo de predicción candidato (mpm_idx) y el número de modo de codificación (rem_intra_luma_pred_mode).
(Realización 2)
Con referencia a la FIG. 10 a la FIG. 15, se dan descripciones de un procedimiento de decodificación de imágenes y de un aparato de decodificación de imágenes que ejecuta el procedimiento de decodificación de imágenes de acuerdo con la Realización 2.
En el procedimiento de decodificación de imágenes de acuerdo con la Realización 2, la decodificación aritmética se lleva a cabo mediante el uso de únicamente el resultado de la decodificación aritmética llevada a cabo en la secuencia de bits de un bloque objetivo de decodificación. En el proceso de decodificación aritmética, se puede reconstruir una cantidad de información de 1 bit a unos pocos bits, lo que dificulta asegurar la cantidad de memoria intermedia y llevar a cabo el procesamiento en tiempo real. Sin embargo, el procedimiento de decodificación de imágenes de acuerdo con la Realización 2 no usa información de otros bloques objetivo de decodificación, lo que da como resultado una reducción de la cantidad de memoria interna necesaria para el cálculo y una reducción del tiempo de procesamiento.
[2-1. Configuración del aparato de decodificación de imágenes]
Con referencia a la FIG. 10, se da una descripción de una configuración del aparato de decodificación de imágenes de acuerdo con la Realización 2. La FIG. 10 es un diagrama de bloques que ilustra una configuración de un aparato de decodificación de imágenes 200.
El aparato de decodificación de imágenes 200 es un aparato que recibe una entrada de una secuencia de bits (bitStr) y emite una señal de imagen. En la presente invención, se proporciona un ejemplo de un caso en el que una secuencia de bits (bitStr) a introducir se genera por medio del procedimiento de codificación de imágenes de acuerdo con la Realización 1. Para la secuencia de bits al que se aplica una cadena de código mostrada en la FIG. 9A o la FIG. 9B está escrito, siguiendo la definición de sintaxis de unidades de predicción de izquierda a derecha en la FIG. 9A o la FIG. 9B en un sentido de estructura de datos, se lleva a cabo la decodificación de longitud variable (Etapa S1117) de la parte derecha, se obtiene un “número de modo de codificación” (rem_intra_luma_pred_mode) (Etapa S1115), y se obtiene un “número de modo objetivo”.
El aparato de decodificación de imágenes 200 incluye: una unidad de decodificación de longitud variable 220, una unidad de cuantificación inversa 201, una unidad de transformación inversa 202, una unidad de adición que suma una imagen de predicción anterior y una imagen sustraída, una unidad de interpredicción 204 que genera una imagen de predicción por medio de predicción interfotograma, una unidad de intrapredicción 205 que genera una imagen de predicción por medio de intrapredicción, una unidad de conmutación 206 que genera selectivamente la imagen de predicción desde la unidad de interpredicción 204 y la imagen de predicción desde la unidad de intrapredicción 205, una unidad de control 210, etc.
La unidad de decodificación de longitud variable 220 lleva a cabo operaciones inversas a las operaciones llevadas a cabo por la unidad de codificación de longitud variable 120. En otras palabras, la unidad de decodificación de longitud variable 220 recibe una entrada de la secuencia de bits y obtiene un “número de modo de codificación”, etc. de la secuencia de bits de acuerdo con el número de candidatos para el modo de intrapredicción (NumMPM-Cand). Además, la unidad de decodificación de longitud variable 220 obtiene un “número de modo objetivo” a partir del “número de modo de codificación”.
La unidad de intrapredicción 205 lleva a cabo aproximadamente las mismas operaciones que las operaciones de la unidad de intrapredicción 108 en la FIG. 1. De acuerdo con el “número de modo objetivo” obtenido, la unidad de intrapredicción 205 predice el valor de píxel de un bloque objetivo de decodificación actual mediante el uso de un píxel de predicción situado en una dirección especificada por un modo de intrapredicción correspondiente al número de modo objetivo.
La unidad de control 210 proporciona información necesaria para obtener el número de modo objetivo a la unidad de decodificación de longitud variable 220. La información necesaria en el procedimiento de decodificación de acuerdo con la presente invención puede ser cualquier información para reproducir el “número de modo objetivo” de la salida de la secuencia de bits como resultado de la codificación de acuerdo con la Realización 1. Por ejemplo, cuando la unidad de decodificación de longitud variable 220 no contiene dicha información, se proporciona al mismo una matriz de modo de predicción (candModeList) sobre el bloque objetivo de decodificación (o un valor inicial de esta listado). Además, se proporciona un modo de decodificación de entropía (por ejemplo, una salida de cadena de bits de acuerdo con el esquema CAVLC o una salida de cadena de bits de acuerdo con el esquema CABAC) para cada unidad predeterminada asociada con el bloque objetivo de decodificación actual.
[2-2. Procedimiento del Método de Decodificación de Imágenes]
Con referencia a la FIG. 11, se da una descripción del procedimiento de decodificación de imágenes de acuerdo con la Realización 2. La FIG. 11 es un diagrama de flujo de un procedimiento de decodificación de un “número de modo objetivo” (34 modos de intrapredicción mostrados en la FIG. 15) ejecutado por el aparato de decodificación de imágenes en la FIG. 10. En la Realización 2, se proporciona una descripción de un ejemplo en el que cada etapa es ejecutada por la unidad de decodificación de longitud variable 220; sin embargo, cada etapa puede ser ejecutada por, por ejemplo, la unidad de control 210.
En primer lugar, la unidad de decodificación de longitud variable 220 extrae una porción correspondiente a la información de modo de un bloque objetivo de decodificación de la secuencia de bits (bitStr) codificado por el procedimiento de codificación de acuerdo con la Realización 1. La porción correspondiente es una cadena de bits obtenida por medio de la ejecución de codificación de entropía en uno de (1) un “indicador de uso del modo de predicción” (prev_intra_luma_pred_flag), (2) un “número de modo de predicción candidato” (mpm_idx) y (3) un “número de modo de codificación” (rem_intra_lyma_pred_mode) que están estructurados de acuerdo con una sintaxis (Sintaxis de la unidad de predicción) explicada con referencia a la FIG. 6A y 6B.
Después de obtener la cadena de bits, la unidad de decodificación de longitud variable 220 decodifica la cadena de bits de acuerdo con la sintaxis de la FIG. 6A o la FIG. 6B para obtener el “número de modo objetivo” (Etapa S1103 a la Etapa S1115).
La unidad de decodificación de longitud variable 220 primero reconstruye el valor del “ indicador de uso del modo de predicción” (prev_intra_luma_pred_flag) de acuerdo con un procedimiento de decodificación de entropía predeterminado (Etapa S1103). En adelante en la presente memoria, a menos que se explique específicamente, las siguientes descripciones, las palabras en los diagramas y los valores tienen el mismo significado que aquellos en el procedimiento de codificación de acuerdo con la Realización 1 y las descripciones sobre la sintaxis en la FIG. 6A y 6B.
La unidad de decodificación de longitud variable 220 determina si el indicador de uso del modo de predicción decodificado indica o no 1 (Etapa S1105).
En el caso de SÍ en la Etapa S1105 (en la que el valor del “indicador de uso del modo de predicción” indica 1), la unidad de decodificación de longitud variable 220 decodifica el “número de modo de predicción candidato” (mpm_idx) (Etapa S1109).
Más específicamente, la unidad de decodificación de longitud variable 220 genera una matriz de modo de predicción (candModeList) y determina, como el “número de modo objetivo”, el valor (candModeList[mpm_idx] del elemento que tiene el número de elemento (mpm_idx) en la matriz de modo de predicción (candModeList) (Etapa S1111). Para generar la matriz de modo de predicción, se puede usar el procedimiento descrito con referencia a la FIG. 4 o la FIG.
7 de acuerdo con la Realización 1. Se supone que se usa el mismo procedimiento de generación de matriz de modo de predicción entre el aparato de codificación y el aparato de decodificación.
En el caso de NO en la Etapa S1105 (en la que el valor del “indicador de uso del modo de predicción” no es 1), la unidad de decodificación de longitud variable 220 lleva a cabo la decodificación de entropía en el número de modo de codificación. Más específicamente, la unidad de decodificación de longitud variable 220 obtiene primero el número de modo de codificación de la cadena de bits de acuerdo con el número total de modos de intrapredicción (el número máximo de modos) (Etapa S1117). Este proceso de obtención es inverso al proceso de la Etapa S217 en la FIG. 2. Se llevan a cabo diferentes procesos dependiendo de si la cadena de bits correspondiente se emite de acuerdo con un (1) esquema CABAC (FIG. 5) o un (2) esquema CAVLC (FIG. 8) como esquema de codificación de entropía. El esquema de codificación de entropía se determina, por ejemplo, en base al valor indicado por un indicador de modo de codificación de entropía de una unidad predeterminada correspondiente a una unidad de predicción (PU) asociada con un bloque objetivo de decodificación. El indicador se puede identificar en una unidad de secuencia superior.
En primer lugar, se proporciona una descripción de un caso en el que la cadena de bits se emite de acuerdo con el esquema CABAC (1), con referencia a la FIG. 12A. La FIG. 12A es un diagrama de flujo del proceso de decodificación aritmética correspondiente a la Etapa S1117 en la FIG. 11.
La unidad de decodificación de longitud variable 220 lleva a cabo primero la decodificación aritmética en la secuencia de bits obtenida (Etapa S1401, inverso a la Etapa S703). La unidad de decodificación de longitud variable 220 lleva a cabo un proceso de multiplexación de valores en la información binaria obtenida por medio de la decodificación aritmética para reconstruir el número de modo de codificación (Etapa S1402).
A continuación, se proporciona una descripción de un caso en el que la cadena de bits se emite de acuerdo con el esquema CAVLC (2), con referencia a la FIG. 13. La FIG. 13 es un diagrama de flujo de un procedimiento para la obtención del “número de modo de codificación” en la Etapa S1117 cuando la cadena de bits sale de acuerdo con el esquema CAVLC.
La unidad de decodificación de longitud variable 220 obtiene primero un número de índice de codificación de la cadena de bits mediante el uso de la información (contexto) necesaria para decodificar el “número de modo de codificación” del bloque objetivo de decodificación (PU) (Etapa S1201). El proceso de decodificación corresponde al proceso inverso al proceso de codificación en la Etapa S504 en la FIG. 8. Más específicamente, una tabla de codificación de longitud variable (decodificación de longitud variable) mostrada en la FIG. 9A o la FIG. 9B se selecciona de acuerdo con el número máximo de modos (por ejemplo, 17 modos o 34 modos dependiendo de la unidad de transmisión de la información de predicción descrita en la Realización 1). A partir de cadenas de bits en la tabla de codificación de longitud variable seleccionada, se busca la cadena de bits correspondiente a la secuencia de bits de entrada (cadena de bits mostrada en el lado derecho en la FIG. 9A o la FIG. 9B), y se obtiene el número de índice de codificación (corresponde al número mostrado en el lado izquierdo de la FIG. 9A o la FIG. 9B) asociado con la cadena de bits.
La unidad de decodificación de longitud variable 220 selecciona entonces diferentes tablas de longitud variable para cada número máximo de modos de manera similar a la descrita anteriormente (la Etapa S1202 que es la misma que la Etapa S502, no mostrada), y deriva el número de modo de codificación asociado con el número de índice de codificación obtenido, mediante el uso de la tabla de longitud variable seleccionada (S1203 que es el procesamiento inverso a la Etapa S503). La tabla de longitud variable se actualiza por bloque, bloque grande, o base de corte de forma que el número de índice de codificación disminuye a medida que aumenta la frecuencia del número de modo de codificación. La actualización se lleva a cabo de acuerdo con un procedimiento predeterminado entre el aparato de codificación y el aparato de decodificación; y por lo tanto, está diseñado de forma que se use la misma tabla de longitud variable para codificar un bloque objetivo de codificación y decodificar un bloque objetivo de decodificación. El número de modo de codificación se reconstruye de acuerdo con este procesamiento.
A continuación, el número de modo objetivo se reconstruye a partir del número de modo de codificación (Etapa S1115 que es el proceso inverso a la Etapa s 215 en la FIG. 2). La FIG. 14 es un diagrama de flujo del proceso para reconstruir el número de modo objetivo a partir del número de modo de codificación.
Como se muestra en la FIG. 14, la unidad de decodificación de longitud variable 220 obtiene el “número de modo objetivo” del “número de modo de codificación” obtenido en la Etapa S1117. Las etapas respectivas en la FIG. 14 se ejecutan como etapas inversas a las etapas de obtención del “número de modo de codificación” a partir del “número de modo objetivo” de la FIG. 3.
La unidad de decodificación de longitud variable 220 obtiene primero el número de modos de intrapredicción candidatos (NumMP-MCand) (Etapa S1301). En la Realización 2, el número de modos de intrapredicción candidatos también es dos, es decir, un número fijo como en la Realización 1.
La unidad de decodificación de longitud variable 220 luego repite el bucle especificado como la Etapa S1302 a la Etapa S1307 por el número de veces especificado por el número de modos de intrapredicción candidatos (NumMPMCand). En la Realización 2, el número de modos de intrapredicción candidatos (NumMPMCand) es dos; y por lo tanto, la Etapa S1303 (y la Etapa S1305) se ejecutan dos veces en total cuando los valores de los índices son 0 y 1. Cuando el número de modos de predicción candidatos es N, la Etapa S1303 (y la Etapa S1305 dependiendo de la determinación en la Etapa S1303) se ejecuta N veces.
En la Etapa S1302, el índice candidato candIdx (corresponde al índice en la FIG. 14) se establece en 0.
En la Etapa S1303, el número de modo de codificación actual se compara con el valor del elemento especificado por el valor de un índice candidato candIdx en la matriz de modo de predicción (CandModeList) (el valor de candModeList[candIdx]). Cuando el Índice = 0, el número de modo de codificación es el número de modo de codificación en el momento de la obtención en la Etapa S1117.
En el caso de SÍ en la Etapa S1303 (en la que el número de modo de codificación > se satisface el valor de candModeList[candIdx], el número de modo de codificación se incrementa en 1 (Etapa S1305). Aquí, el número de modo de codificación se incrementa en 1 también en el caso en que el número de modo de codificación actual sea el mismo que el valor de la matriz de modo de predicción, candModeList[candIdx]. El bucle de S1302 a S1307 se repite mientras se incrementa el número de índice candidato candIdx en 1 hasta que se completa la comparación de todos los índices candidatos.
A través de este procesamiento, el número de modo de codificación se reconstruye en el número de modo objetivo de acuerdo con el número de modos de intrapredicción candidatos. Aquí, la reconstrucción del “número de modo objetivo” a partir del “número de modo de codificación” de acuerdo con el número de modos de intrapredicción candidatos equivale a llevar a cabo el proceso de la Tabla 1 desde la línea más inferior hasta la línea más superior.
Por ejemplo, cuando el número de modos de intrapredicción candidatos (el valor de NumMPMCand) es 2, las asociaciones entre los números de modo de codificación y los números de modo objetivo se muestran en la Tabla 2. Esta tabla es para explicar un caso ejemplar en el que el valor del primer elemento (que tiene un índice 0) de la matriz de modo de predicción que se supone que es “ i”, y que el valor del segundo elemento (que tiene un índice 1) de la matriz de modo de predicción es “j ”.
[Tabla 2]
De esta manera, el aparato de decodificación y el procedimiento de decodificación de acuerdo con la Realización 2 cambian, de acuerdo con los números de modos de intrapredicción candidatos (o en base al número de modos de intrapredicción candidatos), las asociaciones entre CodeNum y los “números de modo de codificación” en el esquema CAVLD y las asociaciones con los “números de modo de codificación” de las matrices binarias en el esquema CABAC (Etapa S1117). Además, las asociaciones entre los números de modo de codificación y los números de modo objetivo se cambian de acuerdo con el número de modos de intrapredicción candidatos (S1115).
Con la configuración, es posible reconstruir el “número de modo objetivo” original a partir de la secuencia de bits de acuerdo con la Realización 1 generado por medio del cambio de los esquemas para codificar el número de modo objetivo de acuerdo con el número de modos de intrapredicción candidatos, con una eficiencia de codificación aumentada.
Como se describió anteriormente, en el aparato de decodificación de imágenes y el procedimiento de decodificación de imágenes de acuerdo con la presente invención, el número de modos de intrapredicción candidatos se fija en dos o más; y por lo tanto, es posible llevar a cabo decodificación aritmética sin requerir ramificación condicional para determinar si el número de modos de intrapredicción candidatos es uno o no.
La FIG. 12B es un diagrama conceptual para ilustrar un ejemplo del flujo del proceso de decodificación aritmética llevado a cabo en el aparato de decodificación de imágenes. Como se describió anteriormente, la cantidad de información de la señal decodificada (parámetro de decodificación) para la longitud de bits que se va a obtener se determina a una tasa aritmética en la decodificación aritmética; y por lo tanto, la cantidad de información es indeterminada. Para llevar a cabo el procesamiento en tiempo real, se necesitan cálculos de alta velocidad. Como se muestra en la FIG. 12B, a menudo se puede llevar a cabo aritmética paralela en el procesamiento de decodificación. En la aritmética paralela, la etapa de decodificación de entropía S1410 en la que se lleva a cabo una decodificación aritmética en la secuencia de bits obtenida de acuerdo con un procedimiento predeterminado (CABAC o CAVLC) (Etapa S1411) y se obtiene un parámetro de decodificación (Etapa S1412) se lleva a cabo por separado de la etapa de procesamiento de decodificación (Etapa S1413) en la que se genera una imagen de predicción en función de un parámetro de decodificación para obtener una señal de imagen de decodificación. Aquí, la información de decodificación necesaria para la etapa de decodificación aritmética S1411 se obtiene a partir de la retroalimentación de la Etapa S1413.
La etapa de decodificación de entropía S1410 necesita esperar el resultado de la etapa de procesamiento de decodificación S1413, que no permite cálculos de alta velocidad. Por lo tanto, la reducción de la retroalimentación es particularmente importante para cálculos de alta velocidad.
Como se muestra en la FIG. 11, el aparato de decodificación de imágenes de acuerdo con la Realización 2 siempre llama a la etapa para decodificar el número de modo de predicción candidato (Etapa S1109) cuando el indicador de uso del modo de predicción indica 1 (la señal decodificada en la etapa de decodificación de entropía) (SÍ en la Etapa S1105); y por lo tanto, no hay necesidad de esperar a que se complete el procesamiento de decodificación (Etapa S1413).
Por otro lado, en la estructura de sintaxis convencional mostrada en la FIG. 6A, es necesario determinar el número de modos de predicción (NumMPMCand). Como se describió anteriormente, para la determinación se deben usar los números de modo objetivo de los bloques adyacentes arriba e izquierdo. Por lo tanto, es necesario esperar a que se complete la etapa de procesamiento de decodificación S1413. Por lo tanto, la configuración de acuerdo con la presente invención aumenta la velocidad de procesamiento del aparato de decodificación.
(Variación de la Realización 1 y la Realización 2)
(1) Cada una de las unidades de control de codificación 100 en la FIG. 1 y la unidad de control 210 en la FIG. 10 se muestra en relación con otras unidades de procesamiento necesarias para explicar solo entradas y salidas de información hacia y desde la unidad de control de codificación 110 o la unidad de control de codificación 210. Sin embargo, la unidad de control de codificación 110 y la unidad de control 210 pueden ingresar y emitir la información necesaria para otras unidades de procesamiento a través de líneas de señal no mostradas. La unidad de control de codificación o la unidad de control se pueden considerar como un controlador para controlar el procesamiento por cada una de las unidades de procesamiento.
(2) La codificación de 34 números de modo objetivo se ha descrito con un ejemplo de 34 modos que incluyen 33 direcciones y uno sin dirección que se muestra en la FIG. 15. Sin embargo, se pueden obtener los mismos efectos ventajosos incluso cuando el número de modos varía dependiendo de la profundidad de los niveles (L0 a L3) mostrados en la FIG. 15.
Por ejemplo, cuando el número de modos de intrapredicción candidatos es (2 elevado a n) k, el número de modo de codificación (rem_intra_luma_pred_mode) se puede expresar en n bits o n+1 bits.
Con la configuración del aparato de decodificación, la estructura de sintaxis mostrada en la FIG. 6A y la FIG. 6B se puede decodificar correctamente. Además, como se muestra en la FIG. 12B, en la decodificación aritmética, el caso en el que el número de modos de intrapredicción candidatos es uno se determina simplemente por medio de la realización del procesamiento de decodificación. Por lo tanto, no es necesario obtener números de modo objetivo adyacentes para comparar. Como resultado, se puede llevar a cabo una decodificación precisa y de alta velocidad con una cantidad de memoria más pequeña.
(Realización 3)
El procesamiento descrito en cada una de las realizaciones se puede implementar simplemente en un sistema informático independiente, por medio de la grabación, en un medio de grabación, de un programa para implementar las configuraciones del procedimiento de codificación de imágenes en movimiento (procedimiento de codificación de imágenes) y el procedimiento de decodificación de imágenes en movimiento (procedimiento de codificación de imágenes) descrito en cada una de las realizaciones. El medio de grabación puede ser cualquier medio de grabación siempre que el programa se pueda grabar, tal como un disco magnético, un disco óptico, un disco óptico magnético, una tarjeta IC y una memoria semiconductora.
A continuación, se describirán las aplicaciones del procedimiento de codificación de imágenes en movimiento (procedimiento de codificación de imágenes) y el procedimiento de decodificación de imágenes en movimiento (procedimiento de decodificación de imágenes) descritos en cada una de las realizaciones y sistemas que usan los mismos. El sistema tiene la característica de tener un aparato de codificación y decodificación de imágenes que incluye un aparato de codificación de imágenes que usa el procedimiento de codificación de imágenes y un aparato de decodificación de imágenes que usa el procedimiento de decodificación de imágenes. Otras configuraciones en el sistema se pueden cambiar de acuerdo con lo que corresponda dependiendo de los casos.
La FIG. 16 ilustra una configuración general de un sistema de suministro de contenido ex100 para implementar servicios de distribución de contenido. El área para proporcionar servicios de comunicación se divide en celdas del tamaño deseado, y en cada una de las celdas se colocan estaciones de base ex106, ex107, ex108, ex109 y ex110, que son estaciones inalámbricas fijas.
El sistema de suministro de contenido ex100 está conectado a dispositivos, tales como una ordenador ex111, un asistente digital personal (PDA) ex112, una cámara ex113, un teléfono celular ex114 y una máquina de juegos ex115, a través de Internet ex101, un proveedor de servicios de Internet ex102, una red telefónica ex104, así como las estaciones de base ex106 a ex110, respectivamente.
Sin embargo, la configuración del sistema proveedor de contenido ex100 no se limita a la configuración mostrada en la FIG. 16, y una combinación en la que cualquiera de los elementos esté conectado es aceptable. Además, cada dispositivo se puede conectar directamente a la red telefónica ex104, en lugar de a través de las estaciones de base ex106 a ex110 que son las estaciones inalámbricas fijas. Además, los dispositivos se pueden interconectar entre sí por medio de comunicación inalámbrica de corta distancia y otros.
La cámara ex113, tal como una cámara de vídeo digital, es capaz de capturar vídeo. Una cámara ex116, tal como una cámara digital, es capaz de capturar tanto imágenes fijas como vídeo. Además, el teléfono celular ex114 puede ser aquel que cumpla con cualquiera de los estándares tales como el Sistema Global para Comunicaciones Móviles (GSM) (marca registrada), Acceso Múltiple por División de Código (CDMA), Acceso Múltiple por División de Código de Banda Ancha (W-CDMA), Evolución a Largo Plazo (LTE) y Acceso a Paquetes de Alta Velocidad (HSPA). Alternativamente, el teléfono celular ex114 puede ser un Sistema de Teléfono Personal (PHS).
En el sistema de suministro de contenido ex100, un servidor de transmisión por secuencias ex103 está conectado a la cámara ex113 y otras a través de la red telefónica ex104 y la estación de base ex109, lo que permite la distribución de imágenes de un espectáculo en vivo y otros. En tal distribución, un contenido (por ejemplo, vídeo de un espectáculo musical en vivo) capturado por el usuario mediante el uso de la cámara ex113 se codifica como se describe anteriormente en cada una de las realizaciones (es decir, la cámara funciona como el aparato de codificación de imágenes de acuerdo con un aspecto de la presente invención), y el contenido codificado se transmite al servidor de transmisión por secuencias ex103. Por otro lado, el servidor de transmisión por secuencias ex103 lleva a cabo la distribución por secuencias de los datos de contenido transmitidos a los clientes de acuerdo con sus solicitudes. Los clientes incluyen el ordenador ex111, la PDA ex112, la cámara ex113, el teléfono celular ex114 y la máquina de juegos ex115 que son capaces de decodificar los datos codificados mencionados anteriormente. Cada uno de los dispositivos que ha recibido los datos distribuidos decodifica y reproduce los datos codificados (es decir, funciona como el aparato de decodificación de imágenes de acuerdo con un aspecto de la presente invención).
Los datos capturados se pueden codificar por medio de la cámara ex113 o el servidor de transmisión por secuencias ex103 que transmite los datos, o los procesos de codificación se pueden compartir entre la cámara ex113 y el servidor de transmisión por secuencias ex103. De manera similar, los datos distribuidos pueden ser decodificados por los clientes o el servidor de transmisión por secuencias ex103, o los procesos de decodificación se pueden compartir entre los clientes y el servidor de transmisión por secuencias ex103. Además, los datos de las imágenes fijas y el vídeo capturados no sólo por la cámara ex113 sino también por la cámara ex116 se pueden transmitir al servidor de transmisión por secuencias ex103 a través del ordenador ex111. Los procesos de codificación se pueden llevar a cabo por la cámara ex116, el ordenador ex111 o el servidor de transmisión por secuencias ex103, o compartidos entre ellos.
Además, los procesos de codificación y decodificación pueden ser llevados a cabo por un LSI ex500 incluido generalmente en cada uno del ordenador ex111 y los dispositivos. El LSI ex500 se puede configurar con un único chip o con varios chips. El software para codificar y decodificar vídeo se puede integrar en algún tipo de medio de grabación (tal como un CD-ROM, un disco flexible, y un disco duro) que sea legible por el ordenador ex111 y otros, y los procesos de codificación y decodificación se pueden llevar a cabo mediante el uso del software. Además, cuando el teléfono celular ex114 está equipado con una cámara, los datos de vídeo obtenidos por la cámara se pueden transmitir. Los datos de vídeo son datos codificados por el LSI ex500 incluido en el teléfono celular ex114.
Además, el servidor de transmisión por secuencias ex103 puede estar compuesto por servidores y ordenadores, y puede descentralizar datos y procesar los datos descentralizados, registrar o distribuir datos.
Como se describió anteriormente, los clientes pueden recibir y reproducir los datos codificados en el sistema de suministro de contenido ex100. En otras palabras, los clientes pueden recibir y decodificar información transmitida por el usuario y reproducir los datos decodificados en tiempo real en el sistema de suministro de contenido ex100, de forma que el usuario que no tiene ningún derecho ni equipo particular puede implementar la transmisión personal.
Aparte del ejemplo del sistema que proporciona contenido ex100, al menos uno del aparato de codificación de imágenes en movimiento (aparato de codificación de imágenes) y el aparato de decodificación de imágenes en movimiento (aparato de decodificación de imágenes) descritos en cada una de las realizaciones se puede implementar en un sistema de radiodifusión digital ex200 ilustrado en la FIG. 17. Más específicamente, una estación de radiodifusión ex201 comunica o transmite, por medio de ondas de radio a un satélite de radiodifusión ex202, datos multiplexados obtenidos por medio de la multiplexación de datos de audio y otros en datos de vídeo. Los datos de vídeo son datos codificados por medio del procedimiento de codificación de imágenes en movimiento descrito en cada una de las realizaciones (es decir, datos codificados por el aparato de codificación de imágenes de acuerdo con un aspecto de la presente invención). Tras la recepción de los datos multiplexados, el satélite de transmisión ex202 transmite ondas de radio para su transmisión. Luego, una antena de uso doméstico ex204 con función de recepción de transmisiones por satélite recibe las ondas de radio. A continuación, un dispositivo tal como una televisión (receptor) ex300 y un decodificador (STB) ex217 decodifica los datos multiplexados recibidos y reproduce los datos decodificados (es decir, funciona como el aparato de decodificación de imágenes de acuerdo con un aspecto de la presente invención).
Además, un lector/grabador ex218 (i) lee y decodifica los datos multiplexados grabados en un medio de grabación ex215, tal como un DVD y un BD, o (i) codifica señales de vídeo en el medio de grabación ex215 y, en algunos casos, escribe datos obtenidos por medio de la multiplexación de una señal de audio sobre los datos codificados. El lector/grabador ex218 puede incluir el aparato de decodificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento como se muestra en cada una de las realizaciones. En este caso, las señales de vídeo reproducidas se muestran en el monitor ex219, y puede ser reproducido por otro dispositivo o sistema mediante el uso del medio de grabación ex215 en el que se graban los datos multiplexados. También es posible implementar el aparato de decodificación de imágenes en movimiento en el decodificador ex217 conectado al cable ex203 para una televisión por cable o a la antena ex204 para transmisión por satélite y/o terrestre, para visualizar las señales de vídeo en el monitor ex219 de la televisión ex300. El aparato de decodificación de imágenes en movimiento se puede implementar no en el decodificador sino en la televisión ex300.
La FIG. 18 ilustra la televisión (receptor) ex300 que usa el procedimiento de codificación de imágenes en movimiento y el procedimiento de decodificación de imágenes en movimiento descritos en cada una de las realizaciones. La televisión ex300 incluye: un sintonizador ex301 que obtiene o proporciona datos multiplexados obtenidos por medio de la multiplexación de datos de audio sobre datos de vídeo, a través de la antena ex204 o el cable ex203, etc. que recibe una transmisión; una unidad de modulación/demodulación ex302 que demodula los datos multiplexados recibidos o modula datos en datos multiplexados para ser suministrados al exterior; y una unidad de multiplexación/demultiplexación ex303 que demultiplexa los datos multiplexados modulados en datos de vídeo y datos de audio, o multiplexa datos de vídeo y datos de audio codificados por una unidad de procesamiento de señales ex306 en datos.
La televisión ex300 además incluye: una unidad de procesamiento de señales ex306 que incluye una unidad de procesamiento de señales de audio ex304 y una unidad de procesamiento de señales de vídeo ex305 que decodifican datos de audio y datos de vídeo y codifican datos de audio y datos de vídeo, respectivamente (que funcionan como el aparato de codificación de imágenes y el aparato de decodificación de imágenes de acuerdo con los aspectos de la presente invención); y una unidad de salida ex309 que incluye un altavoz ex307 que proporciona la señal de audio decodificada, y una unidad de visualización ex308 que muestra la señal de vídeo decodificada, tal como una pantalla. Además, la televisión ex300 incluye una unidad de interfaz ex317 que incluye una unidad de entrada de operación ex312 que recibe una entrada de una operación del usuario. Además, la televisión ex300 incluye una unidad de control ex310 que controla en general cada elemento constituyente de la televisión ex300, y una unidad de circuito de suministro de energía ex311 que suministra energía a cada uno de los elementos. Además de la unidad de entrada de operación ex312, la unidad de interfaz ex317 puede incluir: un puente ex313 que está conectado a un dispositivo externo, tal como el lector/grabador ex218; una unidad de ranura ex314 para permitir la conexión del medio de grabación ex216, tal como una tarjeta SD; un controlador ex315 para conectarse a un medio de grabación externo, tal como un disco duro; y un módem ex316 para conectar a una red telefónica. Aquí, el medio de grabación ex216 puede grabar eléctricamente información mediante el uso de un elemento de memoria semiconductor no volátil/volátil para almacenamiento. Los elementos constitutivos de la televisión ex300 están conectados entre sí a través de un bus síncrono.
En primer lugar, se describirá la configuración en la que la televisión ex300 decodifica datos multiplexados obtenidos desde el exterior a través de la antena ex204 y otras y reproduce los datos decodificados. En la televisión ex300, tras la operación del usuario a través de un controlador remoto ex220 y otros, la unidad de multiplexación/demultiplexación ex303 demultiplexa los datos multiplexados demodulados por la unidad de modulación/demodulación ex302, bajo el control de la unidad de control ex310 que incluye una CPU. Además, la unidad de procesamiento de señales de audio ex304 decodifica los datos de audio demultiplexados, y la unidad de procesamiento de señales de vídeo ex305 decodifica los datos de vídeo demultiplexados, mediante el uso del procedimiento de decodificación descrito en cada una de las realizaciones, en la televisión ex300. La unidad de salida ex309 proporciona la señal de vídeo decodificada y la señal de audio exterior, respectivamente. Cuando la unidad de salida ex309 proporciona la señal de vídeo y la señal de audio, las señales se pueden almacenar temporalmente en memorias intermedias ex318 y ex319, y otras, para que las señales se reproduzcan en sincronización entre sí. Además, la televisión ex300 puede leer datos multiplexados no a través de una emisión y otros, sino de los medios de grabación ex215 y ex216, tales como un disco magnético, un disco óptico y una tarjeta SD. A continuación, se describirá una configuración en la que la televisión ex300 codifica una señal de audio y una señal de vídeo, y transmite los datos al exterior o escribe los datos en un medio de grabación. En la televisión ex300, tras una operación del usuario a través del controlador remoto ex220 y otros, la unidad de procesamiento de señal de audio ex304 codifica una señal de audio, y la unidad de procesamiento de señal de vídeo ex305 codifica una señal de vídeo, bajo el control de la unidad de control ex310 mediante el uso del procedimiento de codificación descrito en cada una de las realizaciones. La unidad de multiplexación/demultiplexación ex303 multiplexa la señal de vídeo codificada y la señal de audio, y proporciona la señal resultante al exterior. Cuando la unidad de multiplexación/demultiplexación ex303 multiplexa la señal de vídeo y la señal de audio, las señales se pueden almacenar temporalmente en las memorias intermedias ex320 y ex321, y otras, de forma que las señales se reproduzcan en sincronización entre sí. Aquí, las memorias intermedias ex318, ex319, ex320 y ex321 pueden ser plurales como se ilustra, o al menos una memoria intermedia se puede compartir en la televisión ex300. Además, los datos se pueden almacenar en una memoria intermedia de forma que se pueda evitar el desbordamiento y el subdesbordamiento del sistema entre la unidad de modulación/demodulación ex302 y la unidad de multiplexación/demultiplexación ex303, por ejemplo.
Además, la televisión ex300 puede incluir una configuración para recibir una entrada AV desde un micrófono o una cámara distinta de la configuración para obtener datos de audio y vídeo de una emisión o un medio de grabación, y puede codificar los datos obtenidos. Aunque la televisión ex300 puede codificar, multiplexar y proporcionar datos externos en la descripción, puede ser capaz sólo de recibir, decodificar y proporcionar datos externos pero no de codificar, multiplexar y proporcionar datos externos.
Además, cuando el lector/grabador ex218 lee o escribe datos multiplexados desde o sobre un medio de grabación, uno de la televisión ex300 y el lector/grabador ex218 pueden decodificar o codificar los datos multiplexados, y la televisión ex300 y el lector/grabador ex218 pueden compartir la decodificación o codificación.
Como ejemplo, la FIG. 19 ilustra una configuración de una unidad de reproducción/grabación de información ex400 cuando los datos se leen o escriben desde o en un disco óptico. La unidad de reproducción/grabación de información ex400 incluye los elementos constituyentes ex401, ex402, ex403, ex404, ex405, ex406 y ex407 que se describirán más adelante. El cabezal óptico ex401 irradia un punto láser en una superficie de grabación del medio de grabación ex215 que es un disco óptico para escribir información, y detecta la luz reflejada desde la superficie de grabación del medio de grabación ex215 para leer la información. La unidad de grabación de modulación ex402 acciona eléctricamente un láser semiconductor incluido en el cabezal óptico ex401 y modula la luz láser de acuerdo con los datos registrados. La unidad de demodulación de reproducción ex403 amplifica una señal de reproducción obtenida detectando eléctricamente la luz reflejada de la superficie de grabación mediante el uso de un fotodetector incluido en el cabezal óptico ex401, y demodula la señal de reproducción por medio de la separación de un componente de señal grabado en el medio de grabación ex215 para reproducir la Información necesaria. La memoria intermedia ex404 contiene temporalmente la información que se va a grabar en el medio de grabación ex215 y la información reproducida desde el medio de grabación ex215. El motor de disco ex405 hace girar el medio de grabación ex215. La unidad de servocontrol ex406 mueve el cabezal óptico ex401 a una pista de información predeterminada mientras controla el accionamiento de rotación del motor de disco ex405 para seguir el punto láser. La unidad de control del sistema ex407 controla en general la unidad de reproducción/grabación de información ex400. Los procesos de lectura y escritura pueden ser implementados por la unidad de control del sistema ex407 mediante el uso de diversa información almacenada en la memoria intermedia ex404 y la generación y adición de nueva información de acuerdo con lo necesario, y por la unidad de grabación de modulación ex402, la unidad de demodulación de reproducción ex403 y la unidad de servocontrol ex406 que registran y reproducen información a través del cabezal óptico ex401 mientras son operados de manera coordinada. La unidad de control del sistema ex407 incluye, por ejemplo, un microprocesador y ejecuta el procesamiento haciendo que un ordenador ejecute un programa de lectura y escritura.
Aunque el cabezal óptico ex401 irradia un punto láser en la descripción, puede llevar a cabo grabaciones de alta densidad mediante el uso de luz de campo cercano.
La FIG. 20 ilustra el medio de grabación ex215 que es el disco óptico. En la superficie de grabación del medio de grabación ex215, se forman acanaladuras de guía en espiral, y una pista de información ex230 registra, de antemano, información de dirección que indica una posición absoluta en el disco de acuerdo con el cambio en la forma de las acanaladuras de guía. La información de dirección incluye información para determinar posiciones de bloques de grabación ex231 que son una unidad para grabar datos. La reproducción de la pista de información ex230 y la lectura de la información de dirección en un aparato que registra y reproduce datos puede conducir a la determinación de las posiciones de los bloques de grabación. Además, el medio de grabación ex215 incluye un área de grabación de datos ex233, un área de circunferencia interior ex232 y un área de circunferencia exterior ex234. El área de grabación de datos ex233 es un área para usar en el registro de datos del usuario. El área de circunferencia interior ex232 y el área de circunferencia exterior ex234 que están dentro y fuera del área de grabación de datos ex233, respectivamente, son para uso específico excepto para registrar los datos del usuario. La unidad de reproducción/grabación de información 400 lee y escribe audio codificado, datos de vídeo codificados o datos multiplexados obtenidos por medio de la multiplexación de los datos de audio y vídeo codificados, desde y sobre el área de grabación de datos ex233 del medio de grabación ex215.
Aunque en la descripción se describe como un ejemplo un disco óptico que tiene una capa, tal como un DVD y un BD, el disco óptico no se limita a ello, y puede ser un disco óptico que tiene una estructura multicapa y capaz de grabarse en un parte distinta de la superficie. Además, el disco óptico puede tener una estructura para grabación/reproducción multidimensional, tal como grabación de información mediante el uso de luz de colores con diferentes longitudes de onda en la misma porción del disco óptico y para grabar información que tiene diferentes capas desde varios ángulos.
Además, un automóvil ex210 que tiene una antena ex205 puede recibir datos del satélite ex202 y otros, y reproducir vídeo en un dispositivo de visualización tal como un sistema de navegación para automóvil ex211 instalado en el automóvil ex210, en el sistema de transmisión digital ex200. En este caso, una configuración del sistema de navegación para automóvil ex211 será una configuración que incluya, por ejemplo, una unidad receptora de GPS de la configuración ilustrada en la FIG. 18. Lo mismo ocurrirá con la configuración del ordenador ex111, el teléfono celular ex114 y otros.
La FIG. 21A ilustra el teléfono celular ex114 que usa el procedimiento de codificación de imágenes en movimiento y el procedimiento de decodificación de imágenes en movimiento descritos en las realizaciones. El teléfono celular ex114 incluye: una antena ex350 para transmitir y recibir ondas de radio a través de la estación de base ex110; una unidad de cámara ex365 capaz de capturar imágenes fijas y en movimiento; y una unidad de visualización ex358 tal como una pantalla de cristal líquido para visualizar datos tales como vídeo decodificado capturado por la unidad de cámara ex365 o recibido por la antena ex350. El teléfono celular ex114 además incluye: una unidad de cuerpo principal que incluye una unidad de clave de operación ex366; una unidad de salida de audio ex357 tal como un altavoz para salida de audio; una unidad de entrada de audio ex356 tal como un micrófono para entrada de audio; una unidad de memoria ex367 para almacenar vídeo capturado o imágenes fijas, audio grabado, datos codificados o decodificados del vídeo recibido, imágenes fijas, correos electrónicos u otros; y una unidad de ranura ex364 que es una unidad de interfaz para un medio de grabación que almacena datos de la misma manera que la unidad de memoria ex367.
A continuación, se describirá un ejemplo de una configuración del teléfono celular ex114 con referencia a la FIG. 21B. En el teléfono celular ex114, una unidad de control principal ex360 diseñada para controlar en general cada unidad del cuerpo principal, que incluye la unidad de visualización ex358, así como la unidad de clave de operación ex366, está conectada entre sí, a través de un bus síncrono ex370, a una unidad de circuito de suministro de energía ex361, una unidad de control de entrada de operación ex362, una unidad de procesamiento de señal de vídeo ex355, una unidad de interfaz de cámara ex363, una unidad de control de pantalla de cristal líquido (LCD) ex359, una unidad de modulación/demodulación ex352, una unidad de multiplexación/demultiplexación ex353, una unidad de procesamiento de señal de audio ex354, la unidad de ranura ex364 y la unidad de memoria ex367.
Cuando una tecla de fin de llamada o una tecla de encendido se activa por medio de la operación de un usuario, la unidad de circuito de suministro de energía ex361 suministra energía a las unidades respectivas desde un paquete de batería para activar el teléfono celular ex114.
En el teléfono celular ex114, la unidad de procesamiento de señales de audio ex354 convierte las señales de audio recopiladas por la unidad de entrada de audio ex356 en modo de conversación de voz en señales de audio digitales bajo el control de la unidad de control principal ex360 que incluye una CPU, ROM y RAM. Luego, la unidad de modulación/demodulación ex352 lleva a cabo procesamiento de espectro ensanchado en las señales de audio digitales, y la unidad de transmisión y recepción ex351 lleva a cabo conversión de digital a analógico y conversión de frecuencia en los datos, para transmitir los datos resultantes a través de la antena ex350. Además, en el teléfono celular ex114, la unidad de transmisión y recepción ex351 amplifica los datos recibidos por la antena ex350 en modo de conversación de voz y lleva a cabo la conversión de frecuencia y la conversión de analógico a digital de los datos. Luego, la unidad de modulación/demodulación ex352 lleva a cabo un procesamiento de espectro ensanchado inverso en los datos, y la unidad de procesamiento de señales de audio ex354 los convierte en señales de audio analógicas, para emitirlas a través de la unidad de salida de audio ex357.
Además, cuando se transmite un correo electrónico en modo de comunicación de datos, los datos de texto del correo electrónico introducido por medio de la operación de la unidad de clave de operación ex366 y otros del cuerpo principal se envían a la unidad de control principal ex360 a través de la unidad de control de entrada de operación ex362. La unidad de control principal ex360 hace que la unidad de modulación/demodulación ex352 lleve a cabo un procesamiento de espectro ensanchado en los datos de texto, y la unidad de transmisión y recepción ex351 lleva a cabo la conversión de digital a analógico y la conversión de frecuencia de los datos resultantes para transmitir los datos a la estación de base ex110 a través de la antena ex350. Cuando se recibe un correo electrónico, se lleva a cabo un procesamiento que es aproximadamente inverso al procesamiento para transmitir un correo electrónico sobre los datos recibidos, y los datos resultantes se proporcionan a la unidad de visualización ex358.
Cuando se transmiten o se transmiten vídeo, imágenes fijas o vídeo y audio en modo de comunicación de datos, la unidad de procesamiento de señales de vídeo ex355 comprime y codifica señales de vídeo suministradas desde la unidad de cámara ex365 mediante el uso del procedimiento de codificación de imágenes en movimiento mostrado en cada una de las realizaciones (es decir, funciona como aparato de codificación de imágenes de acuerdo con el aspecto de la presente invención), y transmite los datos de vídeo codificados a la unidad de multiplexación/demultiplexación ex353. Por el contrario, cuando la unidad de cámara ex365 captura vídeo, imágenes fijas y otros, la unidad de procesamiento de señales de audio ex354 codifica señales de audio recopiladas por la unidad de entrada de audio ex356 y transmite los datos de audio codificados a la unidad de multiplexación/demultiplexación ex353.
La unidad de multiplexación/demultiplexación ex353 multiplexa los datos de vídeo codificados suministrados desde la unidad de procesamiento de señales de vídeo ex355 y los datos de audio codificados suministrados desde la unidad de procesamiento de señales de audio ex354, mediante el uso de un procedimiento predeterminado. Luego, la unidad de modulación/demodulación (unidad de circuito de modulación/demodulación) ex352 lleva a cabo procesamiento de espectro ensanchado en los datos multiplexados, y la unidad de transmisión y recepción ex351 lleva a cabo conversión de digital a analógico y conversión de frecuencia en los datos para transmitir los datos resultantes a través de la antena ex350.
Tras la recepción de datos de un archivo de vídeo que está vinculado a una página Web y otras en modo de comunicación de datos o tras la recepción de un correo electrónico con vídeo y/o audio adjunto, a fin de decodificar los datos multiplexados recibidos a través de la antena ex350, la unidad de multiplexación/demultiplexación ex353 demultiplexa los datos multiplexados en una secuencia de bits de datos de vídeo y una secuencia de bits de datos de audio, y suministra a la unidad de procesamiento de señales de vídeo ex355 los datos de vídeo codificados y a la unidad de procesamiento de señales de audio ex354 con los datos de audio codificados, a través del bus síncrono ex370. La unidad de procesamiento de señal de vídeo ex355 decodifica la señal de vídeo mediante el uso de un procedimiento de decodificación de imágenes en movimiento correspondiente al procedimiento de codificación de imágenes en movimiento mostrado en cada una de las realizaciones (es decir, funciona como el aparato de decodificación de imágenes de acuerdo con el aspecto de la presente invención), y luego la unidad de visualización ex357 muestra, por ejemplo, el vídeo y las imágenes fijas incluidas en el archivo de vídeo vinculado a la página web a través de la unidad de control de LCD ex359. Además, la unidad de procesamiento de señales de audio ex354 decodifica la señal de audio y la unidad de salida de audio ex357 proporciona el audio.
Además, de manera similar al a televisión ex300, un terminal tal como el teléfono celular ex114 probablemente tenga 3 tipos de configuraciones de implementación que incluyen no sólo (i) un terminal transmisor y receptor que incluye tanto un aparato de codificación como un aparato de decodificación, sino también (ii) un terminal transmisor que incluye únicamente un aparato de codificación y (iii) un terminal receptor que incluye únicamente un aparato de decodificación. Aunque el sistema de radiodifusión digital ex200 recibe y transmite los datos multiplexados obtenidos por medio de la multiplexación de datos de audio en datos de vídeo en la descripción, los datos multiplexados pueden ser datos obtenidos por medio de la multiplexación de no datos de audio sino datos de caracteres relacionados con vídeo en datos de vídeo, y pueden no ser datos multiplexados sino datos de vídeo en sí.
Como tal, el procedimiento de codificación de imágenes en movimiento y el procedimiento de decodificación de imágenes en movimiento en cada una de las realizaciones se pueden usar en cualquiera de los dispositivos y sistemas descritos. De este modo, se pueden obtener las ventajas descritas en cada una de las realizaciones.
Además, la presente invención no se limita a realizaciones, y son posibles diversas modificaciones y revisiones sin salirse del alcance de la presente invención.
(Realización 4)
Los datos de vídeo se pueden generar por medio del cambio, de acuerdo con lo necesario, entre (i) el procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento mostrado en cada una de las realizaciones y (ii) un procedimiento de codificación de imágenes en movimiento o un aparato de codificación de imágenes en movimiento en conformidad con una estándar diferente, tal como MPEG-2, MPEG-4 AVC y VC-1.
Aquí, cuando se genera y luego se decodifica una pluralidad de datos de vídeo que se ajustan a los diferentes estándares, es necesario seleccionar los procedimientos de decodificación para que se ajusten a los diferentes estándares. Sin embargo, dado que no se puede detectar a qué estándar se ajusta cada uno de la pluralidad de datos de vídeo a decodificar, existe el problema de que no se puede seleccionar un procedimiento de decodificación apropiado.
A fin de resolver el problema, los datos multiplexados obtenidos por medio de la multiplexación de datos de audio y otros en datos de vídeo tienen una estructura que incluye información de identificación que indica a qué estándar se ajustan los datos de vídeo. A continuación se describirá la estructura específica de los datos multiplexados, incluidos los datos de vídeo generados en el procedimiento de codificación de imágenes en movimiento y por el aparato de codificación de imágenes en movimiento mostrado en cada una de las realizaciones. Los datos multiplexados son una secuencia digital en formato MPEG-2Transport Stream.
La FIG. 22 ilustra una estructura de los datos multiplexados. Como se ilustra en la FIG. 22, los datos multiplexados se pueden obtener por medio de la multiplexación de al menos uno de una secuencia de vídeo, una secuencia de audio, una secuencia de gráficos de presentación (PG) y una secuencia de gráficos interactivos. La secuencia de vídeo representa vídeo primario y vídeo secundario de una película, la secuencia de audio (IG) representa una parte de audio primaria y una parte de audio secundaria que se mezclarán con la parte de audio principal, y la secuencia de gráficos de presentación representa subtítulos de la película. Aquí, el vídeo principal es un vídeo normal que se muestra en una pantalla, y el vídeo secundario es un vídeo que se mostrará en una ventana más pequeña en el vídeo principal. Además, la secuencia de gráficos interactivos representa una pantalla interactiva que se generará disponiendo los componentes de la GUI en una pantalla. La secuencia de vídeo se codifica en el procedimiento de codificación de imágenes en movimiento o por medio del aparato de codificación de imágenes en movimiento mostrado en cada una de las realizaciones, o en un procedimiento de codificación de imágenes en movimiento o por medio de un aparato de codificación de imágenes en movimiento en conformidad con un estándar convencional, tal como MPEG-2, MPEG-4 AVC y VC-1. La secuencia de audio se codifica de acuerdo con un estándar, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD y PCM lineal.
Cada secuencia incluida en los datos multiplexados se identifica por medio de PID. Por ejemplo, 0x1011 se asigna a la secuencia de vídeo que se usará para el vídeo de una película, 0x1100 a 0x111F se asignan a las secuencias de audio, 0x1200 a 0x121F se asignan a las secuencias de gráficos de presentación, 0x1400 a 0x141F se asignan a las secuencias de gráficos interactivos, 0x1B00 a 0x1B1F se asignan a las secuencias de vídeo que se usarán para el vídeo secundario de la película, y 0x1A00 a 0x1A1F se asignan a las secuencias de audio que se usarán para que el audio secundario se mezcle con el audio principal.
La FIG. 23 ilustra de manera esquemática cómo se multiplexan los datos. En primer lugar, una secuencia de vídeo ex235 compuesto por fotogramas de vídeo y una secuencia de audio ex238 compuesto por fotogramas de audio se transforman en una secuencia de paquetes PES ex236 y una secuencia de paquetes PES ex239, y además en paquetes TS ex237 y paquetes TS ex240, respectivamente. De manera similar, los datos de una secuencia de gráficos de presentación ex241 y los datos de una secuencia de gráficos interactivos ex244 se transforman en una secuencia de paquetes PES ex242 y una secuencia de paquetes PES ex245, y además en paquetes TS ex243 y paquetes TS ex246, respectivamente. Estos paquetes TS se multiplexan en una secuencia para obtener datos multiplexados ex247.
La FIG. 24 ilustra con más detalle cómo se almacena una secuencia de vídeo en una secuencia de paquetes PES. La primera barra en la FIG. 24 muestra una secuencia de fotogramas de vídeo en una secuencia de vídeo. La segunda barra muestra la secuencia de paquetes PES. Como lo indican las flechas indicadas como yy1, yy2, yy3 e yy4 en la FIG. 24, la secuencia de vídeo se divide en imágenes como imágenes I, Imágenes B e imágenes P, cada una de las cuales es una unidad de presentación de vídeo, y las imágenes se almacenan en una carga útil de cada uno de los paquetes PES. Cada uno de los paquetes PES tiene un encabezado PES, y el encabezado PES almacena una Marca de Tiempo de Presentación (PTS) que indica un tiempo de visualización de la imagen, y una Marca de Tiempo de Decodificación (DTS) que indica un tiempo de decodificación de la imagen.
La FIG. 25 ilustra un formato de paquetes TS que finalmente se escribirán en los datos multiplexados. Cada uno de los paquetes TS es un paquete de longitud fija de 188 bytes que incluye un encabezado TS de 4 bytes que tiene información, tal como un PID para identificar una secuencia y una carga útil TS de 184 bytes para almacenar datos. Los paquetes PES se dividen y almacenan en las cargas útiles TS, respectivamente. Cuando se usa una BD ROM, a cada uno de los paquetes TS se le asigna un TP_Extra_Header de 4 bytes, lo que da como resultado paquetes de origen de 192 bytes. Los paquetes de origen se escriben en los datos multiplexados. El TP_Extra_Header almacena información tal como Arrival_Time_Stamp (ATS). El ATS muestra una hora de inicio de transferencia en la que cada uno de los paquetes TS se debe transferir a un filtro PID. Los paquetes de origen están dispuestos en los datos multiplexados como se muestra en la parte inferior de la FIG. 25. Los números que se incrementan desde el principio de los datos multiplexados se denominan como números de paquete de origen (SPN).
Cada uno de los paquetes TS incluidos en los datos multiplexados incluye no sólo secuencias de audio, vídeo, subtítulos y otros, sino también una Tabla de Asociación de Programas (PAT), una Tabla de Mapa de Programas (PMT) y una Referencia de Reloj de Programas (PCR). El PAT muestra lo que indica un PID en un PMT usado en los datos multiplexados, y un PID del propio PAT se registra como cero. El PMT almacena los PID de las secuencias de vídeo, audio, subtítulos y otros incluidos en los datos multiplexados, e información de atributos de las secuencias correspondientes a los PID. El PMT también tiene varios descriptores relacionados con los datos multiplexados. Los descriptores tienen información tal como información de control de copia que muestra si se permite o no la copia de los datos multiplexados. El PCR almacena información de tiempo STC correspondiente a un ATS que muestra cuándo se transfiere el paquete PCR a un decodificador, a fin de lograr la sincronización entre un reloj de tiempo de llegada (ATC) que es un eje de tiempo de los ATS y un Reloj de Tiempo del Sistema (STC) que es un eje de tiempo de PTS y DTS.
La FIG. 26 ilustra la estructura de datos del PMT en detalle. Un encabezado PMT está dispuesto en la parte superior del PMT. El encabezado PMT describe la longitud de los datos incluidos en el PMT y otros. Después del encabezado PMT se dispone una pluralidad de descriptores relacionados con los datos multiplexados. Información tal como la información de control de copia se describe en los descriptores. Después de los descriptores, se dispone una pluralidad de fragmentos de información de secuencia relacionados con las secuencias incluidas en los datos multiplexados. Cada pieza de información de secuencia incluye descriptores de secuencia, cada uno de los cuales describe información, tal como un tipo de secuencia para identificar un códec de compresión de una secuencia, un PID de secuencia e información de atributos de secuencia (tal como una tasa de fotogramas o una relación de aspecto). Los descriptores de secuencia son iguales en número al número de secuencias en los datos multiplexados.
Cuando los datos multiplexados se graban en un soporte de grabación y otros, se graban junto con archivos de información de datos multiplexados.
Cada uno de los archivos de información de datos multiplexados es información de gestión de los datos multiplexados como se muestra en la FIG. 27. Los archivos de información de datos multiplexados están en correspondencia uno a uno con los datos multiplexados, y cada uno de los archivos incluye información de datos multiplexados, información de atributos de secuencia y un mapa de entrada.
Como se ilustra en la FIG. 27, la información de datos multiplexados incluye una tasa del sistema, una hora de inicio de reproducción y una hora de finalización de reproducción. La tasa del sistema indica la tasa de transferencia máxima a la que un decodificador objetivo del sistema que se describirá más adelante transfiere los datos multiplexados a un filtro PID. Los intervalos de los ATS incluidos en los datos multiplexados no deben ser superiores a la tasa del sistema. El tiempo de inicio de la reproducción indica un PTS en un fotograma de vídeo al principio de los datos multiplexados. Se añade un intervalo de un fotograma a un PTS en un fotograma de vídeo al final de los datos multiplexados, y el PTS se fija en el tiempo de finalización de la reproducción.
Como se muestra en la FIG. 28, se registra un fragmento de información de atributo en la información de atributos de secuencia, para cada PID de cada secuencia incluida en los datos multiplexados. Cada pieza de información de atributo tiene información diferente dependiendo de si la secuencia correspondiente es una secuencia de vídeo, una secuencia de audio, una secuencia de gráficos de presentación o una secuencia de gráficos interactivos. Cada pieza de información de atributos de secuencia de vídeo contiene información que incluye qué tipo de códec de compresión se usa para comprimir la secuencia de vídeo y la resolución, relación de aspecto y tasa de fotogramas de los datos de imagen que se incluyen en la secuencia de vídeo. Cada pieza de información de atributos de secuencia de audio contiene información que incluye qué tipo de códec de compresión se usa para comprimir la secuencia de audio, cuántos canales se incluyen en la secuencia de audio, qué idioma admite la secuencia de audio y qué tan alta es la frecuencia de muestreo. La información de atributos de secuencia de vídeo y la información de atributos de secuencia de audio se usan para la inicialización de un decodificador antes de que el reproductor reproduzca la información.
En la presente realización, los datos multiplexados a usar son de un tipo de secuencia incluida en el PMT. Además, cuando los datos multiplexados se graban en un medio de grabación, se usa la información de atributos de secuencia de vídeo incluida en la información de datos multiplexados. Más específicamente, el procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones incluye una etapa o una unidad para asignar información única que indica datos de vídeo generados por el procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las realizaciones, al tipo de secuencia incluida en el PMT o la información de atributos de secuencia de vídeo. Con la configuración, los datos de vídeo generados por el procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones se pueden distinguir de los datos de vídeo que se ajustan a otro estándar.
Además, la FIG. 29 ilustra las etapas del procedimiento de decodificación de imágenes en movimiento de acuerdo con la presente realización. En la Etapa exS100, el tipo de secuencia incluida en el PMT o la información de atributos de secuencia de vídeo incluida en la información de datos multiplexados se obtiene a partir de los datos multiplexados. A continuación, en la Etapa exS101, se determina si el tipo de secuencia o la información de atributos de secuencia de vídeo indica o no que los datos multiplexados se generan por medio del procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las realizaciones. Cuando se determina que el tipo de secuencia o la información de atributos de secuencia de vídeo indica que los datos multiplexados se generan por medio del procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las realizaciones, en la Etapa exS102, la decodificación se lleva a cabo por medio del procedimiento de decodificación de imágenes en movimiento en cada una de las realizaciones. Además, cuando el tipo de secuencia o la información de atributos de secuencia de vídeo indica conformidad con los estándares convencionales, tales como MPEG-2, MPEG-4 AVC y VC-1, en la Etapa exS103, la decodificación se lleva a cabo por medio de un procedimiento de decodificación de imágenes en movimiento en conformidad con los estándares convencionales.
Como tal, asignar un nuevo valor único al tipo de secuencia o a la información de atributos de secuencia de vídeo permite determinar si el procedimiento de decodificación de imágenes en movimiento o el aparato de decodificación de imágenes en movimiento que se describe en cada una de las realizaciones puede llevar a cabo la decodificación. Incluso cuando se introducen datos multiplexados que se ajustan a un estándar diferente, se puede seleccionar un procedimiento o aparato de decodificación apropiado. Por lo tanto, es posible decodificar información sin ningún error. Además, el procedimiento o aparato de codificación de imágenes en movimiento, o el procedimiento o aparato de decodificación de imágenes en movimiento en la presente realización se pueden usar en los dispositivos y sistemas descritos anteriormente.
(Realización 5)
Cada uno de los procedimientos de codificación de imágenes en movimiento, el aparato de codificación de imágenes en movimiento, el procedimiento de decodificación de imágenes en movimiento y el aparato de decodificación de imágenes en movimiento en cada una de las realizaciones se logra típicamente en forma de un circuito integrado o un circuito integrado a gran escala (LSI). Como ejemplo del LSI, la FIG. 30 ilustra una configuración del LSI ex500 que se convierte en un chip. El LSI ex500 incluye los elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 y ex509 que se describirán a continuación, y los elementos están conectados entre sí a través de un bus ex510. La unidad de circuito de suministro de energía ex505 se activa suministrando energía a cada uno de los elementos cuando se enciende la unidad de circuito de suministro de energía ex505.
Por ejemplo, cuando se lleva a cabo la codificación, el LSI ex500 recibe una señal AV desde un micrófono ex117, una cámara ex113 y otros a través de un AV IO ex509 bajo el control de una unidad de control ex501 que incluye una CPU ex502, un controlador de memoria ex503, un controlador de secuencia ex504, y una unidad de control de frecuencia de conducción ex512. La señal AV recibida se almacena temporalmente en una memoria externa ex511, tal como una SDRAM. Bajo el control de la unidad de control ex501, los datos almacenados se segmentan en porciones de datos de acuerdo con la cantidad de procesamiento y la velocidad que se transmitirán a una unidad de procesamiento de señales ex507. Luego, la unidad de procesamiento de señales ex507 codifica una señal de audio y/o una señal de vídeo. Aquí, la codificación de la señal de vídeo es la codificación descrita en cada una de las realizaciones. Además, la unidad de procesamiento de señales ex507 a veces multiplexa los datos de audio codificados y los datos de vídeo codificados, y una secuencia de E/S ex506 proporciona los datos multiplexados en el exterior. Los datos multiplexados proporcionados se transmiten a la estación de base ex107 o se escriben en el medio de grabación ex215. Cuando los conjuntos de datos se multiplexan, los datos se deben almacenar temporalmente en la memoria intermedia ex508 para que los conjuntos de datos se sincronicen entre sí.
Aunque la memoria ex511 es un elemento externo al LSI ex500, puede estar incluida en el LSI ex500. La memoria intermedia ex508 no se limita a una memoria intermedia, sino que puede estar compuesto por memorias intermedias. Además, el LSI ex500 se puede convertir en un chip o en varios chips.
Además, aunque la unidad de control ex501 incluye la CPU ex502, el controlador de memoria ex503, el controlador de secuencia ex504, la unidad de control de frecuencia de conducción ex512, la configuración de la unidad de control ex501 no se limita a ello. Por ejemplo, la unidad de procesamiento de señales ex507 puede incluir además una CPU. La inclusión de otra CPU en la unidad de procesamiento de señales ex507 puede mejorar la velocidad de procesamiento. Además, como otro ejemplo, la CPU ex502 puede servir como parte de la unidad de procesamiento de señales ex507 y, por ejemplo, puede incluir una unidad de procesamiento de señales de audio. En tal caso, la unidad de control ex501 incluye la unidad de procesamiento de señales ex507 o la CPU ex502 que incluye una parte de la unidad de procesamiento de señales ex507.
El nombre usado aquí es LSI, pero también se puede denominar como IC, sistema LSI, súper LSI o ultra LSI de acuerdo con el grado de integración.
Además, las formas de lograr la integración no se limitan al LSI, y un circuito especial o un procesador de propósito general, etc., también pueden lograr la integración. Para el mismo propósito se puede usar una Matriz de Puertas Programables en Campo (FPGA) que se puede programar después de fabricar LSI o un procesador reconfigurable que permite la reconfiguración de la conexión o configuración de un LSI.
En el futuro, con los avances en la tecnología de semiconductores, una tecnología completamente nueva podría reemplazar al LSI. Los bloques funcionales se pueden integrar mediante el uso de dicha tecnología. La posibilidad es que la presente invención se aplique a la biotecnología.
(Realización 6)
Cuando se decodifican datos de vídeo generados en el procedimiento de codificación de imágenes en movimiento o por medio del aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones, en comparación con cuando se decodifican datos de vídeo que se ajustan a un estándar convencional, tal como MPEG-2, MPEG-4 AVC y VC. -1 se decodifica, la cantidad de procesamiento probablemente aumente. Por lo tanto, el LSI ex500 se debe establecer en una frecuencia de conducción superior a la de la CPU ex502 para usarse cuando se decodifican datos de vídeo en conformidad con el estándar convencional. Sin embargo, cuando la frecuencia de conducción se establece más alta, existe el problema de que aumenta el consumo de energía.
A fin de resolver el problema, el aparato de decodificación de imágenes en movimiento, tal como la televisión ex300 y el LSI ex500, está configurado para determinar a qué estándar se ajustan los datos de vídeo y cambiar entre las frecuencias de conducción de acuerdo con el estándar determinado. La FIG. 31 ilustra una configuración ex800 en la presente realización. Una unidad de conmutación de frecuencia de conducción ex803 establece una frecuencia de conducción a una frecuencia de conducción más alta cuando se generan datos de vídeo por medio del procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones. Luego, la unidad de conmutación de frecuencia de conducción ex803 instruye a una unidad de procesamiento de decodificación ex801 que ejecuta el procedimiento de decodificación de imágenes en movimiento descrito en cada una de las realizaciones para que decodifique los datos de vídeo. Cuando los datos de vídeo se ajustan al estándar convencional, la unidad de conmutación de frecuencia de conducción ex803 establece una frecuencia de conducción a una frecuencia de conducción más baja que la de los datos de vídeo generados por el procedimiento de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones. Luego, la unidad de conmutación de frecuencia de conducción ex803 ordena a la unidad de procesamiento de decodificación ex802 que se ajusta al estándar convencional que decodifique los datos de vídeo.
Más específicamente, la unidad de conmutación de frecuencia de conducción ex803 incluye la CPU ex502 y la unidad de control de frecuencia de conducción ex512 en la FIG. 30. Aquí, cada una de la unidad de procesamiento de decodificación ex801 que ejecuta el procedimiento de decodificación de imágenes en movimiento descrito en cada una de las realizaciones y la unidad de procesamiento de decodificación ex802 que se ajusta al estándar convencional corresponde a la unidad de procesamiento de señales ex507 en la FIG. 30. La CPU ex502 determina a qué estándar se ajustan los datos de vídeo. Luego, la unidad de control de frecuencia de conducción ex512 determina una frecuencia de conducción en base a una señal procedente de la CPU ex502. Además, la unidad de procesamiento de señales ex507 decodifica los datos de vídeo en base a la señal de la CPU ex502. Por ejemplo, la información de identificación descrita en la Realización 4 probablemente se use para identificar los datos de vídeo. La información de identificación no se limita a la descrita en la Realización 4, sino que puede ser cualquier información siempre que la información indique a qué estándar se ajustan los datos de vídeo. Por ejemplo, cuando se puede determinar a qué estándar se ajustan los datos de vídeo en base a una señal externa para determinar que los datos de vídeo se usan para una televisión o un disco, etc., la determinación se puede llevar a cabo en base a dicha señal externa. Además, la CPU ex502 selecciona una frecuencia de conducción en base, por ejemplo, a una tabla de consulta en la que los estándares de los datos de vídeo están asociados con las frecuencias de conducción como se muestra en la FIG. 33. La frecuencia de conducción se puede seleccionar por medio del almacenamiento de la tabla de búsqueda en la memoria intermedia ex508 y en una memoria interna de un LSI, y con referencia a la tabla de búsqueda por la CPU ex502.
La FIG. 32 ilustra las etapas para ejecutar un procedimiento en la presente realización. Primero, en la Etapa exS200, la unidad de procesamiento de señales ex507 obtiene información de identificación a partir de los datos multiplexados. A continuación, en la Etapa exS201, la CPU ex502 determina si los datos de vídeo se generan o no por medio del procedimiento de codificación y el aparato de codificación descritos en cada una de las realizaciones, en base a la información de identificación. Cuando los datos de vídeo se generan por medio del procedimiento de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones, en la Etapa exS202, la CPU ex502 transmite una señal para establecer la frecuencia de conducción a una frecuencia de conducción más alta a la unidad de control de frecuencia de conducción. ex512. Luego, la unidad de control de frecuencia de conducción ex512 ajusta la frecuencia de conducción a la frecuencia de conducción más alta. Por otro lado, cuando la información de identificación indica que los datos de vídeo se ajustan al estándar convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, en la Etapa exS203, la CPU ex502 transmite una señal para establecer la frecuencia de conducción a una frecuencia de conducción más baja a la unidad de control de frecuencia de conducción ex512. Luego, la unidad de control de frecuencia de conducción ex512 establece la frecuencia de conducción a la frecuencia de conducción más baja que la del caso en el que los datos de vídeo se generan por medio del procedimiento de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones.
Además, junto con la conmutación de las frecuencias de conducción, el efecto de conservación de energía se puede mejorar por medio del cambio del voltaje que se aplicará al LSI ex500 o a un aparato que incluya el LSI ex500. Por ejemplo, cuando la frecuencia de conducción se establece más baja, el voltaje que se aplicará al<l>S<i>ex500 o al aparato que incluye el LSI ex500 probablemente se establece en un voltaje más bajo que en el caso en que la frecuencia de conducción se establece más alta.
Además, cuando la cantidad de procesamiento para decodificar es mayor, la frecuencia de conducción se puede establecer más alta, y cuando la cantidad de procesamiento para decodificación es menor, la frecuencia de conducción se puede establecer más baja como procedimiento para establecer la frecuencia de conducción. Por lo tanto, el procedimiento de configuración no se limita a los descritos anteriormente. Por ejemplo, cuando la cantidad de procesamiento para decodificar datos de vídeo en conformidad con MPEG-4 AVC es mayor que la cantidad de procesamiento para decodificar datos de vídeo generados por el procedimiento de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las realizaciones, la frecuencia de conducción probablemente esté establecido en orden inverso al descrito anteriormente.
Además, el procedimiento para establecer la frecuencia de conducción no se limita al procedimiento para establecer la frecuencia de conducción más baja. Por ejemplo, cuando la información de identificación indica que los datos de vídeo se generan por medio del procedimiento de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones, el voltaje que se aplicará al LSI ex500 o al aparato que incluye el LSI ex500 probablemente sea establecer más alto. Cuando la información de identificación indica que los datos de vídeo se ajustan al estándar convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, el voltaje que se aplicará al LSI ex500 o el aparato que incluye el LSI ex500 probablemente esté en un nivel más bajo. Como otro ejemplo, cuando la información de identificación indica que los datos de vídeo se generan por medio del procedimiento de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones, probablemente no sea necesario suspender la activación de la CPU ex502. Cuando la información de identificación indica que los datos de vídeo se ajustan al estándar convencional, tal como MPEG-2, MPEG-4 AVC y VC-1, la conducción de la CPU ex502 probablemente se suspende en un momento dado porque la CPU ex502 tiene datos adicionales. capacidad de procesamiento. Incluso cuando la información de identificación indica que los datos de vídeo se generan por medio del procedimiento de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descrito en cada una de las realizaciones, en el caso en que la CPU ex502 tenga capacidad de procesamiento adicional, la activación de la CPU ex502 probablemente sea suspendido en un momento dado. En tal caso, el tiempo de suspensión probablemente se establece más corto que en el caso en que la información de identificación indique que los datos de vídeo se ajustan al estándar convencional, tal como MPEG-2, MPEG-4 AVC y VC-1.
En consecuencia, el efecto de conservación de energía se puede mejorar por medio del cambio entre las frecuencias de conducción de acuerdo con el estándar al que se ajustan los datos de vídeo. Además, cuando el LSI ex500 o el aparato que incluye el LSI ex500 se acciona mediante el uso de una batería, la vida útil de la batería se puede ampliar con el efecto de conservación de energía.
(Realización 7)
Hay casos en los que se proporciona una pluralidad de datos de vídeo que se ajustan a diferentes estándares a los dispositivos y sistemas, tales como una televisión y un teléfono celular. A fin de permitir la decodificación de la pluralidad de datos de vídeo que cumplen con los diferentes estándares, la unidad de procesamiento de señales ex507 del LSI ex500 necesita cumplir con los diferentes estándares. Sin embargo, los problemas de aumento de la escala del circuito del LSI ex500 y aumento del coste surgen con el uso individual de las unidades de procesamiento de señales ex507 que se ajustan a las normas respectivas.
A fin de resolver el problema, lo que se concibe es una configuración en la que la unidad de procesamiento de decodificación para implementar el procedimiento de decodificación de imágenes en movimiento descrito en cada una de las realizaciones y la unidad de procesamiento de decodificación que se ajusta al estándar convencional, tal como MPEG-2, MPEG -4 AVC y VC-1 se comparten parcialmente. Ex900 en la FIG. 34A muestra un ejemplo de la configuración. Por ejemplo, el procedimiento de decodificación de imágenes en movimiento descrito en cada una de las realizaciones y el procedimiento de decodificación de imágenes en movimiento que se ajusta a MPEG-4 AVC tienen, en parte en común, los detalles de procesamiento, tal como codificación de entropía, cuantificación inversa, filtrado de desbloqueo y predicción con compensación de movimiento. Los detalles del procesamiento a compartir probablemente incluyan el uso de una unidad de procesamiento de decodificación ex902 que se ajuste a MPEG-4 AVC. Por el contrario, una unidad de procesamiento de decodificación dedicada ex901 probablemente se use para otro procesamiento exclusivo de un aspecto de la presente invención. La unidad de procesamiento de decodificación para implementar el procedimiento de decodificación de imágenes en movimiento descrito en cada una de las realizaciones se puede compartir para el procesamiento a compartir, y se puede usar una unidad de procesamiento de decodificación dedicada para el procesamiento exclusivo del de MPEG-4 AVC.
Además, ex1000 en la FIG. 34B muestra otro ejemplo en el que el procesamiento es parcialmente compartido. Este ejemplo usa una configuración que incluye una unidad de procesamiento de decodificación dedicada ex1001 que soporta el procesamiento exclusivo de un aspecto de la presente invención, una unidad de procesamiento de decodificación dedicada ex1002 que admite el procesamiento exclusivo de otro estándar convencional, y una unidad de procesamiento de decodificación ex1003 que admite el procesamiento a compartir entre el procedimiento de decodificación de imágenes en movimiento de acuerdo con el aspecto de la presente invención y el procedimiento de decodificación de imágenes en movimiento convencional. Aquí, las unidades de procesamiento de decodificación dedicadas ex1001 y ex1002 no están necesariamente especializadas para el procesamiento de acuerdo con el aspecto de la presente invención y el procesamiento del estándar convencional, respectivamente, y pueden ser las que pueden implementar el procesamiento general. Además, la configuración de la presente realización se puede implementar por medio del LSI ex500.
Como tal, es posible reducir la escala del circuito de un LSI y reducir el coste al compartir la unidad de procesamiento de decodificación para que el procesamiento se comparta entre el procedimiento de decodificación de imágenes en movimiento de acuerdo con el aspecto de la presente invención y el procedimiento de decodificación de imágenes en movimiento en conformidad con el estándar convencional.
Aplicabilidad Industrial
La presente invención se refiere a procedimientos de codificación y decodificación de imágenes en movimiento. Más específicamente, la presente invención se refiere a procedimientos de codificación y decodificación de números de modo para diferenciar procedimientos de generación de píxeles de intrapredicción en intracodificación.
Listado de Señales de Referencia
100 Aparato de codificación de imágenes
101 Unidad de sustracción
102 Unidad de transformación
103 Unidad de cuantificación
104 Unidad de cuantificación inversa
105 Unidad de transformación inversa
106 Unidad de adición
107 Unidad de interpredicción
108 Unidad de intrapredicción
109 Unidad de conmutación
110 Unidad de control de codificación
120 Unidad de codificación de longitud variable
200 Aparato de decodificación de imágenes
201 Unidad de cuantificación inversa
202 Unidad de transformación inversa
203 Unidad de adición
204 Unidad de interpredicción
205 Unidad de intrapredicción
206 Unidad de conmutación
210 Unidad de control
220 Unidad de decodificación de longitud variable

Claims (2)

REIVINDICACIONES
1. Un procedimiento de decodificación de imágenes para decodificar, bloque por bloque, datos de imagen incluidos en una secuencia codificada, el procedimiento de decodificación de imágenes comprende las etapas de:
la obtención (S1101; S1103), a partir de la secuencia codificada, de un indicador que indica si se debe usar uno de los candidatos para un modo de predicción real; y
cuando el indicador indica que uno de los candidatos para el modo de predicción real no se usa (S1105: NO), (i) se obtiene un número de modo (S1115) de la secuencia codificada por medio de un procedimiento de decodificación de entropía predeterminado (S1117), el número de modo que indica el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación, y (ii) el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación se determina en base al número de modo obtenido, y
cuando el indicador indica que se usa uno de los candidatos para el modo de predicción real (S1105: SÍ),
(i) la derivación (S1111) de candidatos para un modo de intrapredicción a usar para intrapredicción para un bloque objetivo de decodificación a partir de una pluralidad de modos de intrapredicción predeterminados, el número de candidatos se fija en 2;
(ii) la obtención (S1109), a partir de la secuencia codificada, de un índice para identificar uno de los candidatos derivados para el modo de intrapredicción;
(iii) la determinación (S1111), en base al índice obtenido, un modo de predicción real que se usará para la intrapredicción para decodificar el bloque objetivo de decodificación; y
(iv) la decodificación de los datos de imagen mediante el uso del modo de predicción real;
en el que la etapa de derivación (S1111) incluye las etapas de hacer un listado de candidatos que incluye índices y los candidatos derivados, los candidatos derivados corresponde uno a uno con los índices, y un número de índices es igual a 2;
en el que la etapa de hacer un listado de candidatos incluye:
la determinación (S401, S402, S403) si existe al menos uno de los números de modo objetivo usados para la codificación de intrapredicción de un bloque adyacente superior y un bloque adyacente izquierdo, el bloque adyacente superior es adyacente a y por encima del bloque objetivo de decodificación, el bloque izquierdo el bloque adyacente es adyacente y está a la izquierda del bloque objetivo de decodificación;
y si es así (S403: NO):
en el caso de que ambos números de modo objetivo existan y sean diferentes entre sí (S405: NO), el establecimiento (S406), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al más pequeño de dichos números de modo objetivo usados para dicho bloque adyacente anterior y dicho bloque adyacente izquierdo, y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al más grande de dichos números de modo objetivo usados para dicho bloque adyacente anterior y dicho bloque adyacente izquierdo,
en el caso de que sólo exista uno de dichos números objetivo o ambos números de modo objetivo coincidan entre sí y el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda indique el modo de predicción DC (S405: SÍ, S407: SÍ), el establecimiento (S408), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al más pequeño de dicho número de modo objetivo existente y un número de modo que indica un modo de predicción DC que se usará para la intrapredicción, y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al más grande de dicho número de modo objetivo existente y un número de modo que indica un modo de predicción DC que se usará para la intrapredicción,
en el caso de que sólo exista uno de dichos números objetivo o ambos de dichos números objetivo coincidan entre sí y el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda no indique el modo de predicción DC (S405: SÍ, S407: NO),
si el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda es 0 (S409: SÍ), el establecimiento (S411), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al modo con número de modo 0 y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al modo con número de modo 1, y si el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda no son 0 (S409: NO), el establecimiento (S410), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación del modo con número de modo 0 y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al modo con el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda, y
si no existe ninguno de los números de modo objetivo usados para la codificación de intrapredicción para el bloque adyacente anterior y el bloque adyacente izquierdo (S403: SÍ), el establecimiento (S404), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación al modo con número de modo 0 y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de decodificación, al modo de predicción DC,
en el que el primer candidato corresponde al menor de los índices del listado, de forma que se priorice al candidato con el número de modo más pequeño.
2. Un procedimiento de codificación de imágenes para generar una secuencia codificada por medio de la codificación de datos de imágenes bloque por bloque, el procedimiento de codificación de imágenes comprende las etapas de:
la derivación (S203) de candidatos para un modo de intrapredicción a usar para intrapredicción para un bloque objetivo de codificación a partir de una pluralidad de modos de intrapredicción predeterminados, el número de candidatos se fija en 2; cuando ninguno de los candidatos derivados para el modo de intrapredicción coincide con un modo de predicción real que se usará para la intrapredicción para codificar el bloque objetivo de codificación (S205: NO),
(i) se añade a la secuencia codificada (S213) un indicador que indica que uno de los candidatos para el modo de predicción real no se usará, (ii) se determina el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación (S215), y (iii) se codifica un número de modo en la secuencia codificada por medio de un procedimiento de codificación de entropía predeterminado, el número de modo indica el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación (S217),
cuando uno de los candidatos derivados para el modo de intrapredicción coincide con el modo de predicción real (S205: SÍ);
(i) la adición, a la secuencia codificada, de un indicador que indica que se usará uno de los candidatos para el modo de predicción real, y la codificación (S207) de los datos de imagen mediante el uso del modo de predicción real; y
(ii) la adición (S209), a la secuencia codificada, de un índice para identificar el determinado de los candidatos derivados para el modo de intrapredicción;
en el que la etapa de derivación (S203) incluye las etapas de elaboración de un listado de candidatos que incluye índices y los candidatos derivados, los candidatos derivados corresponde uno a uno con los índices, y un número de índices es igual a 2;
en el que la etapa de hacer un listado de candidatos incluye:
la determinación (S401, S402, S403) si existe al menos uno de los números de modo objetivo usados para la codificación de intrapredicción de un bloque adyacente superior y un bloque adyacente izquierdo, el bloque adyacente superior es adyacente a y por encima del bloque objetivo de decodificación, el bloque izquierdo el bloque adyacente es adyacente y está a la izquierda del bloque objetivo de decodificación; y si es así (S403: NO):
en el caso de que ambos números de modo objetivo existan y sean diferentes entre sí (S405: NO), el establecimiento (S406), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al más pequeño de dichos números de modo objetivo usados para dicho bloque adyacente anterior y dicho bloque adyacente izquierdo, y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al más grande de dichos números de modo objetivo usados para dicho bloque adyacente anterior y dicho bloque adyacente izquierdo, y
en el caso de que sólo exista uno de dichos números objetivo o ambos números de modo objetivo coincidan entre sí y el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda indique el modo de predicción DC (S405: SÍ, S407: SÍ), el establecimiento (S408), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al más pequeño de dicho número de modo objetivo existente y un número de modo que indica un modo de predicción DC que se usará para la intrapredicción, y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al más grande de dicho número de modo objetivo existente y un número de modo que indica un modo de predicción DC que se usará para la intrapredicción,
en el caso de que sólo exista uno de dichos números objetivo o ambos de dichos números objetivo coincidan entre sí y el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda no indique el modo de predicción DC (S405: SÍ, S407: NO),
si el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda es 0 (S409: SÍ), el establecimiento (S411), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al modo con el número de modo 0 y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al modo con el número de modo 1, y si el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda no es 0 (S409: NO), el establecimiento (S410), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al modo con número de modo 0 y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al modo con el número de modo de uno de los bloques anteriores y los adyacentes a la izquierda, y
si no existe ninguno de los números de modo objetivo usados para la codificación de intrapredicción para el bloque adyacente anterior y el bloque adyacente izquierdo (S403: SÍ), el establecimiento (S404), en el listado de candidatos, de un primer candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación al modo con número de modo.
0 y un segundo candidato para el modo de intrapredicción que se usará para la intrapredicción para el bloque objetivo de codificación, al modo de predicción DC,
en el que el primer candidato corresponde al menor de los índices del listado, de forma que se priorice al candidato con el número de modo más pequeño.
ES12799908T 2011-06-13 2012-06-13 Procedimiento de decodificación de imágenes y procedimiento de codificación de imágenes Active ES2961495T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161496237P 2011-06-13 2011-06-13
PCT/JP2012/003839 WO2012172791A1 (ja) 2011-06-13 2012-06-13 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置および画像符号化復号装置

Publications (1)

Publication Number Publication Date
ES2961495T3 true ES2961495T3 (es) 2024-03-12

Family

ID=47356797

Family Applications (1)

Application Number Title Priority Date Filing Date
ES12799908T Active ES2961495T3 (es) 2011-06-13 2012-06-13 Procedimiento de decodificación de imágenes y procedimiento de codificación de imágenes

Country Status (15)

Country Link
US (7) US9860539B2 (es)
EP (1) EP2720461B1 (es)
JP (3) JP5386657B2 (es)
KR (1) KR101955051B1 (es)
CN (1) CN103609110B (es)
AU (1) AU2012270960B2 (es)
BR (1) BR112013031624B1 (es)
CA (1) CA2838214C (es)
ES (1) ES2961495T3 (es)
MX (1) MX2013013909A (es)
MY (1) MY165837A (es)
PL (1) PL2720461T3 (es)
RU (1) RU2607246C2 (es)
TW (2) TWI556628B (es)
WO (1) WO2012172791A1 (es)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012172791A1 (ja) * 2011-06-13 2012-12-20 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置および画像符号化復号装置
WO2012172796A1 (ja) * 2011-06-17 2012-12-20 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム
EP3624451A1 (en) * 2011-06-17 2020-03-18 HFI Innovation Inc. Method and apparatus for coding of intra prediction mode
RU2619706C2 (ru) * 2011-06-28 2017-05-17 Самсунг Электроникс Ко., Лтд. Способ и устройство для кодирования видео, а также способ и устройство для декодирования видео, сопровождаемого внутренним прогнозированием
CN103636220B (zh) 2011-06-28 2017-10-13 寰发股份有限公司 编码/解码帧内预测模式的方法及装置
EP2764694A4 (en) 2011-10-07 2015-11-25 Pantech Co Ltd METHODS AND APPARATUSES FOR INTRA PREDICTION MODE CODING AND DECODING USING INTRA CANDIDATE PREDICTION MODES
US8811760B2 (en) * 2011-10-25 2014-08-19 Mitsubishi Electric Research Laboratories, Inc. Coding images using intra prediction modes
KR20130049523A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
US9154796B2 (en) * 2011-11-04 2015-10-06 Qualcomm Incorporated Intra-mode video coding
CN103220506B (zh) 2012-01-19 2015-11-25 华为技术有限公司 一种编解码方法和设备
US9210438B2 (en) * 2012-01-20 2015-12-08 Sony Corporation Logical intra mode naming in HEVC video coding
CN104104950B (zh) * 2013-04-12 2018-03-02 浙江大学 一种模式信息的编解码方法及装置
JP6171627B2 (ja) * 2013-06-28 2017-08-02 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法および画像復号プログラム
FR3051309A1 (fr) * 2016-05-10 2017-11-17 Bcom Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image
JP6669622B2 (ja) * 2016-09-21 2020-03-18 Kddi株式会社 動画像復号装置、動画像復号方法、動画像符号化装置、動画像符号化方法及びコンピュータ可読記録媒体
CN117395408A (zh) * 2016-10-04 2024-01-12 韩国电子通信研究院 对图像进行编码/解码的方法和设备以及记录介质
FR3058019A1 (fr) * 2016-10-21 2018-04-27 Orange Procede de codage et de decodage de parametres d'image, dispositif de codage et de decodage de parametres d'image et programmes d'ordinateur correspondants
US10393702B2 (en) * 2016-11-02 2019-08-27 Weatherford Technology Holdings, Llc Defect penetration estimate using magnetic flux image enhancement
US10785479B2 (en) * 2018-03-30 2020-09-22 Hulu, LLC Intra prediction mode signaling for video coding
EP3813021A4 (en) * 2018-06-14 2021-08-11 Panasonic Intellectual Property Corporation of America THREE-DIMENSIONAL DATA ENCODING PROCESS, THREE-DIMENSIONAL DATA DECODING PROCESS, THREE-DIMENSIONAL DATA ENCODING DEVICE AND TRIDIMENSIONAL DATA DECODING DEVICE
WO2020009514A1 (ko) * 2018-07-06 2020-01-09 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2020030002A1 (en) * 2018-08-09 2020-02-13 Huawei Technologies Co., Ltd. Method and apparatus of history-based intra mode coding
KR20210022755A (ko) * 2018-09-28 2021-03-03 가부시키가이샤 제이브이씨 켄우드 화상 복호 장치, 화상 복호 방법, 화상 복호 프로그램, 화상 부호화 장치, 화상 부호화 방법 및, 화상 부호화 프로그램
RU2768956C1 (ru) * 2018-09-28 2022-03-25 ДжейВиСиКЕНВУД Корпорейшн Устройство декодирования изображения, способ декодирования изображения, устройство кодирования изображения и способ кодирования изображения

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI116819B (fi) * 2000-01-21 2006-02-28 Nokia Corp Menetelmä kuvien lähettämiseksi ja kuvakooderi
EP2309757B1 (en) 2002-05-28 2014-11-12 Sharp Kabushiki Kaisha Method and systems for image intra-prediction mode estimation, communication, and organization
US7236524B2 (en) 2002-05-28 2007-06-26 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode communication
US7289672B2 (en) 2002-05-28 2007-10-30 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode estimation
US7386048B2 (en) 2002-05-28 2008-06-10 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode organization
TWI330976B (en) * 2003-12-05 2010-09-21 Trident Microsystems Far East Method and apparatus for encoding/decoding dynamic graphic content
JP2005184042A (ja) 2003-12-15 2005-07-07 Sony Corp 画像復号装置及び画像復号方法並びに画像復号プログラム
US8190003B2 (en) 2004-01-14 2012-05-29 Samsung Electronics Co., Ltd. Storage medium storing interactive graphics stream activated in response to user's command, and reproducing apparatus for reproducing from the same
KR100608050B1 (ko) * 2004-01-14 2006-08-02 삼성전자주식회사 사용자의 요구에 의해 활성화되는 인터랙티브 그래픽스트림을 저장한 저장 매체, 재생 장치 및 그 재생 방법
US20060120461A1 (en) * 2004-12-06 2006-06-08 Roy Knight Two processor architecture supporting decoupling of outer loop and inner loop in video decoder
JP4495580B2 (ja) * 2004-12-13 2010-07-07 パナソニック株式会社 面内予測装置および面内予測方法
US8509551B2 (en) * 2005-07-22 2013-08-13 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recording with image encoding program and computer readable recording medium recorded with image decoding program
JP2007116351A (ja) * 2005-10-19 2007-05-10 Ntt Docomo Inc 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム
JP2009060153A (ja) * 2005-12-21 2009-03-19 Panasonic Corp 面内予測モード決定方法及び装置及びプログラム
JP4635016B2 (ja) * 2007-02-16 2011-02-16 株式会社東芝 情報処理装置およびインター予測モード判定方法
JP5188875B2 (ja) * 2007-06-04 2013-04-24 株式会社エヌ・ティ・ティ・ドコモ 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム
US8422803B2 (en) * 2007-06-28 2013-04-16 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
KR20100065240A (ko) * 2007-09-12 2010-06-16 소니 주식회사 화상 처리 장치 및 화상 처리 방법
WO2009084340A1 (ja) * 2007-12-28 2009-07-09 Sharp Kabushiki Kaisha 動画像符号化装置、および、動画像復号装置
KR101306834B1 (ko) * 2008-09-22 2013-09-10 에스케이텔레콤 주식회사 인트라 예측 모드의 예측 가능성을 이용한 영상 부호화/복호화 장치 및 방법
KR20110118641A (ko) * 2009-01-29 2011-10-31 파나소닉 주식회사 화상 부호화 방법 및 화상 복호 방법
KR101702553B1 (ko) * 2009-07-04 2017-02-03 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치
JP5746182B2 (ja) * 2009-09-14 2015-07-08 トムソン ライセンシングThomson Licensing イントラ予測モードの効率的なビデオ符号化及び復号化方法及び装置
JP6342116B2 (ja) * 2010-07-15 2018-06-13 シャープ株式会社 イントラ予測モード推定装置
KR101373814B1 (ko) * 2010-07-31 2014-03-18 엠앤케이홀딩스 주식회사 예측 블록 생성 장치
CA2937202C (en) * 2010-12-17 2019-11-26 Mitsubishi Electric Corporation Image coding device, image decoding device, image coding method, and image decoding method
WO2012087077A2 (ko) 2010-12-23 2012-06-28 삼성전자 주식회사 영상 예측 단위에 대한 인트라 예측 모드 부호화 방법 및 장치, 및 영상 예측 단위에 대한 인트라 예측 모드 복호화 방법 및 장치
JP5781313B2 (ja) * 2011-01-12 2015-09-16 株式会社Nttドコモ 画像予測符号化方法、画像予測符号化装置、画像予測符号化プログラム、画像予測復号方法、画像予測復号装置及び画像予測復号プログラム
JP5482735B2 (ja) * 2011-05-30 2014-05-07 株式会社Jvcケンウッド 画像復号装置、画像復号方法及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
CA2834191C (en) * 2011-05-31 2019-04-09 Panasonic Corporation Video encoding method, video encoding device, video decoding method, video decoding device, and video encoding/decoding device
US9532058B2 (en) * 2011-06-03 2016-12-27 Qualcomm Incorporated Intra prediction mode coding with directional partitions
US9654785B2 (en) * 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
WO2012172791A1 (ja) * 2011-06-13 2012-12-20 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置および画像符号化復号装置
WO2016204478A1 (ko) * 2015-06-15 2016-12-22 엘지전자(주) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2017065532A1 (ko) * 2015-10-13 2017-04-20 엘지전자(주) 비디오 신호의 인코딩, 디코딩 방법 및 장치

Also Published As

Publication number Publication date
KR101955051B1 (ko) 2019-03-06
AU2012270960B2 (en) 2017-02-16
KR20140033102A (ko) 2014-03-17
US20120328009A1 (en) 2012-12-27
TWI556628B (zh) 2016-11-01
JP6103408B2 (ja) 2017-03-29
EP2720461B1 (en) 2023-08-02
US11758155B2 (en) 2023-09-12
BR112013031624A2 (pt) 2017-06-13
AU2012270960A2 (en) 2014-01-23
US20210084310A1 (en) 2021-03-18
JP5386657B2 (ja) 2014-01-15
TW201701662A (zh) 2017-01-01
JPWO2012172791A1 (ja) 2015-02-23
JP5932733B2 (ja) 2016-06-08
BR112013031624A8 (pt) 2017-07-04
MY165837A (en) 2018-05-17
TWI602421B (zh) 2017-10-11
MX2013013909A (es) 2014-01-24
BR112013031624B1 (pt) 2022-07-19
RU2607246C2 (ru) 2017-01-10
CN103609110A (zh) 2014-02-26
US9860539B2 (en) 2018-01-02
CA2838214C (en) 2019-02-12
EP2720461A1 (en) 2014-04-16
US20190182492A1 (en) 2019-06-13
CN103609110B (zh) 2017-08-08
US10484692B2 (en) 2019-11-19
CA2838214A1 (en) 2012-12-20
RU2013154414A (ru) 2015-07-20
US20200045320A1 (en) 2020-02-06
WO2012172791A1 (ja) 2012-12-20
US10250887B2 (en) 2019-04-02
PL2720461T3 (pl) 2024-02-05
US11431989B2 (en) 2022-08-30
US10887606B2 (en) 2021-01-05
US20230370619A1 (en) 2023-11-16
JP2013258759A (ja) 2013-12-26
JP2016136789A (ja) 2016-07-28
AU2012270960A1 (en) 2014-01-09
EP2720461A4 (en) 2014-09-03
TW201306595A (zh) 2013-02-01
US20220353515A1 (en) 2022-11-03
US20180098075A1 (en) 2018-04-05

Similar Documents

Publication Publication Date Title
ES2961495T3 (es) Procedimiento de decodificación de imágenes y procedimiento de codificación de imágenes
ES2971526T3 (es) Procedimiento de descodificación de vídeo, dispositivo de descodificación de vídeo
ES2959874T3 (es) Procedimiento de codificación de imágenes, aparato de codificación de imágenes, procedimiento de decodificación de imágenes, aparato de decodificación de imágenes
ES2863625T3 (es) Señalización de banderas de bloque codificado (CBF) de luminancia-crominancia en codificación de vídeo
ES2908152T3 (es) Procedimiento de decodificación de imágenes
ES2844148T3 (es) Procedimiento de descodificación de imágenes, dispositivo de descodificación de imágenes
ES2805313T3 (es) Procedimiento de codificación de imágenes, procedimiento de descodificación de imágenes, aparato de codificación de imágenes, aparato de descodificación de imágenes y aparato de codificación / descodificación de imágenes
ES2781868T3 (es) Procedimiento de decodificación de imágenes, procedimiento de codificación de imágenes, dispositivo de decodificación de imágenes, dispositivo de codificación de imágenes y dispositivo de codificación/decodificación de imágenes
ES2784552T3 (es) Procedimiento de decodificación de imagen, aparato de decodificación de imagen
ES2780186T3 (es) Procedimiento de codificación de imágenes, procedimiento de decodificación de imágenes, dispositivo de codificación de imágenes, y dispositivo de decodificación de imágenes
ES2834902T3 (es) Método de decodificación de imagen, y dispositivo de decodificación de imágenes
ES2786503T3 (es) Método de filtrado, método de decodificación de imágenes en movimiento, método de codificación de imágenes en movimiento, aparato de decodificación de imágenes en movimiento, aparato de codificación de imágenes en movimiento y aparato de codificación/decodificación de imágenes en movimiento
ES2924280T3 (es) Procedimiento de descodificación de imágenes y aparato de descodificación de imágenes
ES2959039T3 (es) Aparato, procedimiento y programa para codificar imágenes en movimiento
ES2800049T3 (es) Procedimientos y aparatos para codificar y decodificar vídeo utilizando una descripción actualizada de memoria intermedia
ES2962519T3 (es) Procedimiento de decodificación de imágenes, procedimiento de codificación de imágenes
ES2865101T3 (es) Procedimiento de codificación de imágenes, procedimiento de decodificación de imágenes, dispositivo de codificación de imágenes, dispositivo de decodificación de imágenes y dispositivo de codificación/decodificación de imágenes
ES2871858T3 (es) Método de codificación de imágenes y dispositivo de codificación de imágenes
ES2669978T3 (es) Método de filtrado, dispositivo de codificación de imágenes dinámicas, dispositivo de decodificación de imágenes dinámicas y dispositivo de codificación/decodificación de imágenes dinámicas
ES2967302T3 (es) Aparato de codificación y decodificación de imágenes
ES2782227T3 (es) Procedimiento de codificación de imagen, procedimiento de decodificación de imagen, dispositivo de codificación de imagen, dispositivo de decodificación de imagen y dispositivo de codificación/decodificación de imagen
ES2754784T3 (es) Procedimiento de decodificación de vídeo, aparato de decodificación de vídeo
ES2908100T3 (es) Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes
ES2768573T3 (es) Procedimiento de codificación de imágenes, procedimiento de descodificación de imágenes, dispositivo de codificación de imágenes y dispositivo de descodificación de imágenes
JPWO2012090495A1 (ja) 画像符号化方法および画像復号方法