BRPI0612179A2 - codificação por entropia com livros-código compactos - Google Patents
codificação por entropia com livros-código compactos Download PDFInfo
- Publication number
- BRPI0612179A2 BRPI0612179A2 BRPI0612179-9A BRPI0612179A BRPI0612179A2 BR PI0612179 A2 BRPI0612179 A2 BR PI0612179A2 BR PI0612179 A BRPI0612179 A BR PI0612179A BR PI0612179 A2 BRPI0612179 A2 BR PI0612179A2
- Authority
- BR
- Brazil
- Prior art keywords
- information
- tuple
- order
- values
- information values
- Prior art date
Links
Classifications
-
- 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/42—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
CODIFICAçãO POR ENTROPIA COM LIVROS-CóDIGO COMPACTOS. A presente invenção se baseia no achado de que pode ser obtida uma codificação eficiente para a codificação de valores de informação, quando dois ou mais valores de informação são agrupados em uma tupla em uma ordem da tupla e quando é usada uma regra de codificação, que indique a mesma palavra-código a tuplas tendo idênticos valores de informação em diferentes ordens e que obtenha informações de ordem, indicando a ordem da tupla, e quando a palavra-código é enviada em associação com as informações de ordem.
Description
"CODIFICAÇÃO POR ENTROPIA COM LIVROS-CÓDIGOCOMPACTOS"
Campo da Invenção
A presente invenção se refere àcodificação/decodificação de valores de informação e, emparticular, à codificação por entropia usando livros-códigocompactos para a geração de um código eficiente.
Histórico da Invenção e Técnica Anterior
Atualmente, estão se tornando cada vez maisimportantes as técnicas de reprodução de áudio multicanais. Istopode ser devido ao fato de que as técnicas decompressão/codificação de áudio, como a bem conhecida técnica mp3,tornaram possível distribuir o registro de áudio pela Internet oupor outros canais de transmissão com largura limitada de banda. Atécnica de codificação mp3 tornou-se tão famosa devido ao fato deque permite a distribuição de todos os registros em um formatoestéreo, isto é, uma representação digital do registro de áudio,incluindo um primeiro ou um canal estéreo esquerdo e um segundo oucanal estéreo direito.
Não obstante, existem desvantagens básicas dossistemas de som convencionais de dois canais. Portanto, foidesenvolvida a técnica surround. Uma representação surroundmulticanais recomendada inclui, além dos dois canais estéreo L eR, um outro canal central C e dois canais surround Ls, Rs. Esteformato de som de referência é também denominado de estéreotrês/dois, o que significa três canais frontais e dois canaissurround. Em geral, são necessários cinco canais de transmissão.Em um ambiente de playback, pelo menos cinco alto-falantes nosrespectivos cinco locais diferentes são necessários para aobtenção de um sweet spot ideal a certa distância dos cinco bemcolocados alto-falantes.
São conhecidas várias técnicas para reduzir aquantidade de dados necessários para a transmissão de um sinal deáudio multicanais. Essas técnicas são denominadas técnicas jointstereo. Para tanto, é feita referência à Fig. 9, que mostra umdispositivo joint stereo 60. Esse dispositivo pode ser umdispositivo para a implementação de, por exemplo, intensity stereo(IS) ou binaural cue coding (BCC). Esse dispositivo geralmenterecebe - como entrada - pelo menos dois canais (CHI, CH2, ... CHn),e envia pelo menos um único canal portador e dados paramétricos.
Os dados paramétricos são definidos de maneira que, em umdecodificador, possa ser calculada uma aproximação de um canaloriginal (CHI, CH2, ... CHn) .
Normalmente, o canal portador incluirá amostrasde sub-bandas, coeficientes espectrais, amostras de domínio detempo, etc., que proporcionam uma representação comparativamentefina do sinal subjacente, enquanto os dados paramétricos nãoincluem essas amostras de coeficientes espectrais, mas incluemparâmetros de controle para controlar um determinado algoritmo dereconstrução como pesagem por multiplicação, mudança de tempo,mudança de freqüência, mudança de fase, etc. Os dadosparamétricos, portanto, incluem somente uma representaçãocomparativamente grosseira do sinal do canal associado. Explicadoem números, a quantidade de dados exigidos por um canal portadorestará na faixa de 60 a 70 kBit/s, enquanto a quantidade de dadosexigida pelas informações auxiliares paramétricas para um canalestará na faixa de 1,5 a 2,5 kBit/s. Um exemplo de dadosparamétricos são os bem conhecidos fatores de escala, asinformações intensity stereo ou os binaural cue parameters, comoserá descrito abaixo.
A técnica BCC está descrita no documento daconvenção AES 5574, "Binaural Cue Coding applied to Stereo andMulti-Channel Audio Compression", C. Faller, F. Baumgarte, May2002, Munich, no documento IEEE WASPAA "Efficient representationof spatial áudio using perceptual parametrization", October 2001,Mohonk, NY, in "Binaural cue coding applied to áudio compressionwith flexible rendering", C. Faller and F. Baumgarte, AES 113thConvention, Los Angeles, Preprint 5686, October 2002 e no"Binaural cue coding - Part II: Schemes and applications", C.Faller and F. Baumgarte, IEEE Trans. on Speech and Audio Proc.,volume levei. 11, no. 6, Nov. 2003.
Na codificação BCC, são convertidos alguns canaisde entrada de áudio em representação espectral usando umatransformada base DTF (Transformada Discreta de Fourier) comjanelas superponíveis. O espectro uniforme resultante é divididoem partições não superponíveis. Cada partição tem aproximadamentelargura de banda proporcional à largura de banda retangularequivalente (ERB). Os parâmetros BCC são então estimados entredois canais para cada partição. Esses parâmetros BCC sãonormalmente dados para cada canal com respeito a um canal dereferência e são depois quantizados. Os parâmetros transmitidossão finalmente calculados de acordo com as fórmulas indicadas(codificadas), que também podem depender das partições específicasdo sinal a ser processado.
Existem alguns parâmetros BCC. O parâmetro ICLD,por exemplo, descreve a diferença (índice) das energias contidasem 2 canais comparados. 0 parâmetro ICC (coerência/correlaçãointercanais) descreve a correlação entre os dois canais, que podeser entendida como a similaridade das formas de onda dos doiscanais. 0 parâmetro ICTD (diferença de tempos intercanais)descreve a mudança de tempo global entre os 2 canais, considerandoque o parâmetro IPD (diferença de fases intercanais) o descrevecom relação às fases dos sinais.
Deve-se notar que, em um processamento de quadrosdo sinal de áudio, a análise BCC é também feita por quadros, istoé, com variação de tempo e também por freqüência. Isto significaque, para cada banda espectral, os parâmetros BCC são obtidosindividualmente. Isto ainda significa que, no caso em que um bancode filtros de áudio decompuser o sinal de entrada em, por exemplo,32 sinais de passe de banda, um bloco de análise BCC obtém umconjunto de parâmetros BCC para cada uma das 32 bandas.
Uma técnica relacionada, também conhecida comoestéreo paramétrico, é descrita em J. Breebaart, S. van de Par, A.Kohlrausch, E. Schuijers, "High-Quality Parametric Spatial AudioCoding at Low Bitrates", AES 116th Convention, Berlin, Preprint6072, May 2004, and E. Schuijers, J. Breebaart, H. Purnhagen, J.Engdegard, llLow Complexity Parametric Stereo Coding", AES 116thConvention, Berlin, Preprint 6073, May 2004.
Em resumo, recentes abordagens de codificaçãoparamétrica de sinais de áudio multicanais ("Spatial AudioCoding", "Binaural Cue Coding" (BCC) etc.) representam um sinal deáudio multicanais por meio de um sinal downmix (pode sermonofônico ou compreender vários canais) e informaçõesparamétricas auxiliares ("spatial cues") caracterizando seuestágio sonoro espacial percebido. É desejável manter a taxa deinformações auxiliares como a mais baixa possível de maneira aminimizar as informações de overhead e deixar o máximo dacapacidade de transmissão disponível para a codificação dos sinaisdownmix.
Uma forma de manter baixa a taxa de bits dasinformações auxiliares é codificar sem perdas as informaçõesauxiliares de um esquema de áudio espacial pela aplicação, porexemplo, de algoritmos de codificação por entropia nas informaçõesauxiliares.
A codificação sem perdas foi aplicadaextensivamente na codificação geral de áudio, para garantir umarepresentação idealmente compacta dos coeficientes espectraisquantizados e de outras informações auxiliares. Os exemplos dosesquemas e métodos de codificação adequados são dados nos padrõesISO/IEC MPEGl parte 3, MPEG2 parte 7 e MPEG4 parte 3.
Esses padrões e, por exemplo, também o documentoIEEE "Noiseless Coding of Quantized Spectral Coefficients in MPEG-2 Advanced Audio Coding", S. R. Quackenbush, J. D. Johnston, IEEEWASPAA, Mohonk, NY, October 1997 descrevem as técnicas de pontaque incluem as seguintes medidas para codificar sem perdasparâmetros quantizados:
• Codificação multidimensional de Huffman decoeficientes espectrais quantizados.
• Uso de um livro-código comum de Huffman(multidimensional) para conjuntos de coeficientes.
Codificação do valor seja como um total oucodificação das informações de sinais e as informações demagnitude separadamente (isto é, ter somente entradas do livro-código de Huffman para um dado valor absoluto que reduz asdimensões necessárias do livro-código, livros-código "assinado"vs. "não assinado").
• Uso de livros-código alternativos dediferentes maiores valores absolutos (LAVs), isto é, diferentesvalores absolutos máximos dentro dos parâmetros a seremcodificados.
• Uso de livros-código alternativos dediferente distribuição estatística para cada LAV.
• Transmissão da escolha do livro-código deHuffman como informações auxiliares ao decodificador.
Uso de "seções" para definir a faixa dasaplicações de cada livro-código selecionado de Huffman.
• Codificação diferencial dos fatores de escalacom relação à freqüência e à subseqüente codificação de Huffman doresultado.
É proposta uma outra técnica para a codificaçãosem perdas de valores quantizados grosseiramente em um únicocódigo PCM dentro do padrão de áudio MPEGl (denominado agrupamentodentro do padrão e usado para a camada 2) . Isto é explicado emmaiores detalhes no padrão ISO/IEC 11172-3:93.
A publicação "Binaural cue coding - Part II:Schemes and applications", C. Faller and F. Baumgarte, IEEE Trans.on Speech and Audio Proc., volume levei. 11, no. 6, Nov. 2003fornece algumas informações sobre a codificação de parâmetros BCC.
É proposto que os parâmetros ICLD quantizados sejam codificadosdiferencialmente:
• na freqüência e o resultado sendosubseqüentemente codificado por Huffman (com um código de Huffmanunidimensional).
• no tempo e o resultado seja subseqüentementecodificado por Huffman (com um código de Huffman unidimensional) ,
e que finalmente, a variante mais eficiente sejaselecionada como a representação de um sinal original de áudio.
Como acima mencionado, foi proposto otimizar odesempenho de compressão aplicando codificação diferencial nafreqüência e, de maneira alternativa, no tempo e selecionar avariante mais eficiente. A variante selecionada é então sinalizadapara um decodificador por meio de algumas informações auxiliares.
As técnicas anteriores acima descritas são úteispara reduzir a quantidade de dados que, por exemplo, deve sertransmitida por meio de um fluxo de áudio ou um fluxo de vídeo. 0uso das técnicas descritas de codificação sem perdas baseadas emesquemas de codificação por entropia resulta geralmente em fluxosde bits com uma taxa de bits não constante.
No padrão AAC (Advanced Audio Codec), é feita umaproposta para reduzir tanto o tamanho das palavras-código como otamanho do livro-código subjacente, usando os livros-código "nãoassinados", supondo que a distribuição de probabilidades dosvalores das informações a serem codificadas depende somente dasmagnitudes dos valores a serem codificados, ao invés de seussinais. Os bits sinais são então transmitidos separadamente epodem ser considerados como um código postfix, mapeando aocontrário as informações de magnitude codificada para o valor real(sinal χ magnitude). Supondo, por exemplo, um livro-código deHuffman de quatro dimensões, isto resulta no salvamento de umfator de 2^4 = 16 (supondo que todos os valores tenham sinais) notamanho do livro-código.
Já foram feitas algumas tentativas para reduzir otamanho do código por meio da codificação por entropia. Nãoobstante, ainda são enfrentadas algumas grandes desvantagens douso da técnica anterior. Por exemplo, ao usar livros-códigomultidimensionais de Huffman, é possível obter uma redução da taxade bits necessária para a transmissão de algumas informaçõescodificadas. Isto é conseguido ao custo de um aumento no tamanhodo livro-código de Huffman que deve ser usado, já que para cadadimensão adicional, o livro-código de Huffman aumenta duplicando.
Isto é especialmente desvantajoso nas aplicações em que o livro-código de Huffman é transmitido com as informações codificadas,como é, por exemplo, o caso de alguns programas de compressão emcomputador. Mesmo que o livro-código de Huffman não tenha que sertransmitido com dados, ele deve ser armazenado no codificador e nodecodificador, precisando de espaço de armazenagem caro,disponível somente em quantidades limitadas, especialmente emaplicações móveis para streaming de áudio ou vídeo ou de playback.
Várias publicações se referem a problemassimilares. Por exemplo, a Patente Norte-Americana 5550541 serefere à geração de tabelas de codificação fonte compactas parasistemas de codificadores/decodificadores. São geradas tabelas decodificação de Huffman multidimensionais que são menores que astabelas convencionais por meio do ordenamento dos símbolos dentrodas mensagens antes da codificação e além de passar as informaçõesde ordem com a palavra-código resultante.
Pattichis M. S. et al: "On the representation ofwideband images using permutations for lossless coding",PR0CEEDINGS OF THE 4TH IEEE SOUTHWEST SYMP0SIUM ON IMAGE ANALYSISAND INTERPRETATI0N, S. 237 - 241) sugere um novo método para arepresentação de imagens de codificação de banda larga usandopermutações. As amostras codificadas diferencialmente sãocodificadas no comprimento de operação.
VASILACHE A. et al: "Indexing and entropy codingof lattice code vectors", 2001, IEEE INTERNATIONAL CONFERENCE ONACOUSTICS, SPEECH, AND SIGNAL PROCESSING PROCEEDINGS, Vol.1 of 6,pages 2.605 - 2.608 se refere à codificação por entropia devetores código de treliça. É sugerida uma abordagem combinada coma combinação de codificação de Huffman e codificação decomprimento fixo. Os vetores código são agrupados em classes e osnúmeros índice das classes individuais são codificados usandocodificação por entropia. Como também proposto, a posição do vetorcódigo dentro de uma classe individual é codificada usandocodificação enumerativa de índice fixo.
QUACKENBUSH et al: "Noiseless Coding of QuantizedSpectral Components in MPEG-2 Advanced Audio Coding", IEEE ASSPWORKSHOP ON APPLICATIONS OF SIGNAL PROCESSING TO AUDIO ANDACOUSTICS) se refere à aplicação de um algoritmo flexível decodificação de Huffman usado para a codificação de componentesespectrais quantizados. São codificados N-tuplas usando diferenteslivros-código de Huffman, alguns deles tendo somente valoresabsolutos para salvar no armazenamento do livro-código. Nessecaso, é apenso um bit sinal para cada coeficiente não zero àpalavra-código.
"Indexing Algorithms for Zn, An, Dn, and Dm+ +Lattice Vector Quantizers", Patrick Raul and Christine Guillemont,se refere à indexação vetorial de algoritmos válida para umagrande classe de treliças usada na compressão audiovisual desinais. Os vetores são ordenados em classes, em que cada classe édefinida como uma possível permutação "assinada" dos componentesdos denominados "vetores líderes". Usar vetores líderes nãoassinados exige a transmissão de um bit sinal para cada elementonão zero de um membro de classe.
Sumário da invenção
É objetivo da presente invenção prover umconceito para a geração e uso de um código mais eficiente paracomprimir valores de informação e para reduzir o tamanho de umlivro-código subjacente.
De acordo com um primeiro aspecto da presenteinvenção, este objetivo é alcançado por um codificador para acodificação de valores de informação, compreendendo: um agrupadorpara agrupar dois ou mais valores de informação em uma tupla emordem tupla; um gerador de informações de código para a geraçãodas informações de ordem que indicam a ordem tupla e uma palavra-código para a tupla usando uma regra de codificação, onde a regrade codificação é tal que a mesma palavra-código é indicada atuplas tendo idênticos valores de informação em diferentes ordens;e uma interface de saída para enviar a palavra-código e, emassociação com esta, as informações de ordem.
De acordo com um segundo aspecto da presenteinvenção, este objetivo é alcançado por um decodificador para adecodificação de uma palavra-código baseada nos valores deinformação, compreendendo: uma interface de entrada provendo apalavra-código e, em associação com esta, as informações de ordemindicando uma ordem tupla, sendo uma ordem de dois ou mais valoresde informação dentro de uma tupla de valores de informação; umprocessador de códigos para obter uma tupla usando uma regra dedecodificação dependendo da regra de codificação usada para criara palavra-código, em que a regra de decodif icação é tal quediferentes tuplas são obtidas a partir da mesma palavra-código, asdiferentes tuplas tendo os mesmos valores de informação emdiferentes ordens de tuplas, como indicado pelas diferentesinformações de ordem; e um desagrupador para desagrupar as tuplasem dois ou mais valores de informação.
De acordo com um terceiro aspecto da presenteinvenção, este objetivo é alcançado por um método para acodificação de valores de informação, o método compreendendo:agrupar dois ou mais valores de informação em uma tupla em umaordem tupla; gerar informações de ordem indicando a ordem datupla; gerar uma palavra-código para a tupla usando uma regra decodificação, onde a regra de codificação é tal que a mesmapalavra-código é indicada a tuplas tendo idênticos valores deinformação em diferentes ordens; e enviar a palavra-código e, emassociação com esta, as informações de ordem.
De acordo com um quarto aspecto da presenteinvenção, este objetivo é alcançado por um programa de computadorque implementa o método acima, quando executado em um computador.
De acordo com um quinto aspecto da presenteinvenção, este objetivo é alcançado por um método para adecodificação das palavras-código baseado nos valores deinformação, o método compreendendo: prover a palavra-código e, emassociação com esta, as informações de ordem indicando a ordem datupla, sendo uma ordem de dois ou mais valores de informaçãodentro de uma tupla de valores de informação; obter uma tuplausando uma regra de decodificação dependendo de uma regra decodificação usada para criar a palavra-código, em que a regra dedecodificação é tal que diferentes tuplas são obtidas a partir damesma palavra-código, as diferentes tuplas tendo os mesmos valoresde informação em diferentes ordens de tuplas, como indicado pelasdiferentes informações de ordem; e desagrupar as tuplas em dois oumais valores de informação.
De acordo com um sexto aspecto da presenteinvenção, este objetivo é alcançado por um programa de computadorque implementa o método acima, quando executado em um computador.
De acordo com um sétimo aspecto da presenteinvenção, este objetivo é alcançado por dados codificados baseadosem valores de informação, os dados codificados compreendendo apalavra-código para a tupla de dois ou mais valores de informaçãodispostos na tupla em uma ordem de tupla e as informações de ordemindicando a ordem da tupla.
A presente invenção se baseia no achado de quepode ser obtido um código eficiente para a codificação de valoresde informação, quando dois ou mais valores de informação sãoagrupados em uma tupla na ordem da tupla e quando é usada umaregra de codificação, que indique a mesma palavra-código a tuplastendo idênticos valores de informação em diferentes ordens equando são obtidas as informações de ordem, indicando a ordem datupla e associadas à palavra-código.
Para a codificação por entropia usando códigos deHuffman, o conceito da invenção acima descrito pode serimplementado de maneira mais eficiente. O tamanho de um livro-código de Huffman depende também do número de possíveis valores aser codificado como do número de valores codificados em conjunto(dimensão do livro-código de Huffman) . Para reduzir o espaçonecessário de armazenagem para representar um livro-código deHuffman em uma aplicação específica, é vantajoso explorar assimetrias na distribuição de probabilidades dos dados a seremcodificados, de maneira que esta palavra-código de Huffmanrepresente um conjunto total de grupos de valores codificados comigual probabilidade. 0 grupo real de valores codificados emconjunto é então especificado por um determinado código postfix.
Como a ordem de dois ou mais valores em uma tuplanão é dependente do conteúdo representado pelos valores, quando osvalores não estão correlacionados em um determinado grau, podemser supostas iguais probabilidades para diferentes ordens dosmesmos valores (já que os valores não são correlacionados).
Particular e preferivelmente para um código de comprimentovariável, isto é, um código tendo palavras-código com diferentescomprimentos, essas iguais probabilidades resultarão em um menorlivro-código, assim como em um código mais eficiente, quando astuplas com diferentes ordens dos mesmos valores são indicadas auma única palavra-código.
Portanto, em uma configuração preferida dapresente invenção, os valores de informação que devem sercodificados por um codificador bidimensional de Huffman são emprimeiro lugar codificados diferencialmente, resultando em umarepresentação diferencial dotada de determinadas simetrias comoserá explicado depois em maiores detalhes. Depois disso, sãoaplicadas algumas operações de simetria à representaçãodiferencial, reduzindo o número de possíveis tuplas a seremcodificadas, também assim reduzindo o tamanho do livro-códigonecessário.
A codificação diferencial de uma distribuição devalores, que ocorrem com uma dada distribuição de probabilidades,resultará em uma distribuição de valores de diferenças centrada àvolta de zero, tendo uma distribuição de probabilidades simétrica,isto é, ocorrerão valores com o mesmo valor absoluto, mas comsinais diferentes com a mesma probabilidade.
0 princípio básico da codificação por entropiacomo, por exemplo, a codificação de Huffman, é que, o livro-códigousado representa uma dada distribuição de probabilidades dosvalores de informação tão boa quanto possível, já que indica asmais curtas palavras-código possíveis aos valores de informaçãoque ocorrem com maior freqüência. A codificação multidimensionalde Huffman segue o mesmo princípio, mas combina dois ou maisvalores de informação em uma tupla, caracterizado pelo fato de quetoda a tupla fica então associada a uma única palavra-código.
Portanto, a combinação da codificação diferencialcom duas codificações bidimensionais de Huffman produz dois tiposde simetrias que podem ser usadas.
A primeira simetria é obtida a partir daobservação que a probabilidade de ocorrência da tupla (a, b) éaproximadamente a mesma que a da tupla (-a, -b) . Isto correspondea uma simetria pontual relativa à origem de um sistema decoordenadas, onde o primeiro valor de uma tupla define o eixo X eo segundo valor da tupla define o eixo Y.
A segunda simetria se baseia na suposição de que,alterando-se a ordem em que os dois valores ocorrem em uma tuplanão altera a probabilidade de ocorrência da tupla, isto é, que (a,b) e (b, a) são igualmente prováveis. Isto corresponde a umasimetria de eixos relativa aos bissetores dos sistemas decoordenadas do primeiro e do terceiro quadrantes, quando o sistemade coordenadas é definido como explicado acima.
As duas simetrias podem ser exploradas de maneiraque, o tamanho de um livro-código de Huffman é reduzido de umfator de aproximadamente 4, significando que são indicadas tuplassimétricas à mesma palavra-código. As informações de simetria,isto é, a ordem da tupla original e o sinal da tupla original, sãoindicadas por informações de ordem e informações de sinais, sendotransmitidas com a palavra-código, de maneira a permitir adecodificação e a reconstrução da tupla original, incluindo osinal e as informações de ordem.
Revendo a representação das tuplas acima dentrode um sistema de coordenadas bidimensional, ambas as simetrias emconjunto podem ser entendidas como uma distribuição bidimensionalde probabilidades com curvas de nível (curvas de iguaisprobabilidades) parecendo ovais com o eixo princípio girado 45graus com relação ao sistema cartesiano de coordenadas.
Fazendo uso das duas simetrias, somenteaproximadamente um quarto (1 quadrante) das possíveis entradas nosistema de coordenadas deve ser coberto pelos códigos de Huffman.
Um código postfix de dois bits determina um mapeamento exclusivoentre cada par de valores em um dos quatro quadrantes e seus parescorrespondentes de valores nos três quadrantes restantes. Notarque para pares de valores situados em cada linha limítrofe dequadrante, o código postfix consiste somente de um bit ou pode atéser omitido no caso do par de valores situados em ambas as linhaslimítrofes, isto é, no centro da distribuição.
O conceito da invenção também reduzirá o tamanhodo livro-código de Huffman para dados que não demonstrarem assimetrias acima descritas. Se esses dados forem codificados, porum lado o tamanho do livro-código de Huffman será pequeno, mas poroutro lado a representação codificada poderá não ser comprimida deforma ideal, já que os valores que ocorrem com diferentesprobabilidades são representados pela mesma palavra-código,levando a um desperdício de taxa de bits, já que o livro-código deHuffman não pode ser ajustado para adaptar os dados de maneiraideal.
Portanto, é preferível que os dados sejamcodificados diferencialmente antes de aplicar os tratamentos desimetria, já que a codificação diferencial produz automaticamentesimetrias vantajosas. Assim, o conceito da invenção pode ser usadopara garantir uma representação compacta e um pequeno livro-códigode Huffman para todos os conjuntos subjacentes de valores deinformação, já que a desvantagem de dobrar o número de possíveisvalores de informação pela codificação diferencial dos valores deinformação pode ser balanceada usando as simetrias.
Breve descrição dos desenhos
As configurações preferidas da presente invençãoserão agora descritas com referência aos desenhos anexos, onde:
A Fig. 1 mostra um diagrama de blocos de umcodificador da invenção;
A Fig. 2 mostra uma configuração preferida de umcodificador da invenção;
A Fig. 3 mostra uma outra configuração preferidade um codificador da invenção;
A Fig. 4a mostra uma primeira operação desimetria nos dados a serem codificados;
A Fig. 4b mostra uma segunda operação de simetrianos dados a serem codificados;
A Fig. 5 mostra uma derivação de umarepresentação simétrica dos dados;
A Fig. 6 mostra um diagrama de blocos de umdecodificador da invenção;A Fig. 7 mostra uma configuração preferida de umdecodificador da invenção;
A Fig. 8 mostra uma outra configuração preferidade um decodificador da invenção; e
A Fig. 9 mostra um codificador multicanais datécnica anterior.
Descrição detalhada das configurações preferidas
A Fig. 1 mostra um codificador da invenção 100, ocodificador 100 compreendendo o agrupador 102 e um gerador deinformações de código 104, que inclui uma interface de saída.
Os valores de informação 106 são agrupados emtuplas de valores de informação 108a a 108c pelo agrupador. Noexemplo mostrado na Fig. 1, o conceito da invenção é descrito pelaconstrução de tuplas que consistem de dois valores de informaçãocada, isto é, usando um código de Huffman bidimensional.
As tuplas 108a a 108c são transferidas ao geradorde códigos de informações 104, onde o gerador de códigos deinformações implementa uma regra de codificação que indica a mesmapalavra-código à tuplas tendo valores de informação idênticos emdiferentes ordens. Portanto, as tuplas 108a e 108c são codificadasnas mesmas palavras-código 110a e 110b, considerando que a tupla108b é codificada em uma palavra-código diferente 112. De acordocom o conceito da invenção, diferentes informações de ordem 114a e114b são geradas para preservar as informações da ordem em que osvalores de informação são agrupados dentro das tuplas 108a e 108c.
Uma combinação das informações de ordem e da palavra-código pode,portanto, ser usada para reconstruir as tuplas originais 108a e108c, e assim as informações de ordem são enviadas em associaçãocom a palavra-código pela interface de saída. Em geral, pode-seconcordar em diferentes esquemas de ordenamento resultando emdiferentes bits de informações de ordem. No exemplo mostrado naFig. 1, as tuplas não são reordenadas quando os valores dentro dastuplas ocorrem em ordem ascendente, como é o caso das tuplas 108ae 108b. Se ainda for concordado em indicar as informações de ordemde 0 a tuplas que não tiverem sido reordenadas, resulta nosvalores de informação de ordem como foram indicados às palavras-código na Fig. 1.
A Fig. 2 mostra uma configuração preferida dapresente invenção, em que o gerador de códigos de informações 104compreende um codificador de ordem 120 e um codificador porentropia 122 e onde o codificador 100 ainda compreende umainterface de saída 124.
0 codificador de ordem 120 gera as informações deordem 114a a 114c das tuplas (indicando a ordem da tupla) etransfere as informações de ordem à interface de saída 124. Aomesmo tempo, o codificador de ordem 12 0 reordena os valores deinformação dentro das tuplas 108a a 108c para obter as tuplas 126aa 126c alterando a ordem da tupla para uma ordem de tupla pré-definida, a ordem da tupla pré-definida definindo uma ordem decodificação dos valores de informação dos grupos de tuplas tendoidênticos valores de informação.
0 reordenamento pode, por exemplo, ser feitotambém para tuplas tendo mais que dois valores de informação, pormúltiplas etapas subseqüentes de alteração da posição de doisvalores de informação dentro da tupla. Após cada etapa, éverificado se existe uma entrada no livro-código do codificador deordem para uma dada ordem da tupla. Se este for o caso, oreordenamento pode ser interrompido e a palavra-código pode sergerada. Se não, o procedimento acima é repetido até que a palavra-código seja encontrada. As informações de ordem podem então, porexemplo, ser obtidas a partir do número de trocas necessárias paraa obtenção da palavra-código. De maneira similar, a ordem da tuplacorreta poderia ser rearranjada usando as informações de ordem nolado do decodificador.
0 codificador por entropia codifica as tuplas126a a 126c para obter as palavras-código 110a, IlOb e 112 etransfere essas palavras-código para a interface de saída 124.
A interface de saída finalmente envia aspalavras-código 110a, IlOb e 112 e, em associação com estas, asinformações de ordem 114a a 114c.
A Fig. 3 mostra uma outra configuração preferidada presente invenção, caracterizada pelo fato de que o gerador decódigos de informações ainda compreende um codificador de sinais13 0 para a obtenção das informações de sinais indicando umacombinação de sinais dos valores de informação dentro da tupla.
O codificador da invenção mostrado na Fig. 3também faz uso da segunda simetria, indicando as mesmas palavras-código às tuplas tendo valores de informação com o mesmo valorabsoluto e na mesma ordem, com referência a seus valoresabsolutos. Portanto, o codificador de sinais 130 obtém asinformações de sinais 132a a 132c para cada uma das tuplas 134a a134c, indicando o sinal dos valores dentro das tuplas. Ocodificador de sinais 13 0 simultaneamente altera os sinais dosvalores de informação dentro das tuplas para obter uma combinaçãopré-definida de sinais, definindo uma combinação de sinais decodificação para cada ordem de valores absolutos dentro da tupla,isto é, para tuplas que diferem somente nos sinais dos valores deinformação.
As informações de sinais 132a a 132c sãoadicionalmente transferidas para a interface de saída 124 quetambém recebe informações de ordem do codificador de ordem 120 edas palavras-código do codificador por entropia 122. A interfacede saída 124 envia então as palavras-código, e em associação comestas, as informações de ordem e as informações de sinais.
A Fig. 4a mostra como as informações de sinaispodem ser obtidas pelo codificador de sinais 13 0 e como a simetriareferente aos sinais pode ser usada para reduzir o tamanho de umlivro-código de Huffman necessário.
Estão mostrados os possíveis valores de uma tupla(a, b) , representada graficamente por uma matriz, caracterizadapelo fato de que os valores de a estão mostrados no eixo X e osvalores de b estão mostrados no eixo Y. Os valores de a e b sãosimétricos à volta de zero (por exemplo, por uma préviacodificação diferencial) e variam cada um, entre -4 e 4.
A matriz está mostrando todas as 81 possíveiscombinações dos valores dos parâmetros a e b. Também está indicadoum primeiro eixo 150, indicando as entradas da matriz, em que asoma de a e b (a + b) iguala a zero. A figura ainda mostra umsegundo eixo 152, em que a diferença de a e b (a - b) iguala azero. Como pode ser visto, os dois eixos 150 e 152 dividem amatriz em quatro quadrantes indicados por números de 1 a 4.
A primeira simetria, supondo que sejam igualmenteprováveis uma combinação (a, b) e uma combinação (-a, -b), é igualà simetria pontual à origem, que está explicitamente mostrada paraduas entradas arbitrárias 154a (-2,-1) e 154b (2,1) da matriz.
0 codificador da invenção pode reduzir o tamanhodo livro-código de Huffman necessário em um fator deaproximadamente 2, realizando uma operação de simetria, espelhandoas entradas do terceiro quadrante para o primeiro quadrante e asentradas do quarto quadrante para o segundo quadrante. Assim,poderiam ser salvas as entradas do livro-código do terceiro e doquarto quadrantes, quando o codificador de sinais 13 0 tambémindicar pelas informações de sinais a partir de qual quadrante atupla veio.
A Fig. 4b mostra como a segunda simetria pode serusada pelo codificador de ordem 120 para reduzir o tamanho dolivro-código de Huffman por um outro fator de aproximadamente 2. Asegunda simetria, significando que as tuplas (a, b) e (b, a) sãoigualmente prováveis, é igual a um espelhamento das entradasremanescentes da matriz no eixo 152. Este está, por exemplo,mostrado para as duas entradas de matriz 156a e 156b, mostrando oespelhamento da tupla (0, 2) para a tupla (2,0) . Portanto,indicando as mesmas palavras-código às entradas correspondentes dosegundo e do primeiro quadrantes, é possível salvar um outro fatorde 2 no tamanho do livro-código. 0 codificador de ordem 120 obtémas informações de ordem para preservar as informações, sendo atupla original do primeiro ou do segundo quadrante.
Como ilustrado pelas Figs. 4a e 4b, o codificadorda invenção que incorpora um codificador de sinais e umcodificador de ordem permite que somente um dos quatro quadrantestenha que ser coberto pelos códigos de Huffman. Um código postfixde dois bits determina um mapeamento exclusivo entre cada par devalores em um dos quatro quadrantes e seu correspondente par devalores nos três quadrantes remanescentes. Deve ser observado que,para pares de valores situados em qualquer limite de quadrante, ocódigo postfix consiste de somente um bit ou até pode ser omitidono caso do par de valores situados em ambos os limites, isto é, nocentro da matriz.
Seguindo as operações de simetria mostradas nasFigs. 4a e 4b, pode ser aconselhável, por razões práticas,reordenar (mapear) os pares de valores do quadrante remanescenteem uma matriz quadrática, já que operar um algoritmo em umarepresentação quadrática é muito mais conveniente.
Está mostrada na Fig. 5 uma estratégia demapeamento incorporada por uma configuração da presente invenção.
A matriz original com o primeiro quadrante a ser mapeado em umamatriz quadrática 160 está mostrado à esquerda. A matrizquadrática 160 também tem valores de parâmetros para o parâmetro ano eixo X e valores de parâmetros para o parâmetro b no eixo Y. 0reordenamento que se segue ao algoritmo de mapeamento estáindicado no desenho, onde cada um dos elementos da matriz estámarcado com um número exclusivo. Deve ser notado que as tuplascujos valores de informação que se somam a um número par (a+b épar, o que é verdade para todos os elementos de matriz levementesombreados do primeiro quadrante) são reordenados no lado esquerdoinferior da matriz quadrática 160, considerando que as tuplas comsomas ímpares de valores de informação (elementos não sombreados)são reordenadas no lado direito superior da matriz 160, estandonão sombreadas na Figura 5.
Depois do processo de mapeamento acima, as tuplasa serem codificadas por Huffman são apresentadas em umarepresentação quadrática e, portanto de fácil manuseio.
A Fig. 6 mostra um diagrama de blocos de umdecodificador da invenção para a decodificação das palavras-códigoque se baseiam nos valores de informação.
0 decodificador 200 compreende uma interface deentrada 202, um processador de códigos 204 e um desagrupador 206.
A interface de entrada 202 prove palavras-código 210a, 210b e 212e, associadas a elas informações de ordem 214a, 214b e 216, sendoambas transferidas para o processador de códigos 204.
O processador de códigos obtém tuplas de valoresde informação 218a, 218b e 218c usando uma regra de decodificação,onde a regra de decodif icação é tal que diferentes tuplas sãoobtidas a partir da mesma palavra-código, as diferentes tuplastendo os mesmos valores de informação em diferentes ordens detuplas, como indicado pelas diferentes informações de ordem.
Portanto, as diferentes tuplas 218a e 218c sãoobtidas a partir das mesmas palavras-código 210a e 210b, já quetêm associadas diferentes informações de ordem 214a e 214b. Astuplas de valores de informação 218a a 218c são então desagrupadaspelo desagrupador 206 para produzir os valores de informação 220.
A Fig. 7 mostra um decodificador preferido dainvenção, caracterizado pelo fato de que o processador de códigos204 inclui um decodificador por entropia 222 e um decodificador deordem 224.
O decodificador por entropia 222 indica, usandoum livro-código de Huffman, as palavras-código 210a, 210b e 212 àstuplas 226a a 226c, respectivamente. As tuplas 226a a 226c sãotransferidas para o decodificador de ordem 224, que também recebeas informações de ordem associadas. 0 decodificador de ordem 224obtém os valores de informação que modificam as tuplas 226a a22 6c, como indicado pelas informações de ordem. As tuplas finaisobtidas 228a a 228c são então transferidas para o desagrupador206, que desagrupa as tuplas 228a a 228c para obter os valores deinformação 220.
A Fig. 8 mostra uma outra configuração preferidade um decodificador da invenção 200, onde o processador de códigos204 ainda inclui um decodificador de sinais 230.
A interface de entrada provê três palavras-códigoidênticas 232a a 232c, bits de informações de sinais 234a a 234c ebits de informações de ordem 236a a 236c.
O decodificador por entropia 222 decodifica astrês palavras-código idênticas 232a a 232c em três tuplasidênticas 238a a 238c, que são então transferidas para odecodificador de sinais 23 0.
O decodificador de sinais 23 0 também recebe asinformações de sinais 234a a 234c e modifica as tuplas 238a a238c, como indicado pelas informações de sinais 234a a 234c, paraobter as tuplas 240a a 240c, que agora portam valores deinformação com sinais corretos.
As tuplas 240a a 240c são transferidas para odecodificador de ordem 224, que também recebe as informações deordem 236a a 236c, e que altera a ordem dos valores de informaçãodentro das tuplas 204a a 240c para receber as tuplas ordenadascorretamente 242a a 242c. As tuplas 242a a 242c são entãotransferidas para o desagrupador 2 06, que obtém os valores deinformação 220 desagrupando as tuplas 242a a 242c.
Apesar das configurações preferidas doscodificadores da invenção mostrados nas figuras 2 e 3 proporem queo codificador de ordem 120 e o codificador de sinais 130 restaurema ordem ou as informações de sinais e alterem simultaneamente astuplas, é alternativamente possível que o codificador de sinais eo codificador de ordem restaurem a ordem e as informações desinais sem alterarem as tuplas. Um livro-código de Huffman deveser projetado de maneira que as tuplas com diferentes sinais einformações de ordem sejam indicadas para as mesmas palavras -código.
Apesar das configurações preferidas mostradas nasfiguras detalharem o conceito da presente invenção usando livros-código de Huffman bidimensionais, a idéia da invenção de usarvalores agrupados e usar suas simetrias também pode ser combinadacom outros métodos de codificação sem perdas, especialmente comlivros-código de Huffman de maiores dimensões, isto é, construindotuplas tendo mais de dois valores de informação.
As Figs. 4a e 4b mostram uma forma para aobtenção das informações de simetria usadas para que possa serusado um livro-código de Huffman menor. Em uma primeira etapa oterceiro e o quarto quadrantes de uma dada matriz são mapeados noprimeiro e segundo quadrantes. É também alternativamente possívelmapear outras combinações de dois quadrantes vizinhos nos doisquadrantes remanescentes, enquanto as informações de simetriaforem preservadas, de maneira que o mapeamento possa serrevertido. Isto também é verdade para a segunda operação desimetria mostrada na Fig. 4b.
A Fig. 5 mostra uma forma de mapear um quadrantede uma matriz em uma matriz quadrática, permitindo que sejadescrito um livro-código de tamanho reduzido. Este mapeamento é umexemplo de múltiplos possíveis esquemas de mapeamento,caracterizado pelo fato de que os mapeamentos devem ser somente detal maneira a serem exclusivos e que possam ser revertidos.
Dependendo de determinadas exigências deimplementação dos métodos da invenção, estes podem serimplementados em hardware ou em software. A implementação pode serfeita usando um meio de armazenamento digital, em particular umdisco, DVD ou um CD dotado de sinais de controle eletrônico deleitura armazenados, que cooperam com um sistema de computadorprogramável, de maneira que os métodos da invenção sejamrealizados. Em geral, a presente invenção é, portanto, um produtode programa de computador com um código de programas armazenado emum portador com leitura por máquina, o código de programa sendooperado para realizar os métodos da invenção quando o produto deprograma de computador operar em um computador. Portanto, emoutras palavras, os métodos da invenção são um programa decomputador tendo um código de programas para a realização de pelomenos um dos métodos da invenção quando o programa de computadoropera em um computador.
Apesar do acima mencionado ter sido mostrado edescrito particularmente com referência a suas configuraçõesparticulares, será compreendido pelos peritos na técnica quevárias outras alterações em forma e detalhes podem ser feitas semabandonar seu espírito e escopo. Também deve ser entendido quepodem ser feitas várias alterações para a adaptação a diferentesconfigurações sem abandonar os conceitos mais abrangentes orarevelados e englobados pelas reivindicações que seguem.
Claims (25)
1. Codificador para a codificação de valores deinformação, caracterizado pelo fato de que compreende: umcodificador diferencial para a codificação diferencial de valoresde entrada para obter uma representação codificadadiferencialmente dos valores de entrada como valores deinformação; um agrupador para agrupar dois ou mais valores deinformação em uma tupla em uma ordem de tupla; um gerador decódigos de informações para a geração de informações de ordemindicando a ordem da tupla e uma palavra-código para a tuplausando uma regra de codificação, onde a regra de codificação é talque a mesma palavra-código é indicada a diferentes tuplas tendo osmesmos valores de informação em diferentes ordens e caracterizadopelo fato de que, além disso a regra de codificação é tal que amesma palavra-código é indicada a diferentes tuplas tendo valoresde informação com o mesmo valor absoluto na mesma ordem, deferindopelo sinal de cada valor de informação na tupla; e um codificadorde sinais para obter as informações de sinais indicando umacombinação de sinais dos valores de informação dentro da tupla; euma interface de saída para enviar a palavra-código e, emassociação com esta as informações de ordem e as informações desinais.
2. Codificador de acordo com a reivindicação 1,caracterizado pelo fato de que o gerador de códigos de informaçõesinclui um codificador de ordem para a obtenção das informações deordem e um codificador por entropia para a obtenção da palavra-código usando um livro-código que indique tuplas com valores deinformação idênticos em diferentes ordens à mesma palavra-código.
3. Codificador de acordo com a reivindicação 2,caracterizado pelo fato de que o codificador de ordem opere parareordenar os valores de informação dentro da tupla de maneira amudar a ordem da tupla para uma ordem da tupla pré-definida para atupla, a ordem da tupla pré-definida definindo uma ordem decodificação de valores de informação para grupos de tuplas tendovalores de informação idênticos e em que o codificador de ordemopere para detectar e codificar um desvio da ordem da tupla e daordem de codificação; e em que o codificador por entropia tenha umlivro-código reduzido indicando uma palavra-código às tuplas comvalores de informação ordenados na ordem de codificação.
4. Codificador de acordo com a reivindicação 3,caracterizado pelo fato de que o codificador de ordem opere parareordenar os valores de informação dentro da tupla, trocando umprimeiro valor de informação por um segundo valor de informação.
5. Codificador de acordo com a reivindicação 4,caracterizado pelo fato de que o codificador de sinais opere paratrocar os sinais dos valores de informação dentro da tupla, paratrocar uma combinação de sinais para uma combinação pré-definidade sinais, a combinação pré-definida de sinal definindo umacombinação de sinais de codificação para uma ordem de valores deinformação dentro da tupla, diferindo somente pelos sinaisindividuais dos valores de informação; e gerador de códigos deinformações tenha um codificador por entropia, o codificador porentropia tenha um livro-código reduzido, indicando a mesmapalavra-código a cada tupla com a mesma ordem de valores absolutosde valores de informação.
6. Codificador de acordo com a reivindicação 5,caracterizado pelo fato de que o codificador de sinais opere paraalterar o sinal de um primeiro e de um segundo valores deinformação dentro da tupla.
7. Codificador de acordo cora a reivindicação 1,caracterizado pelo fato de que a representação diferencialmentecodificada é uma representação dos valores de entradadiferencialmente codificados no tempo ou na freqüência.
8. Codificador de acordo com a reivindicação 1,caracterizado pelo fato de que os valores de informaçãocompreendem valores de informação que descrevem um quadro de umsinal de vídeo ou de um sinal de áudio.
9. Codificador de acordo com a reivindicação 1,caracterizado pelo fato de que os valores de informaçãocompreendem parâmetros BCC que descrevem uma correlação espacialentre um primeiro e um segundo canais de áudio e onde osparâmetros BCC são escolhidos a partir da seguinte lista deparâmetros BCC: coerência intercanais (ICC), diferença de nívelintercanais (ICLD), diferença de tempo intercanais (ICTD),diferença de fase intercanais (IPD).
10. Codificador de acordo com a reivindicação 1,caracterizado pelo fato de que a regra de codificação é tal queuma codificação de valores de informação resulta em uma seqüênciade palavras-código com diferentes comprimentos.
11. Decodificador para a decodif icação de umapalavra-código com base nos valores de informação, caracterizadopelo fato de que compreende: uma interface de entrada para provera palavra-código e, em associação com esta, as informações deordem indicando a ordem da tupla, sendo uma ordem de dois ou maisvalores de informação dentro da tupla de valores de informação eem uma outra associação, as informações de sinais, indicando umacombinação de sinais dos valores de informação dentro da tupla; umprocessador de códigos para obter uma tupla usando uma regra dedecodificação, dependendo da regra de codificação usada para criara palavra-código, onde a regra de decodificação é tal quediferentes tuplas com os mesmos valores de informação emdiferentes ordens são obtidas a partir da mesma palavra-códigoassociada por diferentes informações de ordem e diferentes tuplastendo valores de informação com o mesmo valor absoluto na mesmaordem, diferindo pelo sinal de cada valor de informação na tuplaque é obtido a partir da mesma palavra-código associada adiferentes informações de sinais, e um decodificador diferencialpara a decodificação diferencial dos valores de informação paraobter uma representação decodificada diferencialmente dos valoresde informação.
12. Decodificador de acordo com a reivindicação-11, caracterizado pelo fato de que o processador de códigos incluium decodif icador por entropia para a obtenção de uma tuplapreliminar usando um livro-código indicando cada palavra-código auma tupla preliminar; e um decodificador de ordem para a obtençãoda tupla por meio do reordenamento dos valores de informaçãodentro da tupla preliminar como indicado pelas informações deordem.
13. Decodificador de acordo com a reivindicação-12, caracterizado pelo fato de que o decodif icador de ordem operapara reordenar os valores de informação da tupla preliminartrocando um primeiro valor de informação por um segundo valor deinformação.
14. Decodificador de acordo com a reivindicação-13, caracterizado pelo fato de que o processador de códigos aindacompreendendo um decodificador de sinais para obter a tupla apartir da tupla preliminar, pela troca de sinais dos valores deinformação dentro da tupla preliminar como indicado pelasinformações de sinais.
15. Decodificador de acordo com a reivindicação-14, caracterizado pelo fato de que o decodificador de sinais operapara trocar os sinais de cada valor de informação dentro da tuplapreliminar.
16. Decodificador de acordo com a reivindicação-14, caracterizado pelo fato de que o decodificador de sinais operapara trocar o sinal de um primeiro e de um segundo valor deinformação dentro da tupla preliminar.
17. Decodificador de acordo com a reivindicação-11, caracterizado pelo fato de que uma representaçãodiferencialmente decodificada dos valores de informação édecodificada diferencialmente no tempo ou na freqüência.
18. Decodificador de acordo com a reivindicação-11, caracterizado pelo fato de que os valores de informaçãocompreendem valores de informação que descrevem um quadro de umsinal de vídeo ou de um sinal de áudio.
19. Decodificador de acordo com a reivindicação-11, caracterizado pelo fato de que os valores de informaçãocompreendem parâmetros BCC que descrevem uma correlação espacialentre um primeiro e um segundo canais de áudio e em que osparâmetros BCC são escolhidos a partir da seguinte lista deparâmetros BCC: coerência intercanais (ICC), diferença de nívelintercanais (ICLD), diferença de tempo intercanais (ICTD),diferença de fase intercanais (IPD).
20. Método para a codificação de valores deinformação, o método caracterizado pelo fato de que compreende:codificar diferencialmente os valores de entrada para obter umarepresentação codificada diferencialmente dos valores de entradacomo os valores de informação; agrupar dois ou mais valores deinformação de uma tupla em uma ordem de tupla; gerar informaçõesde ordem indicando a ordem da tupla; gerar informações de sinaisindicando um sinal dos valores de informação dentro da tupla;gerar uma palavra-código para a tupla, usando uma regra decodificação, em que a regra de codificação é tal que a mesmapalavra-código é indicada para diferentes tuplas tendo os mesmosvalores de informação em diferentes ordens e caracterizado pelofato de que a regra de codificação é ainda de tal maneira que amesma palavra-código é indicada para diferentes tuplas tendovalores de informação com o mesmo valor absoluto na mesma ordem,diferindo pelo sinal de cada valor de informação na tupla; eenviar a palavra-código e, em associação com ela, as informaçõesde ordem e as informações de sinais.
21. Método para a decodificação das palavras-código com base nos valores de informação, o método caracterizadopelo fato de que compreende: prover a palavra-código e, emassociação com esta, as informações de ordem indicando a ordem datupla, sendo uma ordem de dois ou mais valores de informaçãodentro da tupla de valores de informação, e também em associaçãocom as informações de sinais, indicando a combinação de sinaispara os valores de informação dentro da tupla; obter uma tuplausando uma regra de decodificação dependendo da regra decodificação usada para criar a palavra-código, onde a regra dedecodificação é tal que diferentes tuplas tendo os mesmos valoresde informação em diferentes ordens são obtidas a partir da mesmapalavra-código associada por diferentes informações de ordem ediferentes tuplas tendo valores de informação com o mesmo valorabsoluto na mesma ordem, diferindo pelo sinal de cada valor deinformação na tupla que é obtido a partir da mesma palavra-códigoassociada a diferentes informações de sinais; desagrupar as tuplasem dois ou mais valores de informação; e decodificação diferencialdos valores de informação para obter uma representaçãodecodificada diferencialmente dos valores de informação.
22. Programa de computador tendo um código deprogramas para realizar, quando executado em um computador, ummétodo para a codificação de valores de informação, o métodocaracterizado pelo fato de que compreende: codificardiferencialmente os valores de entrada para obter umarepresentação codificada diferencialmente dos valores de entradacomo valores de informação; agrupar dois ou mais valores deinformação em uma tupla na ordem da tupla; gerar informações deordem indicando a ordem da tupla; gerar informações de sinaisindicando o sinal dos valores de informação dentro da tupla; gerara palavra-código da tupla usando uma regra de codificação, em quea regra de codificação é tal que a mesma palavra-código é indicadaa diferentes tuplas tendo os mesmos valores de informação emdiferentes ordens e caracterizado pelo fato de que a regra decodificação é ainda de tal forma que a mesma palavra-código éindicada a diferentes tuplas tendo valores de informação do mesmovalor absoluto na mesma ordem, diferindo pelo sinal de cada valorde informação na tupla; e enviar a palavra-código e, em associaçãoa ela, as informações de ordem e as informações de sinais.
23. Programa de computador tendo um código deprogramas para realizar, quando executado em um computador, ummétodo para a decodificação das palavras-código com base nosvalores de informação, o método caracterizado pelo fato de quecompreende: prover a palavra-código e, em associação com esta, asinformações de ordem indicando a ordem da tupla, sendo uma ordemde dois ou mais valores de informação dentro da tupla de valoresde informação e também em associação com as informações de sinais,indicando uma combinação de sinais para os valores de informaçãodentro da tupla; obter uma tupla usando uma regra de decodificaçãodependendo da regra de codificação usada para criar a palavra-código, onde a regra de decodificação é tal que diferentes tuplastendo os mesmos valores de informação em diferentes ordens sãoobtidas a partir da mesma palavra-código associada por diferentesinformações de ordem e diferentes tuplas tendo valores deinformação com o mesmo valor absoluto na mesma ordem, diferindopelo sinal de cada valor de informação na tupla que é obtido apartir da mesma palavra-código associada a diferentes informaçõesde sinais; desagrupar as tuplas em dois ou mais valores deinformação; e decodificar diferencialmente os valores deinformação para obter uma representação decodificadadiferencialmente dos valores de informação.
24. Dados codificados baseados em valores deinformação, os dados codificados caracterizados pelo fato de quecompreendem uma palavra-código para uma tupla de dois ou maisvalores de informação dispostos na tupla em uma ordem de tupla; asinformações de ordem indicando a ordem da tupla e as informaçõesde sinais, indicando uma combinação de sinais para os valores deinformação dentro da tupla.
25. Dados codificados de acordo com areivindicação 24, caracterizado pelo fato de que é armazenada emmeio de leitura por computador.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67099305P | 2005-04-13 | 2005-04-13 | |
US60/670,993 | 2005-04-13 | ||
US11/251,485 US7788106B2 (en) | 2005-04-13 | 2005-10-14 | Entropy coding with compact codebooks |
US11/251,485 | 2005-10-14 | ||
PCT/EP2006/001294 WO2006108463A1 (en) | 2005-04-13 | 2006-02-13 | Entropy coding with compact codebooks |
Publications (2)
Publication Number | Publication Date |
---|---|
BRPI0612179A2 true BRPI0612179A2 (pt) | 2010-11-03 |
BRPI0612179B1 BRPI0612179B1 (pt) | 2018-05-02 |
Family
ID=36480915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI0612179-9A BRPI0612179B1 (pt) | 2005-04-13 | 2006-02-13 | Codificador e decodificador de uma palavra-código com base nos valores de informação e método para a codificação e decodificação de valores de informação |
Country Status (18)
Country | Link |
---|---|
US (1) | US7788106B2 (pt) |
EP (1) | EP1869775B1 (pt) |
JP (1) | JP4832507B2 (pt) |
KR (1) | KR100954182B1 (pt) |
CN (1) | CN101156320B (pt) |
AU (1) | AU2006233511B9 (pt) |
BR (1) | BRPI0612179B1 (pt) |
CA (1) | CA2605316C (pt) |
ES (1) | ES2433282T3 (pt) |
HK (1) | HK1110709A1 (pt) |
IL (1) | IL186312A0 (pt) |
MX (1) | MX2007012673A (pt) |
MY (1) | MY149613A (pt) |
NO (1) | NO339831B1 (pt) |
PL (1) | PL1869775T3 (pt) |
RU (1) | RU2379832C2 (pt) |
TW (1) | TWI319937B (pt) |
WO (1) | WO2006108463A1 (pt) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7333032B1 (en) * | 2006-01-20 | 2008-02-19 | Calypto Design Systems, Inc. | System, method and computer program product for word-level computations and storage |
US8515767B2 (en) * | 2007-11-04 | 2013-08-20 | Qualcomm Incorporated | Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs |
EP2297856B1 (en) * | 2008-07-11 | 2023-01-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Method for encoding a symbol, method for decoding a symbol, method for transmitting a symbol from a transmitter to a receiver, encoder, decoder and system for transmitting a symbol from a transmitter to a receiver |
FI3573056T3 (fi) | 2008-07-11 | 2022-11-30 | Audiokooderi ja audiodekooderi | |
KR20100136890A (ko) * | 2009-06-19 | 2010-12-29 | 삼성전자주식회사 | 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법 |
KR101676477B1 (ko) * | 2010-07-21 | 2016-11-15 | 삼성전자주식회사 | 컨텍스트 기반의 무손실 부호화 장치 및 방법, 그리고 복호화 장치 및 방법 |
US8817882B2 (en) * | 2010-07-30 | 2014-08-26 | Qualcomm Incorporated | Coding blocks of data using a generalized form of golomb codes |
US20120189052A1 (en) * | 2011-01-24 | 2012-07-26 | Qualcomm Incorporated | Signaling quantization parameter changes for coded units in high efficiency video coding (hevc) |
US8400335B2 (en) | 2011-07-21 | 2013-03-19 | International Business Machines Corporation | Using variable length code tables to compress an input data stream to a compressed output data stream |
US8669889B2 (en) | 2011-07-21 | 2014-03-11 | International Business Machines Corporation | Using variable length code tables to compress an input data stream to a compressed output data stream |
KR101842257B1 (ko) * | 2011-09-14 | 2018-05-15 | 삼성전자주식회사 | 신호 처리 방법, 그에 따른 엔코딩 장치, 및 그에 따른 디코딩 장치 |
FR2982446A1 (fr) * | 2011-11-07 | 2013-05-10 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
FR2982447A1 (fr) | 2011-11-07 | 2013-05-10 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
US8692696B2 (en) | 2012-01-03 | 2014-04-08 | International Business Machines Corporation | Generating a code alphabet of symbols to generate codewords for words used with a program |
WO2017019030A1 (en) | 2015-07-28 | 2017-02-02 | Halliburton Energy Services, Inc. | Sensor data compression for downhole telemetry applications |
WO2018020299A1 (en) * | 2016-07-29 | 2018-02-01 | Chan Kam Fu | Lossless compression and decompression methods |
GB2578625A (en) | 2018-11-01 | 2020-05-20 | Nokia Technologies Oy | Apparatus, methods and computer programs for encoding spatial metadata |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1711331A1 (ru) | 1987-05-28 | 1992-02-07 | Всесоюзный научно-исследовательский институт радиовещательного приема и акустики им.А.С.Попова | Устройство кодировани и декодировани сигналов звукового вещани |
US5532694A (en) | 1989-01-13 | 1996-07-02 | Stac Electronics, Inc. | Data compression apparatus and method using matching string searching and Huffman encoding |
US5325091A (en) | 1992-08-13 | 1994-06-28 | Xerox Corporation | Text-compression technique using frequency-ordered array of word-number mappers |
US5550540A (en) | 1992-11-12 | 1996-08-27 | Internatioal Business Machines Corporation | Distributed coding and prediction by use of contexts |
US5717394A (en) | 1993-02-10 | 1998-02-10 | Ricoh Company Ltd. | Method and apparatus for encoding and decoding data |
JPH07203441A (ja) * | 1993-12-28 | 1995-08-04 | Matsushita Graphic Commun Syst Inc | 符号化装置及び復号化装置 |
US5550541A (en) * | 1994-04-01 | 1996-08-27 | Dolby Laboratories Licensing Corporation | Compact source coding tables for encoder/decoder system |
CA2156889C (en) | 1994-09-30 | 1999-11-02 | Edward L. Schwartz | Method and apparatus for encoding and decoding data |
KR100209877B1 (ko) | 1994-11-26 | 1999-07-15 | 윤종용 | 복수개의 허프만부호테이블을 이용한 가변장부호화장치 및 복호화장치 |
US5721720A (en) | 1994-12-28 | 1998-02-24 | Kabushiki Kaisha Toshiba | Optical recording medium recording pixel data as a compressed unit data block |
US5819215A (en) | 1995-10-13 | 1998-10-06 | Dobson; Kurt | Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data |
CN1158050A (zh) | 1995-12-27 | 1997-08-27 | 汤姆森消费电子有限公司 | 图像数据压缩系统和方法 |
US5870436A (en) | 1997-01-02 | 1999-02-09 | Raytheon Company | Uniform discrete fourier transform filter parameter encoder |
US6237496B1 (en) | 1997-02-26 | 2001-05-29 | Northrop Grumman Corporation | GPS guided munition |
RU2214047C2 (ru) | 1997-11-19 | 2003-10-10 | Самсунг Электроникс Ко., Лтд. | Способ и устройство для масштабируемого кодирования/декодирования аудиосигналов |
US6166664A (en) | 1998-08-26 | 2000-12-26 | Intel Corporation | Efficient data structure for entropy encoding used in a DWT-based high performance image compression |
US6546049B1 (en) | 1998-10-05 | 2003-04-08 | Sarnoff Corporation | Parameterized quantization matrix adaptation for video encoding |
US6624761B2 (en) | 1998-12-11 | 2003-09-23 | Realtime Data, Llc | Content independent data compression method and system |
JP3323175B2 (ja) | 1999-04-20 | 2002-09-09 | 松下電器産業株式会社 | 符号化装置 |
US6978236B1 (en) | 1999-10-01 | 2005-12-20 | Coding Technologies Ab | Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching |
RU2159507C1 (ru) | 1999-10-29 | 2000-11-20 | Аликов Сергей Владимирович | Узел кодирования и/или декодирования информации, система передачи информации с уплотнением каналов, система передачи информации в телекоммуникационной сети |
US6813438B1 (en) | 2000-09-06 | 2004-11-02 | International Business Machines Corporation | Method to customize the playback of compact and digital versatile disks |
US20030081685A1 (en) | 2001-10-31 | 2003-05-01 | Montgomery Dennis L. | Method and apparatus for determining patterns within adjacent blocks of data |
JP2005510925A (ja) | 2001-11-30 | 2005-04-21 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 信号コード化 |
WO2003053066A1 (en) * | 2001-12-17 | 2003-06-26 | Microsoft Corporation | Skip macroblock coding |
US7502743B2 (en) | 2002-09-04 | 2009-03-10 | Microsoft Corporation | Multi-channel audio encoding and decoding with multi-channel transform selection |
US7433824B2 (en) | 2002-09-04 | 2008-10-07 | Microsoft Corporation | Entropy coding by adapting coding between level and run-length/level modes |
JP4369140B2 (ja) * | 2003-02-17 | 2009-11-18 | パナソニック株式会社 | オーディオ高能率符号化装置、オーディオ高能率符号化方法、オーディオ高能率符号化プログラム及びその記録媒体 |
US7426462B2 (en) * | 2003-09-29 | 2008-09-16 | Sony Corporation | Fast codebook selection method in audio encoding |
-
2005
- 2005-10-14 US US11/251,485 patent/US7788106B2/en active Active
-
2006
- 2006-02-13 CN CN2006800115850A patent/CN101156320B/zh active Active
- 2006-02-13 BR BRPI0612179-9A patent/BRPI0612179B1/pt active IP Right Grant
- 2006-02-13 RU RU2007141938/09A patent/RU2379832C2/ru active
- 2006-02-13 PL PL06706905T patent/PL1869775T3/pl unknown
- 2006-02-13 WO PCT/EP2006/001294 patent/WO2006108463A1/en active Application Filing
- 2006-02-13 AU AU2006233511A patent/AU2006233511B9/en active Active
- 2006-02-13 EP EP06706905.4A patent/EP1869775B1/en active Active
- 2006-02-13 JP JP2008505743A patent/JP4832507B2/ja active Active
- 2006-02-13 MX MX2007012673A patent/MX2007012673A/es active IP Right Grant
- 2006-02-13 KR KR1020077022862A patent/KR100954182B1/ko active IP Right Grant
- 2006-02-13 CA CA2605316A patent/CA2605316C/en active Active
- 2006-02-13 ES ES06706905T patent/ES2433282T3/es active Active
- 2006-02-15 MY MYPI20060644A patent/MY149613A/en unknown
- 2006-04-10 TW TW095112641A patent/TWI319937B/zh active
-
2007
- 2007-09-25 IL IL186312A patent/IL186312A0/en active IP Right Grant
- 2007-11-09 NO NO20075775A patent/NO339831B1/no unknown
-
2008
- 2008-05-05 HK HK08104986.0A patent/HK1110709A1/xx unknown
Also Published As
Publication number | Publication date |
---|---|
NO20075775L (no) | 2007-11-09 |
AU2006233511B2 (en) | 2009-12-03 |
KR20070110132A (ko) | 2007-11-15 |
US20060235865A1 (en) | 2006-10-19 |
KR100954182B1 (ko) | 2010-04-21 |
CN101156320A (zh) | 2008-04-02 |
US7788106B2 (en) | 2010-08-31 |
EP1869775B1 (en) | 2013-09-04 |
TW200644448A (en) | 2006-12-16 |
EP1869775A1 (en) | 2007-12-26 |
RU2007141938A (ru) | 2009-05-20 |
MX2007012673A (es) | 2007-12-13 |
CA2605316A1 (en) | 2006-10-19 |
MY149613A (en) | 2013-09-13 |
WO2006108463A1 (en) | 2006-10-19 |
JP2008536410A (ja) | 2008-09-04 |
TWI319937B (en) | 2010-01-21 |
AU2006233511B9 (en) | 2010-09-30 |
BRPI0612179B1 (pt) | 2018-05-02 |
AU2006233511A1 (en) | 2006-10-19 |
ES2433282T3 (es) | 2013-12-10 |
PL1869775T3 (pl) | 2014-01-31 |
JP4832507B2 (ja) | 2011-12-07 |
CA2605316C (en) | 2013-01-29 |
IL186312A0 (en) | 2008-01-20 |
HK1110709A1 (en) | 2008-07-18 |
CN101156320B (zh) | 2012-01-25 |
NO339831B1 (no) | 2017-02-06 |
RU2379832C2 (ru) | 2010-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BRPI0612179A2 (pt) | codificação por entropia com livros-código compactos | |
BR122019014976B1 (pt) | agrupamento adaptativo de parâmetros para maior eficiência de codificação | |
ES2454670T3 (es) | Generación de una señal multicanal codificada y decodificación de una señal multicanal codificada | |
TWI325234B (en) | Encoder, decoder, method for lossless encoding of information values describing an audio signal, method for decoding an encoded representation of information values describing an audio signal, computer program and storage medium | |
BRPI0612218B1 (pt) | codificação de áudio residual adaptativa |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B06A | Patent application procedure suspended [chapter 6.1 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |