Veri akışında sinyal yumuşatma / çarpmaların algılanması


11

(DÜZENLEME: Bu soru , ham WAV'dan İkili Manyetik Şeritli Kart Verilerinin Çıkarılmasından kaynaklanmaktadır )

İşte benim sinyalim (üst satır) ve uygulanan temel bir IIR filtresi (alt satır)

resim açıklamasını buraya girin

(DÜZENLEME: benim görevim sinyali ikili 0 (frekans F) ve ikili 1'e (frekans 2F) - bu yüzden buna F2F denir. ekran görüntüsü önemsiz görünüyor, çift zirve elde etme ve gerçek zirveler arasındaki olukta yanlış pozitifler alma konusunda potansiyel bir sorun var.)

Sorum şu: Bu sinyali düzeltmek için hangi yöntemler mevcut? IIR benim en iyi seçeneğim mi?

En az üç olasılık görebiliyorum:

  • IIR y [n] = 0,9 * y [n-1] + 0,1 * x [n] burada x [0 olduğunda y [x] = 0

  • Hareketli / pencereli ortalama - çevredeki d = 10 örnek alanlı bir Bell eğrisi her iki tarafa yerleştirin ve bellSmooth (x) = integral [xw, x + w] {bell (k) .samp (k)} dk

  • Beklenen frekansı belirleyin ve FFT / daha yüksek sıralı kutuları kaldırın / FFT'yi tersine çevirin

Kendi sorumu yanıtlamış olabilirim, ama muhtemelen bu eksik ve yanlış terminolojiyi kullandığımdan eminim. Ayrıca gerçekten artılarını ve eksilerini tahmin edemiyorum. Son yöntem, temel sinyal frekansı hakkında bilgi gerektirdiğinden daha az çekicidir. Ama sonra ikinci yöntem de öyle; Uygun bir pencere uzunluğu seçmem gerekiyor.

Başka yöntem var mı?


6
Orijinal sinyalin hangi özelliklerini korumaya / ölçmeye çalışıyorsunuz? Örneğin, tepe noktaları arasındaki zamanlama, tepe yüksekliği, bir eşiğin üzerindeki zaman miktarı, başka bir şey?
Martin Thompson

Tepe noktaları arasındaki zamanlama ... ve hatta bunun çok doğru olması gerekmez - bu bir F2F sinyalidir (sinyal kaynağına referans vermek ve bir bağlam vermek için soruyu değiştireceğim)
P i

Bu çevrimiçi veya çevrimdışı işleme için mi?

Tez konusu veri akışında gürültü yumuşatma. Bu makaleyi veya konuyu beğendiniz mi?

Yanıtlar:


6

Ortalamalamanın Etkileri

Hareketli bir ortalama filtre kullanmak, sinyaldeki düzensizlikleri düzeltir. Gürültü E / N olur, burada N hareketli ortalama filtrenin uzunluğudur. Bir MA kullanmanın yan etkisi, sinyal piklerinin daha geniş ve sığ hale gelmesidir.

Ek olarak, sinyalin frekans içeriği değişecektir. Zaman alanındaki hareketli bir ortalama filtre, frekans etki alanı sinyalini samimi bir işlevle her şeyin dağıldığı gibi döndürmekle aynı şeydir.

Tepe Algılama Algoritması Tepe algılama 9/10 mühendislik problemlerinde yaygın bir sorundur. (gerçekte değil, ama bir TON onlara bağlı)

Tipik olarak bu yapılır:

Ortalama Eşik

1) Look for all peaks in your signal. (i.e., a point that is larger than the two
   adjacent points
2) take this list of points and for each one of them compute:
   med_threshold = median(Peak,Width) + constantThresholmedian   where median is the
   median value of the data centered at "Peak" with Width being the number of 
   points to look at.
       a) The Width(usually written as Lambda in literature) and constantThreshold
          (usually written as C) are determined by trial and error and using the ROC
          curve (Acronym below)
3) if the peak's magnitude is above this threshold accept it as a true peak. 
   Else: Discard it, its a false peak
4) Generate a Receiver Operating Characteristic Curve(ROC) to how well the algorithm
   is performing.

İşte bir örnek:

suppose we have the signal X = [ 0 0 0 0 1 3 **9** 2 1 1 **2** 1 1 ] 
1) 9 and 2 are both potential peaks 
2) Lets use a window of 5 and  a threshold =2
so at 9 we have [1 3 9 1 2] -> [1 1 2 3 9]  so Median(9,5) = 2
9 > 2 +2, therefor its a peak
Lets take a look at 2: [ 1 1 2 1 1] -> [1 1 1 1 2 ] Median(2,5) = 1
2 < 1+2, therefor it is NOT a peak. 

Frekansın Belirlenmesi

Artık zirvenin zaman lokalizasyonunu etkili bir şekilde bulduğunuza göre frekanslarını bulmaya çalışın:

1) Use the locations of the peaks to generate a pulse train
      a) this means create sum(Dirac_delta[t-L(n)]) where L(n) is the nth time that 
      you've localized through median thresholding
2) Apply FFT Algorithm
3) Look for largest peak. 

Alternatif Frekans Tahmini

1) Think of this like a beat in a piece of music (I learned about thresholding by
   researching Onset Detection.
2) Compute the average time distance between detected peaks.
3) now call your results BPM or PPM (pulses per minute) 

Ek Araştırma Alanları

En yüksek sinyalden memnun olsanız da, Başlangıç ​​Algılama adı verilen farklı bir sorun canavara uygulanan algoritmalar vardır.

Başlangıç ​​Algılama, Müzik Bilgi Erişim Araştırmalarında büyük bir alandır. Bir notanın ne zaman çalınacağını belirlemek için kullanılır.

Başlangıçta Müzik Örneği

Teyp kafası sinyalinizi yüksek oranda örneklenmiş bir sinyal olarak düşünüyorsanız, bu makalede bulacağınız algoritmaların çoğunu uygulayabilirsiniz:

http://www.elec.qmul.ac.uk/people/juan/Documents/Bello-TSAP-2005.pdf


"[1 3 9 1 2]" Pencereniz width = 5 ise 2 sayısını nasıl alıyorsunuz?
Spacey

Numaraları nasıl sıraladığımı fark et. medyan, sıralı kümedeki orta sayıdır. [1 1 2 3 9] <- sıralı, orta sayı 2.
CyberMen

Sayılarınıza bakın, onlar [1 3 9 1 1]. 2'yi nereden aldın?
Spacey

@Mohammad üzerinde çalışırken birkaç düzenleme yaptı, silindi. Sabit.
CyberMen

Harika teşekkürler! Şimdi, müzikal bağlamda 'not' dediğinde, bu tek frekans mı, yoksa birçok frekans mı demek? Yoksa önemli değil mi? Bunun dar bant olan diğer uygulamalarla (tek ton) da kullanılmasının bir yolu olup olmadığını görmek istiyorum.
Spacey
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.