ii
COPYRIGHT APPLICATION FOR DIGITAL IMAGE BY USING SVD WATERMARKING TECHNIQUE (SINGULAR VALUE
DECOMPOSITION) by
FAZLUR AKBAR 10106322
Developments in the digital world and other devices that digital world, has made digital data are widely used, Along with the ever-expanding multimedia network, the process of delivery and access of digital data is also increasingly easy. With the ease of this course, each person can freely exchange the information they want. However, on the other hand this brings new problems in terms of ownership for a given data such as original image or also called Copyright.
One method developed to solve the problem is digital watermarking.Watermarking is a form of steganography (a technique for hiding information on a medium without any significant change in the media) using the method of Singular Value decomposition (SVD) in the watermarking process in which this method is a technique used by correlation value of the extracted watermark
This application is tested with data type image in various sizes, as well as test results from the process of watermarking and watermark Scanning process. The test results showed that the application be better used on file with the type of image data. Jpg and. Bmp because PNSR value generated is higher than other image data types.
i
APLIKASI PENGAMANAN HAK CIPTA UNTUK GAMBAR DIGITAL DENGAN TEKNIK WATERMARKING MENGGUNAKAN METODE SVD (SINGULAR VALUE
DECOMPOSITION)
Oleh
FAZLUR AKBAR 10106322
Perkembangan dalam dunia digital dan perangkat-perangkat lainnya yang serba digital, telah membuat data digital banyak digunakan, Seiring dengan semakin meluasnya jaringan multimedia, maka proses pengiriman dan pengaksesan dari data digital juga semakin mudah. Dengan adanya kemudahan ini tentu saja setiap orang dapat secara bebas saling bertukar informasi yang mereka inginkan. Akan tetapi di sisi lain hal ini membawa masalah baru dalam hal kepemilikan untuk suatu data seperti citra asli atau juga disebut dengan Hak Cipta.
Salah satu metode yang dikembangkan untuk mengatasi masalah tersebut adalah digital Watermarking. Watermarking merupakan suatu bentuk dari
Steganography (teknik untuk menyembunyikan suatu informasi pada suatu media tanpa perubahan yang berarti pada media tersebut) dengan menggunakan Metode Singular Value Decomposition (SVD) dalam proses watermarking dimana metode ini merupakan teknik yang digunakan berdasarkan nilai Korelasi watermark yang diekstrak
Aplikasi ini diuji dengan Tipe data Gambar dengan berbagai ukuran, serta menguji hasil dari Proses watermarking dan proses Scanning watermark. Hasil pengujian menunjukkan bahwa aplikasi lebih baik digunakan terhadap file dengan tipe data gambar .jpg dan juga .bmp karena nilai PNSR yang dihasilkan lebih tinggi dari tipe data gambar lainnya.
1
PENDAHULUAN
I.1 Latar Belakang Masalah
Perkembangan dalam dunia digital dan perangkat-perangkat lainnya yang serba digital, telah membuat data digital banyak digunakan. Ada beberapa faktor yang membuat data digital (seperti audio, citra, video, dan text) banyak digunakan, antara lain:
1. Mudah diduplikasi dan hasilnya sama dengan aslinya 2. Murah untuk penduplikasian dan penyimpanan
3. Mudah disimpan untuk kemudian diolah atau diproses lebih lanjut,
4. Serta mudah didistribusikan, baik dengan media disk maupun melalui jaringan seperti Internet.
Apalagi dengan adanya perkembangan teknologi Internet yang dapat menyajikan dan mempersatukan berbagai jenis data digital, data digital tersebut semakin banyak digunakan untuk membentuk suatu sistem multimedia. Dengan adanya Internet sebagai sistem jaringan terluas didunia yang menghubungkan hampir seluruh komputer-komputer dunia, membuat semua komputer di dunia ini semakin mudah untuk bertukar data. Dalam “Dunia Maya” ini, hampir segala jenis informasi dapat diperoleh, yang dibutuhkan hanyalah sebuah komputer yang terhubung dengan dunia maya ini (Internet).
yang mereka inginkan. Akan tetapi di sisi lain hal ini membawa masalah baru dalam hal kepemilikan untuk suatu data seperti citra asli. Berbagai jenis metoda pengolahan digital untuk pengamanan hak cipta data digital sudah tersedia saat ini. Salah satu metode yang dikembangkan untuk mengatasi masalah tersebut adalah digital Watermarking. Watermarking merupakan suatu bentuk dari
Steganography (teknik untuk menyembunyikan suatu informasi pada suatu media tanpa perubahan yang berarti pada media tersebut). Teknik Watermarking akan menyisipkan informasi digital yang disebut watermark ke dalam suatu data digital yang disebut carrier . Watermark yang disisipkan dapat berupa teks biasa, audio, citra maupun video tergantung dari kemampuan media yang ditumpanginya. Penambahan watermark ke dalam suatu materi multimedia tanpa mempengaruhi kualitasnya dapat digunakan sebagai bukti otentik kepemilikan suatu data. Untuk pengamanan informasi rahasia maka salah satu caranya informasi tersebut akan dienkripsi terlebih dahulu sebelum disisipkan ke dalam media digital dan kemudian diekstrak dan dideskripsi kembali dari media digital tersebut.
Pada saat ini banyak sekali metode yang digunakan untuk teknik
Watermarking. Antara lain seperti Discrete Fourier Transform (DFT), Discrete Cosine Transform (DCT), Discrete Wavelet Transform (DWT) dan Singular Value Decomposition (SVD), Untuk saat ini telah banyak digunakan metode DWT (Discrete Wavelet Transform) dimana sebelum dilakukan proses
watermark tersebut akan diuji tingkat kekuatan watermark (Robustness) setelah citra mengalami berbagai macam pemrosesan sinyal (attack) seperti penambahan
noise proses filter, scaling, perputaran, pemotongan dan kompresi, untuk menguji tingkat kekuatan watermark terhadap berbagai macam pemrosesan sinyal maka akan dibandingkan penerapan dua metode tersebut pada teknik watermarking
dimana media yang digunakan sebagai Carrier adalah Gambar Digital dan informasi yang disisipkan bisa berupa teks dan gambar.
Dari uraian diatas maka diambil Topik untuk tugas akhir Membangun Aplikasi Pengamanan Hak Cipta untuk Data Gambar Digital Dengan Teknik Watermarking Menggunakan Metode SVD (Singular Value Decomposition)
I.2 Identifikasi Masalah
Berdasarkan latar belakang masalah yang telah diuraikan, maka identifikasi masalah dalam penulisan tugas akhir ini adalah :
1. Bagaimana membangun aplikasi yang digunakan untuk pengamanan Hak Cipta Data Digital
2. Bagaimana menguji kekuatan teknik Watermarking menggunakan metode SVD (Singular Value Decomposition)
I.3 Maksud dan Tujuan I.3.1 Maksud
Maksud dari penelitian adalah membangun sebuah aplikasi untuk melakukan teknik Watermarking pada citra dengan menggunakan metode SVD
I.3.2 Tujuan
Tujuan dari penelitian ini yaitu :
1. Membangun Aplikasi watermark (Tanda Air) pada suatu karya foto digital. 2. Membangun aplikasi Ekstraksi watermark dari citra yang telah disisipkan
watermark dimana citra tersebut telah diberi attack.
3. Membangun Aplikasi yang bisa melindungi Hak Cipta Gambar Digital.
I.4 Batasan Masalah/Ruang Lingkup kajian
Pada penulisan tugas akhir ini ruang lingkup kajian dibatasi hanya pada : 1. Proses Watermarking menggunakan metode Singular Value Decomposition
(SVD).
2. Pengujian kehandalan citra digital hasil Watermarking dilakukan pada proses Ekstraksi dan citra telah diberi attack.
3. Citra digital asli (carrier image) yang digunakan adalah format citra berwarna( .jpg, .bmp, .png )
4. Citra Watermark (citra logo) utama yang digunakan merupakan citra yang mempunyai ukuran lebih kecil dari pada Carrier Image.
5. Perangkat lunak yang digunakan untuk membangun aplikasi ini adalah Microsoft Visual Studio 2008.
I.5 Metodologi Penelitian
Metodologi yang dilakukan dalam Tugas Akhir ini mencakup hal-hal sebagai berikut:
1. Metode Studi Literatur yaitu mengumpulkan data melalui studi literatur dari buku-buku referensi dan jurnal yang terkait. Studi literatur merupakan tahap pendalaman materi, identifikasi permasalahan dan teori yang berkaitan dengan permasalahan dalam penelitian.
2. Metode Studi Eksperimen yaitu melakukan percobaan yang berencana dalam menganalisis, penerapan metode SVD (Singular Value Decomposition) pada Watermarking, hasil dari analisis dan perancangantersebut akan dilakukan implementasi dan pengujian.
I.5.1 Pembangunan Perangkat Lunak
Metode yang digunakan dalam mengembangkan perangkat lunak adalah metode waterfall(Software Engineering, Roger.S.Pressman, Ph.D., Third Edition). Tahapan-tahapan yang terdapat dalam model waterfall dapat dilihat pada Gambar 1.1
a. Analisis Kebutuhan
b. Desain Sistem
Tahap penerjemahan dari keperluan atau data yang dianalisis kedalam bentuk yang mudah dimengerti oleh user atau pemakai. Perancangan perangkat lunak sebenarnya merupakan kumpulan proses yang difokuskan pada 4 (empat) atribut yang berbeda-beda pada program, yaitu struktur data, arsitektur perangkat lunak, rincian prosedur, dan karakteristik antarmuka. Proses perancangan, mentranslasikan kebutuhan-kebutuhan ke dalam sebuah representasi perangkat lunak yang dapat dinilai kualitasnya sebelum pengkodean dimulai.
c. Implementasi dan Pengujian Unit
Tahap penerjemahan data atau pemecahan masalah ke dalam kode-kode yang telah dirancang ke dalam bahasa pemrograman komputer yang ditentukan. d. Pengujian Sistem
Tahap penyatuan unit-unit program yang dibangun kemudian diuji secara keseluruhan.
e. Maintenance/Perawatan
Tahap terakhir dari suatu perangkat lunak yang sudah selesai dapat mengalami perubahan-perubahan atau penambahan seperti penyesuaian karena adaptasi dengan situasi yang sebenarnya.
Gambar 1. 1 Diagram Waterfall [5]
I.6 Sistematika Penulisan
Sistematika Penulisan Laporan Tugas Akhir ini adalah sebagai berikut :
BAB I PEDAHULUAN
Bab ini membahas latar belakang, rumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematikas penulisan.
BAB II LANDASAN TEORI
Bab ini menjelaskan teori-teori atau dasar-dasar pengetahuan, jaringan, data gambar, Matrik, watermarking, Algoritma SVD, Microsoft Visual Studio. BAB III ANALISIS DAN PERANCANGAN SISTEM
BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini menjelaskan tentang implementasi Algoritma SVD dalam watermarking file digital. Serta menjelaskan pengujian aplikasi yang telah dibuat tersebut
BAB V KESIMPULAN DAN SARAN
9
LANDASAN TEORI
II.1 Citra Digital
Citra digital sebenarnya bukanlah sebuah data digital yang normal, melainkan sebuah representasi dari citra asal yang bersifat analog [3]. Citra digital
ditampilkan pada layar komputer dengan berbagai macam susunan warna dan tingkat kecerahan. Susunan warna inilah yang menyebabkan sebuah citra bersifat analog. Hal ini disebabkan karena susunan warna yang dimiliki dalam sebuah citra mengandung jumlah warna dan tingkat kecerahan yang tidak terbatas [3]. Citra yang ditampilkan pada layar komputer ini, yang sebenarnya merupakan sebuah representasi analog, juga tersu sun dari sebuah rentang tak terbatas dari nilai cahaya yang dipantulkan atau cahaya yang ditransmisikan. Jadi secara umum citra memiliki sifat kontinu dalam tampilan warna dan tingkat kecerahannya.
II.2 Pembentukan Citra Digital
mengekstrak informasi citra analog asli dan mengirimkannya ke komputer dalam bentuk biner. Proses ini disebut dengan digitisasi [1]. Digitisasi dapat dilakukan oleh alat seperti kamera digital atau scanner. Kedua alat ini selain dapat mengambil atau menangkap sebuah citra, juga dapat bertindak sebagai alat input
(masukan) bagi komputer. Alat penangkap citra digital ini dapat menyediakan aliran data biner bagi komputer yang didapatkan dari pembacaan tingkat kecerahan pada sebuah citra asli dalam interval sumbu x dan sumbu y [1].
Citra digital merupakan citra yang tersusun dari piksel diskrit dari tingkat kecerahan dan warna yang telah terkuantisasi [2]. Jadi, pada dasarnya adalah sebuah citra yang memiliki warna dan tingkat kecerahan yang kontinu perlu diubah dalam bentuk informasi warna, tingkat kecerahan, dsb yang bersifat diskrit untuk dapat menjadi sebuah citra digital. Pada Gambar 2.1 diperlihatkan kurva tingkat kecerahan yang kontinu dengan nilai hitam dan putih yang tidak terbatas (a) dan kurva tingkat kecerahan setelah mengalami kuantisasi dalam 16 tingkatan diskrit (b).
Tingkat kecerahan pada Gambar 2.1 yang bersifat kontinu dapat diubah menjadi tingkat kecerahan seperti Gambar 2.2 dengan pembacaan tingkat kecerahan menggunakan interval tertentu pada sumbu x dan y seperti yang telah disebutkan di atas.
Gambar 2.1 Tingkat kecerahan yang kontinu
Gambar 2.2 tingkat kecerahan setelah mengalami kuantisasi 16 tingkatan diskrit.
II.3 Watermarking Citra Digital
misalnya dalam format bitmap atau JPEG, sangat mudah dimodifikasi dengan berbagai perangkat lunak. Contoh perangkat lunak yang amat populer digunakan untuk modifikasi semacam ini adalah Adobe Photoshop. Dalam pendistribusiannya, jaringan internet merupakan sarana distribusi informasi tercepat dan terlengkap di dunia. Kemudahan pengolahan dan pendistribusian ini selain memberikan banyak keuntungan juga dapat membawa kerugian. Kedua hal tersebut akan merugikan apabila informasi yang diolah dan disebarluaskan adalah informasi yang memiliki hak cipta. Tanpa adanya pengawasan dan kontrol, maka yang terjadi adalah pelanggaran terhadap hak cipta yang serius. Diperlukan suatu cara untuk mengatasi hal yang berkaitan dengan pelanggaran hak cipta yang memiliki sifat-sifat seperti:
1. Invisible atau inaudible : Tidak tampak (untuk data digital seperti citra, video, text) atau tidak kedengaran (untuk jenis audio) oleh pihak lain dengan menggunakan panca indera kita (dalam hal ini terutama mata dan telinga manusia).
2. Robustness : Tidak mudah dihapus/diubah secara langsung oleh pihak yang
tidak bertanggung jawab, dan tidak mudah terhabus/terubah dengan adanya proses pengolahan sinyal digital, seperti kompresi,filter,pemotongan dan sebagainya.
3. Trackable : Tidak menghambat proses penduplikasian tetapi penyebaran
informasi tersebut, namun tentunya harus menggunakan kode khusus. Kode tersebut dikenal dengan nama key.
Sebenarnya enkripsi tidak dapat menyelesaikan masalah pelanggaran hak cipta secara penuh. Enkripsi sangat berguna terutama dalam pendistribusiannya. Sehingga tak sembarang pihak dapat memperoleh suatu informasi tersebut. Namun setelah informasi tersebut dideskripsi tak ada lagi perlindungan yang diberikan. Oleh karena itu, digunakan alternatif solusi lain dengan menggunakan
watermarking. Teknik Watermarking tampaknya memiliki ketiga sifat sifat diatas, karena faktor-faktor invisibility dan robustness dapat diatur, dan data terwatermark dapat diduplikasi seperti layaknya data digital. Watermarking digital
merupakan penanaman suatu watermark digital ke data utama atau carrier/host. Digital watermark merupakan sinyal digital yang disisipkan ke dalam data seperti teks, citra, video atau suara untuk berbagai keperluan. Sinyal tersebut disisipkan sedemikian rupa sehingga keberadaannya tidak teramati oleh indera penglihatan atau pendengaran manusia. Tidak teramati karena pada dasarnya indera manusia sangat sulit membedakan antara data yang telah disisipi watermark dan data yang belum. Walaupun demikian komputer dapat mendeteksi keberadaan watermark dengan mudah, tentunya dengan algoritma tertentu. Sinyal watermark tersebut biasanya mempresentasikan informasi tertentu misalnya label pengenal, sehingga dengan watermark ini kepemilikan sebuah informasi dapat ditentukan dengan jelas.
pada domain jenis data digital tersebut atau terlebih dahulu dilakukan transformasi ke dalam domain yang lain.Berbagai transformasi yang dikenal dalam pemrosesan sinyal digital seperti:FFT (Fast Fourier Transform), DCT (Discrete Cosine Transform), WaveletTransform, dan sebagainya.
II.3.1 Faktor-faktor penyebab dibutuhkan watermarking
Ada beberapa persyaratan yang harus dipenuhi dalam teknik watermarking
untuk menjamin proteksi terhadap bukti kepemilikan dan autentifikasi.. Syarat-syarat tersebut diantaranya adalah watermark harus sulit untuk dideteksi dan dihilangkan dan tidak merusak kualitas media yang disisipinya dan memiliki ketahanan terhadap modifikasi yang dilakukan pada media yang disisipinya. Dengan kata lain, watermarking citra yang handal harus memiliki sifat robust
tinggi dan hidden tinggi. Watermarking citra digital adalah proses penyisipan suatu watermark digitalke dalam media citra digital. Secara visual, watermarking dibedakan menjadi dua macam, yaitu robust watermarking dan hidden watermarking. Pada robust watermarking, watermark digital tampak pada citra asli sedangkan pada hidden watermarking, watermark digital tidak tampak pada citra asli.
Beberapa aplikasi watermarking sering digunakan adalah untuk hal-hal Sebagai berikut :
a. Owner identification (tanda pengenalan kepemilikan)
b. Proof of ownership (Bukti kepemilikan)
Selain digunakan sebagai tanda pengenalan pemilikan, watermarking juga dapat digunakan sebagai bukti kepemilikan. Pembuktian ini diperlukan bilamana terjadi perselisihan hak kepemilikan atas data digital.
c. Authentication (Keaslian)
Watermarking dapat juga digunakan sebagai teknik untuk membuktikan keaslian suatu data digital. Hal ini disebabkan, watermark akan selalu melekat pada data host. Sehingga jika data host mengalami perubahan baik di crooping atau diubah ke dalam format lainnya maka watermarknya akan selalu bersama dengan data host.
d. Fingerprinting
Fingerprinting digunakan untuk menelusuri penggandaan ilegal terhadap data host. Pemilik data host dapat menanamkan watermark berbeda ke data host yang akan didistribusikan ke pelanggan yang berbeda. Dengan cara ini maka penggandaan ke pihak ketiga akan dapat dideteksi, karena adanya watermark yang berbeda untuk pelanggan yang berbeda.
e. Medical safety
Pada aplikasi ini, watermark yang berupa data pasien (nama, tanggal) dapat ditanamkan ke data host (medical image) sehingga dapat meminimalisir adanya kesalahan data.
f. Broadcast Monitoring
mengekstrak informasi watermark yang dibawa dan sekaligus mencatat informasi tayangan yang muncul.
II.4 Perbedaan Antara Format File dan Kompresi
Citra digital adalah sebuah file yang tersimpan sebagai nilai numerik dalam media magnetic atau media optikal [4]. Ditinjau dari bentuknya yang merupakan sebuah file, citra digital memiliki berbagai jenis format, antara lain JPEG, GIF, PNG, BMP, dsb. Format-format file untuk citra digital ini memiliki keunggulan, kelemahan, dan tingkat komersialitasnya masing- masing. Format file merupakan rangkaian data yang teratur dan digunakan untuk mengkodekan informasi dalam penyimpanan atau pertukaran data [4]. Format file dapat digambarkan sebagai sebuah bahasa tulis yang memiliki aturan-aturan sendiri dalam penulisannya. Jika digambarkan, setiap format file citra memiliki cara pembentukan struktur yang berbeda dimana setiap struktur ini memiliki header dan body. Umumnya header
diikuti dengan body yang mengandung sebagian besar data. Kompresi merupakan cara pengkodean data file agar lebih ringkas dan efisien. Seperti yang diketahui, kompresi terhadap sebuah file memerlukan algoritma juga. Algoritma ini berguna dalam mendefinisikan langkah –langkah yang diperlukan untuk mengurangi ukuran file, yang dalam hal ini merupakan tujuan dari kompresi. Kesalahan yang sering muncul adalah pembedaan antara format file dengan kompresi.
II.5 Singular Value Decomposition
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 atau lingkaran. Kemudian singular value mengandung informasi properti persamaan linear citra / gambar.
Misalkan A adalah sebuah matriks tidak nol berukuran m x n, maka a dapat direpresentasikan sebagai sebuah perkalian berikut:
(2)
U pada persamaan diatas adalah matriks orthogonal berukuran m x m, V adalah matriks orthogonal berukuran m x n dan S adalah matriks diagonal tidak bujur sangkar berukuran n x m. Dapat dilihat pada persamaan berikut:
(3)
Dekomposisi diatas disebut sebagai singular value decomposition. nilai
adalah sebuah citra maka S mempunyai nilai-nlai luminance dari lapisan-lapisan citra yang dihasilkan oleh vektor-vektor singular kiri dan kanan. Vektor-vektor singular kanan merepresentasikan detail-detail horisontal, sedangkan vektor-vektor singular kiri merepresentasikan detail-detail vertikal dari citra. Pengubahan sedikit pada nilai-nilai singular tidak mempengaruhi kualitas citra.
Pada penelitian ini, penyisipan Watermark dilakukan pada ranah spasial. Secara umum Watermarking dibagi menjadi dua bagian, yaitu proses penyisipan dan proses ekstraksi atau deteksi. Langkah-langkah yang dilakukan adalah sebagai berikut:
A. Tahap Penyisipan
Pada tahap penyisipan, langkah yang dilakukan adalah sebagai berikut:
1. Memilih citra (gambar digital) yang akan digunakan sebagai citra pembawa watermark. Citra yang dipilih adalah citra grayscale dengan dimensi dua.
2. Memilih citra yang akan dijadikan watermark. Citra watermark dipilih citra biner dengan ukuran yang lebih kecil dari citra pembawa.
3. Menentukan algoritma yang digunakan untuk penyisipan.
4. Membuat matriks penampung citra dan melakukan penyesuaian untuk citra watermark karena besarnya tidak sama dengan citra pembawa.
Gambar 2.3 Alur Tahap Penyisipan Pada Metode SVD
Algoritma yang digunakan dalam penelitian ini adalah algoritma yang di usulkan oleh Ruizhen Liu dan Tieniu Tan. Yaitu dengan menjumlahkan secara langsung antara citra watermark pada intensitas tertentu dengan matriks diagonal hasil dekomposisi SVD dari citra pembawa. Penyesuaian harus dilakukan jika ukuran watermark tidak sama dengan ukuran matriks S. hal ini dapat dilakukan dengan meletakkan watermark pada suatu matriks nol berukuran sama dengan S pada posisi tertentu.
Algoritma yang diusulkan bertipe non-blind, artinya hasil proses penyisipan tidak hanya berupa citra yang mengandung watermark, tetapi juga ada informasi tambahan yang didapat dari hasil perhitungan SVD pada citra pembawa dan citra watermark. Informasi tambahan tersebut tidak disebarluaskan bersama citra yang sudah disisipi watermark, tapi untuk disimpan sendiri guna kepentingan ekstraksi selanjutnya. Algoritma penyisipan Liu tersebut terlihat seperti pada
B. Tahap Ekstraksi
Pada tahap ekstraksi, langkah yang dilakukan adalah sebagai berikut:
1. Memilih citra yang sudah disisipi watermark.
2. Menyediakan parameter-parameter yang dibutuhkan dalam ekstraksi yaitu: citra asli, citra watermark, matriks S, V dan U serta intensitasnya. Parameter-parameter tersebut dihasilkan dalam proses penyisipan sebelumnya.
3. Melakukan ekstraksi.
4. Mengembalikan citra watermark yang ukurannya disesuaikan dengan citra pembawa.
5. Tahap ekstraksi diatas dapat dilihat pada gambar 2.16 sebagai berikut:
20
BAB III
ANALISIS DAN PERANCANGAN SISTEM
III.1 Analisis Sistem
Analisis sistem merupakan tahap yang bertujuan untuk memahami sistem, mengetahui keunggulan dan kelemahan dari sistem di tinjau dari sisi pengguna. Dengan menganalisis prosedur sistem yang sering digunakan, maka sistem yang sering dipakai dapat dievaluasi sehingga dapat dijadikan sebagai acuan untuk membangun suatu sistem yang baru dari hasil evaluasi tersebut.
Dalam penelitian ini yang akan dianalisis adalah tahapan membangun aplikasi pengamanan hak cipta untuk data gambar digital (digital image) dan bahasan mengenai teknik watermarking yang akan digunakan yaitu metode SVD (Singular Value Decomposition)
Sistem yang akan dibangun adalah sistem yang implementasikan menggunakan teknik watermarking metode SVD untuk pengamanan hak cipta untuk data gambar digital, sehingga dari sistem tersebut harus dibangun sesuai dengan kebutuhan-kebutuhan sebagai berikut :
1. Membangun aplikasi yang dapat melakukan pengamanan hak cipta untuk data gambar digital.
2. Mengimplementasikan teknik watermarking dengan menggunakan metode SVD sesuai tahapan-tahapan didalamnya.
III.1.1Analisis Masalah
Langkah selanjutnya adalah identifikasi masalah dari hasil analisis terhadap sistem. Maka dapat diidentifikasi masalah, yaitu sebagai berikut :
1. Aplikasi yang akan dibangun harus dapat digunakan untuk pengamanan hak cipta untuk gambar data digital.
2. Teknik watermarking dengan metode SVD harus dapat digunakan untuk pengamanan hak cipta untuk gambar data digital.
III.1.2 Analisis Kebutuhan Non-Fungsional
Analisis dan kebutuhan non-fungsional meliputi analisis dan kebutuhan pengguna, analisis dan kebutuhan perangkat keras, serta analisis dan kebutuhan perangkat lunak.
III.1.2.1 Analisis Kebutuhan Pengguna (user)
Pengguna diartikan sebagai orang yang mengakses dan menggunakan perangkat lunak aplikasi Watermarking metode SVD, dalam hal ini dibutuhkan pengguna yang memiliki kemampuan tingkat average user dimana user dapat mengoperasikan komputer dan memiliki kapabilitas dalam menggunakan aplikasi komputer serta pengguna yang membutuhkan aplikasi watermarking untuk melindungi hak cipta gambar digital.
III.1.2.2 Analisis Kebutuhan Perangkat Keras
Decomposition) dan metode DWT (Discreete Wavelet Transform), untuk kebutuhan minimum perangkat keras dapat dilihat dalam tabel 3.1
Tabel 3.1 Tabel spesifikasi perangkat keras
Processor M emory (RAM ) Hard-disk M onitor (Resolution)
Int el Pent ium 4 Kapasit as memory mulai dari 512 M B sampai 1 GByt e
Kapasit as hard-disk mulai dari 40 GByt e
Pada umumnya
menggunakan monit or dengan resolusi 1024 x 768 (32 bit ) 60 Hz
III.1.2.2Analisis Kebutuhan Perangkat Lunak
Analisis kebutuhan perangkat lunak yang di perlukan adalah sebagai berikut :
1. Sistem operasi yang digunakan adalah Windows Xp Service Pack 3. 2. Perangkat lunak yang digunakan untuk membangun aplikasi ini adalah
Microsoft Visual Studio 2008 (C#).
III.1.3 Analisis Kebutuhan Fungsional
Actor Identification
III.1.4 Analisis Metodologi SVD
Analisis ini dilakukan di setiap tahapan penelitian membangun aplikasi dengan ruang lingkup, sebagai berikut :
a. Tahap implementasi pada data gambar digital. b. Teknik watermarking
c. Metode SVD (Singular Value Decomposition)
Ketiga ruang lingkup metodologi di atas dapat digambarkan seperti pada gambar 3.1
III.1.5 Analisis Kode Warna Gambar
Dalam sebuah gambar digital kita sering melihat kode warna yang terdiri dari tanda ‘#’ dan 6 angka/huruf dibelakang tanfa tersebut, kode warna tersebut dapat diterjemahkan menjadi kode warna RGB (Red, green, Blue).
Misalkan kita mempunyai kode warna “#0088FF”, kita akan mencari beberapa porsi untuk warna merah (red), hijau (Green), dan biru (blue). Dengan begini kita bisa memperkirakan warna apa yang terbentuk untuk kode tersebut.
Pertama tanda “#” menunjukkan kalau itu adalah kode warna jadi tidak perlu terlalu diperhatikan, untuk 6 karakter disamping kanan tanda “#” digunakan bilangang berbasis 16 yang terdiri dari angka 0-9 dan A-F : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (semakin kekanan nilainya semakin besar)dan setelah F ada angka 10 (bukan berarti bernilai “Sepuluh” tetapi 1 angka lebih besar dari F) 11, 12, ..., 1E, 1F, 20, 21, ..., 2E, 2F, ..., A0, A1, ..., AE, AF, ..., F9, FA, FB, FC, FD, FE, dan terakhir FF.
Yang kita dapatkan dari penjelasan diatas adalah bahwa “00” adalah angka terkecil sedangkan “FF” adalah yang terbesar. Lihat kembali kode warna”#0088FF” lihat 2 angka setelah tanda “#” : “00” manunjukkan porsi untuk warna merah (red), 2 angka berikutnya “88” menunjukkan porsi untuk warna hijau(green), dan dua huruf terakhir “FF” menunjukkan persi untuk warna biru (blue).
Kadang ada juga yang cuma menuliskan kode warna 3 angka/huruf. Tapi ini cuma untuk menyingkat penulisan jika terdapat banyak angka/huruf yang sama. Contoh: "#0088FF" bisa disingkat jadi "#08F"
III.1.6 Analisis Perubahan Gambar Kedalam Matrik
Matriks adalahsuatu kumpulan besaran (variabel dan konstanta) yang dapat dirujuk melalui indeknya, yang menyatakan posisinya dalam representasi umum yang digunakan, yaitu sebuah tabel persegipanjang. Matriks merupakan suatu cara visualisasi variabel yang merupakan kumpulan dari angka-angka atau variabel lain, misalnya vektor. Dengan representasi matriks, perhitungan dapat dilakukan dengan lebih terstruktur. Pemanfaatannya misalnya dalam menjelaskan persamaan linier, transformasi koordinat, dan lainnya. Matriks seperti halnya variabel biasa dapat dimanipulasi, seperti dikalikan, dijumlah, dikurangkan dan didekomposisikan.
Gambar yang penulis akan coba ubah adalah gambar di bawah ini :
Gambar 3.2 gambar yang akan diubah ke dalam matrik
Untuk mempermudah merubah gambar menjadi matriks disini saya akan menggunakan aplikasi matlab untuk menerapkannya :
>>c=imread(‘lock.png’,'png’); >> asci=uint8(c)
baris pertama berfungsi untuk menampilkan gambar yang sudah disimpan pada folder work dalam matlab :
C:\Program Files\MATLAB71\work
sedangkan pada baris kedua berfungsi untuk merubah gambar menjadi matriks dimana fungsi uint8() digunakan untuk mengubah string menjadi bilangan integer.
Gambar 3.3 Pengetikan kode didalam MATLAB
Hasilnya :
Gambar 3.4 Matriks Gambar untuk warna merah
[image:31.595.150.474.409.614.2]asci(: , : , 2) Menandakan bahwa matriks yang ditampilkan adalah komposisi matriks dari warna kedua yaitu hijau (Green), Gambar 3.5.
Gambar 3.5 Matriks Gambar untuk warna hijau
Gambar 3.6 Matriks Gambar untuk warna biru
III.1.7 Metode SVD
Singular Value Decomposition (SVD) merupakan operator kompak T pada Hilbert Space yang didefinisikan sebagai eigenvalue dan operator akar pangkat dari T*T (T* merupakan adjoint dari T dan akar diambil dari operator sense)
Singular value merupakan bilangan nonnegative dan dinyatakan dengan urutan menurun, sebuah matrik dapat dikomposisi dalam bentuk USV, dengan U dan V merupakan matrik ortogonal dan S merupakan matrik diagonal, dengan singular value pada matrik diagonal nya maka hal ini disebut dengan singular value decomposition.
Sebagai contoh, misalkan sebuah matrik
Maka
Dicari eigenvaluenya
Dari |W-αI didapatkan 4 buah eigenvalue
α
=0,α
=0α
=15+ akar pangkat dari 221.5~29.883α
=15- akar pangkat dari 221.5~0.117kemudian didapat persamaan berikut dengan menstubtitusikan eigenvalue pertama 19.883x1 + 14x2 = 0
14x1 + 9.883x2 = 0 x3=0
x4=0
A.AT=
2 4 1 3 0 0 0 0
2 1 4 3
0 0 0 0 =
20 14 14 10 0 0
Solusi yang memenuhi persamaan diatas x1= -0.58, x2=0.82, x3 dan x4 = 0 (solusi ini menjadi kolom kedua matriks U)
Dari eigenvalue yang didapatkan -9.883x1 + 14x2 = 0
14x1 + 19.883x2 = 0 x3 = 0
x4 = 0
solusi yang memenuhi persamaan tersebut x1=0.82, x2= -0.58 dan x3=x4=0 solusi ini menjadi kolom pertama matriks U
Demikian pula AT.A akan mengisi kolom dari matriks V maka dilakukan analisis serupa
A.AT= 2 1
4 3 0 0 0 0
2 4 1 3 0 0 0 0
Akhirnya S merupakan akar kuadrat dari AT.A dan didapatkan
Matrik S ini merupakan singular value dari matriks A
III.1.8 Analisis Gambar Digital
Sebuah gambar didefinisikan sebagai fungsi dua dimensi, f(x,y) dimana x dan y adalah koordinat spasial. Amplitudo fungsi pada setiap pasangan titik (x,y) merupakan intensitas atau kecemerlangan gambar pada titik tersebut (Gonzales, 2004). Gray level digunakan untuk menyebut intensitas dari gambar monokrom atau satu warna. Gambar berwarna dibentuk oleh kombinasi dari beberapa gambar monokrom, misalnya RGB dibentuk oleh kombinasi tiga warna yaitu, merah, hijau dan biru. Karena itu banyak teknik pemrosesan gambar monokrom dapat digunakan untuk gambar berwarna dengan memproses tiga komponen gambar tersebut secara terpisah.
Gambar digital dapat di kodekan dalam bentuk matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada gambar tersebut dan elemen matriksnya (yang disebut sebagai piksel) menyatakan tingkat keabuan pada titik tersebut. Pada gambar berikut ini ditampilkan contoh koordinat suatu piksel dari gambar digital dengan x merepresentasikan baris dan y merepresentasikan kolom.
Gambar 3.7 Representasi Baris dan Kolom Pada Data Gambar Digital
Data gambar digital yang akan digunakan dalam penelitian ini adalah gambar digital sesuai pendeskripsian di atas,
III.2 Use Case Diagram
Use case diagram digunakan untuk menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case diagram pada Gambar 3.8 yang menggambarkan bagaimana proses yang terjadi pada aplikasi watermarking
III.2.1 Use Case Diagram Watermarkingdan Ekstraksi
[image:37.595.116.510.127.427.2]Use case diagram proses watermarking dan Ekstraksi dapat dilihat pada gambar 3.8
Gambar 3.8 Use case diagram proses watermarking dan Ekstraksi citra
III.2.2 Skenario Use Case Watermarking dan Ekstraksi
III.2.2.1Menentukan File Citra Original
Skenario proses menentukan file citra original dapat dilihat pada tabel 3.2
Tabel 3.2 Tabel skenario proses menentukan file citra original Identifikasi
Nomor 1
Nama Menentukan File Citra Original Tujuan Melakukan proses watermarking
Deskripsi Pada saat aplikasi watermarking dibuka user dapat melakukan pemilihan file / input file
Aktor User
Skenario Utama
Kondisi awal Aplikasi watermarking dalam keadaan terbuka
Aksi Aktor Reaksi Sistem
1. Memasukkan file yang akan di
watermarking
2. Memberikan informasi status file
yang akan di watermarking
3. Menekan tombol Run 4. Memberikan informasi status watermarking pada user.
Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
1. Memasukkan file yang akan di
watermarking, jika citra dasar lebih kecil dari citra watermark
2. Memberikan informasi bahwa
watermarking gagal.
Kondisi akhir 1. File yang watermarking akan berhasil jika citra dasar lebih besar ukurannya dari citra watermark
2. File yang watermarking akan gagal jika citra dasar lebih kecil ukurannya dari citra watermark
III.2.2.2Menentukan File Citra watermark
Skenario proses menentukan file citra original dapat dilihat pada tabel 3.3
Tabel 3.3 Tabel skenarioproses menentukan file citra watermark Identifikasi
Nomor 2
Nama Menentukan file Citra watermark
watermarking
Aktor User
Skenario Utama
Kondisi awal Aplikasi watermarking dalam keadaan baru dibuka
Aksi Aktor Reaksi Sistem
1. Memilih dan menginputkan file
yang akan di watermarking
2. Memberikan informasi status file
yang akan di watermarking Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
1. Memasukkan file yang akan di
watermarking, jika citra dasar lebih kecil dari citra watermark
2. Memberikan informasi bahwa
watermarking gagal.
Kondisi akhir 1. File yang watermarking akan berhasil jika citra dasar lebih besar ukurannya dari citra watermark
2. File yang watermarking akan gagal jika citra dasar lebih kecil ukurannya dari citra watermark
III.2.2.3Watermarking SVD method
Skenario proses watermarking SVD method dapat dilihat pada tabel 3.5
Tabel 3.5 Tabel skenario proses watermarking SVD method Identifikasi
Nomor 4
Nama Watermarking SVD method
Tujuan Melakukan proses watermarking dengan metode SVD
Deskripsi Sistem telah menerima file yang dipilih user
Aktor User
Skenario Utama
Kondisi awal Aplikasi watermarking dalam keadaan dibuka Terdapat file yang akan di watermarking
Aksi Aktor Reaksi Sistem
1. Menekan Tombol Run 2. Mengkomposisi 2 buah file citra menjadi matrix U, S, V
Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
- -
III.2.2.4Save file
Skenario proses Save File dapat dilihat pada tabel 3.6
Tabel 3.6 Tabel skenario proses Save file Identifikasi
Nomor 5
Nama save file
Tujuan menyimpan file yang telah di watermark
Deskripsi Sistem akan Menyimpan file yang telah di watermark
Aktor User
Skenario Utama Kondisi awal
Aksi Aktor Reaksi Sistem
1. Menekan Tonbol Save 2. Sistem menyimpan file yang telah di
watermark di tempat yang telah ditentukan
Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
- -
Kondisi akhir 1. File citra asli dan file citra watermark telah melalui proses
watermarking
III.2.2.5Menentukan File Key
Skenario proses menentukan file Key dapat dilihat pada tabel 3.7
Tabel 3.7 Tabel skenario proses menentukan File Key Identifikasi
Nomor 6
Nama Menentukan file Key
Tujuan Melakukan proses Ekstraksi
Deskripsi Pada saat aplikasi watermarking dibuka user dapat melakukan pemilihan File Key, dan File Citra hasil watermarking
Aktor User
Skenario Utama
Kondisi awal Aplikasi watermarking dalam keadaan terbuka
Aksi Aktor Reaksi Sistem
1. Menentukan metode untuk proses ekstraksi
2. Memberikan informasi status file
3. Menekan tombol Run 4. Memberikan informasi status Ekstraksi pada user.
Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
- -
Kondisi akhir 1. File kunci telah dipilih
III.2.2.6Menentukan File Citra Hasil Watermarking
Skenario proses menentukan file citra original dapat dilihat pada tabel 3.8
Tabel 3.8 Tabel skenario proses menentukan file citra original Identifikasi
Nomor 7
Nama Menentukan File Citra Hasil Watermarking Tujuan Melakukan proses Ekstraksi
Deskripsi Pada saat aplikasi watermarking dibuka user dapat melakukan pemilihan file / input file
Aktor User
Skenario Utama
Kondisi awal Aplikasi watermarking dalam keadaan terbuka
Aksi Aktor Reaksi Sistem
1. Memasukkan file yang akan di
Ekstraksi
2. Memberikan informasi status file
yang akan di Ekstraksi
3. Menekan tombol Run 4. Memberikan informasi status Ekstraksi pada user.
Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
- -
Kondisi akhir 1. Citra hasil watermarking sudah di input
III.2.2.7Ekstraksi
Skenario proses Ekstraksi Citra Watermark dapat dilihat pada tabel 3.9
Tabel 3.9 Tabel skenario proses Ekstraksi Citra watermark Identifikasi
Nomor 8
Tujuan Melakukan proses Ekstraksi
Deskripsi Pada saat aplikasi watermarking dibuka user dapat melakukan pemilihan file / input file yang telah di watermarking
Aktor User
Skenario Utama Kondisi awal Server Aktif
Aksi Aktor Reaksi Sistem
1. Memasukkan file yang akan di
Ekstraksi
2. Memberikan informasi status file
yang akan di Ekstraksi
3. Menekan Tombol Run 4. Memberikan informasi status
Ekstraksi pada user.
Skenario Alternatif – Autentikasi Gagal
Aksi Aktor Reaksi Sistem
- -
Kondisi akhir 1. File Citra asli dan File Citra watermark telah berhasil dipisahkan
III.3 Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Activity diagram merupakan state diagram khusus, di mana sebagian besar state
adalah action dan sebagian besar transisi di-trigger oleh selesainya state
aktivitas. Gambar 3.9 dan gambar 3.10 menunjukan activity diagram yang dilakukan aplikasi.
III.2.3 Aktivity Diagram Watermarking
Activity diagram proses watermarking dapat dilihat pada gambar 3.9
III.2.2 Activity Diagram Ekstraksi
Activity diagram proses Ekstraksi dapat dilihat pada gambar 3.10
III.4 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).
Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event
untuk menghasilkan output tertentu. Diawali dariapa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Sequence Diagram yang digambarkan dalam perancangan sistem dapat dilihat pada gambar 3.11 dan gambar 3.12.
III.4.1 Sequence Diagram Watermarking
Save
User Original Image
ChooseWatermarkImage() ChooseOriginalImage()
SelectRBSVDmethod()
ButtonRunClick()
ReturnPerformwatermarkSVD
Watermark Image SVD
SaveImage()
SaveKey()
Gambar 3.11 Sequence diagram proses watermarking
III.4.2 Sequence Diagram Ekstraksi
User Watermark Image Choose Key
ChooseImagewatermark()
ChooseFileKey()
Extract
ButtonRunClick()
ReturnPerformekstraksi
Gambar 3.12 Sequence diagram proses Ekstraksi
III.5 Class Diagram
III.5.1Class Diagram Watermarking dan Ekstraksi
[image:48.595.119.511.140.567.2]Class Diagram Proses Watermarking dan Proses Ekstraksi dapat dilihat pada gambar 3.13
III.6 Perancangan Sistem
Perancangan sistem adalah suatu proses yang menggambarkan bagaimana suatu sistem dibangun untuk memenuhi kebutuhan pada fase analisis. Adapun tahapan yang dilakukan dalam perancangan sistem ini membahas mengenai tujuan perancangan sistem, dan perancangan antar muka.
III.6.1 Tujuan Perancangan Sistem
Perancangan sistem merupakan tindak lanjut dari tahap analisa. Perancangan sistem bertujuan untuk memberikan gambaran sistem yang akan dibuat. Dengan kata lain perancanagn sistem didefinisikan sebagai penggambaran atau pembuatan sketsa dari beberapa elemen yang terpisah kedalam satu kesatuan yang utuh dan berfungsi. Selain itu juga perancangan bertujuan untuk lebih mengarahkan sistem yang terinci, yaitu pembuatan perancangan yang jelas dan lengkap yang nantinya akan digunakan untuk pembuatan simulasi. Aplikasi
watermarking ini dibuat dengan sederhana, sehingga diharapkan user dapat dengan mudah menggunakan aplikasi watermarking ini.
III.6.2Perancangan Antar Muka
Perancangan antarmuka dibutuhkan untuk mewakili keadaan sebenarnya dari aplikasi yang akan dibangun, berikut akan disajikan perancangan antarmuka dari aplikasi yang akan dibangun:
III.6.3 Menu Watermarking
Antar muka menu watermarking digunakan untuk melakukan proses
Gambar 3.14 Rancangan antar muka menu Watermarking
Keterangan tentang tombol-tombol yang digunakan dalam aplikasi
watermarking dapat dilihat pada Tabel 3.8
Tabel 3.8. Keterangan tampilan menu watermarking No
Objek
Jenis Objek Fungsi Objek
1 W at ermarking/ Ekst raksi Unt uk masuk kehalaman
w at ermarking / dew at ermarking
2 About Unt uk menampilkan halaman t ent ang soft w are dan pembuat 3 Select original image Unt uk memilih gambar sebagai
carrier image
4 Select w at ermark image Unt uk memilih gambar at au file yang kan disisipkan
5 Procedure
Unt uk memilih proses yang akan dilakukan
(w at ermarking/ dew at ermarking)
6 St at us bar
Unt uk mencant umkan informmasi proses yang t elah dilakuakan
8 Save Unt uk M enyimpan File yang sudah diw at ermarking
III.6.4 Menu Ekstraksi
Antar muka menu ekstraksi digunakan untuk melakukan proses ekstraksi file. Gambar 3.15 menampilkan rancangan menu Ekstraksi .
I nformation
Image wat ermar king (DWT/ SVD) by Putr a
Image w at er marking (DWT/ SVD) by Put ra
Ekstraksi
Jalan
Procedure : Watermarking Ekstraksi
Watermarking Citra
Pilih Citra Hasil watermarking About
Watermarking / Ekstraksi
Metode
DWT
SVD
Gambar 3.15 Rancangan antar muka menu Ekstraksi
Keterangan tentang tombol-tombol yang digunakan dalam aplikasi
Ekstraksi dapat dilihat pada Tabel 3.9
Tabel 3.9. Keterangan tampilan menu Ekstraksi No
Objek
Jenis Objek Fungsi Objek
1 W at ermarking/ Ekst raksi Unt uk masuk kehalaman w at ermarking / dew at ermarking
2 About Unt uk menampilkan halaman t ent ang
soft w are dan pembuat 3 Select w at ermarking
image
Unt uk memilih gambar hasil proses w at ermarking
6 St at us bar Unt uk mencant umkan informmasi proses yang t elah dilakuakan
7. Run Unt uk melakukan proses Ekst raksi file
III.6.5 Menu About
[image:52.595.161.465.280.482.2]Antar muka menu about digunakan untuk menampilkan informasi mengenai software dan juga pembangun software. Gambar 3.16 menampilkan rancangan menu about.
Gambar 3.16 Rancangan antar muka menu About
III.6.6 Pesan Kesalahan
Antar muka Pesan Kesalahan digunakan untuk menampilkan peringatan bahwa telah terjadi sebuah kesalahan dalam penggunaan program.Gambar 3.16 dan gambar 3.17 menampilkan Rancangan Pesan Kesalahan.
50
BAB IV
IMPLEMENTASI DAN PENGUJIAN
IV.1 Implementasi Program
Aplikasi Watermarking dengan menggunakan metode DWT (Discreete Wavelet Transform) dan metode SVD (Singular Value Decomposition) dibangun menggunakan microsoft visual studio 2008.
Program kompresi data ini terdiri dari beberapa menu. Diantaranya menu utama, menu compress, menu decompress. Menu utama merupakan menu yang pertama kali muncul ketika program tersebut dijalankan. Berikut merupakan gambar tampilan setiap menu dari aplikasi yang telah dibuat.
IV.2 Perangkat Pendukung yang Digunakan
Dalam proses pembuatan aplikasi kompresi ini, tentunya membutuhkan perangkat keras (Hardware) dan perangkat lunak (software). Berikut merupakan penjelasan dari perangkat keras dan perangkat lunak yang digunakan.
IV.2.1 Perangkat Keras (Hardware)
Spesifikasi minimal perangkat keras yang digunakan dalam pengujian aplikasi kompresi ini adalah sebagai berikut :
1. Processor AMD Athlon X2 5000+ @ 2.60GHz 2. Memory 2 GB
5. Mouse dan keyboard
IV.2.2 Perangkat Lunak (Software)
Perangkat lunak yang digunakan dalam pengujian aplikasi ini adalah : 1. Sistem Operasi (OS) Windows Vista 32bit.
2. Sistem Operasi (OS) Windows 7 32bit.
IV.3 Implementasi Class
Implementasi Class dapat dilihat pada tabel 4.1
Tabel 4.1 Tabel Implementasi Class
No Nama Class Nama File Fisik
1 Mainform Mainform.vb
2 Image Watermarking Utilities ImageWatermarkingUtilities.vb 3 Image Watermarking Threadworker ImageWatermarkingThreadworker.vb
4 SVD SVD.vb
5 Ekstract Ekstract.vb
6 Save Save.vb
7 Original Image Original Image.vb
8 Watemark Image Watemark Image.vb
9 Chooose Key Chooose Key.vb
10 Save Key Save Key.vb
IV.4 Implementasi Antar Muka
bagaimana program sistem ini bekerja dengan memeberikan tampilan sistem atau aplikasi yang dibuat.
Implementasi dari Aplikasi Pengaman Hak Cipta untuk gambar digital dengan menggunakan Teknik Watermarking metode SVD (Singular Value Decomposition) ini terdiri dari beberapa halaman yang memiliki fungsi sendiri-sendiri.halaman-halaman tersebut akan tampil secara berurut sesuai dengan urutan yang telah terprogram, setelah pengguna melakukan proses tertentu.
IV.4.1 Tampilan Menu Utama
Nama Program : Image Watermarking.exe Nama Form : Watermark
Fungsi : Melakukan input file citra latar, input file citra watermark, Tombo Jalan, Tombol Simpan, Tampil Informasi. Pada awal program akan muncul tampilan seberti pada gambar 4.1.
IV.4.2 Tampilan Menu Ekstraksi
Nama Program : Image Watermarking.exe Nama Form : Ekstraksi
Fungsi : Melakukan input file kunci, input file citra hasil watermark, Tombo Jalan, Tombol Simpan, Tampil Informasi. Pada tab menu ekstraksi akan muncul tampilan seberti pada gambar 4.2.
Gambar 4.2 Tampilan menu watermarking
IV.4.3 Tampilan Pesan Kesalahan A
Pesan Kesalahan ini akan Tampil apabila Ukuran file Citra latar lebih Kecil daripada Citra Watermark. Gambar 4.4 menunjukan tampilan Pesan Kesalahan
IV.4.4 Tampilan Pesan Kesalahan B
[image:58.595.146.479.500.709.2]Pesan Kesalahan ini akan Tampil apabila File Inputan Kosong. Gambar 4.5 menunjukan tampilan Pesan Kesalahan
Gambar 4.5 Tampilan pesan Kesalahan
IV.4.5 Tampilan Menu About
Nama Program : Image Watermarking.exe Nama Form : Ekstraksi
Fungsi : menampilkan informasi progran dan pembuat, Menu About ini akan Tampil apabila Tab Tentang Program Di Tekan. Gambar 4.6 menunjukan tampilan Menu About
IV.5 Pengujian Sistem
Pengujian sistem merupakan proses selanjutnya setelah implementasi perangkat lunak selesai dilakukan. Pengujian sistem yang dilakukan meliputi dua tahapan, yaitu pengujian fungsional dan pengujian data. Berikut ini merupakan pengujian sistem yang dilakukan.
IV.5.1 Pengujian Data
Pada pengujian data ini, akan dilakukan pengujian terhadap file teks, gambar. Berikut merupakan jenis-jenis file yang akan diambil untuk melakukan pengujian :
1. File teks : jenis file.txt
2. File Gambar : jenis file.jpg
Pemilihan jenis-jenis file tersebut dikarenakan jenis-jenis file tersebut merupakan jenis-jenis file yang paling sering digunakan dalam pengolahan data Citra. File-file yang telah dipilih tersebut akan diuji pada aplikasi ini untuk memperoleh nilai rasio hasil dari perbandingan ukuran file yang asli dengan file
yang telah diwatermark. Misal, ukuran file yang akan diwatermark adalah 526762 byte untuk file original dan 110592 byte untuk file watermark lalu setelah melakukan proses watermarking maka akan tampil informasi mengenai hasil
watermarking sebagai berikut :
OriginalSize : 486105
PNSR original Picture : 4,97095787869801
Watermarkfilesize : 40657
PNSR watermark Picture : 0,415762509075663
Original size menunjukkan ukuran file asli yang diberi watermarking, sedangkan
watermark file size menunjukkan ukuran file watermark yang akan disisipkan. Dan watermarking file size merupakan ukuran file original yang telah diberi
watermark.
IV.5.2 Pengujian Fungsional
Pengujian fungsional yang digunakan untuk menguji sistem yang baru adalah metode pengujian alpha. Pengujian alpha berfokus pada persyaratan fungsional perangkat lunak.
IV.5.2.1Rencana Pengujian
Rencana pengujian yang akan dilakukan pada aplikasi watermarking dan Ekstraksi watermark ini selengkapnya terlihat pada tabel 4.1.
Tabel 4.2 Rencana pengujian program aplikasi watermarking dan Ekstraksi watermark
Kelas Uji Butir Uji Jenis
Pengujian Watermarking
Data Normal Black box
Data Input : Kosong Black box
Data Citra Watermark Lebih besar Dari Citra Latar
Black box
Ekstraksi
Data Input : File Hasil Watermaking Black box
Data Input : Kosong Black box
IV.5.2.2Kasus dan hasil pengujian
pengujian watermarking dan Ekstraksi citra watermark. Berikut ini merupakan pengujian-pengujian yang dilakukan.
IV.5.2.2.1Pengujian proses watermarking
Tabel 4.3 Pengujian proses watermarking citra normal
Kasus dan Hasil Uji (Data Normal)
Data Masukan Input File : file yang akan diwatermark
Yang diharapkan
Pilih menu watermark, pilih metode yang akan digunakan, cari file citra yang akan dijadikan file induk (original image), cari file yang akan dijadikan file watermark, lalu klik tombol run maka akan melakukan proses watermarking dan hasil watermarking akan tampil
file citra yang telah diberi watermark.
Pengamatan Tampil informasi ukuran file asli dan file hasil
[image:61.595.111.513.245.471.2]watermark, Kesimpulan Diterima
Tabel 4.4 Pengujian proses watermarking citra salah
Kasus dan Hasil Uji (Data Salah)
Data Masukan File Input : kosong
Yang diharapkan Akan ditampilkan pesan kesalahan pada proses
watermarking
Pengamatan Ditampilkan pesan kesalahan dalam proses watermarking
Tabel 4.5 Pengujian proses watermarking citra salah
Kasus dan Hasil Uji (Data Salah)
Data Masukan File Input : file watermark lebih besar dari file original
Yang diharapkan Akan ditampilkan pesan kesalahan pada proses
watermarking
Pengamatan Ditampilkan pesan kesalahan dalam proses watermarking
Kesimpulan Diterima
IV.5.2.2.2Pengujian proses Ekstraksi
Tabel 4.6 Pengujian proses Ekstraksi citra watermark normal
Kasus dan Hasil Uji (Data Normal)
Data Masukan Pilih file hasil watermark yang akan Ekstraksi
Yang diharapkan Pilih menu Ekstraksi, pilih file yang akan discan, klik tombol run maka akan melakukan proses Ekstraksi file
Pengamatan Menampilkan info tentai nilai-nilai watermarking
Kesimpulan Diterima
Tabel 4.7 Pengujian proses Ekstraksi citra watermark salah
Kasus dan Hasil Uji (Data Salah)
Data Masukan File Input : kosong
Yang diharapkan Akan ditampilkan pesan kesalahan pada proses Ekstraksi
Pengamatan Ditampilkan pesan kesalahan dalam proses Ekstraksi
Kesimpulan Diterima
IV.5.2.2.3Kesimpulan Hasil Pengujian Alpha
arahan tampilan message box belum maksimal diciptakan dan ditampilkan tetapi secara fungsional sistem sudah dapat menghasilkan output yang diharapkan.
IV.5.2.2.4Pengujian Watermarking Terhadap Serangan
Berikut ini akan dibahas beberapa uji coba terhadap implementasi algoritma watermarking digital, dilakukan uji coba pada citra yang telah dikenai serangan. Serangan dilakukan dengan menggunakan aplikasi pengolahan citra Adobe Photosop CS3 dan VSO image resizer.
IV.5.2.2.5Pengujian Dengan Serangan Cropping (Pemotongan)
Gambar 4.7 menunjukkan gambar hasil watermarking sebelum dan sesudah terkena Attack Cropping.
Gambar 4.7 Gambar sebelum dan setelah diberi atack cropping
Gambar 4.8 Pesan Kesalahan Gambar Gagal Ekstrak IV.5.2.2.6Pengujian Dengan Serangan Resize (Pengubahan Ukuran)
Gambar 4.9 menunjukkan gambar hasil watermarking sebelum dan sesudah terkena Attack Resize.
Gambar 4.9 Contoh Gambar sebelum dan setelah diberi atack resizing
Gambar 4.10 Pesan Kesalahan Gambar Gagal Ekstrak IV.5.2.2.7Pengujian Dengan Serangan perubahan warna (negative)
Gambar 4.11 menunjukkan gambar hasil watermarking sebelum dan sesudah terkena Attack Negative Color.
Gambar 4.11 Contoh Gambar sebelum dan setelah diberi atack pewarnaan
Gambar 4.12 Gambar berhasil Di ekstrak IV.5.2.2.8Pengujian Dengan Serangan Rotation (Perputaran)
[image:66.595.121.541.392.602.2]Gambar 4.13 menunjukkan gambar hasil watermarking sebelum dan sesudah terkena Attack Rotation.
Gambar 4.13 Contoh Gambar sebelum dan setelah dilakukan Rotasi
mengubah informasi posisi watermark, Gambar 4.14 menunjukkan pesan kesalahan gagal di ekstrak.
Gambar 4.14 Pesan Kesalahan Gambar Gagal Ekstrak IV.5.2.2.9Pengujian Dengan Serangan noise (Gaussian)
Gambar 4.15 menunjukkan gambar hasil watermarking sebelum dan sesudah terkena Attack Noise Gaussian.
Gambar 4.15 Contoh Gambar sebelum dan setelah diberikan noise gaussian
mengubah informasi posisi watermark, Gambar 4.16 menunjukkan gambar berhasil di ekstrak.
Gambar 4.16 Pesan Kesalahan Berhasil Di Ekstrak IV.5.2.2.10Pengujian Betha
Pengujian beta merupakan pengujian yang dilakukan secara objektif dimana diuji secara langsung ke lapangan, mengenai kepuasan user dengan kandungan point syarat user friendly untuk selanjutnya dibagikan kepada sebagian
user dengan mengambil sample sebanyak 14 orang. Dari hasil kuesioner tersebut akan dilakukan perhitungan untuk dapat diambil kesimpulannya terhadap penilaian penerapan sistem yang baru.
Kuisioner untuk pengujian betha yaitu :
1. Apakah Aplikasi Watermarking yang dibangun bisa digunakan untuk pengamanan Hak Cipta Gambar Digital ?
a. Sangat Tidak Setuju b. Tidak Setuju
c. Biasa Saja
d. Setuju
2. Apakah Aplikasi Watermarking Dirancang Sesuai Kebutuhan User yang memerlukan pengamanan Hak Cipta pada karya gambar Digital ?
a. Sangat Tidak Setuju b. Tidak Setuju
c. Biasa Saja
d. Setuju
e. Sangat Setuju
3. Apakah Laporan yang disajikan sesuai dengan kebutuhan ? a. Sangat Tidak Setuju
b. Tidak Setuju c. Biasa Saja
d. Setuju
e. Sangat Setuju
4. Dengan adanya Aplikasi Watermarking ini Tidak ada lagi masalah tentang perebutan Hak Cipta
a. Sangat Tidak Setuju b. Tidak Setuju
c. Biasa Saja
d. Setuju
e. Sangat Setuju
5. Apakah Aplikasi Watermarking ini mudah digunakan (User Friendly) untuk proses watermarking dan proses Ekstraksi watermark ?
a. Sangat Tidak Setuju b. Tidak Setuju
c. Biasa Saja
d. Setuju
e. Sangat Setuju
6. Apakah Aplikasi watermarking ini memberikan kemudahan user untuk mengamankan Hak Cipta gambar digital user ?
a. Sangat Tidak Setuju b. Tidak Setuju
d. Setuju
c. Biasa Saja
Hasil Pengujian Beta sebagai berikut:
HASIL PENGUJIAN PILIHAN KATEGORI JAWABAN
Untuk Pertanyaan No 1 “Apakah Aplikasi Watermarking yang dibangun bisa digunakan untuk pengamanan
Hak Cipta gambar digital ?”
Kategori jawaban Sangat Tidak setuju Tidak setuju Biasa Saja Setuju Sangat Setuju
Frekuensi jawaban 1 1 0 9 3
Persentase nilai
Jumlah Frekuensi 1 1 0 9 3
Jumlah Populasi Sampel: 14 14 14 14 14
Jumlah Persentase: 7.14 % 7.14% 0% 64.28% 21.42%
Untuk Pertanyaan No.2 “Apakah Aplikasi Watermarking ini dirancang sesuai kebutuhan user yang
memerlukan pengamanan pada karya gambar digital ?”
Kategori jawaban Sangat Tidak setuju Tidak setuju Biasa Saja Setuju Sangat Setuju
Frekuensi jawaban 0 0 2 9 3
Persentase nilai
Jumlah Frekuensi 0 0 2 9 3
Jumlah Populasi Sampel: 14 14 14 14 14
Jumlah Persentase: 0 % 0 % 14.28% 64.28% 21.42%
Kategori jawaban Sangat Tidak setuju Tidak setuju Biasa Saja Setuju Sangat Setuju
Frekuensi jawaban 0 1 4 8 1
Persentase nilai
Jumlah Frekuensi 0 1 4 8 1
Jumlah Populasi Sampel: 14 14 14 14 14
Jumlah Persentase: 0 % 7.14% 28.57% 57.14% 7.14%
Untuk Pertanyaan No.4 “Dengan adanya Aplikasi watermarking ini tidak ada lagi masalah perebutan Hak
Cipta”
Kategori jawaban Sangat Tidak setuju Tidak setuju Biasa Saja Setuju Sangat Setuju
Frekuensi jawaban 0 3 3 7 1
Persentase nilai
Jumlah Frekuensi 0 3 3 7 1
Jumlah Populasi Sampel: 14 14 14 14 14
Jumlah Persentase: 0 % 21.42 % 21.42% 50% 7.14%
Untuk Pertanyaan No.5 “ Apakah Aplikasi watermarking ini mudah digunakan (User Friendly) untuk proses
watermarking dan proses ekstraksi watermark ?”
Kategori jawaban Sangat Tidak setuju Tidak setuju Biasa Saja Setuju Sangat Setuju
Persentase nilai
Jumlah Frekuensi 0 2 5 6 1
Jumlah Populasi Sampel: 14 14 14 14 14
Jumlah Persentase: 0 % 14.28 % 35.71% 42.85% 7.14%
Untuk Pertanyaan No.6 “Apakah Aplikasi watermarking ini memberikan kemudahan bagi user untuk
mengamankan Hak Cipta gambar digital user”
Kategori jawaban Sangat Tidak setuju Tidak setuju Biasa Saja Setuju Sangat Setuju
Frekuensi jawaban 0 0 5 7 2
Persentase nilai
Jumlah Frekuensi 0 0 5 7 2
Jumlah Populasi Sampel: 14 14 14 14 14
Jumlah Persentase: 0 % 0% 35.71% 50% 14.28%
IV.5.2.2.11Kesimpulan Hasil Pengujian Betha
IV.5.2.2.12Pengujian Sistem
Bila sistem baru telah dapat bekerja dengan baik dan dapat menggantikan sistem lama, maka sistem baru dialihkan untuk menggantikan sistem lama. Cara pengalihan sistem yang digunakan adalah dengan pendekatan konversi parallel (parallel convertion) artinya mengoperasikan Aplikasi baru bersama-sama dengan Aplikasi lama selama periode tertentu. Kedua Aplikasi ini dioperasikan bersama-sama untuk meyakinkan bahwa aplikasi baru dapat beroperasi dengan baik sebelum Aplikasi lama dihentikan.
Adapun maksud dari cara pengalihan ini, yaitu :
1. Dapat dilakukan perbandingan antara Aplikasi yang lama dengan Aplikasi yang baru
70
KESIMPULAN DAN SARAN
V.1 Kesimpulan
Setelah melakukan perancangan, implementasi, analisis dan pengujian aplikasi watermarking menggunakan metode SVD, maka dapat disimpulkan :
1. Aplikasi ini dapat Memberi Watermarking Terhadap File Citra se