Por que alguém usaria uma janela de Hann ou Bartlett?


9

Suponha que estamos projetando um filtro FIR passa-baixo e quero usar uma dessas três janelas: Bartlett, Hann ou Hamming. De Oppenheim & Schafer's Discrete-Time Signal Processing, 2ª Ed. , P. 471:}

insira a descrição da imagem aqui

Todos os três fornecem a mesma largura de banda de transição:

Δω=8πN
onde é a ordem do filtro e é considerado grande o suficiente.N

No entanto, o overshoot (vamos chamá-lo ) é diferente para cada janela, e a seguinte desigualdade é válida:δ

δHumammEung<δHumann<δBumarteuett

Portanto, se usarmos uma janela Hamming, obteremos o menor overshoot e uma banda de transição com width . Se usarmos uma das outras duas janelas, a largura da banda de transição será a mesma, mas o excesso aumentará.Δω

Isso me leva a pensar que não há caso em que alguém usaria uma janela Hann ou Bartlett, pois a janela Hamming é melhor que elas: melhora um aspecto ( ), permanece o mesmo em outro ( )δΔω

A pergunta é: por que alguém escolheria uma janela de Hann ou Bartlett se uma de Hamming sempre pode ser usada?


Você poderia fornecer algum esclarecimento - você tem referências para essas equações? O que você quer dizer com "superação" neste contexto?
— Martin Thompson

@MartinThompson Acabei de adicionar a referência. Por ultrapassagem, quero dizer o pico da resposta em frequência devido à descontinuidade do filtro passa-baixa ideal que se tenta aproximar.
— Tendero

Respostas:


10

Ao revisar as Figuras de Mérito de Fred Harris para várias janelas (Tabela 1 neste link ), Hamming é comparado ao Hanning (Hann) em vários valores deα e a partir disso fica claro que o Hanning proporcionaria maior rejeição à banda de parada (o clássico Hann é com α=2e da tabela a queda do lobo lateral é de -18 dB por oitava). Forneci o link, pois você pode ver muitas outras considerações envolvidas na escolha de uma janela para vários aplicativos.

O resultado disso é aparente ao comparar os kernels para uma janela de 51 amostras de Hann e Hamming usando Matlab / Octave. Observe o nível mais alto do primeiro lóbulo lateral com Hann, mas a rejeição é significativamente maior no geral:

Kernels

Pessoalmente, eu não usaria nenhuma janela para o design do filtro. Se alguma janela, eu usaria a janela Kaiser, ou preferencialmente firls. Consulte Design do filtro FIR: Window vs Parks-McClellan e Least-Squares para a discussão relacionada.

Eu convolvi uma Hann de 26 amostras com uma Hamming 26 para criar uma amostra alternativa de 51 "Hann-Hamming" com o seguinte resultado:

lote comparativo Hann-Hamming, Hann, Hamming

ATUALIZAÇÃO: Esse Hann-Hamming (geralmente) não supera uma janela Kaiser de largura semelhante no lóbulo principal:

Kaiser vs Hann-Hamming

Tentei então o que chamo de "SuperKaiser", onde convolvi duas janelas Kaiser de menor comprimento para criar uma janela alternativa de 51 torneiras com o seguinte resultado. Isso foi feito convolvendo Kaiser (26,5,5) com Kaiser (26,5,5), de modo que SuperKaiser (51,5,5) = conv (kaiser (26,5,5), kaiser (26,5,5). À primeira vista, geralmente parece supera o kaiser (51,12), correspondendo à largura do lóbulo principal e fornecendo rejeição superior à faixa de parada na maior parte da faixa de parada.É interessante uma integração do ruído total da faixa de parada sob a premissa de AWGN, para ver se essa nova janela é superior nessas condições (a área relativa sob os dois primeiros lóbulos laterais, onde o SuperKaiser é inferior, compensa completamente toda a melhoria restante da banda de parada?). Se tiver tempo, acrescentarei essa avaliação. Interessante! Como o @A Cidadão em causa astutamente apontou,

SuperKaiser


Oi Dan, obrigado pela sua resposta. Essa mesa tem algo que me parece estranho. Eu acreditava que a janela de Hann era definida univocamente . Nesse artigo, parece que ele tem um parâmetro variávelα. De onde isso vem? Se variarmosα, a janela ainda é uma função Hann, estritamente falando?
— Tendero

O @Tendero fred harris explica em detalhes na página 181 na seção C do link para Cosα(X) janelas, e lá ele diz que a janela Hann é especificamente com α=2. Eu deixei isso mais claro na resposta, obrigado!
— Dan Boschen

@ Tendero Então, o que eu acho que faltava na sua tabela de referência, mas uma consideração importante é a queda do lobo lateral. Isso é particularmente preocupante em aplicativos com várias amostragens, já que pode haver muitas faixas de alias que se dobram, portanto, um roll-off rápido ajuda a minimizar o crescimento de ruído. Também no interesse de minimizar o ruído geral na presença de AWGN (apenas), uma saída mais rápida às custas de um primeiro lobo mais alto geralmente venceria.
— Dan Boschen

Essa comparação intrigante me fez repetir, mas não consegui os mesmos resultados. Então, olhei mais de perto e parece que você não correspondeu ao parâmetro de Kaiser. Usando o Asdesign, cheguei muito perto com As=108.5para N=32e N[hann]=17, N[ham]=16mas os lóbulos laterais da janela convolved são desiguais e eles oscilar acima Kaiser de. Já vi pessoas "misturando" duas janelas ou mais, mas como aritmética ou média geométrica, nunca foram convoluídas. Ainda assim, os resultados são impressionantes.
— um cidadão preocupado

@aconcernedcitizen Sim, algo não estava certo sobre isso e, de fato, eu estava usando muito rapidamente 30 e 31 para criar uma janela de torneira "equivalente" 51: O que eu estava fazendo era comparar uma janela de 60 amostras com uma 51 torneira Kaiser- Não é justo! Atualizei o post convocando 26 e 26, o que resulta em 51 amostras, o que seria uma comparação justa e, é claro, o Kaiser parece ganhar pelo desempenho geral (embora eu não tenha passado por um ruído total de banda de parada). A participação parece uma escolha natural, pois resulta na multiplicação das respostas de frequência, equivalente a duas janelas em cascata.
— precisa saber é o seguinte

2

Se houver um invasor com conhecimento da janela e tentando focar o espectro de ruído para minimizar seu S / N, uma solução minimax, como uma janela Hamming, pode ser o contador ideal.

A maioria dos ruídos costuma não ser tão intencionalmente maliciosa, tornando uma solução minimax menos ideal, pelo menos estatisticamente falando.

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.