BAB 2 TINJAUAN PUSTAKA - Analisis Citra Berformat JPEG Hasil Olahan dari Citra Original Berdasarkan Metode Matching Block dan Deteksi Tepi Block JPEG Terkompresi
BAB 2 TINJAUAN PUSTAKA
2.1. Gambar Digital
umumnya direpresentasikan dalam bentuk matriks dimensi dua (2D) yang isinya berupa kumpulan nilai intensitas dari pixel (picture element/piksel) gambar. Piksel bisa dikatakan sebagai informasi warna pada titik kordinat suatu matriks fungsi f(x,y) dan merupakan suatu unit terkecil pada gambar.
Apabila diasumsikan bahwa sebuah gambar digital adalah berupa kumpulan angka sebagai representasi nilai intensitas L dan terletak pada bidang empat persegi panjang dengan dimensi lebar M dan dimensi tinggi N untuk suatu fungsi f(x,y) yang merupakan matriks dari gambar digital maka gambar digital dapat dinyatakan sebagai fungsi:
f ( , ) f ( 1, ) ... f ( , M − 1 ) f ( ,1 ) f ( 1 1, ) ... f ( ,1 M − 1 )
……………...……………(2.1)
f x y = ( , ) ... ... ... ...
f N − f N − f N − M − ( ,1 ) ( 1 1, ) ( ,1 1 )
dimana: ≤ x ≤ M
f ( x , y ) ≤ y ≤ N
≤ f ≤ L
Koordinat f(x,y) gambar digital seperti terlihat pada Persamaan (2.1) dimulai dari kiri atas bergeser kekanan setiap baris dan berakhir pada kanan bawah atau dengan kata lain titik awal f(0,0) terletak pada kiri atas dan titik akhir f(N-1,M-1) terletak pada kanan bawah [13]. kedalaman bit. Kedalaman bit adalah jumlah bit yang digunakan untuk menyimpan satu pixel. Kedalaman bit yang besar dari gambar adalah besar jumlah nada atau warna yang dapat diwakili. Sebuah gambar biner adalah yang diwakili oleh satu bit dengan nilai bit '0’ 'untuk hitam dan '1' untuk putih. Sebuah gambar grayscale adalah terdiri dari pixel diwakili oleh berbagai bit informasi biasanya berkisar antara 2 sampai 8 bit atau lebih dan gambar warna biasanya diwakili oleh kedalaman bit mulai dari 8 sampai 24 atau lebih tinggi [4].
Piksel bisa dikatakan sebagai informasi warna pada titik kordinat suatu matriks fungsi f(x,y) dan merupakan suatu unit terkecil pada gambar.
Gambar digital mempunyai struktur yang dinyatakan dalam format file. Pada dasarnya format file adalah teknik kompresi file yang dikodekan untuk keperluan penyimpanan dan pertukaran data sehingga bisa mereduksi ukuran file dan meminimalkan penggunaan bandwidth. Kedalaman bit adalah jumlah bit yang digunakan untuk menyimpan satu pixel. Kedalaman bit yang besar dari gambar adalah besar jumlah nada atau warna yang dapat diwakili Berdasarkan dari format file, gambar digital dapat dibedakan berdasarkan jenis formatnya misalnya seperti JPEG, PNG, BMP, GIF, dll. Secara umum tipe gambar digital dapat dibedakan atas [14]: 1.
Binary image (gambar biner).
Gambar biner adalah jenis gambar yang hanya berisi informasi warna hitam atau putih saja berarti setiap piksel pada citra gambar diwakili oleh nilai
2. Grayscale image (gambar abu-abu).
Gambar abu-abu merupakan informasi lebih detail dari gambar biner dengan menunjukkan tingkat kecerahan (level brightness), sebuah gambar
grayscale
mengandung tingkat kecerahan dari warna putih dan dari warna hitam. Jumlah level tergantung pada kedalaman bit yang digunakan untuk menyimpan level brightness untuk kedalaman n bit maka level brightness
n
adalah 2 level. Umumnya tingkat kedalaman bit yang digunakan adalah 8 sehingga sebuah gambar grayscale bisa mengandung 256 tingkat kecerahan.
3. Color image (gambar berwarna).
Gambar berwarna adalah merupakan informasi dari kecerahan masing- masing dari tiga warna dasar RGB tingkat kecerahan mengontrol intensitas warna merah (R), hijau (G), dan biru (B) yang digunakan dalam gambar, setiap piksel pada gambar merupakan tiga elemen vektor. Untuk kedalaman bit n maka gambar dapat memiliki level warna yang memungkinkan hingga
3n 2 .
2.2. Ruang Warna (Color Space) Gambar Digital
Warna pada gambar dapat bervariasi untuk menyatakan warna sebagai sebuah nilai, didalam prosesnya dilakukan pendekatan dengan menggunakan ruang warna dimana ukuran-ukuran tertentu yang digunakan menjadi dasar dari pengelompokan dari pencahayaan paling gelap (hitam) sebagai nilai minimal dan pencahayaan paling terang (putih) sebagai nilai maksimal.
Ruang warna mengacu pada sensasi manusia terhadap warna ada beberapa sensasi didefinisikan yang menjadi dasar CIE (komisi internasional yang menangani color space) untuk mengukur warna yaitu [15]: a.
Brightness: sensasi terhadap dimana suatu daerah menunjukkan pencahayaan yang lebih atau kurang.
b.
Hue: sensasi terhadap daerah yang mirip dengan salah satu atau lebih dari warna merah, kuning, hijau, dan biru.
c.
Colourfulness: sensasi terhadap daerah yang menunjukkan Hue yang lebih atau kurang.
d.
Lightness: sensasi terhadap kecerahan relatif mengacu ke warna putih pada lokasi gambar.
e.
Chroma: colourfulness dari kecerahan relatif mengacu ke warna putih.
f.
Saturation: colourfulness mengacu kepada brightness relatif. Dari sensasi diatas banyak ruang warna yang didefinisikan maupun transformasi dari bentuk dasarnya diklasifikasikan sesuai dengan HVS (Human Visual Sistem), antara lain adalah:
RGB Salah satu ruang warna yang umum adalah berdasarkan teori tri- chromatic dimana RGB digunakan sebagai parameter untuk menentukan warna ini didasarkan bahwa retina mata mengambil sample warna menggunakan tiga
broadband merah (R), hijau (G) dan biru (B). Suatu gambar dalam ruang warna RGB
merupakan informasi kecerahan warna merah, hijau dan biru yang digunakan pada gambar nilai intensitas RGB. Konversi nilai piksel RGB divisualisasikan ke CIE-
XYZ sebagai kubus dengan titik sudut bawah menjadi nilai R,G, dan B masing- masing sama dengan 0(nol) sebagai representasi warna hitam dan sudut pojok atas berlawanan nilai R,G, dan B masing-masing 255 sebagai representasi warna putih, untuk 8 bit saluran R,G,B inilah yang menjadi dasar operasi ruang warna pada komputer dan fotografi (Gambar 2.1).
Gambar 2.1. Kubus warna RGB Suatu gambar dalam ruang warna RGB merupakan informasi kecerahan warna merah, hijau dan biru yang digunakan pada gambar nilai intensitas RGB sesuai dengan rata-rata tingkat kecerahan masing-masing saluran R,G,dan B pada piksel tersebut [15][16].YCbCr YCbCr bukanlah ruang warna absolute melainkan transformasi dari RGB yang di transform menjadi sensasi luminance dan chroma. Y adalah komponen untuk luminance, Cr adalah komponen chroma perbedaan merah dan Cb adalah komponen chroma perbedaan biru.
Tranformasi RGB ke YCrCb didapat berdasarkan Persamaan (2.2).
Y 0.299000 0.587000 0.114000 R
= − + C 0.168736 − 0.331264 0.500002 G 128 b …………(2.2)
C 0.500000 − 0.418688 − 0.081312 B 128 r YCrCb umum digunakan pada citra Video dan TV.
2.3. Definisi dan Pengertian Gambar JPEG
Istilah "JPEG" adalah singkatan untuk Joint Photographic Experts Group yang menciptakan standar Jpeg. Jenis media MIME (Multipurpose Internet Mail Extensions) untuk JPEG adalah image/jpeg (didefinisikan dalam RFC 1341) tipe MIME adalah penggunaan untuk mengidentifikasi bagian non-ASCII dari pesan email yang menggunakan spesifikasi MIME. Tanpa jenis MIME klien email tidak akan bisa memahami jika file attachment adalah file grafis atau lainnya dan tidak akan mampu menangani lampiran dengan tepat [5].
JPEG juga memiliki standar untuk pertukaran metadata dikenal dengan format JFIF (JPEG File Interchange Format) yang memungkinkan JPEG dapat dipertukarkan
Kebanyakan format file gambar adalah JPEG karena umumnya gambar yang beredar adalah hasil kamera digital dan kebanyakan kamera digital mempunyai standar format EXIF (Exchangeable Image File Format) yang berisi antara lain informasi standar seperti dimensi gambar, tanggal dan waktu akuisisi, dll, tetapi karena tidak mendukung profil warna, EXIF disimpan dalam format JFIF di dalam pengolahannya.
Pada JPEG dikenal istilah faktor quality yaitu tingkat kuantisasi yang digunakan pada proses kompresi JPEG, faktor quality menjadi faktor yang menentukan tingkat rasio kompresi dimana berkorelasi langsung dengan besarnya
byte yang dihasilkan.
Sebuah gambar JPEG bisa berwarna atau grayscale. Operasi pada encode biasanya dengan nilai pixel kisaran 0 sampai 255 (8-bit). Dalam kasus gambar
grayscale , sejumlah 8-bit tunggal mewakili tingkat abu-abu di setiap pixel. Gambar
berwarna menggunakan batas yang sama tetapi termasuk tiga 8-bit satu untuk saluran merah, hijau, dan biru. Hal ini memungkinkan untuk penciptaan gambar warna 24- bit.
Beberapa tools forensic memanfaatkan informasi EXIF untuk mengetahui apakah sebuah file gambar telah diolah dari gambar asli hasil kamera pada penelitian ini digunakan tools JPEGsnoop_v1_6_0 sebagai deteksi awal adanya manipulasi gambar.
2.4. Algoritma Kompresi JPEG
Kompresi di dalam gambar digital adalah suatu teknik yang meminimalisasi dengan rasio kompresi tertentu.
Ada dua jenis kompresi yang sering digunakan, yaitu kompresi Lossy dan Lossless.
Lossy : gambar dikodekan dengan membuang secara selektif informasi yang
dapat meningkatkan rasio kompresi tetapi dengan meminimalkan efek distorsi pada pandangan ketika melihat citra rekonstruksi sebagai piksel aslinya. Umum digunakan untuk kompres data multimedia (gambar dan video) yang berkaitan dengan data streaming pada komunikasi jaringan [17].
Lossless : gambar dikodekan untuk menjamin pemulihan yang persis sama
dari setiap piksel aslinya meskipun rasio kompresi lebih kecil. Umumnya digunakan untuk data teks atau dalam kasus dimana penyimpangan data asli bisa merugikan [17].
JPEG umumnya menggunakan kompresi Lossy, kecuali JPEG 2000 yang mendukung kompresi Lossy dan Lossless. Standar kompresi yang ditetapkan ISO (International Standards Organization) dan IEC (International Electro-technical Commission) gambar JPEG menggunakan skema DCT (Discrete Cosine Transform).
Domain DCT digunakan untuk mengkonversi sinyal kenilai-nilai koefisien dengan kemampuan untuk melakukan operasi pemotongan (truncating) dan pembulatan (rounding) sehingga memungkinkan kompresi sinyal berlangsung.
Kompresi JPEG beroperasi pada setiap komponen saluran warna secara terpisah sehingga hanya akan berurusan dengan 8-bit piksel. Ini memungkinkan setiap pixel dapat disimpan sebagai 8-bit nilai grayscale bukan jumlah merah, hijau dan biru.
Proses kompresi JPEG dimulai dengan mengubah ruang warna RGB ditransformasi menjadi YCbCr dengan Persamaan (2.2), lalu masing-masing saluran Y, Cb, dan Cr dibagi menjadi blok-blok ukuran 8x8 piksel jika tidak mewakili integer jumlah blok maka kompresor mengisi area sisa blok dengan angka dummy [6]. JPEG umumnya menggunakan kompresi Lossy, kecuali JPEG 2000 yang mendukung kompresi Lossy dan Lossless
Sebelum dilakukan transform DCT setiap piksel di subtract dalam range [- 128,127] agar pergeseran nilai piksel grayscale berpusat ke nol jadi nilai piksel origin dikurangi dengan 128 (Gambar 2.2b), nilai piksel inilah yang dihitung untuk mendapatkan koefisien DCT (Gambar 2.2c) berdasarkan rumus berikut: 7 7
π
1 π 1 G α u α v g x u y v …………...... (2.3) u v x y , , = ( ) ( ) cos + cos +∑∑ x = = y
8
2
8
2
1 untuk n , =
8
..........................................................(2.4)
α ( n ) =
2 lainnya ,
8 dimana: G u,v
u adalah frekuensi bidang horizontal, untuk 0 ≤ u ≤ 8.
8
43
38
36 y
− − − − − − − − − − − − − −
− − − − − − − − − − − − − − − − − −
3
2
4
35
1
2
5
5
2
3
1
4
5
50
22
1
26
39
37
37
57
55
50
46
30
29
36
30
59
52
41
36
38
27
21
40
56
1
2
56
8
13
9
18
20
1
4
6
14
14
53
4
15
3
6
3
7
3
2 8 677 v
(a) (b) (c)
Gambar 2.2. Proses mendapatkan nilai koefisien DCT untuk salah satu blok piksel (a). Nilai piksel origin, (b) nilai dikurangi 128,16
7
8
12
4
5
2
1
10
1
3
5
13
24
2
18
13
8
8
2
10
15
5
20
4
49
49
adalah koefisien DCT pada kordinat (u,v).
89
77
89
83
80
71
70
72
71
74
74
81
79
72
79
89
91
91
71
73
78
68
85
98 99 102
77
v adalah frekuensi bidang vertikal, untuk 0 ≤ u ≤ 8.
x u
100 108
92
75
77
74
66 101
96
90
94
88
94
87
67
69
98
76
84
82
92
54
60
41
61
59
30
52
44
32
43
47
51
40
39
45
48
57
58
56
57
54
39
34
34
69
92
76
87
92 107 90 101
88
72 98 106
93
78
85
90
38
− − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − − −
28
20
36
53
51
54
51
62
27
(c) nilai koefisien DCT Dari Gambar 2.2c nilai yang terletak pada posisi G(0,0) atau pada pojok kiri atas dinamai koefisien DC sisanya dinamai koefisien AC. Kecenderungan DCT adalah mengumpulkan sebagian besar sinyal signifikan disalah satu sudut dan dilanjutkan dengan proses kuantisasi yang juga menonjolkan efek ini sekaligus mengurangi ukuran keseluruhan koefisien DCT sehingga sinyal mudah dikompres secara efisien pada langkah pengkodean.
Matriks yang berisi 64 koefisien DCT lalu dikuantisasi dengan Persamaan (2.5) sehingga didapat nilai koefisien DCT sesudah kuantisasi (Gambar 2.3) dimana koefisien sebelum kuantisasi dibagi dengan sebuah matriks standar kuantisasi untuk JPEG dengan faktor quality yang ditentukan (Gambar 2.3b) dengan hasil bilangan
14
80
87
51
29
22
17
56
18
69
57
40
24
16
13
62
22
55
64
98
95
92
72 103 121 101 120
87
78
49 104 92 113
37
81
64
55
35
24 109 77 103
68
56
14
60
1
1
1
1
1
1
1
1
1
1
4
1
1
42
(a) (b) (c)
Gambar 2.3. Nilai hasil proses kuantisasi (a) nilai koefisien sebelum kuantisasi, (b) Tabel Q JPEG (luminance,Q=50), (c) nilai1
1
58
51
26
19
14
12
12
61
40
−
24
16
10
11
16
− − − − − − −
112 100 99 103
2 8 677
} 7 , 6 , 5 ,
5
5
5
2
3
1
4
1
1
1
2
8
4
5
2
2
4
10
D ij G
4 , 3 , { 1 , , ∈ 2 ,
= j i Q G
D round ij ij ij
………….....……(2.5) dimana:
adalah koefisien DCT sesudah kuantisasi. ij
8
Q adalah koefisien DCT sebelum kuantisasi. ij adalah matriks tabel kuantisasi standar JPEG.
− − − − − − − − − − − − − −
− − − − − − − − − − − − − − − − − −
3
2
1
1
3
14
9
18
20
1
4
6
14
16
8
53
15
3
6
3
7
13
4
3
8
5
13
12
24
18
13
8
7
2
10
15
5
20
4
2
koefisien DCT setelah kuantisasi.
Tabel kuantisasi adalah standar dalam proses kuantisasi kompresi DCT, nilai faktor kuantisasi berkisar antara 0 -100 pada Gambar 2.3b adalah tabel kuantisasi Luminance untuk Q = 50, untuk faktor kuantisasi berbeda nilai tabel kuantisasi tidak sama, bila S adalah skala faktor kuantisasi maka nilai setiap elemen tabel kuantisasi kembali menjadi visual gambar (dekompresi) dilakukan proses yang yang mirip dengan proses kompresi hanya dalam urutan terbalik.
[ ] =
- * S T i 50 b
T i s …………………................................... (2.6) [ ] 100
Dimana: T [i] = nilai elemen tabel kuantisasi baru
s
T b [i] = nilai elemen tabel kuantisasi standar (Q=50) S = skala faktor kuantisasi.
S dihitung berdasarkan Q baru yang ditentukan berdasarkan Persamaan (2.7).
5000 jika Q <
,
50 S = Q
……………................................... (2.7) 200 −
2 Q , jika Q >
50
Setelah koefisien terkuantisasi D ij didapat kemudian disusun dalam urutan zig-zag dikodekan menggunakan algoritma Huffman, hasil pengkodean inilah yang menjadi bit stream yang membentuk file JPEG kompressi [18][19].
Untuk mengembalikan kembali menjadi visual gambar (dekompresi) dilakukan proses yang yang mirip dengan proses kompresi hanya dalam urutan terbalik. Walapun nilai piksel yang dihasilkan dekompresi tidak seperti nilai piksel gambar aslinya tetapi secara sensasi mata tidak terdapat perbedaan yang mencolok.
Pemalsuan gambar pada prinsipnya adalah merubah piksel dengan nilai intesitas yang baru umumnya secara spasial (Gambar 2.4) atau sederhananya adalah mengubah gambar yang sudah ada yang telah dihasilkan oleh kamera atau perangkat pencitraan lainnya.
(a) (b) (c)
Gambar 2.4. Ilustrasi daerah yang dipalsukan [20](a) dan (b), adalah piksel-piksel gambar asli, (c) adalah hasil pengolahan.
Ciri-ciri fisik dari gambar yang dapat dideteksi antara lain meliputi perubahan–perubahan yang dilakukan terhadap elemen-elemen dasar suatu citra.
Citra digital mengandung sejumlah elemen-elemen dasar yang sering berkaitan dengan pemalsuan gambar, beberapa kesalahan yang memungkinkan untuk
1. Kecerahan (brightness) dikenal sebagai intensitas cahaya. Kecerahan pada suatu titik didalam suatu citra sebenarnya adalah intensitas rata-rata dari suatu area yang melingkupinya.
2. Kontur (contour) adalah keadaan yang ditimbulkan oleh perubahan intensitas pada piksel-piksel yang bertetangga dengan adanya perubahan inilah maka tepi-tepi (edge) objek pada citra dapat dideteksi.
3. Tekstur (texture) adalah pencirian distribusi spasial dari derajat keabuan di dalam sekumpulan piksel-piksel yang bertetangga. Tekstur merupakan karakteristik untuk menganalisa permukaan berbagai jenis citra objek. Sebuah inkonsistensi umum ditemukan bila konten gambar diubah. Efek kamera yang paling signifikan adalah ketajaman tepi dipengaruhi oleh difraksi lensa, fokus, dan blur, geometri perspektif, dan sifat kebisingan, biasanya dari detektor dan kompresi.
Ketika sebuah objek yang ditambahkan atau dihapus dari gambar, tepi yang dibuat biasanya memiliki ketajaman yang tidak konsisten dengan seluruh gambar.
Perilaku kabur di foto tersebut dapat dipahami dan dimodelkan dengan baik secara matematis jika desain kamera dikenal. Bahkan jika desain kamera tidak diketahui, pengukuran dalam gambar dapat menghasilkan model matematika yang relatif akurat dari kamera yang dapat memberikan prediksi yang wajar. Memotong objek dari satu gambar dan memasukkan ke gambar lain akan menciptakan tepi tajam pada batas dari bahwa gambar telah diubah meskipun perangkat lunak pengolah gambar bisa digunakan untuk mengurangi visibilitas tepi ini.
Semua benda dalam foto juga harus mengandung perspektif dan geometri yang benar. Jika geometri objek tidak konsisten dengan obyek lain dalam gambar maka itu kemungkinan adalah daerah yang ditambahkan dari gambar lain.
Kebanyakan gambar akan menunjukkan beberapa jumlah kebisingan terutama dari detektor atau dari kompresi gambar yang diterapkan. Karakteristik kebisingan dari bagian yang berubah dari suatu gambar dapat menjadi tidak konsisten dengan seluruh gambar.
Sehingga dengan mengenal pendekatan algoritma pemalsuan gambar kita dapat melakukan pendeteksian berdasarkan hal-hal yang mungkin dilakukan pemalsu terhadap sebuah gambar asli walaupun menurut Thomas Gloe suatu ketidak kepercayaan terhadap image forensic muncul diakibatkan kurangnya diskusi mengenai pemalsu strategis yang mampu mengantisipasi adanya teknik forensik [1].
Efek kamera yang paling signifikan adalah ketajaman tepi dipengaruhi oleh difraksi lensa, fokus, dan blur, geometri perspektif, dan sifat kebisingan, biasanya dari detektor dan kompresi.
Threshold 2.6.
Thresholding adalah langkah pendekatan yang dilakukan dalam segmentasi
citra, metodenya adalah dengan membagi piksel (biasanya dalam grayscale) kedalam kelompok piksel atau fitur tertentu sering digunakan histogram citra untuk
Gambar 2.5. Histogram segmentasi citra berdasarkan threshold [24].Threshold dapat dibedakan atas threshold tunggal dan adaptive [22],
Threshold tunggal atau global threshold adalah membagi histogram citra
menggunakan ambang batas global tunggal (Gambar 2.6a) keberhasilan teknik ini sangat kuat tergantung pada seberapa baik histogram dapat dipartisi. Sebuah histogram distribusi gray-level dihasilkan untuk setiap sub-gambar dan ambang batas yang optimal untuk sub-gambar tersebut dihitung berdasarkan histogram ini .
Untuk histogram tertentu (Gambar 2.6b) diperlukan lebih dari satu threshold dengan membagi gambar menjadi beberapa sub-gambar digunakan threshold secara individual karena ambang batas untuk setiap pixel tergantung pada lokasi pada gambar teknik ini dikatakan adaptif secara umum thresholding bertingkat kurang untuk menentukan nilai ambang yang cukup terpisah dari objek penting [22].
(a) (b)
Gambar 2.6 (a) Histogram dengan threshold tunggal(b) Histogtam dengan threshold adaptive [22]
Ada dua pendekatan yang dapat dilakukan untuk menentukan threshold, yaitu Chow & Kanenko dan Lokal [23].
Menurut Chow & Kanenko gambar asli dibagi menjadi array tumpang tindih sub-gambar [23]. Sebuah histogram distribusi gray-level dihasilkan untuk setiap sub- gambar dan ambang batas yang optimal untuk sub-gambar tersebut dihitung berdasarkan histogram ini.
Metode ini memberikan hasil yang wajar namun kelemahan utamanya adalah fakta bahwa hal itu memerlukan perhitungan banyak. Hal ini menyebabkan terlalu lambat dan berat untuk aplikasi real-time (yaitu untuk digunakan dalam Computer Vision). lingkungan lokal masing-masing pixel. Masalah yang di hadapi ketika memilih metode ini adalah pilihan statistik dimana pengukuran dilakukan. Statistik yang tepat dapat bervariasi dari satu gambar dengan yang lain dan sebagian besar tergantung pada sifat dari gambar. Dalam menentukan threshold statistik yang umum digunakan adalah dengan menghitung rata-rata, median, atau rata-rata minimal dan maksimal dari gray level dari satu lingkungan yang sering menjadi kendala adalah lingkungan besar semakin buruk hasilnya karena lebih dipengaruhi oleh gradien iluminasi di sisi lain jika lingkungan terlalu kecil maka ada risiko terkena data tidak memadai yang mengakibatkan hasil buruk karena dipengaruhi kebisingan (noise).
Untuk menghitung dasar global threshold T adalah sebagai berikut [17]: 1.
Pilih perkiraan awal untuk T (biasanya tingkat abu-abu rata-rata pada gambar).
2. Bagi gambar menggunakan T untuk menghasilkan dua kelompok piksel,
G1 terdiri dari piksel dengan tingkat abu-abu >T dan G2 terdiri dari piksel dengan tingkat abu-abu <= T.
3. Hitung tingkat abu-abu rata-rata piksel pada G1 sebagai μ1 dan pada G2 sebagai
2.
μ
4. Hitung nilai threshold yang baru berdasarkan:
µ µ +
1
2 T =
2 5.
Ulangi langkah 2 – 4 sampai perbedaan T iterasi kurang dari batas yang Global threshold secara matematis dinyatakan dalam bentuk:
1 jika f ( x , y ) > T g x y ..............................................(2.8)
( , ) =
f x y ≤ T
jika ( , ) dimana:
g(x,y) adalah nilai piksel biner hasil pengambangan pada kordinat (x,y) f(x,y) adalah nilai piksel pada gambar asli pada koordinat (x,y)
T adalah nilai threshold yang ditentukan.
2.7. Definisi serta Algoritma-Algoritma Pencocokan Blok
Salah satu kelebihan JPEG adalah metode kompresi yang digunakan kompresi yang digunakan JPEG dalam transformasi data adalah DCT dua dimensi yang bekerja berbasis pemrosesan blok dimana proses dilakukan pada masing-masing blok pada satu waktu dengan ukuran blok yang sama untuk seluruh gambar lalu setelah diproses blok-blok tersebut berkumpul kembali untuk membentuk output gambar. Karena beroperasi secara independen pada masing-masing blok hal ini juga menciptakan blok artefak. Blok artefak sering digunakan sebagai bahan informasi Passive Blind Image Forensic dalam mendeteksi image tamper gambar berformat JPEG.
Untuk pemalsuan gambar secara region duplication (cloning) dapat dideteksi dengan mencocokkan blok dari daerah yang diduplikasi tetapi berdasarkan citra tekstur maupun arah cahaya relatif akan sama sehingga menyulitkan untuk mendeteksi daerah yang digandakan apalagi untuk gambar alam memungkinkan untuk menjumpai banyak blok yang sama sehingga perlu mengekstraksi fitur tersebut dengan pendekatan tertentu agar dapat menentukan lokasi daerah duplikasi.
Ada 3 jenis pendekatan pencocokan blok yaitu [4]: 1.
Direct Matching dengan menganalisa piksel blok dan mencocokkan secara langsung dengan blok lainnya.
2. Matcing Coefficient DCT Quantized dengan menghitung koefisien DCT terkuantisasi masing-masing blok piksel dan mencari pencocokan blok.
3. Matching PCA Eigen Blocks dengan menganalisis komponen utama blok dan mencocokkan blok berdasarkan nilai Eigen.
Salah satu ide untuk deteksi pencocokan blok berdasarkan Matching
Coefficient DCT Quantized adalah robust match detection [8][25] yang mengatur
pencocokan dengan representasi koefisien DCT terkuantisasi bukan pencocokan atas representasi piksel.
Langkah pencocokan blok adalah dengan melakukan proses segmentasi dengan membentuk blok berukuran BxB piksel lalu blok tersebut digeser per satu piksel terhadap gambar mulai dari sudut kiri teratas hingga sudut kanan terbawah (blok overlapping). Bila sebuah blok dilambangkan sebagai B maka:
ij
dimana x,y {0,...,B-1), i {1,...,M-B+1} dan j
Є Є Є {1,...,N-B+1}
Untuk setiap posisi blok BxB nilai-nilai piksel dari blok yang diambil oleh kolom menjadi baris dari array dua dimensi A dengan kolom BxB dan (M-B+1)(N- B+1) baris. Untuk setiap blok dilakukan DCT transformasi menggunakan rumus Persamaan 2.4 dan Persamaan 2.5, nilai koefisien DCT dikuantisasi sehingga didapat koefisien DCT terkuantisasi Persamaan 2.6 , tabel Q yang digunakan tergantung dari skala faktor kuantisasi yang dipilih Persamaan 2.7 dan Persamaan 2.8, penentuan skala kuantisasi diperlukan dalam pendeteksian berbasis blok karena karakteristik DCT adalah energi hanya berfokus pada frekuensi rendah bila dilakukan pencarian blok yang identik maka sangat memungkinkan akan banyak ditemukan blok identik “palsu”, untuk mengantisipasinya salah satu adalah dengan membuat faktor kuantisasi harus besar sekitar 95 maka nilai skala faktor kuantisasi Q sangat menentukan ketika proses identifikasi dilakukan [20].
Blok yang berisi koefisien DCT terkuantisasi tersebut disimpan sebagai salah satu baris dalam matriks A. Setiap baris sesuai dengan satu posisi dari blok geser, dua baris identik dalam matriks A sesuai dengan dua identik B × B blok. Untuk memudahkan mengidentifikasi blok yang identik, baris dari matriks A diurut secara leksikografis sehingga mengurangi waktu membandingkan pencocokan.
Baris-baris A yang diurutkan secara leksikografis lalu dibandingkan koefisien DCT terkuantisasi untuk blok piksel berurutan yang identik, nilai vektor pergeseran pertama dan (j1, j2) menjadi posisi kedua pencocokan blok. Vektor pergeseran s antara dua blok pencocokan dihitung sebagai:
= = − −
s s s i j i j
( , ) ( , ) …………….…(2.10)
1
2
1
1
2
2 Dimana S adalah selisih positif antara piksel (i1,j1) dan (i2,j2).
Algoritma pencocokan blok mungkin menemukan terlalu banyak pencocokan palsu untuk itu jika dua baris matriks identik berurutan ditemukan algoritma menyimpan posisi blok yang cocok dalam daftar yang terpisah dan mengenalnya sebagi vektor pergeseran ternormalisasi C kemudian untuk setiap blok pasangan yang identik, vektor pergeseran ternormalisai C dinaikkan satu.
( , ) = ( , ) 1 …………………..….……(2.11)
- C s s C s s
1
2
1
2
Vektor-vektor pergeseran dihitung dan C bertambah untuk setiap pasanganbaris beurutan yang identik, vektor pergeseran ternormalisasi C diinisialisasi ke nol sebelum algoritma dimulai. Pada akhir proses pencocokan, algoritma akan
(1) (2) (K)
menemukan semua vektor pergeseran ternormalisasi C [s , s , ..., s ] yang
(r)
kemunculannya melebihi ambang batas yang ditentukan pengguna T: C (s ) > T untuk semua r = 1, ..., K [23].
Untuk semua vektor pergeseran ternormalisasi pencocokan blok yang memberikan kontribusi terhadap vektor pergeseran tertentu yang diindikasikan duplikasi.
Nilai ambang T berkaitan dengan ukuran segmen terkecil yang dapat diidentifikasi oleh algoritma. Nilai yang lebih besar dapat menyebabkan algoritma kehilangan beberapa blok yang cocok sementara terlalu kecil nilai T dapat menyebabkan terlalu banyak “cocok palsu”. Perlu digaris bawahi bahwa yang mengontrol kepekaan algoritma untuk tingkat pencocokan antara blok adalah Q faktor sementara ukuran blok B dan ambang T mengontrol ukuran minimal dari segmen yang dapat dideteksi diasumsikan blok B lebih kecil dari daerah yang dicloning .
2.8. Algoritma Deteksi Tepi
Tepi suatu citra dapat didefinisikan sebagai daerah dimana intensitas piksel bergerak dari nilai yang rendah ke nilai yang tinggi atau sebaliknya. Untuk mendeteksi tepi citra dilakukan hubungan antara piksel yang bertetanggga umumnya dilakukan untuk setiap piksel tetangga yang bisa secara horizontal, vertikal, maupun diagonal [12].
Algoritma deteksi tepi adalah salah satu pengolahan citra yang sangat signifikan dalam pendeteksian karena dapat memberikan informasi tekstur, ukuran dan bentuk sehingga dapat memperlihatkan anomali yang tersembunyi disekitar objek yang dirusak. Kebanyakan deteksi untuk gambar palsu splicing menggunakan deteksi algoritma deteksi tepi, pilihan ini berdasarkan bahwa apabila gambar digabung secara
splicing maka akan terlihat tepi citra lebih tajam dari sekitarnya karena berasal dari
dua gambar yang berbeda, arah dan pencahayaan yang berbeda dan juga faktor kuantisasi yang berbeda.
Setiap kali gambar JPEG dikompres, fenomena yang berbeda terjadi. Sehingga jika dua gambar digunakan untuk membuat pemalsuan ada kemungkinan bahwa keduanya memiliki tingkat kompresi berbeda khususnya faktor kualitas mungkin berbeda dalam kedua gambar sumber maka ketika disimpan sebagai gambar
splicing seolah-olah seperti rekompres oleh karena itu sangat mungkin meninggalkan
beberapa petunjuk apalagi dengan karakteristiknya yang berbasis blok maka akan menghasilkan suatu fenomena yang dikenal dengan Block Artefact. Untuk mendeteksi tepi citra dilakukan hubungan antara piksel yang bertetanggga umumnya dilakukan untuk setiap piksel tetangga yang bisa secara horizontal, vertikal, maupun diagonal.
Sebuah tepi citra dapat dihasilkan dengan menerapkan detektor tepi ke gambar dengan detektor sederhana seperti deteksi tepi Sobel, Canny, atau Prewitt bisa didapat nilai empat tepi citra masing-masing untuk piksel “bertetangga” dalam arah horizontal, vertikal, dan diagonal seperti dilambangkan dibawah.
= − + E ( i , j ) x ( i h 1 , j ) x ( i , j )
= + − E ( i , j ) x ( i , j v 1 ) x ( i , j )
………………….…(2.12)
- = −
E ( i , j ) x ( i d 1 , j 1 ) x ( i , j ) = − + −
E ( i , j ) x ( i 1 , J 1 ) x ( i , j ) − d
Dimana x(i,j) menunjukkan nilai abu-abu dari piksel dilokasi (i,j). Sedangkan
E h , E v , E d , E -d berturut-turut adalah menyatakan masing-masing untuk arah
horizontal (0 ), vertical (90 ), diagonal (45 ), dan inverse diagonal (135 ). Dari hasil deteksi tepi akan terlihat tepi citra pada gambar yang telah dilakukan splicing akan terlihat perubahan nilai piksel akan tampak lebih tajam [12][26][27].
Prinsip kerja metode deteksi tepi adalah berdasarkan analisa terhadap standar JPEG terkompresi dimana setiap gambar JPEG yang telah terkompresi akan meninggalkan “sidik jari” dalam rangkaian blok 8 x 8 karena perbedaan antar blok akan berbeda disebabkan artefak blok untuk mendeteksi perbedaan tersebut gambar yang akan dideteksi dipecah kembali menjadi blok 8 x 8 lalu dihitung perbedaan dalam blok mencakup seluruh batas blok. Dengan asumsi gambar target dan gambar asal (Gambar 2.4) mempunyai faktor kuantisasi yang berbeda maka gambar target seolah di recompressed sehingga dengan menghitung nilai piksel bertetangga akan didapat perbedaaan yang signifikan [3][11][28]. Dapat terlihat pada Gambar 2.7.
Untuk mendeteksi tepi citra dilakukan hubungan antara piksel yang bertetanggga umumnya dilakukan untuk setiap piksel tetangga yang bisa secara horizontal, vertikal, maupun diagonal.
(a) (b)
Gambar 2.7 (a) Piksel bertetangga batas blok(b) Piksel bertetangga dalam blok
Menurut Jonathan R Sturak bila koordinat dari A, B, C dan D yang berada dalam blok maka perbedaaan energi antara piksel yang bertetangga akan kecil seperti A ke D dan E ke H (Gambar 2.7b) [28], diasumsikan A,B,C,D,E,F,G,dan H didalam blok 8x8 tetapi apabila koordinat A,B,C, dan D melewati batas blok perbedaan energi tersebut akan besar. Perbedaan energi tersebut dapat dilihat dari histogram dengan menghitung:
Z’ (x,y) =(A+D-B-C) , Z’’ (x,y) = (E+H-F-G) ................... (2.13) dimana: x,y menyatakan posisi koordinat A. H I adalah histogram Z’. H adalah histogram Z’’.
II
maka energi K perbedaan H
I dengan H
II dengan nilai piksel n adalah: K (n) = |H (n) – H (n)|………….......
(x,y)
I II
……………....(2.14) (a)
(b)
Gambar 2.8. Histogram dari Z’ dan Z’,(a) Histogram H dan H ,I II
(b) Perbedaan H dan H [17]
I II
Berdasarkan metode diatas maka diasumsikan piksel A,B,C, dan D terletak pada setiap tepi dibatas blok (Gambar 2.7a), bila piksel A pada salah satu blok dianggap sebagai nilai piksel blok(i,j), sehingga untuk setiap blok akan didapat masing-masing : A adalah nilai piksel pada (8*i,8*j), B adalah nilai piksel pada (8*i, [8*j]+1), C adalah nilai piksel pada ([8*i]+1, 8*j), dan D adalah nilai piksel pada ([8*i]+1, [8*j]+1).
Dengan menghitung e(i,j) pada masing-masing tepi blok dengan rumus : e(i,j) = |(A + D) – (B + C) ………………….…........... (2.15) dimana e(i,j) adalah nilai efektif mewakili derajat variasi piksel yang hadir pada piksel blok(i,j) dan 3 piksel tetangganya. Setelah e(i,j) didapat untuk semua blok lalu dihitung perbedaaan antara e(i,j) setiap blok terhadap blok dikanannya dan blok dibawahnya dengan Persamaan 2.16.
Drigth = | e(i, j) – e(i, j+1) | dan Dbottom = | e(i, j) – e(i+1, j) | ........(2.16) Dimana:
Dbottom adalah perbedaaan e(i,j) sebuah blok dengan blok dibawahnya [28] Untuk menentukan lokasi yang dirusak maka suatu nilai thresold T ditentukan dan dibandingkan terhadap nilai Drigth dan Dbottom untuk nilai Drigth dan Dbottom lebih besar atau sama dengan T maka tepi tersebut diduga sebagai tepi dari daerah splicing .