KOHONEN NEURAL NETWORK DALAM PENDETEKSIAN
DUPLIKASI IMAGE DIGITAL MELALUI DETEKSI GARIS TEPI
SKRIPSI
MAHATHIR FEBRIAN
091402131
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
KOHONEN NEURAL NETWORK
DALAM PENDETEKSIAN DUPLIKASI
IMAGE DIGITAL
MELALUI DETEKSI GARIS TEPI
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi
MAHATHIR FEBRIAN
091402131
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
PERSETUJUAN
Judul : KOHONEN NEURAL NETWORK DALAM
PENDETEKSIAN DUPLIKASI IMAGE
DIGITAL MELALUI DETEKSI GARIS TEPI
Kategori : SKRIPSI
Nama : MAHATHIR FEBRIAN
Nomor Induk Mahasiswa : 091402131
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
Diluluskan di
Medan, 23 Agustus 2014
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
M. Andri Budiman, ST., M.Com.Sc NIP. 197510082008011011
Dr. Erna Budhiarti Nababan, M.IT NIP.
Diketahui/Disetujui oleh
Program Studi Teknologi Informasi Ketua,
PERNYATAAN
kOHONEN NEURAL NETWORK
DALAM PENDETEKSIAN
DUPLIKASI
IMAGE DIGITAL
MELALUI DETEKSI GARIS TEPI
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 23 Agustus 2014
MAHATHIR FEBRIAN
UCAPAN TERIMA KASIH
Puji dan syukur penulis panjatkan kepada Allah SWT Yang Maha Pengasih
dan Maha Penyayang, dengan segala rahmat dan karuniaNya penulisan tugas akhir ini
berhasil diselesaikan dalam waktu yang telah ditetapkan. Selama penyelesaian tugas
akhir ini, banyak bantuan dan kerja sama serta doa dan dukungan dari berbagai pihak,
oleh karena itu penulis sampaikan ucapan terima kasih sedalam-dalamnya dan
penghargaan kepada :
1. Kedua orang tua dan sanak saudara penulis yang telah memberikan dukungan
dan motivasi baik materil dan spiritual, Ayahanda Zakaria dan Ibunda Suryawati
yang selalu sabar dalam mendidik dan membesarkan penulis. Untuk adik
penulis Habibie, M.Rezeki dan Adha Natsya yang selalu memberikan semangat
kepada penulis.
2. Ibu Dr. Erna Budhiarti Nababan, M.IT dan Bapak M. Andri Budiman,ST.,
M.Com.Sc selaku pembimbing yang telah banyak meluangkan waktu dan
pikirannya, memotivasi dan memberikan kritik dan saran kepada penulis.
3. Bapak Dedy Arisandi, ST.,M.Kom dan Bapak M. Fadly Syahputra,
B.Sc.,M.Sc.IT yang telah bersedia menjadi dosen pembanding yang telah
memberikan kritik dan saran kepada penulis.
4. Ketua dan Sekretaris Program Studi Teknologi Informasi, Bapak M. Anggia
Muchtar, ST.,MM.IT dan Bapak M. Fadly Syahputra, B.Sc.,M.Sc.IT.
5. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara, semua dosen serta pegawai di Fakultas Ilmu
Komputer dan Teknologi Informasi.
6. Orang terdekat penulis, Cyntia Harmaytha Harahap, ST. Terima kasih banyak
telah membantu menyemangati, mendukung, dan mendampingi segala kegiatan
penulis.
7. Seluruh sahabat terbaik penulis yang selalu memberikan dukungan, Denny
Pratama, Ahmad Najam, Wildan Afifi, Satrya Prayudi, Darma Warista, Razky,
Oliver, Junaidi Arief, Andri Agung, Anggi Brahmana, Fachriza Fahmi, Andre H
Lubis, M. Taufiqul Hadi, Anthea Ria M, Boho, Yogi, Dedek, Ranap, Donny,
Erfahd, Adha, Mulki, Syarah, Mitha, Ari Rifki, Bang Aulia, Bang Sandro, Bang
Irwanta, seluruh angkatan 09, teman SRC, teman GG,
teman-teman Telkom, teman-teman-teman-teman PIM, teman-teman-teman-teman Mangga, teman-teman-teman-teman TDK
serta teman-teman seluruh angkatan mahasiswa USU lainnya yang tidak dapat
penulis sebutkan satu persatu.
Semoga segala kebaikan dan bantuannya dibalas oleh Allah SWT dan semoga
ABSTRAK
Abstrak—Frekuensi penyebaran informasi dalam bentuk image digital ini semakin
tinggi, baik dari segi kualitas maupun kuantitasnya. Hal ini menyebabkan sering
terjadinya duplikasi image digital yang memiliki kesamaan dalam bentuk gambar,
namun memiliki perbedaan dalam hal ukuran dan nama file. Duplikasi gambar ini
dapat menyebabkan pemborosan dalam media penyimanan data seperti hard disk atau
flash disk serta rumitnya pengaturan data dalam bentuk image digital tersebut. Oleh
karena itu, perlu adanya sebuah pendekatan data yang mendeteksi duplikasi image
digital di dalam media penyimpanan data, sehingga memudahkan pengguna untuk
melakukan penghapusan atau pengaturan image digital tersebut. Metode kohonen
neural network akan mengolah setiap sinyal dari image digital dan melakukan
pengecekan terhadap sebuah image digital. Metode ini akan mengolah setiap sinyal
dari image digital dan membentuk cluster-cluster disekitar tepi-tepi gambar
(dihasilkan oleh proses pendeteksian garis tepi menggunakan teknik edge linking)
yang selanjutnya diproses untuk menghasilkan nilai jarak antar cluster yang
berdekatan. Cluster-cluster yang dibentuk akan berfungsi sebagai garis virtual pada
daerah segmentasi. Garis virtual ini besar peranannya dalam hal menghubungkan
garis-garis yang terputus pada saat proses pendeteksian garis tepi sebelumnya. Hal ini
akan mempengaruhi tingkat ketelitian proses pendeteksian duplikasi image digital
yang dilakukan. Berdasarkan pengujian yang telah dilakukan, algoritma kohonen
neural network dapat segmentasi dan mengelompokkan image serta memiliki
komputasi waktu yang cepat.
KOHONEN NEURAL NETWORK FOR IMAGE DIGITAL DUPLICATE DETECTION USING EDGE DETECTION
ABSTRACT
Dissemination Information Frequency in the form of digital image is rising, both by
its quality and quantity. This causes frequent digital image duplication occurences
which have similarities in the form of images, and also differencies in size and file
name. Duplication of this image may waste the media data strorage such as hard disc
or flash disc as well as the complexity data settings in the form of the digital image.
Therefore the quary for a data approach to detect any digital image duplications in the
data strorage media to simplify users to remove or set the digital image is a must to
do. Kohonen neural network method shall process any signal from the digital image
and performs an inspection on a digital image. This method shall process any signal
from a digital image and create some clusters around the image’s edges (generated by
the edge detection process using the edge linking technique) and further shall be
processed to generate a distance value between adjacent clusters. Formed clusters
shall serve as a virtual line on the segmentation area. This virtual line has a major role
to reconnect any disconnected lines in the process of the previous edge detection time.
This shall affect the digital image duplication detection process accuracy level
conducted. Based on the ducted tests, the Kohonen neural network algorithm may
segment and classifyied the image and having a fast computational time.
3.1.2.1 Kebutuhan Fungsional ... 14
3.1.2.2 Kebutuhan Nonfungsional ... 15
3.1.3 Penerapan Algoritma Kohonen Neural Network SOM ... 15
3.2 Perancangan Sistem ... 27
3.2.1 Flowchart Sistem ... 27
3.2.2 Perancangan Antarmuka Program ... 33
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 36
4.1. Implementasi ... 36
4.1.2 Tampilan Hasil ... 36
4.1.2 Pengujian Sistem ... 37
4.2. Pembahasan ... 45
4.1.2 Kelebihan Sistem ... 47
4.2.2 Kelemahan Sistem ... 47
BAB 5 KESIMPULAN DAN SARAN ... 48
5.1. Kesimpulan ... 48
5.2. Saran ... 49
DAFTAR TABEL
Hal.
Tabel 2.1 Tabel Penelitian Terdahulu 12
Tabel 3.1 Proses Edge Linking 18
Tabel 3.2 Hasil Garis Tepi Citra A 19
Tabel 3.3 Standard Deviasi, Kurtosis, dan Skweness 25
Tabel 4.1 Hasil Pembandingan Gambar yang mirip 46
DAFTAR GAMBAR
Hal.
Gambar 2.1 Color Image 6
Gambar 2.2 Citra Digital 7
Gambar 2.3 Kurva Skweness dan Kurtosis 11
Gambar 3.1 Struktur Pixel Citra A 16
Gambar 3.2 Hasil Deteksi Garis Tepi Citra A 19
Gambar 3.3 Hasil Segmentasi Citra A 20
Gambar 3.4 BMN Citra A 20
Gambar 3.5 Struktur Pixel Citra A 21
Gambar 3.6 Hasil Segmentasi Citra B 21
Gambar 3.7 BMN Citra B 21
Gambar 3.8 Flowchart Prose Kerja Perangkat Lunak 28
Gambar 3.13 Rancangan Form Utama 34
Gambar 3.14 Rancangan Form About 35
Gambar 4.1 Tampilan Form Utama 36
Gambar 4.2 Form About 37
Gambar 4.3 Gambar Normal.bmp 38
Gambar 4.4 Gambar Brighup.bmp 39
Gambar 4.5 Gambar Brigtdown.bmp 39
Gambar 4.6 Gambar Contup.bmp 40
Gambar 4.7 Gambar Contdown.bmp 40
Gambar 4.8 Gambar uji2.bmp 41
Gambar 4.9 Gambar uji3.bmp 41
Gambar 4.10 Gambar uji4.bmp 42
Gambar 4.11 Menginput Gambar Pembanding 42
Gambar 4.12 Menginput Lokasi Pencarian Gambar 43
Gambar 4.13 Mendeteksi Garis Tepi Gambar Pembanding 44
Gambar 4.14 Segmentasi Gambar Dengan Metode Kohonen SOM 44
ABSTRAK
Abstrak—Frekuensi penyebaran informasi dalam bentuk image digital ini semakin
tinggi, baik dari segi kualitas maupun kuantitasnya. Hal ini menyebabkan sering
terjadinya duplikasi image digital yang memiliki kesamaan dalam bentuk gambar,
namun memiliki perbedaan dalam hal ukuran dan nama file. Duplikasi gambar ini
dapat menyebabkan pemborosan dalam media penyimanan data seperti hard disk atau
flash disk serta rumitnya pengaturan data dalam bentuk image digital tersebut. Oleh
karena itu, perlu adanya sebuah pendekatan data yang mendeteksi duplikasi image
digital di dalam media penyimpanan data, sehingga memudahkan pengguna untuk
melakukan penghapusan atau pengaturan image digital tersebut. Metode kohonen
neural network akan mengolah setiap sinyal dari image digital dan melakukan
pengecekan terhadap sebuah image digital. Metode ini akan mengolah setiap sinyal
dari image digital dan membentuk cluster-cluster disekitar tepi-tepi gambar
(dihasilkan oleh proses pendeteksian garis tepi menggunakan teknik edge linking)
yang selanjutnya diproses untuk menghasilkan nilai jarak antar cluster yang
berdekatan. Cluster-cluster yang dibentuk akan berfungsi sebagai garis virtual pada
daerah segmentasi. Garis virtual ini besar peranannya dalam hal menghubungkan
garis-garis yang terputus pada saat proses pendeteksian garis tepi sebelumnya. Hal ini
akan mempengaruhi tingkat ketelitian proses pendeteksian duplikasi image digital
yang dilakukan. Berdasarkan pengujian yang telah dilakukan, algoritma kohonen
neural network dapat segmentasi dan mengelompokkan image serta memiliki
komputasi waktu yang cepat.
KOHONEN NEURAL NETWORK FOR IMAGE DIGITAL DUPLICATE DETECTION USING EDGE DETECTION
ABSTRACT
Dissemination Information Frequency in the form of digital image is rising, both by
its quality and quantity. This causes frequent digital image duplication occurences
which have similarities in the form of images, and also differencies in size and file
name. Duplication of this image may waste the media data strorage such as hard disc
or flash disc as well as the complexity data settings in the form of the digital image.
Therefore the quary for a data approach to detect any digital image duplications in the
data strorage media to simplify users to remove or set the digital image is a must to
do. Kohonen neural network method shall process any signal from the digital image
and performs an inspection on a digital image. This method shall process any signal
from a digital image and create some clusters around the image’s edges (generated by
the edge detection process using the edge linking technique) and further shall be
processed to generate a distance value between adjacent clusters. Formed clusters
shall serve as a virtual line on the segmentation area. This virtual line has a major role
to reconnect any disconnected lines in the process of the previous edge detection time.
This shall affect the digital image duplication detection process accuracy level
conducted. Based on the ducted tests, the Kohonen neural network algorithm may
segment and classifyied the image and having a fast computational time.
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Perkembangan teknologi informasi saat ini sangatlah pesat. Berbagai ragam jenis
informasi dapat diakses dari berbagai jenis media. Image digital merupakan salah satu
media informasi yang sering digunakan dalam proses pertukaran informasi. Dengan
dukungan internet sebagai media penyebar informasi yang dapat diakses dengan cepat
dan mudah, frekuensi penyebaran informasi dalam bentuk image digital ini semakin
tinggi, baik dari segi kuantitas maupun kualitasnya.
Image digital disimpan dalam media penyimpanan dengan menyimpan pixel
penyusunnya. Oleh karena itu, memori yang dibutuhkan untuk menyimpan image
tergantung pada jumlah pixel yang menyusun citra. Semakin banyak pixel pada citra,
maka semakin besar memori yang dibutuhkan untuk menyimpan image (Fazry, 2008).
Hal ini menyebabkan sering terjadi duplikasi image digital yang memiliki kesamaan
dalam bentuk gambar, namun memiliki perbedaan dalam hal ukuran dan nama file.
Duplikasi gambar ini dapat menyebabkan pemborosan dalam media penyimpanan
data seperti hard disk atau flash disk serta rumitnya pengaturan data dalam bentuk
image digital tersebut. Oleh karena itu, perlu adanya sebuah pendekatan yang dapat
mendeteksi duplikasi image digital di dalam media penyimpanan data, sehingga
memudahkan pengguna untuk melakukan penghapusan atau pengaturan image digital
tersebut.
Pendeteksian duplikasi image digital ini dapat dilakukan dengan cara
membandingkan garis tepi setiap image di dalam media penyimpanan data, kemudian
persentase kesamaan garis tepinya. Segmentasi terhadap garis tepi image digital akan
membagi citra ke dalam daerah intensitasnya masing-masing sehingga bisa dibedakan
antara objek gambar dan background-nya (Mandalasari, 2013). Salah satu metode
segmentasi citra yang dapat dimanfaatkan untuk mengelompokkan dan melakukan
pengecekan terhadap sebuah image digital adalah metode Kohonen Neural Network.
Metode ini akan mengolah setiap sinyal dari image digital dan membentuk
cluster-cluster disekitar tepi-tepi gambar (dihasilkan oleh proses pendeteksian garis tepi
menggunakan teknik edge linking) yang selanjutnya diproses untuk menghasilkan
nilai jarak antar cluster yang berdekatan. Cluster-cluster yang dibentuk akan berfungsi
sebagai garis virtual pada daerah segmentasi. Garis virtual ini besar peranannya dalam
hal menghubungkan garis-garis yang terputus pada saat proses pendeteksian garis tepi
sebelumnya. Hal ini akan mempengaruhi tingkat ketelitian proses pendeteksian
duplikasi image digital yang dilakukan.
Dengan memberikan sebuah nilai derajat adaptasi yang diinginkan dalam
proses pendeteksian, pengguna dapat menggunakan hasil segmentasi dari metode
kohonen neural network ini sebagai bahan pembanding untuk melakukan tindakan
penghapusan atau pengaturan ulang terhadap image digital tersebut di dalam media
penyimpanan data. Dengan demikian, masalah duplikasi image digital yang memiliki
kesamaan bentuk gambar namun berbeda dalam hal ukuran dan nama filenya dapat
diatasi, tanpa harus melakukan pengecekan satu persatu terhadap seluruh image
digital yang tersimpan di dalam media penyimpanan data.
1.2. Rumusan Masalah
Sering terjadi duplikasi terhadap image digital, dimana satu atau lebih image digital
memiliki bentuk gambar yang sama, namun berbeda dalam hal ukuran dan nama file.
Untuk mendeteksi duplikasi ini secara manual (satu persatu) pada media penyimpanan
data berkapasitas besar akan menimbulkan kesulitan karena jumlah image digital yang
banyak.
1.3. Batasan Masalah
Batasan masalah pada tugas akhir ini adalah sebagai berikut :
2. Sinyal input yang digunakan dalam metode Kohonen Neural Network Self
Organizing Map adalah hasil pendeteksian garis tepi gambar yang diperoleh
menggunakan teknik edge linking.
3. Parameter perbandingan yang digunakan adalah selisih jarak standard
deviasi, klasifikasi kurtosis dan arah skewness.
4. Hasil output pendeteksian berdasarkan kesamaan bentuk gambar, tidak
sampai pada kesamaan warna.
5. Aplikasi yang akan dibuat tidak berbasis web.
6. Nilai T dan A dalam pendeteksian garis tepi yang digunakan merupakan nilai
konstan, yaitu 10 dan 0,5.
1.4. Tujuan Penelitian
Tujuan dari penelitian ini adalah membandingkan bentuk kesamaan gambar pada
media penyimpanan data untuk mencari gambar yang mengalami duplikasi,
berdasarkan hasil segmentasi garis tepi gambar dengan menggunakan metode kohonen
SOM.
1.5. Manfaat Penelitian
Penelitian ini diharapkan dapat memberikan manfaat bagi penulis, pembaca dan para
peneliti, sebagai berikut:
1. Dapat membantu meminimalisir terjadi duplikasi image digital yang
menyebabkan penuhnya media penyimpanan.
2. Tugas akhir ini dapat menambah variasi, referensi dan dikembangkan dalam
aplikasi segmentasi citra, khususnya yang menggunakan metode Kohonen Neural
Network Self Organizing Map.
1.6. Metodologi Penelitian
Metodologi penelitian yang digunakan pada penelitian ini adalah:
a. Studi Literatur
Pada tahap studi literature, penulis mengumpulkan data referensi-referensi yang
menyulur tentang permasalahan diatas. Tahapan ini ditujukan untuk mengetahui
bagaimana mereka menyelesaikannya, kemudian seberapa jauh pengembangan
terhadap pengaplikasian Kohonen Neural Network Self Organizing Map ini serta
seberapa jauh yang dapat dilakukan untuk memperbaiki penelitian para peneliti
lain tersebut.
b. Pengumpulan Data
Pada tahap pengumpulan data, dilakukan pengumpulan data yang mendukung
dalam penyelesaian masalah yang diteliti secara sistematis.
c. Analisa dan Perancangan Sistem
Pada tahap ini, penulis akan melakukan analisa terhadap kumpulan data yang
telah dilakukan pada tahapan sebelumnya, dalam penyelesaian suatu masalah
sehingga dapat merancang sebuah sistem yang akan diimplementasikan nantinya.
d. Implementasi Sistem
Pada tahap pengimplementasi sistem, penulis melakukan pengimplementasian
Kohonen Neural Network Self Organizing Map kedalam aplikasi yang akan
dibuat berdasarkan pada analisa dan rancangan sebelumnya. Implementasi
meliputi pembuatan sistem dalam menyelesaikan masalah yang diteliti.
e. Pengujian Sistem
Pada tahap ini, penulis melakukan pengujian terhadap system yang telah dibuat
untuk mengetahui kehandalan sistem tersebut dan untuk mengetahui apakah telah
sesuai dengan yang diharapkan dalam penelitian ini.
f. Dokumentasi Sistem
Pada tahap dokumentasi sistem ini, penulis menyusun laporan terhadap sistem
1.7. Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri dari lima bagian utama sebagai berikut:
BAB 1 PENDAHULUAN
Bab ini berisi latar belakang, rumusan masalah, batasan masalah, tujuan penelitian,
manfaat penelitian, metodologi penelitian, dan sistematika penulisan.
BAB 2: LANDASAN TEORI
Bab ini berisi teori-teori yang digunakan untuk memahami permasalahan yang dibahas
pada penelitian ini. Pada bab ini dijelaskan Kohonen Neural Network, Edge Linking,
Standard Deviasi, Kurtosis, Skewness dan Knowledge tentang pendeteksian gambar
melalui garis tepi.
BAB 3: ANALISIS DAN PERANCANGAN
Bab ini membahas tentang perancangan sistem dan program yang mencakup
perancangan sistem dan perancangan interface. Dalam perancangan sistem
dicantumkan data flow diagram untuk mempermudah penjelasan sistem.
BAB 4: IMPLEMENTASI DAN PENGUJIAN
Bab ini berisi pembahasan tentang implementasi dari analisis dan perancangan
perangkat lunak yang disusun pada Bab 3 dan pengujian terhadap sistem yang
dibangun.
BAB 5: KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari keseluruhan uraian bab-bab sebelumnya dan
BAB 2
LANDASAN TEORI
2.1. Citra Digital
Citra digital adalah citra yang bersifat diskrit yang dapat diolah oleh computer. Citra
ini dapat dihasilkan melalui kamera digital dan scanner ataupun citra yang telah
mengalami proses digitalisasi (Fahzuanta, 2010). Pada sebuah citra masing-masing
pixelnya memiliki warna tertentu, warna tersebut adalah merah (Red), hijau (Green)
dan biru (Blue). Jika masing-masing warna memiliki range 0-225, maka totalnya
adalah 2553=16.581.378 (16 k) variasi warna berbeda pada gambar, dimana variasi
warna ini cukup untuk gambar apapun. Karena jumlah bit yang diperlukan untuk
setiap pixel, gambar tersebut juga disebut gambar-bit warna. (Kusumanto, 2011)
Color image ini terdiri dari tiga matriks yang mewakili nilai-nilai merah, hijau dan
biru untuk setiap pixelnya. Misalnya diambil suatu kotak kecil dari bagian citra
direpresentasikan dengan matriks berukuran 6x7, seperti terlihat pada gambar 2.1.
2.2. Pengolahan Citra Digital
Citra digital dapat didefinisikan sebagai fungsi dua variabel f(x,y), dimana x dan y
adalah koordinat spasial dan nilai f(x,y) adalah intensitas citra pada koordinat tersebut.
Hal tersebut diilustrasikan pada Gambar 2.2. Teknologi dasar untuk menciptakan dan
menampilkan warna pada citra digital, citra merupakan kombinasi dari tiga warna
dasar, yaitu merah, hijau dan biru (Iqbal, 2010). Komposisi warna RGB tersebut
dapat dijelaskan pada Gambar 2.2.
Gambar 2.2 Citra Digital (Iqbal, 2010)
Sebuah citra di konversi ke bentuk digital agar dapat disimpan dalam memori
komputer atau media lain. Ketika sebuah citra sudah diubah ke dalam bentuk digital
bermacam-macam proses pengolahan citra dapat diperlakukan terhadap citra tersebut.
Pengolahan citra merupakan proses untuk menghasilkan citra sesuai dengan keinginan
atau kualitasnya menjadi lebih baik. Inputannya adalah citra dan keluarannya juga
citra tapi dengan kualitas lebih baik daripada citra masukan. Misal citra warnanya
kurang tajam, kabur (blurring) dan mengandung noise (misal bintik-bintik putih)
sehingga perlu ada pemrosesan untuk memperbaiki citra karena citra tersebut menjadi
sulit diinterpretasikan karena informasi yang disampaikan menjadi berkurang
2.3. Edge Linking
Secara ideal, teknik yang digunakan untuk mendeteksi diskontinuitas seharusnya
hanya menghasilkan pixel-pixel yang berada pada batas region. Namun dalam
prakteknya hal ini jarang terjadi karena adanya noise, batas yang terpisah karena
pencahayaan yang tidak merata, dan efek lain yang mengakibatkan variasi intensitas.
Untuk itu algoritma edge detection biasanya dilanjutkan dengan prosedur Edge
Linking untuk merangkai pixel-pixel tersebut menjadi satu kesatuan sehingga
memberikan suatu informasi yang berarti (Fahzuanta, 2010).
Teknik yang dapat digunakan untuk Edge Linking adalah local processing,
yaitu dengan menganalisa karakteristik pixel-pixel di dalam suatu tetangga (3 x 3 atau
5 x 5) pada semua titik (x,y) di dalam citra yang telah mengalami edge-detection.
Selanjutnya semua titik yang sejenis dihubungkan sehingga membentuk kumpulan
pixel yang memiliki sifat-sifat yang sama.
Dua sifat utama yang digunakan untuk menentukan kesamaan edge pixel
dalam analisa ini adalah :
1. Besarnya respon gradien operator yang digunakan
2. Arah gradien
Sifat yang pertama dinyatakan dengan nilai ∇f yang telah dibahas sebelumnya.
Jadi suatu edge pixeldengan koordinat (x’,y’) dan bertetangga dengan (x,y), dikatakan
memiliki magnitude sama dengan pixel di (x,y) jika : dimana ∇f = vektor dan T =
threshold positif. Suatu edge pixel dengan koordinat (x’,y’) dan bertetangga dengan
(x,y), dikatakan memiliki sudut yang sama dengan pixel di (x,y) jika : di mana A =
threshold sudut. Suatu titik yang menjadi tetangga dari (x,y) dihubungkan dengan titik
(x,y) jika memenuhi kedua kriteria di atas, baik magnitude maupun sudutnya. Proses
linking ini diulang untuk seluruh lokasi titik yang ada di dalam citra
2.4.Kohonen Neural Network
Kohonen Neural Network atau Kohonen SelfOrganizing Network merupakan analogi
sederhana dari cara kerja otak manusia dalam mengelompokan informasi. Penelitian
masing-masing merespon fungsi-fungsi khusus. Sel-sel saraf mengelompokan dirinya
sendiri sesuai dengan informasi yang diterima. Pengelompokan seperti ini disebut
unsupervised learning (Kusumadewi,2003).
Kohonen Neural Network terdiri dari 2 lapisan, lapisan masukan dan lapisan
keluaran. Keluaran pada Kohonen Neural Network berjumlah sama dengan jumlah
pola yang membentuk neuron keluaran, dan hanya satu neuron keluaran yang menjadi
pemenang (Heaton, 2003).
Proses pembelajaran Kohonen Neural Network bersifat kompetitif atau
bersaing. Untuk setiap pelatihan terdapat satu neuron keluaran dalam kondisi firing
(neuron keluaran yang bernilai paling besar). Bobot yang terkoneksi pada neuron
keluaran tersebut akan disesuaikan sehingga nilainya lebih kuat pada latihan
berikutnya. Berikut proses pembelajaran Kohonen Neural Network (Zamasari,2005):
1. Inisialisasi seluruh bobot dengan nilai random: wij normalisasi seluruh bobot
dan vektor masukan x, set parameter learning rate.
2. Kerjakan a-f sampai kondisi berhenti bernilai BENAR
a. evaluasi kesalahan untuk setiap vektor masukan x.
b. simpan bobot dengan kesalahan palingminimal.
c. cek neuron keluaran yang telah firing atau aktif, jika terdapat neuron.
keluaran yang tidak pernah firing, maka forcewin dan kembali ke a). Jika tidak
lanjutkan langkah e).
d. Forcewin
hitung aktifasi setiap vektor masukan dan ambil indeks vektor masukan
dengan aktifasi yang paling kecil.
setiap neuron keluaran dengan vektor masukan yang didapat pada a)
dan pilih indeks neuron keluaran dengan nilai terbesar yang tidak
pernah aktif selama latihan.
modifikasi bobot dari neuron keluaran pada butir b.
e. Sesuaikan bobot dengan (persamaan 2.1) w’ = w + α(x-w)………..(2.1)
f. Perbaiki learning rate
g.Test kondisi berhenti.
3. Ambil bobot terbaik
2.5. Standard Deviasi
Standard Deviasi adalah akar kuadrat dari total selisih dengan nilai rata-ratanya.
Standard deviasi adalah salah satu teknik statistik yg digunakan untuk menjelaskan
homogenitas kelompok. Standard deviasi disebut juga dengan atau simpangan baku.
Standard deviasi merupakan variasi sebaran data. semakin kecil nilai sebarannya
berarti variasi nilai data makin sama. Jika sebarannya bernilai 0, maka nilai semua
datanya adalah sama. Semakin besar nilai sebarannya berarti data semakin bervariasi.
Dengan menghitung nilai standar deviasi dari sebuah citra, akan didapat jumlah
ukuran yang detail pada sub band (Thaiyalnayaki, 2010). Ada dua bentuk rumus
standard deviasi yang dapat digunakan, yaitu rumus standard deviasi untuk populasi
(persamaan 2.3) dan rumus standard deviasi untuk sampel (persamaan 2.2).
σ
=
…..…………...(2.2)σ
=
………..(2.3)Dimana :
σ = Nilai standar deviasi
N = Jumlah total pixel
= Nilai pixel pada posisi ke-i
µ = Nilai rata-rata pixel dalam citra
2.6. Kurtosis
Kurtosis adalah derajat keruncingan suatu distribusi (biasanya diukur relatif terhadap
distribusi normal). Kurva yang lebih runcing dari distribusi normal dinamakan
leptokurtik, yang lebih datar platikurtik dan distribusi normal disebut mesokurtik
(Thaiyalnayaki, 2010).
Adapun rumus kurtosis yang digunakan, seperti terlihat pada (persamaan 2.4).
Dimana :
k = Nilai kurtosis
σ = Nilai standar deviasi
N = Jumlah total pixel
= Nilai pixel pada posisi ke-i
µ = Nilai rata-rata pixel dalam citra
2.7. Skewness
Skewness adalah derajat ketidaksimetrisan suatu distribusi. Jika kurva frekuensi suatu
distribusi memiliki ekor yang lebih memanjang ke kanan (dilihat dari meannya) maka
dikatakan menceng kanan (positif) dan jika sebaliknya maka menceng kiri (negatif).
Skewness digunakan untuk mengukur simetris atau kemencengan suatu kurva.
Skewness adalah ukuran asimetri data di sekitar mean sampel. (Thaiyalnayaki, 2010).
Gambar 2.3 Kurva Skweness dan Kurtosis
Adapun rumus skewness yang digunakan seperti terlihat pada (persamaan 2.5).
g
=
………..(2.5)Dimana :
g = Nilai kurtosis
= Nilai pixel pada posisi ke-i
µ = Nilai rata-rata pixel dalam citra
2.8. Penelitian Terdahulu
Bagian ini menjelaskan beberapa penelitian terdahulu terkait dengan penelitian
pengolahan citra, kohonen neural network dan pendeteksian garis tepi. Penelitian yang
telah dilakukan dalam pendeteksian garis tepi terdapat pada penentuan model
kerangka kepala manusia dengan banyak gambar yang berbeda sebagai objek
penelitiannya (Constantio. 2010), Putra (2010) membandingkan metode Edge Linking
dan Sobel untuk mendeteksi citra digital menghasilkan kecepatan proses pendeteksian
garis tepi dengan menggunakan metode Edge Linking lebih cepat dibandingkan operator
Sobel.. Tabel penelitian terdahulu ditunjukkan pada tabel 2.1.
Tabel 2.1 Tabel Penelitian Terdahulu
Penulis Teori Yang Digunakan Kelebihan dan
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini, akan dibahas beberapa hal mengenai penerapan algoritma dan analisa
perancangan sistem dalam mengimplementasikan Algoritma Kohonen Nueral Network
Self-Organising Maps untuk mendeteksi image digital.
3.1. Analisis Sistem
Pada bagian ini, penulis melakukan analisis terhadap metode kohonen self organizing
map untuk mengamati bagaimana proses kerja metode ini dalam melakukan
segmentasi pixel hasil pendeteksian garis tepi, kelebihan dan kekurangannya serta
bagaimana bentuk implementasinya dalam sebuah bahasa pemrograman.
3.1.1. Analisis Fasilitas Sistem
Analisis ini dilakukan untuk memperoleh fasilitas-fasilitas apa saja yang akan
ditawarkan pada sistem yang dirancang. Sesuai dengan kebutuhan awal, yaitu untuk
melakukan pencarian terhadap citra digital yang memiliki kesamaan bentuk di dalam
lokasi media penyimpanan data sesuai dengan citra pembanding yang diinputkan,
maka fasilitas yang ditawarkan dalam sistem yang dirancang ini adalah sebagai
berikut :
1. Fasilitas Pemilihan Lokasi Pencarian Citra
Fasilitas pemillihan lokasi pencarian citra dirancang untuk memberikan
kemudahan kepada pengguna dalam menentukan lokasi penyimpanan citra digital
memilih lokasi penyimpanan citra digital dalam bentuk folder, dimana sistem akan
secara otomatis menampilkan isi seluruh folder yang memiliki format citra digital
(BMP).
2. Fasilitas Nilai Batas Threshold
Fasilitas nilai batas threshold dirancang untuk memberikan fleksibilitas kepada
penguna dalam menentukan nilai lower threshold (LT) dan nilai higher threshold
(HT) dalam proses segmentasi citra. Nilai LT digunakan untuk menentukan batas
pixel terendah untuk melakukan segmentasi terhadap warna hitam, sedangkan nilai
HT digunakan untuk menentukan batas pixel tertinggi untuk melakukan
segmentasi terhadapp warna putih.
3. Fasilitas Nilai Batas Error
Fasilitas nilai batas error dirancang untuk memberikan kemudahan bagi pengguna
dalam hal menentukan tingkat akurasi pembandingan kesamaan bentuk citra
digital. Sistem akan menentukan apakah citra digital yang dibandingkan termasuk dalam kategori ”mirip” atau ”tidak mirip” berdasarkan nilai batas error yang diinputkan.
3.1.2. Analisis Kebutuhan
Kebutuhan merupakan suatu keinginan yang akan dicapai dalam melakukan
perancangan. Kebutuhan menggambarkan fungsi dan batasan untuk aplikasi. Adapun
analisis kebutuhan dibagi menjadi dua, antara lain adalah kebutuhan fungsional dan
kebutuhan nonfungsional.
3.1.2.1. Kebutuhan Fungsional
Kebutuhan fungsional merupakan kebutuhan yang fungsi-fungsinya harus dipenuhi
pada rancangan aplikasi. Kebutuhan fungsional yang harus dipenuhi pada aplikasi
yang akan dirancang adalah :
1. Aplikasi harus mampu mendeteksi garis tepi dan segmentasi Antara dua buah
gambar.
3.1.2.2. Kebutuhan Nonfungsional
Kebutuhan nonfungsional terdiri dari beberapa macam karakteristik, antara lain :
1. Performa
Aplikasi yang akan dibangun dapat menampilkan hasil dari fungsi sistem
untuk menganalisis kesamaan bentuk gambar.
2. Efisiensi
Aplikasi yang akan dibangun diharuskan sederhana, agar memudahkan
pengguna untuk memakainya.
3. Ekonomi
Aplikasi yang akan dibangun tanpa mengeluarkan biaya tambahan dalam
penggunaannya.
3.1.3. Penerapan Algoritma Kohonen Neural Network SOM
Pada perancangan perangkat lunak pembandingan kesamaan bentuk citra digital
menggunakan metode kohonen SOM ini, yang menjadi permasalahan adalah
bagaimana proses segmentasi garis tepi citra yang dihasilkan dari proses edge linking,
kemudian membandingkan hasil segmentasi tersebut sehingga diperoleh keputusan
tingkat kemiripan dalam hal kesamaan bentuknya. Proses pendeteksian garis tepi
menggunakan metode edge linking yang digunakan dalam penelitian ini,
menggunakan 2 (dua) operator, sebagaimana terlihat pada (persamaan 3.1).
OpX = OpY = …………....(3.1)
Metode edge linking bekerja dengan cara menghitung nilai intensitas pixel-pixel yang
berbatasan dengan pixel yang akan dihitung nilai garis tepinya dalam mode warna
grayscale. Sebagai contoh, jika sebuah citra A dengan ukuran dimensi 4 X 4 pixel,
dengan struktur pixel dalam mode warna grayscale seperti pada Gambar 3.1, akan
10 110 45 110
215 251 250 260
20 260 30 240
25 135 55 50
Gambar 3.1 Struktur Pixel Citra A
Untuk menghasilkan nilai garis tepi dari struktur pixel citra A di atas, akan
dilakukan perulangan sebanyak ukuran dimensi pixel (4 X 4) dengan langkah-langkah
sebagai berikut :
1. Tentukan posisi pixel yang akan diproses, simpan dalam variabel X dan Y.
2. Tentukan posisi operator yang akan digunakan, simpan dalam variabel I
dan J.
3. Tentukan nilai intensitas dengan cara mengambil nilai struktur pixel pada
posisi (X+I-1, Y+J-1).
4. Tentukan nilai operator X dan nilai operator Y pada posisi (I,J), simpan
dalam variabel OpX dan OpY.
5. Hitung nilai Gradien X menggunakan persamaan :
Gradien X = Gradien X + (Nilai Intensitas * Nilai Operator X (I,J))….(3.2)
6. Hitung nilai Gradien Y menggunakan persamaan :
Gradien Y = Gradien Y + (Nilai Intensitas * Nilai Operator Y (I,J))….(3.3)
7. Hitung nilai garis tepi pixel pada posisi (X,Y) menggunakan persamaan :
Garis Tepi = ………..…………..(3.4)
Sebagai contoh, nilai garis tepi dari Gambar 3.1 di atas pada posisi pixel (0,0)
dapat dihitung sebagai berikut :
Gradien X = 0
Gradien Y = 0
Posisi Pixel (0,0) dan Posisi Operator (0,0)
Nilai intensitas (0+0-1, 0+0-1) = Tidak ditemukan
Posisi Pixel (0,0) dan Posisi Operator (0,1)
Posisi Pixel (0,0) dan Posisi Operator (0,2)
Nilai intensitas (0+0-1, 0+2-1) = Tidak ditemukan
Posisi Pixel (0,0) dan Posisi Operator (1,0)
Nilai intensitas (0+1-1, 0+0-1) = Tidak ditemukan
Posisi Pixel (0,0) dan Posisi Operator (1,1)
Nilai intensitas (0+1-1, 0+1-1) = 10
Nilai OpX (1,1) = 0
Posisi Pixel (0,0) dan Posisi Operator (1,2)
Nilai intensitas (0+1-1, 0+2-1) = 215
Nilai OpX (1,2) = 1,41
Posisi Pixel (0,0) dan Posisi Operator (2,0)
Nilai intensitas (0+2-1, 0+0-1) = Tidak ditemukan
Posisi Pixel (0,0) dan Posisi Operator (2,1)
Nilai intensitas (0+2-1, 0+1-1) = 110
Nilai OpX (2,1) = 0
Posisi Pixel (0,0) dan Posisi Operator (2,2)
Nilai intensitas (0+2-1, 0+2-1) = 251
Nilai OpY (2,2) = 1
Setelah memperoleh nilai garis tepi seperti terlihat pada Tabel 3.1,nilai garis
tepi ini kemudian dibagi dengan 3 (tiga) untuk memperoleh nilai akhir garis tepi citra
A dengan menggunakan metode edge linking. Jika hasil akhir yang diperoleh lebih
diperoleh lebih besar dari 255, maka nilainya akan diubah menjadi 255, sebagaimana
terlihat pada Tabel 3.2.
Tabel 3.2 Hasil Garis Tepi Citra A
Posisi Nilai Akhir Garis Tepi 0 0 220
menggantikan nilai pixel Citra A, sehingga nilai tersebut berubah seperti terlihat pada
Gambar 3.2.
220 255 255 231
247 76 86 153
255 185 114 200
178 140 205 128
Gambar 3.2 Hasil Deteksi Garis Tepi Citra A
Berdasarkan jurnal penelitian oleh Constantino Carlos Reyes-Aldosoro,
algoritma kohonen SOM dapat digunakan pada proses segmentasi warna pada citra
hasil deteksi garis tepi. Dengan menggunakan kohonen SOM, citra hasil deteksi garis
putih, berdasarkan nilai LT (Lower Threshold) dan HT (Higher Threshold). Nilai LT
dan HT ini akan menjadi batas bawah dan batas atas dalam proses segmentasi citra
hasil deteksi garis tepi. Adapun aturan segmentasi kohonen SOM dalam memisahkan
warna menjadi hitam atau putih adalah sebagai berikut :
1. If (0 < k≤ LT) Then k = 0
2. If (LT < k ≤ HT) Then k = k
3. If (HT < k ≤ 255) Then k = 0
Dengan k adalah nilai pixel citra digital yang akan disegmentasi, maka hasil
segmentasi yang diperoleh adalah pengelompokan pixel yang lebih besar dari nilai LT
dan lebih kecil dari nilai HT maka hasil segmentasi pada struktur pixel citra A pada
Gambar 3.1 di atas dengan menggunakan nilai LT sebesar 100 dan nilai HT sebesar
250, sebagaimana terlihat pada Gambar 3.3.
220 0 0 231
247 0 0 153
0 185 114 200
178 140 205 128
Gambar 3.3 Hasil Segmentasi Citra A
Setelah melakukan segmentasi berdasarkan nilai LT dan nilai HT, langkah
selanjutnya adalah menghitung best matching node (BMN), dimana nilai yang tidak
sama dengan 0 (nol) merupakan best match dan akan diberi penanda angka 1, seperti
terlihat pada Gambar 3.4.
1 0 0 1 0 0 0 1 0 1 1 1 1 1 1 1
Sebagai bahan perbandingan, akan digunakan sebuah citra digital dengan
ukuran dimensi yang sama dengan struktur pixel hasil deteksi garis tepi menggunakan
edge linking seperti terlihat pada Gambar 3.5
220 255 255 231
250 76 86 153
255 185 100 200
178 140 205 128
Gambar 3.5 Struktur Pixel Citra B
Dengan menggunakan aturan LT dan HT yang sama, maka diperoleh hasil
segmentasi untuk citra B, sebagaimana terlihat pada Gambar 3.6.
0 0 0 231
0 0 0 153
0 185 0 200
178 140 205 128
Gambar 3.6 Hasil Segmentasi Citra B
Adapun hasil penghitungan BMN dari citra B pada Gambar 3.6 di atas, seperti
terlihat pada Gambar 3.7.
0 0 0 1 0 0 0 1 0 1 0 1 1 1 1 1
Gambar 3.7 BMN Citra B
Untuk menghitung tingkat kesamaan bentuk antara citra A dan citra B, akan
dihitung perbandingan antara nilai standar deviasi, kurtosis dan skewness dari kedua
citra digital tersebut. Penghitungan nilai deviasi dilakukan dengan menggunakan
persamaan (2.3). Persamaan 2.3 dipilih karena nilai standard deviasi yang akan
dihitung berasal dari data yang berkelompok, bukan merupakan sampel dari suatu
Penghitungan nilai kurtosis dilakukan dengan menggunakan persamaan (2.4)
dan penghitungan nilai skewness dilakukan dengan menggunakan persamaan (2.5).
Untuk memperoleh nilai standard deviasi dari citra A dan citra B, perlu
dihitung terlebih dahulu nilai rata-rata pixel dalam masing-masing citra. Adapun nilai
rata-rata pixel dalam citra A adalah sebagai berikut :
=
=
= 0,625
Sedangkan nilai rata-rata pixel dalam citra B adalah sebagai berikut :
=
=
= 0,5
Maka dapat dihitung nilai standard deviasi untuk citra A sebagai berikut :
=
=
=
=
= 0,484
=
=
=
=
= 0,5
Nilai kurtosis dari citra A yang diperoleh adalah sebagai berikut :
=
=
=
= 1,5704
Sedangkan nilai kurtosis untuk citra B adalah sebagai berikut :
=
=
= 1
Nilai skewness dari citra A yang diperoleh adalah sebagai berikut :
=
=
=
=
=
= (-0,5158)
Sedangkan nilai skewness untuk citra B adalah sebagai berikut :
=
=
=
= 0
Dari hasil perhitungan standard deviasi, kurtosis dan skewness untuk citra A
dan citra B, diperoleh hasil sebagaimana terlihat pada Tabel 3.3.
Tabel 3.3 Standard Deviasi, Kurtosis dan Skewness Citra Standard Deviasi Kurtosis Skewness
A 0,484 1,5704 -0,5158
B 0,5 1 0
Nilai-nilai ini kemudian akan diolah untuk digunakan sebagai nilai
perbandingan tingkat kesamaan bentuk antara citra A dan citra B, dengan output hasil
berupa true atau false. Nilai standard deviasi akan dibandingkan dengan cara
menghitung selisih jarak nilai keduanya menggunakan persamaan (3.5):
= ……….………(3.5)
Nilai ini kemudian dibandingkan nilai error maksimum yang sudah ditentukan
sebelumnya. Jika nilai < Max Error, maka akan menghasilkan output true,
sebaliknya akan menghasilkan output false.
Untuk nilai kurtosis, akan dibandingkan klasifikasi peak of distribution dari
masing-masing nilai kurtosis citra A dan citra B, apakah termasuk ke dalam klasifikasi
leptokurtic, mesokurtic atau platykurtic. Klasifikasi ini dihitung dengan cara
melakukan operasi pengurangan nilai 3 (tiga) terhadap nilai kurtosis masing-masing
dalam klasifikasi mesokurtic. Jika hasil pengurangan bernilai positif, maka kurtosis
termasuk ke dalam klasifikasi leptokurtic. Sedangkan jika hasil pengurangan bernilai
negatif, maka kurtosis termasuk ke dalam klasifikasi platykurtic. Klasifikasi kurtosis
kedua citra ini kemudian akan dibandingkan, dimana jika memiliki klasifikasi kurtosis
yang sama, output yang dihasilkan adalah true, sebaliknya akan menghasilkan output
false.
Untuk nilai skewness, akan dibandingkan arah skewness dari masing-masing
citra. Penentuan arah skewness ini dilihat berdasarkan nilai skewness yang dihasilkan.
Jika nilai skewness adalah positif, maka arah skewness condong ke kanan, sebaliknya
jika nilai skewness adalah negatif, maka arah skewness condong ke kiri. Arah
skewness kedua citra ini kemudian dibandingkan, dimana jika memiliki arah skewness
yang sama, output yang dihasilkan adalah true, sebaliknya akan menghasilkan output
false.
Berdasarkan Tabel 3.3 sebelumnya, diperoleh nilai output dari parameter
perbandingan untuk melihat tingkat kesamaan bentuk antara citra A dan citra B
Menghasilkan nilai negatif, maka kurtosis citra A merupakan platykurtic.
-3 = 1-3
= -2
Menghasilkan nilai negatif, maka kurtosis citra B merupakan platykurtic.
Klaifikasi kurtosis citra A sama dengan klasifikasi kurtosis citra B. Output
yang dihasilkan adalah true.
3. Arah Skewness
Bernilai negatif, maka arah skewness condong ke kiri.
= 0
Bernilai positif, maka arah skewness condong ke kanan.
Arah skewness citra A tidak sama dengan arah skewness citra B. Output
yang dihasilkan adalah false.
Hasil output parameter perbandingan antara citra A dan citra B adalah false
untuk selisih jarak standard deviasi, true untuk klasifikasi kurtosis dan false untuk
arah skewness. Dari hasil output ini, terlihat ada dua output yang bernilai false. Maka
dapat disimpulkan bahwa citra A dan citra B tidak memiliki kemiripan dari segi
bentuk.
3.2. Perancangan Sistem
Setelah melakukan analisis terhadap sistem perangkat lunak yang akan dirancang,
selanjutnya dilakukan perancangan terhadap perangkat lunak tersebut. Adapun
tahapan perancangan yang dilakukan meliputi flowchart sistem, perancangan
antarmuka program serta perancangan algoritma.
3.2.1. Flowchart Sistem
Berdasarkan hasil analisis masalah yang dilakukan sebelumnya, penulis merancang
proses kerja perangkat lunak pembanding kesamaan bentuk gambar menggunakan
Gambar 3.8Flowchart Proses Kerja Perangkat Lunak Start
Input lokasi penyimpanan image digital
Input nilai LT
PA = Pixel image digital pembanding
Deteksi garis tepi PA menggunakan edge linking
Input image digital pembanding
GA = Pixel garis tepi PA
GA (X,Y) < 0
Cek pixel GA dari (0,0) hinga (n,n)
GA (X,Y) = 0
GA (X,Y) > 255 GA (X,Y) = 255
Y
Y N
Pengecekan selesai? N
N
PB1-n = Pixel image digital pada lokasi penyimpanan
LT = Nilai LT
HT ← Nilai HT
Y
Gambar 3.9Flowchart Proses Kerja Perangkat Lunak (Lanjutan) A
Deteksi garis tepi PB1-n menggunakan edge linking
GB1-n = Pixel garis tepi PB1-n
Cek pixel GB1-n dari (0,0) hinga (n,n)
GB1-n (X,Y) < 0 GB1-n (X,Y) = 0
GB1-n (X,Y) > 255 GB1-n (X,Y) = 255
Y
Y N
Pengecekan selesai? N
N
N
Segmentasi GB1-n menggunakan Kohonen SOM)
GBi (X,Y) < LT GBi (X,Y) = 0
LT ≤ GBi(X,Y) ≤ HT GBi (X,Y) = 1
GBi (X,Y) >LT GBi (X,Y) = 0
Segmentasi selesai?
Y
Y
Y N
N
N
Y N
Gambar 3.10Flowchart Proses Kerja Perangkat Lunak (Lanjutan)
SA =
B
Hitung mean GA
XA = Mean GA
Hitung standard deviasiGA
Hitung kurtosisGA
KA =
Hitung skewnessGA
SKA =
KA-3 < 0
KA-3 = 0
KA = 1
KA = -1
KA = 0
Y
Y N
N
SKA > 0 SKA= ”Right”
SKA= ”Left”
C
Y
Gambar 3.11Flowchart Proses Kerja Perangkat Lunak (Lanjutan) C
Hitung standard deviasi GB1-n
Hitung kurtosis GB1-n
SBi = Standard deviasi GBi
KBi = Kurtosis GBi
← Skewness G
KBi-3 < 0
KBi-3 = 0
KBi = 1
KBi = -1
KBi = 0
Y
Y N
N
SKBi > 0 SKBi= ”Right”
SKBi= ”Left”
Y
N
Bandingkan Nilai standard deviasi
(SA - SBi) < Max error H1i= ”True”
Y
N
H2i= ”False”
Bandingkan Nilai kurtosis
Gambar 3.12Flowchart Proses Kerja Perangkat Lunak (Lanjutan)
Flowchart program dimulai dengan penginputan file citra digital yang
digunakan sebagai citra pembanding. Kemudian dilakukan pendeteksian garis tepi
menggunakan metode edge linking. Hasil dari pendeteksian ini kemudian
disegmentasi menggunakan kohonen SOM berdasarkan nilai lower threshold dan
higher threshold yang diinputkan pengguna. Hasil segmentasi ini adalah nilai 1 untuk
pixel yang berada pada rentang nilai lower threshold hingga higher threshold. End
KA =KBi H2i= ”True”
Y
N
H2i= ”False”
D
Bandingkan Arah Skewness
SKA =SKBi H3i= ”True”
Y
N
H3i= ”False”
Cek Hasil Perbandingan
H1i = ”True” And H2i = ”True” And H3i = ”True”
Gambar Mirip Gambar Tidak Mirip
Tampilkan Hasil Perbandingan
Sedangkan pixel yang berada diluar rentang nilai tersebut akan menghasilkan
segmentasi dengan nilai 0.
Selanjutnya, pengguna dapat memilih lokasi pencarian citra digital yang akan
dibandingkan. Sistem akan menampilkan seluruh citra digital dengan format BMP
yang berada pada lokasi pencarian yang ditentukan. Kemudian, sistem akan
menghitung nilai standard deviasi, kurtosis dan skewness untuk citra pembanding,
demikian pula dilakukan penghitungan nilai standard deviasi, kurtosis dan skewness
untuk citra digital yang dibandingkan. Nilai-nilai ini akan digunakan sebagai
parameter perbandingan tingkat kesamaan bentuk antara citra pembanding dengan
citra yang dibandingkan dengan melihat selisih jarak standard deviasi keduanya,
klasifikasi kurtosis keduanya, serta arah skewness keduanya.
Jika selisih jarak standard deviasi antara citra pembanding dengan citra yang
dibandingkan lebih kecil dari nilai maksimum error, maka output parameter ini adalah
true, sedangkan jika tidak akan menghasilkan output parameter false. Jika klasifikasi
kurtosis antara citra pembanding dengan citra yang dibandingkan sama, maka output
parameter yang dihasilkan adalah true, sedangkan jika tidak akan menghasilkan
output parameter false. Jika arah skewness antara citra pembanding dengan citra yang
dibandingkan sama, maka output parameter yang dihasilkan adalah true, sedangkan
jika tidak akan menghasilkan output parameter false.
Ketiga output parameter ini akan dinilai untuk melihat tingkat kemiripan
bentuk antara citra pembanding dengan citra yang dibandingkan. Jika seluruh output
parameter bernilai true, maka dapat disimpulkan bahwa citra pembanding dan citra
yang dibandingkan memiliki kemiripan dalam hal bentuk gambarnya.
3.2.2. Perancangan Antarmuka Program
Setelah merancang proses kerja perangkat lunak yang akan dirancang, selanjutnya
dilakukan perancangan terhadap antarmuka perangkat lunak ini. Dalam perancangan
ini, penulis merancang dua buah form yang dapat digunakan pengguna untuk
1. Rancangan Form Utama
Form Utama merupakan tampilan yang dirancang sebagai interface agar user dapat
berinteraksi dengan sistem. Dalam melakukan interaksi dengan user, Form Utama
menggunakan tombol-tombol yang dapat dipilih oleh user, seperti tombol Open
Image, Process, Undo, Select Area serta Exit, seperti terlihat pada Gambar 3.13.
Gambar 3.8 Rancangan Form Utama
Gambar 3.13 Rancangan Form Utama
Pada Gambar 3.13, rancangan Form Utama memiliki beberapa tombol yang
dapat digunakan oleh pengguna untuk berinteraksi dengan perangkat lunak. Tombol
Load berfungsi untuk menginputkan image digital yang akan digunakan sebagai
pembanding. Setelah image digital pembanding diinputkan, tombol ini akan berubah
menjadi tombol Deteksi Tepi, yang berfungsi untuk mendeteksi garis tepi dari image
digital pembanding yang diinputkan. Jika proses deteksi garis tepi pada image digital
pembanding telah selesai dilakukan, tombol ini akan berubah menjadi Segmentasi,
yang berfungsi untuk melakukan segmentasi terhadap image digital pembanding dan
image digital yang akan dibandingkan.
Tombol ”...” berfungsi untuk menginputkan lokasi image digital yang akan
dibandingkan kemiripan bentuknya dengan image digital pembanding. Jika lokasi
Pembanding Gambar Dengan Kohonen SOM X
Gambar Pembanding
Deviasi Node Kurtosis Node Skewness Node Hasil
Tutup
image digital telah diinputkan, daftar file image digital yang berada pada lokasi
tersebut akan ditampilkan pada list box Daftar Gambar.
Tombol Proses berfungsi untuk memulai proses pendeteksian kemiripan
bentuk antara image digital pembanding dengan image digital pada Daftar Gambar.
Hasil dari pendeteksian ini akan ditampilkan pada list box Deviasi Node, Kurtosis
Node, Skewness Node dan Hasil.
Tombol Reset berfungsi untuk mengembalikan kondisi form seperti pada saat
pertama kali dijalankan, dimana sSeluruh list box akan dibersihkan.
Tombol ”?” berfungsi untuk menampilkan Form About yang berisi informasi mengenai perancang perangkat lunak, sedangkan tombol Tutup berfungsi untuk
menutup aplikasi.
2. Rancangan Form About
Form About merupakan tampilan yang dirancang untuk menampilkan informasi
mengenai perancang perangkat lunak pembanding kesamaan bentuk gambar
menggunakan algoritma kohonen SOM ini. Adapun rancangan Form About dapat
dilihat pada Gambar 3.14.
Gambar 3.14 Rancangan Form About
Perangkat Lunak Pembanding Kesamaan Bentuk Gambar Menggunakan Kohonen SOM Network
Oleh
Mahathir Febrian (091402131)
Jurusan Teknologi Informasi Universitas Sumatera Utara - Medan
BAB 4
IMPLEMENTASI DAN PEMBAHASAN
4.1. Implementasi
Setelah melakukan implementasi terhadap rancangan yang diperoleh sebelumnya ke
dalam bahasa pemrograman, penulis memperoleh hasil berupa sebuah perangkat lunak
pembanding gambar format BMP dengan metode kohonen SOM.
4.1.1 Tampilan Hasil
Hasil dari implementasi perangkat lunak yang penulis rancang adalah sebagai berikut :
1. Tampilan Form Utama
Tampilan Form Utama merupakan form yang ditampilkan pertama kali pada saat
sistem dijalankan. Adapun tampilan Form Utama ini seperti ditunjukkan pada Gambar
4.1.
2. Tampilan Form About
Tampilan Form About merupakan tampilan yang muncul jika pengguna menekan tombol “?” pada sudut kanan atas dari form Utama. Form ini menampilkan sekilas informasi mengenai perancang perangkat lunak. Adapun tampilan Form About seperti
ditunjukkan pada Gambar 4.2.
Gambar 4.2 Form About
4.1.2 Pengujian Sistem
Setelah mendapatkan hasil tampilan perangkat lunak, selanjutnya dilakukan pengujian
terhadap sistem tersebut. Adapun metode pengujian sistem yang penulis lakukan
adalah metode statis (static technique) dimana pengujian dibagi dalam beberapa
tahapan, sebagai berikut :
1. Menetapkan Parameter Pengujian
Adapun paramaeter pengujian yang penulis gunakan dalam pengujian sistem
ini adalah sebagai berikut :
a. Kestabilan Sistem
Parameter ini digunakan untuk menguji apakah sistem masih mengalami error
b. Ketepatan Hasil
Parameter ini digunakan untuk menguji apakah sistem telah dapat
menampilkan setiap gambar yang memiliki kesamaan bentuk berdasarkan
gambar pembanding yang diinputkan.
2. Menyiapkan Perangkat Pengujian
Dalam tahap ini, penulis menyiapkan satu gambar pembanding dengan nama
file normal.bmp yang memiliki dimensi 800 X 600 pixel, sebagaimana ditunjukkan
pada Gambar 4.3.
Gambar 4.3 Gambar normal.bmp
Gambar ini kemudian diproses dengan mengubah ukuran. Perubahan pertama
adalah memperbesar ukuran gambar sehingga berubah menjadi ukuran 1024 X 800
pixel dan disimpan dengan nama increase.bmp. Sedangkan perubahan kedua adalah
memperkecil ukuran gambar sehingga berubah menjadi ukuran 600 X 400 pixel dan
disimpan dengan nama decrease.bmp. Selain mengubah ukuran dimensi gambar,
dilakukan pula manipulasi dari nilai exposure gambar seperti nilai brightness dan
contrast. Untuk nilai brightness, dilakukan penambahan intensitas brightness sebesar
70 dan disimpan dengan nama brightup.bmp, serta pengurangan intensitas brightness
sebesar 70 dan disimpan dengan nama brightdown.bmp. Adapun tampilan dari proses
Gambar 4.4 Gambar brightup.bmp
Gambar 4.5 Gambar brightdown.bmp
Sama seperti manipulasi nilai brightness, dilakukan pula manipulasi nilai contrast
gambar pembanding dengan menaikkan intensitas contrast sebesar 70 dan disimpan
dengan nama file contup.bmp serta menurunkan intensitas contrast sebesar 70 dan
disimpan dengan nama file contdown.bmp, dengan hasil tampilan sebagaimana
Gambar 4.6 Gambar contup.bmp
Gambar 4.7 Gambar contdown.bmp
Selain manipulasi nilai exposure dari gambar pembanding, dilakukan pula
proses cropping dengan memotong sebagian tepi-tepi gambar tanpa mengenai gambar
utama dari gambar pembanding. Hasil dari proses ini kemudian disimpan dengan
Selanjutnya, disiapkan pula gambar yang akan digunakan dalam uji coba
perbandingan bentuk gambar sebanyak 3 (tiga) gambar, yaitu : Uji2.bmp, Uji3.bmp
dan Uji4.bmp, sebagaimana terlihat pada Gambar 4.8 sampai Gambar 4.11.
Gambar 4.8 Gambar Uji2.bmp
Gambar 4.8 merupakan gambar pengujian yang memiliki pola gambar yang
mendekati pola gambar pembanding (normal.bmp), yang dapat dilihat pada bentuk
tulisan pada sudut kiri atas dan bentuk persegi panjang pada bagian tengah gambar.
Gambar 4.9 Gambar Uji3.bmp
Gambar 4.9 merupakan gambar pengujian yang memiliki pola gambar yang
Gambar 4.10 Gambar Uji4.bmp
Gambar 4.10 merupakan gambar pengujian yang memiliki pola gambar yang
sama sekali tidak mirip dengan pola gambar pembanding (normal.bmp).
3. Melakukan Pengujian Pembandingan Gambar
Sebelum pengujian dilakukan, seluruh gambar yang akan digunakan dalam
pengujian dimasukkan ke dalam folder yang sama dengan lokasi penyimpanan
“C:\Documents and Settings\Administrator\My Documents\Testing”.
Langkah pertama dalam pengujian ini adalah melakukan load gambar
normal.bmp sebagai gambar pembanding dengan cara menekan tombol Load pada
form Utama. Hasil dari langkah ini adalah munculnya gambar pembanding pada
picture box Gambar Pembanding, seperti terlihat pada Gambar 4.11.
Langkah berikutnya, dilakukan penekanan tombol “…” untuk menentukan
lokasi pencarian gambar yang akan dibandingkan bentuk kesamaannya dengan
gambar normal.bmp. Pada langkah ini, lokasi pencarian yang digunakan adalah lokasi
penyimpanan seluruh gambar yang akan digunakan sebagai perangkat pengujian.
Hasil yang diperoleh adalah munculnya daftar gambar yang ada pada lokasi pencarian
tersebut, sebagaimana terlihat pada Gambar 4.12.
Gambar 4.12 Menginput Lokasi Pencarian Gambar
Selanjutnya, dilakukan penekanan tombol “Deteksi Tepi” untuk memulai proses pendeteksian garis tepi pada gambar pembanding. Hasil dari proses ini adalah
perubahan gambar pembanding menjadi bentuk deteksi garis tepi, sebagaimana
Gambar 4.13 Mendeteksi Garis Tepi Gambar Pembanding
Selanjutnya, dilakukan penekanan tombol “Segmentasi Kohonen” untuk memulai proses segmentasi gambar pembanding dan gambar yang akan dibandingkan
dengan metode kohonen SOM. Hasil yang diperoleh dari langkah ini adalah
perubahan gambar deteksi garis tepi menjadi bentuk segmentasi hitam dan putih,
sebagaimana terlihat pada Gambar 4.14.
Setelah proses segmentasi gambar selesai dilakukan, selanjutnya dilakukan penenkanan tombol “Proses” untuk memulai proses pembandingan kesamaan bentuk gambar antara gambar pembanding dengan daftar gambar yang akan dibandingkan.
Hasil yang diperoleh pada langkah ini adalah munculnya informasi nilai deviasi,
kurtosis dan skewness gambar pembanding serta gambar yang dibandingkan pada tab
“Hasil Perbandingan”. Pada langkah ini, nilai target deviasi yang diperoleh dari gambar pembanding adalah 0,488980556647796, dengan nilai target kurtosis sebesar
-1 dan nilai target skewness sebesar -1. Dengan nilai pembanding ini, diperoleh ada 3
(tiga) gambar yang dideteksi memiliki bentuk yang sama dengan gambar pembanding
yaitu gambar decrease.bmp, increase.bmp dan normal.bmp. Sedangkan gambar Proses
ketiga yang muncul adalah proses normalisasi garis pada citra digital zhangsuen.jpg
seperti terlihat pada Gambar 4.15.
Gambar 4.15 Hasil Pembandingan Gambar
4.2. Pembahasan
Dari pengujian sistem yang dilakukan, terlihat bahwa hasil pembandingan gambar
menghasilkan 8 (delapan) gambar yang dinyatakan memiliki kemiripan bentuk dengan
gambar pembanding, yaitu gambar brightup.bmp, brightdown.bmp, contup.bmp,
persiapan pengujian sebelumnya, diketahui bahwa gambar increase.bmp dan
decrease.bmp merupakan gambar yang sama dengan normal.bmp, hanya saja telah
mengalami proses perubahan ukuran dimensi. Demikian pula dengan brightup.bmp,
brightdown.bmp, contup.bmp dan contup.bmp yang merupakan hasil manipulasi nilai
exposure dari gambar normal.bmp, serta crop.bmp yang merupakan hasil cropping
dari gambar normal.bmp. Hal ini terlihat dari nilai selisih standard deviasi delapan
gambar tersebut yang masih berada di bawah nilai maksimum error, serta adanya
kesamaan pada klasifikasi kurtosis dan arah skewness gambar, sebagaimana terlihat
pada Tabel 4.1.
Tabel 4.1 Hasil Pembandingan Gambar Yang Mirip
Nama Gambar Selisih Jarak
Sedangkan untuk ketiga gambar lain yang dinyatakan tidak mirip dengan
gambar pembanding, dapat dinilai persentase kemiripannya dengan cara melihat
selisih jarak nilai deviasi, klasifikasi nilai kurtosis dan arah skewness masing-masing
gambar dengan gambar pembanding, sebagaimana ditunjukkan pada Tabel 4.2.
Tabel 4.2 Hasil Pembandingan Gambar Yang Tidak Mirip
Nama Gambar Selisih Jarak
Dari Tabel 4.2, terlihat bahwa gambar uji2.bmp memiliki klasifikasi kurtosis
dan arah skewness yang sama dengan gambar pembanding, namun selisih jarak
deviasinya berada diluar batas error. Gambar uji3.bmp memiliki selisih jarak deviasi