Evaluasi Kinerja Sistem Watermarking
Kriteria kinerja Kapasitas (jumlah bit yang bisa diangkut) Kualitas gambar (setelah dimasuki watermark) Ketahanan (terhadap serangan)
Kualitas Gambar Dinilai secara subjektif (dari pengamatan) atau objektif Penilaian objektif menggunakan PSNR:
Kualitas Gambar Varians error dihitung sebagai berikut: error = double(orig_img) - double(wm_img) var_error = var(error(:))
Ketahanan Ketahanan dinilai dari apakah (atau seberapa besar) watermark bisa bertahan jika diserang Serangan tidak selalu harus berhasil menghilangkan watermark, tapi kadang cukup membuat watermark gagal dibaca Penyerang dibatasi kriteria kualitas gambar seperti disebut diatas
Ketahanan Serangan terhadap sistem watermark bisa memiliki berbagai bentuk. Dalam project ini, kita hanya akan melihat sebagian kecil: Additive noise, Filtering, Compression,
Additive Noise Serangan ini dilakukan dengan menambahkan noise ke dalam citra berwatermark Dalam project akan dilakukan penambahan 2 jenis noise: Gaussian dan Salt & Pepper
Additive Noise Penambahan noise dilakukan dengan fungsi Matlab imnoise(): noisy_img = imnoise(input_img, gaussian, M, V) noisy_img = imnoise(input_img, salt & pepper, D)
Additive Noise Parameter M pada noise Gaussian menunjukkan mean (gunakan M=0) Parameter V pada noise Gaussian menunjukkan varians noise (pilih 5 tingkat noise, mulai dari sangat kelihatan sampai sangat tidak kelihatan) Parameter D menunjukkan kerapatan salt & pepper, gunakan nilai 0.005, 0.05 dan 0.1
Filtering Filter yang akan digunakan: Low pass (averaging) filter Laplacian Median filter Semua filter menggunakan kernel 3 x 3
Filtering Kernel filter lowpass dan Laplacian yang digunakan adalah sebagai berikut:
Filtering Implementasi proses filtering menggunakan fungsi imfilter() filtered_img = imfilter(input_img,h) Parameter H adalah salah satu kernel seperti disebutkan sebelumnya.
Filtering Implementasi median filter menggunakan fungsi medfilt2() filtered_img = medfilt2(input_img)
Compression Compression, dalam hal ini lossy compression, berpeluang merusak watermark karena sebagian data citra dibuang oleh proses kompresi. Pada project ini digunakan kompresi JPEG
Compression Kompresi JPEG diimplementasikan menggunakan fungsi imwrite(). comp_img = imwrite(input_img,name, jpg, quality,q) Parameter Q menunjukkan kualitas kompresi. Makin rendah Q, makin besar tingkat kompresi, makin buruk kualitas citra: gunakan Q=30, 75, 90
What you have to do LSB: Hitung PSNR citra setelah diberi watermark Lakukan serangan menggunakan noise, catat PSNR setelah diserang, cek apakah watermark masih terbaca Lakukan serangan menggunakan filter, catat PSNR setelah diserang, cek apakah watermark masih terbaca Lakukan serangan berupa kompresi JPEG, catat PSNR setelah diserang, cek apakah watermark masih terbaca
What you have to do Noise-based: Pilih satu level gain noise, hitung PSNR citra setelah diberi watermark Lakukan serangan menggunakan noise, catat PSNR setelah diserang, cek apakah watermark masih terbaca Lakukan serangan menggunakan filter, catat PSNR setelah diserang, cek apakah watermark masih terbaca Lakukan serangan berupa kompresi JPEG, catat PSNR setelah diserang, cek apakah watermark masih terbaca
What you have to do All: Dari semua percobaan Anda, buat kesimpulan mengenai kinerja sistem watermark yang Anda buat: apa kelemahannya? Apa kekuatannya?
Isi Laporan Penjelasan singkat algoritma watermarking yang Anda gunakan Penjelasan singkat implementasi sistem watermarking yang Anda gunakan Tabel berisi hasil percobaan kinerja (seperti disebut diatas) Kesimpulan: apa kekuatan dan kelemahan sistem yang Anda buat?
Questions? Versi PDF slide ini bisa diunduh di blog.iwansetyawan.org