Como posso classificar automaticamente picos de sinais medidos em diferentes posições?

10

Eu tenho microfones medindo o som ao longo do tempo em muitas posições diferentes no espaço. Todos os sons gravados são originários da mesma posição no espaço, mas devido aos diferentes caminhos do ponto de origem para cada microfone; o sinal será (tempo) alterado e distorcido. Um conhecimento a priori tem sido usado para compensar as mudanças de tempo da melhor maneira possível, mas ainda existe alguma mudança de tempo nos dados. Quanto mais próximas as posições de medição, mais semelhantes os sinais.

Estou interessado em classificar automaticamente os picos. Com isso, quero dizer que estou procurando um algoritmo que "observe" os dois sinais de microfone no gráfico abaixo e "reconheça" da posição e da forma de onda que existem dois sons principais e relate suas posições de tempo:

sound 1: sample 17 upper plot, sample 19 lower plot,
sound 2: sample 40 upper plot, sample 38 lower plot

Para fazer isso, planejava fazer uma expansão de Chebyshev em torno de cada pico e usar o vetor dos coeficientes de Chebyshev como entrada para um algoritmo de cluster (k-means?).

Como exemplo, aqui estão partes dos sinais de tempo medidos em duas posições próximas (azul) aproximadas pela série Chebyshev de 5 termos em 9 amostras (vermelhas) em torno de dois picos (círculos azuis): insira a descrição da imagem aqui

As aproximações são bastante boas :-).

Contudo; os coeficientes de Chebyshev para o gráfico superior são:

Clu = -1.1834   85.4318  -39.1155  -33.6420   31.0028
Cru =-43.0547  -22.7024 -143.3113   11.1709    0.5416

E os coeficientes de Chebyshev para o gráfico inferior são:

Cll = 13.0926   16.6208  -75.6980  -28.9003    0.0337
Crl =-12.7664   59.0644  -73.2201  -50.2910   11.6775

Eu gostaria de ter visto Clu ~ = Cll e Cru ~ = Crl, mas este não parece ser o caso :-(.

Talvez haja outra base ortogonal mais adequada neste caso?

Algum conselho sobre como proceder (estou usando o Matlab)?

Agradeço antecipadamente por todas as respostas!

Andy
fonte
11
Parece que você está inerentemente assumindo que a "forma" do pico, quando expressa no espaço vetorial dos coeficientes polinomiais de Chebyshev, é contínua (ou seja, uma pequena alteração na forma de uma parte do pico causará uma pequena alteração nos coeficientes). Você tem motivos para acreditar que esse é o caso? Parece que você escolheu sua ferramenta sem ter certeza de que resolve o problema em questão.
Jason R
Para ser claro, de que maneira você está tentando "classificar" os picos? Você está tentando associar medições de seus vários sensores que correspondem a picos idênticos? Você tem outros meios para medir o atraso relativo a priori e depois usar essas informações para classificação?
Jason R
Olá Jason R. Atualizei minha pergunta para tornar as coisas um pouco mais claras.
Andy
Na verdade, estou tentando reproduzir as etapas do artigo "Interpretação estrutural automatizada através da classificação de horizontes sísmicos" (Borgos et al). Eu tentei explicar o problema em termos mais gerais.
Andy
@ Andy Você pode explicar como esses coeficientes correspondem às linhas vermelhas mostradas aqui? Eles não parecem correlacionar ...
Spacey

Respostas:

2

yEu[n]

yEu[n]=hEu[n]x[n]
hEu[n]é a resposta ao impulso da função de transferência da fonte para o microfone "i". Essas funções de transferência têm diferentes amplitudes e respostas de fase. Se eles forem diferentes o suficiente, os sinais individuais do microfone também serão bem diferentes e não há razão para acreditar que os picos realmente aparecerão no mesmo local. Na maioria dos ambientes acústicos, eles serão "diferentes" se os microfones estiverem com mais de um quarto de comprimento de onda para as frequências de interesse (ou onde houver energia não trivial no espectro).

Se você puder medir as funções de transferência, poderá filtrar cada sinal de microfone com o inverso dessa função de transferência. Isso deve tornar os sinais do microfone muito mais semelhantes e reduzir o efeito da filtragem.

Uma alternativa seria combinar todos os sinais de microfone em um formador de feixe que otimiza a captação da fonte, mas rejeita todo o resto. Isso também deve fornecer uma versão bastante "limpa" do sinal da fonte.

Hilmar
fonte