Singular Value Decomposition SVD

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 A A T yaitu i  untuk setiap n i   1 dengan n yaitu banyak nilai eigen, maka nilai singular matriks A yaitu 2 i i    dan i v merupakan vektor eigen matriks A A T 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 = T USV 1. Dibentuk matriks A A T dengan nilai eigen i  untuk setiap n i   1 maka nilai singular matriks A A T yaitu 2 i i    2. Dibentuk matriks diagonal S =           n   ... ... 1    18 3. Dicari himpunan vektor eigen dari matriks A A T misalkan } ,... , { 2 1 n v v v merupakan vektor-vektor eigen matriks A A T dengan 1 v merupakan vektor eigen yang bersesuaian dengan nilai i  . 4. Dibentuk matriks ortogonal V = ] ,... , [ 2 1 n v v v 5. Dibentuk himpunan vektor U = } ,... , { 2 1 n u u u dengan 1 u = untuk setiap n i   1 6. Dibentuk matriks orthogonal U = ] ,... , [ 2 1 n u u u 7. Bentuk dekomposisi SVD A = T USV 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   i i ax x modulo m dan Persamaan 2.1 setelah di generalisasi menjadi: 1   i i ax x + 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 i x adalah bilangan bulat antara 0 dan m-i. Bilangan i x 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 x =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 j i W j i W j i W j i W j i W j i W n n n n n n           …2.9 Dengan  dinotasikan sebagai exclusive -or XOR ,dan  dinotasikan sebagai fungsi Boolean -OR dengan menggunakan empat templates pergeseran