Implementasi Algoritma Huffman Coding Dan Metode Least Significant Bit (LSB) Untuk Penyembunyian Citra BMP ke Citra BMP
BAB 2
LANDASAN TEORI
2.1
Citra
Citra atau gambar dapat didefinisikan sebagai sebuah fungsi dua dimensi, f(x,y), di
mana x dan y adalah koordinat bidang datar, dan harga fungsi f di setiap pasangan
koordinat (x,y) disebut intensitas atau level keabuan (grey level) dari gambar di titik
itu. Jika x,y dan f semuanya berhingga (finite), dan nilainya diskrit, maka gambarnya
disebut citra digital (gambar digital) (Hermawati, 2013).
2.1.1 Jenis Citra Digital
Menurut Sutoyo & Wijanarto (2009), ada 3 jenis citra digital yang sering digunakan,
yaitu :
1. Citra Biner (Monokrom), citra ini mempunyai 2 warna saja, yaitu hitam dan
putih dan membutuhkan 1 bit di memori untuk menyimpan kedua warna
tersebut. Bit 0 mewakili warna hitam dan bit 1 mewakili warna putih. Contoh
citra biner dapat dilihat pada gambar 2.1.
Gambar 2.1 Contoh citra biner
Universitas Sumatera Utara
7
2. Citra Grayscale (Skala Keabuan), banyaknya warna pada citra ini tergantung
pada jumlah bit yang disediakan di memori untuk menampung kebutuhan
warna tersebut. Citra 2 bit mewakili 4 warna dan citra 3 bit mewakili 8 warna.
Semakin besar jumlah bit warna yang disediakan di memori, semakin halus
gradiasi warna yang terbentuk. Contoh citra grayscale dapat dilihat pada
gambar 2.2.
Gambar 2.2 Contoh citra grayscale
3. Citra Warna (True Color), setiap piksel pada citra warna mewakili warna yang
merupakan kombinasi dari tiga warna dasar (RGB = Red Greem Blue). Setiap
warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap
warna mempunyai gradiasi sebanyak 255 warna. Berarti setiap piksel
mempunyai kombinasi warna sebanyak 28 .28 .28 = 16 juta warna lebih. Format
ini dinamakan true color karena mempunyai jumlah warna yang cukup besar
sehingga bisa dikatakan hampir mencakup semua warna di alam. Contoh citra
warna dapat dilihat pada gambar 2.3.
Universitas Sumatera Utara
8
Gambar 2.3 Contoh citra warna
2.1.2 Format File Citra
Menurut Ahmad (2005), ada dua kategori besar untuk format file citra yaitu :
1. Format file bitmap, format ini menyimpan data kode citra secara digital dan
lengkap. Format citra bitmap yang umum digunakan dalam pengolah citra
dapat dilihat pada tabel 2.1.
Tabel 2.1 Format file grafik bitmap (Ahmad, 2015)
Nama Format
Microsoft
Ekstensi
Windows BMP
Bitmap Format
Compuserve
Graphics GIFF
Interchange Format
Aldus Tagged Image TIF
File Format
Kegunaan
Format umum
menyimpan
bitmap
dikembangkan
Microsoft
untuk
citra
yang
oleh
Format umum citra
yang dirancang untuk
keperluan
transmisi
melalui modem
Format kompleks dan
multiguna
yang
dikembangkan
oleh
Aldus
bersama
Microsoft
Universitas Sumatera Utara
9
Tabel 2.1 Format file grafik bitmap (Ahmad, 2015) (lanjutan)
WordPerfect
Graphics WPG
Format
GEM Image Format
Format vektor yang juga
mendukung citra bitmap
IMG
Format bitmap yang
dikembangkan
untuk
riset digital di lingkungan
GEM
Zsoft Pengolahan Citra PCX
Dirancang
untuk
menyimpan citra layar
dan merupakan format
bitmap yang didukung
luas
Paintbrush Format
Microsoft Paint Bitmap MSP
Format
Secara fungsional mirip
dengan IMG dan PCX,
tapi kurang populer
AT & T Targa Format
TGA
Format untuk 16-bit dan
24-bit citra warna penuh
diciptakan untuk system
Truevision
Apple Macpaint Format
PNTG
Format
asli
dari
Macintosh
Macpaint
program
Sun Microsystem raster RAS
Format
X Windows X-11 Bitmap XBM
Format
Format bitmap asli yang
digunakan pada Sun
SPARCS
Format umum untuk
menyimpan citra bitmap
yang
dikembangkan
untuk X Windows
2. Format file vektor, format ini menyimpan elemen - elemen pembentuk citra
secara individu.
2.2 Steganografi
Steganografi adalah ilmu menyembunyikan teks pada media lain yang telah ada
sedemikian sehingga teks yang tersembunyi menyatu dengan media itu. Media tempat
penyembunyian pesan tersembunyi dapat berupa media teks, gambar, audio, atau
video. Steganografi yang kuat memiliki sifat media yang telah tertanam teks
Universitas Sumatera Utara
10
tersembunyi sulit dibedakan dengan media asli namun teks tersembunyi tetap dapat
diekstrasi (Sadikin, 2012). Gambar 2.4 memperlihatkan diagram penyisipan dan
ekstraksi pesan.
Gambar 2.4 Diagram penyisipan dan ekstraksi pesan (Munir, 2006)
2.2.1 Konsep Dan Terminologi
Menurut Munir (2006), terdapat beberapa istilah yang berkaitan dengan steganografi:
1. Hiddentext atau embedded message : pesan yang disembunyikan.
2. Covertext atau cover-object: pesan yang digunakan untuk menyembunyikan
embedded message.
3. Stegotext atau stego-object: pesan yang sudah berisi embedded message.
2.2.2 Kriteria Penyembunyian Pesan
Menurut Munir (2006), kriteria yang harus diperhatikan dalam penyembunyian pesan
adalah:
1. Imperceptibility. Keberadaan pesan rahasia tidak dapat dipersepsi oleh
inderawi. Misalnya, jika covertext berupa citra, maka penyisipan pesan
membuat citra stegotext sukar dibedakan oleh mata dengan citra covertext-nya.
Jika covertext berupa audio (misalnya berkas mp3, wav, midi, dan sebagainya),
maka indera telinga tidak dapat mendeteksi perubahan tersebut.
2. Fidelity. Mutu media penampung tidak berubah banyak akibat penyisipan.
Perubahan tersebut tidak dapat dipersepsi oleh inderawi. Misalnya, jika
covertext berupa citra, maka penyisipan pesan membuat citra stegotext sukar
Universitas Sumatera Utara
11
dibedakan oleh mata dengan covertext-nya. Jika covertext berupa audio
(misalnya berkas mp3, wav, midi, dan sebagainya), maka audio stegotext tidak
rusak dan indera telinga tidak dapat mendeteksi perubahan tersebut.
3. Recovery. Pesan yang disembunyikan harus dapat diungkapkan kembali
(reveal). Karena tujuan steganografi adalah data hiding, maka sewaktu-waktu
pesan rahasia di dalam stegotext harus dapat diambil kembali untuk digunakan
lebih lanjut.
2.2.3 Teknik steganografi
Menurut Ariyus (2009), terdapat tujuh teknik yang digunakan dalam steganografi:
1. Injection
Merupakan suatu teknik menanamkan pesan rahasia secara langsung ke suatu
media. Salah satu masalah dari teknik ini adalah ukuran media yang diinjeksi
menjadi lebih besar dari ukuran normalnya sehingga mudah dideteksi. Teknik
itu sering juga disebut Embedding.
2. Substitusi
Data normal digantikan dengan data rahasia. Biasanya, hasil teknik itu tidak
terlalu mengubah ukuran data asli, tetapi tergantung pada file media dan data
yang akan disembunyikan. Teknik substitusi bisa menurunkan kualitas media
yang ditumpanginya.
3. Transform Domain
Teknik
ini
sangat
efektif.
Pada
dasarnya,
transformasi
domain
menyembunyikan data pada “transform space”. Akan sangat lebih efektif bila
teknik ini diterapkan pada file berekstensi Jpeg (gambar).
4. Spread Spectrum
Sebuah teknik pentransmisian menggunakan pseudo-noise code, yang
independen terhadap data informasi sebagai modulator bentuk gelombang
untuk menyebarkan energi sinyal dalam sebuah jalur komunikasi (bandwidth)
yang lebih besar daripada sinyal jalur komunikasi informasi. Oleh penerima,
sinyal dikumpulkan kembali menggunakan replika pseudo-noise code
tersinkronisasi.
Universitas Sumatera Utara
12
5. Statistical Method
Teknik ini disebut juga skema steganographic 1 bit. Skema tersebut
menanamkan satu bit informasi pada media tumpangan dan mengubah statistik
walaupun hanya 1 bit. Perubahan statistik ditunjukkan dengan indikasi 1 dan
jika tidak ada perubahan, terlihat indikasi 0. Sistem ini bekerja berdasarkan
kemampuan penerima dalam membedakan antara informasi yang dimodifikasi
dan yang belum.
6. Distortion
Metode ini menciptakan perubahan atas benda yang ditumpangi oleh data
rahasia.
7. Cover Generation
Metode ini lebih unik daripada metode lainnya karena cover object dipilih
untuk menyembunyikan pesan. Contoh dari metode ini adalah Spam Mimic.
2.2.4 Metode LSB
LSB (Least Significant Bit) adalah suatu metode untuk menyimpan data ke cover
image. Bit dengan bobot terkecil dari setiap piksel suatu gambar diubah menjadi bit
dari pesan yang akan disembunyikan (Prashanti, 2013).
Misalkan
barisan
bit
dari
pesan
yang
akan
dimasukkan
adalah
“111111110000000011111111000” dan akan dimasukkan pada beberapa piksel seperti
pada gambar 2.5.
Universitas Sumatera Utara
13
Gambar 2.5 Contoh gambar yang akan disisipi pesan menggunakan metode LSB
Jika nilai - nilai pada setiap piksel tersebut diubah ke biner, maka hasilnya akan
seperti tabel 2.2.
Universitas Sumatera Utara
14
Tabel 2.2 Nilai - nilai piksel sebelum disisipi pesan
Desimal
Biner
252
223
175
252
224
176
252
224
176
11111100
11011111
10101111
11111100
11100000
10110000
11111100
11100000
10110000
253
221
172
253
221
172
253
221
172
11111101
11011101
10101100
11111101
11011101
10101100
11111101
11011101
10101100
251
219
170
251
219
170
251
219
170
11111011
11011011
10101010
11111011
11011011
10101010
11111011
11011011
10101010
Selanjutnya barisan bit “111111110000000011111111000” dimasukkan pada bit
terakhir dari setiap nilai -nilai pada piksel seperti yang ditunjukkan pada tabel 2.3.
Tabel 2.3 Nilai - nilai piksel setelah dimasukkan pesan dengan metode LSB
Desimal
Biner
253
223
175
253
225
177
253
225
176
11111101
11011111
10101111
11111101
11100001
10110001
11111101
11100001
10110000
252
220
172
252
220
172
252
221
173
11111100
11011100
10101100
11111100
11011100
10101100
11111100
11011101
10101101
251
219
171
251
219
171
250
218
170
11111011
11011011
10101011
11111011
11011011
10101011
11111010
11011010
10101010
Pada tabel 2.2 dan tabel 2.3, dapat dilihat bahwa perubahan yang terjadi sangat kecil
dan hal ini akan mengakibatkan pesan sulit terdeteksi secara kasat mata.
2.3 Kompresi Data
Proses kompresi merupakan proses mereduksi ukuran suatu data untuk menghasilkan
representasi digital yang padat atau mampat (compact) namun tetap dapat mewakili
Universitas Sumatera Utara
15
kuantitas informasi yang terkandung pada data tersebut. Pada citra, video, dan audio,
kompresi mengarah pada minimisasi jumlah bit rate untuk representasi digital. Pada
beberapa literatur, istilah kompresi sering disebut juga source coding, data
compression, bandwidth compression, dan signal compression (Putra, 2010).
2.3.1 Kompresi Lossless Dan Lossy
Menurut Al-Hashemi & Kamall (2011), komprei data terbagi menjadi 2 bagian:
1. Lossless compression, data bisa dikompresi dan dikembalikan ke keadaan
semula tanpa kehilangan informasi apapun.
2. Lossy compression, data yang didekompresi mungkin menjadi pendekatan
yang dapat diterima dari data asli yang belum terkompresi.
2.3.2 Kriteria Kompresi Citra
Menurut Sutoyo & Wijanarto (2009), kriteria yang digunakan untuk mengukur
pemampatan citra adalah :
1. Waktu kompresi dan waktu dekompresi, algorima pemampatan yang baik
adalah algoritma yang membutuhkan waktu untuk kompresi dan dekompresi
paling sedikit.
2. Kebutuhan memori, algoritma pemampatan yang baik akan menghasilkan
memori yang dibutuhkan untuk menyimpan hasil kompresi yang berkurang
secara berarti. Biasanya semakin besar persentase pemampatan, semakin kecil
kebutuhan memori yang diperlukan sehingga kualitas citra makin berkurang.
3. Kualitas pemampatan (fidelity), metode kompresi yang baik adalah metode
kompresi yang mampu mengembalikan citra hasil kompresi menjadi citra
semula tanpa kehilangan informasi apa pun.
4. Format keluaran, format citra hasil pemampatan yang baik adalah yang cocok
dengan kebutuhan pengiriman dan penyimpanan data.
2.3.3 Redudansi Data
Menurut Sutoyo & Wijanarto (2009), ada 3 jenis redudansi data dalam masalah
kompresi citra, yaitu :
Universitas Sumatera Utara
16
1. Coding Redudancy adalah cara pengkodean citra sedemikian sehingga jumlah
kode yang diberikan untuk menampilkan suatu grayscale melebihi dari apa
yang dibutuhkan.
2. Interpixel Redudancy sering disebut juga sebagai spatial redudancy, geometric
redudancy atau interframe redudancy, Maksud dari interpixel redudancy
adalah data redudan dapat dinyatakan sebagai korelasi antarpiksel di mana
intensitas suatu piksel dapat diperkirakan dari intensitas piksel-piksel
tetangganya. Biasanya informasi yang dibawa oleh setiap piksel relatif kecil
sehingga bisa dikatakan bahwa kontribusi setiap piksel pada citra secara
keseluruhan adalah redudan.
3. Psychovisual Redudancy adalah suatu fenomena dengan intensitas keabuan
yang bervariasi dilihat oleh mata sebagai intensitas konstan, yang bila
dihilangkan tidak mengganggu persepsi kualitas citra. Dalam hal ini, mata
tidak melihat nilai dari setiap piksel pada suatu cita secara kuantitatif.
2.3.4 Pengukuran Kinerja Kompresi Data
Pada suatu teknik yang digunakan dalam proses kompresi data terdapat beberapa
faktor atau variabel yang biasa digunakan untuk mengukur kualitas dari suatu teknik
kompresi data tersebut, yaitu :
1. Ratio of compression (Rc)
Ratio of compression (Rc) adalah perbandingan antara ukuran data sebelum
dikompresi dengan ukuran data setelah dikompresi.
(Salomon & Motta, 2010)
Misalkan didapat sebuah nilai Ratio of Compression sebesar 2.75. Itu berarti
besar data sebelum kompresi adalah 2.75 kali lipat dari besar data setelah
dikompresi.
2. Compression ratio (Cr)
Compression ratio (Cr) adalah persentasi besar data yang telah dikompresi
yang didapat dari hasil perbandingan antara ukuran data setelah dikompresi
dengan ukuran data sebelum dikompresi.
(Salomon & Motta, 2010)
Universitas Sumatera Utara
17
Misalkan didapat sebuah nilai Compression Ratio sebesar 35%. Itu berarti
setelah dikompresi ukuran data adalah 35% dari data sebelum dikompresi.
3. Redundancy (Rd)
Redundancy (Rd) adalah kelebihan yang terdapat di dalam data sebelum
dikompresi. Jadi setelah data dikompresi dapat dihitung Redundancy data yaitu
persentasi dari hasil selisih antara ukuran data sebelum dikompresi dengan
data setelah dikompresi.
(Salomon & Motta, 2010)
Misalkan didapat sebuah nilai Redundancy sebesar 14%. Itu berarti besarnya
kelebihan data sebelum dikompresi adalah 14%.
4. Space savings (Ss)
Space savings (Ss) adalah persentase selisih antara data yang belum
dikompresi dengan besar data yang dikompresi
(Salomon & Motta, 2010)
5. Waktu Kompresi dan Dekompresi
Waktu kompresi dan dekompresi adalah waktu yang dibutuhkan oleh sebuah
sistem untuk melakukan proses kompresi dan dekompresi dari mulai
pembacaan data hingga proses encoding pada data tersebut. Semakin kecil
waktu yang diperoleh maka semakin efisien metode yang digunakan dalam
proses kompresi dan dekompresi itu.
2.3.5 Algoritma Huffman
Menurut Putra (2010), metode Huffman adalah metode pengkodean yang telah banyak
diterapkan untuk aplikasi kompresi citra. Seperti metode Shannon-Fano, metode
Huffman juga membentuk pohon atas dasar probabilitas setiap simbol, namun teknik
pembentukan pohonnya berbeda. Berikut ini adalah langkah - langkah algoritma
Huffman.
1. Data dianalisis dahulu dengan cara membuat frekuensi kemunculan setiap
simbol ASCII, tabel frekuensi tersebut memiliki atribut berupa simbol ASCII
dan frekuensi.
2. Dua data yang memiliki frekuensi kemunculan paling kecil dipilih sebagai
simpul pertama pada pohon Huffman.
3. Dari dua simpul ini dibuat simpul induk yang mencatat jumlah frekuensi dua
Universitas Sumatera Utara
18
simpul pertama.
4. Kemudian dua simpul tersebut dihapus dari tabel digantikan oleh simpul induk
tadi. Simpul ini kemudian dijadikan acuan untuk membentuk pohon.
5. Langkah 3-5 dilakukan berulang - ulang hingga isi tabel tinggal satu saja. Data
inilah yang akan menjadi simpul bebas atau simpul akar.
6. Setiap simpul yang terletak pada cabang kiri (simpul dengan frekuensi lebih
besar) diberi nilai 0 dan simpul yang terletak pada cabang kanan (simpul
dengan frekuensi lebih kecil) diberi nilai 1.
7. Pembacaan dilakukan dari simpul akar ke arah simpul daun dengan
memperhatikan nilai setiap cabang.
Berikut adalah contoh implementasi algoritma Huffman dengan menggunakan
tabel 2.4.
Tabel 2.4. Frekuensi dari data - data dari gambar 2.5
Data
Frekuensi
170
1
173
1
175
1
176
1
177
1
218
1
221
1
223
1
250
1
171
2
172
2
219
2
220
2
225
2
Universitas Sumatera Utara
19
251
2
252
3
253
3
Dengan menggunakan langkah - langkah yang telah diuraikan di atas, maka bisa
didapatkan pohon seperti pada gambar 2.6.
Gambar 2.6 Pohon Huffman dari tabel 2.4
Berdasarkan gambar 2.6, maka hasil proses pengkodean Huffman bisa dilihat pada
tabel 2.5.
Tabel 2.5 Hasil Proses Pengkodean Huffman
Data
Frekuensi
Kode
Jumlah bit kode
Total bit
170
1
10000
5
5
173
1
10001
5
5
175
1
10010
5
5
176
1
10011
5
5
177
1
10100
5
5
218
1
10101
5
5
221
1
10110
5
5
223
1
10111
5
5
250
1
0100
4
4
171
2
0101
4
8
Universitas Sumatera Utara
20
172
2
1100
4
8
219
2
1101
4
8
220
2
1110
4
8
225
2
1111
4
8
251
2
000
3
6
252
3
001
3
9
253
3
011
3
9
Total
27
108
Setelah mengamati hasil pengkodean Huffman di atas, maka dapat dilihat bahwa
jumlah total bit adalah 108 bit. Sebelum dilakukan pengkodean, total bit dari data
adalah 27 x 8 bit = 216 bit. Ratio of Compression (Rc) = 2. Compression Ratio (Cr) =
50%. Redundancy (Rd) = 50%. Space savings (Ss) = 50%.
2.4 Penelitian Kuantitatif
Menurut Abdullah (2015), penelitian kuantitatif adalah penelitian yang menguanakan
data kuantitatif yaitu data yang berupa angka atau bilangan.
Contoh penelitian kuantitatif
(i) Penelitian untuk mengetahui laju pertumbuhan penduduk di Pedesaan Provinsi
Kalimantan Selatan selama 10 tahun (2005 - 2015).
(ii) Penelitian untuk mengetahui laju pertumbuhan industri di kota Banjarmasin
selama 5 tahun (2011 - 2015).
2.4.1 Pengukuran Indeks
Menurut Prasetyo, B & Jannah, L.M. (2005), indeks dan skala biasanya digunakan
jika variabel - variabel yang ada termasuk dalam variabel ordinal. Dibandingkan
dengan skala, indeks lebih sering digunakan karena lebih mudah digunakan. Indeks
dibuat dari akumulasi nilai - nilai yang diberikan pada atribut - atribut individual,
tanpa melihat ada tidaknya bobot. Jadi setiap pertanyaan dianggap memiliki nilai yang
sama.
Ada dua jenis pengukuran indeks, yaitu sebagai berikut.
Universitas Sumatera Utara
21
1. Skala Likert
Skala Likert berisi pernyataan yang sistematis untuk menunjukkan sikap
seorang responden terhadap pernyataan itu. Indeks ini mengasumsikan bahwa
masing - masing kategori jawaban ini memiliki intensitas yang sama.
Keunggulan indeks ini adalah kategorinya memiliki urutan yang jelas mulai
dari “sangat setuju”, “setuju”, “ragu-ragu”, “tidak setuju”, “sangat tidak
setuju”.
2. Perbedaan Semantik
Indeks ini meminta responden untuk memilih antara dua pilihan yang
bertentangan. Hal yang perlu ditentukan adalah dimensi - dimensi dari variabel
yang diteliti, kemudian memilih dua istilah yang bertentangan yang
mencerminkan dimensi - dimensi tersebut. Kata - kata yang digunakan adalah
kata sifat karena lebih mudah dikomunikasikan. Indeks ini dipergunakan untuk
banyak tujuan, misalnya di Penelitian Pemasaran digunakan untuk meneliti
perasaan konsumen tentang suatu produk; di Penelitian Politik dapat
digunakan untuk meneliti pendapat masyarakat tentang kandidat presiden, dan
sebagainya. Responden hanya perlu memberikan tanda di atas garis untuk
jawaban yang dipilihnya. Hasil jawaban responden dari setiap kategori ini
yang kemudian digabungkan.
2.4.2 Kuesioner
Menurut Abdullah (2015), kuesioner (angket) adalah cara pengumpulan data dengan
menyebarkan daftar pertanyaan kepada responden, dengan harapan mereka akan
memberikan respon atas daftar pertanyaan tersebut. Daftar pertanyaan dapat bersifat
terbuka, jika opsi jawaban tidak ditentukan sebelumnya, dan bersifat tertutup jika opsi
jawaban telah disediakan sebelumnya
Universitas Sumatera Utara
LANDASAN TEORI
2.1
Citra
Citra atau gambar dapat didefinisikan sebagai sebuah fungsi dua dimensi, f(x,y), di
mana x dan y adalah koordinat bidang datar, dan harga fungsi f di setiap pasangan
koordinat (x,y) disebut intensitas atau level keabuan (grey level) dari gambar di titik
itu. Jika x,y dan f semuanya berhingga (finite), dan nilainya diskrit, maka gambarnya
disebut citra digital (gambar digital) (Hermawati, 2013).
2.1.1 Jenis Citra Digital
Menurut Sutoyo & Wijanarto (2009), ada 3 jenis citra digital yang sering digunakan,
yaitu :
1. Citra Biner (Monokrom), citra ini mempunyai 2 warna saja, yaitu hitam dan
putih dan membutuhkan 1 bit di memori untuk menyimpan kedua warna
tersebut. Bit 0 mewakili warna hitam dan bit 1 mewakili warna putih. Contoh
citra biner dapat dilihat pada gambar 2.1.
Gambar 2.1 Contoh citra biner
Universitas Sumatera Utara
7
2. Citra Grayscale (Skala Keabuan), banyaknya warna pada citra ini tergantung
pada jumlah bit yang disediakan di memori untuk menampung kebutuhan
warna tersebut. Citra 2 bit mewakili 4 warna dan citra 3 bit mewakili 8 warna.
Semakin besar jumlah bit warna yang disediakan di memori, semakin halus
gradiasi warna yang terbentuk. Contoh citra grayscale dapat dilihat pada
gambar 2.2.
Gambar 2.2 Contoh citra grayscale
3. Citra Warna (True Color), setiap piksel pada citra warna mewakili warna yang
merupakan kombinasi dari tiga warna dasar (RGB = Red Greem Blue). Setiap
warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap
warna mempunyai gradiasi sebanyak 255 warna. Berarti setiap piksel
mempunyai kombinasi warna sebanyak 28 .28 .28 = 16 juta warna lebih. Format
ini dinamakan true color karena mempunyai jumlah warna yang cukup besar
sehingga bisa dikatakan hampir mencakup semua warna di alam. Contoh citra
warna dapat dilihat pada gambar 2.3.
Universitas Sumatera Utara
8
Gambar 2.3 Contoh citra warna
2.1.2 Format File Citra
Menurut Ahmad (2005), ada dua kategori besar untuk format file citra yaitu :
1. Format file bitmap, format ini menyimpan data kode citra secara digital dan
lengkap. Format citra bitmap yang umum digunakan dalam pengolah citra
dapat dilihat pada tabel 2.1.
Tabel 2.1 Format file grafik bitmap (Ahmad, 2015)
Nama Format
Microsoft
Ekstensi
Windows BMP
Bitmap Format
Compuserve
Graphics GIFF
Interchange Format
Aldus Tagged Image TIF
File Format
Kegunaan
Format umum
menyimpan
bitmap
dikembangkan
Microsoft
untuk
citra
yang
oleh
Format umum citra
yang dirancang untuk
keperluan
transmisi
melalui modem
Format kompleks dan
multiguna
yang
dikembangkan
oleh
Aldus
bersama
Microsoft
Universitas Sumatera Utara
9
Tabel 2.1 Format file grafik bitmap (Ahmad, 2015) (lanjutan)
WordPerfect
Graphics WPG
Format
GEM Image Format
Format vektor yang juga
mendukung citra bitmap
IMG
Format bitmap yang
dikembangkan
untuk
riset digital di lingkungan
GEM
Zsoft Pengolahan Citra PCX
Dirancang
untuk
menyimpan citra layar
dan merupakan format
bitmap yang didukung
luas
Paintbrush Format
Microsoft Paint Bitmap MSP
Format
Secara fungsional mirip
dengan IMG dan PCX,
tapi kurang populer
AT & T Targa Format
TGA
Format untuk 16-bit dan
24-bit citra warna penuh
diciptakan untuk system
Truevision
Apple Macpaint Format
PNTG
Format
asli
dari
Macintosh
Macpaint
program
Sun Microsystem raster RAS
Format
X Windows X-11 Bitmap XBM
Format
Format bitmap asli yang
digunakan pada Sun
SPARCS
Format umum untuk
menyimpan citra bitmap
yang
dikembangkan
untuk X Windows
2. Format file vektor, format ini menyimpan elemen - elemen pembentuk citra
secara individu.
2.2 Steganografi
Steganografi adalah ilmu menyembunyikan teks pada media lain yang telah ada
sedemikian sehingga teks yang tersembunyi menyatu dengan media itu. Media tempat
penyembunyian pesan tersembunyi dapat berupa media teks, gambar, audio, atau
video. Steganografi yang kuat memiliki sifat media yang telah tertanam teks
Universitas Sumatera Utara
10
tersembunyi sulit dibedakan dengan media asli namun teks tersembunyi tetap dapat
diekstrasi (Sadikin, 2012). Gambar 2.4 memperlihatkan diagram penyisipan dan
ekstraksi pesan.
Gambar 2.4 Diagram penyisipan dan ekstraksi pesan (Munir, 2006)
2.2.1 Konsep Dan Terminologi
Menurut Munir (2006), terdapat beberapa istilah yang berkaitan dengan steganografi:
1. Hiddentext atau embedded message : pesan yang disembunyikan.
2. Covertext atau cover-object: pesan yang digunakan untuk menyembunyikan
embedded message.
3. Stegotext atau stego-object: pesan yang sudah berisi embedded message.
2.2.2 Kriteria Penyembunyian Pesan
Menurut Munir (2006), kriteria yang harus diperhatikan dalam penyembunyian pesan
adalah:
1. Imperceptibility. Keberadaan pesan rahasia tidak dapat dipersepsi oleh
inderawi. Misalnya, jika covertext berupa citra, maka penyisipan pesan
membuat citra stegotext sukar dibedakan oleh mata dengan citra covertext-nya.
Jika covertext berupa audio (misalnya berkas mp3, wav, midi, dan sebagainya),
maka indera telinga tidak dapat mendeteksi perubahan tersebut.
2. Fidelity. Mutu media penampung tidak berubah banyak akibat penyisipan.
Perubahan tersebut tidak dapat dipersepsi oleh inderawi. Misalnya, jika
covertext berupa citra, maka penyisipan pesan membuat citra stegotext sukar
Universitas Sumatera Utara
11
dibedakan oleh mata dengan covertext-nya. Jika covertext berupa audio
(misalnya berkas mp3, wav, midi, dan sebagainya), maka audio stegotext tidak
rusak dan indera telinga tidak dapat mendeteksi perubahan tersebut.
3. Recovery. Pesan yang disembunyikan harus dapat diungkapkan kembali
(reveal). Karena tujuan steganografi adalah data hiding, maka sewaktu-waktu
pesan rahasia di dalam stegotext harus dapat diambil kembali untuk digunakan
lebih lanjut.
2.2.3 Teknik steganografi
Menurut Ariyus (2009), terdapat tujuh teknik yang digunakan dalam steganografi:
1. Injection
Merupakan suatu teknik menanamkan pesan rahasia secara langsung ke suatu
media. Salah satu masalah dari teknik ini adalah ukuran media yang diinjeksi
menjadi lebih besar dari ukuran normalnya sehingga mudah dideteksi. Teknik
itu sering juga disebut Embedding.
2. Substitusi
Data normal digantikan dengan data rahasia. Biasanya, hasil teknik itu tidak
terlalu mengubah ukuran data asli, tetapi tergantung pada file media dan data
yang akan disembunyikan. Teknik substitusi bisa menurunkan kualitas media
yang ditumpanginya.
3. Transform Domain
Teknik
ini
sangat
efektif.
Pada
dasarnya,
transformasi
domain
menyembunyikan data pada “transform space”. Akan sangat lebih efektif bila
teknik ini diterapkan pada file berekstensi Jpeg (gambar).
4. Spread Spectrum
Sebuah teknik pentransmisian menggunakan pseudo-noise code, yang
independen terhadap data informasi sebagai modulator bentuk gelombang
untuk menyebarkan energi sinyal dalam sebuah jalur komunikasi (bandwidth)
yang lebih besar daripada sinyal jalur komunikasi informasi. Oleh penerima,
sinyal dikumpulkan kembali menggunakan replika pseudo-noise code
tersinkronisasi.
Universitas Sumatera Utara
12
5. Statistical Method
Teknik ini disebut juga skema steganographic 1 bit. Skema tersebut
menanamkan satu bit informasi pada media tumpangan dan mengubah statistik
walaupun hanya 1 bit. Perubahan statistik ditunjukkan dengan indikasi 1 dan
jika tidak ada perubahan, terlihat indikasi 0. Sistem ini bekerja berdasarkan
kemampuan penerima dalam membedakan antara informasi yang dimodifikasi
dan yang belum.
6. Distortion
Metode ini menciptakan perubahan atas benda yang ditumpangi oleh data
rahasia.
7. Cover Generation
Metode ini lebih unik daripada metode lainnya karena cover object dipilih
untuk menyembunyikan pesan. Contoh dari metode ini adalah Spam Mimic.
2.2.4 Metode LSB
LSB (Least Significant Bit) adalah suatu metode untuk menyimpan data ke cover
image. Bit dengan bobot terkecil dari setiap piksel suatu gambar diubah menjadi bit
dari pesan yang akan disembunyikan (Prashanti, 2013).
Misalkan
barisan
bit
dari
pesan
yang
akan
dimasukkan
adalah
“111111110000000011111111000” dan akan dimasukkan pada beberapa piksel seperti
pada gambar 2.5.
Universitas Sumatera Utara
13
Gambar 2.5 Contoh gambar yang akan disisipi pesan menggunakan metode LSB
Jika nilai - nilai pada setiap piksel tersebut diubah ke biner, maka hasilnya akan
seperti tabel 2.2.
Universitas Sumatera Utara
14
Tabel 2.2 Nilai - nilai piksel sebelum disisipi pesan
Desimal
Biner
252
223
175
252
224
176
252
224
176
11111100
11011111
10101111
11111100
11100000
10110000
11111100
11100000
10110000
253
221
172
253
221
172
253
221
172
11111101
11011101
10101100
11111101
11011101
10101100
11111101
11011101
10101100
251
219
170
251
219
170
251
219
170
11111011
11011011
10101010
11111011
11011011
10101010
11111011
11011011
10101010
Selanjutnya barisan bit “111111110000000011111111000” dimasukkan pada bit
terakhir dari setiap nilai -nilai pada piksel seperti yang ditunjukkan pada tabel 2.3.
Tabel 2.3 Nilai - nilai piksel setelah dimasukkan pesan dengan metode LSB
Desimal
Biner
253
223
175
253
225
177
253
225
176
11111101
11011111
10101111
11111101
11100001
10110001
11111101
11100001
10110000
252
220
172
252
220
172
252
221
173
11111100
11011100
10101100
11111100
11011100
10101100
11111100
11011101
10101101
251
219
171
251
219
171
250
218
170
11111011
11011011
10101011
11111011
11011011
10101011
11111010
11011010
10101010
Pada tabel 2.2 dan tabel 2.3, dapat dilihat bahwa perubahan yang terjadi sangat kecil
dan hal ini akan mengakibatkan pesan sulit terdeteksi secara kasat mata.
2.3 Kompresi Data
Proses kompresi merupakan proses mereduksi ukuran suatu data untuk menghasilkan
representasi digital yang padat atau mampat (compact) namun tetap dapat mewakili
Universitas Sumatera Utara
15
kuantitas informasi yang terkandung pada data tersebut. Pada citra, video, dan audio,
kompresi mengarah pada minimisasi jumlah bit rate untuk representasi digital. Pada
beberapa literatur, istilah kompresi sering disebut juga source coding, data
compression, bandwidth compression, dan signal compression (Putra, 2010).
2.3.1 Kompresi Lossless Dan Lossy
Menurut Al-Hashemi & Kamall (2011), komprei data terbagi menjadi 2 bagian:
1. Lossless compression, data bisa dikompresi dan dikembalikan ke keadaan
semula tanpa kehilangan informasi apapun.
2. Lossy compression, data yang didekompresi mungkin menjadi pendekatan
yang dapat diterima dari data asli yang belum terkompresi.
2.3.2 Kriteria Kompresi Citra
Menurut Sutoyo & Wijanarto (2009), kriteria yang digunakan untuk mengukur
pemampatan citra adalah :
1. Waktu kompresi dan waktu dekompresi, algorima pemampatan yang baik
adalah algoritma yang membutuhkan waktu untuk kompresi dan dekompresi
paling sedikit.
2. Kebutuhan memori, algoritma pemampatan yang baik akan menghasilkan
memori yang dibutuhkan untuk menyimpan hasil kompresi yang berkurang
secara berarti. Biasanya semakin besar persentase pemampatan, semakin kecil
kebutuhan memori yang diperlukan sehingga kualitas citra makin berkurang.
3. Kualitas pemampatan (fidelity), metode kompresi yang baik adalah metode
kompresi yang mampu mengembalikan citra hasil kompresi menjadi citra
semula tanpa kehilangan informasi apa pun.
4. Format keluaran, format citra hasil pemampatan yang baik adalah yang cocok
dengan kebutuhan pengiriman dan penyimpanan data.
2.3.3 Redudansi Data
Menurut Sutoyo & Wijanarto (2009), ada 3 jenis redudansi data dalam masalah
kompresi citra, yaitu :
Universitas Sumatera Utara
16
1. Coding Redudancy adalah cara pengkodean citra sedemikian sehingga jumlah
kode yang diberikan untuk menampilkan suatu grayscale melebihi dari apa
yang dibutuhkan.
2. Interpixel Redudancy sering disebut juga sebagai spatial redudancy, geometric
redudancy atau interframe redudancy, Maksud dari interpixel redudancy
adalah data redudan dapat dinyatakan sebagai korelasi antarpiksel di mana
intensitas suatu piksel dapat diperkirakan dari intensitas piksel-piksel
tetangganya. Biasanya informasi yang dibawa oleh setiap piksel relatif kecil
sehingga bisa dikatakan bahwa kontribusi setiap piksel pada citra secara
keseluruhan adalah redudan.
3. Psychovisual Redudancy adalah suatu fenomena dengan intensitas keabuan
yang bervariasi dilihat oleh mata sebagai intensitas konstan, yang bila
dihilangkan tidak mengganggu persepsi kualitas citra. Dalam hal ini, mata
tidak melihat nilai dari setiap piksel pada suatu cita secara kuantitatif.
2.3.4 Pengukuran Kinerja Kompresi Data
Pada suatu teknik yang digunakan dalam proses kompresi data terdapat beberapa
faktor atau variabel yang biasa digunakan untuk mengukur kualitas dari suatu teknik
kompresi data tersebut, yaitu :
1. Ratio of compression (Rc)
Ratio of compression (Rc) adalah perbandingan antara ukuran data sebelum
dikompresi dengan ukuran data setelah dikompresi.
(Salomon & Motta, 2010)
Misalkan didapat sebuah nilai Ratio of Compression sebesar 2.75. Itu berarti
besar data sebelum kompresi adalah 2.75 kali lipat dari besar data setelah
dikompresi.
2. Compression ratio (Cr)
Compression ratio (Cr) adalah persentasi besar data yang telah dikompresi
yang didapat dari hasil perbandingan antara ukuran data setelah dikompresi
dengan ukuran data sebelum dikompresi.
(Salomon & Motta, 2010)
Universitas Sumatera Utara
17
Misalkan didapat sebuah nilai Compression Ratio sebesar 35%. Itu berarti
setelah dikompresi ukuran data adalah 35% dari data sebelum dikompresi.
3. Redundancy (Rd)
Redundancy (Rd) adalah kelebihan yang terdapat di dalam data sebelum
dikompresi. Jadi setelah data dikompresi dapat dihitung Redundancy data yaitu
persentasi dari hasil selisih antara ukuran data sebelum dikompresi dengan
data setelah dikompresi.
(Salomon & Motta, 2010)
Misalkan didapat sebuah nilai Redundancy sebesar 14%. Itu berarti besarnya
kelebihan data sebelum dikompresi adalah 14%.
4. Space savings (Ss)
Space savings (Ss) adalah persentase selisih antara data yang belum
dikompresi dengan besar data yang dikompresi
(Salomon & Motta, 2010)
5. Waktu Kompresi dan Dekompresi
Waktu kompresi dan dekompresi adalah waktu yang dibutuhkan oleh sebuah
sistem untuk melakukan proses kompresi dan dekompresi dari mulai
pembacaan data hingga proses encoding pada data tersebut. Semakin kecil
waktu yang diperoleh maka semakin efisien metode yang digunakan dalam
proses kompresi dan dekompresi itu.
2.3.5 Algoritma Huffman
Menurut Putra (2010), metode Huffman adalah metode pengkodean yang telah banyak
diterapkan untuk aplikasi kompresi citra. Seperti metode Shannon-Fano, metode
Huffman juga membentuk pohon atas dasar probabilitas setiap simbol, namun teknik
pembentukan pohonnya berbeda. Berikut ini adalah langkah - langkah algoritma
Huffman.
1. Data dianalisis dahulu dengan cara membuat frekuensi kemunculan setiap
simbol ASCII, tabel frekuensi tersebut memiliki atribut berupa simbol ASCII
dan frekuensi.
2. Dua data yang memiliki frekuensi kemunculan paling kecil dipilih sebagai
simpul pertama pada pohon Huffman.
3. Dari dua simpul ini dibuat simpul induk yang mencatat jumlah frekuensi dua
Universitas Sumatera Utara
18
simpul pertama.
4. Kemudian dua simpul tersebut dihapus dari tabel digantikan oleh simpul induk
tadi. Simpul ini kemudian dijadikan acuan untuk membentuk pohon.
5. Langkah 3-5 dilakukan berulang - ulang hingga isi tabel tinggal satu saja. Data
inilah yang akan menjadi simpul bebas atau simpul akar.
6. Setiap simpul yang terletak pada cabang kiri (simpul dengan frekuensi lebih
besar) diberi nilai 0 dan simpul yang terletak pada cabang kanan (simpul
dengan frekuensi lebih kecil) diberi nilai 1.
7. Pembacaan dilakukan dari simpul akar ke arah simpul daun dengan
memperhatikan nilai setiap cabang.
Berikut adalah contoh implementasi algoritma Huffman dengan menggunakan
tabel 2.4.
Tabel 2.4. Frekuensi dari data - data dari gambar 2.5
Data
Frekuensi
170
1
173
1
175
1
176
1
177
1
218
1
221
1
223
1
250
1
171
2
172
2
219
2
220
2
225
2
Universitas Sumatera Utara
19
251
2
252
3
253
3
Dengan menggunakan langkah - langkah yang telah diuraikan di atas, maka bisa
didapatkan pohon seperti pada gambar 2.6.
Gambar 2.6 Pohon Huffman dari tabel 2.4
Berdasarkan gambar 2.6, maka hasil proses pengkodean Huffman bisa dilihat pada
tabel 2.5.
Tabel 2.5 Hasil Proses Pengkodean Huffman
Data
Frekuensi
Kode
Jumlah bit kode
Total bit
170
1
10000
5
5
173
1
10001
5
5
175
1
10010
5
5
176
1
10011
5
5
177
1
10100
5
5
218
1
10101
5
5
221
1
10110
5
5
223
1
10111
5
5
250
1
0100
4
4
171
2
0101
4
8
Universitas Sumatera Utara
20
172
2
1100
4
8
219
2
1101
4
8
220
2
1110
4
8
225
2
1111
4
8
251
2
000
3
6
252
3
001
3
9
253
3
011
3
9
Total
27
108
Setelah mengamati hasil pengkodean Huffman di atas, maka dapat dilihat bahwa
jumlah total bit adalah 108 bit. Sebelum dilakukan pengkodean, total bit dari data
adalah 27 x 8 bit = 216 bit. Ratio of Compression (Rc) = 2. Compression Ratio (Cr) =
50%. Redundancy (Rd) = 50%. Space savings (Ss) = 50%.
2.4 Penelitian Kuantitatif
Menurut Abdullah (2015), penelitian kuantitatif adalah penelitian yang menguanakan
data kuantitatif yaitu data yang berupa angka atau bilangan.
Contoh penelitian kuantitatif
(i) Penelitian untuk mengetahui laju pertumbuhan penduduk di Pedesaan Provinsi
Kalimantan Selatan selama 10 tahun (2005 - 2015).
(ii) Penelitian untuk mengetahui laju pertumbuhan industri di kota Banjarmasin
selama 5 tahun (2011 - 2015).
2.4.1 Pengukuran Indeks
Menurut Prasetyo, B & Jannah, L.M. (2005), indeks dan skala biasanya digunakan
jika variabel - variabel yang ada termasuk dalam variabel ordinal. Dibandingkan
dengan skala, indeks lebih sering digunakan karena lebih mudah digunakan. Indeks
dibuat dari akumulasi nilai - nilai yang diberikan pada atribut - atribut individual,
tanpa melihat ada tidaknya bobot. Jadi setiap pertanyaan dianggap memiliki nilai yang
sama.
Ada dua jenis pengukuran indeks, yaitu sebagai berikut.
Universitas Sumatera Utara
21
1. Skala Likert
Skala Likert berisi pernyataan yang sistematis untuk menunjukkan sikap
seorang responden terhadap pernyataan itu. Indeks ini mengasumsikan bahwa
masing - masing kategori jawaban ini memiliki intensitas yang sama.
Keunggulan indeks ini adalah kategorinya memiliki urutan yang jelas mulai
dari “sangat setuju”, “setuju”, “ragu-ragu”, “tidak setuju”, “sangat tidak
setuju”.
2. Perbedaan Semantik
Indeks ini meminta responden untuk memilih antara dua pilihan yang
bertentangan. Hal yang perlu ditentukan adalah dimensi - dimensi dari variabel
yang diteliti, kemudian memilih dua istilah yang bertentangan yang
mencerminkan dimensi - dimensi tersebut. Kata - kata yang digunakan adalah
kata sifat karena lebih mudah dikomunikasikan. Indeks ini dipergunakan untuk
banyak tujuan, misalnya di Penelitian Pemasaran digunakan untuk meneliti
perasaan konsumen tentang suatu produk; di Penelitian Politik dapat
digunakan untuk meneliti pendapat masyarakat tentang kandidat presiden, dan
sebagainya. Responden hanya perlu memberikan tanda di atas garis untuk
jawaban yang dipilihnya. Hasil jawaban responden dari setiap kategori ini
yang kemudian digabungkan.
2.4.2 Kuesioner
Menurut Abdullah (2015), kuesioner (angket) adalah cara pengumpulan data dengan
menyebarkan daftar pertanyaan kepada responden, dengan harapan mereka akan
memberikan respon atas daftar pertanyaan tersebut. Daftar pertanyaan dapat bersifat
terbuka, jika opsi jawaban tidak ditentukan sebelumnya, dan bersifat tertutup jika opsi
jawaban telah disediakan sebelumnya
Universitas Sumatera Utara