Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Data Sistem
3.1.2 Praproses Citra
Citra yang diperoleh tidak langsung dapat diambil nilai fiturnya yang akan digunakan dalam jaringan saraf tiruan agar diklasifikasi, citra tersebut terlebih dahulu mengalami praproses citra. Citra grayscale yang diperoleh dideteksi tepi terlebih dahulu untuk mempertegas batas yang membedakan mana bukit dan lembah dalam sidik jari. Kemudian citra ini mengalami binerisasi agar diperoleh citra bilevel (binary image) dan yang terakhir adalah ekstraksi fitur yang menghasilkan nilai atau fitur yang digunakan sebagai nilai input dalam jaringan saraf tiruan.
Deteksi
Tepi Binerisasi Ekstraksi Fitur
Citra Grayscale
Nilai Fitur Citra
Gambar 3.1 Praproses Citra
3.1.2.1 Deteksi Tepi
Deteksi tepi berfungsi untuk mempertegas batas citra atau untuk meningkatkan penampakan garis batas suatu daerah atau obyek di dalam citra. Pada penelitian ini digunakan operator Sobel dengan dua buah kernel yaitu:
Pada perancangan kali ini digunakan operator Sobel karena mampu menghasilkan hasil ekstraksi paling halus
Gambar 3.2 Dua Buah Matriks Kernel Sobel
-1 0 1 1 2 1
-2 0 2 0 0 0
Tahapan deteksi tepi menggunakan operator Sobel:
1. Input Citra grayscale (m x n) piksel.
2. Lakukan konvolusi dengan menggunakan kernel Sobel 3 x 3 untuk menghasilkan peta intensitas gradien.
3. Hitung nilai gradien.
4. Kembalikan nilai matriks menjadi nilai intensitas citra.
5. Proses selesai dan dihasilkan tepi dari sebuah citra digital.
Mulai
Ambil nilai pixel x,y
Pisahkan nilai RGB
Hitung intensitas RGB= 0.333F*(p.R +p.G+p.B)
Lakukan konvolusi nilai intensitas dengan operator
sobel 3x3
gradX= intensity * maskX gradY= intensity * maskY
Hitung nilai gradient Grad = |sx| + |sy| Selesai Input Citra grayscale sidik jari Tampilkan citra hasil deteksi tepi
Operator Sobel adalah magnitudo dari gradien yang dihitung dengan persamaan:
M= 2+ 2 atauM = |sx| + |sy| (3.1)
Misalkan pada citra sidik jari grayscale dilakukan deteksi tepi dengan mengambil 1 blok citra berukuran 3 x 3 Pixel sesuai dengan operator sobel yang berukuran 3x3 .
188 188 188 -1 -2 -1 -1 0 1 158 114 159 Sx= 0 0 0 Sy= 2 0 2
148 211 135 1 2 1 -1 0 1
Gambar 3.4Matriks 3x3 Pixel dengan Dua Operator Sobel
Gx = 188(-1) + 188(-2) + 188(-1) + 148(1) + 211(2) + 135(1) = -188 -376 -188 +148 + 422 + 135 = -47 Gy = 188(-1) + 158(2) + 148(-1) + 188(1) + 159(2) + 135(1) = -188 + 316 - 148 + 188 + 318 + 135 = 621
Perhitungan nilai magnitudo (M) dengan menggunakan persamaan (3.1) adalah sebagai berikut:
M = |sx| + |sy| M = |-47| + |621|
M = 668
Citra hasil konvolusi yang diperoleh dari perhitungan deteksi tepi untuk pixel blok 3 x 3 citra sidik jari adalah 668, maka karena nilai grayscale antara 0 - 255, maka nilai piksel yang ditinjau adalah 255 seperti pada Gambar 3.7.
* * * * 255 * * * *
Dari hasil konvolusi dengan operator Sobel terhadap 9 piksel maka nilai piksel dan dimasukkan ke dalam matriks citra 3x3 piksel seperti pada Gambar 3.8. Lakukan proses yang sama untuk piksel lainnya.
188 188 188 158 255 159 148 211 135
Gambar 3.6 Matriks Hasil Deteksi Tepi
Gambar 3.7 Citra Hasil Deteksi Tepi
3.1.2.2 Binerisasi
Pada proses ini akan menghasilkan citra hitam putih yang bersih dari tingkat keabuan (grayscale), dengan kata lain metode ini mengonversi citra gray-level ke citra bilevel (binary image). Pada tahap ini, akan diambil nilai rata-rata nilai pixel RGB (Red, Green, Blue) untuk kemudian dicek, jika nilai yang dihasilkan kurang dari nilai ambang (threshold) yang dihasilkan maka nilai piksel tersebut diubah menjadi warna hitam, sebaliknya jika lebih besar dari nilai ambang (threshold) maka akan diubah menjadi warna putih.
Matriks biner dari citra ini dibentuk berdasarkan nilai hitam putih pada citra yang telah didapatkan (persamaan (2.2)), jika pixel citra pada koordinat (x,y) berwarna hitam maka nilai matriks biner pada baris i dan kolom j adalah 1, sebaliknya 0 (persamaan (2.3)). Matriks biner ini selanjutnya akan digunakan untuk pengolahan selanjutnya.
Gambar 3.8 Citra Hasil Binerisasi
3.1.2.3 Ekstraksi Fitur (Feature Extraction)
Feature extraction merupakan proses untuk mendapatkan nilai-nilai unik dari suatu citra yang telah mengalami proses pengolahan citra sebelumnya. Setiap data yang akan diamati dan dianalisis oleh jaringan saraf tiruan harus direpresentasikan secara baik ke dalam bentuk data numerik atau data biner. Untuk itu, diperlukan suatu cara yang dapat mengekstraksi ciri dari setiap data tadi secara konsisten. Data hasil ekstraksi haruslah benar-benar dapat mewakili karakteristik atau ciri-ciri dari data yang diamati, sehingga diharapkan dari sekumpulan data dengan target yang sama akan dihasilkan suatu generalisasi atau pencirian secara umum terhadap suatu target yang sejenis. Transformasi wavelet diskrit digunakan sebagai metode ekstraksi fitur karena kemampuan menguraikan citra input menjadi citra global dan citra detil. Proses transformasi ini disebut dekomposisi wavelet, dan hasil dekomposisi ini disebut koefisien wavelet yang dapat dijadikan input pada jaringan saraf tiruan
Gambar 3.9 Citra Hasil Dekomposisi Wavelet
LL LH
Citra hasil dekomposisi yang tampak pada gambar 3.9 bagian kanan merupakan citra hasil normalisasi koefisien wavelet, agar koefisien wavelet tersebut dapat diamati secara visual. LL menunjukan bahwa subcitra tersebut merupakan hasil konvolusi low-pass filter baik pada baris maupun kolom. LH adalah hasil konvolusi low-pass filter pada baris dan high-pass filter pada kolom. HL adalah hasil konvolusi high-pass filter pada baris dan low-pass filter pada kolom. HH adalah hasil konvolusi high-pass filter baik pada baris maupun kolom. Dengan demikian, LL merupakan citra global, sedangkan LH, HL, dan HH merupakan citra detil. Citra global hasil dekomposisi wavelet didekomposisikan kembali untuk mendapatkan citra global dan citra detil pada level berikutnya.
Proses dekomposisi wavelet dapat dihitung secara konvolusi maupun dengan cara perataan dan pengurangan secara berulang, seperti ilustrasi di bawah ini. Misalkan terdapat citra dari hasil binerisasi dalam bentuk matriks di bawah ini:
= + +1
2 (3.2)
= − +1
2 (3.3)
Untuk melakukan transformasi level 1 dilakukan dekomposisi tiap kolom dahulu misal dilakukan pada kolom 1 seperti di bawah ini:
[0 0 0 0] [0 0] a = (0 + 0) / 2 = 0 [0 0] a = (0 + 0 ) / 2 = 0 c = (0 - 0) /2 = 0 c = (0-0) /2 = 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0
Proses perhitungan dilanjutkan pada kolom 2 seperti di bawah ini: [0 1 1 0]
[0 1] a = ( 0+1 ) / 2 = 0.5 [1 0] a= (1 + 0) / 2= 0.5 c = (0-1) /2 = -0.5 c= (1-0) / 2 = - 0.5
Perhitungan pada kolom ke-3 : [0 0 0 0]
[0 0] a = (0 + 0) / 2= 0 [0 0] a = (0 + 0) /2 = 0 c = (0 - 0) / 2= 0 c = (0 - 0) / 2= 0
Perhitungan pada kolom ke-4
[0 1 0 0]
[0 1] a = (0+1)/2 = 0.5 [0 0] a = (0 + 0) / 2= 0 c = (0-1) / 2= -0.5 c = (0 - 0) / 2 = 0
Proses selanjutnya, kumpulan nilai a diletakkan pada baris pertama dan kedua. Sedangkan kumpulan nilai c diletakkan pada baris ke-tiga dan ke-empat.
Gambar 3.10 Transformasi Wavelet pada kolom
Selanjutnya dilakukan proses transformasi pada baris matriks hasil kumpulan nilai a dan c di atas. Sebagai contoh diambil nilai pada baris pertama yaitu [0 0.5 0 0.5]
[0 0.5] a = (0 + 0.5) /2 = 0.25 [0 0.5] a= (0 + 0.5)/2 = 0.25 c = (0- 0.5) /2 = -0.25 c = (0 - 0.5)/ 2 = -0.25 0 0.5 0 0.5 0 -0.5 0 -0.5 0 0.5 0 0 0 -0.5 0 0 nilai a dan c c 0 0.5 0 0.5 0 0.5 0 0 0 -0.5 0 -0.5 0 -0.5 0 0
Perhitungan baris ke-dua:
[0 0.5] a = (0 + 0.5) /2 = 0.25 [0 0] a = (0 + 0)/ 2 = 0 c = (0- 0.5) /2 = -0.25 c = (0- 0)/ 2 = 0
Perhitungan baris ke-tiga:
[0 -0.5] a = (0 + (-0.5)) /2 = -0.25 [0 -0.5] a= (0 + (-0.5)/2 =0.25 c = (0- (-0.5)) /2 = 0.25 c = (0- (-0.5)) /2 = 0.25
Perhitungan baris ke-empat:
[0 -0.5] a = (0 + (-0.5)) /2 = -0.25 [0 0] a = (0 + 0)/ 2 = 0 c = (0- (-0.5)) /2 = 0.25 c = (0- 0)/ 2 = 0
Proses selanjutnya, kumpulan nilai a diletakkan pada kolom pertama dan ke-dua. Sedangkan kumpulan nilai c diletakkan pada kolom ke-tiga dan ke-empat.
Gambar 3.11Transformasi Wavelet pada baris
Matriks di atas adalah matriks hasil transformasi wavelet level 1 yang menghasilkan 4 citra, yaitu citra pendekatan, citra detil horizontal, citra detil vertikal dan citra detil diagonal. Hasil transformasi wavelet level 1 dapat dilihat pada gambar 3.12. Citra dapat didekomposisi menjadi beberapa level sesuai kebutuhan, dan transformasi wavelet level 2 dapat dimulai dari matriks hasil transformasi wavelet level 1. Transformasi wavelet ini dapat dilanjutkan menjadi beberapa level sesuai yang diinginkan. 0.25 0.25 -0.25 -0.25 -0.25 -0.25 0.25 0.25 0.25 0 0.25 0 -0.25 0 0.25 0 nilai a dan c c 0.25 -0.25 0.25 -0.25 -0.25 0.25 -0.25 0.25 0.25 0.25 0 0 -0.25 0.25 0 0
Gambar 3.12Transformasi Wavelet level 1
Koefisien wavelet yang dihasilkan melalui proses transformasi merupakan input bagi jaringan saraf tiruan propagasi balik. Koefisien tersebut perlu dinormalisasi terlebih dahulu agar nilainya berada pada range -1 hingga +1 atau pada range 0 hingga 1 sesuai dengan syarat data input pada jaringan saraf tiruan. Hal ini dilakukan agar nilai keluaran yang dihasilkan dapat terletak pada range 0 dan 1.
Normalisasi koefisien ini dapat dilakukan dengan cara membagi nilai koefisien tersebut dengan nilai maksimum yang dapat dicapai koefisien wavelet pada dekomposisi tersebut. Dengan menggunakan rumus:
|k| = (maks(M,N))2n x 255 (3.4)
M = | |, Hi ∈ > 0 (3.5)
N = | |, Hi ∈ < 0 (3.6)
Keterangan:
|k| adalah nilai maksimum yang dapat dicapai koefisien wavelet citra pada level dekomposisi n
M adalah hasil penjumlahan low pass filter bernilai positif N adalah hasil penjumlahan low pass filter bernilai negatif H adalah koefisien low-pass filter
n adalah level dekomposisi wavelet, 2n menunjukkan bahwa satu kali dekomposisi dilakukan proses fikter sebanyak dua kali yaitu baris dan kolom
Dengan demikian, normalisasi koefisien transformasi wavelet diskrit citra dilakukan dengan menggunakan persamaan:
0.25 -0.25 0.25 -0.25 -0.25 0.25 -0.25 0.25 0.25 0.25 0 0 -0.25 0.25 0 0
� = �0
| | (3.7)
Keterangan:
Wn adalah nilai koefisien wavelet citra hasil normalisai yang digunakan sebagai input untuk jaringan saraf tiruan.
W0 adalah nilai koefisien wavelet citra sebelum dinormalisasi
|k| adalah nilai maksimum yang dapat dicapai koefisien wavelet citra pada level dekomposisi n
Hasil koefisien pada transformasi wavelet level 1 pada gambar 3.11 di atas kemudian dinormalisasi dengan menggunakan persamaan (3.7) sehingga menghasilkan koefisien seperti di bawah ini.
Gambar 3.14Koefisien wavelet ternormalisasi
Setiap dekomposisi wavelet sebanyak n- level akan menyebabkan tinggi dan lebar subcitra pada level tersebut menjadi 2-n dari tinggi dan lebar citra aslinya. Dengan demikian, jika ukuran citra input adalah 180 x 180, maka ukuran koefisien transformasi wavelet diskrit pada level 4 (sesuai penelitian) adalah 11x 11.