Teori Konvolusi dan Fourier Transform Sigit Widiyanto Dua
- Slides: 50
Teori Konvolusi dan Fourier Transform Sigit Widiyanto
Dua Operasi matematis yang penting! • Operasi Konvolusi (Spatial Filter) – Operasi pengolahan citra yang mengalikan sebuah citra dengan sebuah mask atau kernel (Convolution Mask) • Transformasi Fourier – Citra dimanipulasi dalam ranah (domain) frekuensi ketimbang dalam ranah spasial.
Konvolusi • Konvolusi diskrit sangat banyak dipergunakan dalam pengolahan citra untuk – Memperhalus (smoothing) – Menajamkan (sharpening) – Mendeteksi tepi (edge detection) • Konvolusi = jumlah berbobot dari pixel-pixel disekeliling pixel sumber • Bobot ditentukan oleh matrix kecil yang disebut convolution mask)
Konvolusi • Dimensi convolution mask biasanya ganjil dan posisi tengahnya berkaitan dengan posisi pixel output • Frame matriks konvolusi bergerak dengan berpusat pada tiap pixel pada citra input untuk menghasilkan pixel-pixel yang baru. • Pixel output merupakan citra baru • Nilai bobok pada convolution mask berpengaruh pada intensitas keseluruhan dari citra yang baru – Jika nilai = 1, maka intensitas citra output = intensitas citra input – Jika nilai = 0, maka pixel yang baru bernilai negatif dan harus ditambahkan dengan suatu konstanta.
Convolution Function • Konvolusi dua buah fungsi f(x) dan g(x) didefinisikan sebagai berikut : Integral dari – tak hingga sampai tak terhingga Untuk fungsi diskrit , konvolusi didefinisikan sebagai g(x) disebut dengan kernel konvolusi (filter) , kernel g(x) merupakan jendela yang dioperasikan secara bergeser pada sinyal masukan f(x) hasil konvolusi dinyatakan dengan keluaran h(x) Perhitungan hasil konvolusi diperlihatkan pada gambar a – f, dan hasil konvolusi ditunjukkan pada gambar g x/2 , 0 <= x <= 1 f(x) * g(x) = X – x/2, 1<= x <= 2 0, Lainnya 5
Ilustrasi Konvolusi
Proses Konvolusi
Proses Konvolusi
Proses Konvolusi
Proses Konvolusi
Konvolusi Dua Dimensi
Ilustrasi
Contoh • Misalkan citra f(x, y) yang berukuran 5 x 5 dan sebuah kernel yang berukuran 3 x 3 sebagai berikut:
Solusi • Operasi konvolusi antara citra f(x, y) dengan penapis g(x, y): f(x, y)*g(x, y)
Solusi
Solusi
Solusi
Solusi
Solusi
Solusi • Jika hasil konvolusi menghasilkan nilai pixel negatif, maka nilai tersebut dijadikan 0, sebaliknya jika hasil konvolusi menghasilkan nilai pixel lebih besar dari nilai keabuan maksimum, maka nilai tersebut dijadikan ke nilai keabuan maksimim (clipping atau threshold)
Permasalahan
Solusi Permasalahan • Pixel-pixel pinggit diabaikan, tidak di-konvolusi. Sehingga pixel-pixel pinggir nilainya tetap sama seperti citra asal. • Duplikasi elemen citra, misalnya elemen komom pertama disalin ke kolom M+1, begitu juga sebaliknya, lalu konvolusi dapat dilakukan terhadap pixel-pixel pinggir tersebut. • Elemen yang ditandai “? ” diasumsikan bernilai 0 atau konstanta yang lain, sehingga konvolusi pixel -pixel pinggir dapat dilakukan.
Hasil
Embossing
Blurring
Blurring
Sharpening
Sharpening
Sharpening
Contoh di matlab
Permasalahan • Konvolusi dilakukan per pixel, dan untuk setiap pixel dilakukan operasi perkalian dan penjumlahan, maka jelas konvolusi mengkonsumsi banyak waktu. Jika citra berukuran N x N dan kernel berukuran m x m, maka jumlah perkalian adalah N 2 m 2 • Contoh: Citra 512 x 512 dan kernel 16 x 16, maka akan ada sekitar 32 juta perkalian. • Permasalahan ini akan bermasalah untuk sistem realtime. • Solusi mengurangi komputasi adalah transformasi citra dan kernel ke dalam ranah frekuensi menggunakan Fourier Transfrom.
Transformasi Fourier • Mengapa perlu transformasi ? – Setiap orang pada suatu saat pernah menggunakan suatu teknik analisis dengan transformasi untuk menyederhanakan penyelesaian suatu masalah [Brigham, 1974] – Contoh: penyelesaian fungsi y = x/z • Analisa konvensional : pembagian secara manual • Analisa transformasi : melakukan transformasi – log(y) = log(x) – log(z) – look-up table pengurangan look-up table 33
• Transformasi juga diperlukan bila kita ingin mengetahui suatu informasi tertentu yang tidak tersedia sebelumnya • Contoh : – jika ingin mengetahui informasi frekuensi kita memerlukan transformasi Fourier – Jika ingin mengetahui informasi tentang kombinasi skala dan frekuensi kita memerlukan transformasi wavelet Transformasi Citra • Transformasi citra, sesuai namanya, merupakan proses perubahan bentuk citra untuk mendapatkan suatu informasi tertentu • Transformasi bisa dibagi menjadi 2 : – Transformasi piksel/transformasi geometris: – Transformasi ruang/domain/space 34
Transformasi Pixel • Transformasi piksel masih bermain di ruang/domain yang sama (domain spasial), hanya posisi piksel yang kadang diubah • Contoh: rotasi, translasi, scaling, invers, shear, dll. • Transformasi jenis ini relatif mudah diimplementasikan dan banyak aplikasi yang dapat melakukannya (Paint, ACDSee, dll) 35
Transformasi Ruang • Transformasi ruang merupakan proses perubahan citra dari suatu ruang/domain ke ruang/domain lainnya, contoh: dari ruang spasial ke ruang frekuensi • Masih ingat istilah ‘ruang’ ? Ingat-ingat kembali pelajaran Aljabar Linier tentang Basis dan Ruang – Contoh : Ruang vektor. Salah satu basis yang merentang ruang vektor 2 dimensi adalah [1 0] dan [0 1]. Artinya, semua vektor yang mungkin ada di ruang vektor 2 dimensi selalu dapat direpresentasikan sebagai kombinasi linier dari basis tersebut.
• Ada beberapa transformasi ruang yang akan kita pelajari, yaitu : – Transformasi Fourier (basis: cos-sin) – Transformasi Hadamard/Walsh (basis: kolom dan baris yang ortogonal) – Transformasi DCT (basis: cos) – Transformasi Wavelet (basis: scaling function dan mother wavelet) 37
Transformasi Fourier • Pada tahun 1822, Joseph Fourier, ahli matematika dari Prancis menemukan bahwa: setiap fungsi periodik (sinyal) dapat dibentuk dari penjumlahan gelombang-gelombang sinus/cosinus. • Contoh : Sinyal kotal merupakan penjumlahan dari fungsi-fungsi sinus berikut (lihat gambar pada halaman berikut) f(x) = sin(x) + sin(3 x)/3 + sin(5 x)/5 + sin(7 x)/7 + sin(9 x)/9 …
Hasil dalam transformasi fourier Fungsi kotak sebagai penjumlahan fungsi-fungsi sinus Cobakan juga program matlab berikut untuk melihat sampai batas n berapa fungsi yang dihasilkan sudah berbentuk fungsi kotak. function kotak(n) t = 0: pi/200: 8*pi; kot = sin(t); for i = 3 : 2: n kot = kot + (sin(i*t))/i; end plot(kot) 39
(a) (c) (b) (d) Gambar a) n = 1, b) n =3, c) n = 7, d) n = 99 40
FT - Motivasi • Jika semua sinyal periodik dapat dinyatakan dalam penjumlahan fungsi-fungsi sinus-cosinus, pertanyaan berikutnya yang muncul adalah: – Jika saya memiliki sebuah sinyal sembarang, bagaimana saya tahu fungsi-fungsi cos – sin apa yang membentuknya ? • Atau dengan kata lain – Berapakah frekuensi yang dominan di sinyal tersebut ? • Pertanyaan di atas dapat dijawab dengan menghitung nilai F(u) dari sinyal tersebut. Dari nilai F(u) kemudian dapat diperoleh kembali sinyal awal dengan menghitung f(x), menggunakan rumus: 41
Rumus FT – 1 dimensi • Rumus FT kontinu 1 dimensi • Rumus FT diskret 1 dimensi Misalkan kita memiliki sinyal x(t) dengan rumus sbb: x(t) = cos(2*pi*5*t) + cos(2*pi*10*t) + cos(2*pi*20*t) + cos(2*pi*50*t) Sinyal ini memiliki empat komponen frekuensi yaitu 5, 10, 20, 50 42
Contoh FT 1 dimensi Contoh berikut diambil dari Polikar (http: //engineering. rowan. edu/~polikar/WAVELETS/WTtutorial. html) Misalkan kita memiliki sinyal x(t) dengan rumus sbb: x(t) = cos(2*pi*5*t) + cos(2*pi*10*t) + cos(2*pi*20*t) + cos(2*pi*50*t) Sinyal ini memiliki empat komponen frekuensi yaitu 5, 10, 20, 50 43
Contoh sinyal 1 Dimensi x(t) Gambar sinyal satu dimensi dengan rumus x(t)= cos(2*pi*5*t) + cos(2*pi*10*t) + cos(2*pi*20*t) + cos(2*pi*50*t) (Sumber: Polikar) 44
FT dari sinyal tersebut. Terlihat bahwa FT dapat menangkap frekuensi-frekuensi yang dominan dalam sinyal tersebut, yaitu 5, 10, 20, 50 (nilai maksimum F(u) berada pada angka 5, 10, 20, 50) 45
Contoh Penghitungan FT 1 dimensi (Gonzalez hlm 90 -92) 46
Contoh Penghitungan FT • Hasil penghitungan FT biasanya mengandung bilangan real dan imajiner • Fourier Spectrum didapatkan dari magnitude kedua bilangan tersebut shg|F(u)| = [R 2(u) + I 2(u)]1/2 • Untuk contoh di halaman sebelumnya, Fourier Spectrumnya adalah sebagai berikut: • |F(0)| = 3. 25 |F(1)| = [(-0. 5)2+(0. 25)2]1/2 = 0. 5590 • |F(2)| = 0. 25 |F(3)| = [(0. 5)2+(0. 25)2]1/2 = 0. 5590 47
Rumus FT – 2 dimensi • Rumus FT 2 dimensi 48
Contoh FT 2 Dimensi Untuk menampilkan nilai FT suatu citra, karena keterbatasan display, seringkali digunakan nilai D(u, v)= c log [1 + |F(u, v)|] 49
50
- Sigit widiyanto
- Transformasi fourier
- Lapisan tanah lapangan sepak bola
- Penapis
- Certificado catastral santa fe
- Antarin prasanthi sigit
- Douglas wilhelm harder
- Dr sigid djuniawan
- Sebuah notasi untuk mendeskripsi sebuah program
- Konvolusi adalah
- Kalkulator konvolusi
- Pengertian konvolusi
- Penapis
- Fourier transform of product of two functions
- Fourier transform of dirac delta function proof
- Continuous time fourier transform
- Short time fourier transform applications
- Fourier series coefficients formula
- Parseval's identity for fourier transform
- Duality of fourier transform
- Line spectrum in signals and systems
- Fourier transform amplitude and phase
- Inverse fourier transform
- Fourier transform of ramp function
- Mri fourier transform
- Fourier transform of x
- The fourier transform of unit impulse function is
- Fourier transform of a gaussian
- Fourier
- Fourier equation
- Properties of fourier transform in digital image processing
- Properties fourier transform
- The fourier transform and its applications
- Inverse fourier transform
- Fourier transform
- Short time fourier transform
- Polar fourier series
- Fourier transform of product of two functions
- 2d discrete fourier transform example
- Sinc fourier transform
- Fourier transform of an impulse train
- Discrete fourier transform
- Overlap save method
- Fourier transform of circ function
- Fourier transform duality examples
- Fourier transform is defined for
- Fourier transform of multiplication of two signals
- Integral of unit step
- 3xxxw
- Sine fourier transform
- Duality of fourier transform