Sesli sinyal işleme yeni başlayanlar için yol haritası öğrenme


13

Ses sinyali işlemeyi öğrenmeye başlamak istiyorum. Konunun temellerini atlamış gibi görünen çok sayıda çevrimiçi ve akademik makale bulunmaktadır.

Ses sinyal işlemeyi başarılı bir şekilde öğrenmek için takip etmek için kaba bir yol haritası bilmek istiyorum.

Sinyal analizine başlamadan önce hesabın ilk adım olduğunu okudum.

Bana ses sinyali analizi gereken genel bilginin sadece bir parçası gibi geliyor. Diğer konular müzik teorisi, ses mühendisliği ve programlama.

Bu alandaki bilgiye sahip insanlardan, ses sinyallerinin nasıl analiz edileceğini ve değiştirileceğini / yaratılacağını anlama yönünde olası adımları önerebilirsem.


Bir analiz ve sistem teorisi metninde veya dersinde karşılaşabileceğiniz matematiği anlama şansınız olması için kalkülüsteki bir arka planın (en azından) önemli olacağını kabul ediyorum. Önce orada enfiye edeceğinden emin olurdum.
Jason R

1
Bu slaytlar yardımcı olabilir. Onlar ses işleme ve ses programlama matematiksel olmayan / mühendislik temelleri olsa olsun. blog.bjornroche.com/2011/11/…
Bjorn Roche

Yanıtlar:



9

DFT / FFT / IIR / FIR ve dalgacıkların karmaşıklığına ilk önce sesin ne olduğunu ve sesi dijital olarak temsil etmenin çeşitli yollarının ne olduğunu anlamadan herhangi bir nokta olduğunu düşünmüyorum.

Genel olarak ses nedir (havada veya su veya diğer materyallerde değil):

  • Ses, ses basıncı dalgalarından oluşur
  • Havanın sıkışmasına ve nadir olmasına neden olurlar
  • Bu dalgalar kaynak noktasından dışa doğru yayılır
  • Dalgalar birbirine karışarak tepe ve oluklara neden olabilir
  • Dalgalar malzemeler tarafından emilebilir ve yansıtılabilir

Ses elektriksel olarak nasıl temsil edilir:

  • Mikrofon ve ön amplifikatör, ses basıncı dalgalarını elektrik sinyaline dönüştürür
  • Tipik olarak bu sinyalin hem pozitif hem de negatif voltajı vardır (AC voltajları gibi)
  • Manyetik bantlar bu farklılıkları göründükleri gibi saklarlar, dolayısıyla analog terimi
  • Doygunluk, giriş sinyalinin gücü sistemin sınırlarına eşit olduğunda gerçekleşir (voltajdaki daha fazla artış doğru bir şekilde temsil edilemez)
  • Kırpma, giriş sinyali sistem tarafından temsil edilenden daha yüksek olduğunda oluşur, bu nedenle sinyal kırpılır (veya ekstremitelerde kapatılır)

Ses dijital olarak nasıl temsil edilir:

  • Ses önce ADC (analogdan dijitale dönüştürücü) kullanılarak örneklenmelidir
  • Örnekleme, bir ses sinyalinin periyodik olarak elektriksel olarak ölçülmesini içerir
  • Bu süreye örnekleme hızı denir ve temsil edilebilecek en yüksek frekansı belirler (nyquist sınırı)
  • Nyquist limiti örnekleme hızı / 2'dir (sınıra yaklaştıkça sinyal daha zayıf temsil edilir)
  • Bit aralığı, gürültü tabanını belirler (16 bit için -96dB ve 8 bit için -48dB)
  • Tek bir 16 bit ses örneği -32768 ila 32767 arasında (işaretli) bir değer olabilir (bu, analog sinyalin hem negatif hem de pozitif salınımını temsil edebilir)
  • Bayt başına yalnızca 8 Bit izin verilir (bilgisayar depolama açısından), bu nedenle 16 bitlik bir örnek en az 2 bayt ile temsil edilmelidir
  • Bu baytların depolanma sırasına endian türleri (büyük veya küçük) denir.
  • Stereo örnekler, her kanal için biri sol için diğeri sağ için ayrı bir örnek gerektirir

Dijital sesi depolamak için hangi farklı yollar kullanılır:

  • PCM (darbe kodu modülasyonlu), sesi dijital olarak depolamanın en yaygın sıkıştırılmamış yoludur
  • Kullanılan veri miktarını azaltmak için birçok sıkıştırma mevcuttur, bazıları kayıpsız, bazıları kayıplıdır
  • WAV dosyaları sıkıştırılmamış ve mono veya stereo olabilir (araya eklenmiş örnekler)
  • MP3 dosyaları sıkıştırılır, kaybolur ve çok yüksek veri sıkıştırma oranları elde etmek için psikoakustik kullanır
  • En düşük bit aralığı (1 bit) bile, kullanımlarına bağlı olarak, tipik olarak 1 bit olarak saklanan sesi çalan hediye kartları

Dijital alanda sese nasıl aşina olunur?

  • Yapın ve daha fazlasını yapın! Audacity gibi bir program indirin ve farklı örnekleme hızlarını ve bit aralıklarını kullanarak farklı ses dosyaları oluşturun
  • Sinüs / üçgen / kare ve testere dişi tonları oluşturun ve farklılıkları dinleyin
  • 8 bit 10KHz dosya ve 16 bit 44.1KHz dosya (CD kalitesi) gibi türler arasındaki farkı duymayı öğrenin.
  • Yüksek geçiren / düşük geçiren / bant geçiren filtrelerle denemeler yapın ve farklılıkları dinleyin
  • Kırpmanın ses sinyalini nasıl etkilediğini anlamak için sinyalleri doygunluk sınırlarının ötesine itin
  • Yazılımınız bu özelliğe sahipse sinyallere zarf uygulayın
  • Harmonik ve harmonik bozulma arasında bir fark vardır, her ikisi ile deney
  • Bunları ve diğer sinyalleri tanımak için bir spektrogram (FFT) kullanın
  • Farklılıkları görmek için hem doğrusal hem de logaritmik grafikleri kullanın
  • Örnekleri aşağı ve yukarı örnekleyin ve bunun sesi nasıl etkilediğini dinleyin
  • Farklı renk taklidi yöntemleri kullanın (bit aralıklarını dönüştürürken) ve farklılıkları duyun

Bu, umarım dijital olarak temsil edilen sesin ne olduğunu ve herhangi bir DSP'yi denemeden önce farklılıkların nasıl olduğunu anlamanıza yardımcı olur. Örneğin, 8 bitlik bir sinyale karşı 16 bitlik bir sinyale girdiğinizi veya örnekleme oranının bir dönüşümdeki hatalı bir yanlış hesaplama nedeniyle bozulduğunu fark ederseniz, FFT analizinizle ilgili bir şeyin yanlış olduğunu bilmek her zaman daha kolaydır.


Cevap için teşekkürler. Ama bu şeylerin farkındayım ve şimdi dsp kodlama tarafına girmek istiyorum.
jarryd
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.