Watermarking Pada Citra Digital Dengan Menggunakan Discrete Cosine Transform
WATERMARKING PADA CITRA DIGITAL
DENGAN MENGGUNAKAN DISCRETE
COSINE TRANSFORM
SKRIPSI
PANJI PUTRA SITORUS
041401014
PROGRAM STUDI S1 ILMU KOMPUTER
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2008
(2)
WATERMARKING PADA CITRA DIGITAL DENGAN MENGGUNAKAN DISCRETE
COSINE TRANSFORM
SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana Sains
PANJI PUTRA SITORUS 041401014
PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN
(3)
PERSETUJUAN
Judul : WATERMARKING PADA CITRA DIGITAL
DENGAN MENGGUNAKAN DISCRETE COSINE TRANSFORM
Kategori : SKRIPSI
Nama : PANJI PUTRA SITORUS
Nomor Induk Mahasiswa : 041401014
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Desember 2008
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dra. Mardiningsih, M. Si Syahriol Sitorus, S. Si, M. IT
NIP. 131 803 344 NIP. 132 174 687
Diketahui/Disetujui oleh
Departemen S1 Ilmu Komputer FMIPA USU Ketua,
Prof. Dr. Muhammad Zarlis NIP. 131 570 434
(4)
PERNYATAAN
WATERMARKING PADA CITRA DIGITAL DENGAN MENGGUNAKAN DISCRETE
COSINE TRANSFORM
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Desember 2008
Panji Putra Sitorus 041401014
(5)
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Allah SWT, dengan limpahan karunia-Nya kertas kajian ini berhasil diselesaikan dalam waktu yang telah ditetapkan.
Ucapan terima kasih penulis sampaikan kepada Syahriol Sitorus, S.Si, M.IT dan Dra. Mardiningsih, M.Si selaku pembimbing pada penyelesaian skripsi ini yang telah memberikan panduan dan penuh kepercayaan kepada penulis untuk menyempurnakan kajian ini. Panduan ringkas dan padat dan profesional telah diberikan kepada penulis agar penulis dapat menyelesaikan tugas ini. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi Ilmu Komputer, Prof. Dr. Muhammad Zarlis dan Syahriol Sitorus, S.Si, M.IT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Program Studi Ilmu Komputer FMIPA USU, pegawai di FMIPA USU. Akhirnya, tidak terlupakan kepada yang tersayang ayahanda Gontar P. Sitorus dan ibunda Siti Aisyah, adikku tercinta Meta Winda Sitorus, dan juga semua anggota keluarga serta teman-teman yang telah berjasa dan selalu sabar dalam memberikan dorongan kepada penulis selama menyelesaikan skripsi ini. Semoga Allah SWT akan membalasnya.
(6)
ABSTRAK
Watermark merupakan sebuah identifikasi data yang disisipkan dalam dokumen yang
akan dilindungi, mengandung informasi yang menyangkut perlindungan hak cipta dan autentikasi data, seperti identitas pencipta, pemilik, distributor, ataupun konsumen yang sah dari data digital tersebut. Pada penelitian ini, teknik watermarking bekerja pada daerah berfrekuensi menengah, melalui proses penyisipan bit watermark pada koefisien-koefisen Discrete Cosine Transform (DCT) yang telah ditentukan untuk mendapatkan keseimbangan antara ketahanan dan transparansi. Dengan memanfaatkan karakteristik koefisien-koefisien DCT tersebut, maka sangat memungkinkan untuk mengekstrak bit watermark dengan tepat tanpa menggunakan citra asli. Metodologi pengembangan sistem menggunakan pendekatan model air terjun dan iterasinya. Objektif utama sistem ini adalah untuk menganalisis transformasi DCT dalam proses penyisipan dan ekstraksi watermark, baik dari segi kecepatan waktu, besar ukuran file, perubahan citra ter-watermark, perubahan citra hasil ekstraksi, maupun ketahanan watermark dari beberapa serangan. Hasil pengujian membuktikan bahwa teknik watermarking tersebut dapat memenuhi kriteria transparansi. Proses penyisipan dan ekstraksi watermark berlangsung cepat serta ukuran citra hasil watermarking tidak berubah. Selain itu, watermark yang disisipkan juga memiliki ketahanan terhadap proses rotasi, kompresi JPEG, dan penambahan
noise sampai dengan batas tertentu. Akan tetapi, watermarking dengan transformasi
(7)
DIGITAL IMAGE WATERMARKING USING DISCRETE COSINE TRANSFORM
ABSTRACT
A watermark is an identification data that embedded in the document to be protected, carrying information pertaining to copyright protection and data authentication, such as the identity of the creator, owner, distributor, or authorized consumer of digital data. In this research, the watermarking technique operates in the middle frequency domain, by embedding watermark bit in a selected set of Discrete Cosine Transform (DCT) coefficients to get a balance between robustness and fidelity. By exploiting characteristic of the DCT coefficients, it is possible to reliably extract the embedded watermark bit without resorting to the original unmarked image. The methodology for development of the system was based on Water Fall Model and its iteration approach. The main objective of the development of this system is to analyze DCT transformation in watermark insertion and extraction, such as time velocity, file size, the change of watermarked image, the change of extracted image, and the robustness of watermark from some attacks. Experimental results demonstrate that the watermarking technique can satisfies the fidelity criteria. The watermark insertion and extraction execute quickly and the size of watermarked image doesn’t change. Other than, the embedded watermark is also robust to rotation, JPEG compression, and noise addition until certain limit. But, watermarking with DCT transformation has bad robustness to cropping and resizing.
(8)
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Abstract vi
Daftar Isi vii
Daftar Tabel ix
Daftar Gambar x
Bab 1 Pendahuluan 1
1.1Latar Belakang 1
1.2Rumusan Masalah 2
1.3Batasan Masalah 3
1.4Tujuan 4
1.5Manfaat 4
1.6Metodologi Penelitian 4
1.7Sistematika Penulisan 5
Bab 2 Landasan Teori 7
2.1 Citra Digital 7
2.1.1 Definisi citra digital 7
2.1.2 Klasifikasi citra digital 8
2.1.3 Pixel (picture element) 10
2.1.4 Format file citra 10
2.2 Digital Watermarking 11
2.2.1 Asal usul watermarking 12
2.2.2 Watermark dan watermarking 13
2.2.3 Tujuan watermarking 14
2.2.4 Karakteristik watermarking 14
2.2.5 Attack (serangan) 15
2.3 Proses Watermarking 16
2.3.1 Penyisipan watermark (encode) 17 2.3.2 Ekstraksi watermark (decode) 18
2.4 Transformasi DCT 19
2.5 Penyisipan Bit 21
2.6 Korelasi 23
2.7 Kelebihan dan Kekurangan DCT 24
2.8 Penelitian Sejenis 24
Bab 3 Analisis dan Perancangan 27
(9)
3.3 Analisis Penyisipan 30
3.4 Analisis Ekstraksi 35
3.5 Analisis Transparansi dan Ketahanan 36
3.6 Analisis Fungsional Sistem 37
3.6.1 DFD level 0 38
3.6.2 DFD level 1 39
3.6.3 DFD level 2 untuk proses penyisipan watermark 40 3.6.4 DFD level 2 untuk proses ekstraksi watermark 42 3.6.5 DFD level 3 untuk proses encode watermark 44 3.6.6 DFD level 3 untuk proses decode watermark 46 3.6.7 Flowchart penyisipan bit watermark 49 3.6.8 Flowchart ekstraksi citra ter-watermark 51
Bab 4 Implementasi dan Pengujian 53
4.1 Lingkungan Implementasi 53
4.2 Perangkat Keras 53
4.3 Perangkat Lunak 53
4.4 Implementasi Antarmuka 54
4.4.1 Antarmuka halaman utama 54
4.4.2 Antarmuka penyisipan watermark 55 4.4.3 Antarmuka ekstraksi watermark 55
4.5 Pengujian 56
4.5.1 Arsip citra yang digunakan 57
4.5.2 Pengujian penyisipan 59
4.5.3 Pengujian ekstraksi 63
4.5.4 Pengujian ketahanan terhadap rotasi 66 4.5.5 Pengujian ketahanan terhadap cropping 71 4.5.6 Pengujian ketahanan terhadap resizing 74 4.5.7 Pengujian ketahanan terhadap kompresi JPEG 77 4.5.8 Pengujian ketahanan terhadap penambahan noise 82
Bab 5 Penutup 90
5.1 Kesimpulan 90
5.2 Saran 91
Daftar Pustaka 92
Lampiran A : Langkah Mendapatkan DCT 2 Dimensi Untuk Koefisien (1,1) 94 Lampiran B : Langkah Mendapatkan IDCT 2 Dimensi Untuk Koefisien (1,1) 100
(10)
DAFTAR TABEL
Halaman
Tabel 3.1 Koefisien DCT Yang Berada Pada Frekuensi Menengah 32
Tabel 3.2 Entitas Data Dalam DFD Level 0 38
Tabel 3.3 Entitas Data Dalam DFD Level 2 Untuk Proses Penyisipan 42 Tabel 3.4 Entitas Data Dalam DFD Level 2 Untuk Proses Ekstraksi 44 Tabel 3.5 Entitas Data Dalam DFD Level 3 Untuk Proses Encode 46
Watermark
Tabel 3.6 Entitas Data Dalam DFD Level 3 Untuk Proses Decode 48 Watermark
Tabel 4.1 Hasil Pengujian Penyisipan 62
Tabel 4.2 Hasil Pengujian Ekstraksi 65
Tabel 4.3 Hasil Pengujian Ketahanan Terhadap Rotasi Searah Jarum Jam 69 Tabel 4.4 Hasil Pengujian Ketahanan Terhadap Rotasi Berlawanan Arah 70
Jarum Jam
Tabel 4.5 Hasil Pengujian Ketahanan Terhadap Cropping 73 Tabel 4.6 Hasil Pengujian Ketahanan Terhadap Resizing 76 Tabel 4.7 Hasil Pengujian Ketahanan Terhadap Kompresi JPEG 81 Tabel 4.8 Hasil Pengujian Ketahanan Terhadap Penambahan Gaussian 87
Noise
Tabel 4.9 Hasil Pengujian Ketahanan Terhadap Penambahan Salt and 88 Pepper Noise
(11)
DAFTAR GAMBAR
Halaman
Gambar 2.1 Citra Biner 8
Gambar 2.2 Citra Grayscale 9
Gambar 2.3 Pembagian Koefisien Frekuensi DCT Untuk Ukuran 21 Blok 8 x 8
Gambar 3.1 Model Penyisipan Dan Ekstraksi Watermark 28
Gambar 3.2 Model Penyisipan Watermark 30
Gambar 3.3 Model Ekstraksi Watermark 35
Gambar 3.4 Trade Off Dalam Watermarking 37
Gambar 3.5 DFD Level 0 38
Gambar 3.6 DFD Level 1 39
Gambar 3.7 DFD Level 2 Untuk Proses Penyisipan Watermark 41 Gambar 3.8 DFD Level 2 Untuk Proses Ekstraksi Watermark 43 Gambar 3.9 DFD Level 3 Untuk Proses EncodeWatermark 45 Gambar 3.10 DFD Level 3 Untuk Proses DecodeWatermark 47 Gambar 3.11 Flowchart Penyisipan Bit Watermark 50 Gambar 3.12 Flowchart Ekstraksi Citra Ter-watermark 52
Gambar 4.1 Tampilan Halaman Utama 54
Gambar 4.2 Tampilan Penyisipan Watermark 55
(12)
ABSTRAK
Watermark merupakan sebuah identifikasi data yang disisipkan dalam dokumen yang akan dilindungi, mengandung informasi yang menyangkut perlindungan hak cipta dan autentikasi data, seperti identitas pencipta, pemilik, distributor, ataupun konsumen yang sah dari data digital tersebut. Pada penelitian ini, teknik watermarking bekerja pada daerah berfrekuensi menengah, melalui proses penyisipan bit watermark pada koefisien-koefisen Discrete Cosine Transform (DCT) yang telah ditentukan untuk mendapatkan keseimbangan antara ketahanan dan transparansi. Dengan memanfaatkan karakteristik koefisien-koefisien DCT tersebut, maka sangat memungkinkan untuk mengekstrak bit watermark dengan tepat tanpa menggunakan citra asli. Metodologi pengembangan sistem menggunakan pendekatan model air terjun dan iterasinya. Objektif utama sistem ini adalah untuk menganalisis transformasi DCT dalam proses penyisipan dan ekstraksi watermark, baik dari segi kecepatan waktu, besar ukuran file, perubahan citra ter-watermark, perubahan citra hasil ekstraksi, maupun ketahanan watermark dari beberapa serangan. Hasil pengujian membuktikan bahwa teknik watermarking tersebut dapat memenuhi kriteria transparansi. Proses penyisipan dan ekstraksi watermark berlangsung cepat serta ukuran citra hasil watermarking tidak berubah. Selain itu, watermark yang disisipkan juga memiliki ketahanan terhadap proses rotasi, kompresi JPEG, dan penambahan
noise sampai dengan batas tertentu. Akan tetapi, watermarking dengan transformasi DCT memiliki ketahanan yang buruk terhadap proses cropping dan resizing.
(13)
DIGITAL IMAGE WATERMARKING USING DISCRETE COSINE TRANSFORM
ABSTRACT
A watermark is an identification data that embedded in the document to be protected, carrying information pertaining to copyright protection and data authentication, such as the identity of the creator, owner, distributor, or authorized consumer of digital data. In this research, the watermarking technique operates in the middle frequency domain, by embedding watermark bit in a selected set of Discrete Cosine Transform (DCT) coefficients to get a balance between robustness and fidelity. By exploiting characteristic of the DCT coefficients, it is possible to reliably extract the embedded watermark bit without resorting to the original unmarked image. The methodology for development of the system was based on Water Fall Model and its iteration approach. The main objective of the development of this system is to analyze DCT transformation in watermark insertion and extraction, such as time velocity, file size, the change of watermarked image, the change of extracted image, and the robustness of watermark from some attacks. Experimental results demonstrate that the watermarking technique can satisfies the fidelity criteria. The watermark insertion and extraction execute quickly and the size of watermarked image doesn’t change. Other than, the embedded watermark is also robust to rotation, JPEG compression, and noise addition until certain limit. But, watermarking with DCT transformation has bad robustness to cropping and resizing.
(14)
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Dengan perkembangan komputer digital dan perangkat–perangkat lainnya yang serba digital, ada beberapa faktor yang membuat data digital seperti audio, citra, dan video banyak digunakan, antara lain karena mudah diduplikasikan dan disimpan, mudah diolah lebih lanjut, serta mudah didistribusikan baik dengan media disk maupun melaui Internet.
Perkembangan Internet yang cepat saat ini juga menyebabkan penyebaran dan pertukaran informasi menjadi lebih mudah dan cepat. Dengan adanya Internet sebagai sistem jaringan terluas yang menghubungkan hampir seluruh komputer di dunia, tentu saja membuat hampir segala jenis data dan informasi dapat diperoleh dan yang dibutuhkan hanyalah sebuah komputer yang terhubung dengan Internet. Sayangnya, sebagian data dan informasi yang dipertukarkan seharusnya tidak boleh dimodifikasi tanpa izin karena mengandung hak cipta pemiliknya.
Watermarking adalah teknik yang digunakan untuk menyisipkan sedikit
informasi yang menunjukkan kepemilikan atau data lain pada materi multimedia, tetapi tidak diketahui keberadaannya oleh indera manusia dan mampu bertahan dari berbagai serangan yang bermaksud untuk menghilangkan informasi yang disisipkan. Untuk menjawab kebutuhan akan perlindungan hak cipta tersebut, maka teknologi
watermarking digunakan untuk melakukan proteksi hak cipta pada data dan informasi.
(15)
mengirim pesan rahasia apapun tanpa menimbulkan kecurigaan dimana media penampung tidak mempunyai arti apa-apa (meaningless). Persyaratan steganografi adalah aman, sulit dideteksi, dan sebanyak mungkin menampung pesan (large
capacity). Sedangkan watermaking bertujuan untuk perlindungan hak cipta
(copyright), pembuktian kepemilikan (ownership), dan sidik jari (fingerprinting) dimana justru media penampung yang diberi proteksi. Persyaratan yang harus dimiliki
watermarking tidak hanya sulit dideteksi, tetapi juga harus tahan dan sulit dihapus (robustness).
Salah satu metode watermarking adalah dengan menggunakan metode DCT (Discrete Cosine Transform) yang pertama kali diperkenalkan oleh Ahmed, Natarajan dan Rao pada tahun 1974 dalam makalahnya yang berjudul ”On image processing and
a discrete cosine transform”. Penggunaan metode DCT pada skripsi ini
dilatarbelakangi oleh ketahanan watermark dari beberapa attack, terutama kompresi JPEG sehingga metode ini lazim digunakan. Popularitas kompresi yang meningkat saat ini membuat citra harus tahan terhadap hal ini.
1.2. Rumusan Masalah
Dari berbagai penelitian yang sudah dilakukan, belum ada suatu metode watermarking
ideal yang bisa tahan terhadap semua proses pengolahan digital yang mungkin. Biasanya masing-masing penelitian menfokuskan pada hal hal tertentu yang dianggap penting. Penelitian dibidang watermarking ini masih terbuka luas dan menarik, salah satunya karena belum ada suatu standar yang digunakan sebagai alat penanganan masalah hak cipta ini. Salah satu metode yang umum digunakan adalah DCT (Discrete Cosine Transform). Masalah yang ada dalam implementasi adalah :
1. Bagaimana hasil kecepatan penyisipan dan ekstraksi watermark ?
2. Bagaimana ukuran file citra ter-watermark dan watermark hasil ekstraksi ? Apakah semakin besar atau tidak ?
(16)
3. Bagaimana perubahan pada citra hasil penyisipan watermark ? Apakah perubahan pada citra ter-watermark sulit dibedakan dengan citra aslinya ?
4. Bagaimana perubahan watermark hasil ekstraksi ?
5. Bagaimana ketahanan watermark yang disisipkan sesuai dengan perubahan yang terjadi apabila dilakukan beberapa serangan (attack) seperti rotasi, kompresi JPEG, perubahan ukuran citra, dan penambahan noise ?
1.3. Batasan masalah
Untuk memfokuskan pada tujuan penelitian maka penulis membatasi pembahasan tugas akhir ini. Adapun yang menjadi pembatasan masalah adalah sebagai berikut :
1. Watermarking dilakukan pada citra digital berukuran N x N yang habis dibagi 8 dengan menggunakan transformasi DCT (Discrete Cosine Transform).
2. Hanya pada penyisipan dan ekstraksi watermark.
3. Citra yang disisipkan adalah citra monokrom (berwarna hitam putih). Hal ini dimaksudkan karena citra monokrom memiliki frekuensi rendah sehingga energi watermark yang tersebar cukup kecil pada frekuensi domain (citra asli).
4. Citra asli yang digunakan adalah citra grayscale dan citra berwarna dengan ruang warna RGB (Red Green Blue).
5. Format file citra asli yang digunakan adalah bmp atau jpg sedangkan format citra watermark yang disisipkan adalah bmp.
(17)
1.4. Tujuan
Tujuan dari penelitian ini adalah untuk menganalisis transformasi DCT (Discrete Cosine Transform) dalam proses penyisipan dan ekstraksi watermark, baik dari segi kecepatan waktu, besar ukuran file, perubahan pada citra ter-watermark, perubahan pada citra setelah dilakukan ekstraksi, maupun ketahanan watermark tersebut dari beberapa serangan (attack).
1.5. Manfaat
Manfaat penelitian ini adalah untuk membantu user dalam menyisipkan dan mengekstraksi watermark yang dimilikinya sehingga dapat melindungi citra digital user tersebut dari penyalahgunaan oleh pihak-pihak yang tidak bertanggung jawab.
1.6. Metodologi Penelitian
Penelitian ini dilakukan dengan beberapa tahapan yaitu :
1. Studi Literatur
Melakukan studi kepustakaan melalui membaca buku, e-book, jurnal, maupun artikel mengenai watermarking yang dapat mendukung penulisan Tugas Akhir.
2. Analisis
Pada tahap ini akan dilakukan analisis terhadap masalah yang ada, batasan yang dimiliki, dan kebutuhan yang diperlukan.
3. Perancangan
Merancang bahasa pemrograman dan tampilan (interface) untuk proses penyisipan dan ekstraksi watermark sehingga dapat dilakukan analisis terhadap metode DCT (Discrete Cosine Transform).
(18)
4. Pengkodean
Pada tahap ini, rancangan yang telah dibuat diimplementasikan ke dalam bentuk kode bahasa pemrograman Matlab. Tampilan (interface) yang telah dirancang dibangun dengan menggunakan GUIDE (Graphical User Interface Builder) Matlab.
5. Pengujian
Melakukan serangkaian uji coba terhadap program yang telah dibangun untuk mengetahui apakah program sudah berjalan dengan benar sesuai dengan perancangan yang dilakukan, memperbaiki program jika masih terdapat kesalahan, dan mengambil kesimpulan dari analisis yang telah dilakukan.
6. Penyusunan laporan dalam bentuk skripsi.
1.7. Sistematika Penulisan
Sistematika penulisan tugas akhir ini dibagi menjadi lima bab, yaitu sebagai berikut :
BAB 1 : PENDAHULUAN
Berisi tentang latar belakang diambilnya judul tugas Akhir
“Watermarking Pada Citra Digital Dengan Menggunakan Discrete
Cosine Transform”, rumusan masalah yang dihadapi, batasan masalah,
tujuan, manfaat, metode penelitian, dan sistematika penulisan tugas akhir yang menjelaskan secara garis besar susbstansi yang diberikan pada masing-masing bab.
BAB 2 : LANDASAN TEORI
Membahas tentang pengertian citra dan watermarking secara umum,
attack (serangan) terhadap watermark, kelebihan dan kekurangan
(19)
terhadap watermarking, metode dan cara kerja penyisipan dan ekstraksi
watermark dengan metode DCT.
BAB 3 : ANALISIS DAN PERANCANGAN
Berisi tentang analisis permasalahan metode DCT dalam proses penyisipan dan ekstraksi watermark, proses modifikasi dan penyisipan bit, serta analisis fungsional sistem berupa DFD dan flowchart.
BAB 4 : IMPLEMENTASI DAN PENGUJIAN
Bab ini menjelaskan bagaimana mengimplementasikan rancangan program dan tampilan (interface), serta dilanjutkan dengan menguji program watermarking yang telah dibangun dengan beberapa jenis
attack (serangan).
BAB 5 : PENUTUP
(20)
BAB 2
LANDASAN TEORI
2.1Citra Digital
Beberapa teori tentang citra digital dipaparkan sebagai berikut.
2.1.1 Definisi citra digital
Menurut Sachs (1999, hal:1), citra digital merupakan suatu gambar yang tersusun dari
pixel, dimana tiap pixel merepresentasikan warna (tingkat keabuan untuk gambar
hitam putih) pada suatu titik di gambar.
Sedangkan menurut Fahmi (2007, hal:7), citra digital adalah gambar dua dimensi yang dapat ditampilkan pada layar monitor komputer sebagai himpunan berhingga (diskrit) nilai digital yang disebut dengan pixel (picture elements).
Fahmi (2007, hal:7) menyatakan bahwa citra digital (diskrit) dihasilkan dari citra analog (kontinu) melalui digitalisasi. Digitalisasi citra analog terdiri atas penerokan (sampling) dan kuantisasi (quantization). Penerokan (sampling) adalah pembagian citra ke dalam elemen-elemen diskrit (pixel), sedangkan kuantisasi (quantization) adalah pemberian nilai intensitas warna pada setiap pixel dengan nilai yang berupa bilangan bulat.
(21)
2.1.2 Klasifikasi citra digital
Berdasarkan cara penyimpanan atau pembentukannya, citra digital dibagi menjadi 2 jenis, yaitu :
1. Gambar Bitmap (raster), yaitu gambar yang terbentuk dari sekumpulan titik penyusun gambar (pixel). Gambar bitmap dipengaruhi oleh banyaknya pixel, sehingga semakin banyak jumlah pixel maka kualitas gambar semakin baik dan halus, begitu pula sebaliknya. Gambar bitmap biasanya diperoleh dari scanner, kamera digital, kamera handphone, dan sebagainya.
2. Gambar vektor, yaitu gambar yang terbentuk dari garis, kurva, dan bidang yang masing-masing merupakan suatu formulasi matematik. Jika gambar vektor diperbesar, maka kualitas gambarnya masih tetap baik dan tidak berubah. Gambar vektor biasanya dibuat dengan menggunakan aplikasi – aplikasi gambar vektor seperti Corel Draw, Adobe Illustrator, Macromedia Freehand, dan sebagainya (Alinurdin, 2006).
Sedangkan berdasarkan warna-warna penyusunnya, menurut Fahmi (2007, hal:8) citra digital dapat dibagi menjadi tiga macam, yaitu :
1. Citra biner, yaitu citra yang hanya terdiri atas dua warna, yaitu hitam dan putih. Oleh karena itu, setiap pixel pada citra biner cukup direpresentasikan dengan 1 bit. Contoh citra biner adalah pada gambar 2.1 berikut.
(22)
2. Citra grayscale, yaitu citra yang nilai pixel-nya merepresentasikan derajat keabuan atau intensitas warna putih. Nilai intensitas paling rendah merepresentasikan warna hitam dan nilai intensitas paling tinggi merepresentasikan warna putih. Pada umumnya citra grayscale memiliki kedalaman pixel 8 bit (256 derajat keabuan), tetapi ada juga citra grayscale
yang kedalaman pixel-nya bukan 8 bit, misalnya 16 bit untuk penggunaan yang memerlukan ketelitian tinggi. Contohnya adalah pada gambar 2.2 berikut.
Gambar 2.2 Citra Grayscale
3. Citra berwarna, yaitu citra yang nilai pixel-nya merepresentasikan warna tertentu. Banyaknya warna yang mungkin digunakan bergantung kepada kedalaman pixel citra yang bersangkutan. Citra berwarna direpresentasikan dalam beberapa kanal (channel) yang menyatakan komponen-komponen warna penyusunnya. Banyaknya kanal yang digunakan bergantung pada model warna yang digunakan pada citra tersebut. Contoh model warna yang biasa digunakan pada citra digital adalah RGB dan YCbCr.
Dari klasifikasi citra tersebut, maka penelitian dilakukan pada gambar bitmap karena citra digital termasuk gambar bitmap dan terbentuk dari pixel – pixel yang akan dimanfaatkan dalam teknik penyisipan watermark.
(23)
2.1.3 Pixel (picture element)
Gambar yang bertipe bitmap tersusun dari pixel-pixel (dot). Pixel adalah titik penyusun gambar yang berkumpul dan bergabung membentuk seperti mozaik yang memanipulasi mata sehingga pada jarak pandang tertentu akan tampak kesan gambar utuh (Alinurdin, 2006).
Banyaknya pixel tiap satuan luas tergantung pada resolusi yang digunakan. Menurut Alinurdin (2006, hal:2) resolusi adalah banyaknya pixel dalam setiap satuan panjang yang dinyatakan dalam satuan dpi (dot per inch). Keanekaragaman warna
pixel tergantung pada bit depth yang dipakai. Bit depth menentukan banyaknya informasi warna yang tersedia untuk ditampilkan dalam setiap pixel. Misalkan suatu gambar memiliki bit depth = 24. Berarti ada 16 juta (224)
1. bmp (Windows Bitmap).
kemungkinan warna pada gambar tersebut. Oleh karena itu, semakin tinggi resolusi dan bit depth suatu citra, maka semakin bagus kualitas gambar yang dihasilkan dan tentu saja ukuran file-nya juga semakin besar.
2.1.4 Format file citra
Format file menentukan bagaimana informasi data direpresentasikan dalam suatu file. Informasi tersebut meliputi ada tidaknya kompresi, program aplikasi (feature) yang didukung (support), penggunaan enkripsi, dan lain-lain. Tiap format file memiliki kelebihan dan kelemahan masing-masing.
Dalam sistem operasi Windows, format file dapat dibedakan dari namanya yaitu diakhiri titik dan diikuti dengan tiga atau empat huruf terakhir sebagai penanda format. Untuk file citra (image), format yang umum digunakan adalah :
Merupakan representasi dari citra grafis yang terdiri dari susunan titik-titik yang tersimpan di memori komputer. Format ini dikembangkan oleh Microsoft
(24)
lebih bagi gambar berwarna. Format bmp menggunakan kompresi tipe lossless, berarti tidak ada data yang dibuang selama proses kompresi (Hajar, 2007).
2. gif (Graphics Interchange Format)
Merupakan format gambar yang mampu menayangkan maksimum 256 warna dan mendukung warna transparan dan animasi sederhana. Format ini mengkompresi gambar dengan sifat lossless, berarti terdapat data yang hilang selama proses kompresi (Hajar, 2007).
3. jpg / jpeg (Joint Photographic Experts Group)
Format ini mampu menayangkan warna dengan kedalaman 24 bit true color
dan menggunakan kompresi tipe lossy. Kompresi jpeg berbasis DCT (Discrete Cosine Transform). Kualitas jpeg bisa bervariasi tergantung setting kompresi yang digunakan (Hajar, 2007).
4. png (Portable Network Graphics)
Merupakan salah satu format penyimpanan citra dengan kompresi tipe lossless. Format png diperkenalkan untuk menggantikan format gif dan umumnya dipakai untuk citra web (Hajar, 2007).
5. tiff (Tagged Image File Format)
Merupakan format yang sering digunakan, mendukung citra compressed
berbagai metode dan uncompressed (Paryono et al, 2008).
2.2 Digital Watermarking
Masalah kepemilikan memang suatu masalah yang sangat pelik, bahkan lebih parah dari masalah pembajakan. Jika suatu pihak membajak suatu software misalnya, maka pihak tersebut hanya akan merugikan dari sisi keuangan saja. Tetapi jika pihak itu mengganti string pada suatu program sehingga seakan akan menjadi miliknya dan memasarkannya, maka pembuat aslinya akan mengalami kerugian dua kali. Kesulitan
(25)
digital seperti file, gambar, suara atau semacamnya. Benda-benda semacam ini tidak dapat dengan mudahnya diberi stempel atau diberi tanda lainnya.
Salah satu cara yang banyak digunakan saat ini adalah dengan memberikan suatu tanda kepemilikan yang dapat dengan mudah dilihat oleh semua orang. Tapi bagi yang sedikit mengerti tentang penggunaan program pengolah citra digital seperti
Adobe Photosop, Paint Shop Pro, ataupun program lainnya, maka penghilangkan
label tersebut dapat dilakukan dengan mudah. Bahkan tidak hanya menghilangkan, karena label yang telah diberikan juga dapat diganti dengan mudah. Penggunaan data
digital selain dikarenakan kemudahannya dalam penyebaran menggunakan jaringan
Internet, juga dikarenakan kemudahan dan kemurahannya dalam penggandaan
(peng-copy-an) serta penyimpanan untuk digunakan dikemudian hari.
2.2.1 Asal usul watermarking
Metode watermarking sudah dikenal ribuan tahun yang lalu, dimana yang cukup dikenal adalah sejarah di jaman Herodotus. Pada saat tersebut, Histiaeus membuat pesan rahasia dengan mentato kepala ajudannya, kemudian membiarkan rambutnya tumbuh sebelum diutus ke Aristagoras, yang harus mencukur kepala ajudan tersebut sebelum mengetahui pesan yang dikirim. Sampai saat ini watermarking digunakan
Adanya permintaan akan jaminan hak cipta dalam bentuk perangkat lunak ataupun perangkat keras menyebabkan teknologi digital watermarking sangat diperlukan. Dalam bentuk digital, penyebaran dokumen secara tidak sah dapat dilakukan lebih mudah. Karena dengan kemajuan komunikasi data yang semakin baik, penduplikasian dan penyebaran dokumen akan menjadi lebih cepat dan murah dibandingkan dengan dokumen berupa kertas. Berbeda dengan hasil duplikasi sebagai metode untuk melindungi hak cipta suatu karya yang dipublikasikan dalam bentuk digital, mengingat proses duplikasi sebuah digital copy yang hasilnya sangat identik dengan aslinya dan menyebarkan hasil copy-an tersebut dengan sangat mudah, untuk kemudian digunakan kembali ataupun dimanipulasi datanya (Rodiah, 2004).
(26)
pada dokumen kertas, hasil duplikasi pada dokumen digital tidak akan berbeda dengan dokumen aslinya.
2.2.2 Watermark dan watermarking
Watermark didefinisikan sebagai data tersembunyi yang ditambahkan pada sinyal
pelindung (cover signal) sedemikian rupa sehingga penambahan tersebut tidak terlihat
(Watermarking World, 2002). Lebih jauh lagi, watermark juga berupa kode yang
membawa informasi mengenai pemilik hak cipta, pencipta, pembeli yang sah, dan segala sesuatu yang diperlukan untuk menangani hak kepemilikan digital. Watermark
sengaja ditanamkan secara permanen pada data digital sedemikian hingga pengguna yang berwenang dapat dengan mudah membacanya, di sisi lain watermark tersebut haruslah tidak mengubah isi media kecuali sedikit atau perubahan tersebut tidaklah tampak atau kurang begitu tampak bagi indera manusia (Barni et al, 1998).
Watermark (tanda air) ini agak berbeda dengan tanda air pada uang kertas.
Tanda air pada uang kertas masih dapat kelihatan oleh mata telanjang manusia (mungkin dalamposisi kertas yang tertentu), tetapi watermarking pada media digital
disini dimaksudkan tak akan dirasakan kehadirannya oleh manusia tanpa alat bantu mesin pengolah digital seperti komputer, dan sejenisnya.
Jika watermark merupakan sesuatu yang ditanamkan, maka watermarking
merupakan proses penanaman watermark tersebut. Oleh karena itu, dapat disimpulkan bahwa watermarking adalah suatu cara penyembunyian atau penanaman data atau informasi ke dalam suatu data digital lainnya, tetapi tidak diketahui kehadirannya oleh indera manusia (indera penglihatan atau pendengaran) dan mampu menghadapi proses-proses pengolahan sinyal digital sampai pada tahap tertentu (Supangkat et al, 2000).
(27)
2.2.3 Tujuan watermarking
Menurut Rodiah (2004, hal:4), beberapa tujuan watermarking adalah :
1. Menjaga sedemikian rupa agar dokumen-dokumen elektronik yang berisi transaksi elektronik yang otentik tetap terjaga kualitas legal dan bobot buktinya.
2. Untuk aplikasi perlindungan hak cipta, tanda yang disisipkan pada dokumen (gambar, teks, atau audio) digunakan sebagai identifier yang menunjukkan hak kepemilikan. Jenis tanda air mempengaruhi keefektifan tanda air itu sendiri dalam setiap aplikasinya, apakah bersifat tampak oleh mata ataupun tidak.
3. Dapat mencegah terjadinya penyalahgunaan, namun dengan cara yang berbeda. Tanda air digital digunakan untuk memberikan identifikasi sebuah dokumen atas informasi sumber daya, penulis, kreator, pemilik, distributor, dan konsumer yang berhak atas dokumen tersebut.
2.2.4 Karakteristik watermarking
Menurut Sirait (2006, hal:43), mutu dari metode watermarking meliputi beberapa parameter-parameter utama berikut ini :
1. Fidelity
Perubahan yang disebabkan oleh tanda (watermark) seharusnya tidak mempengaruhi nilai isi, idealnya tanda harusnya tidak dapat dilihat sehingga tidak dapat dibedakan antara data yang ter-watermark dan data yang asli. Salah satu trade-off antara karakteristik watermarking yang sangat kelihatan adalah antara robustness dengan fidelity. Dalam beberapa literatur, fidelity kadang disebut dengan invisibility untuk jenis data citra dan video. Yang dimaksud dengan fidelity di sini adalah derajat degradasi host data sesudah diberi
(28)
robustness dari watermark tinggi, maka memiliki fidelity yang rendah, sebaliknya robustness yang rendah dapat membuat fidelity yang tinggi. Jadi sebaiknya dipilih trade-off yang sesuai sehingga keduanya dapat tercapai sesuai dengan tujuan aplikasi. Untuk host data yang berkualitas tinggi, maka
fidelity dituntut setinggi mungkin sehingga tidak merusak data aslinya.
Sedangkan untuk host data yang memiliki noise (kualitas kurang), maka
fidelity-nya dapat rendah seperti pada siaran radio, suara pada telepon, ataupun
broadcast acara televisi.
2. Robustness
Watermark di dalam host data harus tahan terhadap beberapa operasi
pemrosesan digital yang umum seperti pengkonversian dari digital ke analog dan dari analog ke digital, dan manipulasi data. Pada robust watermark, data disisipkan dengan sangat kuat sehingga jika ada yang berusaha menghapusnya maka gambar atau suara yang disisipi akan ikut rusak dan tidak punya nilai komersil lagi.
3. Security
Watermarking harus tahan terhadap segala usaha sengaja memindahkan atau
men-copy watermark dari satu multimedia data ke multimedia data lainnya.
Dari ketiga kriteria ini, fidelity merupakan kriteria paling tinggi.
2.2.5 Attack (serangan)
Menurut Ferdian (2006, hal:5), beberapa attack (serangan) dasar terhadap citra
ter-watermark yaitu :
1. Horizontal Flip
Serangan ini dilakukan hanya dengan membalikkan gambar secara horizontal. Metode ini tampak sangat sederhana, namun beberapa skema watermarking
(29)
2. Rotasi
Rotasi dilakukan biasanya dengan derajat perputaran yang sangat kecil, sehingga citra tampak tidak berubah. Namun karena perputaran yang kecil tersebut, watermark tidak dapat terdeteksi lagi.
3. Cropping
Yaitu pemotongan citra menjadi bagian-bagian kecil. Hal ini mengakibatkan
watermark tidak utuh dan kemudian menjadi tidak terdeteksi lagi.
4. Scaling
Penskalaan dapat dibedakan menjadi 2 jenis, uniform dan non-uniform. Penskalaan uniform mengubah ukuran citra dengan faktor skala yang sama, baik vertikal maupun horizontal. Sedangkan pada non-uniform scaling, faktor skala vertikal dan horizontal berbeda.
5. Penghapusan garis atau kolom pada citra
Cara ini dilakukan dengan menghapus satu kolom atau satu baris pada citra. Cara ini sangat efektif dilakukan untuk melawan teknik spread-spectrum.
6. Random geometric distortions
Melakukan distorsi geometris secara acak. Biasanya merupakan gabungan dari teknik-teknik dasar.
Attack (serangan) ini akan menyebabkan terjadinya perubahan bit pada citra ter-watermark, sehingga apabila dilakukan ekstraksi, maka watermark yang telah dipisahkan akan tampak sangat berbeda dibandingkan dengan watermark yang disisipkan pada awalnya.
2.3. Proses Watermarking
Pada dasarnya pemberian watermarking dapat dipandang sebagai proses penggabungan dua buah informasi sedemikian rupa sehingga masing-masing
(30)
informasi hanya dideteksi oleh detector yang berbeda. Sinyal watermarking
dipadukan dengan sinyal media, video, audio, atau gambar dengan watermarking inserter. Tentu saja sinyal watermarking ini disisipkan (di-encode) sehingga dapat merepresentasikan informasi tertentu. Hasil penggabungan ini adalah sinyal media yang telah ter-watermarking.
Untuk penyisipan informasi watermark pada citra, teknik-teknik penyisipan dilakukan dengan membuat modifikasi pada citra asli. Modifikasi dilakukan pada bagian-bagian yang secara persepsi tidak dapat dilihat oleh indera penglihatan. Informasi watermark didapatkan kembali dari citra ter-watermark dengan mendeteksi adanya perubahan-perubahan (modifikasi) tersebut.
Ada banyak teknik modifikasi dalam berbagai domain yang dapat digunakan untuk penyisipan data dan mendapatkan data hasil watermarking. Proses transformasi yang dikenal dalam pemrosesan sinyal digital adalah seperti Fast Fourier Transform
(FFT), Discrete Cosine Transform (DCT), Wavelet Transform, dan sebagainya.
Akan tetapi dari berbagai penelitian yang sudah dilakukan, belum ada suatu metode watermarking ideal yang bisa tahan terhadap semua proses pengolahan digital yang mungkin. Biasanya masing-masing penelitian memfokuskan pada hal-hal tertentu yang dianggap penting. Penelitian di bidang watermarking ini masih terbuka luas dan semakin menarik, salah satunya adalah karena belum ada suatu standar yang digunakan sebagai alat penanganan masalah hak cipta ini (Rodiah, 2004).
2.3.1 Penyisipan watermark (encode)
Penyisipan (encode) dalam watermarking adalah suatu proses untuk menyisipkan sinyal low-energy ke sinyal utama (cover signal) untuk menyembunyikan keberadaan sinyal low-energy tersebut (Rodiah, 2004). Sinyal low energy yaitu label watermark
yang bersifat monokrom dan cover signal yaitu dokumen yang disisipkan seperti gambar, video, suara, atau teks dalam format digital.
(31)
Label watermark adalah suatu data atau informasi yang akan disisipkan ke dalam data digital yang ingin di-watermark. Menurut Rodiah (2004, hal:16), ada dua jenis label watermark yang dapat digunakan, yaitu :
1. Text biasa
Label watermark dari text biasanya menggunakan nilai-nilai ASCII dari masing-masing karakter dalam text yang kemudian dipecahkan atas bit-per-bit. Kelemahan dari label ini adalah kesalah pada satu bit saja akan menghasilkan hasil yang berbeda dengan text sebenarnya.
2. Logo atau Citra atau Suara
Berbeda dengan text, kesalahan pada beberapa bit masih dapat memberikan persepsi yang sama dengan aslinya oleh pendengaran maupun penglihatan kita, tetapi kerugiannya adalah jumlah data yang cukup besar.
2.3.2 Ekstraksi watermark (decode)
Ekstraksi (decode) adalah proses pemisahan watermark dengan citra asal. Hasil penelitian memberikan hasil bahwa verifikasi dengan menggunakan data aslinya akan memberikan performansi yang lebih baik dibandingkan dengan cara ekstraksi tanpa menggunakandata asli (Rodiah, 2004).
Watermarking dapat menggunakan kunci untuk meningkatkan keamanannya,
dimana kunci tersebut digunakan untuk membangkitkan bilangan acak dalam penanaman watermark. Akan tetapi menurut Fahmi (2007, hal:12), proses encode dan
decode juga tidak selalu menggunakan kunci. Proses decode juga tidak selalu
menyertakan data asli yang belum diberi watermark. Terhadap watermark yang ter-ekstraksi dilakukan verifikasi yang dapat menghasilkan kesimpulan terhadap
(32)
2.4 Transformasi DCT
Cara melakukan perpindahan dari domain koordinat ke domain frekuensi yaitu dengan menggunakan DCT (Discrete Cosine Transform). Menurut Rodiah (2004, hal:19), pada dasarnya DCT merupakan suatu transformasi one-to-one mapping dari suatu array yang terdiri dari nilai pixel menjadi komponen-komponen yang terbagi berdasarkan frekuensinya. Dengan memperhatikan efek pembulatan angka pada proses pembalikan kembali transformasi, maka transformasi pembalikan ini dikenal dengan IDCT (Inverse Discrete Cosine Transform).
Menurut Fahmi (2007, hal:9), Discrete Cosine Transform adalah sebuah fungsi dua arah yang memetakan himpunan N buah bilangan real menjadi himpunan N buah bilangan real. Secara umum, DCT satu dimensi menyatakan sebuah sinyal diskrit satu dimensi sebagai kombinasi linier dari beberapa fungsi basis berupa gelombang kosinus diskrit dengan amplitudo tertentu. Masing-masing fungsi basis memiliki frekuensi yang berbeda-beda, sehingga transformasi DCT termasuk ke dalam transformasi ranah frekuensi.
Amplitudo fungsi basis dinyatakan sebagai koefisien dalam himpunan hasil transformasi DCT. Menurut Khayam (2003, hal:4), DCT satu dimensi didefinisikan pada persamaan berikut :
∑
=− + = 1 0 2 ) 1 2 ( cos ) ( ) ( ) ( N x N u x x f u a uC π , 0≤u≤N−1 (2.1)
C(u) menyatakan koefisien ke-u dari himpunan hasil transformasi DCT. f(x)
menyatakan anggota ke-x dari himpunan asal. N menyatakan banyaknya suku himpunan asal dan himpunan hasil a(u) dinyatakan oleh persamaan berikut :
, untuk u = 0
(2.2)
, untuk
{
1≤u≤N −1 N 1 N 2 = ) (u a(33)
Transformasi balikan yang memetakan himpunan hasil transformasi DCT ke himpunan bilangan semula disebut Invers DCT (IDCT). IDCT didefinisikan oleh persamaan di bawah ini :
∑
=− + = 1 0 2 ) 1 2 ( cos ) ( ) ( ) ( N u N u x u C u a xf π , 0≤u≤N−1 (2.3)
DCT dua dimensi dapat dipandang sebagai komposisi dari DCT pada masing-masing array dimensi. Sebagai contoh, jika himpunan bilangan real disajikan dalam array 2 dimensi, maka DCT dua dimensi dilakukan dengan cara melakukan DCT satu dimensi terhadap masing-masing baris dan kemudian melakukan DCT satu dimensi terhadap masing-masing kolom dari hasil DCT tersebut. Transformasi DCT dua dimensi dapat dinyatakan dengan persamaan :
N v y M u x y x f v a u a v u C M x N y 2 ) 1 2 ( cos 2 ) 1 2 ( cos ) , ( ) ( ) ( ) , ( 1 0 1 0 + + =
∑∑
− = − = π π (2.4)Sedangkan rumus untuk IDCT (invers dari DCT) adalah sebagai berikut :
N v y M u x v u C v a u a y x f M u N v 2 ) 1 2 ( cos 2 ) 1 2 ( cos ) , ( ) ( ) ( ) , ( 1 0 1 0 + + =
∑∑
− = − = π π (2.5) Keterangan :1. C(u,v) adalah titik koordinat dari matriks yang telah mengalami transformasi DCT 2 dimensi.
2. M dan N adalah banyak kolom dan baris. Apabila ukuran matriks adalah 8 x 8, maka nilai M dan N adalah 8.
3. a(u) dan a(v) adalah himpunan hasil yang nilainya ditentukan dari nilai koefisien u dan v.
(34)
4. f(x,y) adalah nilai pixel dari matriks pada titik (x,y).
5. π bernilai 180o.
Menurut Fahmi (2007, hal:10), pada transformasi DCT dikenal juga istilah frekuensi rendah, frekuensi menengah, dan frekuensi tinggi. Hal ini berkaitan dengan frekuensi gelombang pada fungsi basis DCT. Jika frekuensi fungsi basisnya kecil, maka koefisien yang berkorespondensi disebut koefisien frekuensi rendah. Gambar 2.3 menunjukkan contoh pembagian koefisien berdasarkan frekuensinya pada DCT 8 x 8 menurut Hernandez (2000, hal:61). LF menyatakan daerah koefisien frekuensi rendah, MH menyatakan daerah koefisien frekuensi menengah, dan HF menyatakan daerah koefisien frekuensi tinggi.
Gambar 2.3 Pembagian Koefisien Frekuensi DCT Untuk Ukuran Blok 8 x 8
2.5 Penyisipan Bit
Randomly Sequenced Pulse Position Modulated Code (RSPPMC) adalah metode yang
diusulkan oleh Koch dan Zao. Metode ini berdasarkan prinsip format citra JPEG, yaitu membagi citra menjadi blok-blok 8 x 8 dan kemudian dilakukan transformasi DCT. Penggunaan teknik penyisipan bit pada tugas akhir ini didasarkan pada cara RSPPMC ini.
(35)
Proses penyisipan watermark dengan metode Discrete Cosine Transform
(DCT) adalah metode kompresi DCT yang dimodifikasi dengan melakukan manipulasi pada kawasan frekuensi hasil DCT.
Berdasarkan penelitian yang dilakukan oleh Zheng et al (2008, hal:283), maka luas watermark maksimum yang dapat ditampung dalam suatu citra asli adalah :
64 max _
2
N
Luas = (2.6)
dimana N adalah panjang sisi citra asli. Dalam penelitian ini, ukuran blok yang digunakan adalah 8 x 8 sehingga luas blok adalah 64. Di setiap blok 8 x 8 citra asli disisipkan 1 bit watermark. Oleh karena itu, syarat suatu watermark dapat ditampung dalam citra asli adalah :
max _
Luas Nw
Mw× ≤ (2.7)
dimana Mw adalah panjang citra watermark dan Nw adalah lebar citra watermark. Dengan kata lain, luas dari citra watermark harus lebih kecil atau sama dengan luas
watermark maksimum.
Teknik menyisipkan informasi bit pada matrix hasil DCT dua dimensi merupakan penyederhanaan dari teknik RSPPMC dari IEEE. Ada beberapa cara dalam menentukan pemilihan posisi penyisipan watermark. Menurut Fahmi (2007, hal:19), yang perlu diperhatikan adalah pemilihan posisi penyisipan watermark karena dapat berpengaruh pada fidelity dan robustness. Penyisipan pada koefisien berfrekuensi rendah lebih robust (tahan) terhadap modifikasi citra, tetapi lebih mudah mengakibatkan perubahan yang dapat terlihat. Sebaliknya, penyisipan pada koefisien berfrekuensi tinggi tidak mengakibatkan perubahan yang terlalu besar, tetapi kurang
robust terhadap modifikasi citra. Karena itu, sebagai trade off antara fidelity dan
robustness, banyak skema watermarking yang melakukan penyisipan pada koefisien
frekuensi menengah. Pada matrix hasil DCT, frekuensi tengah biasanya berada daerah dengan nomor baris antara 4 sampai 7 atau nomor kolom antara 4 sampai 7. Dalam
(36)
menyisipkan bit, terlebih dahulu pilih dua lokasi matriks yang berada pada frekuensi menengah. Kedua lokasi tersebut sebaiknya memiliki jumlah baris dan kolom yang sama agar berada pada frekuensi yang dekat (Rodiah, 2004).
Dalam tugas akhir ini, kedua lokasi frekuensi menengah yang dipilih adalah blok (5,2) dan blok (4,3). Langkah-langkah yang lebih jelas dalam memodifikasi matriks transformasi DCT terdapat pada sub bab 3.3 di BAB 3.
2.6 Korelasi
Ekstraksi watermark dapat dilakukan dengan cara membandingkan koefisien DCT citra yang diduga memiliki watermark dengan koefisien DCT citra asli. Data
watermark yang diekstraksi kemudian dibandingkan dengan data watermark asli.
Korelasi adalah penghitungan perbedaan antara dua matriks. Salah satu cara untuk membandingkan watermark adalah dengan menghitung koefisien korelasi dan dibandingkan sampai batas tertentu. Jika koefisien korelasi mendekati atau sama dengan nilai batas tersebut, maka dapat disimpulkan bahwa watermark yang diekstraksi dari citra yang diuji memiliki kemiripan dengan watermark asli (Fahmi, 2007). Dalam tugas akhir ini, batas korelasi yang ditetapkan adalah 1. Menurut Murinto (2005, hal:4), nilai korelasi dapat dihitung dengan persamaan berikut :
∑∑
∑∑
=i j ij
ij i j
ij
W W W
NC 2
'
(2.8)
Keterangan :
1. Wij adalah nilai pixel pada lokasi (i,j) untuk watermark asli.
(37)
3. NC adalah korelasi atau normalized cross correlation.
2.7 Kelebihan dan Kekurangan DCT
Menurut Kurniawan (2006, hal:3), kelebihan dari metode DCT adalah kokoh terhadap manipulasi pada stego-object. Selain itu, metode DCT juga tahan terhadap kompresi. Sedangkan kelemahan dari metode ini terletak pada kesulitan dalam pengimplementasiannya karena harus melalui langkah-langkah yang panjang sehingga membutuhkan waktu yang lama dalam melakukan penyisipan.
2.8 Penelitian Sejenis
Beberapa teknik watermarking yang pernah diteliti adalah :
1. LSB (Least Significant Bit).
Diperkenalkan pertama kali oleh Ayman M. Ahmed dan Dwight D. Day dalam jurnal penelitiannya yang berjudul “OrthogonalTransforms for Digital Signal
Processing” pada tahun 1975. Metode ini merupakan metode yang paling
sederhana, tetapi yang paling tidak tahan terhadap segala proses yang dapat mengubah nilai-nilai intensitas pada citra. Metode ini akan mengubah nilai LSB komponen luminansi atau warna menjadi bit yang bersesuain dengan bit label yang akan disembunyikan. Memang metode ini akan menghasilkan citra rekonstruksi yang sangat mirip dengan aslinya karena hanya mengubah nilai bit terakhir dari data. Tetapi sayang tidak tahan terhadap proses-proses yang dapat mengubah data citra, terutama kompresi JPEG. Metode ini paling mudah diserang, karena bila pihak lain tahu maka tinggal membalikkan nilai dari LSB-nya dan data label akan hilang seluruhnya.
2. Patchwork.
Metode ini diusulkan oleh W. Bender, D. Gruhl, N. Morimoto, dan A Lu pada IBM Systems Journal dengan jurnalnya yang berjudul “Techniques For Data
(38)
Hiding” di tahun 1996. Metode ini menanamkan label 1 bit pada citra digital dengan menggunakan pendekatan statistik. Ketahanan metode ini terhadap kompresi JPEG dengan parameter kualitas 75 % adalah dapat dibaca dengan probabilitas kebenaran sebesar 85 %.
3. Pitas dan Kaskalis.
Diperkenalkan oleh I. Pitas dan T.H. Kaskalis pada IEEE Workshop on Nonlinear Image and Signal Processing dengan jurnalnya yang berjudul
“Applying Signatures on Digital Images” di tahun 1995. Metode ini membagi
citra menjadi dua subset sama besar dimana jumlah biner 1 sama dengan jumlah biner 0. Kemudian salah satu subset ditambahkan dengan faktor k
(bulat positif) yang diperoleh dari perhitungan variansi kedua subset. Verifikasi dilakukan dengan menghitung perbedaan rata-rata antara kedua subset dengan nilai harapan k. Metode ini tahan terhadap kompresi JPEG
dengan faktor kualitas sekitar 90 %.
4. Caroni.
Diperkenalkan oleh J. Caroni pada jurnalnya yang berjudul “Assuring
Ownership Rights For Digital Images” pada tahun 1995. Metode ini membagi
citra menjadi beberapa blok, kemudian setiap pixel dari blok akan dinaikkan dengan faktor tertentu apabila ingin menanamkan bit 1 dan nilai pixel akan dibiarkan apabila ingin menanam bit 0. Metode ini tahan terhadap kompresi
JPEG dengan faktor kualitas 30 %.
5. Cox.
Diperkenalkan oleh J. Cox, Joe Kilian, F. Thomson Leighton, dan Talal Shamoon pada IEEE Image Processing dengan jurnalnya yang berjudul
“Secure Spread Spectrum Watermarking For Multimedia” di tahun 1997.
Metode ini menyembunyikan sejumlah bit label pada komponen luminansi dari citra dengan membagi atas blok-blok, kemudian setiap pixel dari satu blok akan dinaikkan dengan faktor tertentu bila ingin menanamkan bit 1 dan nilai-nilai pixel dari blok akan dibiarkan bila akan menanamkan bit 0. Jika rata-rata
(39)
akan dinyatakan sebagai bit 1. Bila tidak, maka akan dinyatakan sebagai bit 0. Setelah mengalami kompresi JPEG, metode ini dapat tahan terhadap faktor kualitas sebesar 30 %.
6. Randomly Sequenced Pulse Position Modulated Code (RSPPMC).
Metode ini diusulkan oleh J. Zhao dan E. Koch dalam jurnalnya yang berjudul
“Towards Robust And Hidden Image Copyright Labeling” pada tahun 1995.
Metode ini bekerja pada domain DCT dengan membagi citra menjadi blok-blok 8 x 8 dan kemudian dilakukan transformasi DCT. Setelah itu, koefisien-koefisien DCT tersebut diubah sedemikian rupa sehingga akan mengandung informasi 1 bit dari label, seperti dipilih dua atau tiga koefisien untuk disesuaikan dengan bit label yang akan ditanamkan. Contohnya, untuk menanamkan bit 1 ke dalam suatu koefisien DCT, koefisien kedua harus diubah sedemikian rupa sehingga lebih kecil dari koefisien pertama.
Pada penelitian ini, metode yang digunakan adalah metode RSPPMC (Randomly Sequenced Pulse Position Modulated Code).
(40)
BAB 3
ANALISIS DAN PERANCANGAN
3.1 Analisis Watermarking
Watermarking sebagai salah satu teknik perlindungan hak cipta pada suatu citra digital dapat dibagi menjadi dua kategori yaitu visible dan invisible. Pembagian kategori ini didasarkan pada penandaan watermark. Visible watermarking adalah jenis
watermarking dimana tanda watermark yang disisipkan dapat dilihat langsung oleh mata. Penggunaan visible watermarking ini dapat dilihat pada siaran televisi yang menampilkan logo perusahaan siarannya pada sudut gambar televisi. Sedangkan
invisible watermarking bersifat lebih kompleks karena tanda watermark yang
disisipkan tidak dapat dilihat oleh mata. Penggunaan invisible watermarking ini umumnya dilakukan pada data data, suara, citra, dan video untuk menyisipkan hak cipta seperti informasi pencipta, distributor, ataupun pemilik yang sah.
Dalam penelitian ini, invisible watermarking adalah kategori yang digunakan karena informasi yang disisipkan adalah citra digital. Oleh karena itu, dibuatlah suatu demonstrasi sistem yang dapat melakukan penyisipan dan ekstraksi watermark dengan menggunakan metode Discrete Cosine Transform (DCT). Melalui sistem ini, maka dapat dilakukan analisis terhadap proses penyisipan, ekstraksi, perubahan hasil ekstraksi, dan ketahanan citra ter-watermark sehingga dapat diambil kesimpulan bagaimana kualitas pemanfaatan metode DCT dalam watermarking. Gambaran
watermarking, termasuk penyisipan dan ekstraksi secara umum dapat dilihat pada
(41)
Watermark Citra Asli
Penyisipan
Citra Terwatermark
Ekstraksi
Watermark Hasil Ekstraksi
Gambar 3.1 Model Penyisipan Dan Ekstraksi Watermark
3.2 Analisis Transformasi DCT
Transformasi DCT dua dimensi sering digunakan dalam pemrosesan citra digital. Keuntungan utama transformasi ini adalah dapat menghilangkan redundancy
antara pixel yang bersebelahan. Hal ini memungkinkan koefisien dengan frekuensi rendah dapat diabaikan tanpa menyebabkan distorsi visual pada citra rekonstruksi. DCT menampilkan pemadatan energi frekuensi dengan sangat baik pada citra. Transformasi DCT digunakan dalam kompresi JPEG yang bersifat loseless, dimana ukuran citra dapat menjadi semakin kecil dengan perubahan warna yang sulit dilihat oleh indera penglihatan.
Faktor yang harus diperhatikan dalam watermarking adalah bagaimana menyisipkan watermark pada spektrum citra yang secara perseptual cukup penting, sedemikian hingga tidak menurunkan kualitas citra. Hal ini dapat dilakukan jika pengubahan nilai koefisien cukup kecil dan koefisien yang diubah memang cukup penting. Untuk mengatasi masalah ini, maka domain frekuensi dapat dilihat sebagai sebuah kanal dan watermark dapat diibaratkan bagaikan sebuah kanal yang melewatinya. Oleh karena itu, transformasi DCT dapat diimplementasikan dalam proses watermarking, dimana watermark disebarkan ke dalam banyak satuan frekuensi sehingga energi watermark yang telah disisipkan tidak tampak oleh mata.
Ukuran blok yang digunakan pada transformasi DCT umumnya adalah ukuran blok 8 x 8. Pemilihan ukuran blok ini dikarenakan karena apabila dilihat dari
(42)
rumus DCT 2 dimensi, meningkatnya jumlah N dapat meningkatkan kompleksitas perhitungan trigonometri. Sedangkan apabila pemilihan blok dibuat terlalu rendah, maka dapat menyebabkan ketelitian komponen frekuensi menjadi lebih rendah. Dengan berbagai pertimbangan tersebut, JPEG menetapkan ukuran blok dalam transformasi DCT adalah 8 x 8 sebagai ukuran standar (Rodiah, 2004).
Sebagai contoh, diketahui sebuah blok pixel 8 x 8 dari sebuah citra digital dengan nilai sebagai berikut :
26 -5 -5 -5 -5 -5 -5 8 64 52 8 26 26 26 8 -18 126 70 26 26 52 26 -5 -5 A = 111 52 8 52 52 38 -5 -5 52 26 8 39 38 21 8 8 0 8 -5 8 26 52 70 26 -5 -23 -18 21 8 8 52 38 -18 8 -5 -5 -5 8 26 8
Apabila dilakukan transformasi DCT, hasilnya adalah matriks dalam domain frekuensi yang dapat dilihat seperti berikut :
162.250 40.599 20.002 72.329 30.250 12.484 -19.650 -11.497 30.479 108.416 10.473 32.292 27.699 -15.504 18.407 -1.995 -94.144 -60.051 12.298 -43.418 -31.287 6.066 -3.330 7.144 A’ = -38.567 -83.357 -5.412 -22.169 -13.519 15.491 -1.331 3.534 -31.250 17.934 -5.524 -12.355 14.250 -5.962 11.488 -6.023 -0.864 -11.763 12.776 0.181 28.071 12.573 8.352 2.935 4.630 -2.421 12.169 6.561 -18.700 -12.753 7.701 12.031 -9.953 11.193 7.811 -16.288 21.464 0.021 5.906 10.680
(43)
3.3 Analisis Penyisipan
Untuk melakukan penyisipan watermarking, input yang harus disediakan adalah citra asli dan citra watermark. Pada proses penyisipan, jika ukuran panjang atau lebar citra asli tidak habis dibagi oleh ukuran panjang atau lebar blok, maka dilakukan padding
dengan cara melakukan penambahan pixel pada dimensi panjang atau lebar citra. Setelah dilakukan transformasi balikan, hasil padding tersebut dibuang. Pada penelitian ini, padding tidak dilakukan. Transformasi hanya dilakukan terhadap bagian citra asli sampai ukuran panjang atau lebar yang habis dibagi oleh panjang atau lebar blok.
Selain itu, pada penelitian ini peranan kriteria keamanan merupakan kategori dengan bagian terkecil. Sistem ini tidak menggunakan kunci kriptografi untuk proses penguncian watermark. Umumnya proses penguncian dilakukan dengan mengacak citra watermark berdasarkan kunci yang diinput dengan teknik pseudo random generator. Oleh karena tidak dilakukan pengacakan, maka penyisipan citra watermark
dilakukan dari blok 8 x 8 pertama sampai dengan blok ke-N dari citra asli. Model penyisipan watermark yang dilakukan terdapat pada gambar 3.2 berikut :
Watermark Citra Asli
DCT
Citra Terwatermark Modifikasi
Koefisien DCT IDCT
Gambar 3.2 Model Penyisipan Watermark
Proses penyisipan dimulai dengan membagi citra asli menjadi blok-blok 8x8. Kemudian pada blok-blok tersebut dilakukan transformasi DCT secara berurutan dari blok ke-1 sampai dengan blok ke-n. Sebagai contoh, terdapat sebuah citra berukuran 512 x 512 pixel. Citra tersebut kemudian dibagi menjadi blok-blok 8x8 sehingga
(44)
transformasi DCT dilakukan sebanyak 64 kali setiap baris dimulai dari baris pertama sampai dengan baris ke-64. Apabila diambil blok 8x8 pertama dari matriks tersebut, maka nilai-nilai pixel-nya adalah sebagai berikut :
92 93 93 94 95 96 97 97 93 94 94 95 95 96 97 96 93 96 97 97 96 97 97 96 B = 93 96 97 97 96 97 97 97 95 97 97 97 97 98 98 98 95 97 97 97 98 99 100 99 96 97 98 98 98 99 100 99 98 98 98 99 98 98 98 99
Kemudian matriks tersebut mengalami transformasi DCT dan hasilnya adalah blok matriks DCT berikut :
773,2500 -7,7091 -1,7289 -1,8076 -2,5000 0,0572 -0,9075 -0,8215
-10,2208 -1,8328 -0,4267 0,0927 -0,5059 -0,0619 -0,3137 -0,1354 -1,0592 -0,5777 1,3321 1,0743 1,5772 0,5214 -0,0518 0,1896 B’ = -0,4589 -2,8917 1,2379 1,2397 -0,2038 -0,3283 -0,3406 0,5752 -0,7500 0,7206 0,4223 -0,4095 1,0000 -0,5120 0,3663 -0,4192 0,0091 -1,0020 -0,6768 -0,6516 -0,6495 0,1013 0,1653 0,1993 0,7093 0,0956 -0,3018 -0,1510 -0,1121 -0,4124 -0,0821 -0,0499 0,7580 0,5413 -0,2228 -0,0291 -0,1753 0,0194 0,1898 -0,0082
Rincian mengenai cara mendapatkan nilai DCT untuk koefisien (1,1) dijelaskan pada Lampiran A. Setelah itu, blok matriks DCT ini kemudian dimodifikasi sesuai dengan aturan RSPPMC, yaitu memilih dua koefisien DCT yang berada dalam frekuensi menengah untuk disesuaikan dengan bit yang ditanam. Berdasarkan gambar 2.3, koefisien-koefisien yang berada pada frekuensi menegah dapat dilihat pada tabel 3.1 berikut :
(45)
Tabel 3.1 Koefisien DCT Yang Berada Pada Frekuensi Menengah
Koefisien DCT Nilai
(1,4) -1,8076
(1,5) -2,5000
(1,6) 0,0572
(1,7) -0,9075
(2,3) -0,4267
(2,4) 0,0927 (2,5) -0,5059 (2,6) -0,0619
(3,2) -0,5777
(3,3) 1,3321
(3,4) 1,0743 (3,5) 1,5772 (4,1) -0,4589 (4,2) -2,8917 (4,3) 1,2379 (4,4) 1,2397
(5,1) -0,7500
(5,2) 0,7206
(5,3) 0,4223
(6,1) 0,0091
(6,2) -1,0020
(7,1) 0,7093
Pada penelitian ini, dua koefisien yang digunakan adalah koefisien matriks DCT (5,2) dan koefisien matriks DCT (4,3). Berdasarkan tabel koefisien DCT di atas, maka koefisien (5,2) adalah 0,7206 sedangkan koefisien (4,3) adalah 1,2379.
(46)
Ketentuan penyisipan adalah apabila dilakukan penyisipan bit 0, maka blok DCT harus diatur sedemikian rupa sehingga koefisien (5,2) lebih besar daripada koefisien (4,3). Sedangkan apabila dilakukan penyisipan bit 1, maka koefisien (5,2) harus lebih kecil daripada koefisien (4,3). Sebagai contoh, dalam blok matriks DCT ini dilakukan penyisipan bit 0. Oleh karena itu, proses swap dilakukan antara koefisien (5,2) dengan koefisien (4,3) agar sesuai dengan ketentuan penyisipan. Sebagai hasilnya adalah koefisien (5,2) menjadi bernilai 1,2379 dan koefisien (4,3) menjadi 0,7206.
Langkah berikutnya adalah membuat perbedaan kedua koefisien tersebut lebih besar atau sama dengan nilai tertentu. Menurut Chris Shoemaker pada penelitiannya yang berjudul “Hidden Bits : A Survey of Techniques for Digital Watermarking” pada tahun 2002, proses swap pada koefisien tersebut tidak merubah citra ter-watermark
secara signifikan, sebagaimana disebabakan koefisien DCT pada frekuensi menengah memiliki besar yang hampir sama. Ketahanan watermark dapat ditingkatkan dengan menciptakan suatu “watermark strength constant” yaitu k. Peningkatan nilai k dapat mengurangi kemungkingan error detection pada nilai penambahan degradasi citra. Chris Shoemaker menggunakan nilai 50 untuk k pada penelitiannya dan hasil yang didapatkannya adalah citra dengan robustness (ketahanan) yang baik walaupun telah mengalami kompresi JPEG 20 % dan Gaussian noise 15 %.
Oleh karena itu, pada penelitian ini nilai perbedaan koefisien yang digunakan adalah 50. Nilai ini menjadi sangat berarti dalam pembacaan watermark pada proses ekstraksi. Sesuai dengan contoh sebelumnya, hasil dari pengurangan koefisien (5,2) dengan koefisien (4,3) adalah kurang dari 50 sehingga kedua koefisien tersebut harus dibuat agar memiliki perbedaan lebih besar atau sama dengan 50. Oleh karena itu, didapatkan hasil bahwa koefisien (5,2) sekarang menjadi bernilai 26,2379 sedangkan koefisien (4,3) menjadi -24,2794. Jadi, blok matriks DCT hasil modifikasi yang dilakukan adalah sebagai berikut :
(47)
773,2500 -7,7091 -1,7289 -1,8076 -2,5000 0,0572 -0,9075 -0,8215 -10,2208 -1,8328 -0,4267 0,0927 -0,5059 -0,0619 -0,3137 -0,1354 -1,0592 -0,5777 1,3321 1,0743 1,5772 0,5214 -0,0518 0,1896 B’ = -0,4589 -2,8917 -24,2794 1,2397 -0,2038 -0,3283 -0,3406 0,5752 -0,7500 26,2379 0,4223 -0,4095 1,0000 -0,5120 0,3663 -0,4192 0,0091 -1,0020 -0,6768 -0,6516 -0,6495 0,1013 0,1653 0,1993 0,7093 0,0956 -0,3018 -0,1510 -0,1121 -0,4124 -0,0821 -0,0499 0,7580 0,5413 -0,2228 -0,0291 -0,1753 0,0194 0,1898 -0,0082
Setelah proses modifikasi blok matriks DCT selesai, maka tahap terakhir adalah mengembalikan nilai matriks tersebut dari domain frekuensi ke domain spatial (ruang). Untuk melakukan hal itu, maka pada blok matriks ini dilakukan transformasi IDCT (invers DCT). Hasil dari transformasi ini adalah nilai-nilai pixel blok matriks yang dibulatkan dan dapat dilihat sebagai berikut :
92 95 98 100 99 96 91 88 90 91 91 93 95 98 101 102 94 95 92 90 91 97 103 106 Bw = 101 101 98 95 92 93 95 96
96 99 101 101 99 97 93 90 85 91 97 102 105 104 101 98 90 93 96 98 100 102 103 102 107 104 98 95 92 93 96 99
Rincian mengenai cara mendapatkan nilai IDCT untuk koefisien (1,1) dijelaskan pada Lampiran B. Nilai pixel hasil penyisipan ini sedikit berubah sehingga mempengaruhi warna citra ter-watermark. Akan tetapi, perubahan tersebut menghasilkan citra dengan korelasi mendekati nilai 1. Artinya, warna citra tersebut menyerupai citra aslinya. Hal ini dapat dibuktikan melalui hasil perolehan nilai korelasi pada Lampiran C, yaitu 0,9999.
(48)
3.4 Analisis Ektraksi
Pada proses ekstraksi, input yang diperlukan hanyalah citra ter-watermark. Hal ini dilakukan karena proses penyisipan tidak menggunakan pengacakan watermark
dengan pseudo random generator. Model ekstraksi watermark yang dilakukan terdapat pada gambar 3.3 berikut :
Watermark DCT
Citra Terwatermark
Identifikasi Koefisien DCT
Gambar 3.3 Model Ekstraksi Watermark
Proses ekstraksi dimulai dengan membagi citra ter-watermark menjadi blok-blok 8x8. Kemudian pada blok-blok tersebut dilakukan transformasi DCT secara berurutan dari blok ke-1 sampai dengan blok ke-n. Sebagai contoh, dilakukan ekstraksi dari blok
pixel hasil watermarking sebelumnya yaitu :
92 95 98 100 99 96 91 88 90 91 91 93 95 98 101 102 94 95 92 90 91 97 103 106 Bw = 101 101 98 95 92 93 95 96
96 99 101 101 99 97 93 90 85 91 97 102 105 104 101 98 90 93 96 98 100 102 103 102 107 104 98 95 92 93 96 99
(49)
Kemudian pada matriks tersebut dilakukan transformasi DCT dan hasilnya adalah blok matriks DCT berikut :
773,2500 -7,7091 -1,7289 -1,8076 -2,5000 0,0572 -0,9075 -0,8215 -10,2208 -1,8328 -0,4267 0,0927 -0,5059 -0,0619 -0,3137 -0,1354 -1,0592 -0,5777 1,3321 1,0743 1,5772 0,5214 -0,0518 0,1896 Bw’ = -0,4589 -2,8917 -24,2794 1,2397 -0,2038 -0,3283 -0,3406 0,5752 -0,7500 26,2379 0,4223 -0,4095 1,0000 -0,5120 0,3663 -0,4192 0,0091 -1,0020 -0,6768 -0,6516 -0,6495 0,1013 0,1653 0,1993 0,7093 0,0956 -0,3018 -0,1510 -0,1121 -0,4124 -0,0821 -0,0499 0,7580 0,5413 -0,2228 -0,0291 -0,1753 0,0194 0,1898 -0,0082
Proses identifikasi bit yang disisipkan adalah hanya dengan membandingkan koefisien DCT (5,2) dengan koefisien (4,3). Apabila koefisien (5,2) lebih besar atau sama dengan koefisien (4,3), maka bit watermark yang disisipkan adalah 0. Sedangkan apabila koefisien (5,2) lebih kecil daripada koefisien (4,3), maka bit
watermark yang disisipkan adalah 1. Oleh karena pada matriks tersebut koefisien (5,2) lebih besar daripada koefisien (4,3), maka dapat diidentifikasi bahwa bit watermark
yang disisipkan adalah 0.
3.5 Analisis Transparansi dan Ketahanan
Proses watermarking selalu berkaitan dengan kriteria-kriteria yang harus diperhatikan dalam penyembunyian data, yaitu fidelity (transparansi), robustness (ketahanan), dan
security (keamanan). Ketiga kriteria tersebut tidak dapat diutamakan secara
keseluruhan dalam watermarking sehingga terjadi trade off (timbale-balik) dalam implementasinya seperti gambar 3.4 berikut :
(50)
Fidelity
Robustness Security
Trade off
Gambar 3.4 Trade Off Dalam Watermarking
Dalam penelitian ini, kategori yang diunggulkan adalah fidelity. Kategori
robustness juga diperhatikan dengan bagian yang hampir mendekati fidelity
sedangkan security merupakan kategori dengan bagian terkecil. Untuk dapat mengimplementasikan fidelity (transparansi), maka digunakan transformasi DCT karena bit watermark yang disisipkan pada domain frekuensi akan terlihat sulit tampak oleh indera penglihatan. Kegunaan transformasi DCT ini juga dapat dilihat dari ketahanan citra ter-watermark dari serangan-serangan, terutama kompresi JPEG. Popularitas kompresi yang meningkat saat ini membuat citra ter-watermark harus tahan terhadap hal tersebut. Untuk melihat pencapaian fidelity dan robustness tersebut, maka digunakan nilai korelasi untuk membandingkan kemiripan antar citra seperti yang terdapat pada Bab 2 sub bab 2.6. Korelasi antara citra asli dan citra
ter-watermark akan dihitung untuk melihat tingkat fidelity (transparansi).
Dalam penelitian ini dilakukan pengujian beberapa serangan (attack) terhadap citra ter-watermark untuk mengetahui tingkat robustness (ketahanan), yaitu berupa
rotasi, cropping, scaling, kompresi, dan penambahan noise. Tingkat robustness
(ketahanan) diukur dari nilai korelasi antara watermark sebelum penyisipan dan
watermark hasil ekstraksi citra yang telah mengalami serangan-serangan tersebut.
3.6 Analisis Fungsional Sistem
(51)
entitas eksternal. Pada beberapa sub-bab berikut ini dipaparkan DFD yang berkaitan dengan sistem watermarking beserta penjelasan masing-masing proses di dalamnya.
3.6.1 DFD level 0
DFD level 0 atau disebut juga context diagram menggambarkan interaksi sistem dengan entitas-entitas eksternal. Selain itu, pada DFD level 0 ditunjukkan masukan
(input) dan keluaran (output) sistem secara global. DFD level 0 untuk sistem
watermarking ditunjukkan pada gambar 3.5. Masing-masing entitas data yang
tercantum pada DFD level 0 dipaparkan pada tabel 3.2.
Pengguna Simple
Watermark Citra Asli
Citra Watermark Citra Ter-watermark
Citra Pengujian
Citra Hasil Ekstraksi Watermark Hasil
Ekstraksi
Korelasi
Gambar 3.5 DFD Level 0
Tabel 3.2 Entitas Data Dalam DFD Level 0
Nama Ket erangan
Citra Asli Citra yang akan disisipi waterm ark.
Citra Wat ermark Citra monokrom (berwarna hitam putih) yang akan disisipkan ke dalam citra asli.
Citra Ter-wat ermark Citra yang t elah disisipkan waterm ark.
Citra Pengujian Citra ter-waterm ark yang digunakan dalam proses ekst raksi. Citra Hasil Ekstraksi Citra asli yang diperoleh dari hasil ekstraksi citra pengujian. Waterm ark Hasil Ekstraksi Citra wat ermark yang diperoleh dari hasil ekstraksi citra pengujian.
(1)
0752 , 0 16 3 ) 1 ) 0 ( 2 ( cos 16 5 ) 1 ) 0 ( 2 ( cos * ) -0,6516 ( * 8 2 * 8 2 ) 3 , 5
( = π + π + =−
i 0638 , 0 16 4 ) 1 ) 0 ( 2 ( cos 16 5 ) 1 ) 0 ( 2 ( cos * ) -0,6495 ( * 8 2 * 8 2 ) 4 , 5
( = π + π + =−
i 0078 , 0 16 5 ) 1 ) 0 ( 2 ( cos 16 5 ) 1 ) 0 ( 2 ( cos * 1013 , 0 * 8 2 * 8 2 ) 5 , 5
( = π + π + =
i 0088 , 0 16 6 ) 1 ) 0 ( 2 ( cos 16 5 ) 1 ) 0 ( 2 ( cos * 1653 , 0 * 8 2 * 8 2 ) 6 , 5
( = π + π + =
i 0054 , 0 16 7 ) 1 ) 0 ( 2 ( cos 16 5 ) 1 ) 0 ( 2 ( cos * 1993 , 0 * 8 2 * 8 2 ) 7 , 5
( = π + π + =
i 0480 , 0 16 0 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * 7093 , 0 * 8 1 * 8 2 ) 0 , 6
( = π + π + =
i 0090 , 0 16 1 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * 0956 , 0 * 8 2 * 8 2 ) 1 , 6
( = π + π + =
i 0267 , 0 16 2 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * ) -0,3018 ( * 8 2 * 8 2 ) 2 , 6
( = π + π + =−
i 0120 , 0 16 3 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * ) -0,1510 ( * 8 2 * 8 2 ) 3 , 6
( = π + π + =−
i 0076 , 0 16 4 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * ) -0,1121 ( * 8 2 * 8 2 ) 4 , 6
( = π + π + =−
i 0219 , 0 16 5 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * ) -0,4124 ( * 8 2 * 8 2 ) 5 , 6
( = π + π + =−
i 0030 , 0 16 6 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * ) -0,0821 ( * 8 2 * 8 2 ) 6 , 6
( = π + π + =−
i 00093136 , 0 16 7 ) 1 ) 0 ( 2 ( cos 16 6 ) 1 ) 0 ( 2 ( cos * ) -0,0499 ( * 8 2 * 8 2 ) 7 , 6
( = π + π + =−
i 0261 , 0 16 0 ) 1 ) 0 ( 2 ( cos 16 7 ) 1 ) 0 ( 2 ( cos * 7580 , 0 * 8 1 * 8 2 ) 0 , 7
( = π + π + =
i 0259 , 0 16 1 ) 1 ) 0 ( 2 ( cos 16 7 ) 1 ) 0 ( 2 ( cos * 5413 , 0 * 8 2 * 8 2 ) 1 , 7
( = π + π + =
i 0100 , 0 16 2 ) 1 ) 0 ( 2 ( cos 16 7 ) 1 ) 0 ( 2 ( cos * ) -0,2228 ( * 8 2 * 8 2 ) 2 , 7
( = π + π + =−
(2)
0012 , 0 16
3 ) 1 ) 0 ( 2 ( cos 16
7 ) 1 ) 0 ( 2 ( cos * ) -0,0291 (
* 8 2 * 8 2 ) 3 , 7
( = π + π + =−
i
0060 , 0 16
4 ) 1 ) 0 ( 2 ( cos 16
7 ) 1 ) 0 ( 2 ( cos * ) -0,1753 (
* 8 2 * 8 2 ) 4 , 7
( = π + π + =−
i
00052567 ,
0 16
5 ) 1 ) 0 ( 2 ( cos 16
7 ) 1 ) 0 ( 2 ( cos * 0194 , 0 * 8 2 * 8 2 ) 5 , 7
( = π + π + =
i
0035 , 0 16
6 ) 1 ) 0 ( 2 ( cos 16
7 ) 1 ) 0 ( 2 ( cos * 1898 , 0 * 8 2 * 8 2 ) 6 , 7
( = π + π + =
i
000078023 ,
0 16
7 ) 1 ) 0 ( 2 ( cos 16
7 ) 1 ) 0 ( 2 ( cos * ) -0,0082 (
* 8 2 * 8 2 ) 7 , 7
( = π + π + =−
i
Oleh karena itu, jumlah dari i(0,0) sampai dengan i(7,7) adalah nilai IDCT koefisien (1,1) yaitu :
6440 , 91 ) 1 , 1 ( ) 0 , 0
( =Bw =
f
Nilai tersebut kemudian mengalami pembulatan ke atas agar diperoleh nilai pixel yang bernilai integer, sehingga :
92 ) 1 , 1 ( ) 0 , 0
( =Bw =
f
Nilai IDCT yang juga merupakan nilai pixel setelah mengalami transformasi DCT pada koefisien (1,1) adalah 92. Nilai IDCT dari koefisien-koefisien lainnya dapat diperoleh dengan mengikuti cara mendapatkan koefisien IDCT (1,1) tersebut.
(3)
LAMPIRAN C : LANGKAH MENDAPATKAN KORELASI
Rumus korelasi seperti pada persamaan 2.8 adalah sebagai berikut :
∑∑
∑∑
=
i j ij
ij i j
ij
W W W
NC 2
'
Diketahui suatu matriks sebelum disisipkan bit watermark :
92 93 93 94 95 96 97 97
93 94 94 95 95 96 97 96
93 96 97 97 96 97 97 96
B = 93 96 97 97 96 97 97 97
95 97 97 97 97 98 98 98
95 97 97 97 98 99 100 99
96 97 98 98 98 99 100 99
98 98 98 99 98 98 98 99
Dan hasil penyisipan bit watermark pada matriks tersebut adalah :
92 95 98 100 99 96 91 88 90 91 91 93 95 98 101 102 94 95 92 90 91 97 103 106 Bw = 101 101 98 95 92 93 95 96
96 99 101 101 99 97 93 90 85 91 97 102 105 104 101 98 90 93 96 98 100 102 103 102 107 104 98 95 92 93 96 99
(4)
Perubahan nilai pixel tersebut dapat mempengaruh warna citra. Untuk melihat seberapa besar perubahan yang terjadi, maka digunakan korelasi. Apabila nilai korelasi semakin mendekati 1, berarti warna citra hasil penyisipan menyerupai citra warna citra aslinya. Langkah-langkah untuk mendapatkan korelasi antara kedua matriks di atas adalah sebagai berikut :
8464 92
* 92 ' * 00
00 W = =
W dan W002 =922 =8464
8835 95
* 93 ' * 01
01 W = =
W dan W012 =932 =8649
9114 98
* 93 ' * 02
02 W = =
W dan W022 =932 =8649
9400 100
* 94 ' * 03
03 W = =
W dan W032 =942 =8836
9405 99
* 95 ' * 04
04 W = =
W dan W042 =952 =9025
9216 96
* 96 ' * 05
05 W = =
W dan W052 =962 =9216
8827 91
* 97 ' * 06
06 W = =
W dan W062 =972 =9409
9506 88
* 97 ' * 07
07 W = =
W dan W072 =972 =9409
8370 90
* 93 ' * 10
10 W = =
W dan W102 =932 =8649
8554 91
* 94 ' * 11
11 W = =
W dan W112 =942 =8836
8554 91
* 94 ' * 12
12 W = =
W dan W122 =942 =8836
8835 93
* 95 ' * 13
13 W = =
W dan W132 =952 =9025
9025 95
* 95 ' * 14
14 W = =
W dan W142 =952 =9025
9408 98
* 96 ' * 15
15 W = =
W dan W152 =962 =9216
9797 101
* 97 ' * 16
16 W = =
W dan W162 =972 =9409
9792 102
* 96 ' * 17
17 W = =
W dan W172 =962 =9216
8742 94
* 93 ' * 20
20 W = =
W dan W202 =932 =8649
9120 95
* 96 ' * 21
21 W = =
W dan W212 =962 =9216
8924 92
* 97 ' * 22
22 W = =
W dan W222 =972 =9409
8730 90
* 97 '
*W = =
(5)
9409 97
* 97 ' * 25
25 W = =
W dan W252 =972 =9409
9991 103
* 97 ' * 26
26 W = =
W dan W262 =972 =9409
10176 106
* 96 ' * 27
27 W = =
W dan W272 =962 =9216
9393 101
* 93 ' * 30
30 W = =
W dan W302 =932 =8649
9696 101
* 96 ' * 31
31 W = =
W dan W312 =962 =9216
9506 98
* 97 ' * 32
32 W = =
W dan W322 =972 =9409
9215 95
* 97 ' * 33
33 W = =
W dan W332 =972 =9409
8832 92
* 96 ' * 34
34 W = =
W dan W342 =962 =9216
9021 93
* 97 ' * 35
35 W = =
W dan W352 =972 =9409
9215 95
* 97 ' * 36
36 W = =
W dan 2 972 9409
36 = =
W
9312 96
* 97 ' * 37
37 W = =
W dan W372 =972 =9409
9120 96
* 95 ' * 40
40 W = =
W dan W402 =952 =9025
9603 99
* 97 ' * 41
41 W = =
W dan W412 =972 =9409
9797 101
* 97 ' * 42
42 W = =
W dan W422 =972 =9409
9797 101
* 97 ' * 43
43 W = =
W dan W432 =972 =9409
9603 99
* 97 ' * 44
44 W = =
W dan W442 =972 =9409
9506 97
* 98 ' * 45
45 W = =
W dan W452 =982 =9604
9114 93
* 98 ' * 46
46 W = =
W dan W462 =982 =9604
8820 90
* 98 ' * 47
47 W = =
W dan W472 =982 =9604
8075 85
* 95 ' * 50
50 W = =
W dan W502 =952 =9025
8827 91
* 97 ' * 51
51 W = =
W dan W512 =972 =9409
9409 97
* 97 ' * 52
52 W = =
W dan W522 =972 =9409
9894 102
* 97 ' * 53
53 W = =
W dan W532 =972 =9409
10290 105
* 98 ' * 54
54 W = =
W dan W542 =982 =9604
10296 104
* 99 ' * 55
55 W = =
(6)
10100 101
* 100 ' * 56
56 W = =
W dan W562 =1002 =10000 9702
98 * 99 ' * 57
57 W = =
W dan W572 =992 =9801
8640 90
* 96 ' * 60
60 W = =
W dan W602 =962 =9216
9021 93
* 97 ' * 61
61 W = =
W dan W612 =972 =9409
9408 96
* 98 ' * 62
62 W = =
W dan W622 =982 =9604
9604 98
* 98 ' * 63
63 W = =
W dan W632 =982 =9604
9800 100
* 98 ' * 64
64 W = =
W dan W642 =982 =9604
10098 102
* 99 ' * 65
65 W = =
W dan W652 =992 =9801
10300 103
* 100 ' * 66
66 W = =
W dan W662 =1002 =10000 10098
102 * 99 ' * 67
67 W = =
W dan 2 992 9801
67 = =
W
10486 107
* 98 ' * 70
70 W = =
W dan W702 =982 =9604
10192 104
* 98 ' * 71
71 W = =
W dan W712 =982 =9604
9604 98
* 98 ' * 72
72 W = =
W dan 2 982 9604
72 = =
W
9405 95
* 99 ' * 73
73 W = =
W dan W732 =992 =9801
9016 92
* 98 ' * 74
74 W = =
W dan 2 982 9604
74 = =
W
9114 93
* 98 ' * 75
75 W = =
W dan W752 =982 =9604
9408 96
* 98 ' * 76
76 W = =
W dan W762 =982 =9604
9801 99
* 99 ' * 77
77 W = =
W dan W772 =992 =9801
Kemudian, hasil-hasil yang tersebut diimplementasikan ke dalam rumus korelasi :
9999 , 0 598124 598098 '
2 = =
=
∑∑
∑∑
i j ij
ij i j
ij
W W W NC