İster DFT'nizin çıktısını ister ileri ister ters ölçeklendirin, konvansiyonla veya matematiksel olarak uygun olanla hiçbir ilgisi yoktur. DFT'nin girişi ile ilgili her şeye sahiptir. Hem ileri hem de ters dönüşüm için ölçeklemenin gerekli veya gerekli olmadığı bazı örnekleri göstermeme izin verin.
Bir ileri dönüşümü 1 / N ölçeklendirmelidir.
Başlangıç olarak, basit bir sinüs dalgasını analiz etmek için, dönüşümün uzunluğunun, matematiksel olarak, alakasız olması gerektiği açık olmalıdır. Diyelim ki N = 1024, Frek = 100 ve sinyaliniz:
f (n) = cos (Frek * 2 * Pi * n / N)
1024 puntoluk bir DFT f (n) alırsanız, bin [100] = 512 olduğunu görürsünüz. Ancak, bunu N. diğer 1/2 bölmede negatif spektrumdadır [924].
DFT'nin uzunluğunu iki katına çıkarırsanız, N = 2048, çıkış değerleri 1024 nokta DFT'nin iki katı olacaktır, bu da 1 / N ile ölçeklenmediği sürece sonuçları anlamsız hale getirir. DFT'nin uzunluğu bu tür analizlerde bir faktör olmamalıdır. Bu nedenle, bu örnekte, DFT'yi 1 / N ölçeklendirmelisiniz.
İleri dönüşümü ölçeklendirmemelidir.
Şimdi 32 musluklu FIR filtresinin dürtü tepkisine sahip olduğunuzu ve frekans tepkisini bilmek istediğinizi varsayalım. Kolaylık sağlamak için, 1 kazanımlı düşük geçişli bir filtre alacağız. Bu filtre için DFT'nin DC bileşeninin 1 olması gerektiğini biliyoruz. Ve bunun boyutu ne olursa olsun, bunun böyle olacağı açık olmalıdır. DFT, çünkü DC bileşeni giriş değerlerinin toplamıdır (yani FIR katsayılarının toplamı).
Bu nedenle, bu girdi için, DFT anlamlı bir cevap almak için 1 / N ile ölçeklendirilmez. Bu nedenle, dönüşümün sonucunu etkilemeden bir dürtü yanıtını istediğiniz kadar sıfırlayabilirsiniz.
Bu iki örnek arasındaki temel fark nedir?
Cevap basit. İlk durumda, her girdi örneği için enerji sağladık. Başka bir deyişle, 1024 numunenin tümü için sinüs dalgası mevcuttu, bu nedenle DFT'nin çıktısını 1/1024 oranında ölçeklendirmemiz gerekiyordu.
İkinci örnekte, tanım gereği, sadece 1 numune için enerji sağladık (n = 0'daki dürtü). Dürtü için 32 musluk filtresinden geçmesi için 32 numune aldı, ancak bu gecikme önemsiz. 1 örnek için enerji sağladığımızdan, DFT'nin çıktısını 1 olarak ölçeklendiririz. Bir dürtü 1 yerine 2 birim enerji ile tanımlanırsa, çıktıyı 1/2 oranında ölçeklendiririz.
Ters dönüşümü ölçeklendirmemelidir.
Şimdi ters bir DFT düşünelim. İleri DFT'de olduğu gibi, enerji sağladığımız örnek sayısını da dikkate almalıyız. Tabii ki burada biraz daha dikkatli olmalıyız çünkü hem pozitif hem de negatif frekanslı kutuları uygun şekilde doldurmalıyız. Bununla birlikte, iki uygun bölmeye bir dürtü (yani 1) yerleştirirsek, ters DFT'nin sonuçta ortaya çıkan çıkışı, ters DFT'de kaç nokta kullanırsak kullanalım, genliği 2 olan bir kosinüs dalgası olacaktır.
Dolayısıyla, ileri DFT'de olduğu gibi, giriş bir dürtü ise ters DFT'nin çıktısını ölçeklendirmeyiz.
Ters dönüşümü ölçeklendirmelidir.
Şimdi bir düşük geçiş filtresinin frekans yanıtını bildiğiniz ve dürtü yanıtını almak için ters bir DFT yapmak istediğiniz durumu düşünün. Bu durumda, tüm noktalarda enerji sağladığımızdan, anlamlı bir cevap almak için DFT'nin çıktısını 1 / N ölçeklendirmeliyiz. Bu çok açık değil çünkü giriş değerleri karmaşık olacak, ancak bir örnek üzerinde çalışırsanız, bunun doğru olduğunu göreceksiniz. Eğer 1 / N ölçeklemezseniz, kazanım 1 ise, N sırasına göre en yüksek dürtü yanıtı değerlerine sahip olursunuz.
Az önce bahsettiğim dört durum, DFT çıktısının nasıl ölçeklendirileceğinin açık olduğu uç nokta örnekleridir. Ancak, uç noktalar arasında çok fazla gri alan vardır. Şimdi başka bir basit örnek ele alalım.
N = 1024, Frek = 100 ile aşağıdaki sinyale sahip olduğumuzu varsayalım:
f(n) = 6 * cos(1*Freq * 2*Pi * n/N) n = 0 - 127
f(n) = 1 * cos(2*Freq * 2*Pi * n/N) n = 128 - 895
f(n) = 6 * cos(4*Freq * 2*Pi * n/N) n = 896 - 1023
Üç bileşen için genlik, frekans ve süre farklılıklarına dikkat edin. Ne yazık ki, bu sinyalin DFT'si, 2. bileşenin diğer ikisinin güç seviyesinin 1 / 36'sına sahip olmasına rağmen, üç bileşenin hepsini aynı güç düzeyinde gösterecektir.
Üç bileşenin de aynı miktarda enerji sağlaması açıktır, bu da DFT sonuçlarını açıklar, ancak burada yapılması gereken önemli bir nokta vardır.
Çeşitli frekans bileşenlerinin süresini bilirsek, çeşitli frekans kutularını buna göre ölçeklendirebiliriz. Bu durumda, DFT'nin çıktısını doğru bir şekilde ölçeklemek için bunu yaparız: bin [100] / = 128; kutu [200] / = 768; kutu [400] / = 128;
Bu da beni son noktama getiriyor; genel olarak, DFT girişimizde belirli bir frekans bileşeninin ne kadar süreyle mevcut olduğu hakkında hiçbir fikrimiz yoktur, bu nedenle bu tür bir ölçeklendirme yapamayız. Bununla birlikte, genel olarak, her numune noktası için enerji tedarik ediyoruz, bu yüzden bir sinyali analiz ederken ileri DFT'yi 1 / N ölçeklendirmeliyiz.
Sorunları karmaşıklaştırmak için, DFT'nin spektral çözünürlüğünü geliştirmek için neredeyse kesinlikle bu sinyale bir pencere uygulayacağız. Birinci ve üçüncü frekans bileşenleri sinyalin başlangıcında ve sonunda olduğundan, orta bileşen sadece 4 dB (Hanning penceresi) ile zayıflatılırken 27 dB azaltılır.
Açıkça söylemek gerekirse, DFT'nin çıktısı , ölçeklendirilmiş olsun veya olmasın, girdinin oldukça zayıf bir temsili olabilir .
Genellikle saf bir matematik problemi olan ters DFT durumunda, bilinmeyen bir sinyalin analizinin aksine, DFT'ye giriş açıkça tanımlanır, böylece çıktıyı nasıl ölçeklendireceğinizi bilirsiniz.
Bir spektrum analizörü, analog veya FFT ile bir sinyali analiz ederken, problemler benzerdir. Görev döngüsünü de bilmiyorsanız görüntülenen sinyalin gücünü bilmiyorsunuz. Ancak o zaman bile, pencereleme, açıklık, süpürme hızları, filtreleme, dedektör tipi ve diğer faktörler sonucu etkilemek için çalışır.
Sonuç olarak, zaman ve frekans alanları arasında hareket ederken oldukça dikkatli olmalısınız. Ölçeklendirme ile ilgili sorduğunuz soru önemlidir, bu yüzden umarım çıktıyı nasıl ölçeklendireceğinizi öğrenmek için DFT'ye girişi anlamalısınız. Girdi açıkça tanımlanmamışsa, DFT'nin çıktısı, ölçekleseniz de ölçeklemeseniz de, büyük bir şüphecilikle ele alınmalıdır.