Saya baru belajar tentang domain frekuensi dalam gambar.
Saya dapat memahami spektrum frekuensi jika terjadi gelombang. Ini menunjukkan frekuensi apa yang ada dalam gelombang. Jika kita menggambar spektrum frekuensi , kita mendapatkan sinyal impuls di dan . Dan kita dapat menggunakan filter yang sesuai untuk mengekstrak informasi tertentu.- f + f
Tetapi apa arti spektrum frekuensi dalam hal gambar? Ketika kami mengambil FFT dari sebuah gambar di OpenCV, kami mendapatkan gambar yang aneh. Apa yang ditunjukkan gambar ini? Dan apa aplikasinya?
Saya membaca beberapa buku, tetapi mereka memberikan banyak persamaan matematika daripada implikasi fisik. Jadi, adakah yang bisa memberikan penjelasan sederhana tentang domain frekuensi dalam gambar dengan aplikasi sederhana dalam pemrosesan gambar?
sumber
Jawaban:
"Persamaan matematika" itu penting, jadi jangan lewatkan semuanya. Tetapi FFT 2d juga memiliki interpretasi yang intuitif. Sebagai ilustrasi, saya telah menghitung FFT terbalik dari beberapa contoh gambar:
Seperti yang Anda lihat, hanya satu piksel yang diatur dalam domain frekuensi. Hasil dalam domain gambar (saya hanya menampilkan bagian yang sebenarnya) adalah "pola cosinus diputar" (bagian imajiner akan menjadi sinus yang sesuai).
Jika saya menetapkan piksel berbeda di domain frekuensi (di perbatasan kiri):
Saya mendapatkan pola frekuensi 2d yang berbeda.
Jika saya menetapkan lebih dari satu piksel dalam domain frekuensi:
Anda mendapatkan jumlah dua cosinus.
Jadi seperti gelombang 1d, yang dapat direpresentasikan sebagai jumlah sinus dan cosinus, gambar 2d apa pun dapat direpresentasikan (secara longgar) sebagai jumlah "sinus dan cosinus yang diputar", seperti ditunjukkan di atas.
Ini menunjukkan amplitudo dan frekuensi sinus / cosinus yang, ketika ditambahkan, akan memberi Anda gambar asli.
Ada terlalu banyak untuk menyebutkan semuanya. Korelasi dan konvolusi dapat dihitung dengan sangat efisien menggunakan FFT, tetapi itu lebih merupakan optimasi, Anda tidak "melihat" pada hasil FFT untuk itu. Ini digunakan untuk kompresi gambar, karena komponen frekuensi tinggi biasanya hanya noise.
sumber
InverseFourier
fungsi Mathematica . Bukankah oktaf / matlabifft2
melakukan hal yang sama?Saya pikir ini dimasukkan dengan sangat baik dalam "panduan DSP" yang terkenal ( bab 24, bagian 5 ):
Jadi, tentu saja, ada beberapa struktur dan makna di balik pola yang tampaknya acak diperoleh dengan mengambil DFT dari gambar yang khas (seperti contoh di bawah), tetapi itu tidak dalam bentuk bahwa otak manusia siap untuk memahami secara intuitif, setidaknya mengenai persepsi visual.
Berikut ini adalah eksposisi menarik dan cukup mudah dibaca dari apa yang terkandung dalam transformasi Fourier gambar, dan bagaimana hal itu dapat ditafsirkan. Ini memiliki serangkaian gambar yang membuatnya cukup jelas apa korespondensi antara Fourier-transformed dan gambar asli.
sunting: lihat juga halaman ini , yang menunjukkan — mendekati akhir — bagaimana sebagian besar informasi penting yang dipersepsikan dari suatu gambar disimpan dalam komponen fase (sudut) dari representasi frekuensi.
sunting 2: contoh lain dari arti fase dan besarnya dalam representasi Fourier: "Bagian 3.4.1, Pentingnya fase dan besarnya" buku teks TU Delft " Fundamentals of Image Processing " menunjukkan hal ini dengan sangat jelas:
sumber
Gelombang adalah gelombang satu dimensi; itu hanya tergantung pada . Gelombang adalah gelombang dua dimensi. Itu tergantung pada dan . Seperti yang Anda lihat, Anda memiliki dua frekuensi, di kedua arah.f(t)=cos(ωt) t f(x,y)=cos(ωx+ψy) x y
Oleh karena itu, transformasi fourier (FFT) dari akan memberi Anda , seperti halnya FFT dari memberi Anda . Dan jika input Anda adalah fungsi menjumlahkan cosinus 2D, maka 2D FFT Anda akan menjadi jumlah frekuensi dari cosinus tersebut - lagi-lagi analog langsung dari FFT 1D.cos(ωx+ψy) ω,ψ cos(ωx) ω
sumber
Mungkin perlu dicatat bahwa Analisis Fourier adalah kasus khusus dari konsep yang disebut fungsi ortogonal . Ide dasarnya adalah Anda memecah sinyal yang rumit menjadi superposisi linier dari fungsi "basis" yang lebih sederhana. Anda dapat melakukan pemrosesan atau analisis pada fungsi dasar dan kemudian menjumlahkan hasil untuk fungsi dasar untuk mendapatkan hasil untuk sinyal asli.
Agar ini berfungsi ada persyaratan matematika tertentu untuk fungsi dasar, yaitu mereka idealnya membentuk basis ortonormal. Dalam kasus Fourier Transform, fungsi dasarnya adalah eksponensial yang kompleks. Namun, ada banyak fungsi lain yang bisa digunakan untuk itu juga.
sumber
Dalam gambar, peningkatan frekuensi dikaitkan dengan transisi yang lebih cepat dalam kecerahan atau warna. Selain itu, noise biasanya tertanam di ujung spektrum yang tinggi, sehingga penyaringan low-pass dapat digunakan untuk pengurangan noise.
sumber
dalam konteks ini demo yang sangat bagus: http://bigwww.epfl.ch/demo/basisfft/index.html
sumber