Reconhecimento de padrões para dados temporais


9

Estou tentando detectar e classificar sons que não são de fala. Atualmente, estou usando uma série de espectros de potência sobrepostos em movimento de sons de treinamento como os recursos que estou procurando.

Quando analiso, estou apenas computando a mesma quantidade de espectros sobrepostos para que o número de recursos seja o mesmo. No momento, o desempenho não é muito bom, só pode detectar o silêncio versus o não silêncio.

Que técnicas existem para esse tipo de detecção de sinal? Uma das minhas preocupações é que, para sons de diferentes comprimentos no domínio do tempo, resultem em comprimentos diferentes de vetores de recursos que, portanto, não posso usar o mesmo classificador, estou preso a isso.

Respostas:


3

Você está tentando detectar fala versus não fala, ou existem classes de sons que não estão falando que você está tentando discriminar? Não estou claro da sua pergunta.

Eu acho que uma primeira abordagem decente seria bloquear seu sinal em quadros e computar os coeficientes cefstrais de frequência de mel (MFCCs), bem como os MFCCs delta (diferenças entre os MFCCs dos quadros adjacentes) e os MFCCs delta-delta (diferenças entre os MFCCs) em quadros separados por dois quadros). Essa não é a única maneira de fazê-lo, mas sem um conhecimento mais específico do domínio do problema, provavelmente é um bom lugar para começar.

Apenas pesquisar no Google deve fornecer uma boa referência sobre como calcular os MFCCs se você ainda não estiver familiarizado com eles. Basicamente, você pega o DFT, pega as magnitudes, calcula as energias dentro das janelas triangulares correspondentes à audição humana, pega o DCT desses coeficientes, essencialmente como uma etapa de compressão, e então descarta os coeficientes de ordem superior, geralmente usando apenas os doze primeiros coeficientes . Eu tenho uma explicação do significado da etapa DCT neste post: Como interpretar a etapa DCT no processo de extração do MFCC?

Você poderia, por exemplo, usar esses coeficientes como recursos para um SVM.


2

Eu acho que você geralmente está olhando para um problema de detecção de fala , que existe desde sempre, e existem inúmeros métodos para fazer isso desenvolvidos até agora. Parece que este artigo , por exemplo, também usa técnicas espectrais, então você pode começar por aí. Uma boa e antiga pesquisa no Google retornará muitos resultados com links para artigos e artigos.

Geralmente, existem duas abordagens um tanto distintas para a detecção de fala. Um permite a suposição de uma boa relação voz / ruído (a voz é mais alta que o ruído ambiente, a música e outros conteúdos irrelevantes) e o outro não faz tais suposições e tenta identificar a presença de fala em sinais muito ruidosos ruído). Dependendo de qual você está tentando fazer, você acabará vendo papéis muito diferentes. Talvez se você esclarecer um pouco sua pergunta e elaborar os tipos de sinais de fala com os quais está trabalhando, este site poderá ser de mais ajuda.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.