ES2281640T3 - Procedimiento de codificacion de longitud variable y procedimiento de decodificacion de longitud variable. - Google Patents
Procedimiento de codificacion de longitud variable y procedimiento de decodificacion de longitud variable. Download PDFInfo
- Publication number
- ES2281640T3 ES2281640T3 ES03720906T ES03720906T ES2281640T3 ES 2281640 T3 ES2281640 T3 ES 2281640T3 ES 03720906 T ES03720906 T ES 03720906T ES 03720906 T ES03720906 T ES 03720906T ES 2281640 T3 ES2281640 T3 ES 2281640T3
- Authority
- ES
- Spain
- Prior art keywords
- probability
- unit
- value
- coefficient
- decoding
- 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.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/18—Methods 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 a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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 a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Un procedimiento de decodificación para decodificar aritméticamente un flujo de bits que se obtiene codificando aritméticamente, sobre una base de bloque, coeficientes de una matriz bidimensional de componentes de frecuencia en un orden de barrido predeterminado empezando en una componente de alta frecuencia hacia una componente de baja frecuencia, siendo generados dichos coeficientes por transformación de frecuencia realizada sobre datos de imágenes de un bloque que tiene un tamaño de píxeles predeterminado, comprendiendo el procedimiento de decodificación: una etapa de decodificación aritmética de decodificar aritméticamente el flujo de bits en cada valor absoluto de los coeficientes, sobre una base de bloque, según un orden de barrido predeterminado empezando en una componente de alta frecuencia hacia una componente de baja frecuencia usando una pluralidad de tablas de probabilidad; una etapa de cambio de cambiar de una tabla de probabilidad a una nueva tabla de probabilidad basada en unresultado de una comparación de un valor absoluto de un coeficiente objetivo que ha de ser decodificado con un valor umbral predeterminado; y una etapa de disposición de coeficientes de disponer, sobre una base de bloque, cada valor absoluto de los coeficientes en la matriz bidimensional de componentes de frecuencia; en el que, en la etapa de cambio, el cambio entre una pluralidad de tablas de probabilidad se realiza en una dirección de manera que cada tabla de probabilidad, que ha sido usada antes que dicha nueva tabla de probabilidad, no se usa después de cambiar a dicha nueva tabla de probabilidad.
Description
Procedimiento de codificación de longitud
variable y procedimiento de decodificación de longitud variable.
La presente invención se refiere a codificación
y decodificación de datos de imágenes, y más particularmente a un
procedimiento de realización de codificación aritmética y
decodificación aritmética sobre valores de coeficientes de datos de
imágenes.
En el procesamiento de codificación de imágenes
en movimiento, la información se comprime generalmente utilizando
redundancia espacial y temporal incluida en una imagen en
movimiento. Normalmente, se usa transformación en el dominio de
frecuencia como un procedimiento de utilización de redundancia
espacial, mientras que se usa codificación por predicción entre
imágenes como un procedimiento de utilización de redundancia
temporal.
En el procedimiento de codificación de imágenes
en movimiento H.263, se emplea un modo que usa codificación
aritmética como un procedimiento de codificación de longitud
variable (por ejemplo, consúltese la "ITU-T
Recommendation H.263: "Video Coding for Low Bit Rate
Communication" (1998), Annex E").
En tal procedimiento de codificación de longitud
variable, se realiza transformación de frecuencia sobre cada bloque
de 4x4 píxeles de tamaño, y además se realiza cuantificación sobre
tal bloque para generar valores de coeficientes. Después, se
realiza escaneado comenzando en una componente de alta frecuencia
hacia componentes de frecuencia inferior (componentes de corriente
continua), y se generan combinaciones de un número R que indica una
serie de "ceros" y un valor de coeficiente L posterior a él.
Posteriormente, después de convertir (transformar en binario)
números R, los valores absolutos de los valores de coeficiente L, y
los signos de los valores de coeficiente L en datos binarios
formados de "0" y "1" mediante el uso de una tabla
binaria, se realiza codificación aritmética binaria sobre tales
datos binarios cambiando el uso entre una pluralidad de tablas de
probabilidad. Se usa una tabla mostrada en la Fig. 1, por ejemplo,
como una tabla binaria para los valores absolutos de los valores de
coeficiente L.
La Fig. 1 es un diagrama de tabla que muestra
una tabla binaria de ejemplo.
Cuando se realiza transformación en binario
sobre el valor absoluto "2" de un valor de coeficiente L usando
la tabla binaria mostrada en la Fig. 1, por ejemplo, tal valor
absoluto es convertido en el dato binario "01". También,
cuando se realiza transformación en binario del valor absoluto
"3" de un valor de coeficiente L, tal valor absoluto es
convertido en el dato binario "001".
Cuando se realiza codificación aritmética sobre
datos binarios derivados del valor absoluto de un valor de
coeficiente L, se cambia una tabla de probabilidad a otra basada en
un diagrama de transición mostrado en la Fig. 2, dependiendo del
valor absoluto del valor de coeficiente L previo.
La fig. 2 es un diagrama de transición que
muestra un procedimiento de cambio entre tablas de probabilidad
según una técnica existente.
En primer lugar, se realiza codificación
aritmética sobre el valor absoluto del primer valor de coeficiente
L, usando una tabla de probabilidad 1. Para los valores de
coeficiente L posteriores, se cambia una tabla de probabilidad a
otra dependiendo del valor de coeficiente L previo de cada uno de
tales valores de coeficiente L. Más específicamente, se usa una
tabla de probabilidad 2 cuando del valor absoluto del valor de
coeficiente L previo es 1, se usa una tabla de probabilidad 3
cuando el valor absoluto del valor de coeficiente L previo es 2, y
se usa una tabla de probabilidad 4 cuando el valor absoluto del
valor de coeficiente L previo es 3 o un valor mayor.
En este caso, una determinación sobre una tabla
de probabilidad depende completamente del valor absoluto del valor
de coeficiente L previo.
Además, cada una de las propias tablas de
probabilidad es actualizada dependiendo de si el dato binario
introducido es "0" o "1". En este caso, cada
actualización se realiza de una manera en que la probabilidad de
"0" se incrementa cuando el dato binario introducido es
"0" y la probabilidad de "1" se incrementa cuando el dato
binario introducido es "1". Por consiguiente, se hacen
adaptaciones sobre las tablas de probabilidad de manera que se
ajustarán a la frecuencia a la que se introducen datos binarios.
En la técnica existente anterior, se cambia de
una tabla de probabilidad a otra dependiendo del valor absoluto del
valor de coeficiente L previo. Generalmente, los valores absolutos
de coeficientes sobre los que se ha realizado transformación de
frecuencia tienden a ser mayores en la dirección de componentes de
frecuencia superior hacia componentes de frecuencia inferior. Por
lo tanto, existe un problema con el uso de la técnica existente
anteriormente mencionada de que el cambio de una tabla de
probabilidad no puede soportar una tendencia creciente de
coeficientes en un caso en que el valor absoluto de un cierto
coeficiente es menor que el del coeficiente previo, conduciendo a
menor eficiencia de codificación.
El documento US2001/0048769A1 desvela un
procedimiento y un sistema para comprimir información de imágenes
en movimiento por medio de codificación predictiva con una alta
relación de compresión aunque manteniendo alta calidad de imagen.
Una imagen en cada fotograma se divide en bloques de antemano, y
cada uno de todos los bloques es aproximado (sustituido por) un
único plano definido por tres datos que representan la magnitud de
la intensidad del bloque, el gradiente de bloque a bloque de la
intensidad en la dirección x, y el gradiente de bloque a bloque de
la intensidad en la dirección y. Además, se comparan entre sí los
píxeles correspondientes en cada bloque que consta de n x m píxeles
entre fotogramas, y se genera información diferencial según el
resultado de la comparación. Los píxeles indicados como que no son
mayores que un parámetro son tratados (eliminados) como píxeles que
no tienen diferencia entre fotogramas. Se lleva a cabo información
de compresión para píxeles indicados como que son mayores que el
parámetro.
El documento US5.751.232 desvela un aparato de
codificación de alta eficiencia que tiene un circuito de división
de datos que aplica barrido unidimensional a los datos de
transformación ortogonal obtenidos aplicando transformación
ortogonal a datos digitales agrupados en bloques en la unidad de
bloque y divide los datos en datos de longitud de la serie y datos
de coeficientes, un circuito de codificación que aplica codificación
de longitud de la serie a los datos de longitud de la serie
divididos empleando datos de la más alta probabilidad de aparición
(por ejemplo 0), y un circuito de codificación que aplica
codificación de longitud de la serie a los datos de coeficientes
divididos empleando datos de la más alta probabilidad de aparición
(por ejemplo 1), reduce así la cantidad de los datos digitales.
El documento US2001/0024526A1 desvela un aparato
de decodificación de imágenes que usa valores de píxeles
procedentes de al menos tres píxeles de referencia donde la
codificación aritmética de bloques de datos codificados de DCT se
realiza seleccionando la tabla de probabilidad según el valor del
coeficiente de codificación objetivo.
El documento EP0720379A2 desvela un
procedimiento y un dispositivo de decodificación por lo tanto donde
el cambio entre una pluralidad de tablas de probabilidad que se han
de usar en codificación aritmética se hace según la magnitud del
píxel o la situación/combinación de los píxeles circundantes de los
datos de imágenes que han de ser codificados.
El documento EP0873017A1 desvela un codificador
de imágenes y un decodificador de imágenes donde el cambio entre al
menos tres tablas de codificación se hace en correspondencia con el
patrón de los datos de imágenes.
En vista del problema anterior, un objeto de la
presente invención es proporcionar un procedimiento de
decodificación de longitud variable que proporcione una mayor
eficiencia de codificación en el momento de realizar codificación de
imagen.
Para lograr el objeto anterior, se propone el
procedimiento de decodificación tal como se define en la
reivindicación 1 según la presente invención.
Generalmente, los valores absolutos de valores
de coeficiente son mayores hacia las componentes de frecuencia
inferiores. Por lo tanto, cuando se aplica barrido al dominio de
alta frecuencia y después al dominio de baja frecuencia, es
probable que los valores absolutos de los valores de coeficiente
aumenten en tal orden. Así, como se describió anteriormente, en el
procedimiento de codificación de longitud variable según la presente
invención, una tabla de probabilidad que ha de usarse se cambia a
otra en una dirección cuando existe, en los valores de coeficiente
codificados aritméticamente, un valor absoluto que excede un valor
de coeficiente predeterminado. A partir de entonces, aunque el
valor absoluto de un valor de coeficiente se haga menor que tal
valor umbral predeterminado, tal valor de coeficiente será
codificado aritméticamente sin cambiar una tabla de probabilidad
que ha de usarse en la dirección opuesta. Mediante esta operación,
la actualización de una tabla de probabilidad se vuelve más
fácilmente adaptable a entradas de valores de coeficiente cuyos
valores absolutos tienden generalmente a ser mayores en la dirección
de las componentes de frecuencia superior a las componentes de
frecuencia inferior. Esto posibilita en consecuencia que la
probabilidad de aparición de símbolos ("0" o "1" en datos
binarios) en cada tabla de probabilidad sea más parcial (es decir,
la probabilidad de aparición de "0" o "1" se vuelve un
valor más próximo a 1,0). La codificación aritmética tiene una
característica de que cuanto más parciales son los valores de
probabilidad en una tabla de probabilidad, más alta se vuelve la
eficiencia de codificación. En consecuencia, el uso del
procedimiento de codificación de longitud variable según la presente
invención resulta en una eficiencia de codificación mejorada.
Por consiguiente, se hace posible decodificar
apropiadamente un flujo de bits codificado mediante el uso del
procedimiento de codificación de longitud variable.
Obsérvese que la presente invención puede
llevarse a cabo no sólo como un procedimiento de codificación de
longitud variable como se describió anteriormente, sino también como
un aparato de decodificación de longitud variable que tiene, como
sus etapas, las etapas características incluidas en el procedimiento
de decodificación de longitud variable, y llevarse a cabo como un
aparato de decodificación de imagen para decodificar una imagen en
movimiento que está equipada con el aparato anterior, así como que
se lleva a cabo como un programa que hace que un ordenador ejecute
tales etapas características. Y debe observarse que tal programa
puede ser distribuido por medios de grabación que incluyen
CD-ROM y similares, y medios de transmisión que
incluyen Internet y similares.
La Fig. 1 es un diagrama de tabla que muestra
una tabla binaria de ejemplo.
La Fig. 2 es un diagrama de transición que
muestra un procedimiento de cambio entre tablas de probabilidad
según una técnica existente.
La Fig. 3 es un diagrama de bloques que muestra
una configuración de un aparato de codificación de imágenes según
una primera realización de la presente invención.
La Fig. 4 es un diagrama de bloques que muestra
una configuración interna de una unidad de codificación de longitud
variable según la primera realización de la presente invención.
La Fig. 5A y la Fig. 5B son diagramas
esquemáticos que muestran esquemáticamente bloques de coeficientes
producidos por una unidad de cuantificación según la primera
realización de la presente invención.
La Fig. 6A, la Fig. 6B y la Fig. 6C son
diagramas esquemáticos que muestran esquemáticamente secuencias RL
producidas por una unidad de generación de secuencias RL según la
primera realización de la presente invención.
La Fig. 7 es un diagrama de transición que
muestra un procedimiento de cambio entre tablas de probabilidad
según la primera realización de la presente invención.
La Fig. 8 es un diagrama de contenido de tabla
de probabilidad que muestra el contenido de una tabla de
probabilidad según la primera realización de la presente
invención.
La Fig. 9 es un diagrama de transición que
muestra un procedimiento de cambio entre las tablas de probabilidad
empleadas por una unidad de codificación aritmética según una
variación de la presente invención.
La Fig. 10 es un diagrama explicativo que
explica un caso en que la unidad de codificación aritmética según la
variación de la presente invención usa dos tablas de probabilidad
para el valor absoluto de cada valor de coeficiente.
La Fig. 11 es un diagrama de bloques que muestra
una configuración de un aparato de decodificación de imágenes según
una segunda realización de la presente invención.
La Fig. 12 es un diagrama de bloques que muestra
una configuración interna de una unidad de decodificación de
longitud variable según la segunda realización de la presente
invención.
La Fig. 13A, la Fig. 13B y la Fig. 13C son
diagramas explicativos que muestran un medio de grabación según una
tercera realización de la presente invención.
La Fig. 14 es un diagrama de bloques que muestra
una configuración general de un sistema de suministro de contenido
según una cuarta realización de la presente invención.
La Fig. 15 es una vista frontal de un teléfono
celular según la cuarta realización de la presente invención.
La Fig. 16 es un diagrama de bloques que muestra
el teléfono celular según la cuarta realización de la presente
invención.
La Fig. 17 es un diagrama de bloques que muestra
una configuración general de un sistema de radiodifusión digital
según la cuarta realización de la presente invención.
Primera
realización
Lo siguiente explica un aparato de codificación
de imágenes según la primera realización de la presente invención
con referencia a las figuras.
La Fig. 3 es un diagrama de bloques que muestra
la configuración de un aparato de codificación de imágenes 100 según
la primera realización de la presente invención.
Este aparato de codificación de imágenes 100,
que realiza codificación intra-imágenes sobre una
imagen de entrada (datos de imágenes) con eficiencia de
codificación mejorada, está compuesto de una unidad de conversión
de bloques 101, una unidad de transformación de frecuencia 102, una
unidad de cuantificación 103, y una unidad de codificación de
longitud variable 104.
La unidad de conversión de bloques 101 divide
una imagen de entrada en bloques de píxeles con un tamaño de 4 x 4
píxeles en direcciones horizontal y vertical, y los transfiere a la
unidad de transformación de frecuencia 102.
La unidad de transformación de frecuencia 102
realiza transformación de frecuencia sobre cada uno de los bloques
de píxeles anteriormente divididos para generar coeficientes de
frecuencia. Después, la unidad de transformación de frecuencia 102
transfiere tales coeficientes de frecuencia generados a la unidad de
cuantificación 103.
La unidad de cuantificación 103 realiza
cuantificación sobre los coeficientes de frecuencia transferidos por
la unidad de transformación de frecuencia 102. Cuantificación
significa aquí el procesamiento equivalente a dividir un
coeficiente de frecuencia por un valor de cuantificación
predeterminado. Por otra parte, un valor de cuantificación varía
dependiendo generalmente de un bloque de píxeles y una banda de
frecuencia. Posteriormente, la unidad de cuantificación 103
transfiere los coeficientes de frecuencia cuantificados a la unidad
de codificación de longitud variable 104.
La unidad de codificación de longitud variable
104 realiza codificación de longitud variable sobre los coeficientes
de frecuencia cuantificados por la unidad de cuantificación 103.
La Fig. 4 es un diagrama de bloques que muestra
una configuración interna de la unidad de codificación de longitud
variable 104.
Como se muestra en la Fig. 4, la unidad de
codificación de longitud variable 104 está formada de una unidad de
generación de secuencia RL 201, una unidad de reordenación 202, una
unidad de transformación en binario 203, una unidad de
almacenamiento de tablas 204, y una unidad de codificación
aritmética 205.
La unidad de generación de secuencia RL 201
convierte los coeficientes de frecuencia cuantificados (en lo
sucesivo abreviados como "coeficientes") transferidos por la
unidad de cuantificación 103 en coeficientes unidimensionales,
usando un procedimiento de barrido predeterminado. Después, la
unidad de generación de secuencia RL 201 genera una secuencia
(denominada en lo sucesivo "secuencia RL") formada de
combinaciones de un número R que indica una serie de coeficientes
"cero" y el valor de coeficiente subsiguiente L que indica un
coeficiente no "cero" (denominados en lo sucesivo "valores
RL"). Se explica un ejemplo de esto con referencia a las Figs. 5
y 6.
La Fig. 5A muestra un bloque de coeficientes
formado de una pluralidad de coeficientes transferidos por la
unidad de cuantificación 103. Aquí, el coeficiente de frecuencia
superior izquierdo indica una componente de corriente continua, y
las componentes de frecuencia en la dirección horizontal aumentan
hacia la derecha mientras que las componentes de frecuencia en la
dirección vertical aumentan hacia abajo.
La Fig. 5B es un diagrama explicativo para
explicar un procedimiento de barrido para unidimensionalizar una
pluralidad de coeficientes dentro de un bloque de coeficientes. Como
se indica por flechas en la Fig. 5B, la unidad de generación de
secuencia RL 201 unidimesionaliza coeficientes realizando barrido
dentro del bloque de coeficientes empezando desde el dominio de
baja frecuencia hacia el dominio de alta frecuencia.
La Fig. 6A muestra una secuencia RL transferida
por la unidad de generación de secuencia RL 201. En la Fig. 6A, el
primer número indica el número de coeficientes. Generalmente, es más
probable que un valor de coeficiente sea "0" en el dominio de
alta frecuencia. Por lo tanto, realizando barrido empezando desde el
dominio de baja frecuencia hacia el dominio de alta frecuencia, es
posible reducir la cantidad de información incluida en una
secuencia RL (de la cual, la cantidad de información de los números
R). La secuencia RL generada es introducida en la unidad de
reordenación 202.
La unidad de reordenación 202 ordena en orden
inverso la secuencia RL introducida. Sin embargo, el número de
coeficientes no será reordenado.
La Fig. 6B muestra la secuencia RL reordenada
por la unidad de reordenación 202. Realizando reordenación de esta
manera, es posible reducir la cantidad de información tal como se
describió anteriormente, y por consiguiente unidimensionalizar
coeficientes aplicando barrido al bloque de coeficientes desde el
dominio de lata frecuencia hacia el dominio de baja frecuencia.
Posteriormente, la secuencia RL reordenada de la manera anterior es
transferida a la unidad de transformación en binario 203.
La unidad de transformación en binario 203
realiza transformación en binario sobre el número de coeficientes y
cada valor RL, es decir, los convierte en datos binarios formados de
"0" y "1". Aquí, los números R y los valores de
coeficiente L son transformados en binario por separado.
La Fig. 6C muestra sólo los valores de
coeficiente L en la secuencia RL reordenados por la unidad de
reordenación 202. Los valores absolutos y los signos de estos
valores de coeficiente L son procesados por separado. Por otra
parte, la unidad de transformación en binario 203 realiza
transformación en binario sobre los números R y los valores
absolutos de los valores de coeficiente L, usando una tabla binaria
predeterminada como la mostrada en la Fig. 1, por ejemplo. Después,
la unidad de transformación en binario 203 transfiere, a la unidad
de codificación aritmética 205, datos binarios resultantes de
realizar transformación en binario sobre ellos.
La unidad de codificación aritmética 205 realiza
codificación aritmética binaria sobre los números R y los valores
absolutos de los valores de coeficiente L representados como datos
binarios, mientras que al mismo tiempo codifica los signos de los
valores de coeficiente L. Aquí se ofrece una explicación de
codificación aritmética que se ha de realizar sobre el valor
absoluto de un valor de coeficiente L. La unidad de codificación
aritmética 205 usa una pluralidad de tablas de probabilidad
cambiando entre ellas, al realizar codificación aritmética sobre el
valor absoluto de un valor de coeficiente L representado como datos
binarios. Tal pluralidad de tablas de probabilidad es almacenada
por la unidad de almacenamiento de tablas 204.
La Fig. 7 es un diagrama de transición que
muestra un procedimiento de cambio entre tablas de probabilidad.
Como muestra la Fig. 7, la unidad de
codificación aritmética 205 usa cuatro tablas de probabilidad, de la
cuales se usa la tabla de probabilidad 1 para realizar codificación
aritmética sobre el valor absoluto del primer valor de coeficiente
L. Mientras tanto, para un valor de coeficiente L posterior, la
unidad de codificación aritmética 205 cambia a otra tabla de
probabilidad para uso, dependiendo del número de tabla de una tabla
de probabilidad usada para codificar el valor absoluto del valor de
coeficiente L previo, así como de tal valor absoluto. Aquí, cuatro
tablas de probabilidad son la tabla de probabilidad 1, la tabla de
probabilidad 2, la tabla de probabilidad 3 y la tabla de
probabilidad 4, y el número de tabla de la tabla de probabilidad 1
es "1", el número de tabla de la tabla de probabilidad 2 es
"2", el número de tabla de la tabla de probabilidad 3 es
"3", y el número de tabla de la tabla de probabilidad 4 es
"4".
Más específicamente, se usa la tabla de
probabilidad 2 cuando se satisface una de las siguientes
condiciones: cuando se usa la tabla de probabilidad 1 para
codificar el valor absoluto del valor de coeficiente L previo y su
valor absoluto es "1"; y cuando se usa la tabla de probabilidad
2 para codificar el valor absoluto del valor de coeficiente L
previo y su valor absoluto es "1". Mientras tanto, se usa la
tabla de probabilidad 3 cuando se satisface una de las siguientes
condiciones: cuando se usa la tabla de probabilidad 1 para codificar
el valor absoluto del valor de coeficiente L previo y su valor
absoluto es "2"; cuando se usa la tabla de probabilidad 2 para
codificar el valor absoluto del valor de coeficiente L previo y su
valor absoluto es "2"; y cuando se usa la tabla de
probabilidad 3 para codificar el valor absoluto del valor de
coeficiente L previo y su valor absoluto es "2 o menor". Y se
usa la tabla de probabilidad 4 cuando se satisface una de las
siguientes condiciones: cuando el valor absoluto del valor de
coeficiente L previo es "3 o un valor mayor";
y cuando se usa la tabla de probabilidad 4 para codificar el valor absoluto del valor de coeficiente L previo.
y cuando se usa la tabla de probabilidad 4 para codificar el valor absoluto del valor de coeficiente L previo.
Como se describió anteriormente, las tablas de
probabilidad se cambian en una dirección, es decir, de una tabla de
probabilidad con un número de tabla menos a una tabla de
probabilidad con un número de tabla mayor. Por consiguiente, aun
cuando el valor absoluto del valor de coeficiente L previo sea igual
o menor que un valor umbral predeterminado, las tablas de
probabilidad no serán cambiadas en la dirección opuesta. Este es el
punto que distingue la presente invención de la técnica
existente.
La Fig. 8 es un diagrama de contenido de tabla
de probabilidad que muestra el contenido de las cuatro tablas 1
\sim 4 anteriormente mencionadas.
Como se muestra en la Fig. 8, cada una de las
cuatro tablas de probabilidad 1 \sim 4 está formada de la
probabilidad con la que se produce "0" y la probabilidad con la
que se produce "1".
Por ejemplo, la tabla de probabilidad 1 está
formada de la probabilidad "0,1" con la que se produce "0"
y la probabilidad "0,9" con la que se produce "1", y la
tabla de probabilidad 2 está formada de la probabilidad "0,2"
con la que se produce "0" y la probabilidad "0,8" con la
que se produce "1".
Para ponerlo de otra manera, cuando el valor
absoluto de un valor de coeficiente L es "2", el resultado de
transformar en binario "2" es "01" y, por lo tanto, cuando
se usa la tabla de probabilidad 1 para realizar codificación
aritmética sobre "01", la unidad de codificación aritmética 205
realiza codificación aritmética sobre "01" usando la
probabilidad "0,1" que corresponde a "0" en tal "01"
y la probabilidad "0,9" que corresponde a "1" en tal
"01".
Aquí, como la suma de la probabilidad con la que
se produce "0" y la probabilidad con la que se produce "1"
es 1,0, no es necesario mantener estas dos probabilidades, y por lo
tanto sólo puede conservarse alguna de las probabilidades.
Lo siguiente explica un procedimiento de ejemplo
de cambio entre tablas de probabilidad en un caso en que se realiza
codificación sobre los valores absolutos (valores transformados en
binario) de los valores de coeficiente L mostrados en la Fig.
6C.
La unidad de codificación aritmética 205 usa la
tabla de probabilidad 1 para el valor absoluto del primer valor de
coeficiente L (-2). Aquí, como el valor absoluto de tal valor de
coeficiente L es 2, la unidad de codificación aritmética 205 cambia
el uso de la tabla de probabilidad 1 a la tabla de probabilidad 3.
En consecuencia, la unidad de codificación aritmética 205 usa la
tabla de probabilidad 3 para realizar codificación aritmética sobre
el valor absoluto del segundo valor de coeficiente L (3). Aquí, como
el valor absoluto de tal valor de coeficiente L es "3", la
unidad de codificación aritmética 205 cambia el uso de la tabla de
probabilidad 3 a la tabla de probabilidad 4. en consecuencia, la
unidad de codificación aritmética 205 usa la tabla de probabilidad
4 para realizar codificación aritmética sobre el valor absoluto del
tercer valor de coeficiente L (6). Aquí, como la tabla de
probabilidad que ha de usarse ha sido cambiada a la tabla de
probabilidad 4, la unidad de codificación aritmética 205 usa la
tabla de probabilidad 4 para realizar codificación aritmética sobre
los valores absolutos de todos los valores de coeficiente L
posteriores. Por ejemplo, el valor absoluto del quinto valor de
coeficiente L es "2", pero a diferencia de la técnica
existente, la unidad de codificación aritmética 205 usa la tabla de
probabilidad 4 cuando realiza codificación aritmética sobre el valor
absoluto del sexto valor de coeficiente L y posteriores al mismo,
sin cambiar a otra tabla de probabilidad.
Además, como cada una de las tablas de
probabilidad son actualizadas según se necesite dependiendo de si
una entrada es "0" o "1", tales tablas de probabilidad
son actualizadas para adaptarse a las entradas.
Como se describió anteriormente, en el
procedimiento de codificación de longitud variable empleado por la
unidad de codificación de longitud variable 104 en el aparato de
codificación de imágenes 100 según la presente invención, se
realiza unidimensionalización sobre coeficientes dentro de un bloque
de coeficientes haciendo un barrido de los mismos empezando desde
el dominio de baja frecuencia hacia el dominio de alta frecuencia.
Después, genera una secuencia de valores RL (secuencia RL) formada
de combinaciones de un número R que indica una serie de valores de
coeficiente "cero" y un valor de coeficiente L no "cero"
posterior a él. Tales valores RL son convertidos luego en códigos
de longitud variable en un orden opuesto al que se ha aplicado el
barrido. Cuando los valores RL son convertidos en códigos de
longitud variable, los números R, los valores absolutos de valores
de coeficiente L y los signos de los valores de coeficiente L son
convertidos por separado. Cuando son convertidos, la transformación
en binario se realiza primero, la cual es seguida por codificación
aritmética. Para realizar codificación aritmética sobre los valores
absolutos de los valores de coeficiente L, se cambia entre una
pluralidad de tablas de probabilidad. Cuando se cambia de una tabla
de probabilidad a otra tabla de probabilidad, se determina una
tabla de probabilidad que ha de usarse para codificar el valor
absoluto del siguiente valor de coeficiente L dependiendo del
número de tabla de la tabla de probabilidad actual y del valor
absoluto del valor de coeficiente L actual. Las tablas de
probabilidad se cambiarán sólo en una dirección, y una vez que el
valor absoluto de un valor de coeficiente L excede un valor
predeterminado, a partir de entonces se usa la misma tabla de
probabilidad para realizar codificación aritmética.
Cuando se aplica barrido primero desde el
dominio de alta frecuencia y después al dominio de baja frecuencia,
es probable que los valores absolutos de los valores de coeficiente
L aumenten en tal orden, ya que los valores absolutos de los
valores de coeficiente L son generalmente más grandes hacia el
dominio de baja frecuencia. Por lo tanto, una vez que el valor
absoluto de un valor de coeficiente L excede un valor
predeterminado, aunque el valor absoluto de otro valor de
coeficiente L se haga menor que tal valor predeterminado después de
eso, es muy posible que sólo sea pequeño el valor absoluto de tal
valor de coeficiente. De este modo, realizando codificación
aritmética mediante el uso de la misma tabla de probabilidad, la
actualización de una tabla de probabilidad se vuelve más fácilmente
adaptable a las entradas. Esto posibilita, por consiguiente, que la
probabilidad de aparición de símbolos ("0" o "1" en datos
binarios) en cada tabla de probabilidad sea más parcial (es decir,
la probabilidad de aparición de "0" o "1" se vuelve un
valor más próximo a 1,0). La codificación aritmética tiene una
característica de que cuanto más parciales son los valores de
probabilidad en una tabla de probabilidad, más alta se vuelve la
eficiencia de codificación. En consecuencia, el uso del
procedimiento de codificación de longitud variable según la
presente invención resulta en una eficiencia de codificación
mejorada.
A continuación, se ofrece una explicación de una
variación del aparato de codificación de imágenes según la presente
realización.
En primer lugar, se explica la variación con
respecto al cambio de tablas de probabilidad.
Una unidad de codificación aritmética en el
aparato de codificación de imágenes según esta variación realiza
codificación aritmética sobre los valores absolutos de valores de
coeficiente L (valores transformados en binario) cambiando el uso
entre las dos tablas de probabilidad 1 y 4.
La Fig. 9 es un diagrama de transición que
muestra un procedimiento de cambio entre las tablas de probabilidad
usadas por la unidad de codificación aritmética según la
variación.
Como se muestra en la Fig. 9, la unidad de
codificación aritmética usa dos tablas de probabilidad, y usa la
tabla de probabilidad 1 para realizar codificación aritmética sobre
el valor absoluto del primer valor de coeficiente L. Después, la
unidad de codificación aritmética cambia de la tabla de probabilidad
1 a la tabla de probabilidad 4 cuando el valor absoluto del valor
de coeficiente L previo excede de "1", y usa la tabla de
probabilidad 4 para realizar codificación aritmética sobre los
valores absolutos de todos loa valores de coeficiente L posteriores
que han de ser codificados. En otras palabras, la unidad de
codificación aritmética usa la tabla de probabilidad 1 para
realizar codificación aritmética sobre el valor absoluto de un valor
de coeficiente L que ha de ser codificado cuando no hay valor de
coeficiente L con un valor absoluto que exceda de "1" en los
valores de coeficiente L codificados aritméticamente. Por otra
parte, la unidad de codificación aritmética cambia de la tabla de
probabilidad 1 a la tabla de probabilidad 4 cuando existe, en los
valores de coeficiente L codificados aritméticamente, un valor de
coeficiente L con un valor absoluto que excede de "1", es
decir, cuando el número de valores de coeficiente L con un valor
absoluto que excede de "1" se vuelve un valor distinto de
cero, para realizar codificación aritmética sobre los valores
absolutos de todos los valores de coeficiente L posteriores que han
de ser codificados usando la tabla de probabilidad 4.
Aquí, a continuación se ofrece una explicación
de un ejemplo de cambio entre las tablas de probabilidad en un caso
en que los valores de coeficiente L son "-1, 1, -2, 3, 4, 4, 1"
empezando desde el dominio de alta frecuencia hasta el dominio de
baja frecuencia. La unidad de codificación aritmética usa la tabla
de probabilidad 1 para el valor absoluto del primer valor de
coeficiente L (-1). Aquí, como el valor absoluto de tal valor de
coeficiente L es "1" que no excede de un valor umbral "1",
la unidad de codificación aritmética no cambia la tabla de
probabilidad que ha de usarse a otra, y sigue usando la tabla de
probabilidad 1. Por consiguiente, la unidad de codificación
aritmética usa la tabla de probabilidad 1 para realizar codificación
aritmética sobre el valor absoluto del segundo valor de coeficiente
L (1). Aquí, como el valor absoluto de tal valor de coeficiente L
es "1", la unidad de codificación aritmética no cambia la tabla
de probabilidad que ha de usarse a otra, y sigue usando la tabla de
probabilidad 1, como en el caso anterior. Por consiguiente, la
unidad de codificación aritmética usa la tabla de probabilidad 1
para realizar codificación aritmética sobre el valor absoluto del
tercer valor de coeficiente L (-2). Aquí, como el valor absoluto es
"2" que excede del valor umbral "1", la unidad de
codificación aritmética cambia de la tabla de probabilidad 1 a la
tabla de probabilidad 4, y usa la tabla de probabilidad 4 para
realizar codificación aritmética sobre el valor absoluto del cuarto
valor de coeficiente L (3). Con respecto al valor absoluto del
quinto valor de coeficiente L y posteriores al mismo, como hay un
valor de coeficiente L con un valor absoluto que excede de "1"
en los valores de coeficiente L codificados aritméticamente, la
unidad de codificación aritmética usa la tabla de probabilidad 4
para realizar codificación sobre el valor absoluto del quinto valor
de coeficiente L y los posteriores al mismo.
Como resulta obvio a partir de la Fig. 1, los
datos binarios se representan sólo como "1" cuando el valor
absoluto de un valor de coeficiente L es "1". Por lo tanto,
cuando se establece "1" como valor umbral, se hacen
adaptaciones a la tabla de probabilidad 1, que se usa cuando no se
excede tal valor umbral, de manera que se produce un símbolo (dato
binario) "1" con una alta probabilidad. Por consiguiente, habrá
una diferencia significativa en las probabilidades de aparición en
la tabla de probabilidad 1, conduciendo a una eficiencia de
codificación más mejorada.
A continuación, se ofrece una explicación para
el caso en que se usa una pluralidad de tablas de probabilidad para
el valor absoluto de cada valor de coeficiente L (valor transformado
en binario).
La Fig. 10 es un diagrama explicativo que
muestra el caso en que se usan dos tablas de probabilidad para el
valor absoluto de cada valor de coeficiente L.
Por ejemplo, como se muestra en la Fig. 10, la
unidad de codificación aritmética cambia entre cuatro tablas de
probabilidad 1 \sim 4 para usar una de estas para realizar
codificación aritmética sobre le primer bit del valor absoluto de
cada valor de coeficiente L representado como datos binarios,
mientras que cambia entre cuatro tablas de probabilidad 1' \sim
4' diferentes de las tablas de probabilidad 1 \sim 4 anteriores
para usarla para realizar codificación aritmética sobre el segundo
bit y cada uno de los bits posteriores. Aquí, la tabla de
probabilidad 1' corresponde a la tabla de probabilidad 1, la tabla
de probabilidad 2' corresponde a la tabla de probabilidad 2, la
tabla de probabilidad 3' corresponde a la tabla de probabilidad 3, y
la tabla de probabilidad 4' corresponde a la tabla de probabilidad
4. En otras palabras, como en el caso de la realización preferida
explicada con referencia a la Fig. 7, una tabla de probabilidad que
ha de usarse se cambia dependiendo del valor máximo de los valores
absolutos de los coeficientes codificados hasta el anterior, pero al
hacerlo, se cambian al mismo tiempo una tabla de probabilidad usada
para codificar el primer bit y las tablas de probabilidad usadas
para codificar el segundo bit y los posteriores al mismo.
Supongamos que se usan el mismo valor umbral y
los números de las tablas de probabilidad que corresponden a tal
valor umbral que los usados para la realización preferida explicada
con referencia a la Fig. 7. A diferencia del caso en que todos los
bits son codificados usando la misma tabla de probabilidad, en las
tablas de probabilidad 1 y 2, se establece alta una probabilidad en
la que es más probable que se produzca "1" (para adaptarse a
las entradas), y en las tablas de probabilidad 3 y 4, se establece
alta una probabilidad en la que es más probable que se produzca
"0". Igualmente, con respecto a las tablas de probabilidad 1'
\sim 4', en las tablas de probabilidad 1' \sim 3' se establece
alta una probabilidad en la que es más probables que se produzca
"1" (para adaptarse a las entradas), y en la tabla de
probabilidad 4 se establece alta una probabilidad en la que es más
probable que se produzca "0". En la codificación aritmética,
cuanto mayor es una diferencia en las probabilidades de aparición
de símbolos ("0" o "1" en datos binarios) almacenados en
tablas de probabilidad (es decir, cuanto más cerca de 1,0 está la
probabilidad de aparición de "0" o "1"), más alta se
vuelve la eficiencia de codificación. Esto conduce en consecuencia
a una eficiencia de codificación más mejorada. En este caso, además
de dividir los datos binarios en el primer bit y los bits
posteriores al mismo, los datos binarios también pueden dividirse
en otra posición de bit, y pueden dividirse en tres o más por
posiciones de bit. Por otra parte, en lugar de usar el mismo número
de tablas de probabilidad para cada una de las posiciones de bit
divididas, también es posible, por ejemplo, que se use una
pluralidad de tablas de probabilidad para el primer bit y se use la
misma tabla de probabilidad para el segundo bit y los bits
posteriores (es decir, se usa la misma tabla de probabilidad sean
cuales sean los coeficientes). Cuando se usa un mismo número de
tablas de probabilidad para cada una de las posiciones de bit
divididas como en el caso de la realización anteriormente
mencionada, pueden cambiarse entre ellas según una referencia
diferente (valor umbral) (es decir, en un momento diferente), en
lugar de cambiarse según la misma referencia.
El aparato de codificación de imágenes según la
presente invención se ha explicado usando la realización y variación
anteriores, pero la presente invención no está limitada a ellas.
En la presente realización y variación, por
ejemplo, se proporciona una explicación para el caso en que una
imagen es codificada por medio de codificación
intra-imágenes, pero también puede lograrse el mismo
efecto para el caso en que una imagen es codificada por medio de
codificación entre imágenes realizando compensación de movimiento y
otros sobre una imagen de entrada en movimiento.
Además, en la presente realización y variación,
aunque se ofrece una explicación para el caso en que una imagen de
entrada se divide en bloques de píxeles de 4 x 4 píxeles en
direcciones horizontal y vertical, un bloque de píxeles puede ser de
un tamaño diferente.
También, en la presente realización y variación,
aunque la Fig. 5B se usa para explicar un procedimiento de
realización de barrido dentro de un bloque de coeficientes, también
puede emplearse otro orden de barrido siempre que el barrido se
realice desde el dominio de baja frecuencia hacia el dominio de alta
frecuencia.
Por otra parte, en la presente realización y
variación, se ofrece una explicación para el caso en que la unidad
de generación de secuencias RL 201 convierte coeficientes de
frecuencia cuantificados en coeficientes unidimensionales usando un
procedimiento de barrido predeterminado, y genera una secuencia
(secuencia RL) formada de combinaciones de un número R que indica
una serie de valores de coeficiente cero y un valor de coeficiente L
no cero posterior a ella, pero puede generarse por separado una
secuencia de números R y valores de coeficiente L. Cuando se genera
una secuencia de valores de coeficiente L, por ejemplo, puede
omitirse la unidad de reordenación 202 si tal secuencia se genera
realizando barrido empezando desde el dominio de alta frecuencia
hasta el dominio de baja frecuencia y seleccionando coeficientes
con valores de coeficiente distintos de cero.
Además, en la presente realización se ofrece una
explicación para el caso en que se usan cuatro tablas de
probabilidad y tales tablas de probabilidad se cambian según la
tabla de transición ilustrada en la Fig. 7, y se ofrece una
explicación en la variación para el caso en que se usan dos tablas
de probabilidad y tales tablas de probabilidad se cambian según la
tabla de transición ilustrada en la Fig. 9, pero pueden emplearse
valores diferentes como el número de tablas de probabilidad y como
un valor umbral para los valores absolutos de valores de
coeficiente L cuando las tablas de probabilidad se cambian como se
ilustra en las Figs. 7 y 9.
También, la Fig. 1 se presenta como un ejemplo
de una tabla binaria, pero puede emplearse otra tabla.
Además, en la presente realización y variación,
aunque se ofrece una explicación para el caso en que la unidad de
codificación aritmética realiza codificación aritmética binaria,
puede realizarse en cambio codificación aritmética multivalor. En
tal caso, es posible omitir la unidad de transformación en binario
203.
Segunda
realización
Lo siguiente explica un aparato de
decodificación de imágenes según la segunda realización de la
presente invención con referencia a las figuras.
La Fig. 11 es un diagrama de bloques que muestra
la configuración de un aparato de decodificación de imágenes 600
según la segunda realización de la presente invención.
El aparato de decodificación de imágenes 600
realiza decodificación intra-imágenes sobre un flujo
de bits resultante de realizar codificación
intra-imágenes sobre datos de imágenes, y está
compuesto de una unidad de decodificación de longitud variable 601,
una unidad de cuantificación inversa 602, una unidad de
transformación de frecuencia inversa 603, y una memoria de imagen
604. El flujo de bits que ha de introducirse aquí se genera usando
el procedimiento de codificación de longitud variable empleado por
el aparato de codificación de imágenes 100 según la primera
realización, y se obtiene en primer lugar mediante la unidad de
decodificación de longitud variable 601.
Al recibir el flujo de bits, la unidad de
decodificación de longitud variable 601 genera un bloque de
coeficientes formado de una pluralidad de coeficientes como se
muestra en la Fig. 5A realizando decodificación de longitud variable
sobre tal flujo de bits.
La unidad de cuantificación inversa 602, cuando
recibe el bloque de coeficientes procedente de la unidad de
decodificación de longitud variable 601, realiza cuantificación
inversa sobre tal bloque de coeficientes. Cuantificación inversa
significa aquí integrar un valor de cuantificación predeterminado
para cada coeficiente en el bloque de coeficientes. Generalmente,
un valor de cuantificación varía sobre la base de un bloque de
coeficientes o una banda de frecuencia, y se obtiene a partir de un
flujo de bits. Posteriormente, la unidad de cuantificación inversa
602 transfiere el bloque de coeficientes cuantificados inversamente
a la unidad de transformación de frecuencia inversa
603.
603.
La unidad de transformación de frecuencia
inversa 603 realiza transformación de frecuencia inversa sobre el
bloque de coeficientes cuantificados inversamente, y convierte el
bloque de coeficientes en un bloque de píxeles. Después, la unidad
de transformación de frecuencia inversa 603 transfiere tal bloque de
píxeles convertido a la memoria de imagen 604.
La memoria de imagen 604 almacena en secuencia
bloques de píxeles decodificados, y cuando se almacenan bloques de
píxeles equivalentes a una imagen, transfiere estos bloques de
píxeles como una imagen de salida.
Aquí se ofrece una explicación detallada de la
unidad de decodificación de longitud variable 601 descrita
anteriormente.
La Fig. 12 es un diagrama de bloques que muestra
una configuración interna de la unidad de decodificación de longitud
variable 601.
\newpage
Como muestra la Fig. 12, la unidad de
decodificación de longitud variable 601 está compuesta de una unidad
de decodificación aritmética 701, una unidad de conversión
multivalor 702, una unidad de almacenamiento de tablas 703, una
unidad de reordenación 704, y una unidad de generación de
coeficientes 705.
La unidad de almacenamiento de tablas 703
almacena cuatro tablas de probabilidad 1 \sim 4 como se muestra en
la Fig. 8, por ejemplo.
Al recibir el flujo de bits, la unidad de
decodificación aritmética 701 realiza primero decodificación
aritmética sobre tal flujo de bits. Aquí se ofrece una explicación
de decodificación aritmética binaria que ha de realizarse sobre los
valores absolutos (valores transformados en binario) de valores de
coeficiente L codificados incluidos en el flujo de bits.
Cuando realiza decodificación aritmética sobre
el valor absoluto de un valor de coeficiente L codificado, la
unidad de decodificación aritmética 701 obtiene, de la unidad de
conversión multivalor 702, el valor absoluto del valor de
coeficiente L previo que ya ha sido decodificado y convertido en un
multivalor. Después, la unidad de decodificación aritmética 701
cambia entre las tablas de probabilidad 1 \sim 4 almacenadas por
la unidad de almacenamiento de tablas 703 de una manera como la
mostrada en la Fig. 7 dependiendo del valor absoluto de tal valor
de coeficiente L, y realiza decodificación aritmética binaria sobre
el valor absoluto de cada uno de los valores de coeficiente L
codificados para transferir datos binarios correspondientes a cada
uno de ellos.
La unidad de conversión multivalor 702 convierte
los datos binarios transferidos por la unidad de decodificación
aritmética 701 en multivalores, usando, por ejemplo, una tabla
binaria como se muestra en la Fig. 1, para representarlos como los
valores absolutos de valores de coeficiente L. Después, la unidad de
conversión multivalor 702 transfiere los valores absolutos de tales
valores de coeficiente L a la unidad de decodificación aritmética
701 y la unidad de reordenación 704.
Se ofrece una explicación de una operación
detallada de la unidad de decodificación aritmética 701 y la unidad
de conversión multivalor 702.
En primer lugar, la unidad de decodificación
aritmética 701 usa la tabla de probabilidad 1 para realizar
decodificación aritmética sobre el valor absoluto del primer valor
de coeficiente L codificado. Después, la unidad de decodificación
aritmética 701 transfiere, a la unidad de conversión multivalor 702,
datos binarios obtenidos realizando decodificación aritmética. La
unidad de conversión multivalor 702 usa la tabla binaria para
convertir los datos binarios en el valor absoluto del valor de
coeficiente L, y transfiere tal valor absoluto a la unidad de
decodificación aritmética 701 y la unidad de reordenación 704.
Después, para los valores absolutos de los
valores de coeficiente L codificados posteriores, la unidad de
decodificación aritmética 701 cambia la tabla de probabilidad que ha
de usarse por otra, dependiendo del número de tabla de la tabla de
probabilidad usada cuando el valor absoluto del valor de coeficiente
L codificado previo es decodificado aritméticamente en binario, así
como del valor absoluto de tal valor de coeficiente L previo
obtenido de la unidad de conversión multivalor 702. Como se muestra
en la Fig. 7, se usa la tabla de probabilidad 2 cuando se satisface
una de las siguientes condiciones: cuando se usó la tabla de
probabilidad 1 para realizar decodificación aritmética sobre el
valor absoluto del valor de coeficiente L codificado previo y el
valor absoluto del valor de coeficiente L previo obtenido de la
unidad de conversión multivalor 702 es "1"; y cuando se usó la
tabla de probabilidad 2 para realizar decodificación aritmética
sobre el valor absoluto del valor de coeficiente L codificado
previo y el valor absoluto del valor de coeficiente L previo
obtenido de la unidad de conversión multivalor 702 es "1". Se
usa la tabla de probabilidad 3 cuando se satisface una de las
condiciones siguientes: cuando se usó la tabla de probabilidad 1
para realizar decodificación aritmética sobre el valor absoluto del
valor de coeficiente L codificado previo y el valor absoluto del
valor de coeficiente L previo obtenido de la unidad de conversión
multivalor 702 es "2"; cuando se usó la tabla de probabilidad
2 para realizar decodificación aritmética sobre el valor absoluto
del valor de coeficiente L codificado previo y el valor absoluto
del valor de coeficiente L previo obtenido de la unidad de
conversión multivalor 702 es "2"; y cuando se usó la tabla de
probabilidad 3 para realizar decodificación aritmética sobre el
valor absoluto del valor de coeficiente L codificado previo y el
valor absoluto del valor de coeficiente L previo obtenido de la
unidad de conversión multivalor 702 es "2 o menor". Y se usa la
tabla de probabilidad 4 cuando se satisface una de las siguientes
condiciones: cuando el valor absoluto del valor de coeficiente L
previo obtenido de la unidad de conversión multivalor 702 es "3 o
un valor mayor"; y cuando se usó la tabla de probabilidad 4 para
realizar decodificación aritmética sobre el valor absoluto del valor
de coeficiente L codificado previo. Como se mostró anteriormente,
las tablas de probabilidad 1 \sim 4 se cambian en una dirección,
es decir, de una tabla de probabilidad con un número de tabla menor
a una tabla de probabilidad con un número de tabla mayor. Por
consiguiente, aunque el valor absoluto del valor de coeficiente L
previo obtenido de la unidad de conversión mutlivalor 702 sea igual
o menor que un valor umbral predeterminado, las tablas de
probabilidad no se cambiarán en la dirección opuesta. Este es el
punto que distingue la presente invención de la técnica
existente.
Lo siguiente explica un ejemplo de cambio entre
las tablas de probabilidad, en un caso en que se realiza
decodificación en los valores absolutos de valores de coeficiente L
mostrados en la Fig. 6C.
La unidad de decodificación aritmética 701 usa
la tabla de probabilidad 1 para realizar decodificación aritmética
sobre el valor absoluto del primer valor de coeficiente L codificado
(-2) para decodificarlo en el dato binario "01". Como la
unidad de decodificación aritmética 701 obtiene "2" de la
unidad de conversión multivalor 702, que es un multivalor
convertido a partir de tal dato binario "01", cambia de la
tabla de probabilidad 1 a la tabla de probabilidad 3 para usarla.
Por consiguiente, la unidad de decodificación aritmética 701 usa la
tabla de probabilidad 3 para realizar decodificación aritmética
sobre el valor absoluto del segundo valor de coeficiente L
codificado (3) para decodificarlo en el dato binario "001".
Aquí, como la unidad de decodificación aritmética 701 obtiene
"3" de la unidad de conversión multivalor 702, que es un
multivalor convertido a partir de tal dato binario "001",
cambia de la tabla de probabilidad 3 a la tabla de probabilidad 4
para usarla. Por consiguiente, la unidad de decodificación
aritmética 701 usa la tabla de probabilidad 4 para realizar
decodificación aritmética sobre el valor absoluto del tercer valor
de coeficiente L codificado (6) para decodificarlo en el dato
binario "000001". Aquí, como la tabla de probabilidad que ha de
usarse se cambia a la tabla de probabilidad 4, la unidad de
decodificación aritmética 701 usa la tabla de probabilidad 4 para
realizar decodificación aritmética sobre los valores absolutos de
todos los valores de coeficiente L codificados posteriores. Por
ejemplo, el valor absoluto del quinto valor de coeficiente L
codificado es decodificado y convertido en un multivalor "2",
pero a diferencia de la técnica existente, la unidad de
decodificación aritmética 701 usa la tabla de probabilidad 4 para
realizar decodificación aritmética sobre el valor absoluto del sexto
valor de coeficiente L codificado y los posteriores al mismo, sin
cambiar a otra tabla de probabilidad.
Mediante la operación anterior, cuando se
generan los valores absolutos de los valores de coeficiente L, los
números R, y los signos de los valores de coeficiente L equivalentes
a un bloque de coeficientes, son introducidos en la unidad de
reordenación 704 como una secuencia RL.
La unidad de reordenación 704 ordena en orden
inverso tal secuencia RL introducida. Sin embargo, el número de
coeficientes no será reordenado. La Fig. 6A ilustra una secuencia RL
reordenada. Posteriormente, la unidad de reordenación 704
transfiere, a la unidad de generación de coeficientes 705, tal
secuencia RL reordenada de la manera anterior.
La unidad de generación de coeficientes 705
convierte en un bloque de coeficientes la secuencia RL introducida.
Al hacerlo, la unidad de generación de coeficientes 705 hace una
conversión de la secuencia RL en un bloque de coeficientes
llevando a cabo repetidamente la siguiente operación: genera un
coeficiente con el valor "0" sólo el número de veces indicado
por un número R y después genera un coeficiente con un valor
indicado por un valor de coeficiente L. Aquí, la unidad de
generación de coeficientes 705 realiza barrido en zigzag empezando
desde el dominio de baja frecuencia hacia el dominio de alta
frecuencia, para convertir la secuencia RL mostrada en la Fig. 6A
en el bloque de coeficientes mostrado en la Fig. 5A. Después, la
unidad de generación de coeficientes 705 transfiere, a la unidad de
cuantificación inversa 602, el bloque de coeficientes generado de la
manera anterior.
Como se describió anteriormente, en el
procedimiento de decodificación aritmética empleado por la unidad de
decodificación de longitud variable 601 en el aparato de
decodificación de imágenes 600 según la presente invención, se
cambia una pluralidad de tablas de probabilidad cuando se realiza
decodificación aritmética sobre los valores absolutos de valores de
coeficiente L incluidos en un flujo de bits de entrada. Al cambiar
a otra tabla de probabilidad, la tabla de probabilidad que ha de
usarse al decodificar el valor absoluto del siguiente valor de
coeficiente L se determina dependiendo del número de tabla de la
tabla de probabilidad actual y del valor absoluto de un valor de
coeficiente L resultante de la decodificación. Cuando se hace esto,
las tablas de probabilidad se cambian sólo en una dirección, y
cuando el valor absoluto de un valor de coeficiente L resultante de
la decodificación excede de un valor predeterminado, se usa la misma
tabla de probabilidad para realizar decodificación aritmética sobre
todos los valores absolutos posteriores.
Como resulta obvio a partir de lo anterior, el
uso del procedimiento de decodificación aritmética según la
presente invención hace posible decodificar apropiadamente un flujo
de bits codificado mediante el uso del procedimiento de codificación
de longitud variable según la presente invención.
A continuación se ofrece una explicación de una
variación de la unidad de decodificación aritmética en el aparato de
decodificación de imágenes según la presente realización.
En primer lugar, se explica la variación con
respecto al cambio de tablas de probabilidad.
Una unidad de decodificación aritmética en el
aparato de decodificación de imágenes según esta variación realiza
decodificación aritmética binaria sobre los valores absolutos de
valores de coeficiente L (valores transformados en binario) que han
sido codificados cambiando el uso entre las dos tablas de
probabilidad 1 y 4.
Como se muestra en la Fig. 9, esta unidad de
decodificación aritmética usa dos tablas de probabilidad, y usa la
tabla de probabilidad 1 para realizar decodificación aritmética
sobre el valor absoluto del primer valor de coeficiente L
codificado. Después, la unidad de decodificación aritmética cambia
de la tabla de probabilidad 1 a la tabla de probabilidad 4 cuando
el valor absoluto del valor de coeficiente L previo excede de
"1", y usa la tabla de probabilidad 4 para realizar
decodificación aritmética sobre los valores absolutos de todos loa
valores de coeficiente L posteriores que han de ser decodificados.
En otras palabras, la unidad de decodificación aritmética usa la
tabla de probabilidad 1 para realizar decodificación aritmética
sobre el valor absoluto de un valor de coeficiente L codificado que
ha de ser decodificado cuando no hay valor de coeficiente L con un
valor de absoluto que exceda de "1" en los valores de
coeficiente L que han sido decodificados y convertidos en
multivalores. Por otra parte, la unidad de decodificación aritmética
cambia de la tabla de probabilidad 1 a la tabla de probabilidad 4
cuando existe, en los valores de coeficiente L que han sido
decodificados y convertidos en multivalores, un valor de
coeficiente L con un valor absoluto que excede de "1", es
decir, cuando el número de valores de coeficiente L con un valor
absoluto que excede de "1" se vuelve un valor distinto de
cero, y cambia de la tabla de probabilidad 1 a la tabla de
probabilidad 4, para realizar decodificación aritmética sobre los
valores absolutos de todos los valores de coeficiente L posteriores
que han de ser decodificados usando la tabla de probabilidad 4.
Aquí, a continuación se ofrece una explicación
de un ejemplo de cambio entre las tablas de probabilidad en un caso
en que los valores de coeficiente L son "-1, 1, -2, 3, 4, 4, 1"
empezando desde el dominio de alta frecuencia hasta el dominio de
baja frecuencia. La unidad de decodificación aritmética usa la tabla
de probabilidad 1 para realizar decodificación aritmética sobre el
valor absoluto del primer valor de coeficiente L codificado para
convertirlo en el dato binario "1". Aquí, como la unidad de
decodificación aritmética obtiene "1" de la unidad de
conversión multivalor 702, que es un multivalor convertido a partir
de tal dato binario "1", y juzga que el valor absoluto de tal
valor de coeficiente L es "1", el cual no excede un valor
umbral "1", no cambia la tabla de probabilidad que ha de
usarse, y sigue usando la tabla de probabilidad 1. Por consiguiente,
la unidad de decodificación aritmética realiza decodificación
aritmética sobre el valor absoluto del segundo valor de coeficiente
L codificado para convertirlo en el dato binario "1", usando la
tabla de probabilidad 1. Aquí, como la unidad de decodificación
aritmética juzga que el valor absoluto de tal valor de coeficiente
L es "1" que no excede el valor umbral "1", no cambia la
tabla de probabilidad que ha de usarse, y sigue usando la tabla de
probabilidad 1, como en el caso anterior. Por consiguiente, la
unidad de decodificación aritmética realiza decodificación
aritmética sobre el valor absoluto del tercer valor de coeficiente L
codificado para convertirlo en el dato binario "01", usando la
tabla de probabilidad 1. Aquí, la unidad de decodificación
aritmética obtiene "2" de la unidad de conversión multivalor
702, que es un multivalor convertido a partir de tal dato binario
"01", y juzga que el valor absoluto es "2" que excede el
valor absoluto "1", cambia de la tabla de probabilidad 1 a la
tabla de probabilidad 4, y usa la tabla de probabilidad 4 para
realizar decodificación aritmética sobre el valor absoluto del
cuarto valor de coeficiente L codificado para convertirlo en el dato
binario "0001". Con respecto al valor absoluto del quinto
valor de coeficiente L codificado y los valores absolutos de sus
valores de coeficiente codificados posteriores, como hay un valor de
coeficiente L con un valor absoluto que excede de "1" en los
valores de coeficiente L que han sido decodificados y convertidos
en multivalores, la unidad de decodificación aritmética realiza
decodificación aritmética sobre el valor absoluto del quinto valor
de coeficiente L codificado y los valores absolutos de todos los
valores de coeficiente codificados posteriores usando la tabla de
probabilidad 4.
A continuación se ofrece una explicación para el
caso en que los datos binarios derivados del valor absoluto de un
valor de coeficiente L codificado incluido en un flujo de bits están
formados de una pluralidad de elementos, y se usa una tabla de
probabilidad diferente sobre una base de elemento por elemento
cuando se realiza decodificación aritmética binaria sobre datos
binarios del valor absoluto de tal valor de coeficiente L
codificado.
Por ejemplo, cuando los datos binarios del valor
absoluto de un valor de coeficiente L codificado están formados de
dos elementos, la unidad de codificación aritmética, como se muestra
en la Fig. 10, realiza decodificación aritmética sobre uno de los
dos elementos en los datos binarios codificados para convertirlo en
un valor numérico que corresponde al primer bit de los datos
binarios, cambiando el uso entre las cuatro tablas de probabilidad
1 \sim 4. Después, la unidad de decodificación aritmética realiza
decodificación aritmética sobre el otro elemento de los datos
binarios para convertirlo en un valor numérico que corresponde al
segundo bit y cada uno de sus bits posteriores en los datos
binarios, cambiando el uso entre las cuatro tablas de probabilidad
1' \sim 4' que son diferentes de las cuatro tablas de probabilidad
1 \sim 4 anteriores.
Aquí, la tabla de probabilidad 1' corresponde a
la tabla de probabilidad 1, la tabla de probabilidad 2' corresponde
a la tabla de probabilidad 2, la tabla de probabilidad 3'
corresponde a la tabla de probabilidad 3, y la tabla de
probabilidad 4' corresponde a la tabla de probabilidad 4. En otras
palabras, como en el caso de la realización preferida explicada con
referencia a la Fig. 7, una tabla de probabilidad que ha de usarse
se cambia dependiendo del valor máximo de los valores absolutos de
los coeficientes codificados hasta el anterior, pero al hacerlo, se
cambian al mismo tiempo una tabla de probabilidad usada para
codificar el primer bit y las tablas de probabilidad usadas para
codificar el segundo bit y los posteriores al mismo.
Supongamos que se usan el mismo valor umbral y
los números de las tablas de probabilidad que corresponden a tal
valor umbral que los usados para la realización preferida explicada
con referencia a la Fig. 7. En este caso, a diferencia del caso en
que todos los bits son codificados usando la misma tabla de
probabilidad, en las tablas de probabilidad 1 y 2, se establece
alta una probabilidad en la que es más probable que se produzca
"1" (para adaptarse a las entradas), y en las tablas de
probabilidad 3 y 4, se establece alta una probabilidad en la que es
más probable que se produzca "0". Igualmente, con respecto a
las tablas de probabilidad 1' \sim 4', en las tablas de
probabilidad 1' \sim 3' se establece alta una probabilidad en la
que es más probables que se produzca "1" (para adaptarse a las
entradas), y en la tabla de probabilidad 4' se establece alta una
probabilidad en la que es más probable que se produzca "0".
En este caso, además de dividir los datos
binarios en el primer bit y los bits posteriores al mismo, los datos
binarios también pueden dividirse en otra posición de bit, y pueden
dividirse en tres o más por posiciones de bit. Por otra parte, en
lugar de usar el mismo número de tablas de probabilidad para cada
una de las posiciones de bit divididas, también es posible, por
ejemplo, que se use una pluralidad de tablas de probabilidad para
el primer bit y se use la misma tabla de probabilidad para el
segundo bit y los bits posteriores (es decir, se usa la misma tabla
de probabilidad sean cuales sean los coeficientes). Cuando se usa un
mismo número de tablas de probabilidad para cada una de las
posiciones de bit divididas como en el caso de la realización
anteriormente mencionada, pueden cambiarse entre ellas según una
referencia diferente (valor umbral).
El aparato de decodificación de imágenes según
la presente invención se ha explicado en lo anterior usando la
presente realización y variación, pero la presente invención no está
limitada a ellas.
En la presente realización y variación, por
ejemplo, se proporciona una explicación para el caso en que se
realiza decodificación sobre un flujo de bits que ha sido generado
por medio de codificación intra-imágenes, pero
también puede lograrse el mismo efecto para el caso en que se
realiza decodificación sobre un flujo de bits que ha sido generado
por medio de codificación entre imágenes realizando compensación de
movimiento y otros sobre una imagen de entrada en movimiento.
Además, en la presente realización y variación,
aunque se ofrece una explicación para el caso en que un flujo de
bits en el que los datos de imágenes se codifican siendo divididos
en bloques de píxeles de 4 x 4 píxeles en direcciones horizontal y
vertical, un bloque de píxeles puede tener un tamaño diferente.
Por otra parte, en la presente realización se
ofrece una explicación para el caso en que se usan y se cambian
cuatro tablas de probabilidad según la tabla de transición ilustrada
en la Fig. 7, y se ofrece una explicación en la variación para el
caso en que se usan y se cambian dos tablas de probabilidad según la
tabla de transición ilustrada en la Fig. 9, pero pueden emplearse
valores diferentes como el número de tablas de probabilidad y una
valor umbral para los valores absolutos de valores de coeficiente L
cuando las tablas de probabilidad se cambian como se ilustra en las
Figs. 7 y 9.
También en la presente realización y variación,
aunque se usa la Fig. 5B para explicar un procedimiento de
realización de barrido dentro de un bloque de coeficientes, también
puede emplearse otro orden de barrido siempre que sea el mismo que
el procedimiento de barrido empleado en el momento de la
codificación.
Además, la Fig. 1 se presenta como un ejemplo de
una tabla binaria, pero puede emplearse otra tabla siempre que sea
la misma que la tabla binaria usada en el momento de la
codificación.
Por otra parte, aunque se ofrece una explicación
en la presente realización y variación para el caso en que la
unidad de decodificación aritmética 701 realiza decodificación
aritmética binaria, puede realizarse en cambio decodificación
aritmética multivalor. En tal caso, es posible omitir la unidad de
conversión multivalor 702.
Tercera
realización
Si un programa para realizar el procedimiento de
codificación de longitud variable o el procedimiento de
decodificación de longitud variable como los mostrados en cada una
de las realizaciones anteriormente mencionadas se graba en un medio
de grabación como un disco flexible, se hace posible realizar
fácilmente el procesamiento presentado en cada una de las
realizaciones anteriores en un sistema informático
independiente.
Las Figs. 13A, 13B y 13C son diagramas que
explican un medio de grabación que almacena un programa para
realizar el procedimiento de codificación de longitud variable y el
procedimiento de decodificación de longitud variable llevados a
cabo por el aparato de codificación de imágenes 100 y el aparato de
decodificación de imágenes 600 según la primera y segunda
realizaciones.
La Fig. 13B muestra una vista externa de un
disco flexible FD visto desde la parte delantera, una vista
esquemática de la sección transversal y un cuerpo de disco FD1,
mientras que la Fig. 13a ilustra un formato físico de ejemplo del
cuerpo de disco FD1 como un medio de grabación en sí.
El cuerpo de disco FD1 está contenido en una
caja F, y sobre la superficie del cuerpo de disco FD1 está formada
concéntricamente una pluralidad de pistas Tr en la dirección del
radio desde la periferia, estando dividida cada pista en 16
sectores Se en la dirección angular. Por lo tanto, en el disco
flexible FD que almacena el programa anteriormente mencionado, el
procedimiento de codificación de longitud variable o el
procedimiento de decodificación de longitud variable se graba como
tal programa en un área asignada para ello en el cuerpo de disco
FD1.
La Fig. 13C muestra la estructura para grabar y
leer el programa en y desde el disco flexible FD.
Cuando se graba el programa en el disco flexible
FD, el procedimiento de codificación de longitud variable o el
procedimiento de decodificación de longitud variable como el
programa anterior se escribe mediante el uso del sistema
informático Cs por medio de una unidad de disco flexible FDD.
Mientras tanto, cuando el procedimiento de codificación de longitud
variable o el procedimiento de decodificación de longitud variable
se construye en el sistema informático Cs a través del programa en
el disco flexible FD, el programa se lee del disco flexible FD por
medio de la unidad de disco flexible FDD y se transfiere al sistema
informático Cs.
La explicación anterior se hace suponiendo que
un medio de grabación es un disco flexible FD, pero también puede
usarse un disco óptico. Además, el medio de grabación no está
limitado a este, y también puede usarse cualquier otro medio como
una tarjeta IC y una casete ROM capaz de grabar un programa.
Cuarta
realización
Lo siguiente explica aplicaciones del
procedimiento de codificación de longitud variable y el
procedimiento de decodificación de longitud variable como los
mostrados en las realizaciones anteriores así como un sistema que
los usa.
La Fig. 14 es un diagrama de bloques que muestra
una configuración general de un sistema de suministro de contenido
ex100 para realizar un servicio de distribución de contenido. El
área para proporcionar un servicio de comunicación está dividida en
celdas de tamaño deseado, y en celdas respectivas están situadas
estaciones base ex107 \sim ex110, que son estaciones inalámbricas
fijas.
En este sistema de suministro de contenido
ex100, los dispositivos como un ordenador ex111, una PDA (asistente
digital personal) ex112, una cámara ex113, un teléfono celular
ex114, y un teléfono celular equipado con cámara ex115 están
conectados respectivamente a Internet ex101 a través de un proveedor
de servicios de Internet ex102, una red telefónica ex104, y las
estaciones base ex107 \sim ex110.
Sin embargo, el sistema de suministro de
contenido ex100 no está limitado a la combinación como la mostrada
en la Fig. 14, y puede estar conectado a una combinación de
cualquiera de ellos. Además, cada uno de los dispositivos puede
estar conectado directamente a la red telefónica ex104, no a través
de las estaciones base ex107 \sim ex110, que son estaciones
inalámbricas fijas.
La cámara ex113 es un dispositivo como una
cámara de vídeo digital capaz de filmar imágenes en movimiento. El
teléfono celular puede ser un teléfono celular de un sistema PDC
(comunicación digital personal), un sistema CDMA (acceso múltiple
por división de código), un sistema W-CDMA (acceso
múltiple por división de código-banda ancha) o un
sistema GSM (sistema global para comunicaciones móviles), un PHS
(sistema de teléfono personal) o similares, y puede ser uno
cualquiera de estos.
Además, un servidor de descarga y reproducción
en tiempo real ex103 está conectado a la cámara ex113 a través de
la estación base ex109 y la red telefónica ex104, que permite
distribución en vivo o similar basada en datos codificados
transmitidos por el usuario que usa la cámara ex113. Ya sea la
cámara ex113 o un servidor y similar capaz de procesamiento de
transmisión de datos puede codificar los datos filmados. También,
los datos de imágenes en movimiento filmados por una cámara ex116
pueden ser transmitidos al servidor de descarga y reproducción en
tiempo real ex103 a través del ordenador ex111. La cámara ex116 es
un dispositivo como una cámara digital capaz de filmar imágenes
fijas e imágenes en movimiento. En este caso, la cámara ex116 o el
ordenador ex111 pueden codificar los datos de imágenes en
movimiento. Un LSI ex117 incluido en el ordenador ex111 o la cámara
ex116 realiza procesamiento de codificación. Obsérvese que el
software para codificar y decodificar imágenes puede estar
integrado en un cierto tipo de medio de almacenamiento (como un
CD-ROM, un disco flexible y un disco duro) que es
un medio de grabación legible por el ordenador ex111 y similares.
Además, el teléfono celular equipado con cámara ex115 puede
transmitir los datos de imágenes en movimiento. Estos datos de
imágenes en movimiento son datos codificados por un LSI incluido en
el teléfono celular ex115.
En el sistema de suministro de contenido ex100,
el contenido (por ejemplo, un vídeo de música en directo) que ha
sido filmado por el usuario usando la cámara ex113, la cámara ex116
o similar es codificado de la misma manera que las realizaciones
descritas anteriormente y transmitido al servidor de descarga y
reproducción en tiempo real ex103, y el servidor de descarga y
reproducción en tiempo real ex103 hace distribución en tiempo real
de los datos de contenido a clientes a petición suya. Los clientes
incluyen el ordenador ex111, la PDA ex112, la cámara ex113, el
teléfono celular ex114, etcétera, capaces de decodificar los datos
codificados anteriormente. El sistema de suministro de contenido
ex100 con la estructura anterior es un sistema que permite a los
clientes recibir y reproducir los datos codificados y realiza
radiodifusión personal permitiéndoles recibir, decodificar y
reproducir los datos en tiempo real.
El aparato de codificación de imágenes y el
aparato de decodificación de imágenes presentados en las
realizaciones anteriores pueden usarse para la codificación y
decodificación que ha de realizarse en cada uno de los dispositivos
que forman el sistema anterior.
Se ofrece una explicación de un teléfono celular
como ejemplo.
La Fig. 15 es un diagrama que muestra un ejemplo
del teléfono celular ex115 que emplea la codificación de longitud
variable y la decodificación de longitud variable explicadas en las
realizaciones anteriores. El teléfono celular ex115 tiene una
antena ex201 para transmitir/recibir ondas de radio a y desde la
estación base ex110 por medio de ondas de radio, una unidad de
cámara ex203 como una cámara CCD capaz de filmar vídeo e imágenes
fijas, una unidad de pantalla ex202 como una pantalla de cristal
líquido para visualizar los datos obtenidos decodificando vídeo y
similares filmados por la unidad de cámara ex203 y vídeo y similares
recibidos por la antena ex201, un cuerpo principal que incluye un
conjunto de teclas de operación ex204, una unidad de salida de voz
ex208 como un altavoz para producir voces, una unidad de entrada de
voz ex205 como un micrófono para introducir voces, un medio de
grabación ex207 para almacenar datos codificados o datos
decodificados como datos de imágenes en movimiento o fijas filmadas
por la cámara, datos de correos electrónicos recibidos y datos de
imágenes en movimiento o datos de imágenes fijas, y una unidad de
ranura ex206 para permitir que el medio de grabación ex207 sea
conectado al teléfono celular ex115. El medio de grabación ex207
está plasmado como un elemento de memoria flash, una clase de
EEPROM (memoria de sólo lectura borrable y programable
electrónicamente) que es una memoria no volátil borrable y
regrabable eléctricamente, almacenada en una caja de plástico como
una tarjeta SD.
A continuación, haciendo referencia a la Fig.
16, se ofrece una explicación del teléfono celular ex115. En el
teléfono celular ex115, una unidad de control principal ex311 para
controlar de manera centralizada la unidad de pantalla ex202 y cada
unidad del cuerpo principal que tiene las teclas de operación ex204
está configurada de una manera en que una unidad de circuito de
alimentación eléctrica ex310, una unidad de control de entrada de
operación ex304, una unidad de codificación de imágenes ex312, una
unidad de interfaz de cámara ex303, una unidad de control de LCD
(pantalla de cristal líquido) ex302, una unidad de decodificación de
imágenes ex309, una unidad de multiplexación/demultiplexación
ex308, una unidad de grabación/reproducción ex307, una unidad de
circuito de módem ex306, y una unidad de procesamiento de voz ex305
están interconectadas a través de un bus síncrono ex313.
Cuando una tecla de fin de llamada o una tecla
de encendido es activada por la operación de un usuario, la unidad
de circuito de alimentación eléctrica ex310 suministra a cada unidad
energía procedente de un paquete de baterías, para activar el
teléfono celular digital equipado con cámara ex115 para dejarlo
dispuesto para funcionar.
En el teléfono celular ex115, la unidad de
procesamiento de voz ex305 convierte una señal de voz recibida por
la unidad de entrada de voz ex205 en modo de conversación en datos
de voz digital bajo el control de la unidad de control principal
ex311 compuesta de una CPU, una ROM, una RAM y otros, la unidad de
circuito de módem ex306 realiza sobre ellos procesamiento de
espectro ensanchado, y una unidad de circuito de
transmisión/recepción ex301 realiza procesamiento de conversión
digital a analógica y procesamiento de transformación de frecuencia
sobre los datos, para transmitir lo resultante a través de la antena
ex201. También, en el teléfono celular ex115, una señal recibida
por la antena ex201 en modo de conversación es amplificada y se le
realiza procesamiento de transformación de frecuencia y
procesamiento de conversión analógica a digital, la unidad de
circuito de módem ex306 realiza procesamiento inverso de espectro
ensanchado sobre lo resultante, y la unidad de procesamiento de voz
ex305 lo convierte en una señal de voz analógica, para sacarla a
través de la unidad de salida de voz ex208.
Además, al enviar un correo electrónico en modo
de comunicación de datos, los datos de texto del correo electrónico
introducido accionando las teclas de operación ex204 en el cuerpo
principal son enviados a la unidad de control principal ex311 a
través de la unidad de control de entrada de operación ex304. En la
unidad de control principal ex311, después de que la unidad de
circuito de módem ex306 realiza procesamiento de espectro ensanchado
sobre los datos de texto y la unidad de circuito de
transmisión/recepción ex301 realiza procesamiento de conversión
digital a analógica y procesamiento de transformación de frecuencia
sobre ellos, lo resultante es transmitido a la estación base ex110 a
través de la antena ex201.
Cuando se transmiten datos de imágenes en el
modo de comunicación de datos, los datos de imágenes filmados por
la unidad de cámara ex203 son suministrados a la unidad de
codificación de imágenes ex312 a través de la unidad de interfaz de
cámara ex303. Cuando no se van a transmitir datos de imágenes,
también es posible visualizar datos de imágenes filmados por la
unidad de cámara ex203 directamente en la unidad de pantalla ex202
a través de la unidad de interfaz de cámara ex303 y la unidad de
control de LCD ex302.
La unidad de codificación de imágenes ex312, que
incluye en su configuración el aparato de codificación de imágenes
según la presente invención, realiza codificación de compresión
sobre los datos de imágenes suministrados desde la unidad de cámara
ex203 usando el procedimiento de codificación usado por el aparato
de codificación de imágenes presentado en las realizaciones
anteriormente mencionadas, para convertirlos en datos de imágenes
codificados, y los envía a la unidad de
multiplexación/demultiplexación ex308. En este momento, el teléfono
celular ex115 envía voces recibidas por la unidad de entrada de voz
ex205 mientras está teniendo lugar la filmación por la unidad de
cámara ex203, a la unidad de multiplexación/demultiplexación ex308
como datos de voz digital a través de la unidad de procesamiento de
voz ex305.
La unidad de multiplexación/demultiplexación
ex308 multiplexa los datos de imágenes codificados suministrados
desde la unidad de codificación de imágenes ex312 y los datos de voz
suministrados desde la unidad de procesamiento de voz ex305 usando
un procedimiento predeterminado, la unidad de circuito de módem
ex306 realiza procesamiento de espectro ensanchado sobre los datos
multiplexados resultantes, y la unidad de circuito de
transmisión/recepción ex301 realiza procesamiento de conversión
digital a analógica y procesamiento de transformación de frecuencia
sobre lo resultante, para transmitir los datos procesados a través
de la antena ex201.
Al recibir, en el modo de comunicación de datos,
datos incluidos en un archivo de imágenes en movimiento que está
enlazado a una página Web o similar, la unidad de circuito de módem
ex306 realiza procesamiento inverso de espectro ensanchado sobre la
señal recibida recibida desde la estación base ex110 a través de la
antena ex201, y envía los datos multiplexados resultantes a la
unidad de multiplexación/demultiplexación ex308.
Para decodificar los datos multiplexados
recibidos a través de la antena ex201, la unidad de
multiplexación/demulti-
plexación ex308 separa los datos multiplexados en un flujo de bits codificados de datos de imágenes y un flujo de bits codificados de datos de voz, y suministra tales datos de imágenes codificados a la unidad de decodificación de imágenes ex309 y tales datos de voz a la unidad de procesamiento de voz ex305 a través del bus síncrono ex313.
plexación ex308 separa los datos multiplexados en un flujo de bits codificados de datos de imágenes y un flujo de bits codificados de datos de voz, y suministra tales datos de imágenes codificados a la unidad de decodificación de imágenes ex309 y tales datos de voz a la unidad de procesamiento de voz ex305 a través del bus síncrono ex313.
\newpage
A continuación, la unidad de decodificación de
imágenes ex309, que incluye en su configuración el aparato de
decodificación de imágenes según la presente invención, decodifica
el flujo de bits codificados de los datos de imágenes usando el
procedimiento de decodificación junto con el procedimiento de
codificación como se muestra en las realizaciones anteriormente
mencionadas para generar datos de imágenes en movimiento para
reproducción, y suministra tales datos a la unidad de pantalla ex202
a través de la unidad de control de LCD ex302. Por consiguiente, se
visualizan los datos de imágenes en movimiento incluidos en el
archivo de imágenes en movimiento enlazado a una página Web, por
ejemplo. Al mismo tiempo, la unidad de procesamiento de voz ex305
convierte los datos de voz en una señal de voz analógica, y después
suministra esta señal a la unidad de salida de voz ex208. Por
consiguiente, se reproducen los datos de voz incluidos en el archivo
de imágenes en movimiento enlazado a una página Web, por
ejemplo.
Obsérvese que el sistema anteriormente
mencionado no es un ejemplo exclusivo y por lo tanto que al menos el
aparato de codificación de imágenes o el aparato de decodificación
de imágenes de las realizaciones anteriores puede ser incorporado a
un sistema de radiodifusión digital como se muestra en la Fig. 17,
enmarcado en un ambiente en que la radiodifusión digital por
satélite/terrestre ha sido un tema reciente de conversación. Para
ser más concretos, en una estación de radiodifusión ex409, un flujo
de bits codificados de información de vídeo es transmitido, por
ondas de radio, a un satélite ex410 para comunicaciones o
radiodifusión. Al recibirlo, el satélite de radiodifusión ex410
transmite ondas de radio para radiodifusión, una antena ex406 de una
casa equipada con instalaciones de recepción de radiodifusión por
satélite recibe tales ondas de radio, y un aparato como una
televisión (receptor) ex401 y un decodificador (STP) ex407
decodifica el flujo de bits codificados y reproduce los datos
decodificados. El aparato de decodificación de imágenes como el
mostrado en las realizaciones anteriormente mencionadas puede
implementarse en el aparato de reproducción ex403 para leer y
decodificar el flujo de bits codificados grabado en un medio de
almacenamiento ex402 que es un medio de grabación como un CD y un
DVD. En este caso, una señal de vídeo reproducida se visualiza en un
monitor ex404. También se concibe que el aparato de decodificación
de imágenes esté implementado en el decodificador ex407 conectado a
un cable ex405 para televisión por cable o la antena ex406 para
radiodifusión por satélite/basada en tierra para reproducirlas en
un monitor de televisión ex408. En este caso, el aparato de
decodificación de imágenes puede estar incorporado dentro de la
televisión, no en el decodificador. O un automóvil ex412 con una
antena ex411 puede recibir una señal procedente del satélite ex410,
la estación base ex107 o similares, para reproducir una imagen en
movimiento en un dispositivo de visualización como un sistema de
navegación de automóvil ex413 montado en el automóvil ex412.
Además, también es posible codificar una señal
de imagen mediante el aparato de codificación de imágenes en
movimiento presentado en las realizaciones anteriores y grabar lo
resultante en un medio de grabación. Ejemplos incluyen un grabador
de DVD para grabar una señal de imagen en un disco DVD ex421 y un
grabador ex420 como un grabador de disco para grabar una señal de
imagen en un disco duro. Por otra parte, puede grabarse una señal
de imagen en una tarjeta SD ex422. Si el grabador ex420 está
equipado con el aparato de decodificación de imágenes en movimiento
presentado en las realizaciones anteriores, es posible reproducir
una señal de imagen grabada en el disco DVD ex421 o en la tarjeta
SD ex422, y visualizarla en el monitor ex408.
Como la configuración del sistema de navegación
de automóvil ex413, es concebible la configuración sin la unidad de
cámara ex203 y la unidad de interfaz de cámara ex303, de la
configuración mostrada en la Fig. 16. Se puede aplicar lo mismo al
ordenador ex111, la televisión ex401 (receptor) y similares.
Con respecto a los terminales como le teléfono
celular ex114, son posibles como forma de implementación un
terminal de transmisión/recepción que tenga tanto un codificador
como un decodificador, así como un terminal de transmisión sólo con
un codificador y un terminal de recepción sólo con un
decodificador.
Tal como se expuso anteriormente, es posible
emplear el procedimiento de codificación de longitud variable y el
procedimiento de decodificación de longitud variable presentados en
las realizaciones anteriores dentro de uno cualquiera de los
dispositivos y sistemas descritos anteriormente. Por consiguiente,
se hace posible lograr un efecto explicado en las realizaciones
anteriores.
A partir de la invención así descrita, resultará
obvio que las realizaciones de la invención pueden variarse de
muchas maneras. Tales variaciones no deben ser consideradas como una
desviación del espíritu y alcance la invención, y todas las
modificaciones semejantes, como resultaría obvio para alguien
experto en la materia, están pensadas para su inclusión dentro del
alcance las siguientes reivindicaciones.
El procedimiento de codificación de longitud
variable y el procedimiento de decodificación de longitud variable
según la presente invención son adecuados para usarse en un aparato
de codificación de imágenes para codificar una imagen en
movimiento, un aparato de decodificación de imágenes para
decodificar una imagen en movimiento codificada, y un sistema que
incorpore estos aparatos como un sistema de suministro de contenido
para suministrar una obra digital y otro contenido, así como un
sistema de radiodifusión digital.
Claims (5)
1. Un procedimiento de decodificación para
decodificar aritméticamente un flujo de bits que se obtiene
codificando aritméticamente, sobre una base de bloque, coeficientes
de una matriz bidimensional de componentes de frecuencia en un orden
de barrido predeterminado empezando en una componente de alta
frecuencia hacia una componente de baja frecuencia, siendo generados
dichos coeficientes por transformación de frecuencia realizada sobre
datos de imágenes de un bloque que tiene un tamaño de píxeles
predeterminado, comprendiendo el procedimiento de
decodificación:
una etapa de decodificación aritmética de
decodificar aritméticamente el flujo de bits en cada valor absoluto
de los coeficientes, sobre una base de bloque, según un orden de
barrido predeterminado empezando en una componente de alta
frecuencia hacia una componente de baja frecuencia usando una
pluralidad de tablas de probabilidad;
una etapa de cambio de cambiar de una tabla de
probabilidad a una nueva tabla de probabilidad basada en un
resultado de una comparación de un valor absoluto de un coeficiente
objetivo que ha de ser decodificado con un valor umbral
predeterminado; y
una etapa de disposición de coeficientes de
disponer, sobre una base de bloque, cada valor absoluto de los
coeficientes en la matriz bidimensional de componentes de
frecuencia;
en el que, en la etapa de cambio, el cambio
entre una pluralidad de tablas de probabilidad se realiza en una
dirección de manera que cada tabla de probabilidad, que ha sido
usada antes que dicha nueva tabla de probabilidad, no se usa después
de cambiar a dicha nueva tabla de probabilidad.
2. El procedimiento de decodificación según la
Reivindicación 1,
en el que, en la etapa de cambio, el cambio a la
nueva tabla de probabilidad se realiza después de que un número de
coeficientes decodificados que tienen un valor absoluto que excede
de 1 se vuelve un valor no nulo, y el cambio entre una pluralidad de
tablas de probabilidad no se realiza después del cambio a la nueva
tabla de probabilidad.
3. El procedimiento de decodificación según la
Reivindicación 1,
en el que, en la etapa de decodificación
aritmética, se obtienen datos binarios en la decodificación
aritmética del flujo de bits, y cada valor absoluto de los
coeficientes se obtiene convirtiendo los datos binarios en datos
multivalor.
4. El procedimiento de decodificación según la
Reivindicación 3,
en el que, en la etapa de decodificación
aritmética, la decodificación aritmética se realiza por separado en
una parte y otra parte de dichos datos binarios, y una tabla de
probabilidad usada en la decodificación aritmética de dicha una
parte de los datos binarios y una tabla de probabilidad usada en la
decodificación aritmética de dicha otra parte de los datos binarios
son diferentes cuando la decodificación aritmética se realiza sobre
los datos binarios.
5. El procedimiento de decodificación según la
Reivindicación 4,
en el que dicha una parte de los datos binarios
es un primer bit de los datos binarios y dicha otra parte de los
datos binarios es un bit distinto del primer bit de los datos
binarios.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002-126029 | 2002-04-26 | ||
JP2002126029 | 2002-04-26 | ||
JP2002363107A JP4090862B2 (ja) | 2002-04-26 | 2002-12-13 | 可変長符号化方法および可変長復号化方法 |
JP2002-363107 | 2002-12-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2281640T3 true ES2281640T3 (es) | 2007-10-01 |
Family
ID=29272364
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES03720906T Expired - Lifetime ES2281640T3 (es) | 2002-04-26 | 2003-04-16 | Procedimiento de codificacion de longitud variable y procedimiento de decodificacion de longitud variable. |
ES06122527T Expired - Lifetime ES2294768T3 (es) | 2002-04-26 | 2003-04-16 | Procedimiento de codificacion de longitud variable. |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES06122527T Expired - Lifetime ES2294768T3 (es) | 2002-04-26 | 2003-04-16 | Procedimiento de codificacion de longitud variable. |
Country Status (13)
Country | Link |
---|---|
US (12) | US7742528B2 (es) |
EP (3) | EP1401213B1 (es) |
JP (1) | JP4090862B2 (es) |
KR (2) | KR101019358B1 (es) |
CN (5) | CN100542295C (es) |
AT (3) | ATE378781T1 (es) |
AU (1) | AU2003235172B2 (es) |
BR (2) | BR0304558A (es) |
CA (1) | CA2452175C (es) |
DE (3) | DE60323698D1 (es) |
ES (2) | ES2281640T3 (es) |
MX (1) | MXPA03011335A (es) |
WO (1) | WO2003092298A1 (es) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4368575B2 (ja) * | 2002-04-19 | 2009-11-18 | パナソニック株式会社 | 可変長復号化方法、可変長復号化装置およびプログラム |
JP4090862B2 (ja) | 2002-04-26 | 2008-05-28 | 松下電器産業株式会社 | 可変長符号化方法および可変長復号化方法 |
CN101835046B (zh) * | 2004-08-31 | 2013-01-23 | 松下电器产业株式会社 | 运动图像编码方法及装置 |
JP4540585B2 (ja) | 2005-10-20 | 2010-09-08 | パナソニック株式会社 | 符号化装置及び復号化装置 |
JP4902854B2 (ja) * | 2006-09-12 | 2012-03-21 | パナソニック株式会社 | 動画像復号化装置、動画像復号化方法、動画像復号化プログラム、動画像符号化装置、動画像符号化方法、動画像符号化プログラム、及び動画像符号化復号化装置 |
KR101260285B1 (ko) | 2006-11-27 | 2013-05-03 | 한국과학기술원 | 다원화된 확률 모형에 기반한 비.에스.에이.씨 산술 복호화방법 |
CN101500159B (zh) * | 2008-01-31 | 2012-01-11 | 华为技术有限公司 | 一种图像熵编码、熵解码的方法及装置 |
JP5258664B2 (ja) * | 2009-04-14 | 2013-08-07 | 株式会社エヌ・ティ・ティ・ドコモ | 画像符号化装置、方法およびプログラム、並びに、画像復号装置、方法およびプログラム |
CN102667923B (zh) | 2009-10-20 | 2014-11-05 | 弗兰霍菲尔运输应用研究公司 | 音频编码器、音频解码器、用于将音频信息编码的方法、用于将音频信息解码的方法 |
WO2011052142A1 (ja) * | 2009-10-29 | 2011-05-05 | パナソニック株式会社 | 画像符号化方法および画像復号方法 |
JP5679980B2 (ja) * | 2009-11-02 | 2015-03-04 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置 |
SG182466A1 (en) | 2010-01-12 | 2012-08-30 | Fraunhofer Ges Forschung | Audio encoder, audio decoder, method for encoding and audio information, method for decoding an audio information and computer program using a modification of a number representation of a numeric previous context value |
MX353107B (es) | 2010-04-09 | 2017-12-19 | Mitsubishi Electric Corp | Dispositivo codificador de imagen en movimiento y dispositivo decodificador de imagen en movimiento. |
HUE051391T2 (hu) * | 2010-04-13 | 2021-03-01 | Ge Video Compression Llc | Szignifikancia térképek és transzformációs együttható blokkok kódolása |
US9042440B2 (en) | 2010-12-03 | 2015-05-26 | Qualcomm Incorporated | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding |
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 |
US20120163456A1 (en) | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
US8755620B2 (en) | 2011-01-12 | 2014-06-17 | Panasonic Corporation | Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus for performing arithmetic coding and/or arithmetic decoding |
US8687904B2 (en) | 2011-01-14 | 2014-04-01 | Panasonic Corporation | Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus which include arithmetic coding or arithmetic decoding |
WO2012114711A1 (ja) * | 2011-02-23 | 2012-08-30 | パナソニック株式会社 | 画像符号化方法および画像復号方法 |
US9106913B2 (en) | 2011-03-08 | 2015-08-11 | Qualcomm Incorporated | Coding of transform coefficients for video coding |
US10499059B2 (en) | 2011-03-08 | 2019-12-03 | Velos Media, Llc | Coding of transform coefficients for video coding |
JP5787135B2 (ja) | 2011-04-06 | 2015-09-30 | ソニー株式会社 | 画像処理装置および方法、プログラム、並びに、記録媒体 |
US8805099B2 (en) * | 2011-06-22 | 2014-08-12 | Panasonic Intellectual Property Corporation Of America | Image decoding method and image coding method |
US9167253B2 (en) | 2011-06-28 | 2015-10-20 | Qualcomm Incorporated | Derivation of the position in scan order of the last significant transform coefficient in video coding |
JP5368662B1 (ja) | 2011-11-07 | 2013-12-18 | パナソニック株式会社 | 符号化方法および符号化装置 |
JP6607956B2 (ja) * | 2015-05-29 | 2019-11-20 | エスゼット ディージェイアイ テクノロジー カンパニー リミテッド | ビデオ処理方法及びビデオ処理システム |
US20170180757A1 (en) * | 2015-12-18 | 2017-06-22 | Blackberry Limited | Binarizer selection for image and video coding |
WO2017192995A1 (en) * | 2016-05-06 | 2017-11-09 | Vid Scale, Inc. | Method and system for decoder-side intra mode derivation for block-based video coding |
CN112399181B (zh) * | 2019-08-19 | 2022-08-26 | 华为技术有限公司 | 图像编解码的方法、装置和存储介质 |
CN111726626B (zh) * | 2020-06-18 | 2022-05-03 | 格兰菲智能科技有限公司 | 集成电路及用于视频解码的概率表存储方法 |
CN115209079B (zh) * | 2022-02-23 | 2023-05-02 | 北京拙河科技有限公司 | 一种适用于高速摄像机长时间存储数据的方法和设备 |
CN114245133A (zh) * | 2022-02-23 | 2022-03-25 | 北京拙河科技有限公司 | 视频分块编码方法、编码传输方法、系统和设备 |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US254583A (en) | 1882-03-07 | And carding curled horse hair | ||
CA1296430C (en) | 1986-11-10 | 1992-02-25 | Masahide Kaneko | Encoding system capable of accomplishing a high efficiency by anterior and/or posterior processing to quantization |
US4813056A (en) * | 1987-12-08 | 1989-03-14 | General Electric Company | Modified statistical coding of digital signals |
JPH04100390A (ja) | 1990-08-20 | 1992-04-02 | Hitachi Ltd | 高能率符号化方式 |
JP3205028B2 (ja) | 1991-02-05 | 2001-09-04 | キヤノン株式会社 | 画像圧縮装置及びその方法 |
US6546145B1 (en) * | 1991-02-05 | 2003-04-08 | Canon Kabushiki Kaisha | Image compression using selection of quantization method |
JPH04315270A (ja) | 1991-04-15 | 1992-11-06 | Toshiba Corp | 符号化装置 |
JP3016456B2 (ja) | 1992-06-15 | 2000-03-06 | 日本電信電話株式会社 | 適応的可変長符号化方法 |
JPH06178282A (ja) * | 1992-12-02 | 1994-06-24 | Mitsubishi Electric Corp | 画像の符号化装置 |
US5400075A (en) * | 1993-01-13 | 1995-03-21 | Thomson Consumer Electronics, Inc. | Adaptive variable length encoder/decoder |
JP3278948B2 (ja) | 1993-02-05 | 2002-04-30 | 日本電信電話株式会社 | 可変長符号化方法 |
JP3277425B2 (ja) | 1993-03-19 | 2002-04-22 | ソニー株式会社 | ディジタル信号の符号化方法、符号化用テーブル生成方法、符号化装置及び符号化方法 |
US5510785A (en) * | 1993-03-19 | 1996-04-23 | Sony Corporation | Method of coding a digital signal, method of generating a coding table, coding apparatus and coding method |
JP3210996B2 (ja) * | 1993-07-30 | 2001-09-25 | 三菱電機株式会社 | 高能率符号化装置及び高能率復号化装置 |
JPH0759086A (ja) | 1993-07-30 | 1995-03-03 | Canon Inc | 画像処理装置 |
JP2836467B2 (ja) * | 1993-12-16 | 1998-12-14 | 日本電気株式会社 | 2値シンボルの符号化・復号化回路 |
JP3305140B2 (ja) * | 1994-12-28 | 2002-07-22 | キヤノン株式会社 | 符号化装置及び方法 |
US5883976A (en) | 1994-12-28 | 1999-03-16 | Canon Kabushiki Kaisha | Selectively utilizing multiple encoding methods |
JP3624450B2 (ja) | 1995-02-06 | 2005-03-02 | ソニー株式会社 | 画像データ符号化方法及び画像データ符号化装置 |
US6104754A (en) * | 1995-03-15 | 2000-08-15 | Kabushiki Kaisha Toshiba | Moving picture coding and/or decoding systems, and variable-length coding and/or decoding system |
JPH08256266A (ja) * | 1995-03-17 | 1996-10-01 | Mitsubishi Electric Corp | 画像符号化方式 |
JP3114796B2 (ja) | 1995-09-11 | 2000-12-04 | 松下電器産業株式会社 | 可変長符号化装置及び方法 |
EP0762771A3 (en) | 1995-09-11 | 1998-09-23 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for variable-length coding |
US6571019B1 (en) * | 1995-10-26 | 2003-05-27 | Hyundai Curitel, Inc | Apparatus and method of encoding/decoding a coded block pattern |
JPH09307901A (ja) | 1996-05-13 | 1997-11-28 | Toshiba Corp | 映像信号処理装置 |
KR100335622B1 (ko) * | 1996-06-30 | 2002-11-20 | 삼성전자 주식회사 | 위치적확률모형을이용한문법기반의적응식산술부호화기및/또는복호화기및이를이용한고능률영상부호화기및/또는복호화기 |
TW366669B (en) * | 1996-10-30 | 1999-08-11 | Matsushita Electric Ind Co Ltd | Picture encoding device and picture encoding method, picture decoding device and picture decoding method, and data recording media |
JP4034380B2 (ja) * | 1996-10-31 | 2008-01-16 | 株式会社東芝 | 画像符号化/復号化方法及び装置 |
EP0873018B1 (en) * | 1996-11-06 | 2002-09-25 | Matsushita Electric Industrial Co., Ltd. | Image decoding method |
US5995148A (en) * | 1997-02-14 | 1999-11-30 | At&T Corp | Video coder having scalar dependent variable length coder |
US6081213A (en) * | 1997-03-26 | 2000-06-27 | Sony Corporation | Method and apparatus for arithmetic coding, method and apparatus for arithmetic decoding, and storage medium |
KR100281328B1 (ko) * | 1998-01-30 | 2001-02-01 | 전주범 | 콘텍스트 기반 산술 부호화/복호화 방법 및 장치 |
JPH11243343A (ja) | 1998-02-25 | 1999-09-07 | Victor Co Of Japan Ltd | 可変長符号化方法、可変長復号化方法、及び可変長符号記録媒体 |
JPH11341497A (ja) * | 1998-05-29 | 1999-12-10 | Matsushita Electric Ind Co Ltd | 画像符号化復号化装置及び、画像符号化復号化方法 |
JP4160689B2 (ja) * | 1998-11-10 | 2008-10-01 | 株式会社リコー | 算術符号化装置および算術復号装置 |
US6681049B1 (en) * | 1999-05-20 | 2004-01-20 | Matsushita Electric Industrial Co., Ltd. | Image encoding method and apparatus |
JP2001024515A (ja) | 1999-07-07 | 2001-01-26 | Sony Corp | 信号処理方法及び装置 |
JP3603000B2 (ja) * | 2000-02-01 | 2004-12-15 | カネボウ株式会社 | ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 |
TW515192B (en) * | 2000-06-06 | 2002-12-21 | Noa Kk Off | Compression method of motion picture image data and system there for |
US6882751B2 (en) * | 2000-06-14 | 2005-04-19 | Canon Kabushiki Kaisha | Arithmetic decoding method and device and storage medium |
US6888893B2 (en) * | 2001-01-05 | 2005-05-03 | Microsoft Corporation | System and process for broadcast and communication with very low bit-rate bi-level or sketch video |
JP4315270B2 (ja) | 2001-01-24 | 2009-08-19 | 旭精工株式会社 | コインホッパ |
US6856701B2 (en) * | 2001-09-14 | 2005-02-15 | Nokia Corporation | Method and system for context-based adaptive binary arithmetic coding |
US7026960B2 (en) * | 2001-11-27 | 2006-04-11 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding and decoding key data |
US7099387B2 (en) * | 2002-03-22 | 2006-08-29 | Realnetorks, Inc. | Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses |
JP4090862B2 (ja) * | 2002-04-26 | 2008-05-28 | 松下電器産業株式会社 | 可変長符号化方法および可変長復号化方法 |
JP4100390B2 (ja) | 2004-10-07 | 2008-06-11 | 三菱自動車工業株式会社 | 車両の前部車体構造 |
-
2002
- 2002-12-13 JP JP2002363107A patent/JP4090862B2/ja not_active Expired - Lifetime
-
2003
- 2003-04-16 DE DE60323698T patent/DE60323698D1/de not_active Expired - Lifetime
- 2003-04-16 KR KR1020087008885A patent/KR101019358B1/ko active IP Right Grant
- 2003-04-16 BR BR0304558A patent/BR0304558A/pt active IP Right Grant
- 2003-04-16 AT AT06122527T patent/ATE378781T1/de not_active IP Right Cessation
- 2003-04-16 CN CNB2007100970563A patent/CN100542295C/zh not_active Expired - Lifetime
- 2003-04-16 CN CN2008100834099A patent/CN101242537B/zh not_active Expired - Lifetime
- 2003-04-16 DE DE2003617585 patent/DE60317585T2/de not_active Expired - Lifetime
- 2003-04-16 AT AT03720906T patent/ATE357816T1/de not_active IP Right Cessation
- 2003-04-16 EP EP20030720906 patent/EP1401213B1/en not_active Expired - Lifetime
- 2003-04-16 AU AU2003235172A patent/AU2003235172B2/en not_active Expired
- 2003-04-16 CN CNB2007100970582A patent/CN100542297C/zh not_active Expired - Lifetime
- 2003-04-16 CN CNB038005182A patent/CN100380979C/zh not_active Expired - Lifetime
- 2003-04-16 CN CNB2007100970578A patent/CN100542296C/zh not_active Expired - Lifetime
- 2003-04-16 WO PCT/JP2003/004804 patent/WO2003092298A1/ja active Application Filing
- 2003-04-16 KR KR20037013809A patent/KR100979604B1/ko active IP Right Grant
- 2003-04-16 US US10/481,277 patent/US7742528B2/en active Active
- 2003-04-16 ES ES03720906T patent/ES2281640T3/es not_active Expired - Lifetime
- 2003-04-16 DE DE2003612620 patent/DE60312620T2/de not_active Expired - Lifetime
- 2003-04-16 AT AT07112935T patent/ATE408962T1/de not_active IP Right Cessation
- 2003-04-16 ES ES06122527T patent/ES2294768T3/es not_active Expired - Lifetime
- 2003-04-16 BR BRPI0304558-7A patent/BRPI0304558B1/pt unknown
- 2003-04-16 MX MXPA03011335A patent/MXPA03011335A/es active IP Right Grant
- 2003-04-16 EP EP20060122527 patent/EP1742482B1/en not_active Expired - Lifetime
- 2003-04-16 EP EP20070112935 patent/EP1843596B1/en not_active Expired - Lifetime
- 2003-04-16 CA CA2452175A patent/CA2452175C/en not_active Expired - Lifetime
-
2007
- 2007-10-25 US US11/976,549 patent/US8098736B2/en active Active
-
2010
- 2010-02-23 US US12/710,673 patent/US8005146B2/en not_active Expired - Lifetime
- 2010-02-23 US US12/710,731 patent/US7970059B2/en not_active Expired - Lifetime
-
2011
- 2011-06-14 US US13/159,827 patent/US8284841B2/en not_active Expired - Lifetime
-
2012
- 2012-09-05 US US13/603,821 patent/US8804838B2/en not_active Expired - Lifetime
-
2014
- 2014-07-07 US US14/324,749 patent/US9191666B2/en not_active Expired - Fee Related
-
2015
- 2015-10-09 US US14/879,582 patent/US9521415B2/en not_active Expired - Lifetime
- 2015-10-09 US US14/879,524 patent/US9497467B2/en not_active Expired - Lifetime
-
2016
- 2016-10-19 US US15/297,809 patent/US9794567B2/en not_active Expired - Lifetime
-
2017
- 2017-09-13 US US15/703,103 patent/US10349054B2/en not_active Expired - Lifetime
- 2017-09-13 US US15/703,124 patent/US10356412B2/en not_active Expired - Lifetime
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2281640T3 (es) | Procedimiento de codificacion de longitud variable y procedimiento de decodificacion de longitud variable. | |
ES2277313T3 (es) | Procedimiento de codificacion de imagen. | |
ES2549252T3 (es) | Método de codificación de longitud variable | |
JP2007096709A (ja) | 画像処理方法、画像符号化方法および画像復号方法 | |
JP4313710B2 (ja) | 画像符号化方法および画像復号化方法 | |
JP4091107B1 (ja) | 可変長符号化装置および画像符号化装置 | |
JP4091108B1 (ja) | 可変長復号化装置および画像復号化装置 | |
JP4091074B2 (ja) | 可変長符号化方法および可変長復号化方法 | |
JP2005079965A (ja) | 代表点情報符号化方法および代表点情報復号化方法 |