Dft

Düzenle|Mayıs 2007

AYRIK FOURİER DÖNÜŞÜMÜ (DISCRETE FOURIER TRANSFORM)

Ayrık zamanlı Fourier dönüşümü (DFT), ayrık zamanlı sinyal işleme algoritma ve sistemlerinin analizi, tasarımı, gerçekleştirilmesi ile doğrusal filtreleme, korelasyon analizi ve spektrum analizi gibi sinyal işleme uygulamalarında önemli bir rol oynar. DFT`nin bu öneme sahip olmasının ardındaki temel neden DFT`yi hesaplamakta kullanılan verimli algoritmaların varlığıdır [1].

DFT, Fourier dönüşümünün eşit aralıklı frekanslardaki örneklerine özdeştir. Sonuç olarak N-noktalı bir DFT`nin hesaplanması Fourier dönüşümünün N örneğinin, N eşit aralıklı frekanslarla (w_k=2*pi*kn), z-düzlemindeki birim çember üzerinde N nokta ile hesaplanmasına karşılık gelir. Burada temel amaç N-noktalı DFT`nin hesaplanması için verimli algoritmaların kullanılmasıdır. Bu algoritmalar ortak olarak hızlı Fourier dönüşümü (FFT) algoritmaları adını alır. En yüksek verimin elde edilebilmesi için FFT algoritmaları DFT`nin N değerlerinin hepsini hesaplamalıdır.

Bir algoritmanın ya da gerçeklemenin karmaşıklığını ve verimini ölçmenin birçok yolu vardır. Bunun sonucundaki final değerlendirme hem mevcut teknolojiye hem de uygulamaya bağlıdır. Hesaplama karmaşıklığını ölçmek için aritmetik çarpma ve toplamaların sayısı kullanılacaktır [2]. Algoritmalar, genel amaçlı dijital bilgisayarlarda ya da özel amaçlı mikroişlemcilerde gerçekleştirildiklerinde hesaplama hızı, çarpma ve toplamaların sayısıyla doğrudan ilişkilidir.

Hızlı Fourier Dönüşümü (FFT-Fast Fourier Transform), bir zaman domeni sinyalini eşdeğer frekans domeni sinyaline dönüştürmekte kullanılan DFT (Discrete Fourier Transform - Ayrık Fourier Dönüşümü) tabanlı verimli bir algoritmadır. Bu bölümde çeşitli gerçek zamanlı FFT örnekleri gerçekleştirilecektir.

Hızlı Fourier Dönüşümü algoritması, Nkompleks noktalı bir data serisinin sonlu Fourier dönüşümünü yaklaşık Nlog2N işlemle hesaplayan bir metottur [3]. Algoritmanın gerçekten de büyüleyici bir tarihi vardır. Bu algoritma, 1965`de Cooley ve Tukey tarafından açıklandığında [4], Fourier analizinin N^2 işlemle orantılı olan ve orantı faktörünün trigonometrik fonksiyonların simetri özellikleri kullanılarak azaltılabileceğine inanan birçok kişi tarafından büyük ilgi topladı. O yıllarda N^2 işlemli metotları kullanan bilgisayarlar yüzlerce saatlik bir işlem süresine ihtiyaç duymaktaydı. Cooley ve Tukey`in makalesinin etkisiyle Rudnick, 1942`de Danielson ve Lanczos`un önerdiği bir metodu geliştirerek Nlog2N sayıda işlem yapan kendi bilgisayar programını tanımladı.

Cooley ve Tukey`in hızlı Fourier dönüşümü algoritması N kompozit (yani iki ya da daha fazla sayının çarpımı gibi) veya 2`nin bir kuvveti olmadığında bile uygulanabilir olmasından dolayı genel bir algoritmadır. Eskiden saatlerce süren hesaplamalar Cooley ve Tukey`in algoritması ile dakikalar içerisinde gerçekleştirilebilir bir hale gelmiştir [5].

Trigonometrik fonksiyonların hem simetri hem de periyodiklik özelliğini kullanan hesaplama algoritmaları, yüksek hızlı dijital bilgisayarlar çağının çok daha öncesinde bilinmekteydi. O zamanlarda manüel hesaplamayı 2 kat dahi azaltacak yeni bir düzen bile literatürde yerini almaktaydı. Runge 1905`de ve daha önce bahsedildiği üzere Danielson ve Lanczos da 1942`de N^2 işlem yerine Nlog2N ile orantılı sayıda işlem yapan algoritmaları tanımlamışlardı. Fakat ta ki 1965`de Cooley ve Tukey ayrık Fourier dönüşümünü hesaplamak için algoritmalarını yayınlamadan önce oldukça azaltılmış hesap yükü elde etme olasılığı görmezlikten gelinmişti. Bu makale, ayrık Fourier dönüşümünün sinyal işlemedeki uygulamalarını ve oldukça verimli hesaplama algoritmalarının bulunmasını tetikledi.

DFT, zaman alanı dizisini eş değer frekans alanı dizisine çevirir. Ters DFT ise geri işlemi gerçekleştirerek frekans alanı dizisinden eş değer zaman alanı sinyali geri elde eder. FFT, DFT`ye göre daha az hesap yapmasına karşın oldukça verimli bir algoritma tekniğidir. FFT DSP`de frekans spektrum analizi için en yaygın olarak kullanılan operasyondur. FFT algoritmaları, uzunluğundaki bir dizinin ayrık Fourier dönüşümü hesabını daha küçük DFT`lere ayrıştırma temel prensibine dayanmaktadır [6]. Bu temel prensip çeşitli farklı algoritmalarla gerçekleştirildiğinde hesaplama hızında kayda değer bir artış elde edilmektedir. Bir FFT`yi hesaplamak için iki farklı prosedür uygulanmaktadır. Bunlar; x[7] zaman dizisinin daha küçük alt dizilere bölündüğü zamanda desimasyon (örnek seyreltme) ve ayrık Fourier dönüşümü dizisi katsayıları X[8]`nın daha küçük alt dizilere ayrıştırıldığı frekansta desimasyon algoritmalarıdır. FFT`in DCT (Ayrık Kosinüs Dönüşümü - Discrete Cosine Transform), Goertzel algoritması ve Hızlı Hartley Dönüşümü (Fast Hartley Transform) gibi birkaç varyasyonu da kullanılmaktadır. Özellikle son yıllarda DCT, sağladığı yüksek sıkıştırma oranı sayesinde gerçek zamanlı uygulamalarda tercih edilmektedir [9].

Referanslar

[10] Oppenheim A. V. , Schafer, R.W., ``Discrete-Time Signal Processing``, 2nd Ed., Prentice-Hall, Inc., Upper Saddle River, NJ, 1999

[11] Proakis, J.G., Manolakis, D.G., ``Digital Signal Processing, Principles, Algorithms and Applications``, 4th Ed., Prentice-Hall, Upper Saddle River, NJ, 2007

[12] Cooley, J.W., Lewis, P.A.W., Welch, P.D., ``Historical Notes on the Fast Fourier Transform``, IEEE Trans. Audio Electroacoustics, Vol. AU-15,pp. 76-79, June 1967

[13] Cooley, J.W., Tukey, J.W., ``An Algorithm for the Machine Computation of Complex Fourier Series``, Mathematics of Computation, Vol. 19,pp. 297-301, April 1965

[14] Gonzalez, R.C., Woods R.E., ``Digital Image Processing``, 2nd Ed., Prentice Hall, Upper Saddle River, NJ, 2002

Kaynaklar

Vikipedi

dft

İngilizce dft kelimesinin Fransızca karşılığı.
accusé, personne attaqué en justice (Droit)

dft

İngilizce dft kelimesinin İtalyanca karşılığı.
accusato, persona convocata in giudizio

dft

İngilizce dft kelimesinin Portekizce karşılığı.
acusado, réu (Direito)

dft

İngilizce dft kelimesinin Flemenkçe karşılığı.
gedaagde, aangeklaagde, iemand die berecht wordt, beschuldigde

dft

accused, person who is being sued (Law)

Bu konuda henüz görüş yok.
Görüş/mesaj gerekli.
Markdown kullanılabilir.