v
INTISARI
Pada perkembangan zaman yang terjadi habitat kupu-kupu semakin berkurang juga dengan
perburuan liar yang dilakukan karena keindahan dari corak kupu-kupu untuk hiasan dan koleksi specimen
membuat kupu-kupu semakin langka. Kelangkaan dapat berakibat pada kepunahan. Pengenalan pola dan
corak kupu-kupu harus dilakukan secara digital karena hal ini dapat menghemat biaya penelitian karena
jenis kupu-kupu dengan beraneka macam dan pola yang bermacam macam pula. Pengenalan dapat
mempermudah untuk mengenali spesies yang berada di lapangan sehingga dapat diteliti lebih lanjut. Juga
dari segi dokumentasi lebih mudah karena dibantu dengan teknologi computer dan pencitraan kamera.
Sistem pengenalan kupu-kupu ini menggunakan metode fuzzy logic dengan metode
inferensi sugeno. Kupu-kupu yang digunakan sebanyak 10 jenis yaitu (1)Papillio uleysses, (2)Idea
blancardi, (3) Papilio dutran, (4) Atrophneura nonik, (5) Taenaris selena, (6) Hebomoeia glaucippe, (8)
Hebomiae duostra, (9) Papilio cambrisuis, (10) Papilio dephobus, (11) Pachlioptera aristolochiae.
Tingkat pengenalan diuji dengan variasi ketinggian kamera dan sudut putar objek yang
divariasikan. Tingkat pengenalan dapat bekerja sesuai dengan yang diharapkan. Tingkat
pengenalan sebesar 95,90%. Dengan pengenalan terbaik pada ketinggian (55-65)cm dan sudut
yang terbaik adalah 0
0sampai ±5
0vi
ABSTRACT
In the times that happened butterfly habitat decreases also with poaching is done because
of the beauty of the butterfly pattern for decoration and collection of specimens made
increasingly rare butterfly. Scarcity can lead to extinction. Pattern recognition and pattern of
butterflies should be done digitally as this can save you the cost of research for species of
butterfly with a wide variety and a wide variety of patterns as well. The introduction can make it
easier to identify the species that are on the field so it can be investigated further. Also in terms
of the documentation easier for assisted with computer technology and imaging cameras.
Butterfly recognition system is using fuzzy logic with Sugeno inference method.
Butterflies are used as many as 10 types, namely
(1) Papillio uleysses, (2) Idea blancardi, (3)
Papilio dutran, (4) Atrophneura nonik, (5) Taenaris selena, (6) Hebomoeia glaucippe, (8)
Hebomiae duostra , (9) Papilio cambrisuis, (10) Papilio dephobus, (11) Pachlioptera
aristolochiae.
The recognition rate was tested with a variety of camera height and swivel angle varied
objects. The level of recognition may work as expected. Recognition rate of 95.90%. With the
best introduction to the altitude (55-65) cm and the best angle is 0
0to ±5
0.
Keywords: Butterfly, Fuzzy Logic, Inference Sugeno, 10 species of butterflies, angle, camera
height.
i
TUGAS AKHIR
PENGENALAN JENIS KUPU-KUPU DENGAN
PENGKLASIFIKASI SAMAR
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh:
MARINUS SKOTUS FEBRIANTO
NIM: 115114031
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
TYPE RECOGNITION OF BUTTERFLIES
USING FUZZY CLASSIFICATION
Presented as Partial Fulfillment of the Requirements
To Obtain the
Sarjana Teknik
Degree
In Electrical Engineering Study Program
Oleh:
MARINUS SKOTUS FEBRIANTO
NIM: 115114031
ELECTRICAL ENGINEERING STUDY PROGRAM
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2016
iii
HALAMAN PERSETUJUAN
TUGAS AKHIR
PENGENALAN JENIS KUPU_KUPU DENGAN
PENGKLASIFIKASI SAMAR
TYPE RECOGNITION OF BUTTERFLIES
USING FUZZY CLASSIFICATION
Oleh :
MARINUS SKOTUS FEBRIANTO
NIM: 115114031
iv
HALAMAN PENGESAHAN TUGAS AKHIR
PENGENALAN JENIS KUPU_KUPU DENGAN PENGKLASIFIKASI
SAMAR
(
TYPE RECOGNITION OF BUTTERFLIES USING FUZZY
CLASSIFICATION
)
v
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya orang
lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya
karya ilmiah.
Yogyakarta, 29 Februari 2016
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
“Just do it supaya berduit”
Persembahan
Karya ini kupersembahkan untuk…
Tuhan yang selalu membimbingku..
Papa Mama Kakak serta Fransisca D Renwarin yang slalu memberikan
dukungan dalam segala hal…
Teman
–
teman seperjuangan yang menemani di kala siang dan
vii
Dan untuk semua yang membaca karya ini.
LEMBAR PERNYATAN PERSETUJUAN PUBLIKASIKARYA ILMIAH
UNTUK KEPENTINGAN
AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama
: Marinus Skotus Febrianto
Nomor Mahasiswa
: 115114031
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas
Sanata Dharma karya ilmiah saya yang berjudul :
PENGENALAN JENIS KUPU-KUPU DENGAN PENGKLASIFIKASI
SAMAR
beserta perangkat yang diperlukan ( bila ada ). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk
media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas dan
mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu
meminta ijin dari saya maupun memberikan royalty kepada saya selama tetapmencatumkan
nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya.
Yogyakarta, 27 Februari 2016
viii
INTISARI
Pada perkembangan zaman yang terjadi habitat kupu-kupu semakin berkurang juga dengan
perburuan liar yang dilakukan karena keindahan dari corak kupu-kupu untuk hiasan dan koleksi specimen
membuat kupu-kupu semakin langka. Kelangkaan dapat berakibat pada kepunahan. Pengenalan pola dan
corak kupu-kupu harus dilakukan secara digital karena hal ini dapat menghemat biaya penelitian karena
jenis kupu-kupu dengan beraneka macam dan pola yang bermacam macam pula. Pengenalan dapat
mempermudah untuk mengenali spesies yang berada di lapangan sehingga dapat diteliti lebih lanjut. Juga
dari segi dokumentasi lebih mudah karena dibantu dengan teknologi computer dan pencitraan kamera.
Sistem pengenalan kupu-kupu ini menggunakan metode fuzzy logic dengan metode
inferensi sugeno. Kupu-kupu yang digunakan sebanyak 10 jenis yaitu (1)Papillio uleysses, (2)Idea
blancardi, (3) Papilio dutran, (4) Atrophneura nonik, (5) Taenaris selena, (6) Hebomoeia glaucippe, (8)
Hebomiae duostra, (9) Papilio cambrisuis, (10) Papilio dephobus, (11) Pachlioptera aristolochiae.
Tingkat pengenalan diuji dengan variasi ketinggian kamera dan sudut putar objek yang
divariasikan. Tingkat pengenalan dapat bekerja sesuai dengan yang diharapkan. Tingkat
pengenalan sebesar 95,90%. Dengan pengenalan terbaik pada ketinggian (55-65)cm dan sudut
yang terbaik adalah 0
0sampai ±5
0Kata kunci: Kupu-kupu,
Fuzzy logic
, Inferensi sugeno, 10 jenis kupu-kupu, sudut, ketinggian
kamera.
ix
ABSTRACT
In the times that happened butterfly habitat decreases also with poaching is done because
of the beauty of the butterfly pattern for decoration and collection of specimens made
increasingly rare butterfly. Scarcity can lead to extinction. Pattern recognition and pattern of
butterflies should be done digitally as this can save you the cost of research for species of
butterfly with a wide variety and a wide variety of patterns as well. The introduction can make it
easier to identify the species that are on the field so it can be investigated further. Also in terms
of the documentation easier for assisted with computer technology and imaging cameras.
Butterfly recognition system is using fuzzy logic with Sugeno inference method.
Butterflies are used as many as 10 types, namely
(1) Papillio uleysses, (2) Idea blancardi, (3)
Papilio dutran, (4) Atrophneura nonik, (5) Taenaris selena, (6) Hebomoeia glaucippe, (8)
Hebomiae duostra , (9) Papilio cambrisuis, (10) Papilio dephobus, (11) Pachlioptera
aristolochiae.
The recognition rate was tested with a variety of camera height and swivel angle varied
objects. The level of recognition may work as expected. Recognition rate of 95.90%. With the
best introduction to the altitude (55-65) cm and the best angle is 0
0to ±5
0.
x
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus karena telah memberikan
rahmat-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan baik.Laporan
tugas akhir ini disusun untuk memenuhi syarat memperoleh gelar sarjana.
Selama pembuatan tugas akhir ini penulis menyadari bahwa ada begitu banyak pihak
yang telah memberikan bantuan baik bantuan materi, moral maupun dukungan. Oleh karena itu
penulis ingin mengucapkan terimakasih kepada :
1.
Petrus Setyo Prabowo, S.T., M.T., Ketua Program Studi Teknik Elektro Universitas
Sanata Dharma.
2.
Dr.Linggo Sumarno, dosen pembimbing yang dengan penuh setia, kesabaran dan
pengertian untuk membimbing dalam menyelesaikan Tugas Akhir ini..
3.
Bapak dan Ibu dosen yang telah mengajarkan banyak ilmu yang bermanfaat selama
menempuh pendidikan di Universitas Sanata Dharma.
4.
Segenap laboran dan karyawan Fakultas Sains dan Teknologi yang telah memberikan
dukungan secara tidak langsung dalam kelancaran penulis mengerjakan penulisan
tulisan tugas akhir ini.
5.
Kedua orang tua penulis yang telah banyak memberikan dukungan doa, kasih sayang
dan motivasi selama menempuh pendidikan di Universitas Sanata Dharma.
6.
Keluarga kecil penulis yang telah memberi dukungan dalam mengawali dan
mengakhiri masa - masa menempuh pendidikan di Universitas Sanata Dharma.
7.
Om Bambang dan Fransisca D Renwarin yang turut memberikan dukungan dalam
kehidupan penulis.
8.
Teman
–
teman seperjuangan Teknik Elektro 2011 yang telah menemani di waktu
siang ataupun malam pada saat menempuh pendidikan di Universitas Sanata Dhama.
9.
Semua pihak yang tidak bisa disebutkan satu persatu yang telah banyak memberikan
banyak bantuan dan dukungan dalam menyelesaikan tugas akhir ini.
10.
Teman-
teman anggota “Maryati’s Dormitory”: Nino, Hardo, Fian, Sandi, Bori, Trias,
Bowo, Chandra, Bendot, Pongki .Yang sudah mensupport saya dalam mengerjakan
maupun menemani minum-minuman jahat.
xi
Penulis menyadari bahwa dalam penyusunan laporan tugas akhir masih mengalami
kesulitan dan tidak lepas dari kesalahan.Oleh karena itu, penulis mengharapkan masukan, kritik
dan saran yang membangun agar skripsi ini menjadi lebih baik.Dan semoga skripsi ini dapat
bermanfaat sebagaimana mestinya.
Penulis,
xii
DAFTAR ISI
HALAMAN JUDUL
... i
HALAMAN PERSETUJUAN ... iii
HALAMAN PENGESAHAN ... iv
PERNYATAAN KEASLIAN KARYA ... v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vii
INTISARI ... viii
ABSTRACT ... ix
KATA PENGANTAR ... x
DAFTAR ISI ... xii
DAFTAR GAMBAR ... xv
DAFTAR TABEL ... xvii
BAB I PENDAHULUAN
1.1.
Latar Belakang ... 1
1.2.
Tujuan dan Manfaat Penelitian ... 2
1.3.
Batasan Masalah ... 2
1.4.
Metodologi Penelitian ... 3
1.4.1.
Metode Studi Pustaka ... 3
1.4.2.
Prosedur Penelitian ... 3
BAB II DASAR TEORI
2.1.
Kupu-kupu ... 5
2.2.
Webcam
... 5
2.3.
Pengolahan citra ... 6
2.3.1
Definisi ... 6
xiii
2.5.
Transformasi Geometris Spasial ... 8
2.6.
RGB ... 8
2.7.
Citra
Grayscale
... 9
2.8.
Citra Biner ... 10
2.9.
MATLAB ... 10
2.9.1.
Karakteristik Matlab ... 11
2.10.
Sistem
Fuzzy
... 11
2.10.1.
Fuzifikasi ... 12
2.10.2.
Mekanisme Inferensi
Fuzzy
... 13
2.10.3.
Defuzifikasi ... 14
2.10.4.
FIS Tipe Sugeno ... 15
BAB III PERANCANGAN
3.1.
Perancangan Sistem ... 17
3.1.1.
Kupu-kupu ... 17
3.1.2.
Webcam
... 18
3.2.
Proses Pengenalan Sayap Kupu-kupu ... 19
3.2.1.
Pengambilan Citra ... 19
3.2.2.
Preprocessing
... 20
3.2.3.
Pengklasifikasi Samar ... 25
3.2.4.
Pengambilan
Database Fuzzy
... 27
3.2.5.
Penentuan Keluaran ... 27
3.3.
Perancangan GUI ... 28
BAB IV HASIL DAN PEMBAHASAN
4.1.
Pengujian dan Tampilan Program Pengenalan Objek Kupu-kupu
Secara
Real Time
... 29
4.2.
Pengujian Secara
Real Time
... 40
4.2.1.
Pengujian Pengaturan Pengenalan Objek Kupu-kupu secara
Real Time
... 40
xiv
BAB V KESIMPULAN DAN SARAN
5.1.
Kesimpulan ... 45
5.2.
Saran ... 45
DAFTAR PUSTAKA ... 46
xv
DAFTAR GAMBAR
Gambar 2.1.
Kupu-kupu ... 5
Gambar 2.2
Webcam
... 6
Gambar 2.3.
Gambar Proses Pemotongan Citra ... 7
Gambar 2.4.
Transformasi spasial ... 8
Gambar 2.5.
Pengaturan Citra RGB ... 9
Gambar 2.6.
Visualisasi 256 aras keabuan ... 10
Gambar 2.7.
Grafk fuzifikasi nilai RGB ... 12
Gambar 2.8.
Ilustrasi Ilustrasi sistem
fuzzy
dengan operator
Max-Min
... 14
Gambar 3.1.
Blok sistem ... 17
Gambar 3.2
Gambar kupu-kupu (1)
Papillio uleysses
, (2)
Idea blancardi
, (3)
Papilio dutran
, (4)
Atrophneura nonik
, (5)
Taenaris selena
, (6)
Hebomoeia glaucippe
, (8)
Hebomiae duostra
, (9)
Papilio
cambrisuis
, (10)
Papilio dephobus
, (11)
Pachlioptera aristolochiae
, 18
Gambar 3.4.
Diagram blok proses pengenalan ... 19
Gambar 3.5.
Matrik RGB ... 20
Gambar 3.6.
Program matrik RGB ... 21
Gambar 3.7.
Program citra
grayscale
... 21
Gambar 3.8.
Diagram alir
Bounding box
... 22
Gambar 3.9.
Hasil
auto cropping
... 22
Gambar 3.10. Proses
Resizing
... 23
Gambar 3.11. Diagram alir
Clear Background
... 24
Gambar 3.12. Hasil
clear background ...
25
Gambar 3.13. Diagram klasifikasi
Fuzzy
... 25
Gambar 3.14 Grafik fuzifikasi nilai R ... 26
Gambar 3.15. Tampilan GUI ... 28
Gambar 4.1.
Hasil rancangan ... 29
Gambar 4.2.
Shortcut
MATLAB ... 30
xvi
Gambar 4.4.
Tampilan GUI sebelum aktif ... 31
Gambar 4.5.
GUI yang sudah di
run
... 31
Gambar 4.6.
Tampilan GUI aktif ... 32
Gambar 4.7.
Tampilan saat tombol
on
ditekan... 32
Gambar 4.8.
Program tombol
on
... 32
Gambar 4.9.
Tampilan mode RGB ... 34
Gambar 4.10. Tampilan setelah di
crop
... 35
Gambar 4.11 Tampilan setelah tombol hitung ditekan ... 37
Gambar 4.12 Tampilan setelah tombol kenal ditekan ... 38
xvii
DAFTAR TABEL
Tabel 2.1.
Jenis-jenis transformasi affine ... 8
Tabel 3.1.
Tabe data nilai R sementara... 26
Tabel 3.2.
Rule base
pengenalan objek 1 ... 27
Tabel 4.1.
Data hasil pengujian pertama ... 40
Tabel 4.2.
Data hasil pengujian kedua ... 41
Tabel 4.3.
Data hasil pengujian ketiga... 41
Tabel 4.4.
Data hasil pengujian keempat ... 42
Tabel 4.5.
Data hasil pengujian kelima ... 42
Tabel 4.6.
Tingkat pengenalan seluruh percobaan ... 43
Tabel 4.7.
Tingkat pengenalan berdasarkan sudut... 43
1
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Indonesia merupakan negeri kupu-kupu. Dari 20 ribu jenis kupu-kupu yan ada di
dunia 2500 jenis berada di Indonesia. Semua itu tersebar mulai dari sabang sampai
merauke. Setiap daerah memiliki kupu-kupu yang khas sesuai dengan daerahnya.
Keunikan tersebut membuat Indonesia merupakan negara dengan jenis kupu kupu
terbanyak selain Brasil yang terdapat di hutan belantara amazon. Keindahan kupu-kupu
dapat kita lihat dari berbagai macam bentuk sayapnya yang indah, bahkan beberapa jenis
kupu-kupu di Indonesia menjadi endemik bagi suatu daerah, sehingga tidak akan ditemui
dibelahan dunia manapun seperti
Cethosia myrina
yang dikenal sebagai kupu-kupu sayap
renda yang hanya dijumpai di Sulawesi,
Trogonoptera brookiana
yang dikenal sebagai
kupu-kupu raja Brooke yang dijumpai di Sumatera dan Kalimantan[6].
Pada perkembangan zaman yang terjadi habitat kupu-kupu semakin berkurang
juga dengan perburuan liar yang dilakukan karena keindahan dari corak kupu-kupu untuk
hiasan dan koleksi specimen membuat kupu-kupu semakin langka. Kelangkaan dapat
berakibat pada kepunahan. Pengenalan pola dan corak kupu-kupu harus dilakukan secara
digital karena hal ini dapat menghemat biaya penelitian karena jenis kupu-kupu dengan
beraneka macam dan pola yang bermacam macam pula. Pengenalan dapat mempermudah
untuk mengenali spesies yang berada di lapangan sehingga dapat diteliti lebih lanjut. Juga
dari segi dokumentasi lebih mudah karena dibantu dengan teknologi computer dan
pencitraan kamera.
Pengenalan yang dilakukan dalam mengenali kupu-kupu berdasarkan hal yang
mencolok yaitu pola dan corak sayap kupu-kupu. Setiap pola dan sayap kupu-kupu
memiliki komposisi warna yang bermacam-macam. Hal inilah yang menjadi dasar proses
pengenalan secara digital yaitu pencitraan kamera yang menggunakan webcam.
Sistem yang akan dilakukan adalah dengan men
capture
specimen dari kupu-kupu
lalu dari hasil gambar
capture
tersebut diproses dengan bantuan perangkat lunak (Matlab
2012b). Dari perangkat lunak tersebut akan keluar angka-angka yang merupakan
komposisi dari nilai RGB dari
capture
specimen tersebut.
1.2.
Tujuan dan Manfaat
Tujuan dari penulisan tugas akhir adalah menciptakan system pengenalan sayap
kupu-kupu dengan metode matriks RGB dan matriks itu akan diproses dengan klasifikasi
fuzzy.
Manfaat dari penilitian adalah sebagai alat bantu otomatisasi bagi masyarakat
dalam mengetahui atau mengidentifikasi jenis-jenis kupu-kupu .
1.3.
Batasan Masalah
Sistem yang dilakukan pada proses pengenalan pola sayap kupu-kupu ini
memerlukan bantuan pada system otomatosasi. Sistem otomatisasi yang dilakukan yang
dipakai terdiri dari software dan hardware.
Hardware
yang digunakan adalah
webcam
.
Webcam
berfungsi untuk menangkap citra objek.
Software
berfungsi untuk memproses
pengenalan citra yang berasal dari hasil hardware (
webcam
).
Pada perancangan system ini penulis memfokuskan untuk membuat software
computer untuk memproes pengenalan objek. Sedangkan hardware penulis menggunakan
peralatan yang sudah ada yaitu webcam dengan spesifikasi yang sesuai dengan penelitian
tersebut. Spesifikasi tersebut adalah mampu mendeteksi matriks RGB dan bisa terkoneksi
dengan software matlab.
Berikut adalah beberapa masalah yang dianggap perlu pada perancangan tugas
akhir ini. yaitu sebagai berikut:
1.
Sample dari awetan spesies kupu-kupu dengan corak yang berbeda beda yang
berjumlah 10 buah yaitu:
Papilio dephobus ,Idea blancardi ,Hebomoeia
glaucippe, Papillio ulysses, Taeranis selena, Papilio iswara, Papilio gigon,
Papilio gambrisius, Atrophaneura noknik, Pachiliopta aristalochiae.
2.
Hasil pengenalan secara real time
3.
Sudut putar objek kupu-kupu: -20
0;-15
0;-10
0;-5
0; 5
0;10
0;15
0; 20
03
5.
Menggunakan perangkat lunak komputasi Matlab dalam pembuatan program
pengenalan gambar
6.
Menggunakan matriks RGB untuk didapatkan nilainya yang menjadi dasar
ciri-ciri objek
7.
Menggunakan pengklasifikasi samar dengan FIS Sugeno
8.
Menggunakan webcam sebagai hardware
9.
Webcam akan ditempatkan pada dudukan atau tempat yang sudah disediakan
dan dibuat sebelumnya
10.
Pencahayaan yang digunakan berdasarkan pencahayaan dari 2 buah lampu 35
watt. Penggunaan lampu bertujuan untuk mengurangi efek sinar dari
lingkungan yang tidak tentu tingkat intensitasnya
11.
Citra di resize ke ukuran 128x128 pixel berdasarkan literatur[5] resizing
dengan nilai tersebut dapat dikenali dengan baik
1.4.
Metodologi Penelitian
1.4.1.
Metode Studi Pustaka
Dalam penyusunan Tugas Akhir, Peneliti mempelajari banyak dari buku
–
buku
yang relevan dengan judul penelitian yang diambil melalui Internet dan berbagai literatur
–
literatur dari Internet mengenai pola dan corak kupu-kupu, pengertian webcam,
pengolahan citra, matriks RGB, teori
fuzzy logic
, dan tentang Matlab.
1.4.2.
Prosedur Penelitian
Langkah-langkah dalam pengerjaan tugas akhir:
a. Pengumpulan bahan
–
bahan referensi berupa buku
–
buku dan jurnal
–
jurnal yang
di ambil melalui Internet.
b. Perancangan subsistem
software.
Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang
akan dibuat dengan mempertimbangkan berbagai faktor
–
faktor permasalahan.
c. Pembuatan subsistem
software
.
Sistem akan bekerja apabila
user
memberikan interupsi melalui PC dengan
media
push button
yang sudah disediakan dalam
software
. Sistem akan
mengolah interupsi yang diterima dan memulai proses
capture picture
sampai
user
memberikan interupsi kembali untuk menghentikan proses
capture.
Setelah itu,
user
memberikan interupsi untuk memulai proses pengenalan
gambar. Komputer akan mengolah gambar dan menyajikannya sebagai sebuah
informasi.
5
BAB II
DASAR TEORI
2.1.
Kupu-kupu [5]
Kupu-kupu memiliki pola dan corak yang bermacam-macam sesuai dengan
jenisnya masing-masing. Setiap kupu-kupu juga memiliki warna yang beraneka macam
dan gabungan warna dan bentuk. Sehingga kupu-kupu dapat di tentukan jenisnya
berdasarkan dari pola dan corak dari sayapnya karena hal tersebut paling mencolok dari
kupu-kupu.
Di Indonesia terdapat lebih dari 2500 spesies kupu-kupu. Tentu saja hal tersebut
ditentukan pula dari pola, warna dan corak dari kupu-kupu untuk mengenalinya. Ketika
ada perbedaan pola warna tentu komposisi warna yang ditimbulkan dapat berbeda pula.
Gambar 2.1. Spesies kupu-kupu yang digunakan.
Dalam tugas akhir ini menggunakan jenis kupu-kupu sebagai berikut: Papilio
dephobus ,Idea blancardi ,Hebomoeia glaucippe, Papillio ulysses, Taeranis selena,
Papilio iswara, Papilio gigon, Papilio gambrisius, Atrophaneura noknik, Pachiliopta
aristalochiae.
2.2.
Webcam
Webcam singkatan dari Web Camera yang berasal dari bahasa Inggris, digunakan
secara
RealTime . Banyak merk
webcam yang tersedia, misalnya Logitech, SunFlowwer,
dan lainnya. Resolusi dari
webcam biasanya sama berkisar antara 352×288 / 640×480
piksel atau bahkan lebih besar, ada yang kualitasnya hingga 5 Megapiksel. Webcam sebuah
kamera video digital berukuran kecil dihubungkan ke komputer melalui port USB atau port
COM. Gambar webcam yang digunakan dapat dilihat pada gambar 2.2
Gambar 2.2. webcam
2.3.
Pengolahan Citra
2.3.1 Definisi
Citra (image) merupakan istilah lain untuk gambar, salah satu komponen
multimedia yang memegang peranan sangat penting sebagai bentuk informasi visual. Citra
mempunyai karakteristik yang tidak dimiliki oleh data teks. Citra kaya dengan informasi.
Secara harafiah, citra dapat diartikan sebagai gambar pada bidang dwimatra (dua dimensi).
Bila ditinjau dari sudut pandang matematis, maka citra merupakan fungsi menerus
(continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya yang menerangi
suatu obyek dan obyek akan memantulkan kembali sebagian dari berkas cahaya yang
menerangi obyek tersebut. Pantulan cahaya ini ditangkap oleh alat
–
alat optik, misalnya
mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan
obyek yang disebut citra tersebut terekam.
Citra dibedakan menjadi dua:
a.
Citra diam (still images)
Citra diam adalah citra tunggal yang tidak bergerak, sering di sebut citra saja.
b.
Citra bergerak (moving images)
Citra bergerak ialah rangkaian citra diam yang ditampilkan secara beruntun
yang memberi kesan pada mata sebagai gambar bergerak. Setiap citra dalam
rangkaian disebut frame.
Digitalisasi citra merupakan suatu representasi citra secara numerik dengan nilai
–
nilai diskrit.
Digitalisasi
adalah representasi citra dari fungsi malar (kontinu) menjadi
nilai
–
nilai diskrit, sehingga citra yang dihasilkan dari proses ini disebut citra digital (digital
7
Derau (noise) merupakan suatu masalah yang terjadi pada proses pengolahan
citra. Derau adalah gambar atau piksel yang mengganggu kualitas citra. Derau dapat
disebabkan oleh gangguan fisis (optik) pada alat akuisisi maupun secara disengaja akibat
proses pengolahan yang tidak sesuai. Contoh terdapat bintik hitam atau putih yang muncul
secara acak yang tidak diinginkan dalam citra, bintik acak ini disebut derau
salt and
pepper.
Salah satu proses awal pengolahan citra yaitu memperbaiki kualitas citra yang
mengalami masalah atau gangguan. Perbaikan kualitas citra sangat diperlukan karena citra
yang dijadikan obyek pembahasan, mempunyai kualitas yang buruk, misal citra mengalami
derau pada saat pengiriman melalui saluran transmisi, citra terlalu terang atau gelap,
kurang tajam, kabur, dan sebagainya. Melalui operasi pemrosesan awal inilah kualitas citra
diperbaiki sehingga citra dapat digunakan untuk aplikasi lebih lanjut, misal untuk aplikasi
pengenalan obyek di dalam citra.
2.4.
Cropping
Cropping adalah proses pemotongan citra pada koordinat tertentu pada area
citra[24]. Untuk memotong bagian dari citra digunakan dua koordinat, yaitu koordinat
awal yang merupakan awal koordinat bagi citra hasil pemotongan dan koordinat akhir
yang merupakan titik koordinat akhir dari citra hasil pemotongan. Sehingga akan
membentuk bangun segi empat yang mana tiap-tiap
pixel yang ada pada area koordinat
tertentu akan disimpan dalam citra yang baru.
Citra asli Hasil Cropping
Gambar 2.3 Gambar Proses Pemotongan Citra
Dari gambar 2.3 dijelaskan bahwa terjadi proses pemotongan citra. Ukuran
pixel
awal citra asli adalah 5×5pixel, setelah dilakukan proses pemotongan koordinat awal (1,1)
dan koordinat akhir (3,3) dengan lebar 3 pixel dan tinggi 3 pixel akan terbentuk citra baru
dengan ukuran 3×3 pixel.Citra baru berisi nilai pixel dari koordinat (1,1) sampai koordinat
(3,3).
2.5.
Transformasi Geometris Spasial
Citra f didefinisikan sebagai sistem koordinat a(w,z), yang mengalami distorsi
geometris yang menghasilkan citra g dengan sistem koordinat (x,y) maka transformasi
dapat dinyatakan dengan (x,y) = T{(w,z)}[25]. Contoh dalam trasnformasi spasial sebagai
berikut:
Jika (x,y) =T{(w,z)} = (w/2, z/2), distrosi adalah penyusutan f dengan setengah
dimensi spasial seperti ditunjukkan pada gambar 2.4.
Gambar 2.4 Transformasi Spasial
Bentuk umum yang digunakan pada transformasi spasial adalah affine transform (Wolberg
[1990] ). Transformasi affine dapat ditulis dalam bentuk matrik.
1
=
1
�
=
11
12
0
21
22
0
31
32
1
(2.2)
Transformasi ini dapat menskalakan , men-translate, atau menggunting sejumlah titik,
tergantung pada pilihan nilai T. Jenis-jenis transformasi affine terdapat pada tabel 2.5.
Tabel 2.5. Jenis-jenis Transformasi Affine
2.6.
RGB
Suatu citra biasanya mengacu ke citra RGB. Sebenarnya bagaimana citra
disimpan dan dimanipulasi dalam komputer diturunkan dari teknologi televisi, yang
pertama kali mengaplikasikannya untuk tampilan grafis komputer. Jika dilihat
dengan kaca pembesar, tampilan monitor komputer akan terdiri dari sejumlah triplet
titik warna merah (
RED
), hijau (
GREEN
) dan biru (
BLUE
). Tergantung pada pabrik
monitornya untuk menentukan apak titik tersebut merupakan titik bulat atau kotak
9
Citra dalam komputer tidak lebih dari sekumpulan sejumlah triplet dimana setiap
triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen
Red,
Green dan
BLUE. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur
intensitas dari RED (R), Green (G) dan Blue (BLUE) dari suatu triplet. Setiap triplet akan
merepresentasikan 1 pixel (picture element). Suatu triplet dengan nilai 67, 228 dan 180
berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B ke nilai 180. Angka-angka
RGB ini yang seringkali disebut dengan color values. Pada format .bmp, citra setiap pixel
pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G
Gambar 2.5 Pengaturan citra RGB
2.7.
Citra Grayscale[9]
Citra Grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada
setiap pikselnya, artinya nilai dari
RED = Green = Blue. Nilai-nilai tersebut digunakan
untuk menunjukkan intensitas warna.
Citra yang ditampilkan dari citra jenis ini terdiri atas warna abu-abu, bervariasi
pada warna hitam pada bagian yang intensitas terlemah dan warna putih pada intensitas
terkuat. Citra
Grayscale
berbeda dengan citra ”hitam
-
putih”, dimana pada konteks
komputer, citra hitam putih hanya terdiri
atas 2 warna saja yaitu ”hitam” dan ”putih” saja.
Pada citra
Grayscale warna bervariasi antara hitam dan putih, tetapi variasi warna
diantaranya sangat banyak. Citra
Grayscale seringkali merupakan perhitungan dari
intensitas cahaya pada setiap piksel pada spektrum elektromagnetik single band
Citra
Grayscale disimpan dalam format 8 bit untuk setiap sampel piksel, yang
memungkinkan sebanyak 256 intensitas. Untuk mengubah citra berwarna yang mempunyai
nilai matrik masing-masing R, G dan B menjadi citra
Grayscale dengan nilai X, maka
konversi dapat dilakukan dengan mengambil rata-rata dari nilai R, G dan B sehingga dapat
dituliskan menjadi:
(2.3.)
X = (R+G+B)/3
Warna = RGB(X,
Gambar 2.6. visualisasi 256 aras keabuan
2.8.
Citra Biner[9]
Citra biner (binary image) adalah citra digital yang hanya memiliki 2
kemungkinan warna, yaitu hitam dan putih. Citra biner disebut juga dengan citra W&B
(White&Black) atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap
piksel dari citra biner.
Pembentukan citra biner memerlukan nilai batas keabuan yang akan digunakan
sebagai nilai patokan. Piksel dengan derajat keabuan lebih besar dari nilai batas akan diberi
nilai 1 dan sebaliknya piksel dengan derajat keabuan lebih kecil dari nilai batas akan diberi
nilai 0.
Citra biner sering sekali muncul sebagai hasil dari proses pengolahan, seperti
segmentasi, pengambangan, morfologi ataupun dithering. Fungsi dari binerisasi sendiri
adalah untuk mempermudah proses pengenalan pola, karena pola akan lebih mudah
terdeteksi pada citra yang mengandung lebih sedikit warna.
Persamaan untuk binerisasi dapat dilihat pada rumus di bawah ini :
(2.4.)
nilai a1 biasanya 0 dan nilai a2 = 1
2.9.
MATLAB
Matlab (MATrix LABoratory) bahasa pemrograman yang dikembangkan
The
Mathwork Inc. dengan fungsi dan karakteristik yang berbeda dengan bahasa pemrograman
lain seperti Delphi, Basic atau C++[30]. Bahasa pemrograman level tinggi untuk
kebutuhan komputasi teknis, visualisasi dan pemrograman seperti komputasi matematik,
analisis data, pengembangan algoritma, simulasi pemodelan dan grafik perhitungan.
Dalam lingkungan perguruan tinggi teknik, Matlab perangkat standar untuk
memperkenalkan dan mengembangkan penyajian materi matematika, rekayasa dan
keimuan. Di industri, MatLab perangkat pilihan untuk penelitian dengan produktifitas yang
tinggi, pengembangan dan analisanya.
Kegunaan MatLab secara umum adalah sebagai berikut:
11
b) Perkembangan algoritma,
c) Pemodelan, simulasi, dan pembuatan prototype,
d) Analisa data, eksplorasi dan visualisasi
e) Pembuatan aplikasi, termasuk pembuatan antaramuka grafis.
2.9.1. Karakteristik MATLAB
Bahasa pemrogramannya didasarkan pada matriks (baris dan kolom). Matlab
lebih lambat (dibandingkan dengan Fortran atau C) karena bahasanya langsung diartikan
namun pengembangannya lebih cepat. Automatic memory management, pada Matlab tidak
harus mendeklarasikan arrays terlebih dahulu dan tersusun rapi. Dapat diubah ke bahasa C
lewat MATLAB Compiler. Tersedia banyak toolbox untuk aplikasi-aplikasi khusus.
Beberapa kelebihan Matlab jika dibandingkan dengan program lain adalah :
a)
Mudah memanipulasi struktur dan perhitungan berbagai operasi matriks
meliputi penjumlahan, pengurangan, perkalian, invers dan fungsi matriks
lainnya.
b)
Menyediakan fasilitas plot struktur gambar (kekuatan fasilitas grafik tiga
dimensi yang sangat memadai).
c)
Script program yang dapat diubah sesuai dengan keinginan user.
d)
Jumlah routine-routine powerful yang berlimpah yang terus berkembang.
e)
Kemampuan interface (misal dengan bahasa C, word dan mathematica).
f)
Dilengkapi
toolbox, simulink, stateflow dan sebagainya, serta mulai
melimpahnya
source code di internet yang dibuat dalam matlab (contoh
toolbox
misalnya:
signal processing, control system, neural networksdan
sebagainya).
MATLAB diciptakan akhir tahun 1970-an oleh Cleve Moler. MATLAB pertama
kali diadopsi oleh insinyur rancangan kontrol, menyebar secara cepat ke bidang lain dan
digunakan di bidang pendidikan, khususnya dalam pengajaran aljabar linear dan analisis
numerik, serta populer di kalangan ilmuwan yang menekuni bidang pengolahan citra.
2.10. Sistem
Fuzzy
[1]
Sistem
fuzzy adalah sistem yang bekerja dengan besaran/nilai
fuzzy dan
menggunakan logika
fuzzy. Sebuah sistem
fuzzy akan memiliki bagian-bagian yakni
untuk mengubah nilai inut ke sistem fuzzy yang umumnya berupa suatu angka /nilai tegas
diubah ke besaran fuzzy.
Basis aturan berisi aturan-aturan logika fuzzy yang digunakan oleh mesin inferensi
msebagai acuan dalam mengambil kesimpulan atau memutuskan suatu output terhadap
input yang masuk ke sistem fuzzy. Karena output dari mesin inferensi masih berupa nilai
fuzzy, maka bagian defusifikasi diperlukan untuk mengubah nilai
fuzzy tersebut ke nilai
tegas yang siap dikirimkan ke sistem/plant lain.
2.10.1. Fuzifikasi [1]
Fuzifikasi merupakan proses mengubah nilai variable numeric ke nilai variable
linguistic. Dengan kata lain, fuzifikasi merupakan pemetaan dari ruang input ke himpunan
fuzzy yang didefinisikan pada semesta pembicara. Sebagai contoh suatu nilai RGB suatu
citra dengan rentan 0-255 dapat dinyatakan menjadi tiga variable linguistik yaitu besar,
[image:31.595.86.499.320.534.2]sedang dan kecil.
Gambar 2.7.Grafik fuzifikasi nilai RGB
Pada sistem
fuzzy setiap nilai linguistic dari suatu variable dinyatakan dengan
sebuah himpunan
fuzzy. Beberapa bentuk himpunan
fuzzy yang sering digunakan pada
sistem fuzzy diantaranya:
-Triangular
(2.4.)
-Trapesoidal
�
=
0,
�
<
−
−
,
�
≤
<
−
−
,
�
≤ ≤
13
(2.5.)
-Gausian
(2.6.)
2.10.2. Mekanisme Inferensi
Fuzzy
[1]
Aturan fuzzy dinyatakan dengan kumpulan aturan
IF-THEN yang antesenden dan
konsuennya berupa variable linguistic. Kumpulan aturan kendali fuzzy tersebut merupakan
relasi input output dari sebuah sistem. Bentuk umum dari aturan kendali fuzzy pada sistem
multi-input-single-output (MISO) adalah:
(2.7.)
Terdapat empat tipe operator komposisi yang bisa digunakan pada aturan
komposisi inferensi yaitu:
o
Max-min
o
Max-Product
o
Max-bounded product
o
Max drastic product
Pada sistem
fuzzy, operator komposisi
max-min dan max product paling banyak
digunakan dan paling umum karena perhitungannya sederhana dan efisien.
[image:32.595.96.529.67.312.2]Ilustrasi grafis dari operator max-min pada proses inferensi ditunjukkan oelh
gambar berikut dengan aturan yang disertakan.
�
=
0,
�
<
−
−
,
�
≤
<
1,
�
≤
<
−
−
,
�
≤ ≤
0,
�
>
�
=
−( − �)2/R
i: IF x is Ai,.., AND y is Bi, THEN z is
Gambar 2.8. Ilustrasi sistem fuzzy dengan operator Max-Min
Dari gambar (2.8.) terlihat bahwa input RGB berada pada perpotongan grafik.
Daerah perpotongan grafik tersebut menciptakan penalaran kabur. Rule base dari gambar
(2.8.) menunjukkan bahwa rule yang berlaku adalah IF (RGB is kecil) AND (UKURAN is
sedang) THEN (OUTPUT is Sample 1).
Pada input RGB posisi nilai berada pada daerah fuzzy maka nilai Max dari kedua
grafik yang bersinggungan adalah input rule 1 sesuai juga dengan variable linguistic pada
rule base kecil. Pada input yang kedua juga demikian hasil dari kedua perbandingan max
tersebut di bandingkan nilai kekaburannya untuk menetukan mana yang paling kecil dan
nantinya akan di masukkan menjadi nilai kabur output yang selanjutnya akan di
defuzifikasi menjadi nilai tegas.
2.10.3. Defuzifikasi [1]
Defuzifikasi adalah proses mengubah himpunan samar menjadi himpunan tegas
yang nantinya akan menjadi kesimpulan dari sistem
fuzzy. Defuzifier diperlukan jika
sistem yang digunakan adalah sistem mamdani.
Beberapa metode defuzzifier adalah sebagai berikut:
1.
Metode COA yang lebih sering digunakan, menentukan pusat gravitasi (titik
berat) distribusi peluang aksi kendali. Pada kasus semesta pembicaraan diskrit,
metode COA dirumuskan sebagai berikut:
� �
=
�
( )
=1
�
( )
15
(2.8.)
Dengan n merupakan banyaknya level kuntifiksi (nilai linguistic) variabel
keluaran. z
jmerupakan nilai numerikaksi kendali pada level kuantisasi ke
–
j
dan µ
c(z
j) merupakan nilai derajat keanggotaan z
jpada himpunan fuzzy C.
2.
Metode MOM menentukan aksi kendali yang mewakili nilai rataan (mean) dari
aksi kendali local yang fungsi keanggotaanya mencapai maksimum. Pada kasus
semesta pembicaraan diskrit, aksi kendali dapat dinyatakan sebagai berikut:
(2.9.)
Yang mana zj merupakan nilai support dimana fungsi keanggotaan mencapai nilai
maksimum µc(zj) dan m adalah banyaknya nilai support tersebut.
2.10.3. FIS tipe Sugeno [1]
Tipe alternative yang sering dipakai adalah tipe Takagi-Sugeno-Kang atau cukup
disebut juga dengan tipe Sugeno saja. Dalam banyak hal, FIS tipe sugeno mirip dengan
tipe mamdani. Perbedaan terletak pada jenis fungsi keanggotaan yang dipaki dalam bagian
consequent. FIS tipe Sugeno menggunakan fungsi keanggotaan output yang bersifat linier
atau konstan. IF-THEN rule dalam FIS tipe Sugeno berbentuk sebagai berikut:
IF input1= v AND input2 = w THEN output is z =av +bw+c
(2.10.)
Keluaran rule bukan dalam bentuk fungsi keanggotaan, tetapi sebuah bilangan
yang mana berubah secar linier terhadap variable-variabel input, yaitu mengikuti suatu
persamaan garis yaitu
z=av+c
. Jika a=b=0, FIS dikatakan orde nol, Karena keluarannya
berupa sebuah bilangan konstan, yaitu
z=c
.
Proses defuzifikasi dalam FIS tipe sugeno jauh lebih efisien daripada tipe
Mamdani. Hal ini karena FIS tipe Sugeno menghitung nilai keluaran dengan cara sebagai
berikut:
(2.11.)
=
=1
=
=1 =1Dimana:
W
I= Proses hasil operasi fuzzy logic antecedent.
Z
i=keluaran rule ke-i
Keluaran akhir, Output, tidak lain adalah sebuah weighted average. Secara singkat
17
BAB III
PERANCANGAN
3.1.
Perancangan Sistem
Blok sistem secara keseluruhan dapat dilihat pada gambar 3.1 sebagai berikut
[image:36.595.81.531.195.501.2]Unit perekam
Unit pengenalan dan penampil
Gambar 3.1 Blok sistem
Proses pengenalan dimulai dari perekaman objek berupa sayap kupu-kupu.
Perekaman menggunakan
webcam
. Hasil dari perekaman akan ditampilkan ke laptop
dengan tampilan berupa
GUI
. Didalam
GUI
inilah hasil perekaman di tampilkan. Setelah
objek didapatkan hasilnya maka laptop akan memproses data masukan yang berupa
matriks RGB.
Hasil tersebut diproses di
GUI
yang merupakan pusat dari segala proses
pengenalan setelah gambar tersebut dicuplik dan diproses RGB-nya. Perekaman objek
menggunakan
webcam
3.1.1. Kupu-kupu
Jenis-jenis kupu-kupu yang digunakan adalah jenis kupu-kupu yang memiliki
pola, warna dan corak yang mencolok baik dari segi ukuran maupun bentuknya. Sehingga
pengenalannya menjadi mudah karena mencolok.
(1)
(2)
(3)
(4)
(5)
(6)
(8)
(9)
[image:37.595.88.536.88.452.2](10)
(11)
Gambar 3.2.gambar kupu-kupu (1)
Papillio uleysses
, (2)
Idea blancardi
, (3)
Papilio dutran
,
(4)
Atrophneura nonik
, (5)
Taenaris selena
, (6)
Hebomoeia glaucippe
, (8)
Hebomiae
duostra
, (9)
Papilio cambrisuis
, (10)
Papilio dephobus
, (11)
Pachlioptera aristolochiae
,
3.1.2 .
Webcam
Webcam
yang digunakan adalah
webcam
dengan merk
Logitech
dngan seri c270h.
Seri ini dipilih karena memiliki kemampuan untuk berkomunikasi dengan matlab.
Webcam
ini juga memiliki dudukan dan memiliki software bawaan pendukung. Sehingga
webcam
ini memudahkan dalam pengenalan objek. Berikut adalah spesifikasi
webcam
tersebut:
HD video calling (1280 x 720 pixels) with recommended system
Video capture: Up to 1280 x 720 pixels
Photos: Up to 3.0 megapixels (software enhanced)
Built-in mic with Logitech
RightSound™ technology
Hi-Speed USB 2.0 certified (recommended)
19
Gambar 3.3
Logitech
c270
3.2.
Proses pengenalan sayap kupu-kupu
Proses pengenalan potongan citra alat musik tradisional adalah proses di mana
potongan citra yang di
capture
akan dikenali bentuknya. Proses ini terdiri pengambilan
citra,
preprocessing
, pengenalan dan keluaran yanag berupa teks. Proses kerja sistem dapat
dilihat pada gambar 3.4.
Pengambilan citra Preprocessing Pengklasifikasi
samar Penentuan keluaran
Database fuzzy
Gambar 3.4. Digram blok proses pengenalan
3.2.1.
Pengambilan citra
Citra yang berbentuk potongan gambar diambil dengan menggunakan
webcam
yang sudah terhubung dengan komputer.
Webcam
terlebih dahulu sudah dikenali oleh
laptop/komputer.
Webcam
yang berada tegak lurus dengan potongan citra dan harus
mencari jarak terbaik atau fokus. Untuk mendapatkan gambar yang fokus diperlukan juga
adanya tambahan lampu agar intensitas cahaya tidak mengganggu untuk pengambilan
gambar. Resolusi 320 x 240 yang digunakan pada
webcam
ini akan membantu untuk
mendapatkan tampilan gambar yang lebih baik. Perintah untuk mengambil gambar dengan
menggunakan
webcam
adalah sebagai berikut :
imaqreset;
vid=videoinput('winvideo',1,'RGB24_320x240'); vid.FramesPerTrigger = 1;
vid.ReturnedColorspace = 'rgb'; triggerconfig(vid, 'manual');
vidRes = get(vid, 'VideoResolution'); imWidth = vidRes(1);
imHeight = vidRes(2);
nBands = get(vid, 'NumberOfBands');
hImage = image(zeros(imHeight, imWidth, nBands), 'parent', handles.gambar_asli)
preview(vid, hImage); start(vid);
pause(3); trigger(vid); stoppreview(vid); capt1 = getdata(vid);
3.2.2.
Preprocessing
Preprocessing
merupakan tahap untuk mempersiapkan citra sebelum ke tahap
ekstraksi ciri sehingga dapat diproses ke tahap selanjutnya.
Preprocessing
sendiri terdiri
dari matrik RGB,
grayscale, cropping, resizing
, dan
clear background
.
[image:39.595.86.497.122.451.2]1.
Matrik RGB
Gambar 3.5. Matrik RGB
Matrik rgb berfungsi untuk mengambil nilai RGB dari suatu citra dalam
RGB sehingga komposisi warnanya dapat diidentifikasi nanti pada sistem
21
test=imread('kupu.jpeg'); a0=test(:,:,1);
[image:40.595.108.522.68.475.2]b0=test(:,:,2); c0=test(:,:,3); imshow(a0); imshow(b0); imshow(c0);
Gambar 3.6. Program Matrik RGB
2.
Citra
grayscale
G
rayscale
dilakukan agar citra alat kupu-kupu yang telah diambil
menggunakan
webcam
menjadi keabuan. Hal ini dilakukan agar dapat
mempermudah pengolahan citra dalam proses pengenalan. Gambar 3.7. berikut
ini adalah contoh
listing
programnya
img10=imread('kupu.jpeg');
img1=double(rgb2gray(img10));
k=img1/255;
l=1-k;
imshow(l);
Gambar 3.7. Program citra
grayscale
3.
Cropping
Cropping
adalah suatu proses untuk memotong citra pada bagian tertentu
atau yang tidak diperlukan sehingga didapatkan hasil yang diinginkan untuk
mempermudah data yang akan diolah. Pada percobaan ini,
cropping
menggunakan
bounding box
dan
bounding box
ini akan melakukan
auto
matic
cropping
.Gambar 3.8. adalah diagram alir dari
bounding box
Gambar 3.8. Diagram alir
bounding box
Citra asli
Citra grayscale
Citra yang sudah dicrop
Gambar 3.9. Hasil
auto
cropping
4.
Resizing
Resizing
dilakukan untuk mengubah citra yang sudah di
crop
menggunakan
bounding box
untuk mendapatkan ukuran yang seragam. Karena menggunakan
variasi jarak kamera yang bervariasi sehingga ukurannya harus diseragamkan
23
122x133
[image:42.595.99.529.63.610.2]
128x128
Gambar 3.10. Proses
resizing
Program yang digunakan adalah sebagai berikut:
I3=imresize(I2,[128 128]);
imshow(I3);
axis
('on')
5.
Clear background
Setiap citra yang sudah di
crop
perlu dilakukan penghilangan
background
agar nilai
background
tersebut tidak mengganggu penjumlahan dari matrik
yang digunakan untuk masuk ke sistem pengenalan. Sehingga nilai dari matrik
tersebut murni adalah bentuk dari objek tersebut tanpa ada pengaruh dari
background
.
Gambar 3.11. adalah diagram alir dari program ini. Nilai konstanta 0.65
adalah merupakan nilai intesitas gelap terang yang paling sesuai dengan warna
yang agak terang (putih) karena pada penelitian ini warna
background
adalah
putih. Penulis memilih angka tersebut berdasarkan uji coba visual yang di
lakukan dan disajikan dalam lampiran halaman L10.
Gambar 3.11. Diagram alir
Clear background
Start
Input matrik hasil graysacale
Potong kiri potong 8 pixel
Putar 90 derajat searah jarum jam Potong kiri potong 8 pixel
Putar 90 derajat searah jarum jam Potong kiri potong 8 pixel
Putar 90 derajat searah jarum jam Potong kiri potong 8 pixel
Putar 90 derajat searah jarum jam Potong kiri potong 8 pixel (posisi awal)
Matrik citra
<0.65 Y Matrik citra =0
Citra tanpa background
No
25
Pemilihan nilai konstanta 8
pixel
pada pemotongan
frame
sudah dilakukan
perbandingan secara visual juga yang dibuktikan pada lampiran hal L11.
Nilai tersebut merupakan yang paling ideal dalam pemotongan
frame
Dan hasilnya (gambar 3.12) adalah sebagai berikut:
Citra yang sudah di crop
Citra yang sudah dihilangkan
background-nya dan Frame-nya
Gambar 3.12. Hasil
Clear background
3.2.3.
Pengklasifikasi Samar
Nilai RGB
Penentuan kelas R, G, B
Pengurangan dengan konstanta berdasarkan kelas
Fuzifikasi
Rule base
Inferensi
[image:44.595.88.496.143.625.2]Penentuan keputusan
Gambar 3.13. Diagram klasifikasi
Fuzzy
Proses dimulai dengan memasukkan nilai RGB yang dari hasil
Preprocessing
lalu
nilai tersebut akan masuk ke kelompok klasifikasi yang ditentukan dari rentang nilai
tertentu tergantung dari
database
yang menjadi syarat utama dari masing masing kelas.
Proses dapat lihat pada gambar 3.13 yang merupakan diagram klasifikasinya
Pengurangan nilai dilakukan untuk meningkatkan pembeda dari nilai tersebut
karena nilainya dari masing-masing objek dalam satu kelas mirip sehingga harus
dikurangkan dengan konstanta berdasarkan nilai yang paling dominan dari kelas tersebut.
Berikut adalah data sementara yang diambil secara acak :
Table 3.1. Tabel data Nilai R sementara
Data
Objek
1
9
10
4
2
8
3
5
11
1
333.56
302.53
304.29
208.54
187.47
125.56
118.30
151.22
150.75
2
341.86
318.41
310.17
218.38
199.01
127.30
119.91 165.55
154.33
3
345.37
325.89
310.29
218.58
202.72
132.75
121.79 166.75
156.76
4
348.83
328.83
315.34
223.64
213.86
132.79
126.96 170.40
159.86
5
356.37
330.17
315.79
225.37
220.64
134.68
133.17
176.16
164.82
Dilihat dari tabel 3.1 setiap data yang masuk sudah melalui pengelompokan dan
nilainya menyerupai satu sama lain. Sehingga perlu dilakukan pegurangan nilai dengan
nilai tertentu sesuai dengan angka yang dominan.
Pada proses
Fuzzy
fikasi nilai numerik akan diubah menjadi variabel linguistik
yang memiliki nilai linguistik. Nilai linguistik ini nantinya akan digunakan pada proses
inferensi. Untuk memperoleh derajat keanggotaan dari nilai linguistik pada masing-masing
input sistem menggunakan aturan input sistem yang telah ditentukan. Untuk memperoleh
derajat keanggotaan dari nilai linguistik pada masing-masing input sistem menggunakan
fungsi keanggotaan sebagai berikut :
Gambar 3.14. Grafik fuzifikasi nilai R
Nilai fuzifikasi berdasarkan nilai yang sudah melalui pengurangan konstanta
(lampiran hal L7) berdasarkan kelas untuk lebih lengkap dapat dilihat pada lampiran.
Untuk grafik G dan B (lampiran hal L8) dapat juga dilihat sekaligus dengan nilai-nilai
pembentuk grafik.
-60 -40 -20 0 20 40 60 80 100
0 0.2 0.4 0.6 0.8 1 R D e g re e o f m e m b e rs h ip 1 9
27
Rule base
(tabel 3.2) rule yang telah disesuaikan dengan kemungkinan nilai yang
muncul dari tiap-tiap himpunan
fuzzy
.
Inferensi sistem menggunakan metode Sugeno sehingga proses
defuzzy
langsung
dilakukan setelah nilai dari proses inferensi diproses ke kesimpulan hasil base. Output
berupa indeks dari objek kupu-kupu berupa angka 1,2,3,4,5,6,8,9,10,11. Karena
menggunakan fis sugeno maka
defuzzy-
nya dilakukan pada masing-masing rule. Hasil dari
defuzzy
tiap-tiap rule di rata-rata kemudian ditentukan hasilnya melalui penentuan
keputusan.
Tabel 3.2.
Rule base
pengenalan objek 1
Rule
if kelas
r
And
Nilai r
Then x
is
1
1
1
1
2
1
9
9
3
1
10
10
4
3
3
3
5
5
6
6
6
2
4
4
7
3
8
2
Dimana x merupakan nomor anggota dari objek yang dikenali yang berupa angka
1,2,3,4,5,6,8,9,10,11.
3.2.4.
Pengambilan
database
fuzzy
Database
merupakan acuan (lampiran hal L7) untuk menentukan pengenalan.
Pada
database
fuzzy
berupa nilai pembentuk fungsi dari masing-masing variable liguistik.
Pengambilan
database
dilakukan secara acak dengan menentukan nilai-nilai yang sesuai
dengan fungsi variable linguistic yang akan dibentuk.
Pada pembentuk fungsi
variable linguistic
(lampiran hal L7-L8) terdapat nilai
maximum, nilai tengah dan nilai minimum. Maka pada pengambilan data base dilakukan
uji coba secara acak pada masing-masing objek sampai nilai-nilai tersebut sampai sudah
tidak ada lagi perubahan nilai.
3.2.5.
Penentuan keluaran
Hasil dari
defuzzy
merupakan suatu bentuk operasi aljabar yang berisi
variable-variable. Tiap variable memiliki konstanta yang berasal dari nilai keanggotaan dari fis
sugeno dengan masing-masing komponen nilai-nilai RGB. Penentuan dilakukan 2 langkah
yaitu: Mencari nilai konstanta maksimum dari masing-masing variable objek, menentukan
hasil pengenalan dengan mengidentifikasi variable objek mana yang memiliki komponen
dengan konstanta terbesar yang paling banyak.
3.3.
Perancangan GUI
Berikut adalah GUI yang akan digunakan untuk pengenalan dari kupu-kupu
[image:47.595.85.492.131.702.2]tersebut:
Gambar 3.15 Tampilan GUI
Berikut adalah penjelasan dari masing masing komponen pada gui
Nama bagian
Deskripsi
axis
' gambar asli
menampilkan gambar hasil
capture
axis
' red
menampilkan citra Red hasil
preprocessing
axis
' green
menampilkan citra Green hasil
preprocessing
axis
' blue
menampilkan citra Bluehasil
preprocessing
tombol on
Menjalan menghidupkan
webcam
tombol
capture
men
capture
citra melalui
webcam
tombol mode gb
menekstrak Matrik RGB
tombol
crop
Melakukan
auto
matik
crop
tombol hitung
Menghitung nilai RGB
tombol kenal
Menjalankan pengenalan citra
tombol
refresh
Menyegarkan aplikasi
tombol
clear
menghapus
axis
dan menormalkan kembali masukan
edit text nilai rgb
Menampilkan nilai RGB
edit text nilai
fuzzy
Menampilkan nilai
fuzzy
29
BAB IV
HASIL DAN PEMBAHASAN
Pada hasil dan pembahasan, akan dibahas tentang rancangan software dan hasil
dari pengerjaan software serta sejauh mana program ini dapat berjalan dengan baik.
Pengambilan data yang dilakukan dengan menggunakan 10 objek kupu-kupu yang sudah
disediakan sebelumnya. Gambar 4.1 adalah hasil rancangan yang telah dijelaskan pada
[image:48.595.96.498.244.613.2]BAB III.
Gambar 4.1. Hasil Rancangan
4.1.
Pengujian dan tampilan program pengenalan objek kupu-kupu
secara
Real time
Pengujian dan tampilan program menggunakan perangkat keras dan perangkat
lunak sebagai berikut:
1. Processor INTEL(R) Atom(TM) CPU N2600 @1.66GHZ
2. RAM 2.00 GB
3. Matlab7.10.1 (R2012a)
Program pengenalan dapat dilakukan dengan langkah-langkah sebagai berikut :
[image:49.595.96.517.118.683.2]a.
Klik dua kali pada
icon
matlab seperti pada gambar 4.2.
Gambar 4.2.
Shortcut
Matlab
b.
Setelah klip icon matlab, maka akan muncul tampilan awal matlab seperti pada
gambar 4.3. Pada tampilan tersebut terdapat berbagai macam tools untuk
merancang GUI maupun untuk membuat program.
Gambar 4.3. Tampilan awal Matlab
c.
Kemudian ganti
Current Directory
sesuai dengan directory dimana program yang
akan dipakai disimpan, setelah itu ketik guide Gui pada
Command Window
maka
akan muncul tampilan jendela utama program pengenalan seperti pada gambar
31
Gambar 4.4. Tampilan Gui sebelum diaktifkan
d.
Setelah klik run, maka akan menampilkan tampilan utama program seperti pada
Gambar 4.5.
Gambar 4.5. Gui yang sudah di
RUN
e.
Selanjutnya, memilih dan menekan tombol yang sudah tersedia beserta urutannya
seperti gambar 4.6.
Gambar 4.6. Tampilan GUI aktif
Berikut merupakan fungsi dan penjelasan tentang tombol tersebut :
1.
Tombol
on
Gambar 4.7. Tampilan saat tombol
on
ditekan
Tombol On berfungsi untuk mengaktifkan
webcam
dan gambar yang akan
di
capture
akan tampil pada
axes
“gambar_asli”. Program untuk menjalankan
tombol tersebut dapat dilihat pada Gambar 4.8. Hasil dari proses tersebut dapat
dilihat pada gambar 4.7.
vid=videoinput('winvideo',1,'RGB24_320x240');
vid.FramesPerTrigger = 1;
vid.ReturnedColorspace = 'rgb';
33
[image:52.595.103.523.76.663.2]2.
Tombol
Capture
Gambar 4.8. Tampilan Setelah
Capture
Tombol
Capture
berfungsi untuk mengambil/mencuplik gambar dari video
yang akan digunakan untuk proses selanjutnya dan hasil dari yang telah
dicuplik akan ditampilkan pada
axes
„gambar_asli‟
. Gambar 4.8 merupakan
tampilan setelah tombol
capture
ditekan
Format gambar yang sudah dicuplik yaitu RGB. Untuk menjalankan tombol
tersebut, menggunakan program sebagai berikut
imaqreset;
vid=videoinput('winvideo',1,'RGB24_320x240'); vid.FramesPerTrigger = 1;
vid.ReturnedColorspace = 'rgb'; triggerconfig(vid, 'manual');
vidRes = get(vid, 'VideoResolution'); imWidth = vidRes(1);
imHeight = vidRes(2);
nBands = get(vid, 'NumberOfBands');
hImage = image(zeros(imHeight, imWidth, nBands), 'parent', handles.gambar_asli)
preview(vid, hImage); start(vid);
pause(3); trigger(vid); stoppreview(vid); capt1 = getdata(vid);
a=[get(handles.nama,'string')] axes(handles.gambar_asli); imshow(capt1);
imwrite (capt1,a, 'jpeg')
3.
Tombol Mode RGB
Tombol mode rgb berfungsi untuk mengekstrak citra menjadi tiga citra
dengan komposisi citra R, citra G, citra B. Masing-masing citra tersebut
disimpan pada
axes’red’,’green’,’blue’.
Tampilan setelah tombol RGB ditekan
[image:53.595.97.494.133.602.2]dapat di lihat pada Gambar 4.9
Gambar 4.9. Tampilan Mode RGB
Berikut adalah program untuk merubah citra tersebut:
a=[get(handles.nama,'string')] test=imread(a);
a0=test(:,:,1); b0=test(:,:,2); c0=test(:,:,3);
%menampilkan mode rgb axes(handles.red) imshow(a0);
axes(handles.green) imshow(b0);
axes(handles.blue) imshow(c0);
4.
Tombol
Crop
Tombol
crop
berfungsi untuk
cropping
, memotong
frame
,
clear
background
dan mencari nilai
.Cropping
menggunakan fungsi
bounding
box
yang dijelaskan pada bab III. Memotong frame juga dilakukan setelah
auto
cropping
dilakukan untuk memfokuskan citra sehingga nilai rgbnya
hanya citranya saja.
Clear backgraound
digunakan untuk menghilangkan
background masing-masing komponen warna. Gambar 4.10. merupakan
35
Gambar 4.10. Tampilan setelah di
crop
Ketiga proses tersebut di buat dalam bentuk fungsi „nilai_r‟,‟nilai_g‟ dan
‟nilai_b‟.
Isi dari fungsi tersebut dapat dilihat sebagai berikut
A=[get(handles.nama,'string')]; img0=imread(a);
hasil_r = nilai_r(img0); hasil_g = nilai_g(img0); hasil_b = nilai_b (img0); axes(handles.red);
imshow(hasil_r) axes(handles.green); imshow(hasil_g) axes(handles.blue); imshow(hasil_b