Frekans alanı, gerçek bir yer mi?
(lcamtuf.substack.com)- Ayrık Fourier dönüşümü (DFT) iletişim ve sinyal işlemenin temel araçlarından biridir, ancak frekans alanı gerçekliği yorumlamanın tek yolu değildir
- DCT gibi, giriş örnekleriyle taban fonksiyonu değerlerini çarpıp frekans bin’lerini bulan yapılarda, yalnızca tabanı değiştirerek farklı kurallara sahip bir frekans alanı oluşturulabilir
- Walsh matrisi, yalnızca
+1ve-1kullanan kare dalga tabanları sunar; sequency ve ortogonallik sağlandığında zaman alanı ile frekans gösterimi arasında gidip gelmek mümkündür - Hadamard matrisi, Walsh matrisinin yeniden sıralanmış bir biçimidir; Kronecker product ya da bit işlemleriyle üretilebilir ve satırlar sequency ölçütüne göre yeniden sıralanarak WHT’de kullanılır
- Aynı giriş, DCT’de birçok harmonik bileşene dağılırken Walsh-Hadamard dönüşümünde kare dalga bileşenlerine ayrılır; bu da DFT’nin “gerçek” üzerinde tekel sahibi olmadığını gösterir
Fourier frekans alanına yeniden bakmak
- Frekans alanı, karmaşık sinyalleri sinüs dalgalarının genlik ve fazlarına dönüştürerek ifade eden matematiksel bir uzaydır
- Bu gösterim sayesinde, zaman alanında ya da uzay alanında doğrudan ele alınması zor olan sinyal işleme görevleri daha kolay gerçekleştirilebilir
- DFT, iletişim ve sinyal işlemede merkezi bir rol oynar; ancak bir kare dalgayı tek dereceli sinüs harmoniklerinin toplamına çeviren yorumun gerçekliğin tek yorumu olup olmadığı ayrı bir meseledir
- Sinüs dalgaları doğada yaygın olduğu için Fourier ailesi araçları birçok görev için uygundur, ancak farklı kurallarla çalışan iyi tanımlanmış frekans alanları da oluşturulabilir
DCT’yi taban fonksiyonlarıyla anlamak
- Ayrık kosinüs dönüşümü (DCT), DFT’nin basitleştirilmiş, yalnızca gerçek sayılar kullanan bir sürümü olarak görülebilir
- DCT-II, giriş değerleri
s_nile belirli bir kosinüs ifadesinin değerlerini çarpıp toplar ve böylece belirli bir frekans bin’iF_kiçin büyüklüğü hesaplar - Buradaki kilit unsur, mevcut DCT bin numarasına karşılık gelen frekansta bir kosinüs dalgası üreten taban fonksiyonudur
- Bunu genelleştirirsek,
B(k, n)fonksiyonukven’ye göre bir çarpan döndürür ve bu değer giriş örnekleriyle çarpılıp toplanır - Yazılım açısından
B(k, n)bir lookup dizisi olarak, matematiksel açıdan ise bir matris olarak görülebilir N=16için DCT taban matrisinde ilk satırk=0, 0Hz’e karşılık gelen DC bileşenidir ve tüm değerler+1.00olan bir kosinüstür- Sonraki satırlar ise yarım periyot, bir periyot, bir buçuk periyot gibi giderek daha hızlı değişen kosinüs biçimlerine sahiptir
Kare dalga tabanları ve Walsh matrisi
- Sinyali sinüs frekanslarıyla değil, kare dalgalarla ayıran taban fonksiyonları Walsh matrisiyle kurulabilir
- Walsh matrisi, farklı hızlarda değişen kare dalgalardan oluşur ve tüm çarpanlar
+1ya da-1’dir - Böylece hesaplama, giriş verisinin bazı bölümlerinin işaretini ters çevirip toplama şeklinde basitleşir
- Basit görünen bu matrisin de iki koşulu sağlaması gerekir
- Her satır, bir öncekinden bir fazla işaret değişimine sahip olacak şekilde sequency sırasını izlemelidir
- Zaman alanı verisi ile frekans gösterimi arasında sorunsuz gidip gelmek için ortogonallik korunmalıdır
- Walsh matrisini doğrudan kurmak için
N×Nbir diziyle başlanır veN2’nin bir kuvveti olmalıdır- Soldaki ilk sütuna tüm satırlar için
+1yerleştirilir - Yeni sütun, mevcut değerlerin ayna kopyası olarak üretilir; ardından yeni eklenen alan birkaç yatay bölgeye ayrılır ve bazı bölgelerin işareti ters çevrilir
- Her yinelemede sütunlar kopyalanır, satır bölgesi sayısı artırılır ve işaretler dönüşümlü olarak ters çevrilir
- Soldaki ilk sütuna tüm satırlar için
Hadamard matrisinden Walsh dizisi üretmek
- Literatürde ve açık kaynak kodlarda, Walsh dizisini doğrudan kurmak yerine çoğu zaman Hadamard matrisinden türetmek tercih edilir
- Hadamard matrisi, Walsh dizisinin satırlarının farklı sıralandığı bir biçimidir
- Örneğin
N=16için Walsh’taki row #15, Hadamard’da #1 konumuna gider; Walsh’taki row #1 ise #8’e yerleşir
- Örneğin
- Hadamard yapısının tarihsel olarak önce ortaya çıkıp Walsh’ın bunun üzerine inşa edilmiş olması, bu geleneğin nedenlerinden biridir
- Pratikte ise Hadamard matrisini üretme yöntemleri daha iyi belgelenmiştir ve basit, verimli bit düzeyi yöntemler de vardır
- Ders kitabı yaklaşımı,
1×1bir diziyle başlayıp önceki matrisH_{n-1}’i dört karo halinde kopyalamaktır- Sol üst, sağ üst ve sol alt bölümler aynen kopyalanır
- Sağ alt bölümde tüm işaretler ters çevrilir
- Bu genişleme için Kronecker product gösterimi
⊗kullanılır, ancak gerçek işlem kopyalama ve işaret terslemedir
- Bu kurulum adımı
nkez uygulandığında Hadamard matrisinin boyutu her zaman2^n × 2^nolur - Belirli bir hücredeki Hadamard değeri, önce
x & yhesaplanıp ardından sonuçtaki açık bit sayısının tek mi çift mi olduğuna bakılarak bulunabilir- Açık bit sayısı tekse
-1, çiftse+1olur - C kodunda bu,
__builtin_popcount(x & y) % 2ile uygulanır
- Açık bit sayısı tekse
Walsh-Hadamard dönüşümünü uygulamak
- Hadamard matrisini sezgisel Walsh sırasına dönüştürmek için satırları sequency ölçütüne göre sıralamak gerekir
- En basit yöntem, her satırdaki işaret değişimi sayısını saymaktır
- Başka bit düzeyi yöntemler de mümkündür
- Walsh satır numarası, kendisinin 1 bit sağa kaydırılmış hâliyle XOR’lanarak Gray code üretilir
- Son
nbitin sırası ters çevrilerek Hadamard satır eşlemesi hesaplanır
- Bu şekilde oluşturulan Walsh dizisi, DCT uygulamasında taban değiştirilerek “discrete square transform” ve onun ters dönüşümünü üretmekte kullanılabilir
- Teknik olarak bu dönüşüm Walsh–Hadamard transform (WHT) olarak adlandırılır
- Örnek giriş
1 1 1 1 5 5 5 5, DCT ile işlendiğinde harmonik bileşenler birden fazla frekans bin’ine dağılırDCT : +24.00 -10.25 -0.00 +3.60 +0.00 -2.41 -0.00 +2.04
- Aynı giriş kare dalga dönüşümünden geçirildiğinde sıfır olmayan bileşenler yalnızca
F_0veF_1içinde görünürSQFT : +24.00 -16.00 +0.00 +0.00 +0.00 +0.00 +0.00 +0.00
- Ters dönüşüm
isqft()özgün girdiyi geri üretirISQFT : +1.00 +1.00 +1.00 +1.00 +5.00 +5.00 +5.00 +5.00
Spektrogram karşılaştırması ve pratikteki yeri
- Gorillaz’ın “DARE” parçasından alınan 11 saniyelik ses klibi üzerinden DCT spektrogramı ile Walsh-Hadamard spektrogramı karşılaştırılıyor
- Walsh-Hadamard dönüşümü, düşük performanslı bilgisayarlarda bile hesaplama açısından verimlidir ve belirli veri türlerine iyi uyduğu için bazı niş kullanım alanlarında yer bulur
- Sonuç, WHT’nin daha fazla kullanılması gerektiği değil; ayrık Fourier dönüşümünün gerçeği tek başına temsil etmediğidir
- Spektrogramlar, 44.1kHz mono bir ses dosyasından DCT ve WHT ile hesaplanmıştır
- giriş örnekleme penceresi
512 - dönüşüm adım aralığı
1 - çıktı dizi boyutu yaklaşık
512 × 485k - piksel yoğunluğu, normalize edilmiş mutlak değere yaklaşık
0.4gamma uygulanarak elde edilir - görseller Lanczos resampling ile yeniden boyutlandırılır ve siyah–camgöbeği–beyaz doğrusal colormap ile render edilir
- giriş örnekleme penceresi
- Walsh-Hadamard’ın görüntü sıkıştırmada denendiği bir örnek olarak
http://rotormind.com/blog/2019/hadamard-days-night/de ayrıca tanıtılır
1 yorum
Hacker News yorumları
Matematiksel olarak Fourier dönüşümü, bir zaman sinyalini belirli bir ortogonal vektör tabanında ifade etmenin yalnızca bir yoludur
Yeryüzü üzerindeki yer değiştirme vektörleri de kuzey/doğu yönlü bir tabanda ifade edilebilir; bir yol doğrultusu ve ona dik doğrultuda da ifade edilebilir
Zamana bağlı sinyaller ya da “güzel” fonksiyonlar sonsuz boyutlu vektör uzaylarında bulunduğundan gözümüzde canlandırmak zordur, ama temel matematik benzer şekilde çalışır
Fourier dönüşümünde taban vektörleri harmonik fonksiyonlardır ve frekans uzayı, sinyali sonsuz sayıda harmonik fonksiyon birleşimi olarak gösteren bir tür “harita”dır
Walsh–Hadamard dönüşümü gibi başka tabanların haritaları da aynı derecede gerçektir; zaman alanı gösterimi de yalnızca bize tanıdık geldiği için öne çıkan birçok haritadan biridir
Görüntü işleme, diferansiyel denklemlerin çözümü ve hızlı çarpma gibi birçok uygulaması vardır
Matematiksel olarak bu tür dönüşümler kayıpsızdır; yani dönüştürülmüş fonksiyon, özgün fonksiyonla tam olarak aynı bilgiyi taşır ve yalnızca dönüşümden yola çıkarak aslına geri dönebilirsiniz
Mühendislikte ise dönüşüm çoğu zaman belirli frekans bileşenleri gibi istenmeyen bilgileri atmak için kullanıldığından bu nokta sık sık bulanıklaşır
Sonuçta bu, tek bir fonksiyona bakmanın birçok yolundan biridir
Özellikle çok boyutlu uzaylarda, genel çok boyutlu Fourier dönüşümü ancak o uzayda düz bir metrik varsa düzgün çalışır
Evrenin kendisinin eğri olduğunu düşününce bu bir uyarı işareti gibi görünüyor
Yakın zamanda belirli hiperbolik kafesler için Fourier serilerini genelleyen ilginç bir çalışma vardı ve sonuç olarak Fourier uzayının boyutu konum uzayından daha yüksek olabiliyor
Dahası, bu “Fourier uzayı”nın boyutu kafesin nasıl ayrıklaştırıldığına göre değişiyor; öyle ki bazı 2 boyutlu kafeslerin 4 boyutlu frekans-benzeri bölgeleri, bazılarının ise 8 boyutlu benzeri bölgeleri olabiliyor
https://arxiv.org/abs/2108.09314 veya https://www.pnas.org/doi/full/10.1073/pnas.2116869119
Model tamamen yanlıştı ama fiilen Fourier serilerini fonksiyon yaklaştırıcısı olarak kullanıyorlardı
Polinomlar gibi bir taban kullansanız da sonuçta bir fonksiyonu frekans bileşenleriyle inşa etmiş olmazsınız
Fourier tabanı, her öğesinin belirli bir frekansa karşılık gelmesi bakımından özeldir
Yine de her taban daha çok belirli bir amaca göre tasarlanmıştır ve taban dönüşümü, spektrumu analiz etmeyi karmaşık biçimlerde yeniden düzenleyebilir
Böyle durumlarda pürüzsüzlük gibi başka özellikleri analiz edersiniz
İlgilenilen çoğu fonksiyonun karakteristik bir spektrumu vardır, ama Fourier tabanı her soruya cevap vermez
Kuzey ve kuzeydoğu gibi, bir miktar dik bileşen içerdiği sürece [n, e] başka koordinatlarla da ifade edilebilir
Isı yüzünden somut katsayılarım yanlış olabilir ama asıl nokta bunun mümkün olması
Yüksek lisans sırasında dinamik sistemler grubunda beyaz tahta önünde geçen bir konuşmayı hatırladım
“Soldan sisteme enerji enjekte ediliyor ve sağda burada sönümleniyor.”
“Ama sistem dönmeye göre değişmez; yani soldan ya da sağdan söz edemezsiniz.”
“Frekans uzayında konuşuyordum.”
“Ha, gerçek uzayı kastediyorsunuz sandım.”
“Salak mısın? Gerçek uzayda kim düşünür ki?”
Bu soyut bir gösterim; uzamsal boyutlardaki sağ-sol-yukarı-aşağı ile doğrudan ilişkili değil gibi
Karmaşık üstel taban fonksiyonları, doğrusal zamanla değişmeyen (LTI) sistemlerin özvektörleri olmaları bakımından Fourier tabanını benzersiz kılar
Başka dönüşümlerde bu özellik yoktur
Devreler, iletişim kanalları, antenler gibi birçok gerçek sistem LTI'dir ve bu özellik sayesinde farklı frekanslarda iletilen sinyaller birbirine karışmaz
Bu yüzden Fourier dönüşümü diğer dönüşümlerden daha yaygın kullanılır
Kuantum fizikte de konum ve momentum dalga fonksiyonlarının bir Fourier çifti olmasıyla benzer bir bağlantı vardır; başka dönüşümlerde böyle bir özellik yoktur
Elektrik mühendisliği geçmişinden bakınca, analiz için birçok sistemi doğrusal ya da çok zayıf doğrusal olmayan kabul ederiz; sinyaller de çoğunlukla periyodiktir, bu yüzden Fourier dönüşümü doğaldır
Konvolüsyon çarpmaya dönüşür ve karmaşık üstellerin zamana göre türevi j*omega ile çarpmaya eşdeğer olur
Konvolüsyon ve zamana göre türev almak yerine çarpma yapmak çok daha iyidir
“Yaygın bazı özel durumlarda elverişli olduğu için Fourier gösterimini kullanıyoruz” fikrini kabul edince, başka problemler için başka matematiksel dönüşümler kullanmak da şaşırtıcı olmaz
Birçok dersin en genel çift yönlü Laplace dönüşümünü düzgünce ele almadan, çift yönlü Fourier dönüşümünden doğrudan tek yönlü Laplace dönüşümüne geçmesi bana hep tuhaf gelmiştir
https://en.wikipedia.org/wiki/Two-sided_Laplace_transform
Bunun “gerçek bir yer” olup olmadığını sorarsanız, eskiden gördüğüm bir optik deney aklıma geliyor
Bir resmi birkaç mercekten geçirince frekansların bulunduğu bir düzlem oluşuyor, sonra yeniden merceklerden geçip ekrana yansıtılıyor
O frekans düzleminin bir kısmını kapatırsanız görüntü değişiyor
Uğraşması inanılmaz zordu ve St Andrew’s’ten Dr Bruce Sinclair’e büyük minnet duymuştum
Fizik laboratuvarı çalışmaları, şeylerin nasıl işlediğini görmenizi sağlar; ama birkaç ay sonra teoriye yeniden bakınca insan epey yolunu kaybedebiliyor
Bu yüzden açıklık çözünürlüğü sınırlar ve yansıtmalı teleskoplarda kırınım spike’ları oluşur gibi geliyor
Schlieren de bu şekilde çalışır
DFT’nin bir başka ilginç genellemesi de Lomb-Scargle dönüşümü
Zaman alanında sabit ölçüm aralıkları gerektirmiyor
Astrofizik gibi ölçüm aralıklarının düzenli olmadığı durumlarda periyodik sinyallerin frekansını bulmak için sık kullanılıyor
https://iopscience.iop.org/article/10.3847/1538-4365/aab766 genel bir giriş, https://docs.astropy.org/en/stable/timeseries/lombscargle.ht... ise Python’daki astropy kütüphanesinde bunun nasıl kullanılacağını iyi anlatıyor
Otomatik ölçeklendirme, arızaya yol açan performans düşüşlerinden kaçınmanızı sağlayabilir; ama yıllık bütçenin ne olması gerektiğini ve nedenini söylemez
Yine de Prometheus verilerini gerçek anlamda örnekleme aralığına sahip saymak zor
Kümedeki her makine düzenli aralıklarla rapor verse bile birbirleriyle senkronize değiller
Başka bir açıdan bakarsak koklea, Fourier dönüşümünün “gerçek” bir uygulaması gibi görülebilir
https://www.britannica.com/science/sound-physics/The-ear-as-...
Frekans alanına dönüştürüyor ama Fourier dönüşümü yapmıyor ya da onu yaklaşık olarak gerçekleştirmiyor
Kokleanın “uyguladığı” zaman→frekans alanı dönüşümü wavelet dönüşümüne daha yakın
Kokleayı Fourier dönüşümü olarak yorumlamak, gözdeki koni hücrelerinin yalnızca kırmızı, yeşil ve mavi ışığa tepki verdiğini sanma hatasına benziyor
Gerçekte her hücre belli bir frekans aralığında farklı tepkiler veriyor
Koni hücreleri düşük, orta ve yüksek frekans bölgelerinde tepe yapıp iki yana doğru azalırken, kokleadaki saç hücreleri tepe frekansının harmoniklerinde ikinci bir tepeye sahip, daha wavelet-benzeri tepki eğrilerine sahip
Uzman değil, hevesli bir amatörüm; benden daha bilgili birinin düzeltmesini umuyorum
Üniversitede kök hücre hattımızın kemiğe farklılaşması gibi bir sorunumuz vardı; sonra anlaşıldı ki hücrelerin algılayabildiği sinyal ortamın sertliğiymiş
Sert kültür kabı, adeta hücrelere kemik hücresi olmaları gerektiğini söylüyordu
Yazıda “Hadamard matrisinin satırlarını sequency’ye göre sıralamak için, sıfır geçiş sayısını saymaktan daha zarif bir algoritma bilmiyorum” deniyordu; matrise bakıp örüntüyü tahmin etmiştim, meğer zaten bilinen bir yöntemmiş
https://en.wikipedia.org/wiki/Walsh_matrix'e göre Walsh matrisi için sequency sıralaması, önce Hadamard matrisine bit-reversal permütasyonu, ardından Gray-code permütasyonu uygulanarak elde edilebiliyor
Yazı çok genel ve felsefi bir soru soruyor ama sonra, başka ortogonal bazlar ve dönüşümler de bulunabildiği için frekans alanının çok özel olmadığını söylüyor
Yine de frekans alanı ile Fourier dönüşümünün birçok başka dönüşümden daha özel olduğunu düşünüyorum
Çünkü doğada doğrudan gözlemlenebiliyorlar
Örneğin bir mercek, paralel ışığın taşıdığı giriş görüntüsünün iki boyutlu Fourier dönüşümünü gerçekleştirir ve bunu ekranda görebilirsiniz
Ayrıca bir ızgara ya da prizmanın çıktısını CCD üzerine yansıtarak ışığın dalga boyunu veya frekansını ölçebilirsiniz; bu da frekans alanının doğrudan ölçümüdür
RF dalgalarında da benzer ölçümler yapılabilir
Sinüzoidler, Helmholtz dalga denkleminin doğal çözümleri olmaları bakımından özeldir
Kare dalgaların sonsuz enerji gibi başka sorunları da var
Bu yazı matematikçiler veya bilgisayar bilimciler için anlamlı olabilir ama sesin ve dalgaların temel fiziğini gözden kaçırıyor
Fiziksel sonuçlar muhtemelen bu özelliğin bir sonucu
Sonuçta modern matematiğin ana derslerinden biri, nesnelere birden fazla açıdan bakmanın yararlı olduğudur
İnanılmaz derecede çok sayıda fiziksel nesne harmonik osilatördür ve bunun fizikte oldukça temel bir dayanağı var
Fourier analizinin uygulanabildiği başka pek çok yer de geliyor aklıma ama sinüzoidler fiziksel olarak daha “gerçek”; herhangi bir baz kümesiyle temsil edilebilmesi ise daha çok “geçerli” olmaya yakın
“Gerçek” kelimesi, fenomenin arkasında fiilen bir osilatör varmış hissi veriyor gibi
Kare dalgalar, hem sinyalde hem de türevinde süreksizlikler olduğu için daha az fiziksel ve doğa süreksizlikleri gerçekten pek sevmez
Örneğin Gibbs olgusu, belirli bir kesim frekansının üzerindeki tüm frekansları 0 yapan bir frekans cevabının ters Fourier dönüşümünden doğal olarak ortaya çıkar
Kare dalganın frekans alanının Gibbs olgusunu nasıl açıklayacağını merak ediyorum
Muhtemelen sistem doğrusal değilmiş gibi, temel kare dalga frekansının harmonikleri ortaya çıkacaktır
Lisans düzeyinde fizik ve matematik okurken, bir fonksiyon
f(x)'in değerini sonsuz sayıdaxiçin bilmekle,f'nin frekans bileşenlerini sonsuz sayıda frekansta bilmenin eşdeğer olduğu sonucuna vardımFelsefi olarak bu iki temsil de eşit derecede “gerçek”tir
Yalnızca bazı problemler bir temsilde diğerine göre daha kolay çözülür
Zaman alanından frekans alanına geçmek, koordinat sistemi dönüşümü gibidir
Zaman alanında tek bir dar tepeye sahip bir sinyal, tepenin konumundaki tek bir delta ile çok küçük ve seyrek biçimde temsil edilebilir, ancak frekans alanında böyle sıkıştırılmış bir temsil ortaya çıkmaz
Tersine, zaman alanındaki bir sinüs dalgası sinyali orada compact değildir, ama frekans alanında yalnızca birkaç delta yeterlidir
Zaman ve frekans, aynı şeyi göstermenin iki yoludur; bazı durumlarda bir alan daha kolaydır, başka durumlarda ise tersi geçerlidir
Zaman alanında sınırlı olan bir şeyin frekans alanında sınırsız hâle geldiği ve tersinin de geçerli olduğu kanıtlanabilir
Bu yüzden bir alanda compact olan bir şey, diğer alana geçince her zaman yayılır
Kuantum mekaniğinde konum ve momentum, yukarıdaki zaman ve frekans gibi eşlenik değişkenlerdir; bu yüzden konum sınırlıysa momentum sınırsız olur ve tersi de geçerlidir
Heisenberg belirsizlik ilkesinin temel fikri budur