BAB 4 IMPLEMENTASI DAN EVALUASI
4.1 Lingkungan Perancangan 4.1.1 Hardware Dalam perancangan program aplikasi ini, penulis menggunakan komputer dan sistem operasi untuk menulis program dengan spesifikasi sebagai berikut: 1. Processor: AMD Athlon Neo X2 @1.6GHz 2. Memory: 2 GB(1,87 GB usable) 3. Sistem Operasi:Windows 7 Home Basic Service Pack 1 Dan sedangkan untuk mengimplementasikan program yang telah dibuat, dengan spesifikasi sebagai berikut: 1. Processor: Contex-A8, 1.1GHz 2. RAM: 512 MB 3. Sistem Operasi: Android 4.0 Ice Cream Sandwich
4.1.2 Software Adapun pemrograman yang digunakan adalah sebagai berikut: 1. Platform: Android SDK Version 14, Eclipse SDK Version: 4.2.1Build id: M20120914-1800 2. Bahasa Pemrograman: Android Pemilihan Android sebagai bahasa permrograman dan sekaligus implementasi program aplikasi pada perangkat mobile, karena Android merupakan sistem operasi
67
68 pada mobile yang bersifat open source, sistem operasi sedang berkembang sangat pesat saat ini.
4.2 Petunjuk Instalasi Sebelum mengimplementasikan program aplikasi ini. aplikasi memiliki minimum SDK Version 10,dan user memiliki aplikasi File Manager atau aplikasi lain yang fungsinya sama seperti Explorer di Windows. Aplikasi dapat di cari di Play Store.Setelah itu user dapat mengikuti langkah-langkah sebagai berikut: Langkah 1 : Hubungkan Android device dengan komputer dengan USB, setelah itu aktifkan atau Turn on USB storage di Android device. Kemudian akan tampil Removable Disk di Windows. Langkah 2 : Copy file “Reversible Data Hiding.apk” ke Removable Disk, folder “Download”. Langkah 3 : Eject Removable Disk di Windows dan Trun off USB Storage. Langkah 4 : Buka File Manager di Android device, kemudian pilih folder “Download”, tab file “Reversible Data Hiding.apk” untuk meng-install. Langkah 5 : Setelah install selesai maka user dapat menjalankan program di Android device.
69 4.3 Cara Kerja Program Aplikasi Pada awalnya user membuka menu apps di Android device seperti Gambar 4.1 Menu Apps di Android device. , kemudian tab aplikasi “Reversible Data Hiding”.
Gambar 4.1 Menu Apps di Android device. Setelah itu tampilan pertama dari aplikasi terlihat seperti Gambar 4.2 Awal Mula Menu Utama. Sebelum user menyisipkan pesan, user harus membuka file citra, dengan men-touch button ”Memilih Citra ”. Setelah itu akan tampil seperti Gambar 4.3 Open Dialog File. di Open Dialog terdapat path dijelajah dan filename di bawah path, akan tercetak bila user telah men-touch sebuah file. Untuk mengetahui mana sebuah folder atau file bisa dilihat bila tanda seperti “< >” menyatakan folder contohnya “< Nama Folder>”, bila dilist ada tanda seperti “<...>” menyatakan up folder. Sedangkan bila tidak ada tanda seperti sebelumnya berarti menyatakan sebuah file atau bisa juga terlihat dari file type tersebut. Setelah memilih file Type (.jpg atau .jpeg) maka user dapat men-select file tersebut dan men-touch “Ok”.
70
Gambar 4.2 Awal Mula Menu Utama
Gambar 4.3 Open Dialog File
71 Setelah user men-touch “Ok” pada Open Dialog, maka akan tampil seperti Gambar 4.4 , kemudian user dapat menyisipkan pesan dengan men-touch “Menyisipkan”. Setelah itu tampil seperti Gambar 4.5.
Gambar 4.4 Menu Utama Setelah Open File
Gambar 4.5 Loading
72 Di tampilan Gambar 4.5 disana user dapat melihat status proses, dimana status proses itu diasilkan dari proses membuat struktur Quad-tree Segmentation dan juga menghitung banyak bit yang dapat disisipkan pada sebuah citra.
Gambar 4.6 Input Pesan
Gambar 4.7 Hasil dari Menyisipkan Setelah itu user melanjutkan mengisi pesan yang akan disisipkan ke citra terlihat pada Gambar 4.6. disana user kemudian dapat men-touch proses untuk melanjutkan
73 proses menyisipkan pesan yang telah diinput user. Sebelum mengetahui hasil dari menyisipkan user menunggu proses yang berjalan seperti pada Gambar 4.5. setelah itu maka dapat mengetahui hasil dari proses keseluruhan dari menyisipkan , seperti key,PSNR, waktu proses, dan filename dari hasil penyisipan, dan dapat dilihat pada Gambar 4.7. setelah
user men-touch “ok” maka kembali ke menu utama pada
Gambar 4.4, dan secara otomatis pada citra-setgo yang menjadi pilhan citra. Kemudia user dapat mengekstrak citra dengan men-touch “Mengesktrak” pada menu utama, setelah itu user menginput key yang dihasilkan dari hasil proses menyisipkan pada Gambar 4.7, kemudian men-touch “proses” telihat pada Gambar 4.8.
Gambar 4.8 Input Key
74 Kemudian user menunggu proses mengesktrak seperti pada Gambar 4.5. setelah itu maka akan tampil hasil dari proses mengesktrak terlihat pada Gambar 4.9. disana user dapat melihat pesan, waktu proses , dan filename. Kemudian user dapat kembali kemenu utama dengan men-touch “ok”.
Gambar 4.9 Hasil dari Mengekstrak Kemudian user men-touch “Keluar” pada menu utama, dan men-touch “Yes”pada validasi keluar, dan program Reversible Data Hiding selesai.
75
4.4 Evaluasi Program Untuk mengevaluasi program penulis menggunakan citra berdimensi 512 x 512 untuk menyisipkan bisa dilihat pada Gambar 4.10.
\ (a) Lenna
(b) F-16
(c) House
(d) girl3
(e) Peppers
(f) Baboon
Gambar 4.10 Tes Citra
Untuk pesan yang akan disisipkan pada test citra bisa dilihat sebagai berikut: Tabel 4.1 Pesan Input Tipe input Pesan Data Data
filename test-1.txt test-2.gif
Besar bit 128 1024+80 13392 +80
Sebelum melakukan proses menyisipkan program melakukan proses Quad-tree Segmentation terhadap citra. Hasil dari proses Quad-tree Segmentation menghasilkan
76 maksimum bit dan struktur bit Quad-tree Segmentation, dan hasil proses Quad-tree Segmentation bisa dilihat pada Tabel 4.2.
Tabel 4.2 Struktur bit Quad-tree dari Proses Quad-tree Segmentation Citra
Size
Lenna
474,42 Kb
Perkiraan Maksimum bit 48040
F-16
419,25 Kb
103864
House
451,97 Kb
92000
Girl3
326,48 Kb
74360
Peppers
374,39 Kb
35920
Baboon
498,59 Kb
20832
Struktur bit Quad-tree Segmentation
111010000000100001000011010000001000 001000011000010000100001000011000010 0001000010000 111000011000001000001000011000000100 001100000100001010000100000110010000 010100001000001100000100000110000010 000100001100001000011000001000001001 00000 111000001100000100001000001100001000 100001000010000111000001000010000100 001100001000010000100001000011000010 01000000101000000 111100001000010000100001100001000010 000100001010000100001000011000010000 010000111000010000100001000011000010 000100001000011000010000001100001000 000111000010000100000100001100001000 000100100000110001000010100000100001 00100000100010000 111000010000100001000011000010000100 001100000001100000100001000011000010 0001000010000 110000110000100000100001000011000010 00000
Setelah Proses Quad-tree Segmentation didapatlah Struktur bit Quad-tree, maka citra yang diinput akan dibagi-bagi atau dipartisi(Segmentation), seperti pada Gambar 4.11.
77
Gambar 4.11 Segmentation pada Citra Lenna
Setiap pembagian(Segmentation) pada citra mengikuti pola struktur tree dari Quadtree seperti pada Gambar 4.11.
Gambar 4.12 Quad-tree pada Citra Lenna
78 Pembentukan Struktur tree pada Quad-tree, pada awalnya root atau b(0,1) dihitung besar PayLoad :
Contoh :
,77(3218),218(0)
bit
79 Kemudian hasil dari b(0,1) dibandingkan dengan total Payload dari 4 child yaitu b(1,1), b(1,2), b(1,3), dan b(1,4). Bila lebih besar maka b(0,1) di bagi menjadi 4 bagian. Kemudian Payload b(1,1) dibandingkan dengan total Payload dari 4 child b(1,1), dan seterusnya hingga level tree = 0. Setelah itu untuk perhitungan maksimum bit diambil dari total Payload disetiap daun node dari Quad-tree atau pada Gambar 4.12, node yang berwarna biru tua. Kemudian penulis melanjutkan menyisipkan citra setelah proses Quad-tree Segmentation dengan pesan yang ada di Tabel 4.1, dan membuat tabel hasil PSNR dan waktu proses dari tiap-tiap pesan yang disisipkan ke citra. bisa dilihat sebagai berikut :
Tabel 4.3 Hasil PSNR dan Waktu Proses dari menyisipkan Pesan
Lenna
F-16
House
Girl3
Peppers
Baboon
Pesan
test-1.txt
test-2.gif
58,23 dB
58,22 dB
53,43 dB
(18 detik)
(18 detik)
(19 detik)
58,34 dB
27,82 dB
54,54 dB
(20 detik)
(20 detik)
(20 detik)
59,07 dB
57,81 dB
55,03 dB
(18 detik)
(18 detik)
(19 detik)
64,36 dB
63,90 dB
58,41 dB
(21 detik)
(21 detik)
(22 detik)
57,91 dB
57,35 dB
54,42 dB
(19 detik)
(19 detik)
(22 detik)
59,29 dB
57,23 dB
50,93 dB
(17 detik)
(17 detik)
(22 detik)
80 Perhitungan PSNR sebagai berikut:
Sedangkan perhitungan MSE sebagai berikut
dimana M menyatakan panjang Citra dan N menyatakan lebar Cita, Total kuadrat selisi piksel Citra-Stego (
dengan Citra-Original ( ) dibagi dengan luas Citra
maka dihasilkan MSE. Dari hasil PSNR dari penyisipan dengan jumlah bit yang diinput pada citra lenna didapat grafik sebagai berikut:
Gambar 4.13 Grafik Hasil PSNR dari citra Lenna terhadat banyak bit yang disisipkan