2009-03-05 21 views
2

Fourier tanımlayıcılarını kullanarak şekil sınırlarına yaklaşmaya çalışıyorum. Bunu yapabileceğimi biliyorum çünkü bunu sınıfta öğrendim ve çeşitli kaynaklarda okudum. Fourier tanımlayıcılarını kullanarak bir şekil sınırına yaklaşma

bir sınır Fourier tanımlayıcıları elde etmek için (x, y) koordinatları, I aşağıdakileri: 1) dönüş (x, y) formunun karmaşık sayılar koordinatlar x + 2) bu yeni besleme iy 1D Fourier dönüşümü içine numaralar 3) Çıkış, Fourier tanımlayıcılarıdır. Sınırı yaklaşık olarak, yüksek frekansları çıkarır (sıfır olarak), sonra ters Fourier dönüşümü uygular, sonra karmaşık sayıları dönüştürebilirim (x, y) koordinatlarına geri dönün ve ardından görüntüyü bu yeni koordinat setinden yeniden oluşturun. Projemin amacı, sıfıra ayarladığım terimlerin kaçına bağlı olarak sınırları ne kadar iyi tahmin edebildiğimi bulmaktır.

Sorunum, frekanslardan herhangi birini HER olarak 0'a ayarladığımda, çıktı resmim çok küçük ve çok tuhaf desenler olarak çıkıyor.

Aşağıda bir örnek ekledim. Giriş görüntüsü normal bir kare. Verilen ilk çıktı görüntüsü, tüm Fourier tanımlayıcılarını normal olarak kullanarak görüntünün yeniden yapılandırılmasıdır. Sınırların piksel sayısı 256'ya örneklendiğinden ve çıkış yaptığımda noktaları birleştirmekten rahatsız olmadığından tüm sınırın orada olmadığını unutmayın. Ayrıca, çıkışın sol alt köşeye çevrildiğini de unutmayın, bu amaç içindedir. İkinci çıkış görüntüsü sadece ilk 128 frekansı kullandığım zamandır.

Input Image http://img19.imageshack.us/my.php?image=square0.bmp

Output Image 1: All frequencies http://img27.imageshack.us/my.php?image=square0normal.bmp

Output Image 2: First half of frequencies http://img23.imageshack.us/my.php?image=square0out.bmp

kimse Buna yol açabilecek neden bir fikri var mı?

Düzenleme: Ayrıca burada
Input image
Output1
Output2

bir link to a document that talks about this a bit geçerli: İlk kez burada görüntü koyarak değil onlar neden gösterilmediğini emin .. burada bağlantılardır sayfa 5'in sonunda başlar.

+0

Görüntü koordinatlarını Fourier dönüşümünü beslemeden önce [0,1] aralığında normalleştirmeyi denerim ve sonra çıktıda denormalize olurdum. – Ismael

+0

Görünüşe göre hassaslık kaybediyorsunuz ama ilk çıktı doğru göründüğü için Fourier dönüşümü ile ilgili görünmüyor. Başka bir resim denedin mi? Asimetrik bir şey öneriyorum. – Ismael

+0

Bu, aslında görüntünün ölçeği dışındaki sonuçları etkiler mi? Gerçekten ne olduğunu görmüyorum .. – MahlerFive

cevap

1

Aldığınız sonuç, yüksek frekanslar yerine düşük frekansları atmanız halinde beklenecek olan sonuçtur. Hangi frekansların olduğundan emin misiniz?

+0

Görünüşe göre düşük frekanslar son birkaç tanımlayıcı değil, ilk birkaç ... Sadece hangi frekansların sıfırlandığını geri aldım ve şimdi iyi çalışıyor, teşekkürler! – MahlerFive

+0

Bir kez daha yanlış olduğumu fark ettim ve dizinin ortasındaki tanımlayıcılar düşük frekanslardır, bu yüzden onları merkezden dışa doğru sıfırladım ve şimdi çok daha iyi çalışıyor – MahlerFive