ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem pada dasarnya merupakan tahapan dalam perancangan sebuah sistem.
Hal ini bertujuan untuk membantu dalam merancang pemodelan sistem yang akan diimplementasikan. Pada dasarnya terdapat tiga fase analisis yaitu analisis masalah, analisis persyaratan dan analisis proses.
3.1.1. Analisis masalah
Seperti yang telah diuraikan pada latar belakang dari skripsi ini, permasalahan yang akan dibahas adalah mengenai perbaikan kualitas citra digital yang terkena noise.
Dalam sistem ini citra yang akan diperbaiki adalah citra asli yang mengalami kerusakan akibat gangguan listrik, arus pendek listrik, listrik padam tiba-tiba dan sebagainya.
Citra digital tersebut akan diberikan filter menggunakan Bandpass Filter dan Bandreject Filter. Akan lebih mudah melakukan proses filter jika citra digital yang diinputkan sudah diubah kedalam domain frekuensi, karena proses filter dalam domain frekuensi dilakukan dengan mengalikan tiap nilai dari intensitas pixel citra digital hasil transformasi fourier g(u,v) dengan nilai intensitas mask filter h(u,v), kemudian dilakukan invers untuk mendapatkan citra yang lebih baik daripada citra sebelum difilter.
Gambar 3.1 berikut merupakan gambaran masalah secara umum dari penelitian dengan menggunakan diagram Ishikawa (fishbone/cause and effect diagram).
Reduksi
Diagram ini merupakan pendekatan terstruktur yang memungkinkan dilakukan suatu analisis lebih terperinci dalam menemukan penyebab-penyebab suatu masalah, ketidaksesuaian dan kesenjangan yang ada. Diagram ini terdiri atas 2 bagian yaitu bagian tulang ikan yang merepresentasikan penyebab atau akar dari suatu masalah (cause), dan bagian kepala ikan yang merepresentasikan dampak atau masalah yang diakibatkan oleh penyebab (effect).
Bagian penyebab suatu masalah (tulang ikan) terdiri atas 4 aspek yaitu Material, Manusia Metode, dan Mesin. Material merupakan aspek permasalahan yang bersumber dari bahan-bahan penyebab suatu masalah atau dampak. Manusia merupakan aspek yang berasal dari sumber daya manusia. Metode merupakan aspek permasalahan yang bersumber dari cara yang digunakan dalam mengatasi dampak.
Dan mesin merupakan aspek yang berasal dari perangkat yang digunakan dalam proses penyelesaian suatu masalah. Pada sistem ini, permasalahan pada aspek material adalah citra yang memiliki noise, pada aspek manusia adalah manusia menginginkan citra yang lebih baik, pada aspek metode adalah metode yang digunakan unutk memperbaiki citra yaitu dengan metode bandpass filter dan bandreject filter, pada aspek mesin adalah sebuah aplikasi yang dibuat untuk memperbaiki citra yang rusak akibat noise.
3.1.2. Analisis persyaratan
Ada dua kategori dalam analisis persyaratan yaitu analisis persyaratan fungsional dan analisis persyaratan non-fungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang disediakan dan harus dimiliki suatu sistem. Sedangakan kebutuhan non-fungsional mendeskripiskan fitur dan persyaratan apa yang harus dilakukan sistem.
I. Kebutuhan Fungsional
Persyaratan fungsional yang harus dimiliki dalam sistem perbaikan citra digital dengan Bandreject Filter dan Bandpass Filter antar lain:
1. Citra digital yang diperbaiki adalah citra digital berformat JPEG.
2. Citra digital yang di-input-kan adalah citra asli yang memiliki noise.
3. Citra digital yang di-input-kan diubah kedalam domain frekuensi sebelum dilakukan proses filter dengan menggunakan Transformasi Fourier.
4. Metode filter yang digunakan adalah Bandreject Filter dan Bandpass Filter.
5. Citra digital hasil perbaikan disimpan dalam format JPEG.
6. Parameter untuk perbandingan sistem menggunakan Mean Squared Error (MSE), Peak Signal to Noise Ratio (PSNR) dan Running Time.
II. Kebutuhan Non-Fungsional
Persyaratan non-fungsional yang harus dipenuhi oleh sistem yang dirancang antara lain:
1. Performa
Perangkat lunak yang dibangun harus dapat memperlihatkan dan menyimpan hasil dari proses filtter citra digital yang dilakukan oleh sistem.
2. Mudah dipelajari dan digunakan
Perangkat lunak yang dibangun memiliki tampikan yang bersahabat, sederhana dan mudah dipahami oleh pengguna (user) serta memaksimalkan penggunaan shortcut.
3. Dokumentsi
Perangkat lunak yang dibangun memiliki panduan penggunaan.
4. Manajemen kualitas
Perangkat lunak yang dibangun akan memiliki kualitas yang baik apabila proses filter yang dilakukan relatif cepat.
5. Kontrol
Perangkat lunak yang digunakan menampilkan pesan error untuk setiap input yang tidak sesuai dan setiap kegagalan yang dilakukan sistem.
6. Hemat biaya
Perangkat lunak yang dibangun tidak memerlukan perangkat tambahan lain dalam proses eksekusinya.
3.1.3. Analisis proses
Analisis proses merupakan pemodelan suatu sistem yang dibangun sebelum melakukan proses pengkodean (coding). Pemodelan ini bertujuan untuk mengetahui keseluruan cara kerja suatu sistem secara detil.
Dalam penelitian ini, penulis menggunakan UML untuk memodelkan sistem.
Model UML yang digunakan antara lain Use Case Diagram, Activity Diagram, Sequence Diagram dan Class Diagram. Pemodelan sistem dilakukan untuk mendapatkan gambaran yang lebih jelas mengenai apa saja objek yang nantinya akan berinteraksi dengan sistem dan apa saja yang dilakukan sistem.
3.1.3.1. Use Case Diagram
Use case merepresentasikan hubungan antara aktor dengan sistem. Aktor merupakan semua pengguna (user) yang terlibat interaksi dengan sistem, seperti manusia, mesin, sistem eksternal, atau pun unit organisasi. Use case diagram merupakan rancangan kebutuhan pada suatu sistem dengan menjelaskan fungsionalitas yang ada pada sistem tersebut. Use case diagram sistem ini dapat dilihat pada Gambar 3.2.
user
Gambar 3.2 Use Case Diagram Sistem
Pada gambar 3.2 tampak bahwa seorang pengguna memiliki interaksi dengan sistem.
Secara garis besar pengguna tidak tahu proses apa saja yang dilakukan sistem pada setiap tahapannya, hanya saja pengguna memegang kontrol proses pada sistem. Proses transformasi fourier, konvolusi dilakukan secara otomatis oleh sistem. Proses MSE, PSNR dan running time merupakan proses untuk menghitung nilai objektif kualitas citra digital, sedangkan proses input citra dan simpan citra dilakukan oleh pengguna.
Berikut ini merupakan dokumentasi naratif untuk use case proses filter citra digital.
Tabel 3.1 Dokumentasi Naratif Untuk Use Case Input Citra Digital Nama Use Case Input citra digittal
Aktor Pengguna
Deskripsi Use case yang mendeskripsikan fungsi input citra digital untuk memasukkan citra sebelum di proses oleh sistem
Pre-condition Citra siap di masukkan ke dalam sistem
Typical course of
Alternatif course Aksi aktor Respon Sistem
- -
Post condition Citra siap untuk di-filter
Tabel 3.2 Dokumentasi Naratif Untuk Use Case Transformasi Fourier
Nama Use Case Transformasi Fourier
Aktor -
Deskripsi
Use case yang mendeskripsikan fungsi Transformasi Fourier yang merupakan bagian penting dalam proses filter dalam domain frekuensi
Pre-condition Citra yang sudah di-input siap untuk ditransformasi
Typical course of
Alternatif course Aksi aktor Respon Sistem
- -
Post condition Spektrum fourier yang merupakan citra hasil transformasi fourier berupa bilangan kompleks siap di konvolusi
Tabel 3.3 Dokumentasi Naratif Untuk Use Case Fungsi Filter Nama Use Case Fungsi Filter
Aktor -
Deskripsi Use case yang mendeskripsikan fungsi filtering dan proses
pembuatan mask filter untuk Bandpass Filter dan Bandreject Filter Pre-condition Citra digital hasil transformasi fourier
Typical course of nilai mask filter sesuai dengan fungsi Bandpass Filter dan Bandreject Filter
Alternatif course Aksi aktor Respon Sistem
- -
Post condition Mask Filter siap diimplementasikan
Tabel 3.4 Dokumentasi Naratif Untuk Use Case Konvolusi
Nama Use Case Proses Konvolusi citra digittal
Aktor -
Deskripsi Use case yang mendeskripsikan proses konvolusi citra digital dalam domain frekuensi
Pre-condition Mask filter dan citra digital hasil transformasi fourier
Typical course of nilai intensitas tiap – tiap elemen spektrum fourier dan mask filter
Alternatif course Aksi aktor Respon Sistem
- -
Post condition Citra digital hasil konvolusi
Tabel 3.5 Dokumentasi Naratif Untuk Use Case Invers Fourier Nama Use Case Proses Invers citra digital
Aktor -
Deskripsi Use case yang mendeskripsikan proses Invers Fourier untuk mengembalikan citra spektrum fourier ke bentuk citra aslinya Pre-condition Citra digital hasil konvolusi
Typical course of
Alternatif course Aksi aktor Respon Sistem
- -
Post condition Citra digital hasil filtering
Tabel 3.6 Dokumentasi Naratif Untuk Use Case MSE, PSNR, Running Time Nama Use Case Proses perhitngan MSE, PSNR dan Dunning Time
Aktor -
Deskripsi Use case yang mendeskripsikan proses perhitung parameter pembanding kualiltas citra secara objektif
Pre-condition Citra digital dengan noise
Alternatif course Aksi aktor Respon Sistem
- -
Post condition Nilai objektif setiap filter telah dihitung dan siap dibandingkan Tabel 3.7 Dokumentasi Naratif Untuk Use Case Simpan Citra
Nama Use Case Simpan citra digital
Aktor Pengguna
Deskripsi Use case yang mendeskripsikan proses penyimpanan citra digital yang sudah di filter
Pre-condition Citra Digital yagn sudah di filter
Typical course of
Alternatif course Aksi aktor Respon sistem
- -
Post condition Proses filter selesai dan citra hasil filter sudah disimpan
3.1.3.2. Activity Diagram
Activity diagram merupakan teknik untuk menggambarkan berbagai alur aktivitas dalam sistem yang sedang dibangun. Activity diagram biasanya digunakan untuk merinci detil situasi yang memerlukan banyak proses paralel pada saat eksekusi beberapa operasi (aktivitas). Aktivitas pada activity diagram ditandai dengan segiempat bersudut bulat, sedangkan aliran kontrol aktivitas ditandai dengan tanda panah.
Activity diagram dari sistem ditunjukkan pada gambar 3.3 berikut :
Sistem User
inputkan citra digital ambil informasi dari citra digital
cek proses yang harus dilakukan
memanggil modul yang diperlukan
menampilkan citra digital hasil filter
konfirmasi keberhasilan proses
Gambar 3.3 Activity Diagram Proses Filter Citra Digital
Berikut adalah activity diagram dari transformasi fourier yang ditunjukkan pada gambar 3.4 berikut :
Sistem User
Menerima Citra dengan Noise
Memanggil modul Fast Fourier Transformation
Melakukan Transformasi Fourier untuk setiap baris pixel
Melakukan Transformasi Fourier untuk setiap kolom pixel
Mengembalikan matriks berisi bilangan kompleks
Melakukan Shifting untuk menampilkan Spektrum Fourier
Gambar 3.4 Activity Diagram Transformasi Fourier
Pada Activity Diagram Transformasi Fourier tampak bahwa Transformasi Fourier adalah proses untuk mengubah nilai – nilai intensitas dari setiap pixel citra digital yang menghasilkan matriks dengan ukuran lebar dan tinggi yang sama dengan citra digital masukan.
Gambar 3.5 dan gambar 3.6 berikut merupakan activity diagram untuk proses filter menggunakan Bandreject filter dan Bandpass filter. Selanjutnya alur proses perhitungan parameter pembanding kualiltas citra secara objektif berupa MSE, PSNR dan Running Time seperti terlihat pada activity diagram gambar 3.7 dan proses penyimpanan citra digital hasil filter terlihat pada gambar 3.8.
Sistem User
memanggil modul Bandreject Filter
ketajaman filter Ideal
Generate Ideal Mask Filter
ketajaman filter Butterworth
ketajaman filter Gaussian
Generate Butterworth Mask Filter
Generate Gaussian Mask Filter Y
Y Y N
N N
Gambar 3.5 Activity Diagram proses filter dengan Bandreject Filter
Sistem User
memanggil modul Bandpass Filter
ketajaman filter Ideal
Generate Ideal Mask Filter
ketajaman filter Butterworth
ketajaman filter Gaussian
Generate Butterworth Mask Filter
Generate Gaussian Mask Filter Ya
Ya Ya Tidak
Tidak Tidak
Gambar 3.6 Activity Diagram proses filter dengan Bandpass Filter
Sistem User
memeriksa citra asli dan citra hasil
memanggil modul MSE
memanggil modul PSNR
memanggil rekaman waktu selama proses
menampilkan hasil perhitungan MSE, PSNR, Running Time
Gambar 3.7 Activity Diagram perhitungan MSE, PSNR dan Running Time
Sistem User
Menekan tombol save ?
mengambil citra yang akan disimpan
Meminta lokasi Penyimpanan citra
Menyimpan citra pada lokasi yang dipilih Memberi lokasi penyimpanan citra
Ya Tidak
Gambar 3.8 Activity Diagram Simpan Citra Digital 3.1.3.3. Sequence Diagram
Sequence diagram menjelaskan interaksi antar objek dalam suatu sistem yang telah didefenisikan pada use case diagram sebelumnya. Sequence diagram digunakan untuk menggambarkan arus pekerjaan, pesan yang disampaikan dan bagamana elemen didalamnya bekerjasama dari waktu ke waktu.
Terdapat empat objek yang didefenisikan pada sistem ini yaitu user, proses trasnformasi fourier, proses filtering, dan perhitungan MSE, PSNR. Sequence diagram sistem dapat dilihat pada Gambar 3.9.
USER
FFT FILTER MSE, PSNR
Buka Gambar Tampil Citra
ForwardFFT
FFTShift
transfour.FourierPlot
Tekan Tombol RUN Bandreject Filter
Bandreject
Mask Filter
Konvolusi Tampil Citra Spektrum Fourier
ForwardFFT
InverseFFT
FFTPlot(FFTShifted) Tampil Citra Hasil Bandreject
Hitung MSE Tampil Hasil Perhitungan MSE
Hitung PSNR Tampil Perhitungan PSNR
Tekan Tombol RUN Bandpass Filter
Bandpass
Mask Filter
Konvolusi ForwardFFT
InverseFFT
Tampil Citra Hasil Bandpass
Hitung MSE Tampil Perhitungan MSE
Hitung PSNR Tampil Perhitungan PSNR
FFTPlot(FFTShifted)
Gambar 3.9 Sequence Diagram Proses Filter Citra Digital
3.2. Perancangan Sistem