Implementasi IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN

4.1. Implementasi

Sistem ini dibangun dengan menggunakan SharpDevelop 4.1. Masukan yang digunakan adalah foto yang berformat .jpeg dengan ukuran 100 x 100 piksel, seperti pada gambar 4.1. Gambar 4.1. Citra Asli Foto 100 x 100 piksel Agar dapat diolah di komputer, maka Gambar 4.1 harus diubah menjadi bentuk bipolar. Pertama kali yang harus dilakukan adalah mengambil nilai RGB dari Gambar 4.1, seperti yang dapat dilihat di Gambar 4.2. Gambar 4.2. Nilai RGB dari Citra Asli Universitas Sumatera Utara Dari nilai RGB seperti yang ada pada Gambar 4.2, maka dapat diperoleh citra grascale seperti pada Gambar 4.3 Gambar 4.3. Citra grayscale Citra pada Gambar 4.3. memiliki nilai grayscale seperti pada Gambar 4.4 Gambar 4.4. Nilai Grayscale dari Citra Asli Nilai grayscale pada Gambar 4.3 diperoleh dengan menggunakan rumus : 3 b g r s    dengan : s : nilai piksel pada citra grayscale r : nilai bit red pada piksel citra RGB g : nilai bit green pada piksel citra RGB b : nilai bit blue pada piksel citra RGB Universitas Sumatera Utara Lalu nilai grayscale pada Gambar 4.4 diubah menjadi bentuk biner dengan menggunakan threshold sebesar 128. Hasilnya seperti pada Gambar 4.5. Gambar 4.5. Nilai Biner dari Citra Asli Dari nilai biner seperti Gambar 4.5, maka dapat diperoleh citra bipolar seperti pada Gambar 4.6. Gambar 4.6. Citra Bipolar Universitas Sumatera Utara Gambar 4.6 memiliki nilai bipolar seperti pada Gambar 4.7. Gambar 4.7. Nilai Bipolar dari Citra Asli Nilai bipolar seperti Gambar 4.7 akan diolah dengan menggunakan algoritma BAM. Langkah-langkah Algoritma BAM 1. Menentukan pola input dan pola output Dalam sistem ini, variabel x_11 digunakan menjadi pola input. Pola input yang digunakan adalah nilai bipolar yang ada pada Gambar 4.7. Pola output atau target yang digunakan adalah : target1[1,40] = {{1,1,1,1,1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,1}}; 2. Menghitung matriks bobot W_total Sebelum menghitung W_total, maka harus dihitung terlebih dahulu bobot untuk pola input x_11, yang akan dimasukkan ke dalam variabel W11 W11 = x_11 target1 Universitas Sumatera Utara Hasil dari perkalian x_11 dan target1 seperti pada Gambar 4.8. Gambar 4.8. Nilai W11 Dengan cara yang sama, proses ini juga dilakukan untuk 23 inputan lainnya, sehingga bobot yang dihasilkan ada 24, mulai dari W11, W12, W13, W14, W15, W16 sampai dengan W41, W42, W43, W44, W45, W46. Lalu semua nilai bobot dijumlahkan, sehingga menghasilkan matriks bobot total yang dapat menampung seluruh inputan, yang akan disimpan ke dalam variabel W_total, seperti pada Gambar 4.9. Gambar 4.9. Nilai W_total Universitas Sumatera Utara 3. Recall pola input Pada tahap ini, nilai transpose dari W_total yang dihasilkan pada tahap kedua akan dikalikan dengan seluruh target, yaitu variabel target1. x_in11 = target1 W_total T Hal ini dilakukan agar dapat membuktikan apakah hasil perkalian antara W_total dan target1 sama dengan nilai x_11. Hasil perkalian ini akan disimpan dalam variabel x_in11 seperti pada Gambar 4.10. Gambar 4.10. Nilai x_in11 sebelum dibandingkan dengan threshold Nilai x_in11 akan dibandingkan dengan nilai threshold, yaitu 0. Apabila nilai x_in11 lebih besar dari 0, maka x_in11 akan bernilai 1. Dan jika lebih kecil dari 0, akan bernilai -1. Hasil akhir x_in11 dapat dilihat seperti pada Gambar 4.11 Universitas Sumatera Utara Gambar 4.11. Nilai x_in11 setelah dibandingkan dengan threshold Dapat dilihat bahwa nilai x_in11 pada Gambar 4.11 dan nilai x_11 pada Gambar 4.7 adalah sama. Hal ini membuktikan bahwa algoritma BAM berjalan sesuai dengan yang diharapkan. 4. Balik arah, menghitung nilai y_in11 Pada tahap ini, nilai y_in11 dihitung dengan mengalikan nilai dari W_total dengan nilai x_11. y_in11= x_11 W_total Hal ini dilakukan untuk melihat apakah nilai y_in11 yang dihasilkan sama dengan target1. Hasil nilai y_in11 dapat dilihat pada Gamba 4.12 Gambar 4.12 Nilai y_in11 Universitas Sumatera Utara Jika nilai y_in11 pada Gambar 4.12 dibandingkan dengan nilai target1: target1[1,40] = {{1,1,1,1,1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,1}}; Maka dapat dibuktikan bahwa nilai y_in11 sama dengan nilai target1. Hal ini membuktikan bahwa algoritma BAM dapat berjalan sesuai dengan yang diharapkan. 5. Tahap 1 sampai 4 diulangi untuk 23 inputan yang lainnya.

4.2. Pengujian