IMPLEMENTASI TEKNIK WATERMARKING PADA CITRA DIGITAL MENGGUNAKAN METODE DISCRETE FOURIER TRANSFORM (DFT).

(1)

DISCRETE FOURIER TRANSFORM (DFT)

TUGAS AKHIR

Oleh :

SARI DWI JAYANTI

0534010231

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA TIMUR


(2)

Pembimbing II : Fetty Tri Anggraeny, S.Kom Penyusun : Sari Dwi Jayanti

ABSTRACT

The ease of distributing digital media, especially using Internet, apparently brings the negative impact for the effort of copyright protection on digital media. Digital watermarking as one of solution to overcome these problems, facing the question of robustness against the distortion that could be happens along the distribution process.

There are several digital watermarking techniques, some of them operate directly on its spatial domain and the other one work on frequency domain. The watermarking techniques that operate on frequency domain, apparently can figure the problems out. DFT (Discrete Fourier Transform) as one of transformation that used in digital image processing environment.

The procedure must be done to insert a watermark is choose a cover image and a watermark image (a message). And afterward inserted processing will be done, then a watermarked image as result must be save in a image file with bmp extension. The next process is doing watermarked extraction process which be done with choose a watermarked image and a watermark image which been inserted. DFT used on both inserted processing and extracted processing.

The results of examination showed that obtain of average value of PNSR which used for account the difference of original image and watermarked image, whish value is 35,685 dB. On the watermarked extract processing, watermarked image which resulted, experiencing a little bit changed of watermark’s image which had been inserted previously also acquired value of correlation (NC) which used for measured the difference of initial message’s value and readable message’s, and from the examination, obtain of NC’s average value is 0,98926%.


(3)

Pembimbing II : Fetty Tri Anggraeny, S.Kom Penyusun : Sari Dwi Jayanti

ABSTRAK

Kemudahan distribusi media digital, khususnya melalui internet ternyata memberikan dampak negatif bagi usaha-usaha perlindungan hak cipta atas media digital. Watermarking digital sebagai salah satu solusi yang bisa digunakan untuk mengatasi masalah ini, dihadapkan pada permasalahan ketahanan terhadap distorsi yang mungkin terjadi selama proses distribusi.

Ada beberapa teknik watermarking digital, baik itu yang bekerja pada domain spasialnya maupun yang beroperasi pada domain frekuensinya. Teknik-teknik watermarking pada domain frekuensi ternyata cukup baik dalam mengatasi permasalahan ketahanan terhadap distorsi. DFT (Discrete Fourier Transform) sebagai salah satu jenis transformasi yang dapat digunakan dalam dunia pengolahan citra digital.

Prosedur yang harus dilakukan dalam menyisipkan watermark adalah memilih gambar cover dan gambar watermark (pesan). Dan kemudian dilakukan proses penyisipan, kemudian menyimpan gambar hasil penyisipan dalam bentuk file berextentensi bmp. Proses selanjutnya adalah melakukan proses ekstraksi

watermark yang dilakukan dengan cara memilih gambar ter-watermark dan memilih watermark yang telah disisipkan. DFT digunakan dalam kedua proses penyisipan serta proses ekstraksi.

Hasil penelitian menunjukkan bahwa dapat diperoleh nilai rata-rata perhitungan PNSR untuk menghitung perbedaan gambar asli dan gambar

ter-watermark sebesar 35,685 dB. Pada proses ekstraksi watermark, gambar

watermark yang terbaca mengalami sedikit perubahan dari gambar watermark

yang telah disisipkan sebelumnya serta diperoleh nilai korelasi (NC) untuk mengukur perbedaan nilai pesan awal dengan pesan terbaca, dan didapatkan nilai rata-rata NC sebesar 0,98926 %.


(4)

Alhamdulillahi rabbil‘alamin, Sembah sujudku dan segala puji syukur kepada Allah SWT, karena hanya dengan kehendak dan kuasa-Nya, penulis dapat menyelesaikan pembuatan Tugas Akhir yang berjudul ”IMPLEMENTASI

TEKNIK WATERMARKING PADA CITRA DIGITAL MENGGUNAKAN

METODE DISCRETE FOURIER TRANSFORM (DFT)”.

Tugas Akhir dengan beban 4 SKS ini disusun dan diajukan sebagai salah satu syarat untuk menyelesaikan program Strata Satu (S1) pada program studi Teknik Informatika, Fakultas Teknologi Industri, Universitas Pembangunan Nasional ”Veteran” Jawa Timur Surabaya.

Penulis menyadari bahwasanya dalam menyelesaikan Tugas Akhir ini telah mendapat bantuan dan dukungan yang tidak sedikit dari berbagai pihak. Untuk itu penulis secara khusus mengucapkan terima kasih yang sebesar-besarnya kepada:

1. Bapak Ir. Sutiyono, MT selaku Dekan Fakultas Teknologi Industri-Universitas Pembangunan Nasional “Veteran” Jatim.

2. Bapak Basuki Rahmat, S.Si, MT selaku Ketua Program Studi Teknik Informatika-Universitas Pembangunan Nasional “Veteran” Jatim.

3. Ibu Ir. Kartini, MT, selaku Dosen Pembimbing I yang telah giat meluangkan banyak waktu untuk memberikan ilmu serta motivasi kepada penulis untuk menyelesaikan Skripsi ini.

4. Ibu Fetty Tri anggraeny S.Kom, selaku Dosen Pembimbing II yang dengan sabar telah meluangkan banyak waktu, pikiran dan tenaga di antara kesibukan


(5)

5. Ayah, bunda, dan kakak bro yang senantiasa mengingatkan dan mendoakan serta memberikan dukungannya supaya Tugas Akhir ini segera penulis selesaikan.

6. Teman-teman spesial satu angkatan yang telah banyak membantu penulis. Anita ’Solo’ Trihapsari (minjemin laptop, pemberi semangat dan saran), Ricky ’Alex’ Hedi, Ahmad Na’im, Ibrahim ’Bro’ Tauhid, Ferry Syaifullah, Dedy ’Rambo’ Budiawan, Bagus ’Ndut’ , Bagus ’Cukrik’, Dodik Dores, Eko Fajar, Tulus, Erin, Cha2, Yoe, Amir, Qoyyim, Didok, Yeyen, Yuli dan teman-teman lain yang tidak dapat disebutkan satu-persatu.

7. Teman-teman seperjuangan: Gilang, Ferry, Fitri, Andrias, Evy, Vivin, Drenges, adik-adik angkatan ’06.

8. Teman-teman di Satmenwa 806 / Giri Yudha Bakti yang selalu menemani penulis selama di kampus tercinta ini.

9. Dan semua orang yang tidak dapat disebutkan satu-persatu yang telah membantu penulis selama ini.

Di dalam Tugas Akhir ini mungkin masih terdapat banyak kekurangan yang belum bisa penulis sempurnakan. Untuk itu saran dan masukan sangatlah penulis harapkan untuk perbaikan ke depan.

Surabaya, Mei 2011


(6)

Hal. ABSTRAK... I

KATA PENGANTAR... Iii

DAFTAR ISI... V

DAFTAR GAMBAR... Ix

DAFTAR TABEL... xii

BAB I PENDAHULUAN... 1

1.1 Latar Belakang... 1

1.2 Rumusan Masalah... 3

1.3 Batasan Masalah... 3

1.4 Tujuan... 4

1.5 Manfaat... 4

1.6 Metodologi Penelitian... 5

1.7 Sistematika Penulisan... 6

BAB II LANDASAN TEORI... 8

2.1 Watermarking Digital... 8

2.1.1 Definisi Watermarking Digital... 8


(7)

2.1.4 Klasifikasi Teknik Watermarking Digital.……… 11

2.1.5 Watermarking pada Domain Frekuensi……… 13

2.1.6 Watermarking pada Citra Digital……….………. 15

1) Watermarking pada Citra Grayscale….…………... 16

2) Watermarking pada Citra Berwarna……… 16

2.2 Macam Gambar………..……….. 17

2.2.1 JPEG...………....………...…..………. 17

2.2.2 Bitmap..………... 18

2.2.3 PNG...………... 21

2.2.4 GIF……...………... 22

2.2.5 TIFF...………... 23

2.3 Macam Citra Berdasarkan Format Penyimpanan Nilai Warna……….…. 24

2.3.1 Citra Biner…...………...………...…. 24

2.3.2 Citra Skala Keabuan (grayscale)...…....……… 25

2.3.3 Citra Warna (True Color)...….……...…………...………… 25

2.3.3 Citra Warna Berindeks…....….……...…………...……...… 26

2.4 Warna dan Ruang Warna……..………... 27

2.4.1 RGB (Red Green Blue).………....………...…. 28

2.4.2 HSL (Hue Saturation Lightness) dan HSV (Hue Saturation Value) .………....………...…..28


(8)

2.5 Transformasi Fourier Diskrit 2-D.………... 33

2.6 Pengukuran Kualitas Citra Digital………... 34

2.7 Korelasi……….………... 36

BAB III ANALISA DAN PERANCANGAN... 38

3.1 Analisa Permasalahan... 38

3.1.1 Penyisipan Pesan... 39

3.1.2 Pembacaan Pesan... 47

3.1.3 Pengukuran Kualitas Gambar Ter-watermark... 50

3.2 Perancangan Antarmuka………..………...…... 50

3.2.1 Rancangan Antarmuka Penyisipan Pesan... 50

3.2.2 Rancangan Antarmuka Pembacaan Pesan... 51

BAB IV IMPLEMENTASI DAN EVALUASI...53

4.1 Kebutuhan Sistem... 53

4.2 Potongan Program……... 53

4.3 Implementasi Interface... 58

4.3.1 Form Awal... 59

4.3.2 Form Penyisipan Pesan... 60


(9)

5.1 Tujuan Pengujian... 67

5.2 Lingkungaa Pengujian... 67

5.3 Data Uji... 68

5.4 Kasus Uji... 70

5.4.1 Kasus Uji 1 Penyisipan Pesan ke dalam gambar cover... 71

5.4.2 Kasus Uji 2 Pembacaan Pesan ke dalam gambar Ter-watermark... 74

5.4.3 Kasus Uji 3 Menyisipkan Pesan apabila maksimal pesan < gambar cover... 78

5.4.4 Kasus Uji 4 Membaca Pesan di dalam gambar yang Telah diberi noise salt and peppers 5%... 81

5.5 Evaluasi... 82

BAB VI PENUTUP... 83

6.1. Kesimpulan... 83

6.2. Saran... 84


(10)

No. Hal.

2.1 Operasi yang biasa dialami oleh sebuah media digital... 14

2.2 Contoh nilai citra biner... 24

2.3 Contoh nilai citra skala keabuan... 25

2.4 Contoh nilai citra warna (true color)... 26

2.5 Contoh nilai citra berindeks... 27

2.6 Ruang warna RGB....... 28

2.7 Ruang warna HSL... 29

2.8 Ruang warna HSV... 30

2.9 Komposisi citra RGB ke dalam YcbCr... 32

2.10 Penyisipan circular watermark.... 33

3.1 Flowchart Proses Watermarking secara umum... 38

3.2 Contoh perubahan menggunakan Arnold’s Cat Map... 41

3.3 Flowchart Transformasi Arnold’s Cat Map... 42

3.4 Representasi hasil perhitungan DFT....... 43

3.5 Algoritma Proses Penyisipan Pesan... 44

3.6 Flowchart Penyisipan Pesan... 46

3.7 Algoritma Proses Pembacaan Pesan... 48

3.8 Flowchart Proses Pembacaan Pesan... 49

3.9 Rancangan Antarmuka Penyisipan Pesan... 51


(11)

4.2 Form Penyisipan Pesan... 60

4.3 Simpan gambar pada Form Penyisipan Pesan... 61

4.4 Form Pembacaan Pesan... 63

4.5 Form Bantuan... 64

4.6. Form Bantuan Pembacaan Pesan... 65

4.7 Form Bantuan Penyisipan Pesan….………... 65

4.8 Form Keluar………... 66

5.1 Percobaan terhadap penyisipan pesan terhadap gambar cover ‘cameraman.bmp’ dan gambar pesan ‘watermark4.bmp’……… 71

5.2 Percobaan terhadap penyisipan pesan terhadap gambar cover ‘lena.bmp’ dan gambar pesan ‘copy.bmp’………...……… 72

5.3 Percobaan terhadap penyisipan pesan terhadap gambar cover ‘monkey.bmp’ dan gambar pesan ‘right.bmp’………….……… 72

5.4 Percobaan terhadap penyisipan pesan terhadap gambar cover ‘jalan.bmp’ dan gambar pesan ‘right.bmp’………..……… 73

5.5 Percobaan terhadap pembacaan pesan terhadap gambar ter-watermark ‘monkey-watermark4.bmp’………..……… 75

5.6 Percobaan terhadap pembacaan pesan terhadap gambar ter-watermark ‘cameraman-watermark1.bmp’..………..……….75

5.7 Percobaan terhadap pembacaan pesan terhadap gambar ter-watermark ‘jalan-right.bmp’………….………..………76


(12)

‘lena-copy.bmp’...…….………..……….. 76 5.9 Percobaan terhadap penyisipan pesan terhadap gambar cover

‘lena-img.bmp’ dan gambar pesan qr code ‘img.bmp’..…….……...………78 5.10 Percobaan terhadap penyisipan pesan terhadap gambar cover

‘cameraman1.bmp’ dan gambar pesan ‘copy.bmp’…….……….79 5.11 Percobaan terhadap penyisipan pesan terhadap gambar cover

‘Lena1.bmp’ dan gambar pesan ‘mark.bmp’……..…….……….80 5.12 Percobaan terhadap pembacaan pesan terhadap gambar ter-watermark


(13)

No. Hal. 5.1 Tabel Gambar dan Ukuran Gambar Cover Uji Coba... 68

5.2 Tabel Gambar dan Ukuran Gambar Pesan Uji Coba... 69 5.3 Hasil Perhitungan PSNR Gambar Cover dengan

Gambar ter-watermark... 73 5.4 Hasil Perhitungan Korelasi dari Pesan Terbaca dengan

Gambar pesan yang disisipkan... 77 5.5 Hasil Pengujian Uji Coba 3... 80 5.6 Hasil Pengujian Uji Coba 4... 82


(14)

PENDAHULUAN

1.1 Latar Belakang

Saat ini hampir tidak ada orang yang tidak mengenal komputer. Komputer telah dipakai dalam hampir segala aspek kehidupan. Komputer sebagai alat pengolah digital saat ini hampir dimiliki oleh setiap keluarga. Seperti halnya televisi, komputer saat ini juga banyak digunakan sebagai media hiburan. Dengan perkembangan komputer, data-data dalam bentuk digital semakin banyak digunakan, karena memang komputer yang berkembang saat ini merupakan peralatan elektronik yang menggunakan dan mengolah data dalam bentuk digital.

Penggunaan data digital baik berupa teks, suara, citra maupun video sangat pesat dengan adanya komputer, apalagi dengan perkembangan teknologi jaringan antar komputer didunia yang disebut dengan internet, yang memungkinkan pertukaran data digital semakin mudah dilakukan.

Penggunaan data digital selain mudah dalam hal penyebaran, juga disebabkan akan kemudahan dan murahnya biaya penggandaan (peng-copyan) serta penyimpannya untuk digunakan di kemudian hari. Dampak kemudahan inilah yang disalah gunakan tanpa memperhatikan aspek hak cipta (Intelectual Property Right), sehingga perlu dipikirkan adanya perlindungan terhadap hak cipta. Permasalahan diatas, membawa perubahan cara pandang peneliti terhadap metode yang digunakan untuk melindungi hak cipta pada media digital.

Banyak cara yang sudah dilakukan untuk memberikan perlindungan data digital seperti kriptografi, copy-protection, visible marking, header marking dan


(15)

lainnya. Tetapi cara tersebut di atas memiliki kelemahan masing - masing. Seperti halnya kriptografi, dalam konteks perlindungan terhadap hak cipta media digital ternyata tidak memberikan jawaban yang memuaskan. Teknik kriptografi hanya mengijinkan pemegang kunci yang benar saja yang dapat mengakses media digital terenkripsi, tetapi ketika media ini telah didekripsi tidak ada lagi cara untuk melacak hasil reproduksi. Satu dekade terakhir muncul pemakaian steganography untuk mengatasi masalah perlindungan hak cipta ini pada data digital yang lebih dikenal dengan istilah watermarking.

Watermarking digital menawarkan solusi lain yang lebih tepat untuk masalah ini, teknik watermarking melindungi media digital dengan data tertentu yang tertanam secara permanen di dalam media yang bersangkutan. Teknik

watermarking digunakan untuk menyembunyikan data dalam gambar digital dengan sedikit atau tanpa terasa adanya perubahan yang tampak pada gambar tersebut sehingga gambar tersebut dapat didistribusikan tanpa adanya kecurigaan bahwa di dalam gambar itu terdapat tanda rahasia.

Proses watermarking digital dapat dilakukan dengan beberapa cara, yaitu

watermark ditanamkan pada domain spasial atau pixel, atau juga watermark

ditanamkan pada domain frekuensi. Penanaman watermarking pada domain frekuensi, domain frekuensi diperoleh dengan melakukan transformasi image. Banyak jenis transformasi yang digunakan untuk melakukan transformasi image, salah satunya adalah Discrete Fourier Transform (DFT).


(16)

1.2 Perumusan Masalah

Berdasarkan latar belakang yang dipaparkan, maka didapat perumusan masalah yang akan diselesaikan dalam Tugas Akhir ini adalah sebagai berikut :

 Melakukan penyembunyian pesan ke dalam gambar digital dengan metode

Discrete Fourier Transformation (DFT).

 Melakukan ekstraksi pesan tersembunyi pada gambar digital yang telah disisipkan pesan.

 Membandingkan kualitas antara gambar digital asli dengan gambar digital yang sudah disisipkan pesan.

1.3 Batasan Masalah

Ruang lingkup atau batasan-batasan permasalahan merupakan hal yang sangat penting untuk ditentukan terlebih dahulu agar diketahui sejauh mana tugas akhir ini akan dikerjakan. Beberapa batasan masalah tersebut antara lain:

a. Penyembunyian pesan dilakukan pada gambar digital dengan format yang telah ditentukan, yaitu bitmap (bmp).

b. Penyembunyian pesan dilakukan pada gambar keabuan (grayscale).

c. Pesan yang disembunyikan pada gambar digital hanya berupa gambar hitam-putih (gambar biner) dengan ukuran 40 x 40 pixel.

d. Bahasa pemrograman yang digunakan disesuaikan dengan kebutuhan. Begitu juga dengan tampilan dari aplikasi ini akan disesuaikan dengan kebutuhan.

e. Pembuatan aplikasi menggunakan metode Discrete Fourier Transform


(17)

1.4 Tujuan

Tujuan yang ingin dicapai pada penulisan Tugas Akhir ini adalah sebagai berikut:

 Memahami teknik watermarking digital pada citra dengan menggunakan metode Discrete Fourier Transformation (DFT).

 Memahami teknik ekstraksi pesan rahasia yang telah disisipkan pada gambar digital.

 Mengimplementasikan teknik watermarking pada citra digital ke dalam sebuah perangkat lunak.

1.5 Manfaat

Dengan dilakukannya Watermarking pada Citra Digital, maka akan didapatkan manfaat sebagai berikut:

 Proteksi Hak Cipta

Dalam perlindungan hak cipta adalah sebagai bukti otentik atas hak kepemilikan pencipta atas content yang dibuat atau diproduksinya.

Watermarking sangat ideal untuk pembuatan label hak cipta, karena bukan hanya tak terlihat tetapi juga tidak dapat dipisahkan dari data yang disisipi. Hal ini merupakan alasan utama sehingga proteksi menggunakan label hak cipta menjadi aplikasi yang sangat terkemuka saat ini. (Lu, Chun-Shien. 2005.).


(18)

1.6 Metodologi Penelitian

1. Studi Pustaka

Melakukan studi pustaka tentang cara representasi format dari file gambar digital yang digunakan serta teknik penyembunyian dan ekstraksi terhadap

file gambar digital dengan metode Discrete Fourier Transform (DFT). 2. Analisis

Analisis dari hasil studi pustaka. Meliputi algoritma yang digunakan pada penyembunyian data beserta teknik ekstraksinya. Disamping itu dilakukan juga analisis terhadap kebutuhan perangkat lunak yang akan dibangun sehingga diperoleh gambaran umum yang akan dibangun.

3. Perancangan Perangkat Lunak

Melakukan pengumpulan terhadap kebutuhan fungsional, merancang arsitektur perangkat lunak dan perancangan antarmuka.

4. Implementasi Perangkat Lunak

Melakukan pembuatan perangkat lunak dari rancangan yang telah dibuat sebelumnya.

5. Pengujian

Melakukan pengujian terhadap perangkat lunak yang telah diimplementasi, yaitu keberhasilan penyembunyian pesan dan ekstraksinya pada gambar digital, serta kualitas gambar antara sebelum dan sesudah penyembunyian pesan.


(19)

1.7 Sistematika Penulisan

Penulisan Tugas Akhir ini secara sistematis diatur dan disusun dalam enam bab yang didalamnya terdapat beberapa sub bab. Secara ringkas uraian materi dari bab pertama hingga bab terakhir adalah sebagai berikut:

BAB I Pendahuluan

Pada bab pendahuluan ini membahas mengenai latar belakang masalah, perumusan masalah, batasan masalah, tujuan tugas akhir, manfaat tugas akhir, metode pembuatan tugas akhir serta sistematika dari penulisan bab akhir.

BAB II Landasan Teori

Pada bab landasan teori ini menjelaskan tentang definisi

watermarking, jenis-jenis image digital, warna dan ruang warna, dan klasifikasi watermarking.

BAB III Perancangan Sistem

Pada bab perancangan sistem ini menjelaskan tentang perancangan perangkat lunak dari sistem yang akan dibuat, meliputi : deskripsi umum sistem, spesifikasi kebutuhan sistem, perancangan proses, perancangan data, dan perancangan antarmuka.

BAB IV Implementasi

Bab implementasi ini berisi tentang pembuatan aplikasi dari perancangan sistem yang telah dibuat pada bab II.

BAB V Uji Coba dan Evaluasi

Bab ini menjelaskan tentang proses pengujian terhadap sistem yang telah dibuat dan melakukan evaluasi terhadap hasil pengujian tersebut.


(20)

BAB VI Penutup

Bab ini merupakan bab akhir dari pembuatan laporan dari aplikasi yang telah dibuat, dimana pada bab ini berisi kesimpulan dan saran dari penulis.


(21)

LANDASAN TEORI

2.1 Watermarking Digital

2.1.1 Definisi Watermarking Digital

Ada beberapa pengertian mengenai watermark digital yang dapat diperoleh dari berbagai referensi, baik itu dari paper-paper ilmiah maupun dari sumber-sumber lain yang penulis dapatkan dari Internet.

Watermarking World (2002) mendefinisikan watermark sebagai data tersembunyi yang ditambahkan pada sinyal pelindung (cover signal), sedemikian rupa sehingga penambahan tersebut tidak terlihat. Watermark dapat juga merupakan suatu pola yang terbentuk oleh kumpulan bit data tertentu, yang disisipkan kedalam file citra, audio ataupun video yang mengidentifikasikan informasi hak cipta file tersebut (Webopedia, 2003). Lebih jauh lagi watermark bisa juga berupa kode yang membawa informasi mengenai pemilik hak cipta, pencipta, pembeli yang sah dan segala sesuatu yang diperlukan untuk menangani hak kepemilikan media digital. Watermark sengaja ditanamkan secara permanen pada data digital sedemikian hingga pengguna yang berwenang dapat dengan mudah membacanya, disisi 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).

Dari beberapa definisi diatas ada benang merah yang dapat ditarik untuk memberikan definisi watermark digital, yaitu sebuah watermark merupakan sebuah pola/kode/data tertentu yang membawa informasi tertentu sesuai dengan


(22)

tujuannya dan sengaja ditanamkan secara permanen kedalam data media induknya.

2.1.2 Framework Watermarking Digital

Jika watermark merupakan sesuatu yang ditanamkan, maka watermarking merupakan proses penanaman watermark tersebut. Secara umum framework sebuah algoritma watermarking tersusun atas tiga bagian, yaitu [(Duan and King, 1999) dan (Mohanty, 1999)]:

(1) Watermark,

(2) Algoritma penyisipan watermark (enkoder), dan (3) Algoritma pendeteksian watermark (dekoder).

Watermark dapat berupa representasi identitas kepemilikan media digital, maupun informasi lain yang dipandang perlu untuk ditanamkan kedalam media yang bersangkutan. Algoritma penyisipan watermark menangani bagaimana sebuah watermark ditanamkan pada media induknya. Algoritma pendeteksian watermark menentukan apakah didalam sebuah media digital terdeteksi watermark yang sesuai atau tidak.

2.1.3 Karakteristik Watermark Digital

Ada beberapa karakteristik atau sifat khusus tertentu yang harus dimiliki oleh sebuah watermark. Sifat-sifat tersebut sangat bergantung kepada aplikasi watermarking yang akan dibuat, atau dengan kata lain tidak ada sekelompok sifat tertentu yang harus dipenuhi oleh semua teknik watermarking. Meskipun demikian ada beberapa sifat yang secara umum dimiliki aplikasi watermarking.


(23)

Sifat-sifat tersebut diantaranya adalah sebagai berikut [(Swanson et al, 1998) dan (Langelaar et al, 2000)]:

Perceptual transparency

Sebagian besar aplikasi watermarking mengharuskan algoritma watermarking digital menanamkan watermark sedemikian hingga ia tidak mempengaruhi kualitas media yang disisipi watermark. Media yang telah ditanami watermark haruslah sulit dibedakan dengan media aslinya oleh indera manusia. Atau dengan kata lain penanaman watermark pada citra haruslah tidak terdeteksi oleh indera penglihatan manusia dan penanaman watermark pada audio haruslah tidak dikenali oleh indera pendengaran.  Robustness

Untuk watermark yang memang ditujukan untuk membuktikan keotentikan media induk, atau yang disebut dengan fragile watermark, tidak disyaratkan memiliki sifat ini. Tetapi jika watermark digunakan untuk aplikasi yang lain, diperlukan watermark yang selalu tertanam didalam media induk, meskipun media induknya mengalami penurunan kualitas akibat serangan.

Security

Dalam banyak aplikasi watermarking, proses penanaman watermark haruslah aman sedemikian hingga pihak yang tidak berhak harus tidak dapat mendeteksi keberadaan data yang ditanamkan, dan mampu menghilangkan data tersebut. Sekali lagi keamanan disini juga sangat bergantung pada aplikasinya. Sebuah prosedur penanaman watermark dikatakan aman jika ia tidak dapat dipecahkan kecuali pihak yang tidak


(24)

berhak tersebut memiliki akses terhadap kunci yang mengendalikan proses penyisipan data pada media induk.

Public vs Private Watermarking

Dalam beberapa aplikasi, seperti copyright protection, pengekstrakan watermark bisa saja membutuhkan media aslinya. Teknik ini disebut dengan private atau nonoblivious watermarking. Sedangkan pada aplikasi yang lain, seperti copy protection dan indexing, proses pendeteksian watermark seharusnya tidak memiliki akses terhadap media asli yang belum ter-watermark. Teknik ini sering disebut sebagai public, blind, atau obliviouswatermarking.

2.1.4 Klasifikasi Teknik Watermarking Digital

Dalam satu dasawarsa terakhir ini cukup banyak teknik-teknik watermarking yang sudah diusulkan oleh para peneliti. Teknik-teknik tersebut berdasarkan domain kerjanya, dapat diklasifikasikan menjadi tiga kelompok, yaitu:

1) Teknik watermarking pada domain spasial (spatial domain watermarking)

Teknik ini bekerja dengan cara menanamkan watermark secara langsung kedalam domain spasial dari suatu citra. Istilah domain spasial sendiri mengacu pada piksel-piksel penyusun sebuah citra. Teknik watermarking jenis ini beroperasi secara langsung pada piksel-piksel tersebut. Beberapa contoh teknik yang bekerja pada domain spasial adalah teknik penyisipan pada Least Significant Bit (LSB) (Johnson and Jajodia, 1998), metode patchwork yang diperkenalkan


(25)

oleh Bender et al (1996), Teknik adaptive spatial-domain watermarking diusulkan oleh Lee dan Lee (1999).

2) Teknik watermarking pada domain transform / frekuensi (transform

domain watermarking)

Pada transform domain watermarking (sering juga disebut dengan frequency domanin watermarking) ini penanaman watermark dilakukan pada koefisien frekuensi hasil transformasi citra asalnya. Ada beberapa transformasi yang umumdigunakan oleh para peneliti, yaitu: discrete cosine transform (DCT), discrete fourier transform (DFT), discrete wavelet transform (DWT) maupun discrete laguerre transform (DLT).

Berikut ini beberapa contoh algoritma watermarking digital pada domain frekuensi: Koch dan Zhao (1995) memperkenalkan teknik randomly sequenced pulse position modulated code (RSPPMC) yang bekerja pada domain DCT. Kemudian Cox et al (1997) mengusulkan teknik watermarking digital yang dianalogikan dengan teknik spread spectrum communication. Teknik yang hampir serupa dengan proposal Cox et al (1997) diperkenalkan oleh Fotopoulos et al (2000), letak perbedaanya adalah dalam penggunaan blok DCT tempat penanaman watermark. Teknik lain yang memanfaatkan DCT adalah yang diusulkan oleh Barni et al (1998), ia memanfaatkan pseudo-random number sequence sebagai watermark yang disisipkan ke dalam vektor koefisien DCT citra yang disusun secara zig-zag seperti dalam algortima JPEG (Wallace, 1991). Pemanfaatan domain DLT dalam watermarking digital dapat ditemui di (Gilani dan Skodras, 2000). Teknik yang berbasiskan wavelet ternyata juga tidak kalah populer digunakan dalam watermarking digital, seperti penggunaan wavelet pada


(26)

watermarking video yang diusulkan oleh Swanson et al (1997). Salah satu alasan pemanfaatan wavelet dalam watermarking adalah kemampuan watermark untuk bertahan dalam berbagai skala resolusi citra (Swanson et al, 1997).

3) Teknik watermarking pada kedua domain diatas (hybrid techniques

watermarking)

Teknik watermarking jenis ini bekerja dengan menggabungkan kedua teknik diatas. Pada teknik ini biasanya penanaman watermark dilakukan pada domain frekuensi beberapa bagian citra yang dipilih berdasarkan karakteristik spasial citra tersebut.

2.1.5 Watermarking pada Domain Frekuensi

Sebuah media digital dalam perjalannya mulai dari si pencipta dan akhirnya sampai ke tangan pengguna (konsumen), tentunya akan sangat mungkin mengalami banyak sekali distorsi ataupun penyimpangan-penyimpangan. Gambar 2.1 adalah contoh gambaran proses penyimpangan yang mungkin terjadi pada sebuah media digital khususnya citra digital. Sebuah citra digital seperti dalam gambar 2.1 mengalami berbagai proses tertentu yang tentu saja dapat mempengaruhi keutuhan data yang berada didalamnya. Jalur penyebaran (transmission) mengacu pada segala aplikasi berbasis kode sumber (sorce code) maupun kode kanal (channel code), dan atau teknik-teknik enkripsi standar terhadap data citra. Meskipun dalam sebagian kasus proses-proses yang terjadi bersifat lossless, atau data yang diproses dapat dikembalikan sebagaimana data aslinya, tetapi dalam kasus lain seperti kompresi, ada teknik kompresi (seperti kompresi JPEG) yang bersifat lossy, yang secara potensial dapat menurunkan


(27)

kualitas suatu citra, karena data yang terkompresi tidak dapat dikembalikan seperti data aslinya lagi. Pada kompresi lossy dan distorsi geometris (seperti scaling) bagian dari citra yang terpengaruh adalah pada komponen frekuensi tinggi.

Gambar 2.1 Operasi yang biasa dialami oleh sebuah media digital.

Uraian diatas memberikan gambaran singkat bahwa sebuah watermark seharusnya tidak ditanamkan pada bagian citra yang secara perseptual tidak penting, karena banyak pemrosesan citra dan geometris yang mempengaruhi bagian ini. Kemudian yang menjadi permasalahan adalah bagaimana menyisipkan watermark pada spektrum citra yang secara perseptual cukup penting, sedemikian hingga tidak menurunkan kualitas citra. Hal ini dapat dilakukan jika pengubahan


(28)

nilai koefisien cukup kecil dan koefisien yang diubah, secara persentual memang cukup penting.

Untuk mengatasi masalah ini, domain frekuensi dapat dilihat sebagai sebuah kanal komunikasi dan watermark dapat diibaratkan sebagai sinyal yang dikirimkan melewatinya. Serangan dan distorsi sinyal yang tidak disengaja dapat diperlakukan sebagai noise, dan watermark harus kebal terhadapnya.

Teknik watermarking pada domain frekuensi sebenarnya dapat dianalogikan seperti komunikasi spread spectrum (SS). Didalam komunikasi SS, seseorang mengirimkan sebuah sinyal cukup lemah diatas kanal dengan yang lebar sedemikian hingga energi sinyal tersebut yang berada pada sebuah frekuensi tidak terdeteksi. Demikian juga dengan watermark, ia disebar ke dalam banyak satuan frekuensi sedemikian hingga energi watermark yang berada pada setiap frekuensi cukup kecil dan secara langsung tidak terdeteksi.

Sebuah watermark yang ditempatkan dengan baik pada domain frekuensi citra, tidak akan tampak oleh mata. Hal ini akan terjadi jika energi watermark yang tersebar cukup kecil di setiap frekuensi. Energi ini dapat ditingkatkan dengan memanfaatkan pengetahuan tentang fenomena masking dalam sistem penglihatan manusia (Cox et al, 1997).

2.1.6 Watermarking pada Citra Digital

Watermarking pada citra digital secara umum dapat dikategorikan menurut warnanya menjadi 2 kelompok, yaitu:


(29)

1) Watermarking pada citra gray scale

Citra gray scale merupakan jenis citra yang banyak dimanfaatkan sebagai obyek algoritma watermarking. Salah satu alasannya adalah bahwa citra ini tidak terlalu kompleks untuk diolah karena ia dapat direpresentasikan sebagai matriks dua dimensi dengan nilai masing-masing elemennya merupakan representasi tingkat intensitas keabuan dari setiap pikselnya. Informasi tingkat keabuan setiap pikselnya disimpan dalam satuan 8 bit, atau dengan kata lain disini ada 28 atau 256 warna keabuan yang berbeda, mulai dari 0 yang merepresentasikan warna hitam sampai dengan 255 yang mewakili warna putih.

Pada dasarnya watermarking pada citra gray scale dapat diterapkan secara langsung pada citra ini sesuai dengan jenis teknik watermarking yang digunakan. Sebagai contoh : jika teknik spatial domain yang digunakan maka nilai intensitas piksel-piksel dari citra ini yang akan diubah sesuai dengan prosedur yang digunakan untuk menanamkan watermark. Begitupun dengan teknik yang bekerja pada domain frekuensi, transformasi secara langsung dapat dilakukan pada citra, meskipun pada algoritma tertentu kadang-kadang diperlukan pembagian citra menjadi blok-blok yang lebih kecil. Kemudian watermark ditanamkan pada koefisien-koefisien frekuensi yang terpilih.

2) Watermarking pada citra berwarna

Berbeda dengan teknik watermarking pada citra gray scale, dalam kasus citra berwarna, watermark dapat ditanamkan didalam satu atau lebih kanal warna yang ada pada ruang warna citra tersebut. Beberapa teknik watermarking hanya menggunakan kanal warna biru sebab sistem penglihatan manusia (human visual system (HVS)) tidak terlalu peka pada komponen warna ini (Swanson, 1998).


(30)

Cara lain adalah dengan mentransformasikan ruang warna RGB ke ruang warna lain seperti HSL atau YCrCb, kemudian watermark ditanamkan pada komponen luminance-nya saja, dan ditransformasikan kembali ke ruang warna RGB.

2.2 Macam Gambar

2.2.1 JPEG

Joint Photographic Experts Group (JPEG) adalah format gambar yang banyak digunakan untuk menyimpan gambar-gambar dengan ukuran lebih kecil. Beberapa karakteristik gambar JPEG : Memiliki ekstensi .jpg atau .jpeg. Mampu menayangkan warna dengan kedalaman 24-bit true color. Mengkompresi gambar dengan sifat lossy. Umumnya digunakan untuk menyimpan gambar-gambar hasil foto. JPEG berbeda dengan MPEG (Moving Picture Experts Group) yang menyediakan kompresi untuk video.

Dikembangkan awal tahun 1980 oleh Joint Photographic Experts Group (JPEG). JPEG merupakan format paling sering digunakan di internet. Implementasi format JPEG terbaru dimulai sejak tahun 1996 dan semakin berkembang dengan inovasi format baru yang menyertai perkembangan teknologi yang memanfaatkan format JPEG lebih luas.

Walaupun format JPEG merupakan metode kompresi gambar yang gratis, sebuah perusahaan bernama Forgent pada tahun 2002 mempatenkan format ini dan akan menarik biaya lisensi. Segera Group JPEG mengumumkan sebuah format JPEG 2000 sebagai sebuah format pengganti. Namun dua hal di atas terlambat, karena JPEG sudah digunakan secara luas dan hak paten belum ditetapkan oleh pengadilan.


(31)

Standar kompresi file gambar yang dibuat oleh kelompok Joint Photographic Experts Group ini menghasilkan kompresi yang sangat besar tetapi dengan akibat berupa adanya distorsi pada gambar yang hampir selalu tidak terlihat. JPEG adalah sebuah format gambar, sangat berguna untuk membuat gambar jenis fotografi berkualitas tinggi dalam ukuran file yang sangat kecil. Format file grafis ini telah diterima oleh Telecommunication Standardization Sector atau ITU-T dan Organisasi Internasional untuk Standardisasi atau ISO.

Meskipun kompresi gambar JPEG sangatlah efisien dan selalu menyimpan gambar dalam kategori warna true color (24 bit), format ini bersifat lossy, yang berarti bahwa kualitas gambar dikorbankan bila tingkat kompresi yang dipilih semakin tinggi.

Kelebihan dari format gambar JPEG adalah JPEG mendukung 16 juta warna. Jadi walaupun terjadi penurunan kualitas gambar, format ini sangat cocok untuk menggunakan pada penampilan gambar fotografi. Namun, dibandingkan format lain, browser membutuhkan waktu yang lebih lama untuk memuat file JPEG.

2.2.2 Bitmap (BMP)

Gambar bitmap adalah kumpulan bit yang membentuk sebuah gambar. Gambar tersebut memiliki kandungan satuan-satuan titik (atau pixels) yang memiliki warnanya masing-masing (disebut dengan bits, unit terkecil dari informasi pada komputer). Semakin banyak jumlah pixel yang ada pada sebuah gambar, maka semakin halus dan realistik gambar tersebut.


(32)

a. Jenis Gambar Bitmap

1. Line-art

Merupakan gambar yang hanya terdiri dari dua warna, biasanya hitam dan putih. Biasanya gambar jenis ini dijadikan gambar bitmap karena komputer hanya menggunakan 1 bit (warna hitam yang membentuk gambar, warna putih sebagai latar) untuk mendefinisikan masing-masing pixel-nya.

2. Grayscale Images

Yang terdiri dari bermacam warna abu-abu dalam menghasilkan warna hitam dan putih.

3. Multitones

Terdiri dari dua warna atau lebih. Gambar multitones yang biasa digunakan adalah duotones, yang biasanya terdiri dari paduan warna hitam dengan warna khusus (Pantone colour). Warna yang digunakan pada gambar di atas adalah paduan dari warna hitam dengan Pantone Warm Red.

4. Full Colour Images

Merupakan gambar yang memiliki warna yang tampak realistis. Informasi warna dijelaskan menggunakan jenis-jenis standar warna seperti RGB, CMYK atau Lab.

b. Karakteristik Data Bitmap

Gambar yang menggunakan data bitmap akan menghasilkan bobot file yang besar. Sebagai contoh, sebuah gambar dengan standar warna CMYK berukuran A4 yang memiliki kualitas cetak menengah (medium) menghasilkan bobot file sebesar 40 MB. Dengan menggunakan kompresi dapat memperkecil bobot sebuah file.


(33)

Perbesaran dimensi gambar merupakan salah satu kekurangan jenis gambar bitmap ini. Begitu sebuah gambar diperbesar terlalu banyak, akan terlihat tidak natural dan pecah. Begitu juga dengan memperkecil sebuah gambar, akan memberikan dampak buruk seperti berkurangnya ketajaman gambar tersebut.

Gambar bitmap sangat bergantung pada resolusi. Jika gambar diperbesar maka gambar akan tampak kurang halus sehingga mengurangi detailnya. Selain itu gambar bitmap akan mempunyai ukuran file yang lebih besar. Semakin besar resolusi gambar akan semakin besar pula ukuran file-nya.

Gambar dengan tampilan 100% dan gambar dengan tampilan 500% akan mempunyai perbedaan, yaitu pada gambar yang berukuran 100%, gambar terlihat jernih, namun pada gambar dengan zoom hingga 500% maka gambar akan nampak tidak tajam lagi dan terkesan membentuk kotak-kotak, yang merupakan pixel.

Bitmap cukup simpel untuk pencetakan selama printer yang digunakan memiliki memory yang cukup. Mesin cetak PostScript level 1 jaman dulu akan mengalami masalah ketika mendapatkan sebuah gambar (khususnya Line-art) yang dirotasi, tapi hardware dan software jaman sekarang dapat menangani berbagai efek manipulasi gambar apapun tanpa masalah.

c. Aplikasi Data Bitmap

Ada ratusan aplikasi di pasaran yang dapat digunakan untuk membuat atau memodifikasi file gambar dengan data bitmap. Dalam dunia percetakan, Adobe Photoshop adalah aplikasi yang mendominasi pasar. Tapi bukan berarti aplikasi alternatif yang lebih murah seperti Corel Photo-Paint dapat dianggap remeh.


(34)

d. Format File yang digunakan untuk Data Bitmap

Gambar dengan format data bitmap dapat disimpan dalam berbagai macam format file, antara lain:

 BMP; format file yang terbatas, tidak cocok digunakan untuk cetak.

 EPS; format file yang fleksibel, yang dapat berisi gambar bitmap maupun

vector.

 GIF; biasanya digunakan untuk grafis-grafis di internet.

 JPEG; atau juga format file JFIF, biasa digunakan sebagai grafik atau

gambar di internet karena memiliki tingkat ketajaman gambar yang dapat mempengaruhi bobot file.

 PICT; format file yang dapat berisi gambar bitmap maupun vektor, tetapi

biasanya file ini hanya digunakan oleh komputer Macintosh dan tidak terlalu cocok untuk cetak.

 TIFF; merupakan format file bitmap yang paling populer untuk cetak.

2.2.3 PNG

PNG (Portable Network Graphics) adalah salah satu format penyimpanan citra yang menggunakan metode pemadatan yang tidak menghilangkan bagian dari citra tersebut (Inggris lossless compression).

PNG dibaca "ping", namun biasanya dieja apa adanya - untuk menghindari kerancuan dengan istilah "ping" pada jaringan komputer. Format PNG ini diperkenalkan untuk menggantikan format penyimpanan citra GIF. Secara umum PNG dipakai untuk Citra Web.


(35)

Untuk Web, format PNG mempunyai 3 keuntungan dibandingkan format GIF antara lain:

1. Channel Alpha (transparansi)

2. Gamma (pengaturan terang-gelapnya citra en:"brightness") 3. Penayangan citra secara progresif (progressive display).

Selain itu, citra dengan format PNG mempunyai faktor kompresi yang lebih baik dibandingkan dengan GIF (5%-25% lebih baik dibanding format GIF). Satu fasilitas dari GIF yang tidak terdapat pada PNG format adalah dukungan terhadap penyimpanan multi-citra untuk keperluan animasi.

Untuk keperluan pengolahan citra, meskipun format PNG bisa dijadikan alternatif selama proses pengolahan citra, karena format ini selain tidak menghilangkan bagian dari citra yang sedang diolah (sehingga penyimpanan berulang ulang dari citra tidak akan menurunkan kualitas citra) namun format JPEG masih menjadi pilihan yang lebih baik.

2.2.4 GIF

GIF atau Graphics Interchange Format merupakan salah satu format gambar yang banyak digunakan. Format GIF pertama kali diperkenalkan oleh CompuServe pada 1987.

Salah satu ciri khas tipe gambar berekstensi GIF adalah bisa memainkan animasi gambar sederhana. Beberapa karakteristik lain format gambar GIF adalah mampu menayangkan maksimum sebanyak 256 warna karena format GIF menggunakan 8-bit untuk setiap pixel-nya. Selain itu, GIF juga mampu mengkompresi gambar dengan sifat lossless dan mendukung warna transparan.


(36)

File dengan format GIF menggunakan kompresi yang tidak menghilangkan data (lossles compression) tetapi penurunan jumlah warna menjadi 256 sering membuat gambar yang kaya warna seperti pemandangan menjadi tidak realistis.

File berformat GIF cocok digunakan untuk gambar dengan jumlah warna sedikit (dibawah 256), gambar yang memerlukan perbedaan warna yang tegas seperti logo tanpa gradien, gambar animasi sederhana seperti banner-banner iklan, header, dan sebagainya.

Namun file dengan format GIF tidak cocok digunakan untuk gambar yang memiliki banyak warna seperti pemandangan, gambar yang didalamnya terdapat warna gradien atau semburat.

2.2.5 TIFF

TIFF (Tagged Image Format File) merupakan format gambar terbaik dengan pengertian bahwa semua data dan informasi (data RGB, data CMYK, dan lainnya) yang berkaitan dengan koreksi atau manipulasi terhadap gambar tersebut tidak hilang. Format TIFF biasa digunakan untuk kebutuhan pencetakan dengan kualitas gambar yang sangat tinggi. Ukuran berkas untuk format ini biasanya sangat besar.

File berformat TIFF mampu menyimpan gambar dengan kualitas hingga 32 bit. Format berkas TIFF juga dapat digunakan untuk keperluan pertukaran antar platform (PC, Macintosh, dan Silicom Graphic).

Selain itu, format ini mudah digunakan untuk transfer antar program. Hampir semua program yang mampu membaca format berkas bitmap juga mampu membaca format berkas TIFF.


(37)

Untuk fotografi elektronik, file berformat TIFF dapat digunakan untuk menyimpan data non-citra bersama-sama dengan berbagai jenis data citra.

2.3 Macam Citra Berdasarkan Format Penyimpanan Nilai Warna

2.3.1 Citra Biner

Pada citra biner, setiap titik (pixel) dalam citra bernilai 0 atau 1. Dengan warna hitam bernilai = 0 dan warna putih bernilai = 1.

Catatan :

 Model citra cahaya = ada cahaya (=1) maka warna putih  Model citra cahaya = tidak ada cahaya (=0) maka warna hitam  Model citra tinta / cat = ada cat (=1) maka warna hitam

 Model citra tinta / cat = tidak ada cat (=0) maka warna putih  Setiap titik membutuhkan media penyimpanan 1 bit


(38)

2.3.2 Citra Skala Keabuan (Grayscale)

Pada citra dengan skala keabuan mempunyai kemungkinan warna antara hitam (minimal) dan putih (maksimal). Jumlah maksimum warna sesuai dengan bit penyimpanan yang digunakan.

Contoh:

 skala keabuan 4 bit

 jumlah kemungkinan 2 4

= 16 warna

 kemungkinan warna 0 (min) sampai 15 (max)  skala keabuan 8 bit

 jumlah kemungkinan 28 = 256 warna

 kemungkinan warna 0 (min) sampai 255 (max)

Gambar 2.3 Contoh nilai citra skala keabuan

2.3.3 Citra Warna (True color)

Setiap titik (pixel) pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar yaitu merah hijau biru → citra RGB (Red Green Blue) . Setiap warna dasar mempunyai intensitas sendiri dengan nilai maksimum 255 (8 bit).


(39)

Red = warna minimal putih, warna maksimal merah Green = warna minimal putih, warna maksimal hijau Blue = warna minimal putih, warna maksimal biru

Sebagai contoh warna kuning memiliki kombinasi warna merah dan hijau sehingga nilai RGB-nya = 255 255 0. Sedangkan warna ungu muda memiliki kombinasi warna merah dan biru sehingga nilai RGB-nya = 150 0 150. Sehingga menyebabkan setiap titik pada citra warna membutuhkan data 3 byte.

Jumlah kemungkinan kombinasi warna pada citra warna adalah 2 24

= 16.777.216 warna = 24 bit. Sehingga citra warna disebut true color karena dianggap mencakup semua warna yang ada.

Gambar 2.4 Contoh nilai citra warna (true color)

2.3.4 Citra Warna Berindeks

Pada citra warna berindeks, setiap titik (pixel) mewakili indeks dari suatu tabel warna yang tersedia. Tabel warna ini biasa disebut palet warna. Keuntungan pemakaian palet warna adalah warna dapat dimanipulasi secara cepat tanpa harus mengubah informasi pada setiap titik dalam citra. Keuntungan dari citra warna berindeks yang lain adalah memerlukan media penyimpanan yang lebih kecil.


(40)

Gambar 2.5 Contoh nilai citra berindeks

2.4 Warna dan Ruang Warna

Warna pada dasarnya merupakan hasil persepsi dari cahaya dalam spektrum wilayah yang terlihat oleh retina mata, dan memiliki panjang gelombang antara 400nm sampai dengan 700nm (Poynton, 1997).

Ruang warna atau yang sering juga disebut sebagai model warna merupakan sebuah cara atau metode untuk mengatur, membuat dan memvisualisasikan warna (Ford and Roberts, 1998).

Untuk aplikasi yang berbeda ruang warna yang dipakai bisa juga berbeda, hal ini dikarenakan beberapa peralatan tertentu memang membatasi secara ketat ukuran dan jenis ruang warna yang dapat digunakan. Di dalam penulisan tugas akhir ini, hanya akan dibahas secara singkat beberapa ruang warna yang biasa digunakan untuk aplikasi watermarking. Beberapa ruang warna tersebut antara lain adalah sebagai berikut (Ford and Roberts, 1998):

1. RGB (Red Green Blue)

2. HSL (Hue Saturation Lightness) dan HSV (Hue Saturation Value) 3. YCbCr (Luminance – Chrominance)


(41)

2.4.1 RGB (Red Green Blue)

Citra berwarna yang selama ini biasa kita kenal umumnya memiliki ruang warna RGB. Ruang warna RGB dapat divisualisasikan sebagai sebuah kubus seperti pada gambar 2.2, dengan tiga sumbunya yang mewakili komponen warna merah (red) R, hijau (green) G dan biru (blue) B. Salah satu pojok alas kubus ini menyatakan warna hitam ketika R = G = B = 0, sedangkan pojok atasnya yang berlawanan menyatakan warna putih ketika R = G = B = 255 (untuk sistem warna 8 bit bagi setiap komponennya). RGB sering digunakan didalam sebagian besar aplikasi komputer karena dengan ruang warna ini, tidak diperlukan transformasi untuk menampilkan informasi di layar monitor. Alasan diatas juga menyebabkan RGB banyak dimanfaatkan sebagai ruang warna dasar bagi sebagian besar aplikasi.

Gambar 2.6 Ruang warna RGB.

2.4.2 HSL (Hue Saturation Lightness) dan HSV (Hue Saturation Value) Untuk menyediakan representasi warna bagi antar-muka pengguna (user interface), biasa digunakan ruang warna HSL. HSL sendiri merupakan kependekan dari Hue, Saturation, Lightness / Luminancy. Hue atau corak warna


(42)

merupakan sensasipenglihatan manusia berdasarkan pada kemiripan suatu daerah tampak seperti daerah yang lain sesuai dengan warna yang diterimanya, merah, kuning, hijau dan biru, atau kombinasi keduanya. Saturation adalah kekayaan warna pada suatu daerah sesuai dengan proporsi gelap-terangnya. Kita bisa menemukan warna birulangit sampai dengan biru tua dengan mengubah nilai dari komponen ini. Sedangkan Luminancy atau Lightness merupakan persepsi suatu daerah warna yang tampak ketika menerima sedikit atau banyak cahaya dengan referensi warna putih.

Gambar 2.7 Ruang Warna HSL

Gambar 2.7 melukiskan ruang warna HSL, Hue adalah sudut warna tertentu yang melingkar dari suatu titik awal, Saturation jarak suatu warna terhadap sumbu Lightness, Lightness (Luminancy) merupakan sumbu tegak yang menghubungkan warna hitam sampai dengan putih.


(43)

Alternatif lain dari HSL adalah HSV. Pada ruang warna HSV Luminancy digantikan dengan Value. HSV dapat divisualisasikan dengan sebuah polygon seperti pada gambar 2.8. Hue seperti pada HSL merupakan sudut warna yang melingkari poligon, jadi misalnya jika untuk warna merah hue = 0o maka hue untuk warna hijau = 120o dan untuk warna biru nilai hue-nya 240o. Saturation sama seperti pada HSL, merupakan jarak terhadap sumbu tegak. Dan value merupakan sumbu tegak yang menghubungkan puncak dan dasar poligon.


(44)

2.4.3 YCbCr

YCbCr merupakan standar internasional bagi pengkodean digital gambar televise yang didefinisikan di CCIR Recommendation 601 (Ford dan Roberts, 1998). Y merupakan komponen luminance, Cb dan Cr adalah komponen chrominance. Pada monitor monokrom nilai luminance digunakan untuk merepresentasikan warna RGB, secara psikologis ia mewakili intensitas sebuah warna RGB yang diterima oleh mata. Chrominance merepresentasikan corak warna dan saturasi (saturation). Nilai komponen ini juga mengindikasikan banyaknya komponen warna biru dan merah pada warna (Cuturicu, 1999).

Retina mata mempunyai dua macam sel yang berfungsi sebagai analis visual, yaitu: Sel yang digunakan untuk penglihatan di waktu malam dan sel yang dipakai untuk penglihatan di siang hari. Jenis yang pertama hanya menerima corak keabuan mulai dari warna putih terang sampai dengan hitam pekat. Dan jenis kedua menerima corak warna. Jika sebuah warna RGB diberikan, sel jenis yang pertama mendeteksi tingkat keabuan (gray level) yang serupa dengan nilai luminance-nya, sedangkan sel jenis kedua yang bertanggungjawab terhadap penerimaan corak warna, mendeteksi nilai yang sesuai dengan nilai chrominancenya (Cuturicu, 1999).

YCbCr (256 level) dapat diperoleh dari RGB 8-bit dengan menggunakan rumus berikut (Hamilton,1992):

Y = 0.299 R + 0.587 G + 0.114 B (2.1)

Cb = - 0.1687 R - 0.3313 G + 0.5 B + 128 (2.2) Cr = 0.5 R - 0.4187 G - 0.0813 B + 128 (2.3)


(45)

Sedangkan untuk konversi YCbCr ke RGB dapat dilakukan dengan rumus berikut (Hamilton,1992):

R = Y + 1.402 (Cr - 128) (2.4)

G = Y - 0.34414 (Cb - 128) - 0.71414 (Cr - 128) (2.5)

B = Y + 1.772 (Cb - 128) (2.6)

Gambar 2.9 menunjukkan dekomposisi citra RGB ke dalam komponen luminance dan chrominance-nya.

Gambar 2.9 Dekomposisi citra RGB ke dalam komponen luminance

dan chrominance-nya. Searah jarum jam dari kiri atas adalah citra RGB, komponen

luminance (Y), komponen chrominance blue (Cb) dan komponen chrominance red (Cr).


(46)

2.5 Transformasi Discrete Fourier Transform 2-D

Metode ini menyisipkan pesan dalam domain frekuensi, bukan pada domain spasial seperti dua metode sebelumnya. Metode pada domain frekuensi dinilai lebih robust daripada metode spasial. Contohnya dapat dipakai pada format gambar yang disimpan dalam domain frekuensi, seperti Bitmap yang menggunakan DFT sebagai proses transformasi domain.

Berikut ini merupakan gambar dari sebuah citra grayscale serta hasil perhitungan magnitude dari citra grayscale tersebut:

Gambar 2.10 Penyisipan Circular Watermark (a) Citra Watermark Lena (b) Magnitude Koefisien DFT

Transformasi Fourier Diskrit 2 Dimensi dapat diterapkan pada sebuah matriks M x N dengan persamaan sebagai berikut:

(2.9) Dengan nilai:


(47)

Dan invers DFT 2-Dimensi:

(2.11)

Pada program Matlab fungsi dari sebuah perhitungan DFT 2 Dimensi dapat dituliskan sebagai berikut:

Y = fft2 (X, m, n) (2.12)

Dan fungsi untuk menghitung nilai invers DFT 2 Dimensi:

Y = ifft2 (X, m, n) (2.13)

Dimana:

Y = Hasil perhitungan DFT 2 dimensi

X = Matriks yang dilakukan perhitungan matriks m x n m = Baris pada matriks X

n = Kolom pada matriks X

2.6 Pengukuran Kualitas Gambar Digital

Dalam melakukan encode gambar digital, biasanya terdapat perubahan-perubahan seperti efek blurring, sharpening atau timbulnya noise. Oleh karena itu, biasanya dilakukan pengukuran kualitas video terlebih dahulu untuk mengetahui bagaimana hasil encode gambar digital tersebut, apakah kualitasnya mirip dengan gambar yang asli atau tidak.

Terdapat dua cara pengukuran, yaitu subjektif dan objektif. Subjektif berarti kualitas gambar ditentukan oleh orang yang melihat gambar tersebut.


(48)

Pendapat dari orang yang melihat akan beraneka ragam dan bersifat relatif, karena sangat tergantung dari persepsi dan standar masing-masing. Cara objektif merupakan pengukuran secara matematika terhadap gambar yang diukur dan dapat dikerjakan otomatis oleh komputer. Salah satu contoh metode pengukuran kualitas antar dua gambar yang sering digunakan adalah Peak Signal to Noise Ratio (PSNR) dimana nantinya akan diimplementasikan secara langsung pada aplikasi yang dibuat.

PSNR sangat umum digunakan sebagai ukuran kualitas dalam gambar, suara dan video digital. Perhitungan PSNR akan menilai kemiripan gambar berdasarkan besarnya perbedaan yang dianggap sebagai kerusakan pada salah satu gambar. Nilai pada PSNR merupakan hasil pembagian dari kekuatan sinyal maksimal yang diterima, dengan sinyal noise. PSNR sangat mudah didefinisikan dengan cara menghitung Mean Squarred Error (MSE) terlebih dahulu, Berikut persamaan untuk mencari MSE (Amorita, 2007):

(2.7) Dimana:

MSE = nilai Mean Square Error dari citra tersebut M = panjang citra

N = lebar citra

( i,j ) = koordinat masing-masing piksel I = nilai bit citra asli pada koordinat i,j


(49)

Setelah nilai MSE didapat, selanjutnya dapat menghitung nilai PSNR seperti pada persamaan berikut (Amorita, 2007):

(2.8) MAXI adalah nilai warna maksimum pada suatu piksel , yang bernilai 255 untuk

gambar bitmap 24-bit. Tingkat kemiripan yang tinggi akan didapat apabila nilai error (MSE) yang dimasukkan kecil, sehingga nilai PSNR menjadi besar. Satuan nilai PSNR adalah desibel (dB).

2.7 Korelasi

Ekstraksi watermark dapat dilakukan dengan cara membandingkan koefisien DFT citra yang diduga memiliki watermark dengan koefisien DFT 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:


(50)

Dimana: W

ij = nilai pixel pada lokasi (i,j) untuk watermark asli. W

ij ’ = nilai pixel pada lokasi (i,j) untuk watermark hasil ekstraksi. NC = korelasi atau normalized cross correlation.


(51)

ANALISA DAN PERANCANGAN

3.1 Analisa Masalah

Bab ini mencakup analisis permasalahan seperti bagaimana proses penyisipan pesan pada gambar digital, proses ekstraksi pesan, serta proses perhitungan kualitas gambar digital yang dihasilkan.

Gambar 3.1 merupakan alur dari proses watermarking secara umum yang terdapat dapat implementasi Tugas Akhir.


(52)

3.1.1 Penyisipan Pesan

Sistem untuk menyisipkan pesan pada gambar digital membutuhkan masukan berupa gambar digital bertipe keabuan (grayscale) 8 bit sebagai media penyisipan (gambar cover) serta pesan yang ingin disisipkan, berupa gambar biner (gambar hitam-putih) 1 bit. Prosedur yang dilakukan adalah gambar cover di hitung luas covernya agar dapat diperoleh jumlah banyak blok serta maksimal pesan yang dapat disisipkan ke dalam gambar cover. Kemudian akan dikonfirmasikan apakah jumlah pesan yang akan disisipkan sesuai atau lebih kecil daripada maksimal pesan yang dapat ditampung gambar cover. Apabila memenuhi kondisi, gambar cover di bagi menjadi blok-blok piksel berukuran 8 x 8 piksel. Tiap-tiap blok piksel tersebut nantinya akan dilakukan transformasi ke domain frekuensi dengan menggunakan DFT.

Sebelum pesan disisipkan, dilakukan proses pengacakan pada pesan dengan menggunakan Transformasi Arnold’s Cat Map. Hanya gambar digital dengan format bitmap (*.bmp) yang dapat diproses.

Transformasi Arnold’s Cat Map

Arnold’s Cat Map merupakan pemetaan chaos (kacau) yang dinamakan sesuai dengan nama penemunya, yaitu Vladimir Arnold. Prinsip kerjanya pada awalnya adalah menggunakan gambar kucing untuk memodelkan efek algoritma yang dia buat sendiri pada tahun 1960.

Arnold’s Cat Map bekerja berdasarkan transformasi:


(53)

Arnold’s Cat Map menggunakan formula sebagai berikut:

(3.2)

Berikut adalah contoh ilustrasi prinsip kacau pada Arnold’s Cat Map, contoh yang sangat sederhana tetapi sangat elegan. Pada contoh ini, suatu gambar ditransformasikan dengan sebuah matriks yang akan mengacak piksel dari gambar tersebut. Akan tetapi apabila dilakukan proses iterasi/perulangan yang sama secara terus menerus akan menghasilkan gambar aslinya.

Langkah pertama adalah diumpamakan sebuah matriks:

(3.3)

Menjadi matriks n x n yang membentuk gambar, lalu dilakukan transformasi:

(3.4)

Dimana mod merupakan modulo dari n dan matriks:

(3.5)

Gambar 3.2 merupakan contoh perubahan yang terjadi dengan menggunakan metode Arnold’s Cat Map.


(54)

Gambar 3.2 Contoh perubahan menggunakan metode Arnold Cat’s Map

Apabila proses iterasi dilakukan pada suatu bilangan/angka berhingga, maka gambar yang pada awalnya kabur akibat transformasi Arnold’s Cat Map akan berubah kembali ke bentuk aslinya.


(55)

(56)

Proses Penyisipan Pesan

Sebelum proses penyisipan pesan berlangsung, dilakukan pengacakan pesan dengan menggunakan Transformasi Arnold Cat’s Map dan ekstraksi gambar digital terlebih dahulu. Dari gambar digital terpilih, akan dibagi menjadi blok-blok 8 x 8 piksel. Tiap blok 8 x 8 piksel mewakili 1 bit pesan. Selanjutnya blok tersebut akan ditransformasi menggunakan Discrete Fourier Transform

(DFT). Penyisipan pesan dilakukan dengan menentukan nilai magnitude dan phase dari blok DFT, kemudian dilakukan translasi periodik pada nilai magnitude.

Gambar 3.4 merupakan representasi hasil perhitungan magnitude DFT.

Gambar 3.4 Representasi hasil perhitungan DFT

Seperti yang terlihat pada gambar 3.4, lingkaran ditengah image merupakan area frekuensi rendah, area ini bertanggung jawab terhadap nilai-nilai pixel yang banyak muncul dari suatu image, kemudian di sudut-sudut merupakan area frekuensi tinggi yang bertanggung jawab terhadap detail dari suatu image


(57)

(smoothing dan blurring). Di bagian antara sudut dan pusat merupakan area frekuensi tengah, pada bagian inilah watermark makalah ini ditanamkan.

Algoritma Penyisipan Pesan :

1. Ganti tipe data gambar grayscale menjadi double. 2. Buat blok 8 x 8 piksel.

3. Transformasi Arnold Pesan

4. Lakukan pernitungan DFT 2-D pada tiap blok. Formulasi matrix dari DFT 2 dimensi adalah sebagai berikut :

5. Menghitung nilai magnitude dan phase 6. Lakukan translasi periodik

7. Tentukan nilai magnitude x dan y 8. m =(nilai x + nilai y)/2

if (message =1) then

if ( x > m-p) then x = m-p dan y = m+p if (message =0) then

if ( x < m+p) then x = m+p dan y = m-p 9. Lakukan Invers DFT 2-D

10. Ubah gambar menjadi tipe int8 11. Selesai.


(58)

Gambar 3.5 menunjukkan Algoritma Poses Penyisipan Pesan. Algoritma tersebut digunakan sebagai salah satu cara agar pesan dapat dikembalikan secara utuh. Perubahan sepasang koefisien tidak akan banyak mempengaruhi kualitas aslinya. Maka daripada itu sepasang koefisien yang dipilih harus berada pada derajat yang sama namun radius yang berbeda.

Setelah pesan disisipkan maka blok 8 x 8 pixel DFT 2-D dilakukan transformasi periodik kembali sebelum dilakukan invers agar nilai magnitude kembali ke nilai awal, perhitungan nilai invers DFT mengubah domain frekuensi menjadi domain spasial kembali, sehingga gambar tersebut dapat dilihat menjadi satu kesatuan utuh.

Untuk mengetahui proses alur penyisipan pesan secara lebih jelas, dapat dilihat pula alur proses penyisipan pesan melalui flowchart penyisipan pesan pada gambar 3.6.


(59)

(60)

3.1.2 Pembacaan Pesan

Ekstraksi pesan membutuhkan masukan berupa gambar ter-watermark dan gambar pesan, dimana gambar pesan pada saat penyisipan harus sama dengan gambar pesan pada proses pembacaan. Jika gambar pesan sama, maka akan didapatkan nilai perubahan dari pesan awal dan pesan yang terbaca. Pesan gambar yang didapatkan awalnya teracak dengan transformasi Arnold Cat’s Map. Sehingga sebelum ditampilkan pesan gambar yang acak tersebut dilakukan proses transformasi Arnold Cat’s Map sehingga pesan terbaca sama dengan pesan yang disisipkan.

Proses ekstraksi pesan tidak jauh berbeda dengan proses penyisipan pesan. Mulanya diambil gambar ter-watermark kemudian buat blok 8 x 8 piksel. Untuk mengambil pesan, blok 8 x 8 piksel tersebut dilakukan transformasi DFT 2-D, selanjutnya akan membaca nilai magnitude DFT, jika nilai magnitude x lebih besar dari nilai magnitude y, maka bit pesan bernilai = 1 atau berwarna putih. Apabila kebalikannya, nilai magnitude x lebih kecil daripada nilai magnitude y, maka bit pesan bernilai = 0 atau berwarna hitam.

Proses ini dilakukan sepanjang jumlah blok. Kemudian dirangkaikan nilai dari bit pesan. Setelah dilakukan rangkaian bit pesan, bit pesan tersebut dilakukan Transformasi Arnold’s Cat Map sehingga dapat membentuk gambar seperti semula.


(61)

Algoritma Pembacaan Pesan:

1. Ganti tipe data gambar ter-watermark menjadi double. 2. Buat blok 8 x 8 piksel.

3. Lakukan pernitungan DFT 2-D pada tiap blok. Formulasi matrix dari DFT 2 dimensi adalah sebagai berikut :

4. Menghitung nilai magnitude dan phase 5. Lakukan translasi periodik

6. Tentukan nilai magnitude x dan y 7. if (x < y ) then message = 1

if (x > y ) then message = 0

8. Rangkai bit message

9. Transformasi Arnold (message) 10. Selesai.

Gambar 3.7 AlgoritmaProses Pembacaan Pesan

Untuk mengetahui proses alur pembacaan pesan secara lebih jelas, dapat dilihat pula alur proses pembacaan pesan melalui flowchart pembacaan pesan pada gambar 3.8.


(62)

(63)

3.1.3 Pengukuran Kualitas Gambar Ter-watermark

Metode pengukuran kualitas gambar ter-watermark pada pelaksanaan Tugas Akhir akan dilakukan secara objektif memakai metode Peak Signal to Noise Ratio (PSNR).

Perhitungan PSNR akan membandingkan antar dua buah gambar, yaitu gambar cover asli yang belum tersisipi pesan dengan gambar yang telah

ter-watermark. Semakin keci nilai PNSR, semakin baik proses penyisipan, karena tidak banyak terjadi perubahan dalam gambar ter-watermark.

3.2 Perancangan Antarmuka

Pada saat perangkat lunak pertama kali dijalankan, layar akan menampilkan pilihan utama, dapat dipilih kedua modul perangkat lunak, yaitu ‘Penyisipan Pesan’ untuk penyisipan, dan ‘Pembacaan Pesan’ untuk ekstraksi pesan.

3.2.1 Rancangan Antarmuka Penyisipan Pesan

Untuk form Penyisipan Pesan, terdapat beberapa field yaitu :

1. ‘Gambar Asli’. Untuk memilih gambar grayscale dengan format bitmap (*.bmp) yang akan disisipi pesan. Disediakan tombol ‘Buka Gambar’ untuk memilih gambar.

2. ‘Pesan’. Untuk memilih gambar biner pesan yang akan disisipkan ke gambar

grayscale pada field ‘Gambar Asli’. Disediakan tombol ‘Buka Pesan’ untuk memilih gambar biner pesan.


(64)

3. Tombol ‘Sisip Pesan’ digunakan untuk melakukan proses penyisipan gambar biner pesan terhadap Gambar Asli. Field PNSR akan terisi secara otomatis apabila proses penyisipan dilakukan.

4. Tombol ‘Simpan Gambar’ digunakan untuk menyimpan gambar hasil penyisipan yang telah ditampilkan pada field Gambar Terwatermark.

Gambar 3.9 Rancangan Antarmuka Penyisipan Pesan

3.2.2 Rancangan Antarmuka Pembacaan Pesan


(65)

1. ‘Gambar Terwatermark’. Untuk memilih gambar grayscale yang akan dibaca pesannya. Disediakan tombol ‘Buka Gambar’ untuk memilih gambar.

2. ‘Pesan Awal’. Untuk pembacaan gambar biner pesan yang telah disisipkan. Disediakan tombol ‘Buka Pesan’ untuk memilih gambar pesan.

3. ‘Pesan Terbaca’. Menampilkan gambar pesan biner yang terbaca dari gambar ter-watermark apabila dilakukan proses pembacaan pesan, dengan cara menekan tombol ‘Baca Pesan’. Field NC akan terisi otomatis apabila dilakukan proses pembacaan pesan.


(66)

IMPLEMENTASI DAN EVALUASI

4.1 Kebutuhan Sistem

Sebelum melakukan implementasi dan menjalankan aplikasi untuk proses

watermarking citra digital dengan metode Discrete Fourier Transform (DFT), dibutuhkan spesifikasi perangkat keras dan juga perangkat lunak dengan kondisi tertentu agar dapat berjalan dengan baik.

Berikut ini adalah perangkat keras yang digunakan untuk menjalankan aplikasi watermarking citra digital dengan metode Discrete Fourier Transform

(DFT):

a. Notebook dengan prosesor AMD Turion(tm) 64 X2 Mobile. b. Memori RAM 1 GB.

Kebutuhan perangkat lunak yang digunakan untuk menjalankan aplikasi

watermarking citra digital dengan metode Discrete Fourier Transform (DFT) ini adalah sebagai berikut :

a. Sistem Operasi Microsoft Windows XP Profesional SP2. b. Matlab 7.0.4

c. Adode Photoshop CS 3

4.2 Potongan Program

Dalam sub bab ini akan dijelaskan mengenai beberapa potongan program matlab sebagai implementasi dari algoritma yang sudah dijelaskan pada bab sebelumnya.


(67)

a. Membuka dan menyimpan file

[namafile,direktori] = uigetfile('*.bmp','Buka Gambar');

[namafile,direktori] = uiputfile('*.bmp','Simpan Gambar');

Fungsi “uigetfile()” digunakan untuk membuka file. Fungsi

“uigetfile()” menghasilkan dua keluaran, yaitu variable namafile dan variable direktori. Variable namafile digunakan untuk menyimpan nama file yang dibuka dan variable direkori digunakan untuk menyimpan path direktori. Fungsi untuk menyimpan file adalah “uiputfile()”.

b. Transformasi Arnold Cat’s Map

% Transformasi Arnold Cat's Map

tempImg=message;

for n=1:iTimes for u=1:Mm for v=1:Nm

temp=tempImg(u,v); ax=mod(u+v,Mm)+1; ay=mod(u+2*v,Nm)+1; outImg(ax,ay)=temp; end end tempImg=outImg; end

Gambar pesan biner dengan susunan awal di acak dengan transformasi Arnold Cat’s Map sebelum dilakukan penyisipan ke domain frekuensi DFT.

c. Membagi dan menghitung nilai DFT 2 dimensi dari blok 8 x 8 pixel

% perhitungan DFT 2-D blok 8x8

fft_block=fft2(cover


(68)

Dalam proses penyisipan dan pembacaan pesan, sebuah gambar cover

ataupun gambar ter-watermark dibagi menjadi blok 8 x 8 pixel. Sebuah blok 8 x 8

pixel akan mewakili penyisipan dari satu bit pesan.

d. Menghitung nilai phase blok 8 x 8 pixel

% Hitung nilai phase DFT

angle_block=angle(fft_block);

Perhitungan nilai phase dari blok DFT 8 x 8 pixel nantinya akan digunakan dalam proses pengembalian nilai DFT pada proses invers DFT, yang diperlukan dalam membentuk gambar hasil sisipan kembali seperti bentuk gambar awal (gambar cover).

e. Proses Penyisipan Pesan

ll=1;

if (message_vector(kk)==0) for ii=1:blocksize for jj=1:blocksize

if (filter_m(ii,jj)==1)

abs_block_o=abs_block(ii,jj); abs_block(ii,jj)=abs_block(ii,jj)*(1+k*pn_sequence_zero(ll)); abs_block(blocksize-ii+1,blocksize- jj+1)=abs_block(blocksize-ii+1,blocksize-jj+1)+abs_block(ii,jj)-abs_block_o; ll=ll+1; end end end else for ii=1:blocksize for jj=1:blocksize

if (filter_m(ii,jj)==1)

abs_block_o=abs_block(ii,jj); abs_block(ii,jj)=abs_block(ii,jj)*(1+k*pn_sequence_one(ll)); abs_block(blocksize-ii+1,blocksize- jj+1)=abs_block(blocksize-ii+1,blocksize-jj+1)+abs_block(ii,jj)-abs_block_o;


(69)

ll=ll+1; end

end end end

Pada proses penyisipan pesan, bit pesan tidak dimasukkan secara langsung ke dalam domain frekuensi DFT melainkan dikondisikan berdasarkan dari perhitungan nilai magnitude pada tiap-tiap blok DFT 8 x 8 pixel.

f. Menghitung invers DFT 2 dimensi dari blok 8 x 8 pixel

watermarked_image(y:y+blocksize-1,x:x+blocksize-1)=abs(ifft2

(abs_block.*exp(i*angle_block)));

Perhitungan nilai invers DFT 2 dimensi digunakan untuk mengembalikan nilai magnitude DFT, sehingga gambar dapat bentuk kembali menjadi gambar awal.

g. Mengubah tipe data gambar dan menampilkan gambar

% merubah tipe watermarked_image_int menjadi uint8

watermarked_image_int=uint8(watermarked_image*255);

% menampilkan watermarked_image_int ke axes

set(proyek.figSisip,'CurrentAxes',proyek.axes4); set(imshow(watermarked_image_int));

set(proyek.axes4,'Userdata',watermarked_image_int);

Gambar yang diolah dalam proses sisip bertipe double, sehingga gambar harus di ubah kembali menjadi tipe uint8 sebelum gambar yang telah tersisipi ditampilkan.


(70)

h. Pembacaan Pesan

ll=1;

for ii=1:blocksize for jj=1:blocksize

if (filter_m(ii,jj)==1)

sequence(ll)=abs_block_w(ii,jj); ll=ll+1;

end

end

end

% perhitungan korelasi nol dan perhitungan korelasi satu

correlation_zero(kk) = corr2(pn_sequence_zero,sequence); correlation_one(kk) = corr2(pn_sequence_one,sequence);

% pengambilan pesan (vektor pesan)

for (kk=1:max_message)

if correlation_zero(kk)>correlation_one(kk) message_vector(kk)=0;

else

message_vector(kk)=1; end

end

Pada potongan source code pembacaan pesan pada proses pembacaan pesan, apabila hasil perhitungan korelasi-nol lebih besar dari perhitungan korelasi-satu maka bit pesan bernilai ‘0’ dan sebaliknya apabila perhitungan korelasi-nol lebih kecil dari perhitungan korelasi-satu maka bit pesan bernilai ‘1’ .

i. Perhitungan PNSR

% menghitung PNSR

tmp1 = sum(sum(abs(gbr1-gbr2).^2)); [M,N] = size(gbr1);

RMSE = ((1/(M*N))*tmp1)^0.5; PSNR1 = 20*log10(255/RMSE);


(71)

Perhitungan PNSR dilakukan untuk mengukur kualitas citra digital yang dihasilkan setelah dilakukan proses penyisipan pesan, apakah gambar hasil sisipan tersebut berbeda jauh dari gambar cover-nya.

j. Perhitungan Korelasi (NC)

% perhitungan Nc/Normalized Correlation

d1=0; d2=0; d3=0;

for i = 1:M for j = 1:N

d1=d1+ImageA(i,j)*ImageB(i,j) ; d2=d2+ImageA(i,j)*ImageA(i,j) ; d3=d3+ImageB(i,j)*ImageB(i,j) ; end end dNC=d1/(sqrt(d2)*sqrt(d3));

Perhitungan Korelasi (NC) dilakukan untuk mengukur apakah watermark

yang diekstraksi dari citra yang diuji memiliki kemiripan dengan watermark asli Jika koefisien korelasi mendekati atau sama dengan nilai batas tersebut.

4.3 Implementasi Interface

Pada tahap ini akan dijabarkan tentang rancangan interface dari aplikasi

watermarking citra digital dengan metode Discrete Fourier Transform (DFT) berdasarkan perancangan yang telah dibuat terdapat 3 form utama antara lain :

1. Form Awal

2. Form Penyisipan Pesan 3. Form Pembacaan Pesan


(72)

4.3.1. Form Awal

Seperti terlihat pada gambar 4.1 dibawah, pada form Awal ini terdapat 4 buah tombol yaitu :

1. Tombol ‘Sisip Pesan’ digunakan untuk masuk ke dalam form Penyisipan Pesan.

2. Tombol ‘Ekstrak Pesan’ digunakan untuk masuk ke dalam form Pembacaan Pesan.

3. Tombol ‘Keluar’ digunakan untuk keluar dari form Awal dan aplikasi.

4. Tombol ‘Bantuan’ digunakan apabila ingin mengetahui kegunaan dari tombol-tombol yang terdapa pada form Awal.


(73)

4.3.2 Form Penyisipan Pesan

Gambar 4.2 Gambar Form Penyisipan Pesan

Di dalam form Penyisipan pesan terdiri dari beberapa field kosong yang nantinya akan menampilkan gambar dan juga beberapa tombol. Berikut ini merupakan penjelasan dari field- field serta tombol-tombol, antara lain :

1. Field ‘Gambar Asli’, digunakan untuk memilih gambar grayscale dengan format bitmap (*.bmp) yang akan disisipi pesan. Terdapat tombol ‘Buka Gambar’ yang digunakan untuk memilih gambar.


(74)

2. Field ‘Pesan’, digunakan untuk memilih gambar biner pesan yang akan disisipkan ke gambar grayscale pada field ‘Gambar Asli’. Terdapat tombol ‘Buka Pesan’ yang digunakan untuk memilih gambar biner pesan.

3. Tombol ‘Sisip Pesan’ digunakan untuk melakukan proses penyisipan gambar biner pesan terhadap Gambar Asli. Field PNSR berisi nilai perhitungan dari perbedaan nilai antara Gambar Cover dengan Gambar Ter-watermark,

4. Tombol ‘Simpan Gambar’ digunakan untuk menyimpan gambar hasil penyisipan yang telah ditampilkan pada field Gambar Terwatermark.


(75)

4.3.3 Form Pembacaan Pesan

Pada Form Pembacaan Pesan terdapat beberapa field yang nantinya akan menampilkan gambar-gambar serta beberapa tombol, yaitu :

1. ‘Gambar Terwatermark’ digunakan untuk memilih gambar grayscale yang akan dibaca pesannya. Terdapat tombol ‘Buka Gambar’ yang digunakan untuk memilih gambar ter-watermark yang akan di baca.

2. ‘Pesan Awal’ digunakan untuk membuka gambar biner pesan yang telah disisipkan pada gambar terwatermark. Terdapat tombol ‘Buka Pesan’ yang digunakan untuk memilih gambar biner pesan yang telah disisipkan ke dalam gambar ter-watermark..

3. ‘Pesan Terbaca’ digunakan untuk menampilkan gambar pesan biner yang terbaca dari gambar ter-watermark pada saat dilakukan proses pembacaan pesan, dengan cara menekan tombol ‘Baca Pesan’. Field NC akan terisi otomatis apabila dilakukan proses pembacaan pesan. NC merupakan perhitungan selisih nilai antara gambar biner pesan yang disisipkan dengan gambar biner yang terbaca dari gambar ter-watermark.


(76)

Gambar 4.4 Form Pembacaan Pesan

Selain tiga form utama yang telah dijelaskan di atas, terdapat beberapa form tambahan yaitu form Bantuan, form Bantuan Penyisipan Pesan, form

Bantuan Pembacaan Pesan. Form Bantuan akan ditampilkan apabila menekan tombol ‘Help’ pada form Awal. Form Bantuan ini berisi penjelasan mengenai fungsi serta kegunaan dari tombol-tombol yang terdapat pada form Awal.


(1)

80

Gambar 5.11 Percobaan penyisipan pesan terhadap gambar cover ‘Lena1.bmp’ dan gambar pesan ‘mark.bmp

Tabel 5.5 Hasil Pengujian Uji Coba 3 No. Nama Gambar

Cover

Resolusi Nama Gambar Pesan

Resolusi Keterangan 1. Cameraman1.bmp 300 x 300 Copy.bmp 40 x 40 Ditolak 2. Lena1.bmp 256 x 256 Mark.bmp 40 x 40 Ditolak 3 Monkey1.nmp 280 x 280 Right.bmp 40 x 40 Ditolak 4. Jalan1.bmp 320 x 240 Watermark1.bmp 40 x 40 Ditolak

Pada gambar 5.10 dilakukan uji coba untuk melakukan penyisipan gambar

cover ‘cameraman1.bmp’ dengan resolusi 300 x 300 dengan gambar pesan

‘copy.bmp’ dengan resolusi 40 x 40. Proses penyisipan di tolak dikarenakan untuk dapat menyisipkan pesan dengan resolusi 40 x 40 maka minimal dibutuhkan


(2)

81

gambar cover dengan resolusi (40 x 8) x (40 x 8) = 320 x 320. Begitu pula dengan tiap-tiap gambar cover yang telah dilakukan uji coba, gambar-gambar cover

tersebut tidak dapat dilakukan penyisipan karena memiliki resolusi dengan maksimal pesan lebih kecil dibandingkan dengan resolusi pada gambar-gambar pesantersebut.

5.4.4. Membaca pesan di dalam gambar yang telah diberikan noise salt and pepper 5%.

Uji coba ini dilakukan dengan cara melakukan proses penyisipan gambar pesan ke dalam gambar cover. Hasil dari gambar cover yang telah dilakukan proses penyisipan, disimpan. Gambar ter-watermark yang telah di simpan tersebut diberikan noise salt and pepper sebesar 5%.

Gambar 5.12 Percobaan pembacaan pesan terhadap gambar cover ‘monkey-mark.bmp’ yang telah diberikan noise salt and peppers 5%


(3)

82

Pada gambar 5.12 Gambar ter-watermark ‘monkey-mark.bmpyang telah di simpan diberikan noise salt and peppers 5%, kemudian citra ter-watermark

yang telah diberikan noise salt and peppers 5% tersebut dibaca dan diperoleh nilai kemiripan atau NC watermark terekstraknya adalah 0.79596. Secara lengkap dari beberapa percobaan yang dilakukan diperlihatkan pada tabel 5.6.

Tabel 5.6 Hasil Pengujian Uji Coba 4 No. Nama Gambar

Terwatermark

Nama Gambar Pesan NC

1 Lena-copy. Bmp copy.bmp 0.735266

2 Cameraman-watermark1.bmp watermark1.bmp 0.672953

3 Monkey-mark.bmp right.bmp 0.79596

4 Jalan-watermark1.bmp Watermark1.bmp 0.683883

5.5 Evaluasi

Hasil evaluasi dari uji coba penyisipan pesan pada implementasi teknik

watermarking pada citra digital menggunakan metode Discrete Fourier

Transform (DFT) yang telah dilakukan membuktikan bahwa aplikasi yang telah

dibuat dapat berjalan dengan baik sesuai dengan fungsinya. Sedangkan hasil evaluasi dari uji coba mengenai pembacaan pesan pada citra digital menggunakan metode Discrete Fourier Transform (DFT) membuktikan sudah seoptimal yang diharapkan untuk dapat membaca pesan yang telah disisipkan sebelumnya, meskipun masih mengalami kekurangan, dibuktikan dengan perolehan nilai NC tidak sama dengan nilai batas. Begitu pula dengan hasil pembacaan pesan pada gambar ter-watermark yang telah diberikan noise salt and peppers 5%.


(4)

83

BAB VI

PENUTUP

6.1 Kesimpulan

Kesimpulan yang dapat diambil dari Implementasi Teknik Watermarking

Citra Digital dengan metode Discrete Fourier Transform (DFT) berdasarkan dari hasil rumusan masalah yang telah disebutkan sebelumnya adalah sebagai berikut: 1. Dapat dilakukan penyisipan pesan berupa gambar hitam-putih (gambar biner)

terhadap gambar cover keabuan (gambar cover grayscale) dengan format file bitmap (*.bmp) ke dalam sebuah domain frekuensi dengan menggunakan metode Discrete Fourier Transform (DFT).

2. Proses Pembacaan pesan yang dilakukan terhadap gambar ter-watermark

berhasil dilakukan meskipun masih terdapat sedikit kesalahan dalam proses pembacaan pesan, sehingga menyebabkan pesan yang terbaca mengalami sedikit perubahan dari pesan awal yang disisipkan.

Untuk mengetahui besar nilai perubahan antara pesan awal dengan pesan yang terbaca dapat di lihat dalam nilai NC. Pada Pelaksanaan uji coba, dari 10 data gambar ter-watermark yang telah dilakukan pembacaan pesan, dapat dihitung nilai rata-rata NC ( Normalized cross Correlation ) yaitu sebesar 0,98926 %. Pada proses pembacaan pesan dengan gambar ter-watermark yang telah diberikan noise salt and peppers 5%, tidak berhasil dilakukan. Pesan yang terbaca tidak dapat di-reshape kembali ke bentuk pesan awal.


(5)

84

3. Kualitas gambar ter-watermark dapat dihitung dengan menggunakan perhitungan PNSR (Peak Noise to Signal Ratio), sehingga dapat diketahui besar nilai perbedaan antara gambar asli dengan gambar yang telah tersisipi pesan.

Pada Pelaksanaan uji coba, dari 10 data gambar cover yang telah dilakukan penyisipan pesan, dapat dihitung nilai rata-rata PNSR yaitu sebesar 35,685 dB.

6.2 Saran

Adapun saran yang dapat digunakan untuk mengembangkan aplikasi yang telah dibuat adalah

1. Membuat implementasi teknik watermarking digital dengan metode Discrete

Fourier Transform (DFT) dengan inputan cover berupa video, file musik atau

gambar berwarna dan inputan pesan berupa teks atau gambar.

2. Gambar cover yang digunakan dapat menggunakan gambar dengan format yang berbeda seperti Portable Network Graphics atau *.png sehingga dengan


(6)

85 

DAFTAR PUSTAKA

[1]

Amorita, K.D. 2007. Studi dan Implementasi Penyembunyian Data di Dalam File

Video Digital Dengan Metode Least Significant Bit Insertion. Tugas Akhir.

Institut Teknologi Bandung. [2]

Desi A.L. 2003. Implementasi Teknik Watermarking Digital Pada Domain DCT

Untuk Citra Berwarna. Tugas Akhir. Universitas Gadjah Mada.

[3]

I Gede Supaca Darma Tuladi, Digital Watermarking, (online),

(http://digilib.ittelkom.ac.idindex.phpoption=com_content&view=article&id=479

digital-watermarking&catid=20informatika&Itemid=14/ diakses 12 Pebruari

2011 pkl. 02.22 WIB). [4]

Muharram Huda Widaseta, Perbandingan Beberapa Algoritma Video

Watermarking, (online),

(www.informatika.org/.../Makalah1-IF3058-Sem1-2010-2011-090.pdf/ diakses 7

Mei 2011 pkl 04.22 WIB). [5]

Munir, Risaldi. 2006. Kriptografi. Bandung : Informatika. [6]

Paulus, Erick & Yessica Nataliani. 2007. Cepat Mahir GUI MATLAB. Yogyakarta: ANDI OFFSET.

[7]

Risaldi Munir, Steganografi dan Watermarking, (online),

(www.informatika.org/~rinaldi/Kriptografi/2006-2007/.../Makalah1-041.pdf/

diakses 15 Mei 2011 pkl 03.12 WIB). [8]

Suksmono, MSE dan PSNR, (online),

(http://radar.ee.itb.ac.id/~suksmono/Lectures/ec4041/ppt/PC2.%20Persepsi%20Ci

tra%20dan%20Warna.pdf/ diakses 4 Agustus 2010 pkl 06.30 WIB).

[9]

Wijaya, Marvin Ch. & Agus Prijono. 2007. Pengolahan Citra Digital

Menggunakan Matlab. Bandung : Informatika.

[10]

Implementasi Blind Watermarking dalam Aplikasi M-Ticketing Berbasiskan Java,

(online),

(www.rachdian.com/index2.php?option=com_docman&task=doc_view&gid=82&

Itemid=30/ diakses 12 Desember 2010 pkl 02.10 WIB).

[11]

Korelasi, (online),

(www.akademik.unsri.ac.id/download/journal/files/waset/v51-42.pdf/ diakses 20

mei 2011 pkl. 13.40 WIB).