T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de...

63
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE ENGENHARIA CURSO DE ENGENHARIA ELÉTRICA DISCIPLINA DE TRABALHO DE INTEGRAÇÃO TÉCNICAS DE REDUÇÃO DE RUÍDO PARA ÁUDIO CHRISTIAN INÁCIO VOGT ORIENTADOR: DENIS FERNANDES Porto Alegre, Novembro de 2006.

Transcript of T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de...

Page 1: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO S UL

FACULDADE DE ENGENHARIA

CURSO DE ENGENHARIA ELÉTRICA

DISCIPLINA DE TRABALHO DE INTEGRAÇÃO

TÉCNICAS DE REDUÇÃO DE RUÍDO PARA ÁUDIO

CHRISTIAN INÁCIO VOGT

ORIENTADOR: DENIS FERNANDES

Porto Alegre, Novembro de 2006.

Page 2: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

2

Dedicatória

Este trabalho é dedicado aos meus pais, Aristides e Leni, e aos meus irmãos, Felipe e Marqueli, pelo esforço e pelo amor sem medidas que sempre tiveram na minha formação pessoal e profissional.

Page 3: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

3

Agradecimentos

À Deus por ter saúde, paciência, serenidade e discernimento perante os desafio e as tomadas de decisões. Ao Professor, Dr. Denis Fernandes, que me acolheu muito bem no difícil cargo de orientador. Obrigado pelos seus conselhos enquanto trabalhamos juntos. Foram importantes para a minha visão de mundo e para a minha formação como engenheiro. Aos colegas de curso e professores da PUCRS, pelo companheirismo e pela amizade durante todo esse caminho.

Page 4: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

4

Resumo

O ruído de fundo é uma forma comum de degradação em todos sistemas de

armazenamento e gravações analógicas. No caso de sinais de áudio, geralmente percebido pelo

ouvinte como um “hiss”, esse tipo de ruído é composto por ruídos em circuitos elétricos, por

irregularidades na mídia de armazenamento e, além disso, pelo ruído presente no ambiente de

gravação. O ruído aleatório, geralmente, tem suas componentes espalhadas por todo o espectro

de freqüências de áudio, sendo que dessa forma torna-se inadequado um simples procedimento

de equalização.

No campo de processamento de voz, um grande número de técnicas tem sido

desenvolvido para a redução de ruído. Certamente, hoje os métodos mais populares para redução

de ruído em sinais de áudio são baseados na transformada de Fourier de tempo curto. O Short-

Time Spectral Attenuation (STSA) é um método de redução de ruído que, basicamente, consiste

em aplicar uma atenuação, que varia no tempo para cada quadro produzido pela transformada de

tempo curto. As técnicas STSA são não paramétricas e, geralmente, necessitam de pouco

conhecimento do sinal a ser processado. Além desses fatores, as técnicas citadas estão entre os

métodos mais populares para a melhoria de voz e seu uso tem sido largamente predominante

para a restauração de gravações musicais.

O objetivo deste trabalho é fazer, a partir de técnicas baseadas na STSA como a

Subtração Espectral e a MMSE, um estudo sobre algumas técnicas STSA, desenvolvendo

conhecimentos teóricos necessários para a implementação em um software capaz de restaurar

gravações fonográficas que apresentem ruídos de fundo "hiss".

Page 5: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

5

Sumário

1. Introdução................................................................................................................................8 2. Restauração de Áudio............................................................................................................10

2.1. Uma breve História das Tecnologias de Gravação.......................................................10 2.2. Restauração Tradicional de Áudio ................................................................................10 2.3. Modelagem AR e ARMA .............................................................................................12

2.3.1. Definições Básicas ................................................................................................12 2.4. Tipos de Ruídos.............................................................................................................13

2.4.1. De-thumping..........................................................................................................14 2.4.2. De-clicking ............................................................................................................15 2.4.3. De-Hissing.............................................................................................................18

3. Short-Time Spectral Attenuation ..........................................................................................20 3.1. Introdução......................................................................................................................20 3.2. Considerações Históricas ..............................................................................................22 3.3. Short-time Spectral Attenuation (STSA) ......................................................................23

3.3.1. Transformada de tempo curto ...............................................................................23 3.3.2. Atenuação Espectral ..............................................................................................24 3.3.3. Análise Determinística ..........................................................................................26 3.3.4. Audibilidade do ruído na saída..............................................................................27 3.3.5. Sinal Transitório....................................................................................................28 3.3.6. Estimação de Ruído...............................................................................................29 3.3.7. Ruído musical........................................................................................................29 3.3.8. Soluções para o ruído musical...............................................................................30

3.4. Regras de Supressão......................................................................................................31 3.4.1. EMSR....................................................................................................................31 3.4.2. Subtração Espectral ...............................................................................................35

4. Projeto Restauração do Acervo de Gravações do Laboratório de Línguas da PUCRS ........36 4.1.1. Objetivos Gerais e Específicos..............................................................................36 4.1.2. Justificativa............................................................................................................37 4.1.3. O Laboratório de Línguas da PUCRS...................................................................37 4.1.4. Descrição do Material ...........................................................................................38 4.1.5. Identificação dos Problemas Encontrados.............................................................39

5. Desenvolvimento do Trabalho ..............................................................................................41 5.1. Algoritmo de Redução de Ruído...................................................................................41

5.1.1. Diagrama de blocos...............................................................................................42 5.1.2. Descrição do algoritmo .........................................................................................43

6. Resultados .............................................................................................................................46 7. Conclusões ............................................................................................................................51 8. Referências Bibliográficas ....................................................................................................52 9. Anexos...................................................................................................................................54

9.1. Programa MMSE.m ......................................................................................................54 9.1.1. MMSE ...................................................................................................................54

Page 6: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

6

9.1.2. OverlapAdd ...........................................................................................................56 9.1.3. Segment.................................................................................................................57 9.1.4. VAD ......................................................................................................................57

9.2. Programa Subtração Espectral (SS.m) ..........................................................................59 9.2.1. SS ..........................................................................................................................59 9.2.2. OverlapAdd ...........................................................................................................60 9.2.3. Segment.................................................................................................................61 9.2.4. VAD ......................................................................................................................62

9.3. Programa gerador de ruído (noisegen.m)......................................................................63

Page 7: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

7

Lista de Figura

Figura 2.1 – Exemplos de pulsos longos: (a) pulsos simples e (b) pulsos sobrepostos. 14

Figura 2.2 – Estágio de processamento de um modelo padrão para de-thumping. 15

Figura 2.3 – Modelo base para o método de-clicking. 16

Figura 2.4 – Sistema de redução de hiss baseado na técnica STSA. 18

Figura 3.1 – Hipótese básica para as técnicas STSA. 20

Figura 3.2 – Estrutura geral do método STSA. 21

Figura 3.3 – Ganho versus nível de sinal relativo. 25

Figura 3.4 – Restauração de um sinal senoidal dentro de ruído branco com potência

de 0dB.

26

Figura 3.5 – Diagrama de blocos do algoritmo original Ephraim and Malah 31

Figura 3.6 – Ganho EMSR versus Rprio, para diferentes valores de Rpost. 33

Figura 3.7 – As relações sinal-ruído Rpost e Rprio ao longo de sucessivos quadros. 34

Figura 6.1 – Arquivo ‘testesom.wav’ 47

Figura 6.2 – Arquivo ‘testesom10dB.wav’ 47

Figura 6.3 – Restauração por Subtração Espectral (‘testesom10dB_SS.wav’) 48

Figura 6.4 – Restauração por MMSE (testesom10dB_MMSE.wav’) 49

Page 8: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

8

1. Introdução

A introdução ao Áudio Digital de alta qualidade com o Compact Disc (CD) e o

Digital Áudio tape (DAT) tem destacado uma consciência e uma expectativa geral sobre a

qualidade do som em todos os tipos de gravações. Isso, combinado com uma onda de interesse

em restaurar materiais históricos e antigos, vem conduzindo para um grande desenvolvimento

nas técnicas de restauração em função das gravações feitas em rolos analógicos no século XIX,

através de discos (78 rpm, LP, etc.), e em tecnologias de fita magnética, a qual é disponível

desde os anos 50. A redução de ruído, ocasionalmente, pode ser usada até em gravações digitais

contemporâneas, caso o ruído de fundo se torne muito presente.

A degradação de uma fonte de áudio é considerada como qualquer modificação

indesejada ao sinal de áudio, o qual ocorre como resultado do processo de gravação. Além disso,

o ruído pode ser introduzido por imperfeições no material, por transcrição para outra mídia ou,

até mesmo, pelo desgaste do uso da mídia.

Uma restauração ideal irá reconstruir a fonte de som original exatamente como

ela era antes. Claro que esse ideal, na prática, jamais será alcançado, pois os métodos somente

podem ser desenvolvidos de acordo com um critério de erro, baseado nas características

perceptuais do ouvido humano.

Técnicas de restauração analógica estão disponíveis, pelo menos, desde as fitas

magnéticas, em forma de edição manual para “clicks” e equalização de freqüências para o ruído

de fundo. Os redutores eletrônicos de “clicks” mais sofisticados eram baseados em filtros passa

alta, para detecção dos mesmos, e filtros passa baixa, para mascarar os seus efeitos. Nenhum

desses métodos era, suficientemente, sofisticado para apresentar um passo significante na

redução de ruído sem interferir com a qualidade do sinal base. Métodos digitais levaram em

conta um importante grau de flexibilidade em processamento e, portanto, um grande potencial

para a remoção de ruído, embora aplicações com métodos digitais inapropriados possam ser mais

desastrosos que o processamento analógico.

Page 9: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

9

Aleatório, o ruído de fundo é uma forma comum de degradação em toda medida,

em todo armazenamento e em todos sistemas de gravações analógicas. No caso de sinais de

áudio, geralmente percebido pelo ouvinte como um “hiss”, esse tipo de ruído é composto por

ruídos em circuitos elétricos, por irregularidades na mídia de armazenamento e pelo ruído

presente no ambiente de gravação. O efeito combinado dessas fontes será generalizado como um

único processo, o qual talvez possa ser considerado como parte da performance original. O ruído

aleatório, geralmente, tem seus componentes espalhados por todo o espectro de freqüências do

áudio. Dessa forma, torna-se inadequado o simples procedimento de equalização.

As gravações em fitas analógicas demonstram características de ruído

estacionárias e, para a maioria das finalidades, ruído branco. As primeiras gravações em 78 rpm

e em cilindros demonstram características de ruído altamente não estacionárias, pois o ruído

pode variar, consideravelmente, em cada revolução do sistema de reprodução. Isso resulta na

característica “swishing” ou “assobio”, efeito associado com as primeiras gravações. Nas

gravações que também são afetadas por perturbações locais como “clicks” e ressonâncias de

baixas-freqüências, como padrão, é aconselhado restaurar esses efeitos previamente a qualquer

tratamento de ruído de fundo.

No campo de processamento de voz, um grande número de técnicas tem sido

desenvolvido para a redução de ruído. Certamente, hoje os métodos mais populares para redução

de ruído em sinais de áudio são baseados na transformada de Fourier de tempo curto. O Short-

Time Spectral Attenuation (STSA) é um método de redução de ruído que, basicamente, consiste

em aplicar uma atenuação, que varia no tempo para cada quadro produzido pela transformada de

tempo curto. As técnicas STSA são não paramétricas e, geralmente, necessitam de pouco

conhecimento do sinal a ser processado. Além desses fatores, as técnicas citadas estão entre os

métodos mais populares para a melhoria de voz e seu uso tem sido largamente predominante

para a restauração de gravações musicais.

O objetivo deste trabalho é fazer, a partir de técnicas baseadas na STSA, como a

subtração espectral e a MMSE, um estudo sobre algumas técnicas STSA, desenvolvendo

conhecimentos teóricos necessários para a implementação em um software capaz de restaurar

gravações fonográficas que apresentem ruídos de fundo "hiss". Esse software possívelmente terá

aplicabilidade no o Projeto para a Restauração do Acervo de Gravações do Laboratório de

Línguas da PUCRS.

Page 10: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

10

2. Restauração de Áudio

2.1. Uma breve História das Tecnologias de

Gravação

A primeira gravação reproduzível da voz humana foi feita, em 1877, em uma

vitrola com cilindro de papel alumínio inventado por Thomas A. Edison. Desde então, foi

despendido muito esforço para encontrar melhores métodos de gravar e reproduzir sons. Na

década de 20, surgiu a primeira gravação elétrica e que, gradualmente, tomou conta de todas as

gravações acústicas. O desenvolvimento de computadores eletrônicos culminou na padronização

do CD (Compact Disc) como formato digital, em 1980. Hoje em dia, a tecnologia digital é

empregada em várias aplicações. Um exemplo disso é que ela pode ser usada para melhorar a

qualidade de modernas e antigas técnicas de gravações e reproduções.

2.2. Restauração Tradicional de Áudio

A restauração de áudio, basicamente, busca melhorar o som de gravações antigas.

O principal objetivo é reduzir os artefatos de ruído, os quais são usualmente introduzidos pelo

mecanismo de gravação e reprodução, preservando o som original da melhor maneira possível.

O primeiro passo em um típico procedimento de restauração de áudio consiste em

transferir o som de mídias velhas para o formato digital. Essa tarefa tem o objetivo de localizar a

mídia original ou a melhor cópia e, além disso, encontrar a melhor maneira ou o melhor

equipamento para reproduzir a determinada mídia, lidando com a carência usual de

padronizações associadas com equipamentos de gravação/reprodução obsoletos no mercado.

Page 11: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

11

A transferência de uma mídia antiga para uma mais moderna, como, por exemplo,

os discos 78 RPM para os LPs, foi uma prática comum mesmo antes da era digital. A idéia era

usufruir das características aprimoradas dos sistemas mais avançados de gravação. Entre outros

interesses, essas vantagens relacionam-se com uma maior capacidade de armazenamento, tempo

de vida superior, fácil manejo e cuidados, fácil replicação do material, e imensa acessibilidade

para o público em geral. Até mesmo na era analógica, foram feitas tentativas para melhorar a

qualidade sonora de gravações antigas nos processos de transferência de som.

Como enfatizado anteriormente, a restauração de áudio passou por, simplesmente,

digitalizar o áudio analógico. Graças ao crescimento progressivo do poder computacional de

processadores digitais, mais sofisticados e potentes, algoritmos mais complexos se tornaram

possíveis na prática. Hoje em dia, a restauração de áudio é consumada por algoritmos de DSP

dedicados a reduzir ou anular ruídos e perturbações introduzidos nas mídias pelos sistemas

antigos de gravação/reprodução.

O tipo mais comum de degradação encontrado, associado às gravações antigas,

pode ser, a grosso modo, classificado em perturbações localizadas e globais. Ruídos de curtos

impulsos (clicks, crackles e pops) assim como pulsos longos de alta freqüência (thumps)

pertencem à classe de perturbações localizadas. Já as perturbações contínuas de fundo ou as

interferências, como o ruído da banda alta (hiss, buzz e hum), são, usualmente, classificadas

como perturbações globais.

Com as técnicas de DSP, é possível superar as limitações intrínsecas dos sistemas

de gravações antigas. Como resultado, a qualidade sonora do material restaurado pode ser

melhorada em relação à original.

Atualmente, as ferramentas existentes para restaurar áudio permitem automatizar

algumas tarefas, como, por exemplo, a remoção de clicks, que se torna trabalhosa se realizado

manualmente. De qualquer forma, alcançar resultados satisfatórios é absolutamente dependente

em guiar escolhas de parâmetros no processamento. Além disso, o range atual de métodos para

restauração, a priori, é relativo no que diz respeito ao conteúdo do sinal a ser restaurado. Então, a

necessidade de um diagnóstico particular é crucial na qualidade sonora final do áudio restaurado.

Parece lógico acreditar que, no futuro, as técnicas de restauração de áudio

poderão tirar proveito de informações intrínsecas agregadas ao som em processamento. A

inferência sobre o conteúdo do sinal e de mecanismos de percepção sonora, e, além disso,

critérios pscicoacústicos podem ser levados em conta nos procedimentos de restauração.

Page 12: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

12

Recentemente, muitas pesquisas buscam encontrar formas para representar sinais

de áudio em uma organização estrutural, através de objetos sonoros. No futuro, pode-se prever a

possibilidade de realizar a restauração de áudio em uma estrutura baseada em objetos.

Analisando o conteúdo de gravações antigas, será possível obter dados mais apropriados para a

construção de um modelo de síntese sonora e, então, gerar um novo sinal de áudio sem ruído,

baseado nesse modelo. Claro, realizar restaurações de áudio através da re-síntese é,

particularmente, um desafio sobre o ponto de vista da engenharia. Além das particularidades

técnicas, sobre o ponto de vista subjetivo, executar a restauração de áudio, através de uma re-

síntese de áudio, baseada em objetos, possivelmente trará questões relativas à preservação da

integridade artística nos sinais reconstruídos. De qualquer forma, deve-se levar em consideração

que a restauração de áudio é sobre características não substituíveis. Assim, qualquer que seja o

resultado, baseado em objetos oferecidos no futuro, será formada, simplesmente, outra maneira

de ouvir gravações antigas.

2.3. Modelagem AR e ARMA

A natureza ressonante, associada com a maioria das vibrações sonoras, torna os

processos AR e ARMA ferramentas apropriadas para modelar pequenos pedaços de sinais de

áudio. De fato, os modelos AR e ARMA encontram utilidade em diversas aplicações de áudio,

tal como: codificação de voz e áudio, síntese de som, e análise espectral.

2.3.1. Definições Básicas

Um processo ARMA(p,q) de x(n) pode ser gerado filtrando-se ruído branco e(n)

através de um filtro invariante, causal, linear e estável com função de transferência

∑∑

=−

=−

+==

p

k

kk

q

k

kz

za

zb

zA

zBzH

1

0

1)(

)()( (1)

Considere um espectro de potência plano para a entrada, ou seja, 2)( ex zP σ= . A

saída resultante x(n) tem uma função de espectro de potência generalizada dada por

Page 13: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

13

)/1()(

)/1()()(

**

**2

zAzA

zBzBzP ex σ= , (2)

onde o símbolo * representa o complexo conjugado. Para coeficientes reais, )(zPx tem 2p pólos e

2q zeros. O espectro de potência associado a um processo ARMA(p,q), o qual é alcançado com

)(zPx para jwez = , é dado por

2

22

|)(|

|)(|)(

jw

jw

ejw

xeA

eBeP σ= . (3)

No domínio tempo, um processo ARMA (p,q) de x(n) relaciona-se com a excitação e(n) através

da seguinte equação diferencial

∑∑==

−=−+q

kk

p

kk knebknxanx

01

).()()( (4)

Um processo AR é um caso particular de um processo ARMA quando q=0. Dessa forma, o filtro

assume a forma

∑ =

−+=

p

k

kk za

bzH

1

0

1)( . (5)

2.4. Tipos de Ruídos

A restauração de áudio digital ocorre depois do processo de transferência das

fontes analógicas para o domínio digital. Thumps, pops, clicks, crackles, e hiss são onomatopéias

comuns usadas para caracterizar o som produzido por ruídos que, freqüentemente, corrompem

gravações antigas. As seções seguintes analisam os procedimentos padrões para reduzir os ruídos

mais comuns, encontrados em gravações antigas.

Page 14: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

14

2.4.1. De-thumping

Thumps são produzidos por pulsos longos que possuem baixas freqüências que

corrompem o sinal. Esses pulsos são produzidos pelo mecanismo de reprodução sobre uma

excitação anormal. Pode-se citar como exemplo a resposta de um aparelho que reproduz um

disco com grandes continuidades nas ranhuras. Exemplos na figura 3.1.

Além de técnicas rudes como filtragem por passa-altos, existem outros métodos,

com vários graus de sofisticação, para tratar dos pulsos longos. A concepção básica por trás

desses métodos é de que os pulsos longos são sempre de mesma amplitude. Desse modo, dado

um padrão do pulso corrompido, pode-se localizar outras ocorrências de pulsos, através de altos

valores entre coeficientes correlacionados, medidos entre o modelo padrão e o sinal corrompido.

Sendo assim, a supressão de ruído é realizada subtraindo-se o modelo, em amplitude, de partes

degradadas do sinal após uma sincronização temporal adequada.

O click de alta amplitude, que, normalmente, aparece no começo de um pulso

longo, deve ser removido por um algoritmo de-clicking (discutido na seção 2.4.2). A figura 3.2

mostra um diagrama de blocos que ilustra os estágios operacionais de um modelo padrão para o

método de-thumping. A principal limitação desse modelo é a insuficiência de robustez em

detectar e anular pulsos dinâmicos, que variam ao longo do tempo, ou pulsos que são

sobrepostos.

Figura 2.1 – Exemplos de pulsos longos: (a) pulsos simples e (b) pulsos sobrepostos

Na aproximação de um modelo fundamentado para a remoção de pulsos longos, o sinal

corrompido é modelado como uma mistura de dois processos distintos de AR. Dessa forma, a

Page 15: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

15

restauração do sinal é consumada separando esses dois processos. Modelos AR de alta-ordem

são usados para ajustar a base dos sinais de áudio. Quanto ao pulso, são empregados modelos

AR de baixa-ordem, sendo que os clicks iniciais são incluídos como parte do pulso. A grande

desvantagem da aproximação por separação de AR é o fato desse método consumir um alto custo

computacional. (P. A. A. ESQUEF 2002) propôs um algoritmo para remoção de pulsos longos,

baseados em filtros não-lineares e polinomiais. Nesse método proposto, uma primeira análise da

forma de onda do pulso é obtida através de uma versão modificada de uma técnica de filtragem

chamada Two-pass Split Window (TPSW). O princípio proposto nesse filtro é suavizar o efeito

artificial do click inicial de alta amplitude.

Figura 2.2 – Estágio de processamento de um modelo padrão para de-thumping.

Na fase final, a qual deve ser a supressão do sinal corrompido, resultados relativos

ao método de ajuste polinomial são aplicados na estimativa de pulsos, baseados em TPSW. Para

se obter valores apropriados dos parâmetros em processamento, o desempenho de ambos os

métodos de redução de pulsos, TPSW e AR, são comparados. De qualquer forma, a

complexidade computacional do algoritmo TPSW é duas vezes menor que para o método AR.

2.4.2. De-clicking

Perturbações impulsivas, contaminando o sinal de áudio, são ouvidas como um

click. São, usualmente, causadas por pequenas imperfeições nas ranhuras de discos. Entre outras

causas, essas imperfeições podem ser ocasionadas devido à porosidade intrínseca do material do

Page 16: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

16

disco, à partículas sólidas aderentes às ranhuras ou, até mesmo, à presença de arranhões

superficiais no disco.

Figura 2.3 – Modelo base para o método de-clicking.

Sistemas para remoção de clicks são usados até mesmo no domínio analógico. De

certa maneira, alguns argumentos usados nesses sistemas antigos foram empregados,

similarmente, mais tarde em sistemas digitais para remoção dos mesmos.

No modelo-base para redução de clicks em áudio, curtos quadros do sinal

fundamental x(n) são modelados como um processo AR de ordem p. Além disso, o mecanismo

de degradação supõe a seguinte forma aditiva:

)()()()( ndninxny += , (6)

onde o termo i(n)d(n) corresponde à componente de ruído, com i(n) sendo uma ordem binária

que indica a presença de ruído (i(n)=1).

O objetivo dos algoritmos de detecção de clicks é estimar a ordem i(n) que

minimiza a porcentagem de detecção de erro e falsos alarmes de clicks. No método de detecção

por AR, a magnitude da excitação do modelo AR, a qual é obtida por filtragem inversa, é

comparada com um limite adaptativo. Amostras com valores de magnitude, excedendo o limiar,

ponderam amostras corrompidas no sinal. Além disso, aperfeiçoamentos de detecção de clicks

podem ser alcançados usando-se um filtro combinado (Mached), com predição linear bi-lateral, e

esquemas bem elaborados.

A redução de ruído é alcançada substituindo as amostras corrompidas por outras

que parecem com o sinal base. É possível tornar essa substituição completamente satisfatória,

Page 17: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

17

através de métodos de interpolação baseados em AR. A figura 2.3 descreve um diagrama de

blocos com os estágios operacionais de um modelo para de-clicking.

A redução de clicks em áudio pode também ser realizada, através de um sistema

Bayesiano estatístico. Na aproximação Bayesiana, modelos são usados tanto para o sinal

fundamental quanto para o processo de ruído. Além disso, a detecção e a supressão de clicks são

completas. Outros meios para redução de clicks englobam algoritmos de redes neurais e modelos

de técnicas de filtragem adaptativa.

Diversos tipos de aproximações são usados para tratar da reconstrução dos sinais

discretos no tempo, através de lacunas de amostras perdidas. Entre as técnicas disponíveis,

podem ser mencionadas as seguintes: reconstrução de banda limitada, interpolação modelada

senoidal, substituição da forma de onda, e interpolação AR.

Devido às limitações relacionadas aos sinais de áudio não estacionários, o método

de interpolação, baseado em AR, é, normalmente, adequado para a reconstrução, de modo

relativo, das partes de curta-duração (até aproximadamente 20ms) do sinal de áudio. A

interpolação acima de lacunas maiores talvez conduza a uma reconstrução pobre do sinal, o qual

é caracterizado por igualdades excessivas e pela queda de potência do sinal no meio da lacuna. A

maneira mais simples de burlar esse defeito é aumentando a ordem do modelo AR.

Em (S. J. GODSILL AND P. J. W. RAYNER 1998), foram comparadas as

performances (custo computacional versus desempenho) entre o esquema de interpolação e uma

versão modificada dele. Realizando a estimativa do modelo AR, nota-se que as performances são

computacionalmente mais caras do que quando são feitas de maneira convencional. De qualquer

forma, essa versão modificada pode ser direcionada para focar a realização do modelo no modo

de ressonância em baixa freqüência que mais se sobressai perceptualmente. Como conseqüência,

modelos superiores de lógica perceptual poderão ser alcançados. Resultados em simulações

mostram, em um certo nível de custo e para modelos de baixas ordens, que o método modificado

se apresenta melhor do que o método convencional. A qualidade perceptual dos sinais

reconstruídos é medida através da técnica de medida perceptual para áudio (PAQM).

Resumidamente, o PAQM é uma medida objetiva de distorção que leva em conta o fenômeno

pscicoacústico. O PAQM representa um indicador de desigualdade que é obtido por meio de uma

comparação entre a descrição de ouvido, em uma certa referência, e o sinal processado.

Page 18: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

18

2.4.3. De-Hissing

A contaminação do sinal em função do acréscimo de ruído, em todas as

freqüências, é percebida como um hiss. A componente de ruído é, geralmente, causada por

ruídos de dimensões térmicas, ruídos de circuitos elétricos e pelas características intrínsecas da

mídia de armazenamento. Os discos de 78 RPM e gravações em fitas analógicas, normalmente,

associam-se com o ruído do tipo hiss. Para as fitas analógicas, no entanto, as características do

ruído são mais estacionárias do que nos discos.

A redução de hiss para áudio e voz tem sido alcançada através de meios distintos

entre si. Possivelmente, os mais simples e mais usados são através do método Short-time

Spectral Attenuation (STSA), o qual tem sua origem na remoção de ruído para voz. A concepção

fundamental por trás dos métodos STSA é que o ruído é gaussiano branco, de média zero e

descorrelacionado para o sinal base. Na prática, devido à não-estacionáridade de sinais de áudio

em geral, os métodos STSA empregam um bloco baseado no processo “sobrepõe e adiciona”

(overlap and add). Além disso, as transformações do tempo para a freqüência e vice versa são

realizadas por meio da Short-time Fourier Transform.

Nos métodos STSA, a redução de ruído é obtida subtraindo a densidade espectral

de potência estimada do ruído pela potência espectral do sinal corrompido (entrada). Essa

estratégia é conhecida como regra de subtração de potência do espectro. Outras regras de

supressão englobam subtração espectral de magnitude, EMSR e filtragem wiener. Todas essas

técnicas de supressão podem ser formuladas por meio de um filtro variante no tempo que atenua

o espectro de magnitude do sinal ruidoso, de acordo com o SNR medido em uma determinada

faixa de freqüência.

Figura 2.4 – Sistema de redução de hiss baseado na técnica STSA.

Page 19: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

19

A figura 2.4 ilustra os típicos estágios do método para STSA. Um efeito colateral

típico dos métodos STSA é a presença do ruído de tom aleatório nos sinais processados.

Também conhecido como ruído musical, esse fenômeno é originado pelas características

randômicas do espectro de potência. Desse modo, em valores de freqüência randômicos, a

potência de algumas componentes de ruído não é suprimida, e, como resultado, escuta-se breves

estouros tonais.

Existem várias propostas para reduzir o fenômeno de ruído musical.

Possivelmente, a mais simples consiste em superestimar a potência espectral de ruído. Nesse

caso, a redução de ruído musical pode ser um acordo que satisfaça a perda de sinal,

especialmente no que se refere às altas freqüências. Outros modos de reduzir o ruído musical

envolvem o cálculo médio do espectro sobre quadros sucessivos e a aplicação de regras

heurísticas para o fator de atenuação espectral. Recentemente, surgiram alguns interesses em

associar o fenômeno psicoacústico às regras de supressão usadas nos métodos STSA.

A regra de supressão, proposta por Ephraim e Malah (EMSR), é conhecida por ser

efetiva na redução do ruído musical residual. A EMSR corresponde a melhor qualidade (do

ponto de vista de erro médio quadrático) para uma senóide coberta de ruído.

Apesar de estar entre a classe de técnicas não paramétricas para de-hissing, a

redução por wavelet tem recebido muitas atenções na literatura atual. Nesse método, o sinal

ruidoso é mapeado em uma representação multi-resolução de tempo e de freqüência, através da

transformada discreta de wavelet. Em tal representação, o sinal base (fundamental) é codificado

por alguns coeficientes de alta amplitude. Reciprocamente, o processo de ruído é representado

por um grande número de baixos coeficientes. Assim, o de-noising é completo, simplesmente,

por descartar esses coeficientes antes de transformar o sinal para o domínio original.

Além do que foi dito acima, é importante salientar que para as técnicas não

paramétricas são propostas aproximações mais sofisticadas para redução de hiss em áudio. Um

exemplo disso são as técnicas estatísticas que utilizam os modelos AR e ARMA e que são

desenvolvidas para tratamentos em comum para a grande banda e ruídos impulsivos. Métodos

híbridos que combinam técnicas não paramétricas e estratégias paramétricas também podem ser

encontrados com relevância na literatura.

Page 20: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

20

3. Short-Time Spectral Attenuation

Este capítulo aborda a teoria geral das técnicas STSA para a restauração de

gravações musicais degradadas pelo ruído de fundo, mais conhecido como hiss.

3.1. Introdução

STSA (Short-time Spectral Attenuation) é uma técnica de redução de ruído de

fundo que consiste, basicamente, na aplicação de uma atenuação que varia com o tempo para o

espectro gerado pela STFT (Short-time Fourier Transform) do sinal ruidoso. As técnicas STSA

são não-paramétricas e, geralmente, necessitam de pouco conhecimento do sinal a ser

processado. Além disso, são classificadas entre os métodos mais populares para o

aprimoramento de voz e seu uso é largamente predominante para a restauração de gravações

musicais.

Figura 3.1 – Hipótese básica para as técnicas STSA.

A figura 3.1 mostra uma hipótese básica, comum para todas as técnicas de (STSA). É

suposto que o sinal de áudio original s[n] é corrompido por um sinal de ruído aditivo v[n].

O conhecimento em relação ao ruído é, normalmente, limitado ao fato de que ele

pode ser considerado como estacionário e, sendo assim, torna-se possível estimar sua densidade

espectral de potência.

Page 21: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

21

Figura 3.2 - Estrutura geral do método STSA.

O primeiro passo consiste em analisar o sinal com um banco de filtros. Cada canal

do banco de filtros é atenuado (multiplicando por um ganho real, geralmente menor que 1) e,

então, o sinal das sub-bandas são repostos juntos para se obter o sinal restaurado. O ganho,

mutante no tempo, é determinado pela regra de supressão de ruído para cada canal e usa uma

estimativa da potência de ruído nesses canais. Os dois elementos que, realmente, caracterizam as

técnicas STSA são, particularmente, as características do banco de filtros e a regra de supressão.

Na maioria das técnicas STSA, a transformada de tempo curto utilizada é a STFT

(Short-time Fourier Transform) ou, de certa maneira, um banco de filtros uniforme que pode ser

implementado pela STFT.

Para projetar o banco de filtros, é necessário levar em consideração o fato de que

o sinal da sub-banda, às vezes, será fortemente modificado pelo processo de atenuação. De certa

maneira, quando essa atenuação é claramente desejável para se obter uma reconstrução perfeita,

torna-se importante evitar efeitos tal como o aliasing da banda espectral, o qual pode criar

distorções no sinal restaurado. Para a STFT, são obtidos resultados satisfatórios com uma taxa

amostragem de sub-banda duas ou três vezes maior que a amostragem crítica (J. S. LIM AND A.

V. OPPENHEIM, 1979).

Page 22: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

22

3.2. Considerações Históricas

Historicamente, a técnica Short-time Spectral Attenuation (STSA) foi,

primeiramente, desenvolvida para a redução de ruído em voz, nos anos 70s [Lim and

Oppenheim, 1979, Boll 1991]. A aplicação da STSA para a restauração de gravações em áudio

veio, mais tarde, com técnicas que foram adaptadas, diretamente, das técnicas utilizadas para a

voz.

Quanto à fase do sistema, a opinião mais comum é que ela não precisa ser

modificada em função das propriedades do sistema auditivo humano. [LIM AND OPPENHEIM,

1979]. A confirmação de que o ouvido é “insensitivo à fase” foi enfatizado pela descoberta da

psicoacústica, somente para os casos de sons estacionários para a fase da transformada de

Fourier. Além disso, é conhecido que para a STFT, a variação de fase entre quadros sucessivos

da transformada pode causar distorções audíveis. De qualquer forma, deveria ser enfatizado que,

geralmente, não há uma condição de escolha para sustentar a fase original em função da falta de

hipóteses com respeito ao sinal desconhecido.

Até agora, as técnicas STSA são amplamente predominantes no campo de

restauração de voz e, além disso, são usadas, de modo especial, para a restauração de gravações

musicais. Uma das razões para a ampla aplicação das técnicas STSA é, certamente, o fato de que

elas correspondem a aproximações não paramétricas, as quais podem ser aplicadas a uma

enorme classe de sinais. Em contrapartida, considerando que a maioria das gravações musicais

contém, simultaneamente, várias fontes de som, é indesejável que alguns dos métodos, que

contam com conhecimentos específicos das propriedades do sinal de voz, possam ser

generalizados para restauração de áudio.

Outra razão para o sucesso das técnicas STSA, no campo de restauração de áudio,

pode ser o fato de elas possuírem uma interpretação muito intuitiva.

Page 23: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

23

3.3. Short-time Spectral Attenuation (STSA)

Esta seção descreve os principais conceitos em torno da STSA.

3.3.1. Transformada de tempo curto

Nas técnicas STSA, a transformada de tempo curto utilizada é a Short-time

Fourier Transform (STFT). Em alguns sistemas é utilizado um banco de filtros uniforme, o qual

pode ser implementado pela STFT.

Análise da STFT:

∑+∞

−∞=

−⋅−=n

njk

kenxnpRhpX πφφ 2)()(),( (7)

Síntese da STFT:

∑ ∑+∞

−∞=

=

−=p

N

k

njk

kepYN

pRnfny1

0

2),(1

)()( πφφ (8)

Onde x(n) é o sinal em análise, no caso, o sinal já corrompido, ou seja, a entrada

pura com a soma do ruído h(n) e f(n) é chamada, respectivamente, de janela de análise e síntese,

utilizada para limitar o tamanho, ou seja, o número de amostras na hora de fazer a transformada.

Uma análise para esse tamanho será, mais tarde, discutida como parâmetro de projeto do

supressor de ruído. N é o tamanho da transformada discreta de Fourier. R é o tamanho do salto

(em amostras) entre quadros sucessivos. Nkk /=φ é a freqüência discreta k normalizada. (kφ é

um valor entre 0 e 1 e adota N valores discretos para k=1,..., N, onde N é o número de sub-

bandas). O ),( kpX φ é a STFT, com índice p, é a freqüência kφ . É possível notar que esse índice,

normalmente, refere-se a uma taxa de amostragem menor que a taxa inicial de amostragem do

sinal (para a STFT, o baixo fator de amostragem é igual ao tamanho de salto entre quadros

consecutivos da transformada). ),( kpY φ é o sinal processado e sua saída y(n) é a sua STFT

inversa. Por convenção, h(n) é zero para n > 0 e f(n) é zero para um n < 0.

Page 24: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

24

3.3.2. Atenuação Espectral

O resultado de uma regra de supressão pode sempre ser representado como a

aplicação de um ganho real ),( kpG φ para cada bloco ),( kpX φ da STFT, para o sinal ruidoso.

Normalmente, esse ganho corresponde a uma atenuação, ou seja, seu valor está entre zero e um.

Para a maioria das regras de supressão, ),( kpG φ depende, unicamente, do nível de potência do

sinal ruidoso 2|),(| kpX φ e da estimativa de potência do ruído na freqüência kφ ,

}),({)(2

kk pVELd φφ = ou seja, o valor esperado para a potência do ruído puro. Como o ruído é

do tipo estacionário, a estimativa da potência de ruído não depende do índice p , pois ele não

varia no tempo.

A relação )(

),(),(

2

k

kk Ld

pXpQ

φφ

φ = (9) é chamada de nível relativo de sinal. Pode-

se notar que quando o ruído v[n] é descorrelacionado com o sinal s[n] desconhecido, tem-se

)(

}),({1)},({

2

k

kk Ld

pSEpQE

φφ

φ += (10), e sendo assim, o valor esperado para o nível relativo de

sinal será sempre maior do que um.

A regra de supressão por subtração de potência é definida por

),(

11),(

kk pQ

pGφ

φ −= , (11)

e a regra de supressão chamada de subtração wiener é definida por

),(

11),(

kk pQ

pGφ

φ −= . (12)

As duas regras de supressão mencionadas acima possuem o mesmo comportamento

( 1),( =kpG φ ) quando o nível relativo de sinal é muito alto ( 1),( >>kpQ φ ) e

0),(1),(

lim =→ k

k

pGpQ

φφ

. (13)

Para manter a generalidade dos resultados e simplificar os cálculos, as regras de

supressão de ruído poderão ser aproximadas por uma “regra ideal de supressão”, na qual o ganho

é

Page 25: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

25

0 quando ck QpQ ≤),( φ e

1 quando ck QpQ ≥),( φ

onde cQ é o nível relativo de corte. cQ é definido como o nível de ),( kpQ φ quando o ganho

),( kpG φ é -3 dB. As regras de supressão ideais correspondentes as duas regras de supressão

precedentes são representadas pelas linhas pontilhadas na figura 4.3. Qc=3dB para a regra de

subtração de potência e Qc = 5dB para a regra de supressão Wiener. Em muitos casos, o nível de

ruído )( kLd φ é, artificialmente, superestimado, multiplicando-o por um fator α maior que um, e

sendo assim, ),( kpG φ é nulo para αφ ≤),( kpQ .

Figura 3.3 – Ganho versus nível de sinal relativo. As linhas contínuas correspondem ao método

por subtração de potência e a linha pontuada corresponde a subtração wiener. As duas linhas pontilhadas correspondem ao modelo ideal para ambas regras de supressão.

É importante lembrar que o ruído v[n] será considerado estacionário, aditivo, e

descorrelacionado.

Page 26: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

26

3.3.3. Análise Determinística

Apesar de ser, particularmente, difícil analisar os resultados das técnicas STSA

em uma situação geral, torna-se, relativamente, simples quando é suposto que o sinal de entrada

desconhecido é um tom puro, ou melhor, uma combinação de distintos tons puros com

freqüências, suficientemente, espaçadas. Essa hipótese é viável desde que uma grande proporção

de sons instrumentais possa ser descrita, eficientemente, como uma soma de tons puros

modulados.

Figura 3.4 – Restauração de um sinal senoidal dentro de ruído branco com potência de

0dB. (a) Sinal ruidoso (as linhas pontilhadas descrevem a característica do banco de filtros); (b)

O sinal processado.

A STSA não reduz o ruído presente nas sub-bandas que contém as componentes dos

sinais. A figura 3.4 mostra uma ilustração desse feito para um sinal senoidal mergulhado em

ruído branco. Se o nível da senóide for bastante grande, os canais em que ela se encontra não são

atenuados, enquanto que os outros canais são fortemente atenuados. Como conseqüência, o sinal

Page 27: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

27

de saída consiste em um sinal senoidal cercado por uma banda estreita de ruído filtrado. Se o

nível da senóide for muito baixo, todos os canais são fortemente atenuados e o sinal é cancelado

completamente.

Para um sinal senoidal de freqüência φ (o qual supostamente correspondente à

freqüência central de um dos filtros do banco de filtros), assumindo que a densidade espectral de

potência do ruído adicional é suficientemente aplainada, verifica-se que:

φφ

φWS

PspQE

v )(1)},({ += (14)

Ps é a potência da senóide, )(φvS a densidade espectral de potência do ruído na freqüência φ e

φW é a largura de banda do filtro sub-bandas centrado em volta da freqüência φ .

Como conseqüência, o número de componentes de sinais, que são cancelados por

engano pelo processo de restauração, aumenta com a largura de banda do banco de filtros de

análise. Embora pareça simples, esse resultado, apesar de tudo, expressa que a melhoria do sinal

pode ser mais eficiente se a largura do canal for otimizada de acordo com o que é permitido pela

hipótese estacionária.

Para a STFT, a largura de banda do banco de filtros é inversamente proporcional a

duração do frame short-time. O processamento pode anular componentes audíveis se a duração

do quadro da transformada for menor eu 40ms.

3.3.4. Audibilidade do ruído na saída

Quando as componentes do sinal não são canceladas, o sinal processado exibe

uma banda de ruído filtrado situada em volta da componente senoidal. É claro que esse

fenômeno, se audível, é um defeito importante do método porque isso causa um ruído

perturbador combinado com o sinal, mas esse não é o caso para o ruído de banda larga original.

Quanto aos resultados mencionados anteriormente em relação ao cancelamento do

sinal, o limite audível obtido deveria ser considerado somente como a ordem de grandeza

estimada em situações reais, desde que não se leve em conta o possível mascaramento mútuo

entre componentes de sinais diferentes, sendo que esse fenômeno deve prevalecer quando o nível

de ruído é muito baixo. Na prática, a duração do quadro da STFT deve ser longo o suficiente

Page 28: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

28

para evitar gerar efeitos de modulação indesejados (banda audível do ruído em torno das

componentes de sinal). Além disso, para sinais de áudio, a duração do quadro da transformada

pode ser ajustado vantajosamente em grandes valores com relação àqueles usados em voz, que

diminuem o limite do cancelamento de sinal.

3.3.5. Sinal Transitório

Os resultados anteriores relacionam-se com porções fixas de sons. No entanto,

sabe-se que gravações musicais também apresentam diversos trechos transitórios (começo de

nota, percussão) que representam uma parte importante na avaliação subjetiva das características

dos sinais.

Assim como em outras técnicas que usam uma análise de sinais de curto tempo, é

possível observar, nos sinais gerados pelo processo de restauração, distorções específicas, que

ocorrem quando os sinais transitórios estão presentes. Nas técnicas STSA, essas distorções se

manifestam como uma distorção na forma de onda do sinal para sinais transitórios de baixo-

nível. Esse fenômeno é ampliado com o aumento da duração do quadro da transformada.

A análise de tais efeitos transitórios é dificultada pelo fato de não haver um

protótipo de sinal transitório. Os resultados obtidos em um caso simplista, como o brusco

começo de um tom puro, apresentam indicações de que a essa distorção, observada em partes

transitórias de sinais com baixa amplitude, se deve, principalmente, em função da modificação

do espectro do sinal pela regra de supressão. Já em aplicações em que a magnitude do espectro

do quadro não é modificada drasticamente, a distorção do sinal transitório é causada, na maioria

das vezes, por distorções na fase.

Como conseqüência, métodos que exploram a redundância da magnitude do

espectro do quadro para restaurar a fase correta não são eficientes para eliminar as distorções

transitórias causadas pela STSA.

Page 29: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

29

3.3.6. Estimação de Ruído

A redução do ruído de fundo (hiss), usando métodos para canal único, requer uma

estimativa do ruído. Diversas aproximações são baseadas em detectores de atividade de voz

(VAD), no qual a estimativa do ruído é atualizada durante períodos de inatividade de voz. Nesse

caso, a precisão pode deteriorar-se com a perda da relação sinal ruído (SNR) e em ruídos não

estacionários.

A estimação do ruído de fundo é um parâmetro essencial do algoritmo de redução

de ruído. È uma tarefa desafiante, sendo que a estimativa tem de ser obtida a partir do sinal de

voz ruidoso. Uma aproximação comum é usar um detector de energia de voz, (VAD – Voice

Activity Detector) para identificar segmentos no tempo em que a fala está ausente, pois, dessa

forma, o sinal consiste somente de ruído de fundo (hiss). Estimativas da estatística do ruído são

atualizadas durante essas pausas na fala. Apesar da estimativa do ruído, baseada em VAD, ter a

vantagem do baixo custo computacional, ela sofre com dois problemas. Com a diminuição da

relação sinal ruído a detecção de pausas na fala não é mais uma tarefa trivial. Além disso,

enquanto o método trabalha, razoavelmente, bem em ambientes com ruído estacionário o

desempenho degrada em ambientes nos quais a estatística do ruído muda continuamente, o que é

normal na prática.

Para melhorar a eficácia do VAD binário (presença de voz e ausência), são

propostos VADs com decisões suaves, as quais determinam uma probabilidade da presença de

voz em cada segmento. Dessa forma, é possível atualizar a estatística do ruído, continuamente,

baseado na probabilidade de presença do ruído.

3.3.7. Ruído musical

Quando o ruído está presente, o nível de sinal relativo observado pode ter valores

altos. Desse modo é, praticamente, possível separar o ruído de componentes de baixo nível de

sinal com base no nível de sinal relativo. Como resultado, o cancelamento total do ruído pode

somente ser obtido ao custo de distorção das componentes de baixo nível.

Na maioria das técnicas STSA, o ruído que permanece depois do processamento

tem uma qualidade perturbante não natural, especialmente no contexto musical. Esse fenômeno

é, geralmente, referenciado como ruído musical ou ruído residual. O fenômeno do ruído musical

Page 30: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

30

é uma conseqüência direta do fato de que o período estimado, usado para avaliar o nível de sinal

relativo, captura valores que são assintóticamente descorrelacionados, mesmo para trechos

vizinhos. Esse período, que é guardado para a transformada pertencente ao mesmo quadro em

análise, é complementado pelo fato de que os trechos de quadros sucessivos tenderão também a

ser descorrelacionados para quadros que não se sobrepõe no tempo.

Combinando essas duas propriedades, é facilmente verificado que a STSA

transforma o ruído de banda larga original em um sinal composto de tons passageiros com

freqüências distribuídas randomicamente. Além disso, com uma regra de supressão “padrão”,

que depende somente do nível de sinal relativo medido no frame corrente, esse fenômeno pode

ser somente eliminado sobreestimando rudemente o nível de sinal.

3.3.8. Soluções para o ruído musical

Diversas modificações empíricas são apresentadas como soluções para o ruído

musical. A primeira possibilidade consiste em tirar vantagem das características desse tipo de

ruído, mais, precisamente, da curta duração das componentes de ruído musical e da aparência

que o mesmo apresenta em uma sub-banda que é independente de outras sub-bandas. A principal

desvantagem desse tipo de aproximação é que, a partir do que é baseado nas propriedades

estatísticas médias, o ruído musical é reduzido, porém não é completamente eliminado.

Outra possibilidade é usar uma estimativa suavizada do nível de sinal relativo.

Limitações dessa aproximação incluem o fato de que ela pode gerar distorções no sinal,

particularmente durante transições em que a suavização temporal é usada.

Finalmente, há uma alternativa que cancela o ruído musical por trás de um nível

suficiente de ruído fixo. Uma maneira simples de proceder consiste em forçar o ganho

computado, que é aplicado sobre o limiar pré-selecionado. Além disso, é possível acabar com o

ruído musical utilizando a regra de supressão Ephraim and Malah, a qual será abordada no

próximo capítulo.

Page 31: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

31

3.4. Regras de Supressão

Neste capítulo são abordadas as duas regras de supressão de ruído aplicadas neste

trabalho, a EMSR (Ephraim and Malah noise Supressio Rule) e a SS (Subtração Espectral).

3.4.1. EMSR

A técnica EMSR (Ephraim and Malah noise Supressio Rule) é um sistema para

melhorar os sinais de fala que possuem ruído. Além disso, é baseado na derivação de um

estimador ótimo de amplitude espectral de tempo curto (STSA – Short-time Spectral Amplitude),

o qual busca minimizar o erro médio quadrático (MMSE – Minimum Mean–Square Error) entre

a amplitude espectral de tempo curto (STSA) original e sua estimação.

De uma maneira em geral, o algoritmo EMSR tenta encontrar um compromisso

entre a quantidade de ruído a ser removida e as distorções introduzidas no sinal de voz devido ao

processamento realizado. Em outras palavras, ele realiza uma redução moderada do ruído de

fundo enquanto evita, completamente, o aparecimento do ruído musical.

O algoritmo original foi proposto por Ephraim e Malah pela primeira vez, em

1983. Neste trabalho, será focado somente o princípio original de EMSR desenvolvido, pois o

mecanismo responsável por eliminar o ruído é, basicamente, o mesmo em todas as regras de

supressão propostas. A fig 3.5 mostra o algoritmo em diagrama de blocos.

Figura 3.5 – Diagrama de blocos do algoritmo original Ephraim and Malah

Page 32: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

32

Como já foi dito, o EMSR é um tipo de algoritmo de atenuação espectral de tempo curto.

Seu ganho espectral é dado como ),( wqG , isto é, varia com o espectro e o quadro, que é

aplicado sobre a magnitude de cada componente espectral ruidosa de tempo curto ),( wqY

A função ganho ),( wqG é dada por:

++⋅

+

+⋅=

Rpost

RprioRpostM

Rpost

Rprio

RpostwqG

11

11

1

2),(

π (15)

[ ]

+

+

−=22

)1(2

exp 10

θθθθθθ IIM (16)

onde 0I e 1I são as equações de Bessel modificadas.

A partir desse ganho, pode-se obter uma estimativa da magnitude ),(^

wqS da

componente espectral w da fala limpa no q-ésimo quadro. O ganho G(q,w) depende de dois

parâmetros, que são apresentados nas Equações a seguir.

1

)(

),(),(

2^

2

−=wD

wqYwqRpost (17)

onde 2^

)(wD é a potência estimada do ruído na freqüência w. O parâmetro Rpost é a

relação sinal-ruído a posteriori, computada do quadro de tempo curto atual q para cada

componente espectral w.

2^

2

)(

),1(),1(),()1(),(

wD

wqYwqGwqRpostwqRprio

−⋅−⋅+⋅−= µµ (18)

Page 33: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

33

O parâmetro Rprio é a relação sinal-ruído a priori. Pode-se verificar que na

primeira parcela efetua-se uma ponderação de )1( µ− na relação sinal ruído do quadro atual,

Rpost. O fator ),1(),1( wqYwqG −⋅− é uma estimativa do espectro do sinal sem ruído do

quadro anterior. Dessa forma, tem-se, na segunda parcela da equação (18), a relação sinal-ruído

do quadro anterior, que é ponderada pelo parâmetro µ . Pode-se então compreender a razão da

denominação a priori, pois o cálculo de Rprio depende de uma estimativa do sinal limpo, a qual é

feita baseada em um quadro prévio, enquanto para a determinação de Rpost não necessita-se de

nenhum conhecimento prévio do sinal ruidoso no quadro atual.

A influência dos parâmetros Rpost e Rprio

O parâmetro Rprio, relação sinal-ruído a priori, é o parâmetro dominante no

cálculo do ganho. Como pode ser visto na figura 3.6, fortes atenuações são obtidas somente se

Rprio é baixa e baixas atenuações são obtidas somente se Rprio é alta.

Quando Rprio é baixo, Rpost atua como parâmetro de correção (como mostra o

lado esquerdo da figura 3.6). Quando Rprio é baixo Rpost é alto, o efeito é oposto ao

intuitivamente esperado e existe uma atenuação muito forte. Esse comportamento é

conseqüência do desacordo entre as relações sinal-ruído a priori e a posteriori, sendo muito útil

na eliminação do ruído residual.

Figura 3.6 – Ganho EMSR versus Rprio, para diferentes valores de Rpost.

Page 34: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

34

Quando a relação sinal-ruído a posteriori, Rpost, fica abaixo ou próxima de 0db, Rprio

corresponde a uma versão altamente suavizada de Rpost, ao longo de sucessivos quadros.

Conseqüentemente, a variância de Rprio para cada freqüência é muito menor que a de Rpost, ao

longo de sucessivos quadros. Pode-se notar, no lado esquerdo da figura 3.7, como a curva de

Rprio é muito mais suave que a curva de Rpost.

Quando Rpost é muito maior que 0 dB, Rprio segue Rpost ao longo de suceissivos

quadros. Como pode ser visto no lado direito da figura 3.7, nos últimos 20 quadros, Rprio segue

Rpost com apenas um quadro de atraso.

Figura 3.7 – As relações sinal-ruído Rpost e Rprio ao longo de sucessivos quadros.

Curva de linha contínua: Rprio; Curva de linha pontilhada: Rpost. Nos primeiros 40 quadros o

sinal contém somente ruídos na freqüência escolhida e para os 2º quadros seguintes surge uma

componente com mais de 15dB de relação sinal-ruído na freqüência mostrada

Quando o nível do sinal é bem superior ao do ruído, como ocorre nos últimos 20

quadros da Figura 3.7, Rprio(q,w) não é mais uma versão suavizada da relação sinal-ruído e sim

uma versão atrasada de Rpost, o que é importante no caso de sinais não-estacionários.

Page 35: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

35

3.4.2. Subtração Espectral

A subtração espectral é uma técnica muito mais simples do que a EMSR. Ela,

simplesmente, consiste em subtrair a amplitude do espectro do sinal ruidoso com a média da

estimação do ruído calculado para o mesmo quadro do sinal. Maiores descrições estão presentes

no próximo capítulo, que aborda o desenvolvimento do trabalho.

Page 36: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

36

4. Projeto para a Restauração do Acervo de Gravações do Laboratório de Línguas da PUCRS

Neste capítulo, está descrito o Projeto para a Restauração do Acervo de Gravações do

Laboratório de Línguas da PUCRS, o qual já está em andamento. Este projeto faz parte do

programa de Bolsa/Pesquisa para Alunos da PUCRS, tendo como coordenador do projeto pela

FENG (Faculdade de Engenharia) o Prof. Dr. Denis Fernandes e pela FALE (Faculdade de

Letras), profª. Drª. Regina Ritter Lamprecht. A proposta de um software para a redução de ruído,

descrito no capítulo 5, deverá ser aplicado no contexto deste projeto.

4.1.1. Objetivos Gerais e Específicos

O presente projeto tem como objetivo específico a restauração do acervo de

gravações de áudio do Laboratório de Línguas da Faculdade de Letras (FALE) da PUCRS. Os

diversos cursos e registros atualmente armazenados em fitas de rolo, cassete e videocassete,

serão digitalizados e restaurados através de técnicas avançadas de processamento digital de

sinais. Os conteúdos serão armazenados em CDs e DVDs e poderão ser disponibilizados para

acesso on-line por parte da comunidade acadêmica.

Como objetivo geral, pode ser citado, sob o ponto de vista da Faculdade de

Engenharia (FENG), o aprofundamento do conhecimento sobre técnicas de restauração e

compressão digital de sinais de áudio, criando uma oportunidade para testar algoritmos originais

desenvolvidos na própria FENG. Já sob o ponto de vista do Laboratório de Línguas, cria-se uma

oportunidade para organizar, recuperar, preservar e disponibilizar o acervo do Laboratório de

Línguas em formas mais práticas para os usuários e criar ferramentas de ensino e estudo on-line

utilizando a Internet.

Page 37: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

37

4.1.2. Justificativa

O acervo de gravações de áudio do Laboratório de Línguas da PUCRS foi

construído ao longo de anos através da aquisição de materiais didáticos de apoio e para utilização

em salas de aula. Com o passar do tempo, os métodos foram sendo renovados e o material antigo

passou a ser utilizado como material de apoio ou reforço no processo de aprendizagem. Existem,

porém, muitos materiais armazenados em fitas magnéticas que não foram mais editados ou

aperfeiçoados ou mesmo sem uma produção melhor e mais atual numa dada metodologia de

estudo e/ou abordagem de um dado assunto ou conteúdo. Nestes casos, é preciso um tratamento

altamente especializado para digitalização e recuperação do conteúdo das mídias do Laboratório.

Por outro lado, a possibilidade de disponibilizar material para estudo a distância

através da Internet por parte da Faculdade de Letras para utilização em seus cursos de graduação,

pós-graduação e extensão requer, além da digitalização e recuperação do material, sua

compactação de forma eficiente.

O estudo e desenvolvimento de técnicas de processamento digital de sinais, as

quais serão necessárias para recuperar e compactar o conteúdo do acervo do Laboratório de

Línguas, está vinculado à área de Telecomunicações e T&I do Programa de Pós-Graduação em

Engenharia Elétrica (PPGEE) da FENG, tratando-se de uma oportunidade ímpar para aplicação

prática de conhecimentos adquiridos e desenvolvimento de novas técnicas. O sucesso obtido na

aplicação destas novas técnicas pode também resultar em publicações de interesse do PPGEE.

4.1.3. O Laboratório de Línguas da PUCRS

A PUCRS foi pioneira no Rio Grande do Sul ao introduzir, em maio de 1968, seu

Laboratório de Línguas. Devido à intensa demanda por parte dos professores e grupos de alunos,

outro laboratório foi adquirido em 1984 e instalado numa sala contígua, onde funciona hoje o

Laboratório de Multimídia. O Laboratório de Línguas está vinculado à FALE, e dedica-se ao

ensino de línguas estrangeiras e vernáculas, à pesquisa e à prestação de serviços. É administrado,

desde sua fundação, por um diretor-coordenador nomeado pela direção da Faculdade. O

Laboratório de Línguas hoje é constituído por três laboratórios: um laboratório de línguas e dois

laboratórios computacionais. O laboratório de línguas é um espaço dedicado ao ensino de

fonética, estruturas lingüísticas, aquisição de vocabulário, entre tantas outras práticas

pedagógicas utilizadas no ensino de línguas estrangeiras. Suas instalações consistem de um

Page 38: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

38

console de comandos com dois canais de distribuição de áudio, comunicação interativa com

modo de conferência e trinta cabines de gravação coletivas e sete individuais. Hoje, este sistema

conta com vários outros aparelhos anexados ao console para enriquecer e dinamizar os trabalhos.

No Laboratório de Línguas da PUCRS, assim com em qualquer laboratório de

ensino de línguas estrangeiras, é muito comum e de grande presteza no auxílio do ensino de

fonética, na aprendizagem de estruturas lingüísticas e aquisição do vocabulário da língua em

estudo, a existência de um acervo de áudio com programas específicos para estas modalidades de

ensino. O acervo do Laboratório de Línguas, composto de fitas magnéticas de áudio, fitas VHS,

CDs e mesmo DVDs, necessita de cuidados específicos para que se assegure a preservação das

informações registradas. No caso das fitas magnéticas, para preservação do acervo por um longo

tempo, faz-se necessária a construção e manutenção de ambientes especiais, com o devido

controle de temperatura e umidade, entre outros cuidados. Como não se dispõe de recursos para

criação destes ambientes especiais e é necessário conservar indefinidamente os registros, torna-

se relevante a transcrição periódica destes meios antigos para novos meios, não somente porque

os meios de armazenamento de informação são instáveis, mas também porque a tecnologia de

gravação se torna obsoleta (ex. fitas magnéticas de rolo).

4.1.4. Descrição do Material O material focalizado inicialmente neste trabalho é parte integrante do acervo de

fitas de áudio pertencente ao Laboratório de Línguas. Trata-se de fitas de rolo gravadas e

editadas em 1966. Este material foi selecionado para esta primeira etapa do processo de

restauração do acervo [1], pela importância que ainda hoje tem no ensino de fonética. Ele se

enquadra no caso dos bons programas em áudio antigos não mais editados. Trata-se de um curso

completo que ainda apresenta condições de recuperação.

Foram escolhidos, a princípio, dois cursos. Um deles é o Stress and Intonation -

Part 1 [2], composto por um livro com conteúdo dividido em 14 fitas de rolo com duração

aproximada de 20 minutos cada. Este curso tem a sua parte dois dividida em 16 fitas, a qual será

trabalhada em uma segunda etapa do projeto. O outro curso é o Consonants and Vowels [3],

composto por um livro e 24 fitas de rolo.

Page 39: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

39

4.1.5. Identificação dos Problemas Encontrados

O estado das fitas é bastante precário, pois, além do envelhecimento natural

ocasionado pelo processo de deterioração dos materiais constituintes das mídias magnéticas, não

houve armazenamento adequado nos últimos dez anos. Sendo assim, o material hoje se encontra

em uma situação delicada no que tange seu manuseio, pois são necessários cuidados especiais na

reprodução ou corre-se o risco de danificá-lo de forma irreversível. Como as fitas estão

ressequidas e quebradiças, é muito freqüente haver emendas com fita adesiva, material

inadequado para essa finalidade, pois atende momentaneamente ao processo de reprodução, mas

acarreta uma série de problemas posteriores, tais como o corte de trechos da gravação quando as

emendas são colocadas de forma a cobrir também o lado da fita onde está depositado o material

magnético. Este problema ocorre com muita freqüência com o material por ora selecionado. No

caso de uma emenda mal feita, os efeitos podem ser piores, podendo ocorrer rompimento da fita

ou deformação, sem falar em possíveis danos ao equipamento de reprodução.

No caso das fitas ressequidas também existem problemas, pois elas tornam-se

quebradiças e é comum romperem-se durante a reprodução, obrigando assim a se introduzir mais

emendas, realimentando o processo de degradação da mídia. A degradação do aglutinante ou o

ressecamento da fita acabam por ocasionar falhas na tração exercida pelo gravador na hora da

reprodução, o que resulta na parada da reprodução ou na variação de rotação, gerando distorções

durante os trechos críticos.

Outro problema que implicou a depreciação do material está relacionado com as

diversas regravações feitas ao longo dos anos para conservação do conteúdo das fitas originais

do curso. Algumas fitas originais foram perdidas e substituídas por cópias, sendo que muitas das

cópias restantes são gravações de baixa qualidade. Algumas destas cópias foram gravadas a

partir do conteúdo armazenado em vinil (não mais existente), para recuperar trechos perdidos de

cópias em fitas de rolo, o que em parte solucionou o problema, mas, por outro lado, ocasionou

outros.

Em algumas fitas também é possível observar a deformação do substrato. Quando

isto acontece, o problema se dá geralmente ao longo de toda a gravação, prejudicando em muito

o processo de aquisição do sinal durante a digitalização. Como a fita não fica perfeitamente

aderente à cabeça de leitura do gravador, a reprodução fica comprometida.

Page 40: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

40

Além de falhas e interrupção do sinal, devido a emendas mal feitas e por perda de

aglutinante e do material magnético em alguns trechos da fita, foi observado um elevado nível de

ruído de fundo e estalos do tipo click.

Outra dificuldade encontrada diz respeito aos gravadores de rolo existentes no

setor, não mais fabricados, sendo que alguns encontram-se em funcionamento precário,

necessitando de ajustes mecânicos, além de alguns problemas elétricos e eletrônicos.

Page 41: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

41

5. Desenvolvimento do Trabalho

Neste capítulo é abordado o desenvolvimento do trabalho, como o funcionamento do

software desenvolvido.

Com o objetivo de restaurar gravações fonográficas que apresentem ruídos de fundo do

tipo "hiss", foi desenvolvido um algoritmo capaz de proporcionar tal feito. O uso de uma

ferramenta computacional adequada é parte fundamental no planejamento e no desenvolvimento

de qualquer tipo de projeto atualmente. Para tanto, a ferramenta escolhida para a implementação

do algoritmo foi o Matlab. Essa escolha se deve ao fato de que o Matlab já possui diversas

funções padrões, como, por exemplo, a FFT, necessária para a implementação do software, entre

outras. Dessa maneira o trabalho é simplesmente focado para o desenvolvimento da aplicação,

sem necessitar criar funções que fogem da finalidade deste projeto.

O desenvolvimento do trabalho é feito através da implementação de duas regras de

supressão diferentes: a MMSE e a Subtração Espectral. Ambas foram implementadas da mesma

maneira, usando os mesmos critérios de predição de ruído e tamanho de janela. Elas usam o

mesmo algoritmo, sendo que se diferenciam apenas no bloco referente à regra de supressão

utilizada.

Na próxima seção é apresentado um diagrama de blocos simplificado do software

implementado e, logo em seguida, a descrição sobre a finalidade de cada bloco dentro do

processo.

5.1. Algoritmo de Redução de Ruído

O algoritmo de redução de ruído consiste na lógica utilizada para suprimir o ruído.

Abaixo é apresentado o diagrama de blocos do algoritmo e, em seguida, uma descrição da lógica.

Page 42: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

42

5.1.1. Diagrama de blocos

Page 43: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

43

5.1.2. Descrição do algoritmo

Ao iniciar o programa, no bloco 1, a primeira função a ser executada é a função de leitura

do arquivo com ruído, descrita no matlab como ‘waveread’. Essa converte o arquivo inicial

corrompido com ruído de fundo no formato ‘wav’ para o formato ‘PCM’, o qual é descrito por

uma série de pulsos que representam as amostras do sinal corrompido. A amplitude é

normalizada com valores entre –1 e 1.

Em seguida, no bloco 2, é calculado o número de amostras dentro de uma janela de 25ms,

definida como padrão para esse algoritmo. Isso é feito multiplicando a freqüência de amostragem

pelo tamanho da janela no tempo. Esse valor é utilizado, mais tarde, para segmentar o sinal em

frames.

No Bloco 3, é calculado o NIS (Número inicial de segmentos com silêncio). Ao iniciar o

algoritmo, deve ser definido um valor inicial que possua apenas silêncio. Dessa forma é possível

fazer uma boa estimativa de ruído já para as primeiras amostras do sinal, tornando possível a

restauração já nas primeiras amostras. O grande problema é que sinais que não possuem um

período de silêncio ao iniciarem estão sujeitos a uma má estimação de ruído, o que pode

depreciar as primeiras amostras de voz. A fórmula utilizada para o cálculo do NIS é

)*/()*(( WSPWfsISfixNIS −= . IS é o período de silêncio inicial (padrão 0.25s), fs é a

freqüência de amostragem, W é o número de amostras dentro da janela, calculado no bloco 2, e

SP é o shift percentage entre os frames, definido como padrão de 40%, ou seja, 10ms,

considerando a janela de 25ms.

Após o cálculo do tamanho da janela no bloco 2 e o cálculo do NIS no bloco 3, pode ser

feito a segmentação do sinal. Isso é feito no bloco 4. A função que executa a segmentação está

definida como ‘segment’ e está descrita junto com o algoritmo STSA na seção de anexos. O

objetivo dessa função é transformar o sinal original em frames menores, nos quais o sinal pode

ser considerado estacionário.

No bloco 5, os frames no tempo são transformados para o domínio freqüência, através da

função FFT (Fast Fourier Transform) que já faz parte da biblioteca do Matlab.

No bloco 6, é calculado o espectrograma, através do módulo, sobre cada frame transformado em

freqüência. Já no bloco 7, é feito o cálculo do espectro de potência para os frames iniciais (NIS),

através da média do espectrograma desses quadros. Esse valor é utilizado para o primeiro frame

a ser restaurado.

Page 44: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

44

No bloco 9, é inicializada a variável i=1, a qual é utilizada para um loop no qual é

calculado o ganho, seja no método MMSE ou no SS, para cada frame do sinal em que i é o

índice que indica o frame que está sendo calculado. Essa variável é comparada no bloco 17 com

o número de frames calculado no bloco 8. Caso i não seja igual ao número de frames, i é

incrementado e o processo de cálculo do ganho se repete, só que agora para o próximo frame,

que será i+1.

No bloco 10, é realizada uma análise para saber se o frame pertence ou não ao número

inicial de segmentos com silêncio (NIS). Se o frame estiver dentro do NIS, no bloco 11, o

algoritmo não calcula o VAD (Voice Activty Detection) e passa direto para o teste de presença de

voz. Como é suposto que os quadros que pertencem ao NIS não possuem presença de voz, logo é

feita a atualização da média do ruído. Caso o índice i seja maior que NIS, é realizado, no bloco

12, o cálculo do VAD. Como resultado, o VAD indica, no bloco 13, se o frame que está em

cálculo possui ou não presença de voz. Se o VAD chegar à conclusão de que o frame não

apresenta presença de voz, é feita, no bloco 14, uma atualização da média do ruído.

A atualização citada acima é realizada através da fórmula

)1/())(:,*( ++= tNoiseLenghiYNanttNoiseLenghN , na qual N é a média do ruído calculado

para o frame corrente. ‘Nant’ é a média referente ao ruído no frame anterior e ‘NoiseLenght’ é

um fator suavizante no cálculo do ruído. Se ‘Noiselenght’ for 0, a média do ruído será a média

do sinal Y(:,i) para o frame em cálculo. Quanto maior for o fator NoiseLenght maior é a

suavização no cálculo do ruído. Caso o VAD retorne indicando a presença de voz, não será feita

uma atualização para o cálculo do ruído e, sendo assim, será utilizado o ruído anterior para o

cálculo de ganho no frame em questão.

Após o cálculo da média de ruído para o frame, é feito, no bloco 15, o cálculo do ganho.

Esse irá atenuar ou não o sinal, em função da regra de supressão utilizada. Aqui o ganho pode ser

dividido em SS (Spectral Subtraction) ou em EMSR (Ephraim and Malah Supression Rule). Ao

fim do cálculo do ganho para cada quadro, obtém-se o sinal limpo multiplicando-se o ganho

calculado para cada frame com o sinal ruídoso de entrada para o mesmo frame, no bloco 16.

Obtendo a estimativa do sinal limpo para todos os frames do sinal original, o processo de

restauração está pronto para ser re-transformado para o domínio tempo, através da função IFFT,

descrito pelo bloco 19, pertencente à biblioteca padrão do Matlab. A partir daí, o arquivo de

áudio restaurado, no domínio tempo, deve ser convertido do padrão PCM para o padrão wav, ou

seja, deve ser utilizada a função inversa à aplicada no primeiro bloco. Isso pode ser feito através

Page 45: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

45

da função ‘wavwrite’, pertencente a biblioteca padrão do Matlab. Agora sim, já é possível ter o

sinal de áudio restaurado.

Page 46: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

46

6. Resultados

Para medir e comparar os resultados entre as duas regras de supressão de ruído, foram

testados vários trechos de arquivos de áudio durante este trabalho. Dentro dos resultados

apresentados, são citados apenas dois tipos de arquivos de ruído, o arquivo ‘testesom.wav’ e o

arquivo ‘amostra.wav’.

O arquivo ‘testesom.wav’ é um arquivo criado especificamente para fins de teste. A

partir dele, foram gerados dois novos arquivos, acrescentando-se ruído aleatório de maneira

controlada, para que um deles possua uma relação sinal ruído (SNR) de 25dB, arquivo

‘testesom25dB.wav’, e o outro uma relação sinal ruído de 10dB, arquivo ‘testesom10dB.wav’. O

algoritmo utilizado para gerar os arquivos com ruído controlado está junto aos anexos com o

nome de ‘noisegen’.

A restauração foi realizada a partir de dois arquivos ruidosos, ‘testesom25dB.wav’ e

‘testesom10dB.wav’, afim de reparar as perturbações causadas pelo ruído aleatório inserido no

arquivo original, ‘testesom.wav’. Dessa maneira, o resultado audível esperado deve ser o mais

próximo possível do sinal original, de modo que as distorções introduzidas pelo ruído aleatório

não sejam um fator tão relevante na qualidade do áudio restaurado. Para o arquivo corrompido

com SNR de 25dBs, ‘testesom25dB.wav’, foi feita a restauração a partir das técnicas de

Subtração Espectral e de MMSE, representados pelos arquivos ‘testesom25dB_SS.wav’ e

‘testesom25dB_MMSE.wav’ respectivamente. O mesmo procedimento foi usado para o arquivo

corrompido com SNR de 10dBs, gerando os arquivos restaurados ‘testesom10dB_SS.wav’ e

‘testesom10dB_MMSE.wav’, provenientes das técnicas de Subtração Espectral e MMSE,

respectivamente. Abaixo, a figura 6.1 mostra graficamente um trecho do sinal, ‘testesom.wav’.

Page 47: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

47

Figura 6.1 – Arquivo ‘testesom.wav’.

Para fins comparativos entre as regras de supressão e para poder mostrar visualmente um

resultado da redução de ruído, foi escolhido o processo de redução de ruído para o sinal com

SNR de 10dB, já que ele apresenta resultados mais expressivos, o que torna mais simples a

visualização dos mesmos. A figura 6.2 é referente ao arquivo ‘testesom10dB.wav’, ou seja, o

arquivo original somado com o ruído aleatório controlado para obter SNR de 10dB.

Figura 6.2 – Arquivo ‘testesom10dB.wav’

Nota-se, claramente, na figura 6.2, o surgimento de ruído somado ao sinal original,

causando distorções por todo o espectro de freqüências. Esse ruído só poderá ser removido

Page 48: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

48

usando técnicas específicas de processamento, como a STSA. Subjetivamente, o áudio se torna

muito desagradável do ponto de vista do ouvinte, o que torna certos trechos da fala,

praticamente, irreconhecíveis. É nessa ocasião que é executado o algoritmo desenvolvido neste

trabalho. A figura 6.3 mostra o sinal processado para a regra de supressão por Subtração

Espectral.

Figura 6.3 – Restauração por Subtração Espectral (‘testesom10dB_SS.wav’).

Apesar do fato de visualmente não ser possível tirar amplas conclusões a respeito da

restauração executada, nitidamente, o resultado é um sinal muito mais limpo e com

características bem próximas do sinal original. Percebe-se também que, no trecho inicial da fala,

na qual a amplitude do sinal é muito baixa, a técnica de Subtração Espectral, praticamente,

atenua todo o sinal original. Isso ocorre em função da estimativa de ruído do programa utilizar a

técnica VAD (Voice Activity Detection). Em trechos de amplitude muito baixa, a potência do

ruído pode ser muito maior que do sinal e, nesses casos, o nível do sinal está abaixo do limiar

pré-estabelecido no VAD. Isso faz com que o algoritmo interprete que aquele segmento é

composto somente por ruído branco, sendo assim, eliminando completamente o sinal nesse

trecho. Em função desse problema, é, praticamente, impossível trabalhar com objetos sonoros

em que a relação sinal-ruído é muito baixa. Na prática, uma SNR de 10dB foi possível de ser

executada, mas já mostra alguns trechos com deficiência, os quais não ocorreram com a SNR de

25dB.

Embora se torne evidente o cancelamento do ruído de fundo do tipo “hiss”, o grande

problema da regra de supressão por Subtração Espectral é o surgimento do ruído musical. Como

já foi explicado nos capítulos anteriores, o ruído musical surge em função da grande variação do

Page 49: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

49

ganho entre quadros sucessivos do sinal, causados pela Subtração Espectral. Seu efeito audível

pode ser bastante irritante ao ouvido, uma vez que surge um som agudo ou “zumbido” em torno

da voz.

A regra de supressão criada por Ephraim e Malah, chamada de MMSE, chega a

resultados semelhantes à Subtração Espectral, mas a sua grande característica é ser muito eficaz

contra o ruído musical. Dessa maneira, o resultado ao ouvinte pode ser muito mais agradável, já

que não gera mais o ruído musical. Apesar disso, a regra de supressão MMSE não é tão eficaz na

eliminação do “hiss” quanto a Subtração Espectral. Isso ocorre em função do ganho proposto

pela técnica MMSE ter características mais suaves do que o proposto pela Subtração Espectral.

Desse modo, tem-se ganhos adjacentes entre os quadros com uma diferença menor, o que,

realmente, é bom para eliminar os artefatos do ruído musical. Entretanto, para alguns quadros,

esse ganho não condiz com o esperado. Por exemplo, considerando que para um quadro qualquer

do sinal, o ganho calculado pela Subtração Espectral deve ser 1, ou seja, não é atenuado, e para o

próximo quadro ele deveria ser 0, totalmente cancelado.

A MMSE faz com que os valores citados acima não sofram uma diferença tão grande

entre quadros consecutivos, o que pode não ser o conveniente, uma vez que aquele quadro em

que o ganho calculado pela Subtração Espectral deveria ser 0, ou seja, completamente atenuado.

Isso faz com que o arquivo restaurado pela MMSE ainda tenha uma pequena presença de ruído

do tipo “hiss”. Contudo, mesmo assim, a técnica MMSE parece ser, subjetivamente, melhor do

que a técnica de Subtração Espectral, para o caso do arquivo ‘testesom.wav’, por eliminar

completamente o efeito do ruído musical. A figura 6.4 mostra o sinal processado para a regra de

supressão MMSE.

Figura 6.4 – Restauração pela regra de supressão MMSE (‘testesom10dB_MMSE.wav’)

Page 50: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

50

O sinal ‘amostra.wav’ foi tirado, diretamente, de um material do curso de línguas da

Faculdade de Letras da PUCRS, o qual estava armazenado em fitas analógicas. Esse sinal possui

uma presença de ruído do tipo “hiss” bastante significativa, ideal para por em prova a eficiência

do algoritmo para uma situação real. Realmente, os resultados, tanto para a regra de supressão

por Subtração Espectral quanto para a MMSE, foram bastante satisfatórios. Nesse experimento,

subjetivamente, a técnica por Subtração Espectral parece ter um desempenho melhor. Nessa

situação não surgiu o efeito do ruído musical. Isso se deve em função de que a relação sinal-

ruído desse áudio é, provavelmente, maior do que as feitas com as amostras anteriores, em que

eram de 25dB e 10dB, o que é, nitidamente, percebido.

Page 51: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

51

7. Conclusões

A partir dos apontamentos feitos neste trabalho, pode-se concluir que as técnicas STSA

são, realmente, eficazes pois obtiveram resultados satisfatórios, utilizando baixos custos

computacionais, o que faz da STSA uma das técnicas mais utilizadas no campo de restaurações

fonográficas.

Comparando as duas regras de supressão utilizadas, não foi possível obter uma medida

objetiva entre o sinal original e o restaurado. Apesar de terem sido feitos testes para a medição

da relação sinal-ruído, os mesmos não conseguiram representar, objetivamente, uma medida que

se aproximasse da avaliação subjetiva, que serviu como referência de qualidade na comparação

das técnicas. Isso se deve ao fato de que o sinal restaurado é, fortemente, alterado, perdendo

componentes sem grandes expressões para o ouvido humano, mas que tornam essa medida

inapropriada para ser um conceito de qualidade.

Como o fato em questão neste trabalho foi a comparação entre duas regras de supressão

da STSA, Subtração Espectral e a MMSE, diversos parâmetros iniciais, como tamanho de janela

e salto entre quadros (shift percentage), não foram modificados. Da mesma maneira, o método

para a estimação de ruído utilizado foi o VAD, mas nada impede a utilização de outros

parâmetros.

A regra de supressão por Subtração Espectral, embora muito eficaz na redução de hiss,

pode acrescentar o inconveniente ruído musical ao objeto restaurado. De certa maneira, a MMSE

consegue fazer a restauração do áudio, eliminando, completamente os artefatos do ruído musical,

porém essa regra de supressão já mostra que não é tão eficiente quanto a Subtração Espectral no

que diz respeito à eliminação do hiss.

Portanto, é difícil afirmar qual das duas regras de supressão é, subjetivamente, a melhor.

Isso depende de fatores que vão desde o nível de ruído introduzido no sinal original até o gosto

pessoal que cada ouvinte tem.

Page 52: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

52

8. Referências Bibliográficas

[1] CAPPÉ, OLIVIER. Evaluation of Short-Time Spectral Attenuation Techniques

for the Restoration of Musical Recordings. 3. ed. IEEE Transactions on speech and

audio processing., 1995.

[2] ESQUEF, PAULO A. A. Model-Based Analysis of Noisy Musical Recordings

with Application to Audio Restoration. Espoo, Finlandia 2004. Dissertação (Doutorado

em ciências da tecnologia) – Departamento de Engenharia Elétrica e Comunicações,

Helsinki University of Technology.

[3] GODSILL, SIMON; RAYNER, PETER; CAPPÉ, OLIVIER. Digital Áudio

Restoration. Paris; Cambridge: Kluwer Academic Publishers, 2002.

[4] J. S. LIM AND A. V. OPPENHEIM, “Enhancement and bandwidth compression

of noisy speech,” Proc. IEEE, vol. 67, no. 12, pp. 1586-1604, dec. 1979.

[5] P. A. A. ESQUEF, L.W. P. BISCAINHO, V. V¨ALIM AKI, AND M.

KARJALAINEN, “Removal f Long Pulses from Audio Signals Using Two-Pass Split-

Window

Filtering,” Munich, Germany, May 2002.

[6] S. J. GODSILL AND P. J. W. RAYNER, Digital Audio Restoration – A

Statistical

Model Based Approach. Springer-Verlag, London, UK, 1998.

[7] EPHRAIM, YARIV; MALAH, DAVID, Speech Enhancement Using a Minimum

Mean Square Error Short-Time Spectral Amplitude Estimator. IEEE Transactions on

speech and audio processing, vol. ASSP-32, No. 6, December 1984.

Page 53: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

53

[8] WOLF, PATRICK J.; GODSILL, SIMON J., Perceptually Motivated

Approaches to Music Restoration. Cambridge, UK, 2001.

[9] CHIOVATO, ANDRÉ GODOI, Avaliação da Relação entre Qualidade

Perceptual de Fala e Taxa de Acerto de Sistemas de Reconhecimento de Fala em

Ambientes Ruidosos. Dezembro 2005.

Page 54: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

54

9. Anexos

9.1. Programa MMSE.m

9.1.1. MMSE

function output=MMSE(signal,fs,IS)

%************************************************** **************************************

%Shor time Spectral Amplitude com metodo Minimum Mean Square Error para remoç~ao de ruido

%de fundo em voz. signal e a entrada, voz com ruido, fs eh a frequencia de amostragem e IS

%(opcional eh o tempo inicial com silencio. O valor padrao eh 0.25 assumindo que os primeiros

%0.25 segundos do sinal eh um periodo inativo de voz e sera utilizado para a estimativa inicial

%do ruido. A saida eh a estimativa do sinal limpo, sinal restaurado.

%Christian I. Vogt

%Ultima modificacao: 06/11/2006

%************************************************** **************************************

if (nargin<3 | isstruct(IS))% nargin - numero de entradas da funcao

IS=.25; %Silencio inicial ou parte com somente ruido em segundos

end

W=fix(.025*fs); %Comprimento da janela eh 25ms; fix - arredonda as casas decimais

SP=.4; %Shift percentage eh 40% (10ms) %O metodo Overlap-Add trabalha bem com esse valor(.4)

wnd=hamming(W);

pre_emph=0;

signal=filter([1 -pre_emph],1,signal);

NIS=fix((IS*fs-W)/(SP*W) +1);%Numero de segmentos iniciais com silencio

y=segment(signal,W,SP,wnd); % Esta funcao corta o sinal em frames

Y=fft(y);%transformada rapida de fourier

YPhase=angle(Y(1:fix(end/2)+1,:)); %Fase do sinal com ruido

Y=abs(Y(1:fix(end/2)+1,:));%Specrograma

numberOfFrames=size(Y,2); %Numero de frames do sinal de entrada

FreqResol=size(Y,1);

Page 55: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

55

N=mean(Y(:,1:NIS)')'; %Media do espectro de potencia inicial de ruidoinitial Noise Power Spectrum mean

LambdaD=mean((Y(:,1:NIS)').^2)';%Variancia do espectro de potencia inicial

alpha=.99; %Este valor e um coeficeiente para aplainar o SNR a priori para o calculo do ganho final.

NoiseCounter=0; %Inicializacao em zero. Eh um contador utilizado para segmentos ruidosos consecutivos na funcao VAD.

NoiseLength=9;%Eh um fator de aplainamento para a atualizacao do ruido. Se for 0, eh a propria amostra de ruido.

G=ones(size(N));%Ganho inicial usado para calcular o primeiro valor da Relacao sinal ruido a priori

Gamma=G;

Gamma1p5=gamma(1.5); %Funcao gamma para 1.5 utilizada no ganho

X=zeros(size(Y)); % Initializacao X (memory allocation)

h=waitbar(0,'Wait...');

for i=1:numberOfFrames

%%%%%%%%%%%%%%%%VAD e estimativa de ruido (Inicio)

if i<=NIS % Se o frame esta entre os iniciais ignora o calculo do VAD, ou seja, eh ruido

SpeechFlag=0;

NoiseCounter=100;

else % Senao calcula VAD

[NoiseFlag, SpeechFlag, NoiseCounter, Dist]=vad(Y(:,i),N,NoiseCounter); %Magnitude Spectrum Distance VAD

end

if SpeechFlag==0 % Se n~ao ha voz atualiza os parametros de ru´ido.

N=(NoiseLength*N+Y(:,i))/(NoiseLength+1); %Atualiza e aplaina a media do ruido

LambdaD=(NoiseLength*LambdaD+(Y(:,i).^2))./(1+NoiseLength); % Atualiza e aplaina a variancia do ruido

end

%%%%%%%%%%%%%%%%%%%VAD e estimativa de ruido (Fim)

gammaNew=(Y(:,i).^2)./LambdaD; %postiriori SNR

xi=alpha*(G.^2).*Gamma+(1-alpha).*max(gammaNew-1,0); %Priori SNR

Gamma=gammaNew;

nu=Gamma.*xi./(1+xi); %Funcao usada no calculo do ganho

G=(Gamma1p5*sqrt(nu)./Gamma).*exp(-nu/2)...

.*((1+nu).*besseli(0,nu/2) +nu.*besseli(1,nu/2)); %MMSE Ganho

Indx=find(isnan(G) | isinf(G)); %As vezes o valor do ganho pode se tornar infinito

%os quais s~ao repostos pelo wiener

%O ganho nestes casos eh:

G(Indx)=xi(Indx)./(1+xi(Indx)); %Filtro de Wiener para valores fora da faixa

X(:,i)=G.*Y(:,i); %Obtem o novo valor limpo

waitbar(i/numberOfFrames,h,num2str(fix(100*i/numberOfFrames)));

end

Page 56: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

56

close(h);

output=OverlapAdd2(X,YPhase,W,SP*W); %Sintese Overlap-add da voz

output=filter(1,[1 -pre_emph],output); %Desfaz o efeito da pre-enphasis

9.1.2. OverlapAdd

function ReconstructedSignal=OverlapAdd2(XNEW,yphase,windowLen,ShiftLen);

%Y=OverlapAdd(X,A,W,S);

%Y eh o sinal reconstruido do espectrograma. X eh a matriz

%em que cada coluna esta com um segmento da fft do sinal. A eh o angulo de fase

%do espectro o qual deve ter a mesma dimens~ao de X. Se n~ao for dada

%o angulo de fase de X eh usado o qual no caso de valores reais eh

%zero (assumindo que eh magnitude). W eh o comprimento da janela em segmentos no tempo.

%Se nao for dado o comprimento assume ser duas vezes maior que o comprimento da janela fft.

%S eh o comprimento do shift no processo de segmentacao. Y eh o sinal reconstruido no tempo

if nargin<2

yphase=angle(XNEW);

end

if nargin<3

windowLen=size(XNEW,1)*2;

end

if nargin<4

ShiftLen=windowLen/2;

end

if fix(ShiftLen)~=ShiftLen

ShiftLen=fix(ShiftLen);

disp('The shift length have to be an integer as it is the number of samples.')

disp(['shift length is fixed to ' num2str(ShiftLen)])

end

[FreqRes FrameNum]=size(XNEW);

Spec=XNEW.*exp(j*yphase);

if mod(windowLen,2) %se FreqResol eh impar

Spec=[Spec;flipud(conj(Spec(2:end,:)))];

else

Spec=[Spec;flipud(conj(Spec(2:end-1,:)))];

end

sig=zeros((FrameNum-1)*ShiftLen+windowLen,1);

weight=sig;

for i=1:FrameNum

start=(i-1)*ShiftLen+1;

spec=Spec(:,i);

Page 57: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

57

sig(start:start+windowLen-1)=sig(start:start+windowLen-1)+real(ifft(spec,windowLen));

end

ReconstructedSignal=sig;

9.1.3. Segment

function Seg=segment(signal,W,SP,Window)

% SEGMENT corta o sinal em segmentos de janela overlapp

% A= SEGMENT(X,W,SP,WIN) retorna uma matriz na qual as colunas sao segmentadas

% em frames do sinal de entrada de uma dimensao, X. W eh o numero de amostras por janela

% o valor default eh W=256. SP eh o shift

% percentage, e o valor default eh SP=0.4. WIN eh a janela que eh multiplicada por

% cada segmento e seu comprimento deve ser W. A janela padrao eh hamming

if nargin<3

SP=.4;

end

if nargin<2

W=256;

end

if nargin<4

Window=hamming(W);

end

Window=Window(:); %torna um vetor de colunas

L=length(signal);

SP=fix(W.*SP);

N=fix((L-W)/SP +1); %numero de segmentos

Index=(repmat(1:W,N,1)+repmat((0:(N-1))'*SP,1,W))';

hw=repmat(Window,1,N);

Seg=signal(Index).*hw;

9.1.4. VAD

function [NoiseFlag, SpeechFlag, NoiseCounter, Dist]=vad(signal,noise,NoiseCounter,NoiseMargin,Hangover)

%[NOISEFLAG, SPEECHFLAG, NOISECOUNTER,

%DIST]=vad(SIGNAL,NOISE,NOISECOUNTER,NOISEMARGIN,HANGOVER)

%Spectral Distance Voice Activity Detector

%SIGNAL sao os frames do spectro de magnitude os quais sao rotulados como voz ou ruido.

%NOISE eh o formato do espectro de magnitude (estimativa)

%NOISECOUNTER eh o numero de frames com ruido consecutivos. NOISEMARGIN

Page 58: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

58

%(default 3)eh o limiar da distancia espectral. HANGOVER ( default 8 )eh o numero de

%segmentos com ruido apos o reset do SPEECHFLAG. NOISEFLAG eh setado para um se o segmento eh rotuladocomo ruido.

%NOISECOUNTER retorna o numero de segmentos de ruido consecutivos, este valor eh resetado para zero

%quando um segmento de voz eh detectado. DIST eh a distancia espectral

if nargin<4

NoiseMargin=3;

end

if nargin<5

Hangover=8;

end

if nargin<3

NoiseCounter=0;

end

FreqResol=length(signal);

SpectralDist= 20*(log10(signal)-log10(noise));

SpectralDist(find(SpectralDist<0))=0;

Dist=mean(SpectralDist);

if (Dist < NoiseMargin)

NoiseFlag=1;

NoiseCounter=NoiseCounter+1;

else

NoiseFlag=0;

NoiseCounter=0;

end

% Detecta peridodos de somente ruido e atenua o sinal

if (NoiseCounter > Hangover)

SpeechFlag=0;

else

SpeechFlag=1;

end

Page 59: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

59

9.2. Programa Subtração Espectral (SS.m)

9.2.1. SS

function output=SS(signal,fs,IS)

%************************************************** **************************************

%Subtraçao Espectral de Amplitude

%Signal eh o sinal ruidoso, fs eh a frequencia de amostragem e IS eh o periodo inicial

%ruidoso (somente ruido)em segundos. Como padrao eh 0.25 segundos.

%Christian I. Vogt

%Ultima modificacao: 06/11/2006

%************************************************** **************************************

if (nargin<3 | isstruct(IS))% nargin - numero de entradas da funcao

IS=.25; %Silencio inicial ou parte com somente ruido em segundos

end

W=fix(.025*fs); %Comprimento da janela eh 25ms; fix - arredonda as casas decimais

nfft=W;

SP=.4; %Shift percentage eh 40% (10ms) %O metodo Overlap-Add trabalha bem com esse valor(.4)

wnd=hamming(W);

NIS=fix((IS*fs-W)/(SP*W) +1);%Numero de segmentos iniciais com silencio

Gamma=1;%Magnitude Power (1 for magnitude spectral subtraction 2 for power spectrum subtraction)

y=segment(signal,W,SP,wnd); % Esta funcao corta o sinal em frames

Y=fft(y);%transformada rapida de fourier

YPhase=angle(Y(1:fix(end/2)+1,:)); %Fase do sinal com ruido

Y=abs(Y(1:fix(end/2)+1,:));%Specrograma

numberOfFrames=size(Y,2); %Numero de frames do sinal de entrada

FreqResol=size(Y,1);

N=mean(Y(:,1:NIS)')'; %Media do espectro de potencia inicial de ruidoinitial Noise Power Spectrum mean

NoiseCounter=0;%Inicializacao em zero. Eh um contador utilizado para segmentos ruidosos consecutivos na funcao VAD.

NoiseLength=9;%Eh um fator de aplainamento para a atualizacao do ruido. Se for 0, eh a propria amostra de ruido.

Beta=.03;%fator de atenuacao

YS=Y; %Y Media da magnitude

for i=2:(numberOfFrames-1)

YS(:,i)=(Y(:,i-1)+Y(:,i)+Y(:,i+1))/3;%faz a media com o frame anterior e o posterior.

end

for i=1:numberOfFrames

Page 60: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

60

[NoiseFlag, SpeechFlag, NoiseCounter, Dist]=vad(Y(:,i).^(1/Gamma),N.^(1/Gamma),NoiseCounter); %Magnitude Spectrum Distance

VAD

if SpeechFlag==0

N=(NoiseLength*N+Y(:,i))/(NoiseLength+1); %Atualiza e aplaina a media do ruido

X(:,i)=Beta*Y(:,i);%caso o trecho for de ruido, entao atenua o sinal

else

D=YS(:,i)-N; % Specral Subtraction

X(:,i)=max(D,0);

end

end

output=OverlapAdd2(X.^(1/Gamma),YPhase,W,SP*W);

9.2.2. OverlapAdd

function ReconstructedSignal=OverlapAdd2(XNEW,yphase,windowLen,ShiftLen);

%Y=OverlapAdd(X,A,W,S);

%Y eh o sinal reconstruido do espectrograma. X eh a matriz

%em que cada coluna esta com um segmento da fft do sinal. A eh o angulo de fase

%do espectro o qual deve ter a mesma dimens~ao de X. Se n~ao for dada

%o angulo de fase de X eh usado o qual no caso de valores reais eh

%zero (assumindo que eh magnitude). W eh o comprimento da janela em segmentos no tempo.

%Se nao for dado o comprimento assume ser duas vezes maior que o comprimento da janela fft.

%S eh o comprimento do shift no processo de segmentacao. Y eh o sinal reconstruido no tempo

if nargin<2

yphase=angle(XNEW);

end

if nargin<3

windowLen=size(XNEW,1)*2;

end

if nargin<4

ShiftLen=windowLen/2;

end

if fix(ShiftLen)~=ShiftLen

ShiftLen=fix(ShiftLen);

disp('The shift length have to be an integer as it is the number of samples.')

disp(['shift length is fixed to ' num2str(ShiftLen)])

end

[FreqRes FrameNum]=size(XNEW);

Spec=XNEW.*exp(j*yphase);

if mod(windowLen,2) %se FreqResol eh impar

Page 61: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

61

Spec=[Spec;flipud(conj(Spec(2:end,:)))];

else

Spec=[Spec;flipud(conj(Spec(2:end-1,:)))];

end

sig=zeros((FrameNum-1)*ShiftLen+windowLen,1);

weight=sig;

for i=1:FrameNum

start=(i-1)*ShiftLen+1;

spec=Spec(:,i);

sig(start:start+windowLen-1)=sig(start:start+windowLen-1)+real(ifft(spec,windowLen));

end

ReconstructedSignal=sig;

9.2.3. Segment

function Seg=segment(signal,W,SP,Window)

% SEGMENT corta o sinal em segmentos de janela overlapp

% A= SEGMENT(X,W,SP,WIN) retorna uma matriz na qual as colunas sao segmentadas

% em frames do sinal de entrada de uma dimensao, X. W eh o numero de amostras por janela

% o valor default eh W=256. SP eh o shift

% percentage, e o valor default eh SP=0.4. WIN eh a janela que eh multiplicada por

% cada segmento e seu comprimento deve ser W. A janela padrao eh hamming

if nargin<3

SP=.4;

end

if nargin<2

W=256;

end

if nargin<4

Window=hamming(W);

end

Window=Window(:); %torna um vetor de colunas

L=length(signal);

SP=fix(W.*SP);

N=fix((L-W)/SP +1); %numero de segmentos

Index=(repmat(1:W,N,1)+repmat((0:(N-1))'*SP,1,W))';

hw=repmat(Window,1,N);

Seg=signal(Index).*hw;

Page 62: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

62

9.2.4. VAD

function [NoiseFlag, SpeechFlag, NoiseCounter, Dist]=vad(signal,noise,NoiseCounter,NoiseMargin,Hangover)

%[NOISEFLAG, SPEECHFLAG, NOISECOUNTER,

DIST]=vad(SIGNAL,NOISE,NOISECOUNTER,NOISEMARGIN,HANGOVER)

%Spectral Distance Voice Activity Detector

%SIGNAL sao os frames do spectro de magnitude os quais sao rotulados como voz ou ruido.

%NOISE eh o formato do espectro de magnitude (estimativa)

%NOISECOUNTER eh o numero de frames com ruido consecutivos. NOISEMARGIN

%(default 3)eh o limiar da distancia espectral. HANGOVER ( default 8 )eh o numero de

%segmentos com ruido apos o reset do SPEECHFLAG. NOISEFLAG eh setado para um se o segmento eh rotuladocomo ruido.

%NOISECOUNTER retorna o numero de segmentos de ruido consecutivos, este valor eh resetado para zero

%quando um segmento de voz eh detectado. DIST eh a distancia espectral

if nargin<4

NoiseMargin=3;

end

if nargin<5

Hangover=8;

end

if nargin<3

NoiseCounter=0;

end

FreqResol=length(signal);

SpectralDist= 20*(log10(signal)-log10(noise));

SpectralDist(find(SpectralDist<0))=0;

Dist=mean(SpectralDist);

if (Dist < NoiseMargin)

NoiseFlag=1;

NoiseCounter=NoiseCounter+1;

else

NoiseFlag=0;

NoiseCounter=0;

end

% Detecta peridodos de somente ruido e atenua o sinal

if (NoiseCounter > Hangover)

SpeechFlag=0;

else

SpeechFlag=1;

end

Page 63: T CNICAS DE REDU O DE RU DO PARA UDIO 7educatec.eng.br/engenharia/Monografia de apoio/Tecnicas de reducao... · indesejada ao sinal de áudio, o qual ocorre como resultado do processo

63

9.3. Programa gerador de ruído (noisegen.m)

%************************************************** *************************************************** *****

% PROGRAMA INSERÇÃO DE RUÍDO

%y(n) = audio com ruido

%s(n) = audio sem ruido

%r(n) = ruido

%

%Fs = frequencia do audio de entrada

%bits = quantizaçao

%

%************************************************** *************************************************** *****

%

[s,Fs,bits] = wavread('testesom');

%************************************************** *************************************************** *****

%calculo do S(RMS)

[n,m]=size(s); % tamanho da entrada

x=s;%para nao usar s

x=x.^2;

B = sum(x);

B=B/n;

SRMS=sqrt(B)

%************************************************** *************************************************** *****

%Calculo do R(RMS)

%Para isso precisa-se saber qual valor de sinal ruido, RSR, para encontrar RRMS

%Para 25db

%25=20*log(SRMS/RRMS);

RRMS=(SRMS/(10^(25/20)))% Aqui é especificado a quantidade de ruído desejado, neste caso, 25dB

%************************************************** *************************************************** *****

%Para gerar o valor do ruido

r=RRMS*randn(n,1); Gera amostras randomicas, que possuem média nula, multiplicadas pelo valor RMS

%esse valor será somado ao áudio original

%************************************************** *************************************************** *****

%funcao de teste. Desconsiderar

%Calculo do R(RMS) - deve dar 25db

%r=r.^2;

%B = sum(r);

%B=B/n;

%RRMS=sqrt(B)

%************************************************** *************************************************** *****

y=s+r; %soma do sinal original mais o ruido

wavwrite(y,Fs,'testesom25db');%grava o arquivo com ruido com o nome de testesom25db