ES2908100T3 - Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes - Google Patents

Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes Download PDF

Info

Publication number
ES2908100T3
ES2908100T3 ES13827144T ES13827144T ES2908100T3 ES 2908100 T3 ES2908100 T3 ES 2908100T3 ES 13827144 T ES13827144 T ES 13827144T ES 13827144 T ES13827144 T ES 13827144T ES 2908100 T3 ES2908100 T3 ES 2908100T3
Authority
ES
Spain
Prior art keywords
unit
decoding
bit
data
arithmetic
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
ES13827144T
Other languages
English (en)
Inventor
Hisao Sasai
Takahiro Nishi
Youji Shibahara
Kyoko Tanikawa
Toshiyasu Sugio
Toru Matsunobu
Kengo Terada
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 ES2908100T3 publication Critical patent/ES2908100T3/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Auxiliary Devices For And Details Of Packaging Control (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Un procedimiento de decodificación de imagen de decodificación, en una base por bloque, de una imagen codificada incluida en una secuencia de bits, comprendiendo el procedimiento de decodificación de imagen: realizar la decodificación aritmética (S101) en un bloque actual que va a decodificarse; realizar la decodificación aritmética (S102) en una bandera de fin de corte que indica si el bloque actual se encuentra o no en el fin del corte, determinar (S103), basándose en la bandera de fin de corte decodificado, si el bloque actual se encuentra o no en un fin de un corte; realizar un primer procedimiento de terminación de decodificación aritmética (S104) cuando se determina que el bloque actual se encuentra en el fin del corte, comprendiendo dicho primer procedimiento de terminación de decodificación aritmética resetear un estado de probabilidad interna de la decodificación aritmética; y determinar (S105) si el bloque actual se encuentra o no en un fin de una pieza cuando se determina que el bloque actual no se encuentra en el fin del corte, siendo la pieza una unidad estructural de la imagen que es diferente del corte; caracterizado por realizar la decodificación aritmética (S106) en un penúltimo bit incluido en la secuencia de bits después del bloque actual y un segundo procedimiento de terminación de decodificación aritmética (S106), cuando se determina que el bloque actual no se encuentra en el fin del corte y cuando se determina que el bloque actual se encuentra en el fin de la pieza, en el que la decodificación aritmética (S106) del penúltimo bit siempre restaura un valor de 1, y en el que, cuando se realiza el segundo procedimiento de terminación de decodificación aritmética, se realiza el mismo procesamiento en el primer procedimiento de terminación de decodificación aritmética.

Description

DESCRIPCIÓN
Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes
rCampo técnico!
La presente invención se refiere a procedimientos de decodificación de instantáneas en movimiento y, en particular, se refiere a un procedimiento de decodificación aritmética.
Antecedentes de la técnica!
La norma de la codificación de vídeo de alta eficacia (HEVC), que es una norma de codificación de imágenes de la siguiente generación, se ha estudiado de diversas maneras para aumentar su eficiencia de codificación (véase la bibliografía no de patente (NPL) 1). Hay normas convencionales del sector de la normalización de telecomunicaciones de la unión internacional de telecomunicaciones (ITU-T) tipificadas por las normas H.26x, y normas del ISO/IEC tipificadas por MPEG-x. La última y más avanzada norma de codificación de imágenes se ha estudiado actualmente como una norma siguiente a la norma tipificada por H.264/AVC o MPEG-4 AVC (véase NPL 2).
En la norma de HVEC, se usa la codificación aritmética denominada codificación aritmética binaria adaptativa basada en contexto (CABAC) como la codificación por entropía.
ILista de citas!
[Bibliografía no de patente!
[NPL 1] Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 e ISO/IEC JTC1/SC29/WG11 10a reunión: Estocolmo, SE, 11-20 de julio de 2012, JCTVC-Jl003_d7, "High efficiency video coding (HEVC) text specification draft 8"
[NPL 2] Recomendación de la ITU-T H.264 "Advanced video coding for generic audiovisual services", marzo de 2010
Un documento de la técnica anterior relevante es: C-W HSU Y COL.: "AHG4/AHG9: Syntax for restricting slices and WPP",101. MPEG MEETING; 16-7-2012 - 20-7-2012; ESTOCOLMO; (GRUPO DE EXPERTOS DE IMÁGENES EN MOVIMIENTO O ISO/IEC JTC1/SC29/WG11), n.° m25361, 10 de julio de 2012 (10-07-2012).
ISumario de la invención!
IProblema técnico!
Sin embargo, un procedimiento de decodificación de imagen convencional tiene un problema de complejidad en la configuración para realizar el procesamiento de acuerdo con los procedimientos.
En vista de esto, la presente invención proporciona un procedimiento y aparato de decodificación de imagen que pueden decodificar imágenes con una configuración sencilla.
ISolución al problema!
Se define un procedimiento de decodificación de imagen de acuerdo con la presente invención en la reivindicación 1, y se define un aparato de decodificación de imagen de acuerdo con la presente invención en la reivindicación 4.
Estos aspectos generales y específicos pueden implementarse usando un sistema, un procedimiento, un circuito integrado, un programa informático, o un medio de grabación legible por ordenador tal como una memoria de solo lectura de disco compacto (CD-ROM), o cualquier combinación de sistemas, procedimientos, circuitos integrados, programas informáticos o medio de grabación legible por ordenador.
lEfectos ventajosos de la invención!
Un procedimiento de decodificación de imagen de acuerdo con la presente invención simplifica la configuración para decodificar imágenes.
rBreve descripción de los dibujos!
[Figura 1]
La Figura 1 es un diagrama de bloques que muestra una configuración de una unidad de decodificación por entropía.
[Figura 2]
La Figura 2 es un diagrama de flujo del procesamiento realizado por la unidad de decodificación por entropía. [Figura 3A]
La Figura 3a es un diagrama que muestra la sintaxis de corte.
[Figura 3B]
La Figura 3B es un diagrama que muestra la sintaxis de secuencia de bits en un corte.
[Figura 4]
La Figura 4 es un diagrama de bloques que muestra una configuración de una unidad de codificación por entropía.
[Figura 5]
La Figura 5 es un diagrama de flujo del procesamiento realizado por la unidad de codificación por entropía. [Figura 6]
La Figura 6 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de decodificación de imagen de acuerdo con la realización 1.
[Figura 7]
La Figura 7 es un diagrama de bloques que muestra un ejemplo de una configuración de una unidad de decodificación por entropía de acuerdo con la realización 1.
[Figura 8]
La Figura 8 es un diagrama de flujo de un ejemplo del procesamiento realizado por la unidad de decodificación por entropía de acuerdo con la realización 1.
[Figura 9]
La Figura 9 es un diagrama que muestra un ejemplo de sintaxis de corte de acuerdo con la realización 1.
[Figura 10]
La Figura 10 es un diagrama que muestra un ejemplo de sintaxis de secuencia de bits de acuerdo con una variación de la realización 1.
[Figura 11]
La Figura 11 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de codificación de imagen de acuerdo con la realización 2.
[Figura 12]
La Figura 12 es un diagrama de bloques que muestra un ejemplo de una configuración de una unidad de codificación por entropía de acuerdo con la realización 2.
[Figura 13]
La Figura 13 es un diagrama de flujo de un ejemplo del procesamiento realizado por la unidad de codificación por entropía de acuerdo con la realización 2.
[Figura 14A]
La Figura 14A es un diagrama de flujo de un procedimiento de decodificación de imagen de acuerdo con una realización de la presente invención.
[Figura 14B]
La Figura 14B es un diagrama que muestra una configuración de un aparato de decodificación de imagen de acuerdo con una realización de la presente invención.
[Figura 15A]
La Figura 15A es un diagrama de flujo de un procedimiento de codificación de imagen de acuerdo con una realización no cubierta por la invención reivindicada.
[Figura 15B]
La Figura 15b es un diagrama que muestra una configuración de un aparato de codificación de imagen de acuerdo con una realización no cubierta por la invención reivindicada.
[Figura 16]
La Figura 16 es un diagrama de configuración global de un sistema de suministro de contenido que proporciona servicios de distribución de contenido.
[Figura 17]
La Figura 17 muestra una configuración global de un sistema de difusión digital.
[Figura 18]
La Figura 18 muestra un diagrama de bloques que ilustra un ejemplo de una configuración de una televisión. [Figura 19]
La Figura 19 muestra 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 en un medio de grabación que es un disco óptico.
[Figura 20]
La Figura 20 muestra un ejemplo de una configuración de un medio de grabación que es un disco óptico.
[Figura 21A]
La Figura 21a muestra un ejemplo de un teléfono celular.
[Figura 21B]
La Figura 21b es un diagrama de bloques que muestra un ejemplo de una configuración de un teléfono celular.
[Figura 22]
La Figura 22 ilustra una estructura de los datos multiplexados.
[Figura 23]
La Figura 23 muestra esquemáticamente cómo se multiplexa cada flujo en datos multiplexados.
[Figura 24]
La Figura 24 muestra cómo se almacena un flujo de vídeo en un flujo de paquetes de PES en más detalle.
[Figura 25]
La Figura 25 muestra una estructura de paquetes de TS y paquetes de fuente en los datos multiplexados.
[Figura 26]
La Figura 26 muestra una estructura de datos de una PMT.
[Figura 27]
La Figura 27 muestra una estructura interna de información de datos multiplexados.
[Figura 28]
La Figura 28 muestra una estructura interna de información de atributo de flujo.
[Figura 29]
La Figura 29 muestra etapas para identificar datos de vídeo.
[Figura 30]
La Figura 30 muestra un ejemplo de una configuración de un circuito integrado para implementar el procedimiento de codificación de instantáneas en movimiento y el procedimiento de decodificación de instantáneas en movimiento de acuerdo con cada una de las realizaciones.
[Figura 31]
La Figura 31 muestra una configuración para conmutar entre frecuencias de accionamiento.
[Figura 32]
La Figura 32 muestra etapas para identificar datos de vídeo y conmutación entre frecuencias de accionamiento.
[Figura 33]
La Figura 33 muestra un ejemplo de una tabla de correspondencia en la que están asociadas normas de datos de vídeo con frecuencias de accionamiento.
[Figura 34A]
La Figura 34A es un diagrama que muestra un ejemplo de una configuración para compartir un módulo de una unidad de procesamiento de señal.
[Figura 34B]
La Figura 34B es un diagrama que muestra otro ejemplo de una configuración para compartir un módulo de la unidad de procesamiento de señal.
Descripción de las realizaciones!
(Conocimiento subyacente que forma la base de la presente invención)
En relación con el procedimiento de decodificación de imagen y el procedimiento de codificación de imagen convencionales, los inventores han hallado el problema indicado a continuación.
En la codificación aritmética de acuerdo con CABAC, se introduce ctx-Idx, que es un índice de un modelo de probabilidad denominado contexto, y binVal, que es una señal binaria que va a codificarse, y se determina una cadena de código de salida a través de las actualizaciones de codIRange, codILow, firstBitFlag y BitsOutstanding, que son información que indica estados de probabilidad interna.
Para los valores iniciales de la información del estado de probabilidad interna, se establece codIRange=510, codILow=0, first-BitFlag=1 y BitsOutstanding=0.
En contraste, en la decodificación aritmética que corresponde a CABAC, se introduce ctxIdx que es un índice del modelo de probabilidad, ctxIdxTable que es información asociada, y bypassFlag que indica si se ha aplicado decodificación de desvío a una cadena de código actual, y se emite un binario de señal binaria decodificada a través de las actualizaciones de codIRange y codIOffset que son información que indica los estados de probabilidad interna.
Como se ha descrito anteriormente, en la codificación y decodificación aritmética en CABAC, se realiza codificación o decodificación a través de las actualizaciones de los estados de probabilidad interna. Adicionalmente, cuando se inicia el procesamiento de CABAC en un punto distinto del comienzo en el procesamiento, hay casos en los que el estado de probabilidad interna de la misma unidad estructural (una unidad que forma una imagen y también denominada una unidad de procesamiento) puede diferenciarse en la codificación y decodificación. Esto dificulta la codificación o decodificación apropiada de las imágenes. Por lo tanto, se realiza la terminación en la codificación y decodificación.
En un procedimiento desvelado en NPL 1, en la codificación, se realiza la codificación aritmética en una bandera de fin de corte (end_of_slice) que indica un valor de 1, la bandera de fin de corte está integrada en el fin de un corte, y se realiza la terminación. En la decodificación, se realiza la decodificación aritmética en la bandera de fin de corte, y se realiza la terminación. Por consiguiente, incluso cuando se inicia CABAC (codificación aritmética o decodificación aritmética) en un punto distinto del comienzo en el procesamiento, si la posición de inicio es el comienzo de un corte, es posible tener el mismo estado de probabilidad interna en la codificación y decodificación.
Sin embargo, la norma de HVEC usa, distintos de los cortes, unidades estructurales denominadas piezas para procesamiento paralelo, y unidades estructurales (en lo sucesivo, denominadas líneas de CTU) para permitir el procesamiento paralelo denominado procesamiento paralelo de frente de onda (WPP). En la norma de HVEC, no se realiza la terminación en los cortes y en las líneas de CTU.
La Figura 1 es un diagrama de bloques que muestra una configuración de una unidad de decodificación por entropía.
Una unidad 800 de decodificación por entropía realiza decodificación aritmética de CABAC, e incluye una unidad 801 de decodificación de CTU, una unidad 802 de determinación de fin de corte, una unidad 803 de determinación de fin de subflujo, una unidad 804 de búsqueda de comienzo de bytes y una unidad 805 de terminación.
La Figura 2 es un diagrama de flujo del procesamiento realizado por la unidad 800 de decodificación por entropía.
En primer lugar, la unidad 801 de decodificación de CTU en la unidad 800 de decodificación por entropía realiza la decodificación aritmética en una unidad de árbol de codificación (CTU) en una secuencia de bits BS (etapa S801). Una CTU se refiere a un bloque que forma una instantánea. Posteriormente, la unidad 802 de determinación de fin de corte realiza la decodificación aritmética en una bandera de fin de corte (end_of_do_flag) (etapa S802). La unidad 802 de determinación de fin de corte a continuación determina si la bandera de fin de corte decodificado (end_of_slice_flag) indica o no 0 (etapa S803). Cuando se determina que la bandera de fin de corte no indica 0 (No en la etapa S803), la unidad 805 de terminación realiza la terminación de la decodificación aritmética (terminación de decodificación aritmética) (etapa S804). Por otra parte, cuando se determina que la bandera de fin de corte indica 0 (Sí en la etapa S803), la unidad 803 de determinación de fin de subflujo determina si la CTU que se decodificó aritméticamente inmediatamente antes se encuentra o no en el fin de un subflujo (etapa S805). Un subflujo se refiere a la pieza o a la línea de CTU anteriormente descritas. La línea de CTU es una unidad estructural que incluye las CTU horizontalmente alineadas.
En este punto, cuando se determina que la CTU se encuentra en el fin de un subflujo (Sí en la etapa S805), la unidad 804 de búsqueda de comienzo de bytes busca el comienzo de un byte (búsqueda de comienzo de byte) (etapa S806). Esta búsqueda de comienzo de byte se refiere al procesamiento de búsqueda de una secuencia de bits para el comienzo de una unidad de bytes mientras se omite la cadena de bits. Por otra parte, cuando se determina que la CTU no se encuentra en el fin de un subflujo (No en la etapa S805) o después de la etapa S806, la unidad 800 de decodificación por entropía repite el procesamiento de la etapa 801 en una siguiente CTU.
La Figura 3A es un diagrama que muestra la sintaxis de corte.
El corte incluye los datos 851 que indican una CTU codificada (coding_tree_unit()) y una bandera 852 de fin de corte codificada aritméticamente (end_of_slice_flag) para determinar el fin de un corte. El corte también incluye una cadena 854 de bits predeterminada (byte_alignment()) cuando se satisface una condición 853. La condición 853 es una condición de que la CTU indicada por los datos 851 se encuentra en el fin de un subflujo.
La Figura 3B es un diagrama que muestra la sintaxis de la cadena 854 de bits.
La cadena 854 de bits incluye un bit 855 que indica un valor de 1 (bit_equal_to_one) y tantos bits 856 que indican valores de 0 (bit_equal_to_zero) como sean necesarios. La cadena 854 de bits está incluida en una secuencia de bits de modo que el número de bits del subflujo codificado es igual a un múltiplo integral de una unidad de bytes. La cadena 854 de bits no se ha codificado aritméticamente, y es un código que indica un valor de 0 o 1. En la búsqueda de comienzo de byte, se omite la cadena 854 de bits.
La Figura 4 es un diagrama de bloques que muestra una configuración de una unidad de codificación por entropía.
Una unidad 900 de codificación por entropía realiza la codificación aritmética de CABAC, e incluye una unidad 901 de codificación de CTU, una unidad 902 de codificación de fin de corte, una unidad 903 de determinación de fin de subflujo, una unidad 904 de alineación de bytes y una unidad 905 de terminación.
La Figura 5 es un diagrama de flujo del procesamiento realizado por la unidad 900 de codificación por entropía.
En primer lugar, la unidad 901 de codificación de CTU en la unidad 900 de codificación por entropía realiza la codificación aritmética en una CTU en una señal actual que va a codificarse (etapa S901). Posteriormente, la unidad 902 de determinación de fin de corte realiza la codificación aritmética en una bandera de fin de corte (end_of_slice_flag) (etapa S902). La unidad 902 de codificación de fin de corte a continuación determina si la bandera de fin de corte (end_of_slice_flag) indica o no 0 (etapa S903). En este punto, cuando se determina que la bandera de fin de corte no indica 0 (No en la etapa S903), la unidad 905 de terminación realiza la terminación de la codificación aritmética (terminación de codificación aritmética) (etapa S904). Por otra parte, cuando se determina que la bandera de fin de corte indica 0 (Sí en la etapa S903), la unidad 903 de determinación de fin de subflujo determina si la CTU que se codificó aritméticamente inmediatamente antes se encuentra o no en el fin de un subflujo (etapa S905).
En este punto, cuando se determina que la CTU se encuentra en el fin de un subflujo (Sí en S905), la unidad 904 de alineación de bytes realiza la alineación de bytes (etapa S906). Cuando se determina que la CTU no se encuentra en el fin de un subflujo (No en la etapa S905) o después de la etapa S906, la unidad 900 de codificación por entropía repite el procesamiento de S901 en una siguiente CTU.
En el procedimiento de decodificación de imagen y el procedimiento de codificación de imagen anteriormente descritos, no se realiza la terminación después de realizar la decodificación aritmética o codificación aritmética en la CTU que se encuentra en el fin de un subflujo. Por lo tanto, por ejemplo, cuando se procesa una pluralidad de subflujos en paralelo, el procesamiento se inicia en un punto distinto del comienzo en una secuencia de bits BS o una señal que va a codificarse. Como resultado, el estado de probabilidad interna de CABAC que corresponde a un subflujo dado puede diferir en la codificación y decodificación. Más específicamente, no puede realizarse codificación y decodificación de la imagen correcta.
Para resolver un problema de este tipo, cada corte puede dividirse en unidades más pequeñas sin usar subflujos. Sin embargo, en un caso de este tipo, se reduce la eficacia de la codificación, que es otro problema.
Otro procedimiento para resolver el problema es simplemente realizar la terminación después de realizar la decodificación aritmética o codificación aritmética en una CTU que se encuentra en el fin de un subflujo. Sin embargo, en este caso, es necesaria una unidad de procesamiento adicional para realizar la terminación en el fin del subflujo, lo que da como resultado una configuración complicada.
Para resolver tales problemas, un procedimiento de decodificación de imagen de acuerdo con un aspecto de la presente invención es un procedimiento de decodificación de imagen de decodificación, en una base por bloque, de una imagen codificada incluida en una secuencia de bits. El procedimiento de decodificación de imagen incluye: realizar la decodificación aritmética en un bloque actual que va a decodificarse; determinar si el bloque actual se encuentra o no en un fin de un corte; determinar si el bloque actual se encuentra o no en un fin de un subflujo cuando se determina que el bloque actual no se encuentra en el fin del corte, siendo el subflujo una unidad estructural de la imagen que es diferente del corte; y realizar la decodificación aritmética en un penúltimo bit y realizar la terminación de decodificación aritmética como la primera terminación, cuando se determina que el bloque actual se encuentra en el fin del subflujo.
Con esto, incluso cuando un bloque aritméticamente decodificado no se encuentra en el fin de un corte, si el bloque se encuentra en el fin de un subflujo, se realiza la terminación de decodificación aritmética. Esto permite que se decodifique en paralelo apropiadamente una pluralidad de subflujos en una secuencia de bits. Adicionalmente, es posible decodificar apropiadamente una secuencia de bits codificados con menos reducción en la eficacia, usando cortes y subflujos. Adicionalmente, se realiza el procesamiento, que incluye la decodificación aritmética del penúltimo bit y la terminación, en el fin de un subflujo. Por lo tanto, cuando se realiza el procesamiento, que incluye la decodificación aritmética de una bandera y la terminación, en el fin de un corte, puede realizarse el procesamiento común en el fin de un subflujo y el fin de un corte. Más específicamente, puesto que no es necesaria una unidad de procesamiento adicional para el procesamiento realizado en el fin de un subflujo, pueden decodificarse las imágenes con una configuración sencilla.
Adicionalmente, el procedimiento de decodificación de imagen incluye adicionalmente realizar la terminación de decodificación aritmética como la segunda terminación cuando se determina que el bloque actual se encuentra en el fin del corte, y que cuando se realiza la primera terminación, se realiza el mismo procesamiento que la segunda terminación.
Con esto, la terminación realizada en el fin de un corte es la misma que la terminación realizada en el fin de un subflujo. Esto permite una configuración más sencilla para decodificar imágenes.
Adicionalmente, el procedimiento de decodificación de imagen incluye adicionalmente realizar la decodificación aritmética en una bandera de fin de corte que indica si el bloque actual se encuentra o no en el fin del corte, y que en la determinación de si o el bloque actual se encuentra o no en un fin de un corte, se determina que el bloque actual se encuentra en el fin del corte cuando la bandera de fin de corte en la que se ha realizado decodificación aritmética indica un valor predeterminado, y en la realización de la decodificación aritmética en un penúltimo bit, se restaura un mismo valor que el valor predeterminado por la decodificación aritmética. En la realización de la decodificación aritmética en un penúltimo bit, se restaura un valor de 1 por la decodificación aritmética.
Por consiguiente, se ejecuta la terminación realizada en el fin de un corte y la terminación realizada en el fin de un subflujo cuando se obtiene el mismo valor en la decodificación aritmética de 1 bit. Por lo tanto, puede compartirse más procesamiento en el procesamiento realizado en el fin de un subflujo y el fin de un corte.
Adicionalmente, puede ser que el procedimiento de decodificación de imagen incluya adicionalmente omitir una cadena de bits después de realizar la primera determinación, escribiéndose la cadena de bits en la secuencia de bits de modo que una longitud de bits que incluye el subflujo y el penúltimo bit es igual a un múltiplo de N bits predeterminados.
Con esto, por ejemplo, se realiza la búsqueda del comienzo de byte, lo que permite la decodificación apropiada de cada unidad de bytes.
Adicionalmente, puede ser que, en la realización de la decodificación aritmética en un penúltimo bit, se realice la decodificación aritmética en un primer bit de la cadena de bits, como el penúltimo bit.
Por consiguiente, no es necesario incluir un bit adicional en una secuencia de bits como un penúltimo bit; y, por lo tanto, es posible decodificar apropiadamente una secuencia de bits codificados con menos reducción en la eficacia.
Adicionalmente, para resolver los problemas, un procedimiento de codificación de imagen de acuerdo con un aspecto de la presente divulgación es un procedimiento de codificación de imagen de la codificación de una imagen en una base por bloque para generar una secuencia de bits. El procedimiento de codificación de imagen incluye: realizar la codificación aritmética en un bloque actual que va a codificarse; determinar si el bloque actual se encuentra o no en un fin de un corte; determinar si el bloque actual se encuentra o no en un fin de un subflujo cuando se determina que el bloque actual no se encuentra en el fin del corte, siendo el subflujo una unidad estructural de la imagen que es diferente del corte; y realizar la codificación aritmética en un penúltimo bit y realizar la terminación de codificación aritmética como la primera terminación, cuando se determina que el bloque actual se encuentra en el fin del subflujo.
Con esto, incluso si un bloque codificado aritméticamente no se encuentra en el fin de un corte, si el bloque se encuentra en el fin de un subflujo, se realiza la terminación de codificación aritmética. Esto permite que se codifique en paralelo apropiadamente una pluralidad de subflujos en una secuencia de bits. Adicionalmente, es posible suprimir una reducción en la eficiencia de codificación usando cortes y subflujos. Adicionalmente, se realiza el procesamiento, que incluye la codificación aritmética del penúltimo bit y la terminación, en el fin del subflujo. Por lo tanto, cuando se realiza el procesamiento, que incluye la codificación aritmética de una bandera y la terminación, en el fin de un corte, puede realizarse el procesamiento común al final del subflujo y al final del corte. Más específicamente, puesto que no es necesaria una unidad de procesamiento adicional para el procesamiento realizado en el fin de un subflujo, pueden codificarse las imágenes con una configuración sencilla.
Adicionalmente, puede ser que el procedimiento de codificación de imagen incluye adicionalmente realizar la terminación de codificación aritmética como la segunda terminación cuando se determina que el bloque actual se encuentra en el fin del corte, y que cuando se realiza la primera terminación, se realiza el mismo procesamiento que la segunda terminación.
Con esto, la terminación realizada en el fin de un corte es la misma que la terminación realizada en el fin de un subflujo. Esto permite una configuración más sencilla para codificar imágenes.
Adicionalmente, puede ser que el procedimiento de codificación de imagen incluya adicionalmente: realizar la codificación aritmética en una bandera de fin de corte que indica si el bloque actual se encuentra o no en el fin del corte, y que en la determinación de si el bloque actual se encuentra en un fin de un corte, se determina que el bloque actual se encuentra en el fin del corte cuando la bandera de fin de corte indica un valor predeterminado, y en la realización de la decodificación aritmética en un penúltimo bit, se realiza la codificación aritmética en el penúltimo bit que indica un mismo valor que el valor predeterminado. Por ejemplo, puede ser que, en la realización de la codificación aritmética en un penúltimo bit, se realiza la codificación aritmética en el penúltimo bit que indica un valor de 1.
Por consiguiente, se ejecuta la terminación realizada en el fin de un corte y la terminación realizada en el fin de un subflujo cuando se realiza la codificación aritmética en 1 bit que indica el mismo valor. Por lo tanto, puede compartirse más procesamiento en el procesamiento realizado en el fin del subflujo y el fin del corte.
Adicionalmente, puede ser que el procedimiento de codificación de imagen incluya adicionalmente escribir una cadena de bits en la secuencia de bits después de realizar la primera terminación de modo que una longitud de bits que incluye el subflujo y el penúltimo bit sea igual a un múltiplo de los N bits predeterminados.
Con esto, por ejemplo, es posible realizar la codificación apropiadamente de cada unidad de bytes.
Adicionalmente, puede ser que, en la realización de la codificación aritmética en un penúltimo bit, se realice la codificación aritmética en un primer bit de la cadena de bits, como el penúltimo bit.
Por consiguiente, no es necesario incluir un bit adicional en una secuencia de bits como un penúltimo bit; y, por lo tanto, es posible suprimir una reducción en la eficacia de codificación.
Estos aspectos generales y específicos pueden implementarse usando un sistema, un procedimiento, un circuito integrado, un programa informático, o un medio de grabación legible por ordenador tal como un CD-ROM, o cualquier combinación de sistemas, procedimientos, circuitos integrados, programas informáticos, o medio de grabación legible por ordenador.
En lo sucesivo, se describen específicamente realizaciones con referencia a los dibujos.
Cada una de las realizaciones descritas a continuación muestra un ejemplo general o específico. Los valores numéricos, formas, materiales, elementos estructurales, la disposición y conexión de los elementos estructurales, etapas, el orden de procesamiento de las etapas, etc., mostrados en las siguientes realizaciones son meros ejemplos, y, por lo tanto, no limitan el ámbito de las reivindicaciones. Por lo tanto, entre los elementos estructurales en las siguientes realizaciones, elementos estructurales no indicados en ninguna de las reivindicaciones independientes se describen como elementos estructurales arbitrarios. En la siguiente descripción, el término "codificación" puede referirse a "codificación".
(Realización 1)
La Figura 6 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de decodificación de imagen de acuerdo con la realización 1.
Un aparato 100 de decodificación de imagen de acuerdo con la realización 1 decodifica una secuencia de bits BS que son datos de imagen de codificados por compresión. Por ejemplo, el aparato 100 de decodificación de imagen decodifica la secuencia de bits BS en una base por bloques. Más específicamente, el aparato 100 de decodificación de imagen restaura datos de imagen realizando la decodificación de longitud variable, cuantificación inversa, transformada inversa y otras en un bloque actual que va a codificarse.
Como se muestra en la Figura 6, el aparato 100 de decodificación de imagen incluye una unidad 110 de decodificación por entropía, una unidad 120 de cuantificación inversa y transformada inversa, un sumador 125, un filtro 130 de bucle, una memoria 140, una unidad 150 de intra predicción, una unidad 160 de compensación de movimiento y un conmutador 170 de selector intra/inter.
La unidad 110 de decodificación por entropía realiza la decodificación de longitud variable en una secuencia de bits BS, y restaura, por bloque, coeficientes cuantificados en el bloque. La unidad 110 de decodificación por entropía obtiene datos de movimiento de la secuencia de bits BS, y emite los datos de movimiento obtenidos a la unidad 160 de compensación de movimiento.
La unidad 120 de cuantificación inversa y transformada inversa restaura coeficientes de transformada realizando cuantificación inversa en los coeficientes cuantificados restaurados por la unidad 110 de decodificación por entropía. La unidad 120 de cuantificación inversa y transformada inversa realiza transformada inversa (transformada de frecuencia inversa) en los coeficientes de transformada restaurados. Por consiguiente, se restaura una señal de error de predicción que corresponde a uno diferente de los bloques en la secuencia de bits BS.
El sumador 125 genera una imagen decodificada añadiendo la señal de error de predicción restaurada y una señal de predicción.
El filtro 130 de bucle realiza filtración de bucle, tal como filtración de desbloqueo, en la imagen decodificada generada. La imagen decodificada en la que se ha realizado filtración de bucle se emite como una señal decodificada.
La memoria 140 es una memoria para almacenar imágenes de referencia que van a usarse para compensación de movimiento. Más específicamente, la memoria 140 almacena, como una imagen de referencia, una imagen decodificada en la que se ha realizado filtración de bucle.
La unidad 150 de intra predicción genera una señal de predicción (señal de intra predicción) realizando intra predicción de acuerdo con un modo de intra predicción. Más específicamente, la unidad 150 de intra predicción se refiere a imágenes vecinas a un bloque actual que va a decodificarse en la imagen decodificada generada por el sumador 125, para realizar intra predicción en el bloque actual. Por consiguiente, la unidad 150 de intra predicción genera una señal de intra predicción.
La unidad 160 de compensación de movimiento genera una señal de predicción (señal de inter predicción) del bloque actual realizando compensación de movimiento basándose en los datos de movimiento emitidos desde la unidad 110 de decodificación por entropía.
El conmutador 170 de selector intra/inter selecciona la señal de intra predicción o la señal de inter predicción, y emite la señal seleccionada al sumador 125 como una señal de predicción.
Con la configuración anterior, el aparato 100 de decodificación de imagen de acuerdo con la realización 1 decodifica datos de imagen codificados por compresión.
En este punto, la unidad 110 de decodificación por entropía en el aparato 100 de decodificación de imagen de acuerdo con la realización 1, realiza la decodificación de longitud variable en una secuencia de bits BS realizando la decodificación aritmética en la secuencia de bits BS.
En la decodificación aritmética realizada por la unidad 110 de decodificación por entropía de acuerdo con la realización 1, la secuencia de bits BS puede decodificarse apropiadamente tanto en procesamiento paralelo como en procesamiento en serie. Por lo tanto, cuando se usan subflujos y es necesario procesamiento de alta velocidad en la HEVC, la implementación de la decodificación aritmética de acuerdo con la realización 1 es altamente beneficiosa.
En lo sucesivo, se proporciona una descripción detallada de la decodificación aritmética realizada por la unidad 110 de decodificación por entropía.
La Figura 7 es un diagrama de bloques que muestra un ejemplo de una configuración de la unidad 110 de decodificación por entropía de acuerdo con la realización 1. La unidad 110 de decodificación por entropía de acuerdo con la realización 1 incluye una unidad 111 de decodificación de CTU, una unidad 112 de determinación de fin de corte, una unidad 113 de determinación de fin de subflujo, una unidad 116 de terminación de subflujo, una unidad 114 de búsqueda de comienzo de bytes y una unidad 115 de terminación. La unidad 110 de decodificación por entropía restaura, a partir de una secuencia de bits BS, datos decodificados que incluyen, por ejemplo, coeficientes cuantificados y una señal de terminación de procesamiento de corte.
La Figura 8 es un diagrama de flujo de un ejemplo del procesamiento realizado por la unidad 110 de decodificación por entropía de acuerdo con la realización 1.
En primer lugar, la unidad 111 de decodificación de CTU realiza la decodificación aritmética en una CTU (coding_tree_unit()) en una secuencia de bits BS, de acuerdo con un procedimiento predeterminado (etapa S101). En este punto, una CTU se refiere a una unidad de codificación predeterminada en una instantánea, y es, por ejemplo, un bloque que incluye 16 x 16 píxeles, 32 x 32 pixeles o 64 x 64 píxeles. Una CTU codificada incluida en la secuencia de bits BS es un conjunto de información que incluye, por ejemplo, información en un procedimiento de generación de una imagen de predicción (señal de predicción) de la CTU e información en una señal (coeficientes cuantificados) obtenida transformando y cuantificando una señal de error de predicción que es una diferencia entre la señal de predicción y una imagen original.
Posteriormente, la unidad 112 de determinación de fin de corte realiza la decodificación aritmética en una bandera de fin de corte (end_of_slice_flag) que india si la CTU decodificada aritméticamente en la etapa S101 se encuentra o no en el fin de un corte (etapa S102). Por ejemplo, los cortes son regiones obtenidas dividiendo una instantánea en puntos de división proporcionados en orden de exploración por filas cuando la instantánea se procesa en una base por CTU. Adicionalmente, cuando la bandera de fin de corte indica 1, indica que la CTU que corresponde a la bandera, es decir, la CTU que se decodificó aritméticamente inmediatamente antes, se encuentra en el fin de un corte. Cuando la bandera de fin de corte indica 0, indica que la CTU no se encuentra en el fin de un corte.
La unidad 112 de determinación de fin de corte a continuación determina si la bandera de fin de corte (end_of_slice_flag) indica o no 0 (etapa S103). En este punto, cuando se determina que la bandera de fin de corte indica 1, pero no 0, es decir, la CTU se encuentra en el fin de un corte (No en la etapa S103), la unidad 115 de terminación realiza la terminación de decodificación aritmética (etapa S104). La terminación de decodificación aritmética se refiere al procesamiento en el que se ajusta un puntero de secuencia de bits para permitir la decodificación de una siguiente señal en la secuencia de bits BS sin renormalización del estado de probabilidad interna de la decodificación aritmética. En la terminación, por ejemplo, pueden leerse adicionalmente siete bits de la secuencia de bits BS. Adicionalmente, la unidad 115 de terminación emite una señal que indica que la CTU se encuentra en el fin de un corte (señal de terminación de procesamiento de corte). Por ejemplo, se usa la señal de terminación de procesamiento de corte para notificar la ejecución del procesamiento de un siguiente corte.
Por otra parte, cuando se determina que la bandera de fin de corte indica 0 (Sí en la etapa S103), es decir, cuando la CTU que se decodificó aritméticamente inmediatamente antes no se encuentra en el fin de un corte, la unidad 113 de determinación de fin de subflujo determina si la CTU se encuentra o no en el fin de un subflujo (etapa S105).
El subflujo se refiere a, por ejemplo, una unidad de procesamiento, tal como una pieza o una línea de CTU. Las piezas son bloques obtenidos dividiendo una instantánea vertical y/u horizontalmente. Una pieza que incluye una o más CTU. Adicionalmente, puesto que puede iniciarse la codificación/decodificación desde el comienzo de una pieza, las piezas son unidades estructurales que pueden usarse en procesamiento paralelo. Adicionalmente, las líneas de CTU son unidades estructurales obtenidas dividiendo un corte o una instantánea en líneas. En el procedimiento denominado como WPP, cuando se inicia el procesamiento desde el final izquierdo de una instantánea, se usa la información de contexto (información de probabilidad) del final de la CTU ubicada en la parte superior derecha de una CTU actual que va a codificarse aritméticamente o decodificarse aritméticamente como la probabilidad inicial de la CTU actual. En WPP, puede iniciarse la codificación aritmética o decodificación aritmética de la CTU actual cuando se completa el procesamiento de la CTU desde la que se obtiene la probabilidad inicial. Por lo tanto, puede procesarse una pluralidad de líneas de CTU en paralelo (el procesamiento detallado puede ser similar al de NPL 1).
En este punto, por ejemplo, cuando el subflujo es una pieza, la unidad 113 de determinación de fin de subflujo compara, en la etapa S105, el ID de pieza de la CTU que se decodificó aritméticamente inmediatamente antes con el ID de pieza de una siguiente CTU, para determinar si son o no diferentes. Por consiguiente, se determina si la CTU que se decodificó aritméticamente inmediatamente antes se encuentra o no en el final de una pieza (véase la Figura 9 que se describirá más adelante). El ID de pieza se refiere a la información interna para distinguir a qué pieza pertenece la CTU. Más específicamente, cuando los dos ID de pieza son diferentes, la unidad 113 de determinación de fin de subflujo determina que la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el fin de un subflujo. Adicionalmente, cuando el subflujo es una línea de CTU, la unidad 113 de determinación de fin de subflujo determina, en la etapa S105, si una CTU siguiente a la CTU que se decodificó aritméticamente inmediatamente antes se encuentra o no en el final de una instantánea. En el caso en el que una instantánea se divide en piezas, se determina si la siguiente CTU se encuentra o no en el final izquierdo de una pieza. Por consiguiente, se determina si la CTU que se decodificó aritméticamente inmediatamente antes se encuentra o no en el final de una línea de CTU (véase la Figura 9 que se describirá más adelante). Más específicamente, cuando la siguiente CTU se encuentra en el final izquierdo de una instantánea (o una pieza), la unidad 113 de determinación de fin de subflujo determina que la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el final de una línea de CTU.
Cuando se determina en la etapa S105 que la CTU se encuentra en el fin de un subflujo (Sí en la etapa S105), la unidad 116 de terminación de subflujo realiza la decodificación aritmética en 1 bit que indica el fin de un subflujo (penúltimo bit), y realiza la terminación de subflujo de la decodificación aritmética (terminación de subflujo de decodificación aritmética) (etapa S106). La decodificación aritmética del penúltimo bit siempre restaura un valor de 1. En otras palabras, se codifica aritméticamente con antelación un penúltimo bit que indica un valor de 1 y se incluye en una secuencia de bits BS de manera que el penúltimo bit se sitúa después de la CTU que se encuentra en el fin de un subflujo. Adicionalmente, la terminación de subflujo de la decodificación aritmética es un procesamiento similar a la terminación de decodificación aritmética realizada por la unidad 115 de terminación en la etapa S104.
Después de que se realiza la terminación de subflujo de decodificación aritmética, la unidad 114 de búsqueda de comienzo de bytes realiza la búsqueda de comienzo de byte que es el procesamiento para buscar el comienzo de una siguiente unidad de bytes y que es similar a la etapa S806 en la Figura 2 (etapa S107). Más específicamente, puesto que puede iniciarse el procesamiento desde el comienzo de las unidades de bytes, la unidad 114 de búsqueda de comienzo de bytes busca el comienzo de una siguiente unidad de bytes, y mueve un puntero de secuencia de bits al punto de comienzo. El punto de comienzo de la unidad de bytes buscada es el punto de comienzo de un siguiente subflujo. Después de que se determina en la etapa S105 que la CTU no se encuentra en el fin de un subflujo (No en la etapa S105), o después de la búsqueda de comienzo de byte en la etapa S107, la unidad 110 de decodificación por entropía repite el procesamiento de la etapa S101 en una siguiente CTU.
La Figura 9 es un diagrama que muestra un ejemplo de sintaxis de corte de acuerdo con la realización 1.
El corte de acuerdo con la realización 1 incluye los datos 181 que indican una CTU codificada (coding_tree_unit()) y una bandera de fin de corte codificada aritméticamente 182 (end_of_slice_flag) para determinar el fin del corte. El corte también incluye el penúltimo bit 184 codificado aritméticamente (end_of_sub_stream_one_bit) y una cadena 185 de bits predeterminada (byte_alignment()), cuando se satisface una condición 183.
En el corte de acuerdo con la realización 1, los datos 181, la bandera 182 de fin de corte, la condición 183 y la cadena 185 de bits, respectivamente, tienen la estructura similar a la de los datos 851, la bandera 852 de fin de corte, la condición 853 y la cadena 854 de bits en el corte mostrado en la Figura 3A. El corte de acuerdo con la realización 1 es diferente del corte mostrado en la Figura 3A en que se incluye el penúltimo bit 184 (end_of_sub_stream_one_bit) en el que se ha realizado la codificación aritmética.
La condición 183 es una condición de que la CTU indicada por los datos 181 se encuentra en el fin de un subflujo. Más específicamente, la condición 183 es una primera condición de que la CTU no se encuentra en el fin de un corte, sino al final de una pieza, o una segunda condición de que la CTU no se encuentra en el fin de un corte, sino en el fin de una línea de CTU.
Más específicamente, la primera condición es una condición de que la bandera de fin de corte (end_of_slice_flag) indica 0, tiles_enabled_flag es verdadero y TileID[x] y TileID[x-1] son diferentes. Cuando tiles_endabled_flag es verdadero, tiles_enabled_flag indica que el subflujo es una pieza. TileID[x] indica el ID de pieza de una CTU siguiente a la CTU indicada por los datos 181. TileID[x-1] indica el ID de pieza de la CTU indicada por los datos 181.
La segunda condición es una condición de que la bandera de fin de corte (end_of_slice_flag) indica 0, entropy_coding_sync_enabled_flag es verdadero, y la CTU siguiente a la CTU indicada por los datos 181 se encuentra en el final izquierdo de una instantánea. Cuando entropy_coding_sync_enabled_flag es verdadero, entropy_coding_sync_enabled_flag indica que el subflujo es una línea de CTU. Cuando la siguiente CTU se encuentra en el fin izquierdo de una instantánea, y cuando la dirección de la CTU siguiente a la CTU indicada por los datos 181 se divide entre la anchura horizontal de la instantánea, el resto es 0. Se usa la CTB (Ctb) en la condición 183 con el mismo significado que CTU.
La unidad 110 de decodificación por entropía realiza la decodificación aritmética en los datos 181 (coding_tree_unit()) y en la bandera 182 de fin de corte (end_of_slice_flag). Posteriormente, la unidad 110 de decodificación por entropía determina si se satisface o no la condición 183. Cuando la unidad 110 de decodificación por entropía determina que se satisface la condición 183, la unidad 110 de decodificación por entropía obtiene (restaura) un valor de 1, realizando la decodificación aritmética en el penúltimo bit 184 (end_of_sub_stream_one_bit). Después de obtener del valor de 1, la unidad 110 de decodificación por entropía realiza la terminación de subflujo de decodificación aritmética, y realiza la búsqueda de comienzo de byte que es el procesamiento en el que se omite la cadena 185 de bits. El penúltimo bit 184 decodificado aritméticamente (end_of_sub_stream_one_bit) siempre indica un valor de 1. Cuando no se satisface la condición 183, el penúltimo bit 184 no se incluye en un corte.
De esta manera, en la realización 1, cuando la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el fin de un subflujo, se realiza la terminación de subflujo de decodificación aritmética que es el mismo procesamiento que la terminación realizada cuando la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el fin de un corte. Por lo tanto, el aparato 100 de decodificación de imagen puede iniciar la decodificación aritmética de una CTU desde el comienzo de una siguiente unidad de bytes buscada en la etapa 107, es decir, desde un punto distinto del comienzo en una secuencia de bits BS. Como resultado, el aparato 100 de decodificación de imagen puede decodificar una pluralidad de unidades estructurales en una secuencia de bits BS tanto en serie como en paralelo. Las unidades estructurales pueden ser cortes o subflujos.
Como se ha descrito anteriormente, en la realización 1, la decodificación aritmética de una pluralidad de subflujos puede realizarse en paralelo. Por lo tanto, la realización 1 es útil cuando es necesario procesamiento a alta velocidad, tal como cuando se realiza una reproducción en tiempo real de imágenes en movimiento con alta resolución. Adicionalmente, en la realización 1, se realiza la terminación, por ejemplo, reseteando apropiadamente el estado de la probabilidad interna de la decodificación aritmética en el fin de un subflujo. Por lo tanto, incluso cuando se realiza la decodificación aritmética en una pluralidad de subflujos en paralelo, el estado de probabilidad interna en la decodificación siempre es el mismo que en la codificación, lo que permite la decodificación apropiada de la secuencia de bits BS.
Adicionalmente, en la realización 1, cuando una CTU se encuentra en el fin de un corte, no se realizan la decodificación aritmética de un penúltimo bit ni la terminación de subflujo de decodificación aritmética. Por consiguiente, cuando la CTU se encuentra en el fin de un corte, no es necesario incluir, en una secuencia de bits BS, un penúltimo bit que es un código redundante. Como resultado, es posible decodificar apropiadamente una secuencia de bits BS codificados con menos reducción en la eficacia y permitir el procesamiento paralelo.
Adicionalmente, en la realización 1, se realiza el procesamiento, que incluye la decodificación aritmética de un penúltimo bit y la terminación. Por lo tanto, puede realizarse el procesamiento común en el fin de un subflujo y en el fin de un corte. Más específicamente, puesto que no es necesaria una unidad de procesamiento adicional para el procesamiento realizado en el fin de un subflujo, pueden decodificarse las imágenes con una configuración sencilla. En otras palabras, la configuración, en la que se activa la terminación de decodificación aritmética cuando se realiza el procesamiento en el fin de un corte, es decir, cuando se restaura un valor de 1 realizando la decodificación aritmética de 1 bit, puede aplicarse no únicamente al fin de un corte, sino también al fin de un subflujo. Con esto, puede usarse la misma configuración, lo que simplifica la configuración para decodificar imágenes. Más específicamente, la unidad 116 de terminación de subflujo puede usar funciones de la unidad 112 de determinación de fin de corte y la unidad 115 de terminación.
(Variación)
En la realización 1, se realiza la decodificación aritmética en el penúltimo bit 184, y se omite la cadena 185 de bits que incluye el primer bit que indica un valor de 1. En la variación de la realización 1, se realiza la decodificación aritmética en el primer bit como el penúltimo bit 184. Más específicamente, en la variación de la realización 1, se omite el penúltimo bit 184 mostrado en la Figura 9. En su lugar, se usa el primer bit de la cadena 185 de bits como el penúltimo bit. La variación de la realización 1 también produce efectos ventajosos similares a aquellos en la realización 1.
La Figura 10 es un diagrama que muestra un ejemplo de la sintaxis de la cadena 185 de bits de acuerdo con la variación de la realización 1.
La cadena 185 de bits de acuerdo con la variación de la realización 1 incluye un bit 185a que tiene un valor que va a restaurarse a un valor de 1 mediante decodificación aritmética, y tantos bits 185b que indican valores de 0 como sean necesarios y que no van a decodificarse aritméticamente. Específicamente, el primer bit 185a de la cadena 185 de bits de acuerdo con la variación de la realización 1 no es un bit que indica un valor de 1 como en la realización 1, sino un bit obtenido realizando la codificación aritmética en un valor de 1.
En la Figura 10, f(1) en el descriptor, se indica que no se realiza la codificación aritmética o la decodificación aritmética en los datos (bit) que están incluidos en una secuencia de bits y que están asociados con f(1). Más específicamente, f(1) indica que el mismo valor de los datos (bit) incluido en una secuencia de bits se reconoce como un valor original de los datos. Por ejemplo, cuando un bit en una secuencia de bits indica "0", se reconoce "0" como un valor original del bit. Cuando un bit en una secuencia de bits indica "1", se reconoce "1" como un valor original del bit. Por otra parte, ae(v) indica que se realiza la codificación aritmética o decodificación aritmética en los datos (bit), asociados con ae(v), en una secuencia de bits. Más específicamente, ae(v) indica que se realiza la codificación aritmética o la decodificación aritmética basándose en la información que indica la información de probabilidad anterior o el estado de probabilidad interna en los datos (bit) en una secuencia de bits.
En la variación de la realización 1, es posible obtener efectos ventajosos similares a aquellos en la realización 1, y reducir el número de bits de datos que van a codificarse o decodificarse de cada subflujo en 1 bit, lo que permite un aumento en la eficiencia de codificación.
En la realización 1 y la variación de la realización 1, se realiza la terminación de subflujo de decodificación aritmética cuando se restaura un valor de 1 decodificando 1 bit (penúltimo bit).
En la realización 1 y la variación de la realización 1, se realiza la terminación de subflujo de decodificación aritmética cuando la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el fin de un subflujo. En otras palabras, en la realización 1 y en la variación de la realización 1, se realiza la terminación de subflujo de decodificación aritmética cuando la CTU que va a decodificarse aritméticamente siguiente a la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el comienzo de un subflujo. Además, en la realización 1 y en la variación de la realización 1, cuando la CTU que se decodificó aritméticamente inmediatamente antes se encuentra en el fin de un corte, se realiza la terminación de decodificación aritmética. Cuando la CTU no se encuentra en el fin de un corte, sino en el fin de un subflujo, se realiza la terminación de subflujo de decodificación aritmética que es el mismo procesamiento que la terminación de decodificación aritmética. Por consiguiente, es posible evitar que se realice redundantemente la terminación de decodificación aritmética, lo que permite una decodificación aritmética apropiada.
(Realización 2)
La Figura 11 es un diagrama de bloques que muestra un ejemplo de una configuración de un aparato de decodificación de imagen de acuerdo con la realización 2.
Un aparato 200 de codificación de imagen de acuerdo con la realización 2 genera una secuencia de bits BS que va a decodificarse por el aparato 100 de decodificación de imagen de acuerdo con la realización 1. El aparato 200 de codificación de imagen incluye: un restador 205; una unidad 210 de transformada y cuantificación; una unidad 220 de codificación por entropía; una unidad 230 de cuantificación inversa y transformada inversa; un sumador 235; un filtro 240 de bucle; una memoria 250; una unidad 260 de intra predicción; una unidad 270 de estimación de movimiento; una unidad 280 de compensación de movimiento; y un conmutador 290 de selector intra/inter.
El restador 205 calcula una señal de error de predicción que es una diferencia entre una señal de entrada que indica un bloque incluido en los datos de imagen y una señal de predicción. La unidad 210 de transformada y de cuantificación transforma una señal de error de predicción en un dominio espacial (transformada de frecuencia) para generar coeficientes de transformada en un dominio de la frecuencia. Por ejemplo, la unidad 210 de transformada y de cuantificación realiza la transformada de coseno discreta (DCT) en la señal de error de predicción para generar coeficientes de transformada. Adicionalmente, la unidad 210 de transformada y de cuantificación cuantifica los coeficientes de transformada para generar coeficientes cuantificados.
La unidad 220 de codificación por entropía realiza codificación de longitud variable en los coeficientes cuantificados para generar una secuencia de bits BS. Adicionalmente, la unidad 220 de codificación por entropía realiza codificación de longitud variable en datos de movimiento (por ejemplo, el vector de movimiento) estimados por la unidad 270 de estimación de movimiento, e incluye los datos en la secuencia de bits BS para su salida.
La unidad 230 de cuantificación inversa y transformada inversa restaura coeficientes de transformada realizando cuantificación inversa en los coeficientes cuantificados. La unidad 230 de cuantificación inversa y transformada inversa restaura adicionalmente una señal de error de predicción realizando transformada inversa en los coeficientes de transformada restaurados. Se ha de observar que, la señal de error de predicción restaurada no es idéntica a la señal de error de predicción generada por el restador 205 puesto que se elimina la información por la cuantificación. En otras palabras, la señal de error de predicción restaurada incluye errores cuantificados.
El sumador 235 genera una imagen decodificada local añadiendo la señal de error de predicción restaurada y una señal de predicción. El filtro 240 de bucle aplica filtración de bucle, tal como filtración de desbloqueo, a la imagen decodificada local generada.
La memoria 250 es una memoria para almacenar imágenes de referencia que van a usarse para compensación de movimiento. Más específicamente, la memoria 250 almacena la imagen decodificada local a la que se ha aplicado filtración de bucle, como una imagen de referencia.
La unidad 260 de intra predicción genera una señal de predicción (señal de intra predicción) realizando intra predicción de acuerdo con un modo de intra predicción. Más específicamente, la unidad 260 de intra predicción realiza intra predicción en un bloque actual que va a codificarse (señal de entrada) haciendo referencia a imágenes vecinas al bloque actual en la imagen decodificada local generada por el sumador 235. Por consiguiente, la unidad 260 de intra predicción genera una señal de intra predicción.
La unidad 270 de estimación de movimiento estima datos de movimiento (por ejemplo, el vector de movimiento) que indican el movimiento entre la señal de entrada y una imagen de referencia almacenada en la memoria 250. La unidad 280 de compensación de movimiento realiza compensación de movimiento basándose en los datos de movimiento estimados para generar una señal de predicción (señal de inter predicción) del bloque actual.
El conmutador 290 de selector intra/inter selecciona una señal de intra predicción o señal de inter predicción, y emite la señal seleccionada al restador 205 y al sumador 235 como una señal de predicción.
Con la configuración anterior, el aparato 200 de codificación de imagen de acuerdo con la realización 2 codifica datos de imagen.
En este punto, la unidad 220 de codificación por entropía en el aparato 200 de codificación de imagen, de acuerdo con la realización 2, realiza codificación aritmética en una señal actual que va a codificarse que incluye coeficientes cuantificados y datos de movimiento, es decir, una señal actual que incluye las CTU para realizar la codificación de longitud variable en la señal actual.
De acuerdo con la codificación aritmética realizada por la unidad 220 de codificación por entropía de acuerdo con la realización 2, es posible generar una secuencia de bits BS que puede decodificarse apropiadamente tanto en procesamiento en paralelo como en procesamiento en serie. Por lo tanto, cuando se usan subflujos y es necesario procesamiento de alta velocidad en el HEVC, la implementación de la codificación aritmética de acuerdo con la realización 2 es altamente beneficiosa.
En lo sucesivo, se proporciona una descripción detallada de la codificación aritmética realizada por la unidad 220 de codificación por entropía. La codificación aritmética de acuerdo con la realización 2 corresponde a la decodificación aritmética de acuerdo con la realización 1.
La Figura 12 es un diagrama de bloques que muestra un ejemplo de una configuración de la unidad 220 de codificación por entropía de acuerdo con la realización 2. La unidad 220 de codificación por entropía de acuerdo con la realización 2 incluye: una unidad 221 de codificación de CTU, una unidad 222 de codificación de fin de corte, una unidad 223 de determinación de fin de subflujo, una unidad 226 de terminación de subflujo, una unidad 224 de alineación de bytes y una unidad 225 de terminación. La unidad 220 de codificación por entropía realiza la codificación aritmética en una señal actual para emitir una secuencia de bits BS. La unidad 220 de codificación por entropía también emite una señal de terminación de procesamiento de corte para notificar el fin del procesamiento de corte, según sea necesario.
La Figura 13 es un diagrama de flujo de un ejemplo del procesamiento realizado por la unidad 220 de codificación por entropía de acuerdo con la realización 2.
En primer lugar, la unidad 221 de codificación de CTU realiza la codificación aritmética en una CTU (coding_tree_unit()) incluida en una señal actual, basándose en un procedimiento predeterminado (etapa S201). La unidad 221 de codificación de CTU también inserta la CTU codificada aritméticamente de esta manera en una secuencia de bits BS antes de su emisión. Como alternativa, la unidad 221 de codificación de CTU almacena la CTU codificada aritméticamente en una memoria en el aparato 200 de codificación de imagen, por ejemplo.
Posteriormente, la unidad 222 de codificación de fin de corte realiza la codificación aritmética en una bandera de fin de corte (end_of_slice_flag) que indica si la CTU codificada aritméticamente en la etapa S201 se encuentra o no en el fin de un corte (etapa S202). La unidad 222 de codificación de fin de corte a continuación determina si la bandera de fin de corte (end_of_slice_flag) indica o no 0 (etapa S203). En este punto, cuando se determina que la bandera de fin de corte indica 1, pero no 0, es decir, la CTU se encuentra en el fin de un corte (NO en la etapa S203), la unidad 225 de terminación realiza la terminación de codificación aritmética (etapa S204). La terminación de la codificación aritmética es el procesamiento que es diferente de la codificación aritmética normal y que se realiza para resetear el estado de probabilidad interna de la codificación aritmética. Más específicamente, en la codificación aritmética, hay casos en los que, cuando se codifica una señal binaria actual, no se emite una cadena de bits después de actualizar el estado de probabilidad interna. Si no se emite la cadena de bits, se pierde información. Para evitar esto, se realiza la terminación de codificación aritmética. Específicamente, la terminación de codificación aritmética incluye EncoderFlush desvelado en NPL 1. Con tal terminación de codificación aritmética, se escribe el estado de probabilidad interna en la secuencia de bits BS, generando de esta manera la secuencia de bits BS que puede decodificarse apropiadamente. Adicionalmente, la unidad 225 de terminación emite una señal que indica que la CTU se encuentra en el fin de un corte (señal de terminación de procesamiento de corte). Por ejemplo, se usa la señal de terminación de procesamiento de corte para la notificación de la ejecución del procesamiento de un siguiente corte.
Por otra parte, cuando se determina que la bandera de fin de corte indica 0 (Sí en la etapa S203), es decir, cuando la CTU que se codificó aritméticamente inmediatamente antes no se encuentra en el fin de un corte, la unidad 223 de determinación de fin de subflujo determina si la CTU se encuentra o no en el fin de un subflujo (etapa S205). El subflujo es la pieza o la línea de CTU anteriormente descritas. La unidad 223 de determinación de fin de subflujo determina si la CTU se encuentra o no en el fin de un subflujo de una manera similar a la realización 1.
Cuando se determina que la CTU se encuentra en el fin de un subflujo (Sí en la etapa S205), la unidad 226 de terminación de subflujo realiza la codificación aritmética en 1 bit que indica el fin de un subflujo (penúltimo bit), y realiza la terminación de subflujo de la codificación aritmética (terminación de subflujo de codificación aritmética) (etapa S206). En este punto, se realiza la codificación aritmética en el penúltimo bit que siempre indica un valor de 1. Más específicamente, se codifica aritméticamente el penúltimo bit que indica un valor de 1 con antelación y se incluye en una secuencia de bits BS de modo que el penúltimo bit se sitúa después de la CTU que se encuentra en el fin de un subflujo. Adicionalmente, la terminación de subflujo de codificación aritmética es un procesamiento similar a la terminación de codificación aritmética realizada por la unidad 225 de terminación en la etapa S204.
Después de la terminación del subflujo de codificación aritmética, la unidad 224 de alineación de bytes realiza la alineación de bytes que es el procesamiento de la escritura de N bits (N es un número entero que es mayor o igual que 0) de modo que el número de bits de un subflujo codificado es igual a un múltiplo entero de una unidad de bytes (etapa S207). Más específicamente, la unidad 224 de alineación de bytes escribe N bits de modo que el comienzo de la CTU que va a codificarse aritméticamente a continuación es el comienzo de una unidad de bytes, y mueve un puntero de secuencia de bits al punto de comienzo.
Cuando se determina que la CTU no se encuentra en el fin de un subflujo (No en la etapa S205) o después de la etapa S207, la unidad 220 de codificación por entropía repite el procesamiento de S201 en una siguiente CTU.
La unidad 220 de codificación por entropía de acuerdo con la realización 2 realiza la codificación aritmética en cortes de acuerdo con la sintaxis mostrada en la Figura 9.
Más específicamente, la unidad 220 de codificación por entropía genera datos 181 (coding_tree_unit()) que indican la CTU aritméticamente codificada y una bandera 182 de fin de corte aritméticamente codificada (end_of_slice_flag), y los incluye en la secuencia de bits BS. Posteriormente, la unidad 220 de codificación por entropía determina si se satisface o no una condición 183. Cuando la unidad 220 de codificación por entropía determina que se satisface la condición 183, la unidad 220 de codificación por entropía realiza la codificación aritmética en el penúltimo bit 184 (end_of_sub_stream_one_bit) que indica un valor de 1, e incluye el penúltimo bit 184 en la secuencia de bits BS. Después de la realización de la codificación aritmética del penúltimo bit 184, la unidad 220 de codificación por entropía realiza la terminación de subflujo de codificación aritmética, y realiza la alineación de bytes que es el procesamiento de escritura de la cadena 185 de bits. Cuando no se satisface la condición 183, la unidad 220 de codificación por entropía no realiza la codificación aritmética en el penúltimo bit 184 y tampoco realiza la alineación de bytes. Como resultado, cuando no se satisface la condición 183, no se incluyen el penúltimo bit 184 codificado aritméticamente ni la cadena 185 de bits en un corte.
De esta manera, en la realización 2, cuando la CTU que se codificó aritméticamente inmediatamente antes se encuentra en el fin de un subflujo, se realiza la terminación de subflujo de codificación aritmética que es el mismo procesamiento que la terminación realizada cuando la CTU que se codificó aritméticamente inmediatamente antes se encuentra en el fin de un corte. Por consiguiente, el aparato 200 de codificación de imagen puede iniciar la codificación aritmética de una CTU desde el fin de una cadena de bits escrita en la etapa S207, es decir, desde un punto distinto del comienzo en una señal actual que va a codificarse. Como resultado, el aparato 200 de codificación de imagen puede codificar una pluralidad de unidades estructurales incluidas en una señal de entrada que va a codificarse, tanto en serie como en paralelo. Las unidades estructurales pueden ser cortes o subflujos.
Como se ha descrito, puesto que puede realizarse la codificación aritmética en una pluralidad de subflujos en paralelo en la realización 2, la realización 2 es útil cuando es necesario el procesamiento de alta velocidad, tal como cuando se registran instantáneas en movimiento de alta resolución en tiempo real. Adicionalmente, de acuerdo con la realización 2, se realiza la terminación, por ejemplo, reseteando apropiadamente el estado de probabilidad interna de la codificación aritmética. Por lo tanto, incluso cuando se realiza la codificación aritmética en una pluralidad de subflujos en paralelo, el estado de probabilidad interna en la codificación es el mismo que en la decodificación, lo que permite la generación apropiada de una secuencia de bits BS.
Adicionalmente, en la realización 2, cuando una CTU se encuentra en el fin de un corte, no se realizan la codificación aritmética de un penúltimo bit ni la terminación de subflujo de codificación aritmética. Por consiguiente, cuando la CTU se encuentra en el fin de un corte, no es necesario incluir un penúltimo bit que es un código redundante, en una secuencia de bits BS. Como resultado, es posible realizar procesamiento paralelo mientras que se evita la reducción en la eficacia de la codificación.
Adicionalmente, en la realización 2, se realiza el procesamiento, que incluye la codificación aritmética de un penúltimo bit y la terminación, en el fin de un subflujo. Por lo tanto, puede realizarse el procesamiento común en el fin de un subflujo y en el fin de un corte. Más específicamente, puesto que no es necesaria una unidad de procesamiento adicional para el procesamiento realizado en el fin de un subflujo, pueden decodificarse las imágenes con una configuración sencilla. En otras palabras, puede aplicarse la configuración, en la que se activa la terminación de codificación aritmética cuando se realiza el procesamiento en el fin de un corte, es decir, cuando se restaura un valor de 1 mediante la codificación aritmética de 1 bit, únicamente al fin de un corte, pero también al fin de un subflujo. Con esto, puede usarse la misma configuración, lo que simplifica la configuración para codificar imágenes. Más específicamente, la unidad 226 de terminación de subflujo puede usar funciones de la unidad 222 de codificación de fin de corte y la unidad 225 de terminación.
(Variación de la realización 2)
En la realización 2, se realiza la codificación aritmética en el penúltimo bit 184, y se omite la cadena 185 de bits que incluye el primer bit que indica un valor de 1. En la variación de la realización 2, se realiza la codificación aritmética en el primer bit, como el penúltimo bit 184. Más específicamente, en la variación de la realización 2, se omite el penúltimo bit 184 mostrado en la Figura 9. En su lugar, se usa el primer bit 185a de la cadena 185 de bits (véase la Figura 10) como el penúltimo bit. Tal variación de la realización 2 también produce efectos ventajosos similares a aquellos en la realización 2. La variación de la realización 2 es un procedimiento de codificación de imagen que corresponde al procedimiento de decodificación de imagen de acuerdo con la variación de la realización 1.
Como se muestra en la Figura 10, la unidad 220 de codificación por entropía de acuerdo con la variación de la realización 2 escribe una cadena 185 de bits en una secuencia de bits BS. La cadena 185 de bits incluye un bit 185a generado realizando la codificación aritmética en un bit que indica un valor de 1, y tantos bits 185b que indican valores de 0 según sean necesarios y que no se van a codificar aritméticamente. Específicamente, el primer bit 185a de la cadena 185 de bits de acuerdo con la variación de la realización 2 no es un bit que indica un valor de 1 como en la realización 1, sino un bit obtenido realizando la codificación aritmética en un valor de 1.
En la variación de la realización 2, es posible obtener efectos ventajosos similares a aquellos en la realización 1, y reducir el número de bits de datos que van a codificarse o decodificarse de cada subflujo en 1 bit, lo que permite un aumento en la eficiencia de codificación.
En la realización 1 y su variación, cuando se codifica 1 bit que indica un valor de 1 (penúltimo bit), se realiza la terminación de subflujo de codificación aritmética; sin embargo, puede ser que se realice la terminación de subflujo de codificación aritmética cuando se realiza la codificación aritmética en un bit que indica otro valor. Por ejemplo, el valor puede ser "0", o cualquier otro valor siempre que esté predeterminado. Adicionalmente, en lugar del penúltimo bit, puede realizarse la codificación aritmética en una bandera que indica si la CTU se encuentra o no en el fin de un subflujo (por ejemplo, end_of_sub_stream_flag). Más específicamente, cuando la bandera de fin de corte (end_of_slice_flag) indica 0, la unidad 220 de codificación por entropía realiza la codificación aritmética en la bandera de fin de subflujo (end_of_sub_stream_flag). Posteriormente, cuando la unidad 220 de codificación por entropía determina que la bandera de fin de subflujo indica 1, la unidad 220 de codificación por entropía realiza la terminación de codificación aritmética que es similar a la terminación realizada cuando la bandera de fin de corte indica 1, y también realiza la alineación de bytes (byte_alignment()). Cuando la unidad 220 de codificación por entropía determina que la bandera de fin de subflujo indica 0, la unidad 220 de codificación por entropía continúa la codificación aritmética en una siguiente CTU. El uso de la bandera de fin de subflujo en una manera de este tipo también proporciona los efectos ventajosos similares a aquellos en la realización 2 y su variación.
En la realización 2 y su variación, se realiza la terminación de subflujo de codificación aritmética cuando la CTU que se codificó aritméticamente inmediatamente antes se encuentra en el fin de un subflujo. En otras palabras, en la realización 2 y su variación, se realiza la terminación de subflujo de codificación aritmética cuando la CTU que va a codificarse aritméticamente siguiente a la CTU que se ha codificado aritméticamente inmediatamente antes se encuentra en el comienzo de un subflujo. Además, en la realización 2 y su variación, cuando la CTU que se ha codificado aritméticamente inmediatamente antes se encuentra en el fin de un corte, se realiza la terminación de decodificación aritmética. Cuando la CTU se encuentra en el fin de un subflujo pero no en el fin de un corte, se realiza la terminación de subflujo de codificación aritmética que es el mismo procesamiento que la terminación de codificación aritmética. Como resultado, es posible evitar que se realice redundantemente la terminación de codificación aritmética, lo que permite una codificación aritmética apropiada.
La Figura 14A es un diagrama de flujo de un procedimiento de decodificación de imagen de acuerdo con una realización de la presente invención.
Un procedimiento de decodificación de imagen de acuerdo con una realización es un procedimiento de decodificación de imagen de decodificación, en una base por bloque, una imagen codificada incluida en una secuencia de bits. El procedimiento de decodificación de imagen incluye: realizar la decodificación aritmética en un bloque actual que va a decodificarse (S11), determinar si el bloque actual se encuentra o no en el fin de un corte (S12), determinar si el bloque actual se encuentra o no en el fin de un subflujo que es una unidad estructural de la imagen que es diferente del corte, cuando se determina que el bloque actual no se encuentra en el fin del corte (S13), y realizar la decodificación aritmética en un penúltimo bit y realizar la terminación de decodificación aritmética, cuando se determina que el bloque actual se encuentra en el fin del subflujo (S14).
La Figura 14B es un diagrama que muestra una configuración de un aparato de decodificación de imagen de acuerdo con una realización de la presente invención.
Un aparato 10 de decodificación de imagen de acuerdo con una realización es un aparato de decodificación de imagen que decodifica, en una base por bloque, una imagen codificada incluida en una secuencia de bits. El aparato 10 de decodificación de imagen incluye: una unidad 11 de decodificación de bloque que realiza la decodificación aritmética en un bloque actual que va a decodificarse; una unidad 12 de determinación de fin de corte que determina si el bloque actual se encuentra o no en el fin de un corte; una unidad 13 de determinación de fin de subflujo que determina, cuando se determina que el bloque actual no se encuentra en el fin del corte, si el bloque actual se encuentra o no en el fin de un subflujo que es una unidad estructural de la imagen que es diferente del corte; y una unidad 14 de terminación que realiza la decodificación aritmética en un penúltimo bit y realiza la terminación de decodificación aritmética como una primera terminación, cuando se determina que el bloque actual se encuentra en el fin del subflujo.
Con esto, incluso si un bloque decodificado aritméticamente (CTU) no se encuentra en el fin de un corte, si el bloque se encuentra en el fin de un subflujo (por ejemplo, pieza o línea de CTU), se realiza la terminación de decodificación aritmética. Como resultado, es posible decodificar apropiadamente una pluralidad de subflujos en una secuencia de bits en paralelo. Adicionalmente, es posible decodificar apropiadamente una secuencia de bits codificados con menos reducción en la eficacia, usando cortes y subflujos. Adicionalmente, se realiza el procesamiento, que incluye la decodificación aritmética de un penúltimo bit y la terminación, en el fin de un subflujo. Por lo tanto, cuando se realiza el procesamiento, que incluye la decodificación aritmética de una bandera y la terminación, en el fin de un corte, puede realizarse el procesamiento común en el fin de un subflujo y en el fin de un corte. Más específicamente, puesto que no es necesaria una unidad de procesamiento adicional para el procesamiento realizado en el fin de un subflujo, pueden decodificarse las imágenes con una configuración sencilla.
La Figura 15A es un diagrama de flujo de un procedimiento de codificación de imagen de acuerdo con una realización no cubierta por la invención reivindicada.
El procedimiento de codificación de imagen de acuerdo con una realización es un procedimiento de codificación de imagen de la codificación de una imagen en una base por bloque para generar una secuencia de bits. El procedimiento de codificación de imagen incluye: realizar la codificación aritmética en un bloque actual que va a codificarse (S21); determinar si el bloque actual se encuentra o no en un fin de un corte (S22); determinar, cuando se determina que el bloque actual no se encuentra en el fin del corte, si el bloque actual se encuentra o no en un fin de un subflujo que es una unidad estructural de la imagen que es diferente del corte (S23); y realizar la decodificación aritmética en un penúltimo bit y la terminación de decodificación aritmética como la primera terminación, cuando se determina que el bloque actual se encuentra en el fin del subflujo (S24).
La Figura 15B es un diagrama que muestra una configuración de un aparato de codificación de imagen de acuerdo con una realización no cubierta por la invención reivindicada.
Un aparato 20 de codificación de imagen de acuerdo con una realización es un aparato de codificación de imagen que codifica una imagen en una base por bloque para generar una secuencia de bits. El aparato 20 de codificación de imagen incluye: una unidad 21 de codificación de bloque que realiza la codificación aritmética en un bloque actual que va a codificarse; una unidad 22 de determinación de fin de corte que determina si el bloque actual se encuentra o no en el fin de un corte; una unidad 23 de determinación de fin de subflujo que determina, cuando se determina que el bloque actual no se encuentra en el fin del corte, si el bloque actual se encuentra o no en el fin de un subflujo que es una unidad estructural de la imagen que es diferente del corte; y una unidad 24 de terminación que realiza la codificación aritmética en un penúltimo bit y realiza la terminación de codificación aritmética como una primera terminación, cuando se determina que el bloque actual se encuentra en el fin del subflujo.
Con esto, incluso si un bloque codificado aritméticamente (CTU) no se encuentra en el fin de un corte, pero si el bloque se encuentra en el fin de un subflujo (por ejemplo, pieza o línea de CTU), se realiza la terminación de codificación aritmética. Esto permite que se codifique en paralelo apropiadamente una pluralidad de subflujos en una secuencia de bits. Adicionalmente, es posible suprimir una reducción en la eficiencia de codificación usando cortes y subflujos. Adicionalmente, se realiza el procesamiento, que incluye la codificación aritmética de un penúltimo bit y la terminación, en el fin de un subflujo. Por lo tanto, cuando se realiza el procesamiento, que incluye la codificación aritmética de una bandera y la terminación, en el fin de un corte, puede realizarse el procesamiento común en el fin de un subflujo y en el fin de un corte. Más específicamente, puesto que no es necesaria una unidad de procesamiento adicional para el procesamiento realizado en el fin de un subflujo, pueden codificarse las imágenes con una configuración sencilla.
En cada realización anterior, cada uno de los elementos estructurales puede estar configurado por un hardware especializado, o puede implementarse ejecutando un programa de software adecuado para respectivos elementos estructurales. Cada uno de los elementos estructurales puede implementarse por una unidad de ejecución de programa, tal como una CPU o un procesador, leyendo un programa de software grabado en un disco duro o un medio de grabación tal como una memoria de semiconductores, y ejecutando el programa. En otras palabras, cada uno del aparato de codificación de imagen y el aparato de decodificación de imagen incluye circuitería de procesamiento y almacenamiento eléctricamente conectado a la circuitería de procesamiento (almacenamiento accesible desde la circuitería de procesamiento). La circuitería de procesamiento incluye al menos uno de hardware dedicado y una unidad de ejecución de programas. Cuando la circuitería de procesamiento incluye la unidad de ejecución de programa, el almacenamiento incluye un programa de software ejecutado por la unidad de ejecución de programa. En este punto, un software para implementar el aparato de decodificación de imagen, un aparato de codificación de imagen y otros de acuerdo con cada realización anterior es un programa que hace que un ordenador ejecute cada etapa incluida en el procedimiento de decodificación de imagen mostrado en la Figura 14A o en el procedimiento de codificación de imagen mostrado en la Figura 15A.
Adicionalmente, en cada una de las realizaciones anteriores y sus variaciones, puede ser que los elementos estructurales no se describan específicamente similares a aquellos descritos en NPL1.
(Realización 3)
El procesamiento descrito en cada una de las realizaciones puede implementarse simplemente en un sistema informático independiente, grabando, en un medio de grabación, un programa para que implemente las configuraciones del procedimiento de codificación de instantáneas en movimiento (procedimiento de codificación de imágenes) y el procedimiento de decodificación de instantáneas en movimiento (procedimiento de decodificación de imágenes) descritos en cada una de las realizaciones. El medio de grabación puede ser cualquier medio de grabación siempre que el programa pueda grabarse, tal como un disco magnético, un disco óptico, un disco óptico magnético, una tarjeta de CI, y una memoria de semiconductores.
Posteriormente en el presente documento, se describirán las aplicaciones del procedimiento de codificación de instantáneas en movimiento (procedimiento de codificación de imágenes) y al procedimiento de decodificación de instantáneas 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 una característica de incluir un aparato de codificación y de 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. Pueden cambiarse otras configuraciones en el sistema según sea apropiado, dependiendo de los casos.
La Figura 16 ilustra una configuración global 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 células de tamaño deseado, y las estaciones base ex106, ex107, ex108, ex109 y ex110 que son estaciones inalámbricas fijas se colocan en cada una de las células.
El sistema de provisión de contenido ex100 está conectado a dispositivos, tales como a un ordenador ex111, un asistente digital personal (PDA) ex112, una cámara ex113, un teléfono celular ex114 y una máquina de juegos ex115, mediante Internet ex101, un proveedor de servicios de Internet ex102, una red de telefonía ex104, así como a las estaciones base ex106 a ex110, respectivamente.
Sin embargo, la configuración del sistema de provisión de contenido ex100 no se limita a la configuración mostrada en la figura 16, y es aceptable una combinación en la que está conectado cualquiera de los elementos. Además, cada dispositivo puede estar directamente conectado a la red de telefonía ex104, en lugar de mediante las estaciones base ex106 a ex110 que son las estaciones inalámbricas fijas. Adicionalmente, los dispositivos pueden interconectarse entre sí mediante una comunicación inalámbrica de corta distancia y otras.
La cámara ex113, tal como una cámara de vídeo digital, puede capturar vídeo. Una cámara ex116, tal como una cámara digital, puede capturar tanto imágenes fijas como vídeo. Adicionalmente, el teléfono celular ex114 puede ser el que cumple cualquiera de las normas tales como el Sistema Global para Comunicación Móvil (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 por Paquetes a Alta Velocidad (HSPA). Como alternativa, el teléfono celular ex114 puede ser un Sistema Móvil Personal (PHS).
En el sistema de provisión de contenido ex100, un servidor de envío por flujo continuo ex103 está conectado a la cámara ex113 y a otros mediante la red de telefonía ex104 y la estación base ex109, que posibilita la distribución de imágenes de un espectáculo en directo y otros. En una distribución de este tipo, un contenido (por ejemplo, vídeo de un espectáculo en directo de música) capturado por el usuario que usa la cámara ex113 se codifica como se ha descrito anteriormente en cada una de las realizaciones (es decir, la cámara funciona como el aparato de codificación de imágenes), y el contenido codificado se transmite al servidor de flujo continuo ex103. Por otra parte, el servidor de flujo continuo ex103 lleva a cabo distribución de flujo en los datos de contenido transmitidos a los clientes tras sus solicitudes. Los clientes incluyen el ordenador ex111, el PDA ex112, la cámara ex113, el teléfono celular ex114, y la máquina de juegos ex115 que pueden decodificar los datos codificados anteriormente mencionados. Cada uno de los dispositivos que han recibido los datos distribuidos decodifican y reproducen 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 pueden codificarse por la cámara ex113 o el servidor de flujo continuo ex103 que transmite los datos, o los procedimientos de codificación pueden compartirse entre la cámara ex113 y el servidor de flujo continuo ex103. De manera similar, los datos distribuidos pueden decodificarse por los clientes o el servidor de flujo continuo ex103, o los procedimientos de decodificaciones pueden compartirse entre los clientes y el servidor de flujo continuo ex103. Adicionalmente, los datos de las imágenes fijas y el vídeo capturado no únicamente por la cámara ex113 sino también por la cámara ex116 pueden transmitirse al servidor de flujo continuo ex103 a través del ordenador ex111. Los procedimientos de codificación pueden realizarse por la cámara ex116, el ordenador ex111, o el servidor de flujo continuo ex103, o compartirse entre ellos.
Adicionalmente, los procedimientos de codificación y decodificación pueden realizarse por un LSI ex500 generalmente incluido en cada uno del ordenador ex111 y los dispositivos. El LSI ex500 puede estar configurado de un único chip o una pluralidad de chips. El software para codificar y decodificar vídeo puede estar integrado en algún tipo de un medio de grabación (tal como un CD-ROM, un disco flexible y un disco duro) que es legible por el ordenador ex111 y otros, y los procedimientos de codificación y decodificación pueden realizarse usando el software. Adicionalmente, cuando el teléfono celular ex114 está equipado con una cámara, los datos de vídeo obtenidos por la cámara pueden transmitirse. Los datos de vídeo son datos codificados por el LSI ex500 incluido en el teléfono celular ex114.
Adicionalmente, el servidor de flujo continuo ex103 puede estar compuesto por servidores y ordenadores, y puede descentralizar los datos y procesar los datos descentralizados, registrar o distribuir los datos.
Como se ha descrito anteriormente, los clientes pueden recibir y reproducir los datos codificados en el sistema de provisión 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 provisión de contenido ex100, de modo que el usuario que no tiene ningún derecho y equipo particular puede implementar difusión personal.
Además del ejemplo del sistema de provisión de contenido ex100, al menos uno del aparato de codificación de instantáneas en movimiento (aparato de codificación de imágenes) y el aparato de decodificación de instantáneas en movimiento (aparato de decodificación de imágenes) descritos en cada una de las realizaciones pueden implementarse en un sistema de difusión digital ex200 ilustrado en la Figura 17. Más específicamente, una estación de difusión ex201 comunica o transmite mediante ondas de radio a un satélite de difusión ex202, datos multiplexados obtenidos multiplexando datos de audio y otros en datos de vídeo. Los datos de vídeo son datos codificados por el procedimiento de codificación de instantáneas en movimiento descrito en cada una de las realizaciones (es decir, datos codificados por el aparato de codificación de imágenes). Tras la recepción de los datos multiplexados, el satélite de difusión ex202 transmite ondas de radio para difusión. A continuación, una antena de uso doméstico ex204 con una función de recepción de difusión por satélite recibe las ondas de radio. A continuación, un dispositivo tal como una televisión (receptor) ex300 y un decodificador de salón (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).
Adicionalmente, 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 multiplexando una señal de audio en los datos codificados. El lector/grabador ex218 puede incluir el aparato de decodificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento como se muestra en cada una de las realizaciones. En este caso, las señales de vídeo reproducidas se visualizan en el monitor ex219, y pueden reproducirse por otro dispositivo o sistema usando el medio de grabación ex215 en el que se graban los datos multiplexados. Es también posible implementar el aparato de decodificación de instantáneas en movimiento en el decodificador de salón ex217 conectado al cable ex203 para una televisión por cable o a la antena ex204 para difusió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 instantáneas en movimiento puede implementarse no en el decodificador de salón sino en la televisión ex300.
La Figura 18 ilustra la televisión (receptor) ex300 que usa el procedimiento de codificación de instantáneas en movimiento y el procedimiento de decodificación de instantáneas en movimiento descritos en cada una de las realizaciones. La televisión ex300 incluye: un sintonizador ex301 que obtiene o proporciona datos multiplexados obtenidos multiplexando datos de audio a datos de vídeo, a través de la antena ex204 o el cable ex203, etc. que recibe una difusión; una unidad de modulación/demodulación ex302 que demodula los datos multiplexados recibidos o modula datos en datos multiplexados a suministrarse 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ñal en datos ex306.
La televisión ex300 incluye adicionalmente: 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 funciona como el aparato de codificación de imágenes de acuerdo con los aspectos de la presente divulgación 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 visualiza la señal de vídeo decodificada, tal como una pantalla. Adicionalmente, 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 de usuario. Adicionalmente, la televisión ex300 incluye una unidad de control ex310 que controla de manera global cada elemento constituyente de la televisión ex300, y una unidad de circuito de fuente de alimentación ex311 que suministra potencia 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 se conecta a un dispositivo externo, tal como el lector/grabador ex218; una unidad de ranura ex314 para posibilitar la conexión del medio de grabación ex216, tal como una tarjeta de SD; un controlador ex315 para conectarse a un medio de grabación externo, tal como un disco duro; y un módem ex316 para conectarse a una red de telefonía. En este punto, el medio de grabación ex216 puede grabar eléctricamente información usando un elemento de memoria de semiconductores no volátil/volátil para almacenamiento. Los elementos constituyentes 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 otros y reproduce los datos decodificados. En la televisión ex300, después de la operación de un 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. Adicionalmente, la unida ex304 de procesamiento de señal de audio decodifica los datos de audio demultiplexados, y la unidad de procesamiento de señal de vídeo ex305 decodifica los datos de vídeo demultiplexados, usando el 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 al exterior, respectivamente. Cuando la unidad de salida ex309 proporciona la señal de vídeo y la señal de audio, las señales pueden almacenarse temporalmente en las memorias intermedias ex318 y ex319, y otros de modo que las señales se reproducen en sincronización entre sí. Adicionalmente, la televisión ex300 puede leer datos multiplexados no a través de una difusión y otros sino desde el medio de grabación ex215 y ex216, tal como un disco magnético, un disco óptico, y una tarjeta de 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, después de una operación de 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 usando el 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 y la señal de audio codificadas, 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 pueden almacenarse temporalmente en las memorias intermedias ex320 y ex321, y otros de modo que las señales se reproducen en sincronización entre sí. En este punto, las memorias intermedias ex318, ex319, ex320 y ex321 pueden ser varias como se ilustra, o al menos una memoria intermedia puede compartirse en la televisión ex300. Adicionalmente, se pueden almacenar datos en una memoria intermedia de modo que puede evitarse el desbordamiento y subdesbordamiento del sistema entre la unidad de modulación/demodulación ex302 y la unidad de multiplexación/demultiplexación ex303, por ejemplo.
Adicionalmente, la televisión ex300 puede incluir una configuración para recibir una entrada de AV desde un micrófono o una cámara distinta de la configuración para obtener datos de audio y de vídeo desde una difusión o de un medio de grabación, y puede codificar los datos obtenidos. Aunque la televisión ex300 puede codificar, multiplexar y proporcionar datos al exterior en la descripción, puede únicamente recibir, decodificar y proporcionar datos al exterior pero no codificar, multiplexar y proporcionar datos al exterior.
Adicionalmente, cuando el lector/grabador ex218 lee o escribe datos multiplexados desde o en un medio de grabación, una 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 puede compartir la decodificación o codificación.
Como un ejemplo, la Figura 19 ilustra una configuración de una unidad de reproducción/grabación de información ex400 cuando se leen o escriben datos 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 describen en lo sucesivo. 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 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 de semiconductores incluido en el cabezal óptico ex401, y modula la luz de láser de acuerdo con datos grabados. La unidad de demodulación de reproducción ex403 amplifica una señal de reproducción obtenida detectando eléctricamente la luz reflejada desde la superficie de grabación usando un fotodetector incluido en el cabezal óptico ex401, y demodula la señal de reproducción separando un componente de señal grabado en el medio de grabación ex215 para reproducir la información necesaria. La memoria intermedia ex404 mantiene temporalmente la información a grabarse en el medio de grabación ex215 y la información reproducida desde el medio de grabación ex215. El motor de disco ex405 gira 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 mecanismo de rotación del motor de disco ex405 para seguir el punto láser. La unidad de control de sistema ex407 controla la totalidad de la unidad de reproducción/grabación de información ex400. Los procedimientos de lectura y escritura pueden implementarse por la unidad de control de sistema ex407 usando diversa información almacenada en la memoria intermedia ex404 y generando y añadiendo nueva información según sea necesaria, 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 graban y reproducen información a través del cabezal óptico ex401 mientras se operan de una manera coordinada. La unidad de control de sistema ex407 incluye, por ejemplo, un microprocesador y ejecuta procesamiento provocando que un ordenador ejecute un programa para lectura y escritura.
Aunque el cabezal óptico ex401 irradia un punto láser en la descripción, puede realizar grabación de alta densidad usando luz de campo cercano.
La Figura 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 de manera espiral surcos de guía, y una pista de información ex230 graba, con antelación, información de dirección que indica una posición absoluta en el disco de acuerdo con el cambio en una forma de las ranuras 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. Reproducir la pista de información ex230 y leer la información de dirección en un aparato que graba y reproduce datos puede conducir a la determinación de las posiciones de los bloques de grabación. Adicionalmente, el medio de grabación ex215 incluye un área de grabación de datos ex233, un área de circunferencia interna ex232, y un área de circunferencia externa ex234. El área de grabación de datos ex233 es un área para su uso al grabar los datos de usuario. El área de circunferencia interna ex232 y el área de circunferencia externa ex234 que están en el interior y el exterior del área de grabación de datos ex233, respectivamente son para uso específico excepto para la grabación de los datos de usuario. La unidad de reproducción/grabación de información 400 lee y escribe datos de audio codificado, datos de vídeo codificado, o datos multiplexados obtenidos multiplexando los datos de audio y vídeo codificados, desde y en el área de grabación de datos ex233 del medio de grabación ex215.
Aunque se describe un disco óptico que tiene una capa, tal como un DVD y un BD como un ejemplo en la descripción, el disco óptico no se limita a esto, y puede ser un disco óptico que tiene una estructura de múltiples capas y que puede grabarse en una parte distinta de la superficie. Adicionalmente, el disco óptico puede tener una estructura para grabación/reproducción multidimensional, tal como grabación de información usando 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 diferentes ángulos.
Adicionalmente, un coche ex210 que tiene una antena ex205 puede recibir datos desde el satélite ex202 y otros, y reproducir vídeo en un dispositivo de visualización tal como un sistema de navegación de coche ex211 establecido en el coche ex210, en el sistema de difusión digital ex200. En este punto, una configuración del sistema de navegación de automóvil ex211 será una configuración, por ejemplo, que incluye una unidad de recepción de GPS a partir de la configuración ilustrada en la Figura 18. Lo mismo se cumplirá para la configuración del ordenador ex111, el teléfono celular ex114, y otros.
La Figura 21A ilustra el teléfono celular ex114 que usa el procedimiento de codificación de instantáneas en movimiento y el procedimiento de decodificación de instantáneas 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 base ex110; una unidad de cámara ex365 capaz de capturar imágenes en movimiento y fijas; y una unidad de visualización ex358 tal como un visualizador 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 incluye adicionalmente: una unidad de cuerpo principal que incluye una unidad de teclas de operación ex366; una unidad de salida de audio ex357 tal como un altavoz para la salida de audio; una unidad de entrada de audio ex356 tal como un micrófono para la entrada de audio; una unidad de memoria ex367 para almacenar vídeo capturado o instantáneas fijas, audio grabado, datos codificados o des codificados del vídeo recibido, las instantáneas 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 forma 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 Figura 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 teclas de operación ex366 se conecta mutuamente, a través de un bus síncrono ex370, a una unidad de circuito de fuente de alimentación ex361, una unidad de control de entrada de operación ex362, una unidad de procesamiento de señales 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ñales 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 alimentación es activada por una operación de un usuario, la unidad de circuito de fuente de alimentación ex361 abastece a las unidades respectivas con alimentación procedente de un paquete de batería con el fin de 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 recogidas por la unidad de entrada de audio ex356 en modo de conversación por voz en señales de audio digital bajo el control de la unidad de control principal ex360 que incluye una CPU, ROM y RAM. Entonces, la unidad de modulación/demodulación ex352 realiza un procesamiento de espectro ensanchado sobre las señales de audio digital, y la unidad de transmisión y de recepción ex351 realiza una conversión de analógico a digital y una conversión en frecuencia sobre los datos, con el fin de transmitir los datos resultantes por medio de la antena ex350. Asimismo, en el teléfono celular ex114, la unidad de transmisión y de recepción ex351 amplifica los datos recibidos por la antena ex350 en modo de conversación por voz y realiza la conversión en frecuencia y la conversión de digital a analógico sobre los datos. Entonces, la unidad de modulación/demodulación ex352 realiza un procesamiento de espectro ensanchado inverso sobre los datos, y la unidad de procesamiento de señales de audio ex354 los convierte en señales de audio analógico, con el fin de emitir las mismas por medio de la unidad de salida de audio ex357.
Además, cuando se transmite un correo electrónico en modo de comunicación de datos, datos de texto del correo electrónico introducido al operar la unidad de teclas de operación ex366 y otros del cuerpo principal se envían fuera a la unidad de control principal ex360 por medio de la unidad de control de entrada de operación ex362. La unidad de control principal ex360 da lugar a que la unidad de modulación/demodulación ex352 realice un procesamiento de espectro ensanchado sobre los datos de texto, y la unidad de transmisión y de recepción ex351 realiza la conversión de analógico a digital y la conversión en frecuencia sobre los datos resultantes para transmitir los datos a la estación base ex110 por medio de la antena ex350. Cuando se recibe un correo electrónico, un procesamiento que es aproximadamente inverso al procesamiento para transmitir un correo electrónico se realiza sobre los datos recibidos, y los datos resultantes se proporcionan a la unidad de visualización ex358.
Cuando se transmite o 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 usando el procedimiento de codificación de instantáneas en movimiento mostrado en cada una de las realizaciones (es decir, funciona como el aparato de codificación de imágenes), y transmite los datos de vídeo codificados a la unidad de multiplexación/demultiplexación ex353. En contraposición, durante 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 las señales de audio recogidas 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, usando un procedimiento predeterminado. Entonces, la unidad de modulación/demodulación (unidad de circuito de modulación/demodulación) ex352 realiza un procesamiento de espectro ensanchado sobre los datos multiplexados, y la unidad de transmisión y de recepción ex351 realiza una conversión de analógico a digital y una conversión en frecuencia sobre los datos con el fin de transmitir los datos resultantes por medio de la antena ex350.
Cuando se reciben datos de un archivo de vídeo que está vinculado a una página web y otros en modo de comunicación de datos o cuando se recibe un correo electrónico con vídeo y/o audio adjunto, para 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 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ñales de vídeo ex355 decodifica la señal de vídeo usando un procedimiento de decodificación de instantáneas en movimiento que se corresponde con el procedimiento de codificación de instantáneas 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, entonces, la unidad de visualización ex358 visualiza, por ejemplo, el vídeo y las imágenes fijas incluidos en el archivo de vídeo vinculado a la página Web por medio 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.
Adicionalmente, de manera similar a la televisión ex300, un terminal tal como el teléfono celular ex114 probablemente tiene 3 tipos de configuraciones de implementación que incluyen no únicamente (i) un terminal de transmisión y recepción que incluye tanto un aparato de codificación como un aparato de decodificación, sino también (ii) un terminal de transmisión que incluye únicamente un aparato de codificación y (iii) un terminal de recepción que incluye únicamente un aparato de decodificación. Aunque el sistema de difusión digital ex200 recibe y transmite los datos multiplexados obtenidos multiplexando datos de audio en datos de vídeo en la descripción, los datos multiplexados pueden ser datos obtenidos multiplexando no datos de audio sino datos de caracteres relacionados con vídeo en datos de vídeo, y pueden no ser datos multiplexados sino los mismos datos de vídeo.
En este sentido, el procedimiento de codificación de instantáneas en movimiento y el procedimiento de decodificación de instantáneas en movimiento en cada una de las realizaciones se pueden usar en cualquiera de los dispositivos y sistemas descritos. Por lo tanto, se pueden obtener las ventajas descritas en cada una de las realizaciones.
(Realización 4)
Los datos de vídeo se pueden generar conmutando, según sea necesario, entre (i) el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento mostrados en cada una de realizaciones y (ii) un procedimiento de codificación de instantáneas en movimiento o un aparato de codificación de instantáneas en movimiento cumpliendo con una norma diferente, tal como MPEG-2, AVC de MPEG-4 y VC-1.
En este punto, cuando se genera una pluralidad de datos de vídeo que cumple con las diferentes normas y se decodifican a continuación, necesitan seleccionarse los procedimientos de decodificación para cumplir con las diferentes normas. Sin embargo, puesto que no puede detectarse a qué norma está conforme cada uno de la pluralidad de los datos de vídeo a decodificarse, existe un problema de que no puede seleccionarse un procedimiento de decodificación apropiado.
Para resolver el problema, los datos multiplexados obtenidos multiplexando datos de audio y otros en datos de vídeo tienen una estructura que incluye información de identificación que indica con qué norma cumplen los datos de vídeo. Se describirá en lo sucesivo la estructura específica de los datos multiplexados que incluyen los datos de vídeo generados en el procedimiento de codificación de instantáneas en movimiento y por el aparato de codificación de instantáneas en movimiento mostrados en cada una de las realizaciones. Los datos multiplexados son un flujo digital en el formato de Flujo de Transporte de MPEG-2.
La Figura 22 ilustra una estructura de los datos multiplexados. Como se ilustra en la Figura 22, los datos multiplexados pueden obtenerse multiplexando al menos uno de un flujo de vídeo, un flujo de audio, un flujo de gráficos de presentación (PG) y un flujo de gráficos interactivo. El flujo de vídeo representa vídeo primario y vídeo secundario de una película, el flujo de audio (IG) representa una parte de audio primario y una parte de audio secundario a mezclarse con la parte de audio primario, y el flujo de gráficos de presentación representa subtítulos de la película. En este punto, el vídeo primario es vídeo normal a visualizarse en una pantalla, y el vídeo secundario es vídeo a visualizarse en una ventana más pequeña en el vídeo primario. Adicionalmente, el flujo de gráficos interactivo representa una pantalla interactiva a generarse disponiendo los componentes de la GUI en una pantalla. El flujo de vídeo se codifica en el procedimiento de codificación de instantáneas en movimiento o por el aparato de codificación de instantáneas en movimiento mostrado en cada una de las realizaciones, o en un procedimiento de codificación de instantáneas en movimiento o por un aparato de codificación de instantáneas en movimiento cumpliendo con una norma convencional, tal como MPEG-2, AVC de MPEG-4 y VC-1. El flujo de audio se codifica de acuerdo con una norma, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD y PCM lineal.
Cada flujo incluido en los datos multiplexados se identifica por PID. Por ejemplo, se asigna 0x1011 al flujo de vídeo a usar para vídeo de una película, se asigna 0x1100 a 0x111F a los flujos de audio, se asigna 0x1200 a 0x121F al flujo de gráficos de presentación, se asigna 0x1400 a 0x141F al flujo de gráficos interactivo, se asigna 0x1B00 a 0x1B1F a los flujos de vídeo a usar para vídeo secundario de la película, y se asigna 0x1A00 a 0x1A1F a los flujos de audio a usar para el audio secundario a mezclarse con el audio principal.
La Figura 23 ilustra esquemáticamente cómo se multiplexan datos. En primer lugar, un flujo de vídeo ex235 compuesto por tramas de vídeo y un flujo de audio ex238 compuesto por tramas de audio se transforman en un flujo de paquetes de PES ex236 y un flujo de paquetes de PES ex239, y adicionalmente en paquetes de TS ex237 y paquetes de TS ex240, respectivamente. De manera similar, los datos de un flujo de gráficos de presentación ex241 y los datos de un flujo de gráficos interactivo ex244 se transforman en un flujo de paquetes de PES ex242 y un flujo de paquetes de p Es ex245, y adicionalmente en paquetes de TS ex243 y paquetes de TS ex246, respectivamente. Estos paquetes de TS se multiplexan en un flujo para obtener datos multiplexados ex247.
La Figura 24 ilustra cómo se almacena un flujo de vídeo en un flujo de paquetes de PES en más detalle. La primera barra en la Figura 24 muestra un flujo de tramas de vídeo en un flujo de vídeo. La segunda barra muestra el flujo de paquetes de PES. Como se indica por las flechas indicadas como yy1, yy2, yy3 e yy4 en la figura 24, el flujo de vídeo se divide en instantáneas como instantáneas I, instantáneas B e instantáneas P cada una de las cuales es una unidad de presentación de vídeo, las instantáneas se almacenan en una cabida útil de cada uno de los paquetes de PES. Cada uno de los paquetes de PES tiene un encabezado de PES, y el encabezado de PES almacena una Indicación de Tiempo de Presentación (PTS) que indica un tiempo de visualización de la instantánea, y una Indicación de Tiempo de decodificación (DTS) que indica un tiempo de decodificación de la instantánea.
La Figura 25 ilustra un formato de paquetes de TS a escribir finalmente en los datos multiplexados. Cada uno de los paquetes de TS es un paquete de longitud fija de 188 bytes que incluye un encabezamiento de TS de 4 bytes que tiene información, tal como un PID para identificar un flujo y una cabida útil de TS de 184 bytes para almacenar datos. Los paquetes de PES se dividen y se almacenan en las cabidas útiles de TS, respectivamente. Cuando se usa un BD ROM, a cada uno de los paquetes de TS se le proporciona un TP_Encabezamiento_Adicional de 4 bytes, dando como resultado por lo tanto paquetes de origen de 192 bytes. Los paquetes de origen se escriben en los datos multiplexados. El TP_Encabezamiento_Adicional almacena información tal como una Indicación_Tiempo_Llegada (ATS). La ATS muestra un tiempo de inicio de transferencia en el que se ha de transferir cada uno de los paquetes de TS a un filtro de PID. Los paquetes de origen se disponen en los datos multiplexados como se muestra en la parte inferior de la Figura 25. Los números que incrementan desde la cabecera de los datos multiplexados se denominan números de paquete de origen (SPN).
Cada uno de los paquetes de TS incluidos en los datos multiplexados incluye no únicamente flujos de audio, vídeo, subtítulos y otros, sino también una Tabla de Asociación de Programa (PAT), una Tabla de Mapa de Programa (PMT), y una Referencia de Reloj de Programa (PCR). La PAT muestra qué indica un PID en una PMT usada en los datos multiplexados, y un PID de la misma PAT se registra como cero. La PMT almacena los PID de los flujos de vídeo, audio, subtítulos y otros incluidos en los datos multiplexados, y la información de atributo de los flujos que se corresponden con los PID. La PMT también tiene diversos 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 el copiado de los datos multiplexados. La PCR almacena información de tiempo de STC que se corresponde con una ATS que muestra cuándo se transfiere el paquete de PCR a un decodificador, para conseguir sincronización entre un Reloj de Tiempo de Llegada (ATC) que es el eje de tiempo de las ATS, y un Reloj de Tiempo de Sistema (STC) que es un eje de tiempo de las PTS y DTS.
La Figura 26 ilustra la estructura de datos de la PMT en detalle. Un encabezado de PMT está dispuesto en la parte superior de la PMT. El encabezado de la PMT describe la longitud de datos incluidos en la PMT y otros. Una pluralidad de descriptores relacionados con los datos multiplexados están dispuestos después del encabezado de PMT. La información tal como la información de control de copia se describe en los descriptores. Después de los descriptores, está dispuesta una pluralidad de fragmentos de la información de flujo relacionados con los flujos incluidos en los datos multiplexados. Cada fragmento de la información de flujo incluye descriptores de flujo que cada uno describe información, tal como un tipo de flujo para identificar un códec de compresión de un flujo, un PID de flujo, e información de atributo de flujo (tal como una velocidad de tramas o una relación de aspecto). Los descriptores de flujo son iguales en número al número de flujos en los datos multiplexados. Los descriptores de flujo son iguales en número al número de flujos en los datos multiplexados.
Cuando los datos multiplexados se graban en un medio de grabación y otros, se registran juntos 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 Figura 27. Los archivos de información de datos multiplexados están en una correspondencia uno a uno con los datos multiplexados, y cada uno de los archivos incluye información de datos multiplexados, información de atributo de flujo y un mapa de entrada.
Como se ilustra en la Figura 27, la información de datos multiplexados incluye una tasa de sistema, un tiempo de inicio de reproducción y un tiempo de fin de reproducción. La velocidad de sistema indica la velocidad de trasferencia máxima a la que un decodificador objetivo de sistema que se va a describir más adelante transfiere los datos multiplexados a un filtro de PID. Los intervalos de las ATS incluidas en los datos multiplexados se establecen para que no sean superiores a una velocidad de sistema. El tiempo de inicio de reproducción indica una PTS en una trama de vídeo en la cabecera de los datos multiplexados. Un intervalo de una trama se añade a una PTS en una trama de vídeo al final de los datos multiplexados, y la PTS se establece al tiempo de fin de reproducción.
Como se muestra en la Figura 28, se registra un fragmento de información de atributo en la información de atributo de flujo, para cada PID de cada flujo incluido en los datos multiplexados. Cada fragmento de información de atributo tiene diferente información dependiendo de si el correspondiente flujo es un flujo de vídeo, un flujo de audio, un flujo de gráficos de presentación, o un flujo de gráficos interactivo. Cada fragmento de información de atributo de flujo de vídeo lleva información que incluye qué tipo de códec de compresión se usa para comprimir el flujo de vídeo, y la resolución, relación de aspecto y velocidad de tramas de los fragmentos de datos de instantánea que se incluyen en el flujo de vídeo. Cada fragmento de información de atributo de flujo de audio lleva información que incluye qué clase de códec de compresión se usa para comprimir el flujo de audio, cuántos canales están incluidos en el flujo de audio, qué idioma soporta el flujo de audio, y cómo de alta es la frecuencia de muestreo. La información de atributo de flujo de vídeo y la información de atributo de flujo de audio se usan para 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 flujo incluido en la PMT. Adicionalmente, cuando los datos multiplexados se graban en un medio de grabación, se usa la información de atributo de flujo de vídeo incluida en la información de datos multiplexados. Más específicamente, el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones incluyen una etapa o una unidad para asignar información única que indica datos de vídeo generados por el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento en cada una de las realizaciones, al tipo de flujo incluido en la PMT o la información de atributo de flujo de vídeo. Con la configuración, los datos de vídeo generados por el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones pueden distinguirse de los datos de vídeo que se ajustan a otra norma.
Adicionalmente, la Figura 29 ilustra las etapas del procedimiento de decodificación de instantáneas en movimiento de acuerdo con la presente realización. En la etapa exS100, el tipo de flujo incluido en la PMT o la información de atributo de flujo de vídeo incluido en la información de datos multiplexados se obtiene desde los datos multiplexados. A continuación, en la etapa exS101, se determina si el tipo de flujo o la información de atributo de flujo de vídeo indica o no que los datos multiplexados se generan por el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento en cada una de las realizaciones. Cuando se determina que el tipo de flujo o la información de atributo de flujo de vídeo indica que los datos multiplexados se generan por el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento en cada una de las realizaciones, en la etapa exS102, se realiza decodificación por el procedimiento de decodificación de instantáneas en movimiento en cada una de las realizaciones. Adicionalmente, cuando el tipo de flujo o la información de atributo de flujo de vídeo indica el cumplimiento de las normas convencionales, tales como MPEG-2, AVC de MPEG-4 y VC-1, en la etapa exS103, se realiza decodificación por un procedimiento de decodificación de instantáneas en movimiento cumpliendo con las normas convencionales.
En este sentido, asignar un nuevo valor único al tipo de flujo o la información de atributo de flujo de vídeo posibilita la determinación de si el procedimiento de decodificación de instantáneas en movimiento o el aparato de decodificación de instantáneas en movimiento que se describen en cada una de las realizaciones puede realizar o no la decodificación. Incluso cuando se introducen datos multiplexados que se ajustan a una norma diferente, puede seleccionarse un procedimiento o aparato de decodificación apropiado. Por lo tanto, se hace posible decodificar información sin error alguno. Adicionalmente, el procedimiento o aparato de codificación de instantáneas en movimiento, o el procedimiento o aparato de decodificación de instantáneas en movimiento en la presente realización se puede usar en los dispositivos y sistemas anteriormente descritos.
(Realización 5)
Cada uno del procedimiento de codificación de instantáneas en movimiento, el aparato de codificación de instantáneas en movimiento, el procedimiento de decodificación de instantáneas en movimiento, y el aparato de decodificación de instantáneas en movimiento en cada una de las realizaciones se consigue típicamente en forma de un circuito integrado o un circuito Integrado a Gran Escala (LSI). Como un ejemplo del LSI, la Figura 30 ilustra una configuración del LSI ex500 que se hace en un chip. El LSI ex500 incluye los elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, y ex509 que se van a describir a continuación, y los elementos están conectados entre sí a través de un bus ex510. La unidad de circuito de fuente de alimentación ex505 se activa suministrando a cada uno de los elementos con potencia cuando se activa la unidad de circuito de fuente de alimentación ex505.
Por ejemplo, cuando se realiza codificación, el LSI ex500 recibe una señal de AV desde un micrófono ex117, una cámara ex113, y otros a través de una ES de AV ex509 bajo el control de una unidad de control ex501 que incluye una CPU ex502, un controlador de memoria ex503, un controlador de flujo ex504, y una unidad de control de frecuencia de accionamiento ex512. La señal de AV recibida se almacena temporalmente en una memoria externa ex511, tal como una SDRAM. Bajo el control de la unidad de control ex501, los datos almacenados se segmentan en porciones de datos de acuerdo con la cantidad de procesamiento y velocidad a transmitir a una unidad de procesamiento de señal ex507. A continuación, la unidad de procesamiento de señal ex507 codifica una señal de audio y/o una señal de vídeo. En este punto, la codificación de la señal de vídeo es la codificación descrita en cada una de las realizaciones. Adicionalmente, la unidad de procesamiento de señal ex507 multiplexa en ocasiones los datos de audio codificados y los datos de vídeo codificados, y una ES de flujo ex506 proporciona los datos multiplexados al exterior. Los datos multiplexados proporcionados se transmiten a la estación base ex107, o se escriben en el medio de grabación ex215. Cuando se multiplexan conjuntos de datos, los datos deberían almacenarse temporalmente en la memoria intermedia ex508 de modo que los conjuntos de datos se sincronizan entre sí.
Aunque la memoria ex511 es un elemento fuera del LSI ex500, puede incluirse en el LSI ex500. La memoria intermedia ex508 no se limita a una memoria intermedia, sino que puede estar compuesta por memorias intermedias. Adicionalmente, el LSI ex500 puede estar fabricado en un chip o una pluralidad de chips.
Adicionalmente, aunque la unidad de control ex501 incluye la CPU ex502, el controlador de memoria ex503, el controlador de flujo ex504, la unidad de control de frecuencia de accionamiento ex512, la configuración de la unidad de control ex501 no se limita a esto. Por ejemplo, la unidad de procesamiento de señal ex507 puede incluir adicionalmente una CPU. La inclusión de otra CPU en la unidad de procesamiento de señal ex507 puede mejorar la velocidad de procesamiento. Adicionalmente, como otro ejemplo, la CPU ex502 puede servir como o ser una parte de la unidad de procesamiento de señal ex507, y, por ejemplo, puede incluir una unidad de procesamiento de señal de audio. En un caso de este tipo, la unidad de control ex501 incluye la unidad de procesamiento de señal ex507 o la CPU ex502 que incluye una parte de la unidad de procesamiento de señal ex507.
El nombre usado en el presente documento es LSI, pero puede denominarse también CI, sistema LSI, súper LSI o ultra LSI dependiendo del grado de integración.
Además, las maneras para conseguir la integración no se limitan al LSI, y un circuito especial o un procesador de fin general y así sucesivamente pueden conseguir también la integración. El Campo de Matriz de Puertas Programables (FPGA) que puede programarse después de la fabricación de LSI o un procesador reconfigurable que permite la re­ configuración de la conexión o configuración de un LSI puede usarse para el mismo fin. Un dispositivo lógico programable de este tipo puede ejecutar habitualmente el procedimiento de codificación de instantáneas en movimiento y/o el procedimiento de decodificación de instantáneas en movimiento de acuerdo con cualquiera de las realizaciones anteriores, cargando o leyendo de una memoria o similar uno o más programas que se incluyen en software o firmware.
En el futuro, con el avance de la tecnología de semiconductores, una tecnología nueva puede sustituir a la LSI. Los bloques funcionales pueden integrarse usando una tecnología de este tipo. La posibilidad es que la presente invención se aplique a biotecnología.
(Realización 6)
Cuando se decodifican datos de vídeo generados en el procedimiento de codificación de instantáneas en movimiento o por el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones, en comparación con cuando se decodifican datos de vídeo que se ajustan a una norma convencional, tal como MPEG-2, MPEG-4 AVC, y VC-1, probablemente aumenta la cantidad de procesamiento. Por lo tanto, el LSI ex500 necesita establecer una frecuencia de accionamiento más alta que la de la CPU ex502 a usar cuando se decodifican datos de vídeo de conformidad con la norma convencional. Sin embargo, cuando la frecuencia de accionamiento se establece más alta, existe un problema de que el consumo de potencia aumenta.
Para resolver el problema, el aparato de decodificación de instantáneas en movimiento, tal como la televisión ex300 y el LSI ex500 están configurados para determinar a qué norma se ajustan los datos de vídeo, y conmutar entre las frecuencias de accionamiento de acuerdo con la norma determinada. La Figura 31 ilustra una configuración ex800 en la presente realización. Una unidad de conmutación de frecuencia de accionamiento ex803 establece una frecuencia de accionamiento a una frecuencia de accionamiento superior cuando se generan datos de vídeo por el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones. A continuación, la unidad de conmutación de frecuencia de accionamiento ex803 ordena a la unidad de procesamiento de decodificación ex801 que ejecute el procedimiento de decodificación de instantáneas en movimiento descrito en cada una de las realizaciones para decodificar los datos de vídeo. Cuando los datos de vídeo se ajustan a la norma convencional, la unidad de conmutación de frecuencia de accionamiento ex803 establece una frecuencia de accionamiento a una frecuencia de accionamiento inferior a la de los datos de vídeo generados por el procedimiento de codificación de instantáneas en movimiento o el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones. A continuación, la unidad de conmutación de frecuencia de accionamiento ex803 ordena a la unidad de procesamiento de decodificación ex802 que se ajusta a la norma convencional que decodifique los datos de vídeo.
Más específicamente, la unidad de conmutación de frecuencia de accionamiento ex803 incluye la CPU ex502 y la unidad de control de frecuencia de accionamiento ex512 en la Figura 30. En este punto, cada una de la unidad de procesamiento de decodificación ex801 que ejecuta el procedimiento de decodificación de instantáneas en movimiento descrito en cada una de las realizaciones y la unidad de procesamiento de decodificación ex802 que se ajusta a la norma convencional se corresponden con la unidad de procesamiento de señal ex507 en la Figura 30. La c Pu ex502 determina a qué norma se ajustan los datos de vídeo. A continuación, la unidad de control de frecuencia de accionamiento ex512 determina una frecuencia de accionamiento basándose en una señal desde la CPU ex502. Adicionalmente, la unidad de procesamiento de señal ex507 decodifica los datos de vídeo basándose en la señal desde la CPU ex502. Por ejemplo, la información de identificación descrita en la realización 4 se usa probablemente 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é norma se ajustan los datos de vídeo. Por ejemplo, cuando a qué norma se ajustan los datos de vídeo puede determinarse basándose en 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 puede realizarse basándose en una señal externa de este tipo. Adicionalmente, la CPU ex502 selecciona una frecuencia de accionamiento basándose en, por ejemplo, una tabla de correspondencia en la que las normas de los datos de vídeo están asociadas con las frecuencias de accionamiento como se muestra en la Figura 33. La frecuencia de accionamiento puede seleccionarse almacenando 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 Figura 32 ilustra etapas para ejecutar un procedimiento en la presente realización. En primer lugar, en la etapa exS200, la unidad de procesamiento de señal ex507 obtiene información de identificación desde 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 el procedimiento de codificación y el aparato de codificación descritos en cada una de las realizaciones, basándose en la información de identificación. Cuando los datos de vídeo se generan por el procedimiento de codificación de instantáneas en movimiento y el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones, en la etapa exS202, la CPU ex502 transmite una señal para establecer la frecuencia de accionamiento a una frecuencia de accionamiento superior a la de la unidad de control de frecuencia de accionamiento ex512. A continuación, la unidad de control de frecuencia de accionamiento ex512 establece la frecuencia de accionamiento a la frecuencia de accionamiento más alta. Por otra parte, cuando la información de identificación indica que los datos de vídeo se ajustan a la norma convencional, tal como MPEG-2, AVC de MPEG-4 y VC-1, en la etapa exS203, la CPU ex502 transmite una señal para establecer la frecuencia de accionamiento a una frecuencia de accionamiento inferior a la unidad de control de frecuencia de accionamiento ex512. A continuación, la unidad de control de frecuencia de accionamiento ex512 establece la frecuencia de accionamiento a la frecuencia de accionamiento inferior que la de en el caso en el que los datos de vídeo se generan por el procedimiento de codificación de instantáneas en movimiento y el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones.
Adicionalmente, junto con la conmutación de las frecuencias de accionamiento, el efecto de conservación de potencia puede mejorarse cambiando la tensión a aplicarse al LSI ex500 o a un aparato que incluye el LSI ex500. Por ejemplo, cuando la frecuencia de accionamiento se establece más baja, la tensión a aplicarse al LSI ex500 o al aparato que incluye el LSI ex500 probablemente se establece a una tensión inferior que en el caso en el que la frecuencia de accionamiento se establece más alta.
Adicionalmente, cuando la cantidad de procesamiento para decodificación es mayor, la frecuencia de accionamiento puede establecerse más alta, y cuando la cantidad de procesamiento para decodificación es más pequeña, la frecuencia de accionamiento puede establecerse más baja que el procedimiento para establecer la frecuencia de accionamiento. Por lo tanto, el procedimiento de ajuste no se limita a los anteriormente descritos. Por ejemplo, cuando la cantidad de procesamiento para decodificar datos de vídeo de 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 instantáneas en movimiento y el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones, la frecuencia de accionamiento probablemente se establece en orden inverso al ajuste anteriormente descrito.
Adicionalmente, el procedimiento para establecer la frecuencia de accionamiento no se limita al procedimiento para establecer la frecuencia de accionamiento más baja. Por ejemplo, cuando la información de identificación indica que los datos de vídeo se generan por el procedimiento de codificación de instantáneas en movimiento y el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones, la tensión a aplicarse al LSI ex500 o al aparato que incluye el LSI ex500 probablemente se establece más alta. Cuando la información de identificación indica que los datos de vídeo se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC, y VC-1, la tensión a aplicarse al LSI ex500 o al aparato que incluye el LSI ex500 probablemente se establece más baja. Como otro ejemplo, cuando la información de identificación indica que los datos de vídeo se generan por el procedimiento de codificación de instantáneas en movimiento y el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones, el accionamiento de la CPU ex502 probablemente no tiene que suspenderse. Cuando la información de identificación indica que los datos de vídeo se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC, y VC-1, el accionamiento de la CPU ex502 probablemente se suspende a un tiempo dado puesto que la CPU ex502 tiene capacidad de procesamiento adicional. Incluso cuando la información de identificación indica que los datos de vídeo se generan por el procedimiento de codificación de instantáneas en movimiento y el aparato de codificación de instantáneas en movimiento descritos en cada una de las realizaciones, en el caso en el que la CPU ex502 tiene capacidad de procesamiento adicional, el accionamiento de la CPU ex502 probablemente se suspende en un tiempo dado. En un caso de este tipo, el tiempo de suspensión probablemente se establece más corto que en el caso cuando la información de identificación indica que los datos de vídeo se ajustan a la norma convencional, tal como MPEG-2, MPEG-4 AVC, y VC-1.
Por consiguiente, el efecto de conservación de potencia puede mejorarse conmutando entre las frecuencias de accionamiento de acuerdo con la norma a la que se ajustan los datos de vídeo. Adicionalmente, cuando el LSI ex500 o el aparato que incluye el LSI ex500 se accionan usando una batería, la duración de la batería puede ampliarse con el efecto de conservación de potencia.
(Realización 7)
Existen casos en los que una pluralidad de datos de vídeo que se ajustan a diferentes normas, se proporcionan a los dispositivos y sistemas, tales como una televisión y un teléfono celular. Para posibilitar la decodificación de la pluralidad de datos de vídeo que se ajustan a las diferentes normas, la unidad de procesamiento de señal ex507 del LSI ex500 necesita ajustarse a las diferentes normas. Sin embargo, los problemas de aumento en la escala del circuito del LSI ex500 y el aumento en el coste surgen con el uso individual de las unidades de procesamiento de señal ex507 que se ajustan a las normas respectivas.
Para 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 instantáneas en movimiento descrita en cada una de las realizaciones y la unidad de procesamiento de decodificación que se ajusta a la norma convencional, tal como MPEG-2, AVC de MPEG-4 y VC-1 se comparten parcialmente. Ex900 en la Figura 34A muestra un ejemplo de la configuración. Por ejemplo, el procedimiento de decodificación de instantáneas en movimiento descrito en cada una de las realizaciones y el procedimiento de decodificación de instantáneas en movimiento que se ajusta a AVC de MPEG-4 tienen, parcialmente en común, los detalles de procesamiento, tal como codificación de entropía, cuantificación inversa, filtrado por desbloqueo y predicción con compensación de movimiento. Los detalles de procesamiento a compartir probablemente incluyen el uso de una unidad de procesamiento de decodificación ex902 que se ajusta a MPEG-4 AVC. En contraposición, una unidad de procesamiento de decodificación especializada ex901 probablemente se usa para otro procesamiento único para un aspecto de la presente invención. La unidad de procesamiento de decodificación para implementar el procedimiento de decodificación de instantáneas en movimiento descrita en cada una de las realizaciones puede compartirse para el procesamiento a compartirse, y una unidad de procesamiento de decodificación especializada puede usarse para procesamiento único al de MPEG-4 AVC.
Adicionalmente, ex1000 en la Figura 34B muestra otro ejemplo en el que el procesamiento se comparte parcialmente. Este ejemplo usa una configuración que incluye una unidad de procesamiento de decodificación especializada ex1001 que soporta el procesamiento único de un aspecto de la presente invención, una unidad de procesamiento de decodificación especializada ex1002 que soporta el procesamiento único de otra norma convencional, y una unidad de procesamiento de decodificación ex1003 que soporta procesamiento a compartirse entre el procedimiento de decodificación de instantáneas en movimiento de acuerdo con el aspecto de la presente invención y el procedimiento de decodificación de instantáneas en movimiento convencional. En este punto, las unidades de procesamiento de decodificación especializadas ex1001 y ex1002 no están necesariamente especializadas para el procesamiento de acuerdo con el aspecto de la presente invención y el procesamiento de la norma convencional, respectivamente, y pueden ser las que pueden implementar procesamiento general. Adicionalmente, la configuración de la presente realización puede implementarse por el LSI ex500.
En este sentido, reducir la escala del circuito de un LSI y reducir el coste son posibles compartiendo la unidad de procesamiento de decodificación para el procesamiento a compartirse entre el procedimiento de decodificación de instantáneas en movimiento de acuerdo con el aspecto de la presente invención y el procedimiento de decodificación de instantáneas en movimiento cumpliendo con la norma convencional.
rAplicabilidad industrial!
Un procedimiento de codificación de imagen de acuerdo con un aspecto de la presente divulgación, y un procedimiento de decodificación de imagen de acuerdo con un aspecto de la presente invención son aplicables a, por ejemplo, receptores de televisión, grabadores de vídeo digital, sistemas de navegación de coches, teléfonos móviles, cámaras digitales y cámaras de vídeo digitales.
[Lista de signos de referencia!
10, 100 aparato de decodificación de imagen
I I unidad de decodificación de bloques
12, 22, 112 unidad de determinación de fin de corte
13, 23, 113, 223 unidad de determinación de fin de subflujo
14, 24 unidad de terminación
20, 200 aparato de codificación de imagen
21 unidad de codificación de bloque
110 unidad de decodificación por entropía
I I I unidad de decodificación de CTU
114 unidad de búsqueda de comienzo de bytes
115, 225 unidad de terminación
116, 226 unidad de terminación de subflujo
120, 230 unidad de cuantificación inversa y transformada inversa
125, 235 sumador
130, 240 filtro de bucle
140, 250 memoria
150, 260 unidad de intra predicción
160, 280 unidad de compensación de movimiento
170, 290 conmutador de selector intra/inter
restador
unidad de transformada y cuantificación unidad de codificación por entropía unidad de codificación de CTU unidad de codificación de fin de corte unidad de estimación de movimiento

Claims (4)

REIVINDICACIONES
1. Un procedimiento de decodificación de imagen de decodificación, en una base por bloque, de una imagen codificada incluida en una secuencia de bits, comprendiendo el procedimiento de decodificación de imagen:
realizar la decodificación aritmética (S101) en un bloque actual que va a decodificarse;
realizar la decodificación aritmética (S102) en una bandera de fin de corte que indica si el bloque actual se encuentra o no en el fin del corte,
determinar (S103), basándose en la bandera de fin de corte decodificado, si el bloque actual se encuentra o no en un fin de un corte;
realizar un primer procedimiento de terminación de decodificación aritmética (S104) cuando se determina que el bloque actual se encuentra en el fin del corte, comprendiendo dicho primer procedimiento de terminación de decodificación aritmética resetear un estado de probabilidad interna de la decodificación aritmética; y determinar (S105) si el bloque actual se encuentra o no en un fin de una pieza cuando se determina que el bloque actual no se encuentra en el fin del corte, siendo la pieza una unidad estructural de la imagen que es diferente del corte;
caracterizado por
realizar la decodificación aritmética (S106) en un penúltimo bit incluido en la secuencia de bits después del bloque actual y un segundo procedimiento de terminación de decodificación aritmética (S106), cuando se determina que el bloque actual no se encuentra en el fin del corte y cuando se determina que el bloque actual se encuentra en el fin de la pieza,
en el que la decodificación aritmética (S106) del penúltimo bit siempre restaura un valor de 1, y
en el que, cuando se realiza el segundo procedimiento de terminación de decodificación aritmética, se realiza el mismo procesamiento en el primer procedimiento de terminación de decodificación aritmética.
2. El procedimiento de decodificación de imagen de acuerdo con la reivindicación 1, que comprende adicionalmente cuando se determina que el bloque actual no se encuentra en el fin del corte y cuando se determina que el bloque actual se encuentra en el fin de la pieza, omitir una cadena de bits después de realizar el segundo procedimiento (l06) de terminación de decodificación aritmética, escribiéndose la cadena de bits en la secuencia de bits de modo que una longitud de bits que incluye la pieza y el penúltimo bit es igual a un múltiplo de N bits predeterminados, siendo N un número entero mayor o igual que dos.
3. El procedimiento de decodificación de imagen de acuerdo con la reivindicación 2, en el que, en la realización de la decodificación aritmética en el penúltimo bit, se realiza la decodificación aritmética en un primer bit de la cadena de bits, como el penúltimo bit.
4. Un aparato de decodificación de imagen que decodifica, en una base por bloque, una imagen codificada incluida en una secuencia de bits, comprendiendo el aparato de decodificación de imagen:
circuitería de procesamiento; y
almacenamiento accesible desde la circuitería de procesamiento, en el que la circuitería de procesamiento está configurada para realizar, usando el almacenamiento, todas las etapas de un procedimiento de acuerdo con cualquiera de las reivindicaciones 1 a 3.
ES13827144T 2012-08-09 2013-08-07 Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes Active ES2908100T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201261681206P 2012-08-09 2012-08-09
PCT/JP2013/004777 WO2014024491A1 (ja) 2012-08-09 2013-08-07 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置および画像符号化復号装置

Publications (1)

Publication Number Publication Date
ES2908100T3 true ES2908100T3 (es) 2022-04-27

Family

ID=50066173

Family Applications (4)

Application Number Title Priority Date Filing Date
ES25166543T Active ES3063641T3 (en) 2012-08-09 2013-08-07 Streaming server
ES21213221T Active ES2936058T3 (es) 2012-08-09 2013-08-07 Procedimiento y aparato de codificación de imágenes
ES22206894T Active ES3033730T3 (en) 2012-08-09 2013-08-07 Image decoding method
ES13827144T Active ES2908100T3 (es) 2012-08-09 2013-08-07 Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes

Family Applications Before (3)

Application Number Title Priority Date Filing Date
ES25166543T Active ES3063641T3 (en) 2012-08-09 2013-08-07 Streaming server
ES21213221T Active ES2936058T3 (es) 2012-08-09 2013-08-07 Procedimiento y aparato de codificación de imágenes
ES22206894T Active ES3033730T3 (en) 2012-08-09 2013-08-07 Image decoding method

Country Status (18)

Country Link
US (5) US9237341B2 (es)
EP (5) EP4002850B1 (es)
JP (2) JP5680257B2 (es)
KR (1) KR102130046B1 (es)
CN (2) CN108683917B (es)
AU (2) AU2013300958B2 (es)
BR (1) BR112015001164B1 (es)
CA (1) CA2879707C (es)
ES (4) ES3063641T3 (es)
HU (1) HUE071942T2 (es)
MX (2) MX348737B (es)
MY (1) MY181717A (es)
PH (1) PH12015500197B1 (es)
PL (4) PL2884747T3 (es)
RU (1) RU2646333C2 (es)
SG (1) SG11201500612PA (es)
TW (1) TWI597970B (es)
WO (1) WO2014024491A1 (es)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3968637A1 (en) * 2016-11-21 2022-03-16 Panasonic Intellectual Property Corporation of America Devices and methods for image coding and decoding using a block size dependent split ratio
CN116248868B (zh) * 2017-07-03 2025-11-25 汉阳大学校产学协力团 利用包含追加区域的分割单位的影像解码方法以及装置
WO2019009590A1 (ko) 2017-07-03 2019-01-10 김기백 추가 영역을 포함하는 분할 단위를 이용한 영상 복호화 방법 및 장치
EP3777157A4 (en) * 2018-04-20 2021-05-19 Huawei Technologies Co., Ltd. Line buffer for spatial motion vector predictor candidates
US11252429B2 (en) * 2018-04-27 2022-02-15 Ati Technologies Ulc Low-latency consumption of an encoded video bitstream
KR20210058947A (ko) * 2018-09-20 2021-05-24 샤프 가부시키가이샤 비디오 코딩에서 파라미터들을 시그널링하기 위한 시스템들 및 방법들
JP2022013969A (ja) * 2018-11-16 2022-01-19 シャープ株式会社 動画像符号化装置および動画像復号装置
WO2020130139A1 (ja) 2018-12-21 2020-06-25 シャープ株式会社 動画像符号化装置および動画像復号装置
MX2021006569A (es) * 2018-12-21 2021-07-07 Panasonic Ip Corp America Metodo de codificacion de datos tridimensionales, metodo de decodificacion de datos tridimensionales, dispositivo codificador de datos tridimensionales y dispositivo decodificador de datos tridimensionales.
US11677987B2 (en) * 2020-10-15 2023-06-13 Qualcomm Incorporated Joint termination of bidirectional data blocks for parallel coding

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100301825B1 (ko) * 1997-12-29 2001-10-27 구자홍 엠펙비디오디코디시스템및엠펙비디오디코딩시스템의오버플로우처리방법
JP2003309471A (ja) * 2002-04-15 2003-10-31 Fujitsu Ltd 可変長符号データ復号装置および復号方法
US6906647B2 (en) * 2002-09-20 2005-06-14 Ntt Docomo, Inc. Method and apparatus for arithmetic coding, including probability estimation state table creation
RU2329615C2 (ru) * 2003-12-01 2008-07-20 Самсунг Электроникс Ко., Лтд. Способ масштабируемого кодирования и декодирования видеосигнала и устройство для его осуществления
JP4311570B2 (ja) * 2005-07-01 2009-08-12 株式会社ソニー・コンピュータエンタテインメント 再生装置、ビデオ復号装置および同期再生方法
CN101212676B (zh) * 2006-12-29 2010-06-02 北京展讯高科通信技术有限公司 高效并行cabac解码方法及其装置
CN101005287A (zh) * 2007-01-26 2007-07-25 北京中星微电子有限公司 提高算术编码速度的方法、系统及编码装置
RU2432703C2 (ru) * 2007-04-17 2011-10-27 Нокиа Корпорейшн Масштабируемое видеокодирование с обратной связью
JP2008289125A (ja) * 2007-04-20 2008-11-27 Panasonic Corp 算術復号化装置及びその方法
EP2346255B1 (en) * 2008-10-10 2015-04-08 Panasonic Corporation Image decoding apparatus and image decoding method
JP5072893B2 (ja) * 2009-03-25 2012-11-14 株式会社東芝 画像符号化方法および画像復号化方法
JP2010278668A (ja) * 2009-05-27 2010-12-09 Sony Corp 符号化装置及び符号化方法、並びに復号装置及び復号方法
US20110293004A1 (en) * 2010-05-26 2011-12-01 Jicheng An Method for processing motion partitions in tree-based motion compensation and related binarization processing circuit thereof
US20120014429A1 (en) * 2010-07-15 2012-01-19 Jie Zhao Methods and Systems for Parallel Video Encoding and Parallel Video Decoding
US8976861B2 (en) * 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
FR2970134B1 (fr) * 2010-12-29 2013-01-11 Viaccess Sa Procede de transmission et de reception d'un contenu multimedia
US9819968B2 (en) * 2011-01-12 2017-11-14 Texas Instruments Incorporated Method and apparatus for error detection in CABAC
US9215473B2 (en) * 2011-01-26 2015-12-15 Qualcomm Incorporated Sub-slices in video coding
US9124895B2 (en) * 2011-11-04 2015-09-01 Qualcomm Incorporated Video coding with network abstraction layer units that include multiple encoded picture partitions
CN108600753B (zh) * 2011-12-29 2020-10-27 Lg 电子株式会社 视频编码和解码方法和使用该方法的装置
CN104081781B (zh) * 2012-01-20 2018-11-02 Ge视频压缩有限责任公司 一种编码器、解码器、编解码方法及用于传送解多工的方法
KR102659283B1 (ko) * 2012-06-29 2024-04-22 지이 비디오 컴프레션, 엘엘씨 비디오 데이터 스트림 개념
US20140010277A1 (en) * 2012-07-09 2014-01-09 Qualcomm, Incorporated Supplemental enhancement information (sei) messages having a fixed-length coded video parameter set (vps) id

Also Published As

Publication number Publication date
HUE071942T2 (hu) 2025-10-28
MX341828B (es) 2016-09-05
TWI597970B (zh) 2017-09-01
PL4002850T3 (pl) 2023-05-08
EP4554228A3 (en) 2025-07-02
US20190174147A1 (en) 2019-06-06
AU2017225114B2 (en) 2019-02-07
CN104509116A (zh) 2015-04-08
AU2017225114A1 (en) 2017-09-28
JP5680257B2 (ja) 2015-03-04
MX348737B (es) 2017-06-27
PH12015500197B1 (en) 2018-03-14
ES3063641T3 (en) 2026-04-17
JP2015062324A (ja) 2015-04-02
US9237341B2 (en) 2016-01-12
US9930372B2 (en) 2018-03-27
CN108683917B (zh) 2021-03-30
AU2013300958A1 (en) 2015-02-12
MX2015000630A (es) 2015-05-11
BR112015001164B1 (pt) 2023-04-11
EP2884747A4 (en) 2015-08-19
ES3033730T3 (en) 2025-08-07
US9800900B2 (en) 2017-10-24
EP4156690C0 (en) 2025-06-11
PH12015500197A1 (en) 2015-03-16
AU2013300958B2 (en) 2017-08-03
EP4002850A1 (en) 2022-05-25
RU2015101429A (ru) 2016-08-10
EP4554228C0 (en) 2025-12-10
EP4156690A1 (en) 2023-03-29
CA2879707C (en) 2021-05-18
US20180176605A1 (en) 2018-06-21
SG11201500612PA (en) 2015-04-29
PL4156690T3 (pl) 2025-11-17
WO2014024491A1 (ja) 2014-02-13
EP4554228B1 (en) 2025-12-10
EP4664894A3 (en) 2025-12-24
JPWO2014024491A1 (ja) 2016-07-25
CN108683917A (zh) 2018-10-19
EP4554228A2 (en) 2025-05-14
TW201412129A (zh) 2014-03-16
MY181717A (en) 2021-01-05
EP2884747B1 (en) 2022-02-16
PL4554228T3 (pl) 2026-04-13
BR112015001164A2 (pt) 2017-06-27
PL2884747T3 (pl) 2022-05-30
KR20150040857A (ko) 2015-04-15
US10244267B2 (en) 2019-03-26
US20160088317A1 (en) 2016-03-24
ES2936058T3 (es) 2023-03-14
CA2879707A1 (en) 2014-02-13
EP2884747A1 (en) 2015-06-17
EP4664894A2 (en) 2025-12-17
US20140044163A1 (en) 2014-02-13
EP4156690B1 (en) 2025-06-11
RU2646333C2 (ru) 2018-03-02
EP4002850B1 (en) 2022-12-21
US20170353739A1 (en) 2017-12-07
JP6161008B2 (ja) 2017-07-12
US10602193B2 (en) 2020-03-24
KR102130046B1 (ko) 2020-07-03
CN104509116B (zh) 2018-06-12

Similar Documents

Publication Publication Date Title
ES2625097T3 (es) Método de codificación de imágenes y aparato de codificación de imágenes
ES2936271T3 (es) Procedimiento de codificación de imágenes
ES2924280T3 (es) Procedimiento de descodificación de imágenes y aparato de descodificación de imágenes
ES2843502T3 (es) Señalización de banderas de bloque codificado (CBF) de luminancia-crominancia en codificación de vídeo
ES2800049T3 (es) Procedimientos y aparatos para codificar y decodificar vídeo utilizando una descripción actualizada de memoria intermedia
ES2728146T3 (es) Procedimientos y aparato de codificación y decodificación de vídeo utilizando predicción temporal de vector de movimiento
ES2936333T3 (es) Procedimiento de codificación de imágenes de vídeo, procedimiento de decodificación de imágenes de vídeo, dispositivo de codificación de imágenes de vídeo, dispositivo de decodificación de imágenes de vídeo y dispositivo de codificación-decodificación de imágenes de vídeo
ES2985582T3 (es) Dispositivo de 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
ES2908100T3 (es) Procedimiento de decodificación de imágenes, dispositivo de decodificación de imágenes
ES2923648T3 (es) Procedimiento de codificación de imágenes de vídeo, procedimiento de decodificación de imágenes de vídeo
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
ES2754784T3 (es) Procedimiento de decodificación de vídeo, aparato de decodificación de vídeo
ES2874762T3 (es) Procedimiento de codificación de vídeo y procedimiento de decodificación de vídeo
JP6365924B2 (ja) 画像復号方法及び画像復号装置