MODELO DE ALGORITMO PARA COMPRESSÃO DE ÁUDIO BASEADO NA TÉCNICA DPCM E ALGORITMO DE HUFFMAN...

Post on 22-Apr-2015

117 views 6 download

Transcript of MODELO DE ALGORITMO PARA COMPRESSÃO DE ÁUDIO BASEADO NA TÉCNICA DPCM E ALGORITMO DE HUFFMAN...

MODELO DE ALGORITMO PARA COMPRESSÃO DE ÁUDIO

BASEADO NA TÉCNICA DPCM E ALGORITMO DE HUFFMAN

MONOGRAFIA

Acadêmico:

Fernando Barboza da Costa

Orientador:

Prof. Marcelo Daniel Berejuck, Esp.

PALHOÇA

03/12/2007

2

Estrutura

Introdução; Objetivos; Teoria; Projeto; Desenvolvimento; Validação; Conclusão; Propostas Futuras; Referências.

3

Introdução

Digitalização de sinais;

Compressão de dados;

Técnica semelhante à adotada em imagens;

Sistemas embarcados de baixo custo.

4

Objetivos

Estudo de compressores de dados;

Sem perdas ou baixas perdas;

Foco para descompressão “leve”;

Uso em sistemas embarcados baixo custo;

Redução de custo com menor demanda de memória.

5

Digitalização de áudio - PCM

Ts

1.4

3.3

2.2

4.1

1.1

2.8 2.4

4.6

3.0

Sinal de voz

Amostragem

t

V

V

t

001

011

010

100

001

011

010

101

011

5

1

3

2

4

1

3

2

3

t

V

Quantização PCM

* Inserção de erros.

6

DPCM

1

3

2

4

1

3

2

5

3

001

011

010

100

001

011

010

101

011 t

V

Palavra PCM

Amostras PCM DPCM

1 1 1

2 3 2

3 2 -1

4 4 2

5 1 -3

6 3 2

7 2 -1

8 5 3

9 3 -2

7

Huffman

Inicialmente desenvolvido para texto;

Probabilidade de distribuição;

Menos bits para símbolos mais freqüentes.

8

Huffman

Amostras DPCM

1 1

2 2

3 -1

4 2

5 -3

6 2

7 -1

8 3

9 -2

Valores Incidência

-3 1

-2 1

-1 2

1 1

2 3

3 1

Tabela de incidência.

9

Huffman

Valores Incidência

2 3/9

-1 2/9

-3 1/9

-2 1/9

-1 1/9

3 1/9

Valores Incidência

-3 1

-2 1

-1 2

1 1

2 3

3 1

Ordenação por incidência.

10

Huffman

Árvore e a codificação (borbulhar).

2

-1

-3

-2

-1

3

1/9

1/9

1/9

1/9

2/9

3/9

2/9

2/9

3/9

1/9

1/9

2/9

2/9

2/9

3/9 4/9

3/9

2/9

4/9

5/9

0

1

0

1

0

1

0

1

0

1

Valores Incidência Código

2 3/9 00

-1 2/9 11

-3 1/9 010

-2 1/9 110

-1 1/9 001

3 1/9 101

0

0

11

Huffman

Resultados.

Xi P(Xi) Código Ni NiP(Xi)

2 3/9 00 2 6/9

-1 2/9 11 2 4/9

-3 1/9 010 3 3/9

-2 1/9 110 3 3/9

-1 1/9 001 3 3/9

3 1/9 101 3 3/9

_____

Total 2,444

12

Projeto

Especificação dos algoritmos;

Sugestão das ferramentas para o desenvolvimento;

Detalhes do condicionamento do áudio.

13

Codificador

Diagrama Macro do Codificador

CodicadorArquivo áudio RAW

Arquivo binário

14

Decodificador

Diagrama Macro do Decodificador

Decodicador

Áudio PCM

Arquivo binário

15

Desenvolvimento

Ferramentas utilizadas;

Detalhes da implementação;

Hardware do decodificador;

Simulação do hardware.

16

Codificador

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

GoldWave®

17

Codificador

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

DevC++

18

Codificador

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

WinHex

19

Quantizador DPCM

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

Tabela de incidência dos valores DPCM encontrados.

20

Ponderação DPCM

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

Ordenação decrescente dos valores DPCM.

21

Dicionário Huffman

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

Vetor em ordem decrescente de incidência.

22

Código de Huffman Alterado

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

Gera bits “1” de acordo com o número do índice no vetor do dicionário;

Finaliza com um bit “0”.

Índice Dicionário Código

0 X 0

1 X 10

2 X 110

3 X 1110

4 X 11110

n X (n*1)+0

23

Arquivo binário

Codificador

Quantizador DPCM

TruncamentoPonderação

DPCMCriação do Dicionário

Codificação em bits

Arquivo áudio RAW

Arquivo binário

Agrupa os bits de acordo a plataforma utilizada;

8051 = 8 bits.

24

Decodificador

Hardware - Proteus®

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

25

Decodificador

Software - Keil®

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

26

Decodificador de Huffman

Conta bits “1” entre bits “0”.

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

27

Usa o contador como índice no dicionário.

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

Dicionário Huffman

28

Soma o valor DPCM lido à amostra anterior.

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

Quantizador DPCM

29

Decodificador

code_atual <<= 1;

if ( CY == 0 ){

amostra = amostra + code_book[cont_bits];cont_bits = 0;

}else{

cont_bits++;}

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

30

Decodificador

Decodificador

Decodificador de bits

Leitura do Dicionário

Quantizador DPCM

Áudio PCM

Arquivo binário

31

Validação

Taxa de codificação ~38%;

Redução em espaço de memória;

Ambiente simulado;

Decodificador embarcado no 8051 (baixo custo);

Baixas perdas.

32

Conclusão

Estudo de técnicas de compressão e codec’s;

Taxas satisfatórias;

Aplicável a produtos comerciais de baixo custo:• Unidades Resposta Audível (URA);• Esperas telefônicas;• Secretária eletrônica (DTAM).

Performace codificador x amplitude do sinal.

33

Propostas futuras

Aplicação com PCM linear 16 bits;

Reduzir ou eliminar a dependência do codificador com a amplitude;

Estudar aplicação com sinais de voz dinâmicos:• VOIP;• Telefones sem fio digital.

34

Referências

COUCH, Leon W.. DIFFERENCIAL PULSE CODE MODULATION In: COUCH, Leon W.. COUCH, Leon W.. DIFFERENCIAL PULSE CODE MODULATION In: COUCH, Leon W.. Digital and Analog Communication systems: Sixth edition: Prentice Hall PTR, 2000. p. Digital and Analog Communication systems: Sixth edition: Prentice Hall PTR, 2000. p. 188-191.188-191.

COUCH, Leon W.. PULSE CODE MODULATION In: COUCH, Leon W.. Digital and COUCH, Leon W.. PULSE CODE MODULATION In: COUCH, Leon W.. Digital and Analog Communication systems: Sixth edition: Prentice Hall PTR, 2000. p. 137-151.Analog Communication systems: Sixth edition: Prentice Hall PTR, 2000. p. 137-151.

RIBEIRO, Paulo Sérgio. Visão geral das telecomunicações: Parte II. In: RIBEIRO, Paulo Sérgio. Visão geral das telecomunicações: Parte II. In: Comunicações Digitais III, 2007, Palhoça. UnisulComunicações Digitais III, 2007, Palhoça. Unisul

   RUSCHEL, Orlando T. Princípios da Comunicação Digital. Porto Alegre: EDIPUCRS, RUSCHEL, Orlando T. Princípios da Comunicação Digital. Porto Alegre: EDIPUCRS,

19961996   SKLAR, Bernard. HUFFMAN CODES In: SKLAR, Bernard. Digital Communications, SKLAR, Bernard. HUFFMAN CODES In: SKLAR, Bernard. Digital Communications,

Fundamentals and Applications: Second edition: Prentice Hall PTR, 2002. p. 862-866.Fundamentals and Applications: Second edition: Prentice Hall PTR, 2002. p. 862-866.

WILLRICH, Roberto. WILLRICH, Roberto. Conversão A/D e D/A. In: Voz sobre IP Parte I, 2005, Conversão A/D e D/A. In: Voz sobre IP Parte I, 2005, Florianópolis. UFSCFlorianópolis. UFSC

35

Agradecimentos

A Deus;

A família, em especial à esposa e ao filho;

Ao orientador Prof. Marcelo Daniel Berejuck, Esp.;

Aos professores da Unisul em especial ao Prof. Mauro Pacheco Ferreira, M.sc.;

Aos colegas de trabalho da Intelbras, em especial Robson Veronezi, Nelson Campaner, Patrick Argoud e Fernanda Argoud;

Aos esquecidos;