Perancangan antarmuka Perancangan proses

52 vi Tampilan citra rekonstruksi Tampilan citra rekonstruksi akan menampilkan citra hasil rekonstruksi dari matriks hasil transformasi. Citra ini berguna untuk membandingkan kualitas dari citra asli dengan citra yang telah dikenai fungsi transformasi DCT dan kemudian direkonstruksi. vii Fungsi-fungsi lain Selain fungsi utama program seperti yang tersebut di atas, dalam program ini juga terdapat beberapa tombol yang terdapat disebelah kanan tampilan program diantaranya adalah: • Tombol “Help” Tombol ini berfungsi untuk menampilkan jendela help yang berisi tentang petunjuk pemakaian program. Menu ini berguna untuk pengguna yang belum mengerti bagaimana cara menjalankan program ini. Gambar 3.6 di bawah ini adalah rancangan tampilan help. Gambar 3.10 Rancangan tampilan help KOMPRESI CITRA DENGAN METODE DISCRETE COSINE TRANSFORM HELP 53 • Tombol “About” Tombol ini berfungsi untuk melihat informasi program. • Popup menu blok matriks. Popup menu ini berfungsi untuk memilih blok matriks yang nantinya akan digunakan untuk transformasi. • Popup menu prosentase. Popup menu ini berfungsi untuk menentukan prosentase kualitas pemampatan yang akan dilakukan. Kualitas pemampatan ditentukan dalam bentuk persen . Metode Kuantisasi Blok Prosentase Blok Matriks Langsung Gambar 3.11 Rancangan tampilan pemilihan metode kuantisasi • Edit text lihat blok. Edit text ini digunakan untuk melihat nilai matriks dengan blok 8x8 pixel, yang nantinya nilai-nilai tersebut akan tampil pada grid yang telah tersedia. Lihat Blok Baris : Kolom : Tampilkan Gambar 3.12 Rancangan tampilan “Lihat Blok” 54 • Edit text kuantisasi Jika user memilih metode kuantisasi berdasarkan blok matriks, maka user dapat pula memasukkan besarnya nilai kuantisasi dalam edit text ini. • Hitung error Penghitungan error dalam program ini dibagi menjadi dua yaitu “per blok” dan “total”. Penghitungan error per blok akan menghitung error dalam blok yang ditampilkan pada grid. Sedangkan penghitungan error total akan menghitung error pada keseluruhan matriks. Gambar 3.13 Rancangan tampilan “Hitung Error” • Tombol “Keluar” Tombol ini berfungsi untuk keluar dari program. • Tombol “Home” Tombol ini berfungsi untuk kembali ke tampilan awal program. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55

C. Algoritma

Algoritma untuk proses transformasi dan rekonstruksi file citra adalah sebagai berikut: • Program akan meminta masukan berupa sebuah citra greyscale dengan resolusi 2 n x2 n . • Selanjutnya user diminta untuk memilih metode kuantisasi. Ada 2 dua metode yang dapat dipilih yaitu “Blok Transform” dan “Langsung”. - Jika user memilih metode “Blok Transform” maka akan diminta masukan berupa blok-blok yang telah tersedia. - Jika user memilih metode “Langsung” maka user akan diminta nilai prosentase yang nantinya akan digunakan untuk proses kuantisasi. • Program akan melakukan transformasi berdasarkan metode yang telah dipilih. • Matriks transformasi selanjutnya akan dikuantisasi. Proses kuantisasi juga terbagi dalam 2 dua metode berdasarkan metode yang telah dipilih sebelumnya. - Jika user memilih metode “Blok Transform” maka kuantisasi akan dilakukan berdasarkan range nilai yang dimaksukkan oleh user. - Jika user memilih metode “Langsung” maka kuantisasi akan dilakukan berdasarkan prosentase yang telah dipilih, dengan sebelumnya dilakukan zigzag scanning dan setelah nilai 56 terkuantisasi akan dilakukan proses dezig-zag scanning untuk mengembalikan ke bentuk matriks. • Kemudian program akan melakukan proses rekonstruksi. Algoritma di atas jika dibuat dalam sebuah flow chart akan menjadi seperti gambar 3.17 dan gambar 3.18 di bawah ini. Start Baca Citra Baca Ukuran Citra A Pilih Metode Langsung Bagi matriks dalam blok Blok matriks Matriks transformasi Kuantisasi nilai Kuantisasi dengan prosentase Matriks hasil kuantisasi Pembagian dengan matriks kuantisasi Zig-zag scanning Dezig-zag scanning Hitung Nilai DCT Prosedur Hitung Transformasi Prosedur Hitung Transformasi Hitung Nilai DCT Matriks transformasi Gambar 3.14 Flow chart transformasi 57 Gambar 3.15 Prosedur hitung sigma DCT 58 A Citra Hasil Selesai Lihat metode Blok matriks Bagi matriks dalam blok Kalikan dengan matriks kuantisasi Hitung Nilai Invers Langsung Prosedur Hitung Sigma Invers Gambar 3.16 Flow chart invers Gambar 3.17 Prosedur hitung sigma Invers 59 Pertama kali, pengguna user akan diminta masukan berupa berkas citra .BMP. Kemudian user diminta untuk memilih metode kuantisasi yang akan dilakukan. Jika user memilih “Blok Matriks”, maka user akan diminta untuk menentukan blok nxn yang akan dipakai untuk mentransformasi citra masukan. Tetapi jika user memilih metode “Langsung” maka citra akan secara utuh ditransformasi tanpa membagi-bagi kedalam blok. Pada metode blok matriks, program akan membagi matriks citra ke dalam blok-blok yang telah dipilih oleh user untuk selanjutnya dilakukan transformasi berdasarkan blok-blok tersebut. Setelah matriks citra ditransformasi, maka dapat langsung direkonstruksi. Proses rekontruksi juga dilakukan per blok, mengacu pada blok saat dilakukan transformasi. Proses kuantisasi kemudian dilakukan dengan memasukkan nilai yang akan menjadi range untuk proses kuantisasi. Pada metode transformasi secara langsung, setelah matriks citra ditransformasi, maka program akan melakukan zig-zag scanning data matriks untuk selanjutnya dilakukan kuantisasi berdasarkan kualitas yang telah ditentukan oleh user. Matriks yang telah dikuantisasi kemudian dimekarkan kembali dengan dezig-zag scanning lalu dikenai fungsi invers agar data matriks dapat kembali seperti semula, atau mirip seperti data aslinya.