APLIKASI WATERMARK PADA CITRA DIGITAL...
Transcript of APLIKASI WATERMARK PADA CITRA DIGITAL...
APLIKASI WATERMARK PADA CITRA DIGITAL
MENGGUNAKAN METODE SINGULAR VALUE
DECOMPOSITION (SVD)
YAYAN ADRIANSYAH
PROGRAM STUDI MATEMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M /1433 H
i
APLIKASI WATERMARK PADA CITRA DIGITAL
MENGGUNAKAN METODE SINGULAR VALUE
DECOMPOSITION (SVD)
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh
Gelar Sarjana Sains
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh:
YAYAN ADRIANSYAH
106094003193
PROGRAM STUDI MATEMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M /1433 H
iii
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-
BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN
SEBAGAI SKRIPSI PADA PERGURUAN TINGGI ATAU LEMBAGA
MANAPUN.
Jakarta, Desember 2011
Yayan Adriansyah 106094003193
iv
For My Existence …
vi
ABSTRAK
Penyalahgunaan hak cipta pada multimedia pada produk digital seperti citra tidak hanya mengenai penggandaan dan pendistribusiannya saja, tetapi juga mengenai label kepemilikan. Kebanyakan produk digital tersebut tidak mencantumkan pemegang hak ciptanya atau informasi pemiliknya. Seseorang yang telah mendapat produk digital dapat mengklaim bahwa produk tersebut adalah hasil karyanya.
Salah satu cara untuk melindungi hak cipta multimedia seperti citra adalah dengan menyisipkan informasi ke dalam citra tersebut dengan teknik watermarking. Watermarking pada citra dilakukan sedemikian sehingga informasi yang disisipkan tidak merusak citra yang dilindungi. Skripsi ini menghasilkan suatu sistem untuk menyisipkan watermark sebagai bukti kepemilikan dengan metode SVD (Singular Value Decomposition).
Kata Kunci: Citra, Watermarking dan SVD (Singular Value Decomposition).
ABSTRACT
The abuse of copyright in the multimedia area such images is not just about multiplication and distributions, but about ownership labeling. Most of digital products do not give a copyright or ownership information. Someone who got a digital product can claim that those product is his/him creation.
One of ways to shelter multimedia copyright for example image is embeded the information into images with watermarking technique. Watermarking for images did be such that the informations which embedded not to demaged the protection images. This paper present a system for embedded watermark for copyright with SVD (Singular Value Decomposition) method.
Keywords : Images,Watermarking, and SVD (Singular Value Decomposition).
vii
KATA PENGANTAR
بسم اهللا اار حمن اار حیم
Segala puji dan syukur kepada Sumber dari suara-suara hati yang bersifat
mulia, Sumber ilmu pengetahuan, Sumber segala kebenaran, Sang Maha Cahaya,
Allah SWT sehingga penulis dapat senantiasa bersyukur dapat menyelesaikan
skripsi ini. Shalawat serta salam teruntuk Nabi Muhammad SAW, sumber
tauladan seluruh umat manusia, yang selalu menjadi sumber inspirasi penulis
untuk harus selalu bersifat rendah hati dan tidak takabur dalam penyelesaian
skripsi ini.
Penulis menyadari bahwa penyelesaian tulisan ini tidak terlepas dari
untaian do’a, dukungan, dan bantuan dari berbagai pihak. Dalam kesempatan
dirahmati oleh Allah SWT ini, perkenankalah penulis mengucapakan banyak
terima kasih kepada :
1. Dr. Syopyansyah Jaya Putra, M.Sis. selaku Dekan Fakultas Sains dan
Teknologi UIN Syarif Hidayatullah Jakarta.
2. Yanne Irene, M.Si. selaku Ketua Program Studi (Prodi) Matematika Fakultas
Sains dan Teknologi UIN Syarif Hidayatullah Jakarta serta selaku Penguji I.
3. Ibu Suma’inna M.Si. Selaku Pembimbing I dan Bapak Hata Maulana,
S.Si.M.TI. Selaku Pembimbing II untuk semua waktu, semangat, dan nasehat
kepada penulis.
4. Ibu Gustina Elfiyanti selaku penguji II dan seluruh dosen dan staf Program
Studi (prodi) Matematika Fakultas Sains dan Teknologi atas waktu, ilmu, dan
motivasinya.
viii
5. Orang yang kucintai, mamah dan ayahanda, kakaku, serta seluruh keluarga
besar penulis, untuk semua do’a, bimbingan, dan semangatnya.
6. Teman-teman seperjuangan Iif, Indra, Ela dan seluruh teman dari berbagai
angkatan prodi matemaika yang selalu memotivasi penulis untuk segera
menyelesaikan skripsinya.
7. Tak ketinggalan dan tak bisa di lupakan Teman-teman kosan sekaligus teman
tim basket UIN Jakarta, Qober, Zul, Gepeng, Cay, Oms, Away, Nana,
Mamang, Akew, Thifani Berkahandina pacar saya, dan teman-teman yang di
Bandung Simbau, Mail, Oghi, Badak, Rifi. Seluruh teman dimanapun kalian
berada yang tidak dapat disebutkan satu per satu, untuk do’a, dukungan, dan
candanya.
Harapan yang besar bahwa pembahasan dalam skripsi ini dapat
memberikan manfaat dan kontribusi yang berarti, baik bagi para pembaca pada
umumnya dan bagi penulis pada khususnya. Berkaitan dengan penyusunan skripsi
ini masih jauh dari kesempurnaan, oleh karena itu kritik dan saran kontruksif
sangat penulis harapkan.
Semoga kita selalu berada di jalan-Nya serta selalu mendapatkan rahmat
dan hidayah-Nya. Amin.
Jakarta, Desember 2011
Penulis
xi
DAFTAR ISI
HALAMAN JUDUL ............................................................... i
PENGESAHAN ................................................................... ii
PERNYATAAN ................................................................... iii
PERSEMBAHAN ................................................................... iv
ABSTRAK .............. ........................................................... v
ABSTRACT ......................................................................... vi
KATA PENGANTAR ............................................................ vii
DAFTAR ISI ......................................................................... ix
DAFTAR GAMBAR .............................................................. xii
DAFTAR TABEL ................................................................... xiv
BAB I. PENDAHULUAN .................................................... 1
1.1. Latar Belakang .................................................................. 1
1.2. Permasalahan ..................................................................... 2
1.3. Pembatasan Masalah .......................................................... 3
1.4. Tujuan Penelitian ................................................................ 3
1.5. Manfaat Penelitian .............................................................. 3
BAB II. LANDASAN TEORI .............................................. 4
2.1. Citra Digital ...................................................................... 4
2.2. Digitalisasi Citra ............................................................... 5
xi
2.3. Resolusi ............................................................................... 6
2.4. Tipe Citra ......................................................................... 7
2.5. Watermarking .................................................................... 11
2.5.1. Sejarah Watermarking ............................................. 11
2.5.2. Pengertian Watermarking ........................................ 11
2.5.3. Manfaat Watermarking ........................................... 12
2.5.4. Kriteria Watermarking yang baik ............................ 14
2.5.5. Teknik Watermarking ............................................ 15
2.6. Singular Value Decomposition (SVD) ................................ 16
2.7. Pembangkit Pseudorandom ................................................ 19
2.8. Pseudorandom Aturan 2D .................................................. 20
BAB III. METODE PENELITIAN .. ......................................... 22
3.1. Data .................................................................................. 22
3.2. Penyisipan Watermark ....................................................... 22
3.3. Alur Penyisipan Watermark …………………………….… . 23
3.3.1. Pengolahan Citra Berwarna ....................................... 23
3.3.2. Digitalisasi Citra ....................................................... 23
3.3.3. Proses SVD Citra Sebagai Metode Watermark .......... 24
BAB IV. PEMBAHASAN DAN APLIKASI ....................... 25
4.1. Aplikasi Pada Citra ............................................................ 25
4.1.1. Merepresentasikan citra ke Bentuk Matriks ............. 25
4.2. Pembuatan Kunci Watermark .......................................... 29
xi
4.3. Penempelan dan Watermark Pada Citra ........................... 30
4.3.1. Proses Penempelan Watermark ................................. 30
BAB V. KESIMPULAN DAN SARAN .............................. 37
5.1. Kesimpulan ....................................................................... 37
5.2. Saran ................................................................................ 37
REFERENSI ......................................................................... 38
LAMPIRAN
xii
DAFTAR GAMBAR
Gambar 2.1. Citra Digital .............. ..................................................... 4
Gambar 2.2.Koordinat pixel dengan c merepresentasikan baris
Dan r merepresentasikan kolom.......................................... 6
Gambar 2.3. Komponen RGB dan komposisinya .................................... 7
Gambar 2.4. Contoh penyimpanan citra berwarna didalam memori
Komputer ........................................................................... 8
Gambar 2.5. Koordinat warna RGB ........................................................ 9
Gambar 2.6. Skala keabuan citra grayscale menggunakan 8-bit .............. 10
Gambar 2.7. Citra grayscale dengan sampel representasi numerik 8-bit .. 10
Gambar 2.8. Contoh citra biner dengan sample citra ukuran 610 pixel.. . 11
Gambar 3.1. Alur Penyisipan Watermark ................................................ 23
Gambar 4.1. Citra berwarna yang akan di- watermark ............................. 25
Gambar 4.2. Sampel citra yang akan di-watermark ................................. 27
Gambar 4.3. Representasi Numerik Matriks Red (R) ............................... 27
Gambar 4.4. Representasi Numerik Green (G) ....................................... 28
Gambar 4.5. Representasi Numerik Blue (B) ........................................... 28
Gambar 4.6. Kunci Watermark ............................................................... 29
Gambar 4.7. Nilai Singular S dari matriks Red (R) ................................. 30
Gambar 4.8. Nilai U dari matriks Red (R) ............................................... 31
Gambar 4.9. Nilai V dari matriks Red (R) ................................................ 31
Gambar 4.10. Nilai singular S dari matriks Green (G)............................. 32
xiii
Gambar 4.11. Nilai U dari matriks Green (G) ......................................... 32
Gambar 4.12. Nilai V dari matriks Green (G) .......................................... 33
Gambar 4.13. Nilai singular S dari matriks Blue (B) ............................... 33
Gambar 4.14. Nilai U dari matriks Blue (B) ............................................ 34
Gambar 4.15. Nilai V dari matriks Blue (B) ............................................. 34
Gambar 4.16. Citra ber-watermark dari matriks Red (R) ......................... 35
Gambar 4.17. Citra ber-watermark dari matriks Green (G) ..................... 35
Gambar 4.18. Citra ber-watermark dari matriks Blue (B) ........................ 36
xiv
DAFTAR TABEL
Tabel 4.1. Penggolongan data citra dalam scilab .............. ....................... 26
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Perkembangan produk digital seperti citra, audio dan video saat ini sangat
pesat dan dapat didistribusikan dengan mudah. Kemudahan distribusi media
digital di sisi lain dapat menimbulkan permasalahan ketika media tersebut
terlindungi hak cipta (copyright). Sesuai dengan sifatnya, media digital
memungkinkan tak terbatasnya salinan yang sulit dibedakan dengan aslinya, dan
dengan mudah didistribusikan maupun diperbanyak oleh pihak-pihak yang tidak
bertanggung jawab.
Penduplikasian atau penggandaan terhadap suatu citra digital sangatlah
merugikan kepemilikan (ownership). Masalah ini memang tak pernah selesai dan
menjadi rumit ketika kepemilikan citra digital dipertanyakan pemilik sebenarnya.
Oleh karena itu, keaslian suatu citra digital merupakan sesuatu yang harus dijaga
dan diperbaiki terus menerus, apabila distribusinya tidak dipantau dengan baik
dan proses penanganannya tidak berlangsung secara cepat dan aman maka
pengakuan dan pengubahan terhadap citra digital dapat dilakukan oleh orang lain.
Pemberian label kepemilikan pada citra merupakan salah satu solusi yang tepat
yakni dengan memberi watermark pada citra tersebut.
Watermarking merupakan suatu teknik penyembunyian suatu data atau
informasi “rahasia” ke dalam suatu data lainnya untuk ditumpangi (biasanya
disebut dengan host data), tetapi orang lain tidak menyadari kehadiran adanya
2
data tambahan pada host-nya [1]. Jadi seolah-olah tidak ada perbedaan antara host
sebelumnya dan sesudah proses watermarking.
Ada beberapa teknik watermarking yang digunakan yaitu teknik
watermarking yang bekerja pada domain spasial dan domain transform frekuensi.
Pada domain spasial salah satunya adalah metode Singular Value Decomposition
(SVD) dan LSB sedangkan pada domain frekuensi ada beberapa transformasi
seperti Discrete Wavlete Transform (DWT), Discrete Fourier Transform (DFT),
dan Discrete Cosine Transform (DCT).
Teknik watermark dengan metode Singular Value Decomposition (SVD)
umumnya penyisipan dilakukan pada nilai-nilai singular berdasarkan
pertimbangan bahwa nilai singular tidak akan mengalami perubahan signifikan
jika terjadi sedikit gangguan pada citra (SVD). Metode Singular Value
Decomposition (SVD) merupakan teknik yang digunakan untuk merubah matriks
citra menjadi matriks SVD dengan cara mendekomposisikannya untuk
mendapatkan nilai singular dari citra. Dari penjelasan diatas maka diambil topik
untuk tugas akhir ini yaitu “Penyisipan Watermark Pada Citra Digital
Menggunakan Metode Singular Value Decomposition (SVD)”.
1.2. Permasalahan
Seorang tidak ingin dirugikan karena karya citranya dicuri dan digandakan
oleh orang lain. Biasanya jika seseorang memiliki benda, ia akan memberi tanda
kepemilikan agar tidak mudah dicuri oleh orang lain. Selain itu, manipulasi
terhadap citra harus dicegah. Sesuai dengan uraian tersebut, maka permasalahan
3
dalam skripsi ini adalah bagaimana memberi watermark pada citra untuk
melindungi keasliannya dengan metode SVD.
1.3. Pembatasan Masalah
Dalam tugas akhir ini, penulis membatasi permasalahan dengan ruang
lingkup sebagai berikut :
1. Pembuatan watermark hanya pada citra berwarna yang berformat jpg.
2. Proses penyisipan watermark menggunakan metode Singular Value
Decomposition (SVD).
3. Citra yang diuji berukuran 50 x 50 pixel.
1.4. Tujuan Penelitian
Berdasarkan permasalahan di atas, maka tujuan penelitian ini adalah
Membangun aplikasi watermark pada citra untuk melindungi hak cipta pada citra
digital dengan menggunakan metode SVD.
1.5. Manfaat Penelitian
Manfaat dari penelitian ini antara lain:
1. Memberikan pengetahuan tentang proses pembuatan citra ber-watermark..
2. Bagi pemilik citra, aplikasi ini memberikan penanda untuk membuktikan
kepemilikan terhadap suatu citra miliknya.
4
BAB II
LANDASAN TEORI
2.1. Citra digital
Citra atau image merupakan istilah lain untuk gambar. Data atau informasi
tidak hanya disajikan dalam bentuk teks akan tetapi bisa juga berupa citra. Citra
digital adalah citra yang dapat diolah oleh komputer. Data berupa citra
mempunyai karakteristik yang berbeda dengan bentuk data yang lainnya, yakni
banyak informasi yang dapat diambil dari sebuah citra.
Gambar 2.1 Citra Digital
Secara matematis citra merupakan suatu fungsi intensitas cahaya pada
bidang 2-dimensi sehingga dapat disimbolkan dengan f(x,y), dengan (x,y)
merupakan titik koordinat pada bidang 2-dimensi dan f(x,y) merupakan nilai
intensitas cahaya pada titik tersebut. Simbol x, y dan f(x,y) bernilai diskrit.
5
2.2. Digitalisasi Citra
Komputer hanya bisa mengolah data yang bersifat numerik. Oleh karena
itu sebuah citra agar dapat diolah oleh komputer harus direpresentasikan secara
numerik menggunakan nilai-nilai diskrit. Representasi citra secara numerik inilah
yang disebut dengan digitalisasi yang pada dasarnya merupakan proses mengubah
nilai kontinu menjadi nilai-nilai diskrit. Alat-alat yang dapat mentransformasi
citra analog menjadi citra digital adalah kamera digital, kamera converter, scanner
dan lain-lain.
Citra yang berukuran nm dinyatakan dengan matriks dengan m baris dan
n kolom sebagai berikut:
1,11,10,1
,11,10,1,01,00,0
,
nmfmfmf
nfffnfff
yxf
dengan f(x,y) merupakan sebuah citra dan f(i,j) yang merupakan elemen matriks
adalah intensitas cahaya pada titik (i,j) dengan i = 0, 1,2, ... m-1 dan j = 0, 1,2, ...
n-1.
Fungsi intensitas f dari citra hitam putih pada titik (x,y) disebut derajat
keabuan atau gray level yang mempunyai nilai antara Lmin sampai Lmax dengan Lmin
merupakan skala keabuan terkecil dan Lmax merupakan skala keabuan terbesar.
Skala keabuan seringkali menggunakan bilangan bulat yang besarnya 8-bit,
artinya skala keabuan tersebut mempunyai 28 atau 256 nilai yang berbeda dengan
lebar skala 0 sampai 255. Nilai 0 untuk warna hitam, dan 255 untuk warna putih.
Nilai derajat keabuan berada di antara nilai tersebut.
6
Ada dua macam proses digitalisasi yang pertama digitalisasi koordinat
(x,y) yaitu merepresentasikan citra menjadi sejumlah titik-titik yang terbatas,
proses ini disebut sampling, dan yang kedua digitalisasi skala keabuan yaitu
mengisi titik-titik tersebut dengan derajat keabuan yang sesuai dengan citra yang
digitalisasi, proses ini disebut kuantisasi.
2.3. Resolusi
Masing-masing elemen dari matriks yang tidak lain adalah elemen dari
citra digital yang merupakan bagian terkecil dari suatu citra disebut dengan
picture element atau pixel. Jadi jika sebuah citra mempunyai ukuran 125 x 96
pixel artinya citra tersebut mempunyai 125 baris dan 96 kolom dalam sebuah
matriks.
Sedangkan banyaknya pixel yang digunakan untuk membentuk suatu citra
digital disebut resolusi. Semakin tinggi resolusi maka citra yang terbentuk akan
semakin baik.
Gambar 2.2 Koordinat pixel dengan c merepresentasikan baris dan
r merepresentasikan kolom
7
2.4. Tipe Citra
Secara default, citra disimpan dalam bentuk data array bertipe double
yang membutuhkan memori penyimpanan sebesar 64-bit, namun tidak semua data
dalam tipe tersebut cocok untuk pemrosesan citra karena besarnya kebutuhan
memori [1]. Oleh karena itu disediakan pula penyimpanan data dalam tipe unit 8
dan unit 16. Data pada array ini hanya memerlukan seperdelapan dan seperempat
memori dari tipe double. Hal ini sangat baik untuk penyimpanan sebuah citra.
Tipe-tipe citra antara lain:
1. Citra Berwarna
Citra berwarna yang biasanya merupakan citra RGB disimpan dalam
matriks berukuran ݉ × ݊ yang masing-masing mendefinisikan warna merah,
warna hijau dan biru untuk setiap pixel-nya. Gambar 2.3 berikut merupakan
komponen RGB dan komposisi warnanya.
Gambar 2.3 Komponen RGB dan komposisinya
Citra berwarna umumnya lebih banyak dan disukai daripada citra
grayscale karena citra tersebut menampilkan warna objek seperti warna aslinya.
Warna yang diterima oleh mata dari sebuah objek ditentukan oleh warna sinar
8
yang dipantulkan oleh objek tersebut. Warna sinar yang direspon oleh mata adalah
sinar tampak (visible spectrum) dengan panjang gelombang berkisar dari 400
nanometer (biru) sampai 700 nanometer (merah). Sebagai contoh, suatu objek
yang memantulkan sinar biru (panjang gelombang 450 – 490 nanometer) dan
menyerap sinar lain akan berwarna biru.
Gambar 2.4. Contoh penyimpanan citra berwarna di dalam memori komputer,
yakni dalam satu pixel merepresentasikan tiga warna.
Kombinasi warna yang memberikan rentang yang paling lebar adalah red
(R), green (G), dan blue (B). Ketiga warna tersebut dinamakan warna pokok dan
sering disingkat sebagai warna dasar RGB. Warna-warna lain dapat diperoleh
dengan mencampurkan ketiga warna pokok tersebut dengan perbandingan
tertentu. Sesuai dengan teori Young yang menyatakan bahwa sembarang warna
R=109 R=96 R=233 R=255 R=255 R=255 R=255 R=255 R=255 R=255
G=142 G=166 G=246 G=255 G=255 G=255 G=255 G=255 G=255 G=255
B=111 B=106 B=235 B=255 B=255 B=255 B=255 B=255 B=255 B=255
R=188 R=187 R=246 R=255 R=255 R=255 R=255 R=255 R=255 R=255
G=216 G=218 G=250 G=255 G=255 G=255 G=255 G=255 G=255 G=255
B=187 B=186 B=247 B=255 B=255 B=255 B=255 B=255 B=255 B=255
R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255
G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255
B=255 B=255 B=255 B=255 B =255 B=255 B=255 B=255 B=255 B=255
R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255
G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255
B=255 B=255 B=255 B=255 B=255 B=255 B=255 B=255 B=255 B=255
R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255 R=255
G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255 G=255
B=255 B=255 B=255 B=255 B=255 B=255 B=255 B=255 B=255 B=255
9
dapat dihasilkan dari pencampuran warna-warna pokok R, G, dan B dengan
persentase tertentu.
Menurut pencampuran warna menjadi sebuah warna yang lain dirumuskan
sebagai:
W = a R + b G + c B,
Dengan
W = warna campuran
R = warna pokok pertama
G = wana pokok kedua
B = warna pokok ketiga
a, b, c = presentase masing-masing warna pokok.
Gambar 2.5 berikut merupakan koordinat warna RGB, jika komposisi R = 0,
G = 0 dan B = 0, maka akan menghasilkan warna hitam dan jika komposisi warna
R = 1, G = 1 dan B = 1, maka akan menghasilkan warna putih.
Gambar 2.5 Koordinat warna RGB
Gambar 2.5. Koordinat warna RGB
10
2. Citra Grayscale
Citra grayscale merupakan citra yang skala keabuannya menggunakan
8-bit, setiap pixel-nya mempunyai derajat keabuan antara 0 untuk warna hitam
dan 255 untuk warna putih. Nilai tersebut dihasilkan dari 28 yaitu 256 nilai
keabuan. Angka 8 merupakan jumlah bit yang digunakan. Gambar 2.6 berikut
merupakan skala keabuan menggunakan 8-bit.
Gambar 2.6. Skala keabuan citra grayscale menggunakan 8-bit
Gambar 2.7. Citra grayscale dengan sampel representasi numerik 8-bit
3. Citra Biner
Citra biner merupakan citra yang hanya memiliki dua warna, yaitu hitam
dan putih. Citra biner membutuhkan satu bit di memori untuk menyimpan kedua
warna tersebut.
0 32 89 255 255 255 255 255 255 255
158 146 176 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255
255 255 255 255 255 255 255 255 255 255
11
Gambar 2.8 Contoh citra biner dengan sample berukuran 610 pixel
2.5. Watermarking
2.5.1. Sejarah Watermarking
Watermarking sudah ada sejak 700 tahun yang lalu. Pada akhir abad 13,
pabrik kertas di Fabriano, Italia, membuat kertas yang diberi watermark atau
tanda air dengan cara menekankan bentuk cetakan citra atau tulisan pada kertas
yang baru setengah jadi. Ketika kertas dikeringkan terbentuklah suatu kertas yang
ber-watermark. Kertas ini biasanya digunakan oleh seniman atau sastrawan untuk
menulis karya mereka. Kertas yang sudah dibubuhi tanda air tersebut sekaligus
dijadikan identifikasi bahwa karya seni di atasnya adalah milik mereka [9].
Ide watermarking pada citra digital dikembangkan di Jepang pada tahun
1990 dan di Swiss tahun 1993. Digital watermarking semakin berkembang seiring
semakin meluasnya penggunaan internet, objek digital seperti video, citra, dan
suara yang dapat dengan mudah digandakan dan disebarluaskan [9].
2.5.2. Pengertian Watermarking
Watermarking merupakan suatu cara untuk penyembunyian data atau
informasi rahasia ke dalam suatu data lainnya untuk ditumpangi (biasanya disebut
dengan host data), tetapi orang lain tidak menyadari kehadiran adanya data
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
12
tambahan pada host-nya. Jadi seolah-olah tidak ada perbedaan antara data host
sebelum dan sesudah proses watermarking [1]. Informasi yang disisipkan dapat
berupa teks, citra bermakna seperti logo, data biner atau data acak.
Watermarking memanfaatkan kekurangan-kekurangan sistem indra
manusia seperti mata dan telinga. Jadi watermarking merupakan suatu cara untuk
penyembunyian atau penanaman data atau informasi tertentu (baik berupa catatan
umum maupun rahasia) ke dalam suatu data digital lainnya, tetapi tidak diketahui
oleh indra manusia (indra penglihatan atau indra pendengaran), mampu
menghadapi proses-proses pengolahan sinyal digital yang tidak merusak kualitas
data yang ter-watermark sampai pada tahap tertentu. Di samping itu data yang ter-
watermark harus tahan terhadap serangan-serangan baik secara sengaja maupun
tidak sengaja untuk menghilangkan data watermark yang terdapat di dalamnya.
2.5.3. Manfaat Watermarking
Ada beberapa manfaat watermarking dalam kehidupan sehari-hari :
1. Memberi label kepemilikan (ownership) atau copyright pada citra digital.
Watermark bisa mengandung identitas diri (nama, alamat, dan lainnya), atau
gambar yang menspesifikan pemilik citra atau pemegang hak penggandaan
(copyright).
2. Finger printing.
Pemilik citra mendistribusikan citra yang sama ke berbagai distributor.
Sebelum didistribusikan, setiap citra disisipkan watermark yang berbeda
untuk setiap distributor, seolah-olah cetak jari distributor terekam di dalam
citra. Karena watermark juga berlaku sebagai copyright maka distributor
13
terkait aturan bahwa ia tidak boleh menggandakan citra tersebut dan
menjualnya ke pihak lain.
3. Aplikasi medis.
Citra medis diberi watermark berupa ID pasien untuk memudahkan
identifikasi pasien, hasil diagnosis penyakit dan lain-lain. Informasi lain yang
dapat disisipkan adalah hasil diagnosis penyakit.
4. Covert communication.
Dalam hal ini watermarking digunakan untuk menyisipkan informasi rahasia
pada sistem komunikasi yang dikirim melalui saluran komunikasi.
5. Priracy protection.
Watermark digunakan untuk mencegah perangkat keras melakukan
penggandaan yang tidak berizin. Untuk keperluan ini watermark harus tidak
tampak dan fragile
6. Otentifikasi.
Pemilik citra menyisipkan watermark ke dalam citra untuk membuktikan
apakah citra yang disimpan sudah berubah. Jika watermark yang diekstraksi
tidak tepat sama dengan watermark asli, maka disimpulkan citra sudah tidak
otentik lagi. Keotentikan pemilik juga dapat ditunjukan karena hanya pemilik
yang mengetahui kunci. Kunci yang salah akan menghasilkan ekstraksi
watermark yang salah pula.
14
2.5.4. Kriteria Watermarking yang Baik
Mutu dari teknik watermarking meliputi beberapa parameter-parameter
utama seperti:
a. Fragile:
Perubahan yang disebabkan oleh tanda semestinya 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 fragile. Dalam beberapa literatur fragile kadang
disebut dengan invisibility untuk jenis data citra dan video. Yang dimaksud
dengan fragile disini adalah derajat degradasi host data sesudah diberi
watermark dibandingkan dengan sebelum diberi watermark. Biasanya bila
robustness dari watermark tinggi maka memiliki fragile yang rendah,
sebaliknya robustness yang rendah dapat membuat fragile yang tinggi. Jadi
sebaiknya dipilih trade-off yang sesuai, sehingga keduanya dapat tercapai
sesuai dengan tujuan aplikasi. Untuk host data yang berkualitas tinggi maka
fragile dituntut setinggi mungkin sehingga tidak merusak data aslinya,
sedangkan host data yang memiliki noise (kualitas kurang) maka fragile bisa
rendah.
b. 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
15
disisipkan dengan sangat kuat, sehingga jika ada yang berusaha
menghapusnya maka gambar atau suara yang disisipi akan ikut rusak dan
tidak punya nilai komersial lagi.
c. Security
Watermarking harus tahan terhadap usaha-usaha yang sengaja memindahkan
atau meng-copy watermark dari satu multimedia data ke multimedia data
lainnya.
2.5.5. Teknik Watermarking
Terdapat banyak metode watermarking untuk citra digital yang sudah
diteliti. Teknik watermarking pada citra digital dapat di klasifikasikan dalam tiga
kategori, yaitu:
1. Teknik Domain Spasial
Watermarking untuk citra yang dilakukan pada domain spasial,
penyisipannya dilakukan dengan sedikit mengubah nilai pixel tertentu.
Kebanyakan teknik spasial ini didasarkan pada penambahan barisan pseudo noise
(kunci watermark) pada sebuah citra. Barisan pseudo noise disebut sebagai kunci
watermark. Metode SVD dan LSB merupakan salah satu contoh teknik domain
spasial.
2. Teknik Domain Frekuensi
Teknik domain frekuensi dilakukan dengan cara terlebih dahulu mengubah
citra ke dalam domain transform, kemudian penyisipan data dilakukan dengan
sedikit mengubah nilai koefisien tertentu yang dipilih. Metode dari teknik domain
16
transform yaitu DWT (Domain Wavelet Transform), DCT (Domain Cosine
Transform), DFT (Domain Fractal Transform)[4].
3. Teknik Domain Feature
Teknik domain feature disebut juga generasi kedua metode watermark.
Generasi pertama metode watermark fokus pada penggunaan watermark pada
citra dan video, namun tidak kompetibel dengan video maupun citra yang
dikompresi seperti JPEG 2000, MPEG4/7 dan lain-lain. Generasi kedua
berkembang untuk meningkatkan kekuatan dan ketahanan watermark, mencari
batas objek dan karakteristik untuk keuntungan deteksi, serta perbaikan terhadap
serangan. Tulisan pertama teknik domain feature di publish tahun 1999 oleh ICPP
menggunakan feature point extraction berdasarkan dekomposisi citra
menggunakan Mexican-Hat Wavalet [4].
Dari ketiga teknik diatas, penulis memakai teknik yang pertama yaitu
teknik domain spasial. Yang dimana penulis akan menggunakan metode Singular
Value Decomposition (SVD) sebagai metode watermark.
2.6. Singular Value Decomposition (SVD)
Metode Singular Value Decomposition (SVD) adalah salah satu teknik
dalam analisis numerik yang digunakan untuk “mendiagonalkan” matriks. Dalam
sudut pandang pengolahan citra, singular value dari suatu citra memiliki stabilitas
yang baik, dimana ketika ada sedikit gangguan diberikan pada citra tersebut,
singular value tidak berubah secara signifikan. Keuntungan lain adalah ukuran
matriks dari transformasi metode SVD tidak tetap dan dapat berupa persegi.
17
Kemudian singular value mengandung informasi properti persamaan linear
citra.
Dekomposisi nilai singular atau yang lebih dikenal sebagai Singular Value
Decomposition (SVD) adalah salah satu teknik dekomposisi yang cukup terkenal.
SVD berkaitan erat dengan nilai singular dari sebuah matriks yang merupakan
salah satu karakteristik matriks [8].
Suatu matriks misalkan kita namai matriks A dengan nilai eigen dari
matriks AAT yaitu i untuk setiap ni 1 dengan n yaitu banyak nilai eigen,
maka nilai singular matriks A yaitu 2ii dan iv merupakan vektor eigen
matriks AAT yang bersesuaian dengan nilai i .
Secara umum algoritma Singular Value Decomposition (SVD) adalah
sebagai berikut: [8]
input : matriks A
output : matriks ortogonal U, V dan matriks singular S
sehingga A = TUSV
1. Dibentuk matriks AAT dengan nilai eigen i untuk setiap ni 1 maka
nilai singular matriks AAT yaitu 2ii
2. Dibentuk matriks diagonal S =
n
...0
0...1
18
3. Dicari himpunan vektor eigen dari matriks AAT misalkan },...,{ 21 nvvv
merupakan vektor-vektor eigen matriks AAT dengan 1v merupakan vektor
eigen yang bersesuaian dengan nilai i .
4. Dibentuk matriks ortogonal V = ],...,[ 21 nvvv
5. Dibentuk himpunan vektor U = },...,{ 21 nuuu dengan 1u = ଵఙ untukݒܣ
setiap ni 1
6. Dibentuk matriks orthogonal U = ],...,[ 21 nuuu
7. Bentuk dekomposisi SVD
A = TUSV
Dekomposisi tersebut disebut sebagai Singular Value Decomposition
(SVD). Nilai ߪଵ…ߪ dari S disebut nilai-nilai singular dari A, kolom-kolom dari
U merupakan vektor-vektor singular kiri dari A dan kolom-kolom dari V
merupakan Vektor-vektor singular kanan dari A. Jika A adalah sebuah citra maka
pengubahan sedikit pada nilai-nilai singular tidak mempengaruhi kualitas citra dan
nilai-nilai singular tidak berubah banyak setelah citra diserang [8]. Setelah citra A
diproses menjadi matriks SVD, untuk menjadikan citra A menjadi citra yang ber-
watermark dibutuhkan adanya kunci watermark. Kunci yang akan dibangkitkan
oleh penulis menggunakan pembangkit pseudorandom yaitu pseudorandom dari
aturan 2D.
19
2.7. Pembangkit Pseudorandom
Pseudorandom adalah algoritma yang menghasilkan nilai random
berdasarkan fungsi matematik. Nilai random adalah himpunan sederhana yang
memenuhi uji statistik kerandoman dan tidak dapat di ulang. Pada suatu keadaan
jika seseorang tahu apa bilangan sekarang dari random, hal itu memungkinkan
seseorang untuk memprediksi bilangan selanjutnya [1].
Untuk melihat apakah suatu bilangan random atau tidak dapat dilakukan
dengan melihat pola bilangan tersebut apakah berpola atau tidak. Jika berpola
berarti bilangan tersebut tidak random.
Hal yang membedakan suatu bilangan pseudorandom dengan random
adalah apakah bilangan tersebut dapat diulang. Jika kita install pseudorandom
pada komputer lain, kita akan mendapatkan hasil yang sama. Jika kita run lagi
program pseudorandom tersebut dua minggu mendatang, kita akan mendapatkan
hasil yang sama pula. Jika bilangan dapat diulang, apa yang bagus dari
pseudorandom, jawabannya adalah kita dapat mengganti output dengan
menggunakan seed (dalam skripsi ini dinamakan kunci) [5].
Jika mengubah input maka output berubah, maka untuk mengubah output
pada suatu waktu kita dapat membangkitkan bilangan baru yang tidak dapat
diprediksi oleh siapapun. Pembuatan barisan pseudorandom pertama dilakukan
oleh Metropolis dan Von Neumann yang disebut metode midsquare yakni
bilangan dibangkitkan dengan lingkaran predecessor dan mengambil digit tengah
sebagai hasil pseudorandom.
20
Pada tahun 1951, Lehmer membuat barisan pseudorandom yang dapat di
bangkitkan dengan hubungan rekursif, yaitu:
1 ii axx (modulo m)
dan Persamaan (2.1) setelah di generalisasi menjadi:
1 ii axx + c (modulo m)
Dengan m adalah bilangan bulat bernilai besar yang ditetapkan dan
didisain oleh komputer (biasanya berupa perpangkatan 2 atau 10) sedangkan a,i,c,
dan ix adalah bilangan bulat antara 0 dan m-i. Bilangan ix /m digunakan sebagai
barisan pseudorandom. Misalkan barisan akan berulang setelah iterasi ke-m, dan
akan menjadi berperiode. Jika m=16, a=3,c=1, dan 0x =2 barisan x dibangkitkan
oleh Persamaan (2.2) adalah 2,7,6,3,10,15,14,11,2,7,…hingga periode ke-8. Perlu
diperhatikan bahwa periode harus lebih panjang dari pada bilangan random yang
dibutuhkan sehingga pola tidak dapat diprediksi [5].
2.8. Pseudorandom Aturan 2D
Pola noise bersifat pseudorandom dari aturan 2D (Dua Dimensi)
merupakan hasil operasi Boolean dari suatu nilai awal (dalam hal ini disebut
kunci) menghasilkan nilai Boolean yaitu berupa nilai 1 dan 0 saja. Persamaan
dinamik dari aturan 2D diberikan sebagai berikut :
),()1,(),1()1,(),1((),(1 jiWjiWjiWjiWjiWjiW nnnnnn …(2.9)
Dengan dinotasikan sebagai exclusive -or (XOR) ,dan dinotasikan
sebagai fungsi Boolean -OR dengan menggunakan empat templates pergeseran
21
yaitu satu baris keatas ),1(( jiWn , satu kolom ke kanan )1,( jiWn , satu baris ke
bawah ),1( jiWn , satu kolom kekiri )1,( jiWn , serta barisan matriks awal
),( jiWn .
Semua pergeseran itu dioperasikan terhadap tiap cell nya (tiap baris dan
kolom matriks pada citra) dan melewati proses pengulangan (looping) sebanyak
yang ditentukan pembuat watermark, sehingga menghasilkan barisan
pseudorandom yang baru. Dalam hal ini penulis menggunakan looping sebanyak
tiga kali.
Barisan pseudorandom yang baru hasil operasi dinamik di atas disebut
pola noise pseudorandom dari aturan 2D. Selain menghasilkan barisan yang sama
dengan ukuran citra yang akan di-watermark, barisan ini juga menghasilkan
security (keamanan) pada citra ber-watermark karena mempunyai pola yang tidak
dapat diprediksi [1].
22
BAB III
METODE PENELITIAN
3.1. Data
Data yang akan digunakan pada penulisan skripsi ini adalah citra logo UIN
Syarif Hidayatullah Jakarta. Data terdiri dari satu citra yang mempunyai ukuran
200 x 200 pixel.
Dari ukuran 200 x 200 pixel kemudian penulis perkecil ukurannya
menjadi 50 x 50 pixel. Dengan tujuan untuk mempermudah dalam pengolahan
data.
3.2. Penyisipan Watermark.
Citra yang sudah diperoleh penulis, kemudian akan disisipi watermark
dengan tahapan sebagai berikut :
1. Memilih citra yang akan disisipi watermark.
2. Digitalisasi citra dengan tujuan citra terbaca oleh komputer.
3. Menganalisis citra menggunakan Singular Value Decomposition (SVD) sebagai
metode watermark.
4. Membangkitkan Pseudorandom 2D sebagai kunci watermark.
23
3.3. Alur Penyisipan Watermark
Gambar 3.1 Alur Penyisipan Watermark
3.3.1. Pengolahan Citra Berwarna
Pengolahan citra berwarna berbeda dengan pengolahan pada citra tipe
lainnya. citra berwarna membentuk matriks tiga dimensi yaitu matriks R (red),
matriks G (green), dan matriks B (blue). Sehingga dalam mengolah citra berwarna
kita harus melibatkan dan memperhatikan ketiga matriks seluruhnya [1]. Penulis
menggunakan ketiga matriks tersebut untuk perhitungan dan penyisipan
watermark.
3.3.2. Digitalisasi Citra
Karena komputer hanya dapat mengolah data yang bersifat numerik, maka
sebuah citra agar dapat diolah oleh komputer harus direpresentasikan secara
Citra Asli
Proses Penyisipan Membangkitkan Kunci
Pseudorandom
Proses SVD Pada Citra
Citra Ber-watermark
Digitalisasi Citra
24
numerik menggunakan nilai-nilai diskrit yaitu berupa angka-angka yang
merepresentasikan jumlah intensitas warna pada suatu citra. Proses pengubahan
citra menjadi matriks yaitu citra disimpan oleh komputer dengan cara titik-titik
berupa koordinat yang dinamakan pixel.
3.3.3. Proses SVD Pada Citra Sebagai Metode Watermark
Misalkan suatu citra disajikan sebagai matriks A dan watermark yang akan
disisipkan disajikan sebagai matriks W, maka penyisipan watermark W ke dalam
citra A dilakukan dengan terlebih dahulu mendekomposisi citra A menjadi matriks
U, S, dan V untuk mendapatkan nilai singular dari citra A [8]. Kemudian untuk
menyisipkan kunci watermark yang telah dibuat, nilai singular S kemudian
ditambahkan dengan hasil kali watermark W dengan nilai alfa [1]. Dalam skripsi
ini W adalah Pseudorandom 2D dan nilai alfa bernilai k= 410 .
푆 = 푆 + 푘 ∗ 푊
Sebagai langkah terakhir, 푆 yang diperoleh kemudian digunakan untuk
membentuk citra ber-watermark bersama dengan matriks U dan V dari citra asal.
퐴 = 푈푆 푉
25
BAB IV
PEMBAHASAN DAN APLIKASI
4.1. Aplikasi Pada Citra
Proses digitalisasi dari citra digital berwarna menghasilkan matriks tiga
dimensi. Dalam pengolahan citra pada pembahasan ini, citra yang digunakan
berukuran 50 50 pixel.
Gambar 4.1 Citra berwarna yang akan di-watermark
4.1.1. Merepresentasikan Citra Ke Bentuk Matriks
Karena komputer hanya dapat mengolah data yang bersifat numerik, maka
sebuah citra agar dapat diolah oleh komputer harus direpresentasikan secara
numerik menggunakan nilai-nilai diskrit yaitu berupa angka-angka yang
merepresentasikan jumlah intensitas warna pada suatu citra. Proses pengubahan
citra menjadi matriks, yaitu citra disimpan oleh komputer dengan cara titik-titik
berupa koordinat yang dinamakan pixel. Penulis menggunakan software Scilab
26
dalam pengolahan citra. Dalam mengolah citra, proses kuantisasi pada Scilab
yaitu dengan cara Scilab membaca pixel-pixel saja sesuai perintah dengan
menggunakan penggolongan data seperti Tabel 4.1 dan melakukan digitalisasi
sesuai intensitas warna RGB pada citra.[10]
Tabel 4.1 Penggolongan data citra dalam Scilab
Klasifikasi Data Deskripsi
Double Presisi double, bilangan floating point dengan
hampiran 30810 hingga 30810
Int8 Bilangan bulat 8 bit denganjarak -128 hingga 127
Int16 Bilangan bulat 16 bit dengan jarak -32768 hingga
32767
Int32 Bilangan bulat 32 bit dengan jarak -2147483648
hingga 2147483647
Single Presisi double, bilangan floating point dengan
hampiran 3810 hingga 3810
Char Karakter 2 bytes per element
Logical Nilai 0 dan 1 (satubytes per element)
Dalam pengolahan watermark menggunakan SVD ini, penulis
menggunakan tipe data atau klasifikasi data double. Karena citra yang digunakan
berformat citra berwarna, maka seperti yang telah dijelaskan di landasan teori
terdapat tiga fungsi generator yaitu warna RGB.
27
Gambar 4.2 Sampel citra yang akan di-watermark
Gambar 4.3 Representasi numerik matriks red (R).
28
Gambar 4.4 Representasi numerik matriks green (G).
Gambar 4.5 Representasi numerik matriks blue (B).
29
4.2. Pembuatan Kunci Watermark
1. Tahap I
Penulis menggunakan kunci 0W berupa matriks yang setiap elemennya
berupa angka 0 dan 1. Matriks yang berupa angka 0 dan 1 ini ukuran dan ordonya
disamakan dengan matriks citra yang akan diberi watermark. Agar nilainya sama
maka panggil citra, ubah matriks citra tersebut menjadi 0 dan 1. Setelah berhasil,
selanjutnya dapat melanjutkan ketahap ke dua untuk mencari nilai SVD citra yang
akan diberi watermark.
2. Tahap II
Setelah mendapatkan matriks berupa nilai acak yang bernilai 0 dan 1,
selanjutnya lakukan iterasi untuk mendapatkan pola SVD hasil watermark
tersebut. A= TUSV . Penyisipan pola watermark tersebut menggunakan PNPG 2D
(lampiran 4). Gambar 4.6 adalah hasil pembuatan kunci menggunakan PNPG 2D.
Gambar 4.6 Kunci watermark.
30
4.3. Penempelan Watermark Pada Citra
4.3.1. Proses Penempelan Watermark
Untuk proses perhitungan dan penempelan watermark, penulis
menggunakan tiga elemen matriks hasil dari representasi citra sampel, yaitu
matriks red (R), matriks green (G), dan matriks blue (B). Kemudian untuk
membuat citra ber-watermark 퐴 , terlebih dahulu penulis mendekomposisi citra
menjadi matriks U, S, dan V dengan tujuan mendapatkan nilai singular dari citra.
Selanjutnya menyisipkan kunci yaitu pola pseudorandom PNPG 2D (W) di
kalikan bilangan kecil k selanjutnya ditambahkan ke host image 푆.
푆 = 푆 + 푘 ∗ 푊
Di bawah ini hasil SVD dengan menggunakan matriks R, G, dan B.
Gambar 4.7 Nilai singular S dari matriks red (R).
31
Gambar 4.8 Nilai U dari matriks red (R).
Gambar 4.9 Nilai V dari matriks Red (R)
32
Gambar 4.10 Nilai singular S dari matriks green (G).
Gambar 4.11 Nilai U dari matriks green (G).
33
Gambar 4.12 Nilai V dari matriks green (G).
Gambar 4.13 Nilai singular S dari matriks blue (B).
34
Gambar 4.14 Nilai U dari matriks blue (B).
Gambar 4.15 Nilai V dari matriks blue (B).
35
Sebagai langkah terakhir, 푆 yang diperoleh kemudian digunakan untuk
membentuk citra ber-watermark bersama dengan matriks U dan V dari citra asal.
퐴 = 푈푆 푉
Gambar 4.16 Citra ber-watermark dari matriks red (R).
Gambar 4.17 Citra ber-watermark dari matriks green (G).
36
Gambar 4.18 Citra ber-watermark dari matriks blue (B).
Dari hasil citra ber-watermark di atas, citra yang di olah dari matriks R, G, dan B
tampak semuannya sama seperti citra asli. Sesuai dengan tujuan watermark yaitu
citra yang ber-watermark harus tampak sama seperti citra yang belum di
watermark. Dari pernyataan di atas, Metode SVD bisa digunakan untuk metode
watermark pada citra.
37
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Dalam skripsi ini citra yang ber-watermark dengan citra yang asli terlihat
sama sesuai dengan tujuan watermark, yaitu gambar asli dan gambar yang ber-
watermark harus terlihat sama. Dari pembahasan dapat disimpulkan bahwa
metode SVD dapat digunakan untuk me-watermark citra dan menjaga keaslian
citra.
5.2. Saran
Penulis menyarankan agar pada penelitian selanjutnya membuat
watermark pada produk digital yang lain seperti video, klip suara, rekaman dan
sebagainya. Karena jika hal tersebut dapat dilakukan maka akan lebih
memberikan manfaat pada keaslian produk digital. Disarankan juga untuk
mencoba metode watermark yang lain atau menambah ciri-ciri yang lain dalam
membuat watermark khususnya pada pengembangan penelitian ini.
39
REFERENSI
[1] Nurlailah, Siti.2010. Aplikasi Fragile Watermarking untuk Melindungi
Keaslian Foto. Jakarta : UIN.
[2] Utari, Suci. 2007. Implementasi Watermarking Citra Digital menggunakan
DB4 dan SDV. Jakarta : STT-PLN.
[3] Putra, Darma. 2010. Pengolahan Citra Digital. Yogyakarta: penerbit
Andi.
[4] Akbar, Fazlur. 2009. Aplikasi Pengamanan Hak Cipta Untuk Gambar
Digital Dengan Teknik Watermarking Menggunakan Metode SVD.
Yogyakarta: Unikom.
[5] Cahyana, Basarudin, dkk. 2007. Teknik Watermarking Citra Berbasis
SVD. Depok: UI.
[6] E. Walpole, Ronald. 1992. Pengantar Statistika Edisi ke-3. Jakarta: PT.
Gramedia Pustaka Utama
[7] Khaeroni. 2011. Pemanfaatan Citra Menggunakan Dekomposisi Nilai
Singular. Jakarta : Penerbit Pusat Studi Matematika Fakultas Sains dan
Teknologi UIN Jakarta.
[8] Tyas, Lia Ayuning, 2009. Watermarking Citra Digital Berbasis DWT-SVD
Dengan Detektor Non-Blind.
39
[9] Yuningsih, Sri. 2010. Pendeteksian Speudorandom Pada Citra Digital
Menggunakan Algoritma Barni. Jakarta : STT-PLN.
.
LAMPIRAN 1
Program Kunci PNPG 2D
function [w]=pnpg2ddes14(baris,kolom,pengulangan) w=zeros(baris,kolom); %Compute normal uniform random Wo for i=1:baris for j=1:kolom temp=rand; if temp>0.5 w(i,j)=1; else w(i,j)=0; end end end % Iterasi Pseudorandom Noise Pattern for i=2:baris-1 for j=2:kolom-1 temp1=w(i+1,j)|w(i,j+1); temp2=xor(temp1,w(i-1,j)); temp3=xor(temp2,w(i,j-1)); w(i,j)=xor(temp3,w(i,j)); end end %check for zeros column %sum123=[sum(w(:,:,1));sum(w(:,:,2));sum(w(:,:,3))]; %for j=1:3 % if min(sum123(j,:))==0 % lokasi=find(sum123(j,:)==0); % temp=size(lokasi,2); %for i=1:temp % temp2=round(baris*rand); % w(temp2,lokasi(i),j)=1; % end %end %end
LAMPIRAN 2
Program Penyisipan SVD Watermark
yayan=imread('uin3.jpg'); figure(1); imshow(yayan); G=double(yayan); disp(['Ukuran foto awal=']); size(G) [U,S,V]=svd(G(:,:,1)) singuler=mat2gray(G); [baris,kolom,rgb]=size(G); w=pnpg2ddes14(baris,kolom,3); W=double(w); kW=10^-4*W; Iw=double(S)+double(kW) akhir=double(U)*double(Iw)*V' watermark=mat2gray(akhir); figure(2); imshow(watermark); watermark=yayan; figure(3); imshow(watermark);