Full PDF
Full PDF
TUGAS AKHIR
disusun oleh :
EZRA ALVANSGA
NIM : 155114015
FINAL PROJECT
EZRA ALVANSGA
NIM : 155114015
LEMBAR PERSETUJUAN
TUGAS AKHIR
Oleh :
EZRA ALVANSGA
NIM : 155114015
Pembimbing
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PENGESAHAN
TUGAS AKHIR
Disusun oleh :
EZRA ALVANSGA
NIM : 155114015
Yogyakarta, ________________
Fakultas Sains Dan Teknologi
Universitas Sanata Dharma
Dekan,
Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis ini tidak
memuat karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka
Penulis
Ezra Alvansga
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN
MOTTO:
“Stop Doubting, Start Believing!”
Persembahan
Tugas Akhir ini kupersembahkan untuk
Tuhan Yesus Kristus yang selalu memimpin setiap langkahku
Kedua orang tua dan keluarga yang selalu mendoakan yang
terbaik
Sepupuku yang selalu mendukung proses pembelajaranku
Dosen serta teman-teman yang sudah berdinamika bersama selama
masa perkuliahan
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
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 royalti kepada saya selama tetap
mencantumkan nama saya sebagai penulis.
Penulis
Ezra Alvansga
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
INTISARI
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas hikmat dan
anugerah yang Ia berikan sehingga penulis dapat menyelesaikan laporan Tugas Akhir yang
berjudul “Pengenalan Tekstur Menggunakan Metode GLCM Serta Modul Nirkabel”.
Tugas Akhir ini disusun sebagai salah satu syarat kelulusan untuk memperoleh gelar
Sarjana Teknik pada Program Studi Teknik Elektro, Fakultas Sains dan Teknologi,
Universitas Sanata Dharma Yogyakarta. Penulisan Tugas Akhir ini tidak lepas dari campur
tangan dan bantuan dari banyak pihak. Penulis menyadari bahwa ada banyak pihak yang
turut memberikan dukungan, bimbingan serta arahan sehingga penulisan ini dapat
diselesaikan dengan baik. Oleh karena itu, penulis ingin mengucapkan terima kasih kepada:
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Penulis menyadari bahwa dalam penulisan tugas akhir ini masih banyak terdapat
kekurangan. Oleh karena itu, penulis mengharapkan adanya masukan, kritik dan saran yang
bersifat membangun untuk menyempurnakan kekurangan tugas akhir ini. Penulis berharap
tugas akhir ini dapat bermanfaat untuk penelitian selanjutnya terkait dengan topik yang
diambil oleh penulis. Sekian dan terima kasih.
Penulis
Ezra Alvansga
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR
Gambar 2.1. Sepuluh tekstur tunggal: (a) gabah (b) jagung (c) kacang tanah (d) anyaman
bambu (e) karung goni (f) keset (g) jerami (h) handuk (i) rumput, dan (j) bebatuan, ........... 6
Gambar 2.2. Tiga tekstur ganda: (k) gabah dan karung goni (l) jagung dan karung goni,
dan (m) kacang dan karung goni ........................................................................................... 6
Gambar 2.3. Tekstur teratur (a) dan tektur tidak teratur atau acak (b) ................................ 7
Gambar 2.4. ArduCAM Mini Shield [10] ............................................................................ 8
Gambar 2.5. NodeMCU DevKit v1.0 [12] .......................................................................... 9
Gambar 2.6. Pin NodeMCU DevKit v1.0 [14] .................................................................. 10
Gambar 2.7. Matriks 2 Dimensi Representasi Citra Digital [15] ...................................... 10
Gambar 2.8. Nilai piksel citra grayscale dengan 6x6 ketetanggaan [15] .......................... 11
Gambar 2.9. Citra RGB (a) dengan komponen R (b), G (c), dan B (d) [15] ..................... 12
Gambar 3.1. Diagram blok keseluruhan sistem pengenalan tekstur ................................. 26
Gambar 3.2. Diagram alir keseluruhan sistem pengenalan tekstur ................................... 27
Gambar 3.3. (a) Diagram alir subrutin pengambilan dan pengiriman video streaming dan
(b) Diagram alir inisialisasi NodeMCU .............................................................................. 28
Gambar 3.4. Diagram alir subrutin penerimaan video streaming...................................... 30
Gambar 3.5. Diagram alir subrutin tahap preprocessing................................................... 31
Gambar 3.6. Diagram alir subrutin tahap ekstraksi ciri ..................................................... 31
Gambar 3.7. Diagram alir subrutin Gray Level Co-occurrence Matrix ............................ 32
Gambar 3.8. Diagram alir subrutin tahap fungsi jarak ...................................................... 33
Gambar 3.9. Diagram alir subrutin penentuan keluaran .................................................... 34
Gambar 3.10. Diagram alir perancangan basis data ............................................................ 35
Gambar 3.11. Diagram Alir Sistem Pengenalan Tekstur GUI ............................................ 36
Gambar 3.12. Sketsa perancangan GUI............................................................................... 37
Gambar 3.13. Perancangan Hardware ................................................................................ 38
Gambar 4.1. Grafik Tingkat Pengenalan Tekstur Dengan Pengaruh RST ........................ 41
Gambar 4.2. Grafik Pengaruh Variasi Rotasi Terhadap Pengenalan ................................ 42
Gambar 4.3. Grafik Pengaruh Variasi Skala Terhadap Pengenalan .................................. 43
Gambar 4.4. Grafik Pengaruh Variasi Translasi Terhadap Pengenalan ............................ 44
Gambar 4.5. Grafik Tingkat Pengenalan Tiap Tekstur Tunggal ....................................... 46
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.6. Citra Grayscale Tekstur Jagung Masukan Pada Sudut 20° (a) dan Citra
Grayscale Tekstur Jagung Basis Data (b) ........................................................................... 46
Gambar 4.7. Citra Grayscale Tekstur Kacang Masukan Pada Sudut 120° (a), Citra
Grayscale Tekstur Kacang Basis Data (b), dan Citra Grayscale Tekstur Bebatuan Basis
Data (c) ................................................................................................................................ 47
Gambar 4.8. Grafik Pengaruh Variasi Jarak Terhadap Kuat Sinyal .................................. 49
Gambar 4.9. Grafik Pengaruh Variasi Jarak Terhadap Tingkat Pengenalan ..................... 50
Gambar 4.10. Tampilan GUI Pengenalan Tekstur: pada jarak 1 m (a) ............................... 50
Gambar 4.11. Indikator lampu pada NodeMCU menyala ................................................... 51
Gambar 4.12. Tampilan GUI tidak menerima video streaming .......................................... 52
Gambar 4.13. Grafik Pengaruh Perbaikan Kinerja Dengan Perubahan Resolusi ................ 53
Gambar 4.14. Grafik Pengaruh Perbaikan Kinerja Dengan Perubahan Resolusi Dan
Normalisasi Nilai Fitur GLCM ........................................................................................... 54
Gambar 4.15. Grafik Tingkat Pengenalan Tekstur Dengan Pengaruh RST Setelah
Perbaikan Kinerja ................................................................................................................ 54
Gambar 4.16. Grafik Tingkat Pengenalan Tekstur Ganda Dengan Pengaruh RST ............ 55
Gambar 4.17. Grafik Pengaruh Variasi Rotasi Terhadap Pengenalan Tekstur Ganda ........ 56
Gambar 4.18. Grafik Pengaruh Variasi Skala Terhadap Pengenalan Tekstur Ganda ......... 57
Gambar 4.19. Grafik Pengaruh Variasi Translasi Terhadap Pengenalan Tekstur Ganda ... 58
Gambar 4.20. Citra Grayscale Tekstur Jagung (a) dan Citra Grayscale Tekstur Kacang (b)
............................................................................................................................................. 60
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I
PENDAHULUAN
Berdasarkan penelitian sebelumnya, tekstur citra dapat dikenali oleh Adnyana [3]
dengan metode Statistical Texture Descriptor (STD). Penulis mengembangkan penelitian
tersebut dengan mengenali tekstur menggunakan metode yang berbeda, yaitu dengan metode
Gray Level Co-occurrence Matrix atau GLCM. Metode ini telah digunakan dalam berbagai
penelitian sebelumnya antara lain: untuk citra satelit dari awan dan mengidentifikasi jenis
awan berdasarkan tekstur, untuk aplikasi dalam bidang medis, untuk analisis citra aerial,
untuk citra satelit, untuk analisis citra mikroskopis [4], untuk deteksi kecacatan kain dalam
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
bidang industri tekstil [5], untuk karakterisasi struktur sedimen biogenik [6] dan lain
sebagainya. Metode GLCM merupakan ekstraksi order kedua pada fitur statistik tekstur.
Dengan metode GLCM, tekstur citra dengan skala grayscale dapat menghasilkan setidaknya
20 fitur ekstraksi (5 fitur ektraksi tiap sudut ketetanggaannya). Pengembangan penelitian ini
dilakukan untuk mengembangkan penelitian sebelumnya menggunakan metode yang
berbeda untuk mengenali tekstur.
Tekstur yang akan dikenali penulis merupakan tekstur aktual. Berbeda dengan
penelitian yang dilakukan sebelumnya yang menggunakan citra tekstur dalam bentuk
gambar, penulis akan mengumpulkan 13 tekstur asli yang bermacam-macam sebagai bahan
penelitian. Tiga belas tekstur terdiri dari 10 tekstur tunggal dan 3 tekstur ganda. Untuk
mengenali bermacam-macam tekstur dalam 1 permukaan (tekstur ganda) menjadi tantangan
dalam computer vision mengenali tiap tekstur yang terdapat dalam 1 permukaan. Sepuluh
tekstur tunggal tersebut ialah tekstur gabah, jagung, kacang tanah, anyaman bambu, karung
goni, keset, jerami, handuk, rumput, dan bebatuan. Tiga tekstur ganda ialah gabah dan
karung goni, jagung dan karung goni, serta kacang dan karung goni. Pada tekstur ganda, satu
citra memiliki 2 jenis tekstur.
Tujuan penelitian tugas akhir ini adalah untuk menghasilkan suatu alat dengan
mengembangkan computer vision dalam mengenali tekstur suatu bidang atau permukaan.
Manfaat pengembangan penelitian ini adalah sebagai alat bantu pengguna aplikasi
computer vision untuk mengenali berbagai tekstur serta karakteristik dari tiap tekstur.
Dengan menggunakan metode yang berbeda dari penelitian sebelumnya, pengembangan
penelitian ini juga bermanfaat untuk perkembangan ilmu pengetahuan dan teknologi
mengenai pengenalan tekstur (texture recognition).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
a. Tekstur yang akan dikenali berupa 13 tekstur aktual. Tiga belas tekstur ini terdiri
atas 10 tekstur tunggal yang berbeda dari penelitian sebelumnya [3] ditambah 3
tekstur ganda dari masukan penguji. Sepuluh tekstur tunggal yaitu tekstur gabah,
jagung, kacang tanah, anyaman bambu, karung goni, keset, jerami, handuk, rumput,
dan bebatuan. Tiga tekstur ganda yaitu gabah dan karung goni, jagung dan karung
goni, serta kacang dan karung goni.
b. Kamera ArduCAM digunakan untuk mengambil video.
c. Video dikirim dari ArduCAM melalui modul nirkabel ESP8266.
d. Resolusi video adalah 160 x 120 piksel.
e. Laptop terkoneksi dengan sinyal wifi dari modul nirkabel ESP8266.
f. Laptop menerima video yang dikirim modul nirkabel ESP8266 dan menangkap
citra dari video tersebut.
g. MATLAB sebagai perangkat lunak pengolahan citra.
h. Ekstraksi ciri menggunakan metode GLCM.
i. Perhitungan jarak menggunakan jarak Kosinus.
j. Variasi skala tekstur yaitu jarak kamera dengan tekstur : 20 cm, 25 m, dan 30 cm
berdasar pada penelitian sebelumnya [3] dengan penyesuaian terhadap kamera
yang penulis gunakan.
k. Variasi rotasi tekstur : 20°, 60°, dan 120° berdasar pada penelitian sebelumnya [3].
l. Variasi translasi tekstur : 1 cm vertikal (atas dan bawah) dan 1 cm horizontal (kiri
dan kanan) berdasar pada penelititan sebelumnya [3].
m. Variasi jarak wireless antara ESP8266 dengan laptop sebagai penerima : 1 m, 10
m, 20 m, 30 m, 40 m, dan 50 m berdasar percobaan yang dilakukan penulis.
n. Pengenalan dilakukan secara real time.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
o. Hasil pengenalan tekstur di luar 13 tekstur yang telah dilatihkan akan dikenali
sebagai 13 tekstur yang telah dilatihkan.
ciri. Hasil ekstraksi ciri berupa angka dan disimpan ke dalam matriks basis data.
Kemudian matriks tersebut disimpan dalam format “.mat”. Matriks basis data
digunakan sebagai acuan untuk mengenali tekstur.
e. Pengambilan data
Penelitian ini menggunakan 13 jenis tekstur yang berbeda dengan variasi skala,
rotasi, dan translasi. Tekstur yang diuji ialah tekstur tunggal dan tekstur ganda.
Sepuluh tekstur tunggal yang akan diuji antara lain: gabah, jagung, kacang tanah,
anyaman bambu, karung goni, keset, jerami, handuk, rumput, dan bebatuan. Tiga
tekstur ganda yang akan diuji antara lain: gabah dan karung goni, jagung dan karung
goni, serta kacang dan karung goni. Pengambilan data tiap tekstur dilakukan dengan
skala, rotasi, dan translasi yang berbeda. Pengambilan data tanpa variasi dilakukan
pada posisi awal dengan jarak kamera terhadap tekstur sebesar 20 cm, sudut putar 0°
dan tanpa pergeseran (posisi tekstur berada di tengah kamera). Variasi skala dapat
dilakukan dengan mengubah jarak kamera terhadap tekstur. Pengambilan data variasi
skala menggunakan 2 variasi jarak, yaitu 25 cm dan 30 cm. Variasi rotasi dapat
dilakukan dengan memutar tekstur terhadap kamera. Pengambilan data variasi rotasi
menggunakan 3 variasi sudut putar, yaitu 20°, 60°, dan 120°. Variasi translasi dapat
dilakukan dengan menggeser tekstur dari posisi awal. Pengambilan data variasi
translasi menggunakan 4 variasi geser, yaitu sejauh 1 cm secara vertikal (atas dan
bawah) dan horizontal (kiri dan kanan) dari posisi awal. Pengujian tekstur ganda
dilakukan seperti pengujian tekstur tunggal dengan variasi skala, rotasi, dan translasi.
Jumlah data yang diambil untuk 13 tekstur x 1 posisi awal = 13 data, 13 tekstur x 2
variasi skala = 26 data, 13 tekstur x 3 variasi rotasi = 39 data, 13 tekstur x 4 variasi
translasi = 52 data. Masing-masing data ditambahkan dan didapat data sebanyak 130
data pada penelitian ini.
f. Analisis dan penyimpulan
Analisis data dilakukan dengan meneliti pengaruh dari skala, rotasi, dan translasi
terhadap tekstur yang dikenali serta mengenali tesktur dalam 1 citra. Penyimpulan
hasil dilakukan untuk mengetahui pengaruh metode pengenalan tekstur GLCM
terhadap variasi skala, rotasi, dan translasi serta pengaruh 2 tekstur dalam 1 citra.
Penyimpulan hasil juga dilakukan dengan membandingkan unjuk kerja metode GLCM
dengan STD [3]. Pengaruh jarak wireless juga menjadi data pendukung untuk melihat
pengaruh unjuk kerja pengenalan tekstur.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II
DASAR TEORI
2.1. Tekstur
Menurut Kamus Besar Bahasa Indonesia, tekstur adalah ukuran dan susunan (jaringan)
bagian suatu benda. Dalam pengertian lain, tekstur merupakan jalinan atau penyatuan
bagian-bagian sesuatu sehingga membentuk suatu benda (seperti susunan serat dalam kain,
susunan sel-sel dalam tubuh). Tekstur juga bisa diartikan sebagai perasaan, rupa, atau
konsistensi suatu permukaan atau substansi. Menurut Bhosle dkk [1], tekstur merupakan
pengulangan dari elemen atau pola pada suatu permukaan. Adanya pengulangan elemen
pada suatu permukaan membuat suatu permukaan bisa dikatakan memiliki tekstur.
6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Dalam bukunya, Kadir [8] mengambil definisi tekstur sebagai hubungan mutual antara
nilai intensitas piksel ketetanggaan yang berulang di suatu area yang lebih luas daripada
jarak hubungan ketetanggaan tersebut. Kadir juga membagi tekstur menjadi 2 kategori
berdasarkan keteraturan pengulangan polanya, yaitu teratur dan tidak teratur. Tekstur teratur
memiliki pola berulang yang selalu sama dan cenderung konstan. Tekstur tidak teratur
memiliki pola berulang yang berbeda dan cenderung acak. Tekstur teratur dan tidak teratur
dapat dilihat pada Gambar 2.3.
(a) (b)
Gambar 2.3. Tekstur teratur (a) dan tektur tidak teratur atau acak (b)
(Gambar (a) dan (b) diambil dari Brodatz Textures)
Dalam pengolahan citra digital, tekstur menjadi salah satu karakteristik yang penting
dalam menganalisis berbagai jenis citra. Tekstur dapat dilihat dalam semua citra, mulai dari
citra multispectral scanner yaitu citra satelit untuk analisis remote sensing hingga citra
mikroskopik yaitu citra sel untuk analisis biomedis. Haralick mengklasifikasikan
karakterisasi tekstur menjadi 2 metode, yaitu metode statistical (menganalisis distribusi
spasial keabuan dengan menghitung statistik intensitas piksel) dan metode structural
(menghitung rerata texels dalam cara tertentu dengan tata aturan yang ada) [9].
2.3. ESP8266
ESP8266 merupakan Wi-Fi chips yang diproduksi oleh Espressif Systems, perusahaan
semikonduktor yang beroperasi di Shanghai, China. ESP8266EX adalah suatu system-on-
chip yang terintegrasi modul mikrokontroller Tensilica 32-bit, interface periferal digital
standar, antena, RF balun, power amplifier, low noise receive amplifier, filter dan power
management ke dalam pak yang kecil [11].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Fungsi utama dari ESP8266 ialah sebagai modul Wi-Fi untuk pengiriman data tanpa
kabel. ESP8266 menyediakan kapabilitas untuk jaringan Wi-Fi 2.4GHz dengan standar
802.11 b/g/n. Hal tersebut memungkinkan ESP8266 menjadi sebuah server sebagai tempat
yang menyimpan dan mengirim data. Kemudian client menerima data dari server. Jaringan
yang digunakan merupakan jaringan Local Area Network (LAN). Adapun salah satu
pengembangan kit dari ESP8266 ialah NodeMCU DevKit V1.0. NodeMCU ini merupakan
generasi kedua, yaitu pengembangan dari versi sebelumnya dengan chip yang ditingkatkan
dari sebelumnya ESP12 menjadi ESP12E [13]. Dengan NodeMCU ESP-12E, modul Wi-Fi
dapat digunakan diberbagai proyek untuk mempermudah pemakaian ESP8266.
10
f (0 , 0) f (0 , 1) f (0 , N 1)
f (1 , 0) f (1 , 1) f (1 , N 1)
f ( x, y )
f ( M 1 , 0) f ( M 1 , 1) f ( M 1, N 1)
Gambar 2.7. Matriks 2 Dimensi Representasi Citra Digital [15]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Gambar 2.8. Nilai piksel citra grayscale dengan 6x6 ketetanggaan [15]
Citra RGB merupakan citra berwarna yang representasinya lebih kompleks dan
bervariasi. Citra RGB terdiri dari 3 dimensi array, yaitu M x N x 3. M dan N adalah dimensi
panjang dan lebar citra sedangkan 3 adalah jumlah kanal warna. Terdapat 3 kanal warna,
yaitu merah (R), hijau (G), dan biru (B). Setiap kanal warna mengandung nilai 8-bit, yang
mengindikasikan skala merah, hijau, dan biru antara 0 hingga 255. Tiap piksel memiliki 3
komponen kanal warna untuk merepresentasi warna. Kombinasi dari 3 kanal warna 8-bit
menghasilkan angka 24-bit sehingga terdapat 224 (16.777.216) kombinasi warna.
Representasi alternatif ialah menggunakan 32-bit per piksel dengan memasukkan kanal ke-
4 yang disebut kanal alpha. Kanal tersebut digunakan untuk ukuran transparansi tiap piksel
yang biasa digunakan dalam penyuntingan citra. Citra RGB dengan komponen R, G, dan B
dapat dilihat pada Gambar 2.9.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
Gambar 2.9. Citra RGB (a) dengan komponen R (b), G (c), dan B (d) [15]
Pada banyak sistem pemrosesan citra, seringkali citra berwarna (RGB) perlu
dikonversi menjadi citra dengan skala keabuan (grayscale). Citra berwarna pada dasarnya
memiliki 3 layer warna yaitu merah, hijau, dan biru. Citra grayscale hanya memiliki 1 layer
warna untuk skala keabuan. Untuk mengkonversi citra RGB menjadi citra grayscale
menggunakan persamaan 2.1 [15].
13
dalam Machine Vision Systems secara umum, terdapat beberapa tahap dalam pengolahan
suatu citra agar dapat diklasifikasikan, yaitu:
a. Tahap Akuisisi
Pada tahap ini, objek ditangkap menggunakan kamera dengan pengaturan
pencahayaan untuk memastikan bahwa citra yang diambil dapat diproses lebih lanjut.
Beberapa pertimbangan yang diambil pada tahap ini, yakni seperti jarak antara kamera
dengan objek, pergeseran kamera terhadap objek, dan rotasi kamera terhadap objek.
b. Tahap Preprocessing
Tujuan dari tahap ini ialah untuk meningkatkan kualitas dari citra, seperti peningkatan
kontras, koreksi kecerahan, dan noise removal.
c. Tahap Segmentasi
Pada tahap ini bertujuan untuk membagi citra menjadi beberapa bagian ke dalam
komponen utama, yaitu objek relevan dan latar belakang. Tahap ini adalah salah satu
tantangan dalam Machine Vision System.
d. Tahap Ekstraksi Fitur
Dalam tahap ini terdapat algoritma yang berfungsi untuk enkode konten citra menjadi
bentuk informasi yang deskriptif. Fitur yang paling relevan setelah citra melalui tahap
segmentasi ialah ukuran distribusi (intensitas) warna, tekstur, dan bentuk. Fitur ini
biasanya disebut dengan vektor fitur (feature vector) berupa indikator numerik dari
konten citra. Fitur tersebut yang akan menjadi modal suatu konten citra dikenali
(diklasifikasi).
e. Tahap Klasifikasi
Setelah citra melalui tahap ekstraksi dan didapat vektor fitur, selanjutnya ialah tahap
pengklasifikasian atau pengenalan. Pemrosesan citra digunakan untuk mengenali pola
(pattern recognition).
14
Menurut Newsam [16], untuk mendapat hasil ekstraksi ciri GLCM ada 2 hal perlu
yang dilakukan. Pertama ialah memasangkan piksel co-occurences spasial yang dipisahkan
oleh sudut dan jarak tertentu yang ditabulasi menggunakan GLCM. Kedua ialah GLCM
digunakan untuk menghitung kuantitas skalar yang memiliki karakteristik dengan aspek
yang berbeda sesuai teksturnya. Nilai kuantitas ini merupakan hasil ekstraksi ciri dari GLCM
yang digunakan untuk menginterpretasikan suatu tekstur.
GLCM memiliki 4 arah sudut dalam ketetanggaan antar piksel, yaitu 0°, 45°, 90°, dan
135°. Sebagai ilustrasi, arah sudut ketetanggaan piksel GLCM dapat dilihat pada Gambar
2.10. Untuk sudut 0°, ketetanggaan piksel dihitung dengan jarak 1 piksel ke kanan. Untuk
sudut 45°, ketetanggaan piksel dihitung dengan jarak 1 piksel ke kanan atas. Untuk sudut
90°, ketetanggaan piksel dihitung dengan jarak 1 piksel ke atas. Untuk sudut 180°,
ketetanggaan piksel dihitung dengan jarak 1 piksel ke atas.
90°
135° 45°
0°
Contoh matriks berikut memperlihatkan penjelasan cara kerja metode GLCM serta
hubungan ketetanggaan antar piksel.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
0 1 0 1
2 3 1 1
0 2 3 2
2 1 3 1
Gambar 2.11. Contoh matriks 4x4 dengan variasi angka 0 sampai 3
Matriks di bawah (Gambar 2.13) memperlihatkan hubungan antar piksel dengan sudut
ketetanggaan 0° yaitu piksel baris ke-1 kolom ke-1 dengan baris ke-1 kolom ke-2. Pada
piksel tersebut terdapat angka 0 dan 1. Pasangan ketetanggaan (0,1) pada matriks framework
GLCM bertambah 1.
0 1 2 3
0 1 0 1 0 0 1 0 0
2 3 1 1 1 0 0 0 0
0 2 3 2 2 0 0 0 0
2 1 3 1 3 0 0 0 0
16
Matriks di bawah (Gambar 2.14) memperlihatkan hubungan antar piksel dengan sudut
ketetanggaan 0° yaitu baris ke-1 kolom ke-2 dengan baris ke-1 kolom ke-3. Pada piksel
tersebut terdapat angka 1 dan 0. Pasangan ketetanggaan (1,0) pada matriks framework
GLCM bertambah 1.
0 1 2 3
0 1 0 1 0 0 1 0 0
2 3 1 1 1 1 0 0 0
0 2 3 2 2 0 0 0 0
2 1 3 1 3 0 0 0 0
Matriks di bawah (Gambar 2.15) memperlihatkan hubungan antar piksel dengan sudut
ketetanggaan 0° yaitu baris ke-1 kolom ke-3 dengan baris ke-1 kolom ke-4. Pada piksel
tersebut terdapat angka 0 dan 1. Pasangan ketetanggaan (1,0) pada matriks framework
GLCM bertambah 1 menjadi 2.
0 1 2 3
0 1 0 1 0 0 2 0 0
2 3 1 1 1 1 0 0 0
0 2 3 2 2 0 0 0 0
2 1 3 1 3 0 0 0 0
Demikian proses tersebut diulang hingga baris ke-4 sehingga didapat matriks GLCM
sudut 0° seperti Gambar 2.16. Kemudian matriks GLCM dijumlah dengan transpose dari
matriks itu sendiri agar matriks menjadi simetris. Setelah matriks GLCM simetris
selanjutnya matriks GLCM dinormalisasi agar dapat dianalisis untuk menghitung masing-
masing ekstraksi fitur menggunakan rumus. Penjumlahan matriks GLCM dengan matriks
GLCM transpose dapat dilihat pada Gambar 2.17.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
0 1 2 3
0 0 2 1 0
1 1 1 0 1
2 0 1 0 2
3 0 2 1 0
= 1 1 0 3
0 3 3 0
Setelah didapat matriks GLCM yang simetris, matriks GLCM melalui tahap
normalisasi. Tiap nilai piksel matriks akan dibagi dengan jumlah piksel ketetanggaan. Pada
Gambar 2.17, jumlah piksel ketetanggaan ialah 24. Untuk itu, tiap nilai piksel matriks
GLCM akan dibagi dengan 24. Setelah matriks GLCM dinormalisasi, selanjutnya dapat
dihitung menggunakan rumus untuk mendapat nilai ekstraksi ciri.
18
Metode GLCM dapat menghasilkan setidaknya 5 ekstraksi ciri dari suatu citra digital
tiap sudut ketetanggaan pikselnya [8]. Lima besaran yang digunakan untuk mendapat hasil
ekstraksi ciri tersebut antara lain: angular second moment (ASM), kontras, inverse different
moment (IDM), entropi, dan korelasi. ASM merupakan ukuran homogenitas citra. Kontras
merupakan ukuran keberadaan aras keabuan dalam citra. IDM juga digunakan untuk
mengukur homogenitas. Entropi merupakan ukuran ketidakteraturan aras keabuan dalam
citra. Korelasi merupakan ukuran ketergantungan linear antar nilai aras keabuan dalam citra.
ASM bisa disebut juga uniformity atau energy. ASM adalah penjumlahan pangkat dari
elemen matriks GLCM. ASM memiliki nilai yang tinggi ketika citra memiliki homogenitas
yang baik atau nilai piksel yang hampir serupa. Untuk mencari ekstraksi fitur ASM dapat
digunakan rumus sebagai berikut.
𝐿 𝐿
2
𝐴𝑆𝑀 = ∑ ∑(𝐺𝐿𝐶𝑀(𝑖, 𝑗)) (2.3)
𝑖=1 𝑗=1
Kontras bisa disebut juga inertia. Kontras adalah suatu ukuran intensitas aras keabuan
ntara piksel dengan piksel lainnya dengan lokasi relatif. Kontras memiliki batas nilai dari 0
hingga pangkat 2 dari panjang matriks GLCM simetris. Pada citra dengan elemen piksel
yang bernilai sama secara keseluruhan, kontras bernilai 0. Untuk mencari ekstraksi fitur
kontras dapat digunakan rumus sebagai berikut.
𝐿 𝐿
IDM bisa disebut juga homogeneity. IDM adalah homogenitas lokal. IDM berkaitan
dengan kontras. Bobot IDM merupakan kebalikan dari bobot kontras. Untuk mencari
ekstraksi fitur IDM dapat digunakan rumus sebagai berikut.
𝐿 𝐿
𝐺𝐿𝐶𝑀(𝑖, 𝑗)
𝐼𝐷𝑀 = ∑ ∑ (2.5)
1 + (𝑖 − 𝑗)2
𝑖=1 𝑗=1
Entropi adalah ukuran ketidakaturan aras keabuan dalam suatu citra. Nilai entropi akan
semakin tinggi jika nilai elemen piksel citra semakin acak. Untuk mencari ekstraksi fitur
entropi dapat digunakan rumus sebagai berikut.
𝐿 𝐿
19
Korelasi dalam GLCM mengukur ketergantungan linear dari aras keabuan dalam
ketetanggaan piksel citra. Untuk mencari ekstraksi fitur korelasi dapat digunakan rumus
sebagai berikut.
𝐿 𝐿
(𝑖 − µ𝑖 ′ ) ∗ (𝑗−µ𝑗′ ) ∗ 𝐺𝐿𝐶𝑀(𝑖, 𝑗)
𝐾𝑜𝑟𝑒𝑙𝑎𝑠𝑖 = ∑ ∑ (2.7)
𝜎𝑖′ ∗ 𝜎𝑗′
𝑖=1 𝑗=1
dengan:
𝐿 𝐿
Rumus-rumus ekstraksi ciri tersebut dapat diterapkan pada matriks GLCM 4x4 sudut
0° (Gambar 2.19). Nilai piksel matriks GLCM 4x4 dapat dilihat melalui Tabel 2.3. Nilai
piksel 0 tidak dihitung dalam rumus.
0 0.125 0.042 0
0.125 0.083 0.042 0.125
0.042 0.042 0 0.125
0 0.125 0.125 0
20
Berikut ini adalah perhitungan kelima fitur untuk mendapat hasil ekstraksi ciri.
a. ASM
𝐿 𝐿
2
= ∑ ∑(𝐺𝐿𝐶𝑀(𝑖, 𝑗))
𝑖=1 𝑗=1
b. Kontras
𝐿 𝐿
c. IDM
𝐿 𝐿
𝐺𝐿𝐶𝑀(𝑖, 𝑗)
= ∑∑
1 + (𝑖 − 𝑗)2
𝑖=1 𝑗=1
21
d. Entropi
𝐿 𝐿
= −{0.125 log 0.125 + 0.042 log 0.042 + 0.125 log 0.125 + 0.083 log 0.083
+ 0.042 log 0.042 + 0.125 log 0.125 + 0.042 log 0.042
+ 0.042 log 0.042 + 0.125 log 0.125 + 0.125 log 0.125
+ 0.125 log 0.125}
= 𝟎.9973
e. Korelasi
𝐿 𝐿
µ𝑖′ = ∑ ∑ 𝑖 ∗ 𝐺𝐿𝐶𝑀(𝑖, 𝑗)
𝑖=1 𝑗=1
𝐿 𝐿
22
𝐿 𝐿
µ𝑗′ = ∑ ∑ 𝑗 ∗ 𝐺𝐿𝐶𝑀(𝑖, 𝑗)
𝑖=1 𝑗=1
𝐿 𝐿
2
𝜎𝑗2′ = ∑ ∑ 𝐺𝐿𝐶𝑀(𝑖, 𝑗)(𝑗 − µ𝑗′ )
𝑖=1 𝑗=1
𝐿 𝐿
(𝑖 − µ𝑖′ ) ∗ (𝑗−µ𝑗′ ) ∗ 𝐺𝐿𝐶𝑀(𝑖, 𝑗)
𝐾𝑜𝑟𝑒𝑙𝑎𝑠𝑖 = ∑ ∑
𝜎𝑖′ ∗ 𝜎𝑗′
𝑖=1 𝑗=1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
= 𝟎. 𝟏𝟎𝟒𝟕
Dengan demikian, ekstraksi ciri matriks GLCM 4x4 sudut 0° ialah sebagai berikut:
ASM = 0.1076
Kontras = 0.192
IDM = 0.4418
Entropi = 0.9973
Korelasi = 0.1047
Tiap sudut GLCM memiliki 5 ekstraksi fitur. Dalam satu citra dapat digunakan 4 sudut
ketetanggaan piksel. Dengan demikian, dalam satu citra dapat menghasilkan 20 ekstraksi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
fitur yang memiliki karakternya masing-masing. Ekstraksi fitur tersebut kemudian disimpan
dalam bentuk matriks sendiri yang bisa disebut matriks ekstraksi ciri GLCM.
∑𝑛𝑖=1 𝑥𝑖 𝑦𝑖
𝐽𝑎𝑟𝑎𝑘 𝐾𝑜𝑠𝑖𝑛𝑢𝑠 = 1 − (2.12)
√∑𝑛𝑖=1 𝑥𝑖2 √∑𝑛𝑖=1 𝑦𝑖2
Elemen Matriks A = ( 2, 3, 4 )
Elemen Matriks B = ( 2, 3, 5 )
Elemen Matriks C = ( 1, 4, 4 )
2∙2+3∙3+4∙5
𝐽𝑎𝑟𝑎𝑘 𝐾𝑜𝑠𝑖𝑛𝑢𝑠 = 1 −
√22 + 32 + 42 × √22 + 32 + 52
33
=1−
√29 × √38
= 1 − 0.9941 = 𝟎. 𝟎𝟎𝟓𝟗
2∙1+3∙4+4∙4
𝐽𝑎𝑟𝑎𝑘 𝐾𝑜𝑠𝑖𝑛𝑢𝑠 = 1 −
√22 + 32 + 42 × √12 + 42 + 42
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
30
=1−
√29 × √33
= 1 − 0.9698 = 𝟎. 𝟎𝟑𝟎𝟐
Jarak Kosinus matriks A dan matriks B adalah 0.0059. Jarak Kosinus matriks A dan
matriks C adalah 0.0302. Dengan demikian, jarak yang paling minimal adalah
matriks 1 dan matriks 2. Jarak yang paling minimal menunjukkan bahwa matriks
memiliki kemiripan yang paling dekat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III
RANCANGAN PENELITIAN
Proses perancangan sistem software untuk pengenalan tekstur terdiri dari pengambilan
citra tekstur, pengiriman citra tekstur, penerimaan citra tekstur, ekstraksi ciri GLCM, fungsi
jarak dan penentuan keluaran. Diagram blok proses pengenalan tekstur dapat dilihat pada
Gambar 3.1. Diagram alir keseluruhan sistem pengenalan tekstur dapat dilihat pada Gambar
3.2.
26
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Mulai
Pengambilan dan
Pengiriman Video Tekstur
Preprocessing
Menampilkan
hasil ekstraksi ciri
Penentuan Keluaran
Hasil pengenalan
tekstur berupa teks
Selesai
28
Penulis menyiapkan 13 tekstur aktual yang akan dikenali. Proses pengambilan citra
tekstur menggunakan kamera ArduCAM. Citra yang telah diambil ArduCAM berupa citra
RGB. Selanjutnya citra akan dikirim melalui modul nirkabel ESP8266 yaitu NodeMCU
ESP-12E. Laptop menerima citra tekstur. Tahap Preprocessing untuk mengubah citra RGB
menjadi citra grayscale. Perangkat lunak pengolah citra kemudian memproses citra tekstur
melalui tahap ekstraksi ciri GLCM. Hasil ekstraksi ciri dibandingkan dengan basis data
dengan menghitung jarak yang paling dekat. Hasil dengan jarak yang paling dekat akan
dikeluarkan berupa tulisan di layar monitor.
NodeMCU ESP-12E akan mendapat perintah dari GUI Matlab untuk menyalakan
Kamera ArduCAM. Setelah itu, citra tekstur akan diambil oleh kamera ArduCAM melalui
video real time (streaming). Video streaming kemudian dikirim oleh NodeMCU ke
penerima setelah penerima terkoneksi pada jaringan LAN NodeMCU. Lampu LED pada
NodeMCU akan menyala berwarna merah ketika proses pengiriman video streaming.
Diagram alir subrutin tahap pengambilan dan pengiriman video tekstur dapat dilihat pada
Gambar 3.3.
Mulai A
Inisialisasi
NodeMCU Mengirim Video Streaming
Tidak
Mendapat Selesai
perintah Kamera mengirim?
ON? Tidak
Ya Ya
A Selesai
(a)
Gambar 3.3. (a) Diagram alir subrutin pengambilan dan pengiriman video streaming dan
(b) Diagram alir inisialisasi NodeMCU
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Mulai
Pengaturan SPI
Pengaturan Resolusi
(b)
Gambar 3.3. (Lanjutan) (a) Diagram alir subrutin pengambilan dan pengiriman video
streaming dan (b) Diagram alir inisialisasi NodeMCU
30
Mulai
Tidak
Mengirim
perintah
Kamera ON?
Ya
Keluaran
Menampilkan
Video Streaming
Tidak
Selesai
Menerima?
Ya
Tutup koneksi
Selesai
31
Mulai
C
Masukan:
Citra RGB
Keluaran:
Citra Preprocessing
Selesai
C
Mulai
Gray Level Co-
occurrence Matrix
Masukan:
Citra Preprocessing Keluaran:
Hasil ekstraksi
D
Selesai
32
Masukan dari tahap ekstraksi ciri adalah citra preprocessing yang merupakan citra
grayscale. Citra tersebut kemudian masuk ke tahap GLCM. Pada tahap ini citra grayscale
dianalisis hingga mendapat hasil ekstraksi ciri. Diagram alir subrutin GLCM dapat dilihat
pada Gambar 3.7. Citra grayscale disusun ulang berdasarkan matriks GLCM dengan
memerhatikan ketetanggaan tiap piksel. Seperti yang dijelaskan pada Gambar 2.10, arah
sudut ketetanggaan piksel ada 4 sudut. Masing-masing sudut memiliki matriks GLCM yang
berbeda. Oleh karena itu, untuk mendapat matriks GLCM tiap sudut perlu menghitung
ketetanggaan (relasi) antar piksel. Hal pertama ialah menghitung ketetanggaan tiap pikselnya.
Setelah itu, matriks GLCM dibuat simetris dengan menjumlahkannya dengan matriks
GLCM transpose.
Mulai E
Inisialisasi:
Hitung IDM dari Matriks
Matriks GLCM
GLCM tiap sudut
tiap sudut
33
Mulai
Masukan:
Hasil ekstraksi ciri citra
masukan dan basis data
Keluaran:
Hasil perhitungan jarak
Kosinus
Selesai
34
Mulai
Masukan:
Hasil perhitungan
jarak Kosinus
Keluaran:
Hasil berupa Teks Keluaran
pada layar monitor
Selesai
35
Mulai
Masukan:
Citra tekstur melalui
kamera
Preprocessing
Konversi citra RGB menjadi
citra grayscale
Ekstraksi ciri
Gray Level Co-occurrence
Matrix
Keluaran:
Hasil Ekstraksi Ciri
Selesai
36
Mulai
Keluaran:
Video streaming
diterima dan ditampilkan
Preprocessing
Keluaran:
Tombol “AMBIL Keluaran:
Citra RGB CITRA” memberi Citra grayscale
ditampilkan perintah untuk ditampilkan
mengambil citra RGB
serta grayscale
Keluaran:
Ekstraksi Ciri
Hasil ekstraksi
ciri ditampilkan
Menghitung hasil ekstraksi
pada tabel ciri dengan metode GLCM
Keluaran:
Hasil pengenalan tekstur
ditampilkan berupa teks
Reset:
Tombol “RESET” berfungsi
mengulang proses pengenalan tekstur
dengan menghapus data masukan
Selesai
37
38
Citra grayscale kemudian masuk ke tahap ekstraksi ciri GLCM. Dengan perhitungan
rumus, matriks GLCM dapat menghasilkan 5 fitur ekstraksi tiap sudut ketetanggaannya.
Hasil ekstraksi ciri sebanyak 20 nilai fitur akan ditampilkan pada Table 1 di panel HASIL
EKSTRAKSI CIRI GLCM. Setelah mendapat hasil ekstraksi ciri, fungsi jarak Kosinus
digunakan untuk mencari jarak tekstur dengan membandingkan hasil ekstraksi ciri citra
masukan dengan basis data. Tekstur dengan jarak Kosinus paling minimal akan ditampilkan
pada edit text 1 di panel KELUARAN. Tombol “RESET” digunakan untuk mengulang
proses pengenalan tekstur dari awal. Keterangan sketsa GUI dapat dilihat pada Tabel 3.1.
Modul ArduCAM +
NodeMCU ESP-12E
Penyangga
Laptop
Tekstur 25 x 25cm
39
BAB IV
Implementasi sistem pengenalan tekstur secara perangkat lunak dan perangkat keras
yang ada di Bab III, dapat dilihat pada lampiran 1 dan lampiran 3. Untuk mengetahui cara
kerja perangkat lunak secara bagian per bagian dapat dilihat pada lampiran 2. Pengujian
sistem pengenalan tekstur menghasilkan data pengenalan yang berguna untuk pembahasan
pada bab ini. Pengujian sistem pengenalan tekstur bertujuan untuk mengetahui sistem yang
telah dirancang dapat bekerja dengan baik sesuai dengan perancangan.
Pengujian pengaruh RST terhadap pengenalan diambil dengan resolusi kamera 160 x
120 piksel. Data diperoleh dari 10 tekstur tunggal dengan 10 variasi RST yang terdiri dari 1
posisi awal, 3 variasi rotasi, 2 variasi skala, dan 4 variasi translasi. Tingkat pengenalan
tekstur masing-masing variasi didapat mengambil rata-rata dari tiap variasi. Pada setiap
tekstur dan setiap varian akan dilakukan pengambilan gambar sebanyak 3 kali. Pengambilan
data dilakukan dengan berdasar penelitian milik Adnyana [3]. Secara detail, data pengenalan
tekstur dapat dilihat pada lampiran 4. Secara persentase, data pengenalan tekstur pada
lampiran 4 tersebut dapat dilihat pada lampiran 5. Secara grafis, hasil persentase pengenalan
40
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
tekstur pada lampiran 5 dapat dilihat pada Gambar 4.1. Hasil tingkat pengenalan tekstur akan
dibandingkan dengan penelitian sebelumnya untuk melihat pengembangan penelitian yang
telah dilakukan.
42
pada penelitian ini lebih rendah dari resolusi penelitian sebelumnya, yaitu 160 x 120 piksel.
Dengan demikian, resolusi kamera berpengaruh terhadap tingkat pengenalan tekstur.
Pengujian pengaruh variasi rotasi diambil dengan mengatur resolusi kamera 160 x 120
piksel serta jarak 20 cm dan posisi tekstur tanpa pergeseran. Pada pengujian ini terdapat 4
variasi rotasi, yaitu 0°, 20°, 60°, dan 120°. Data yang diperoleh dapat diolah menjadi
persentase tingkat pengenalan tekstur dengan menghitung nilai pengenalan dari 3 kali
pengulangan untuk 10 tekstur tunggal. Satu variasi rotasi memiliki total data pengenalan
variasi rotasi sebanyak 30 data. Untuk mendapat persentase tiap sudut variasi rotasi, jumlah
pengujian berhasil akan dibagi dengan total data pengenalan variasi sudut dan dikali dengan
100%. Grafik pengaruh variasi rotasi terhadap pengenalan ditunjukkan pada Gambar 4.2.
60%
50%
40%
30%
20%
10%
0%
0 20 60 120
GLCM 90.0% 56.7% 60.0% 40.0%
STD [3] 100.0% 83.3% 70.0% 73.3%
Sudut (°)
43
tersebut dapat disimpulkan bahwa variasi rotasi berpengaruh terhadap tingkat pengenalan.
Perbandingan dengan penelitian sebelumnya, tingkat pengenalan metode STD lebih tinggi
dibandingkan metode GLCM. Hal tersebut bisa terjadi karena penggunaan resolusi yang
lebih rendah dari penelitian sebelumnya.
Pengujian pengaruh variasi skala diambil dengan mengatur resolusi kamera 160 x 120
piksel serta sudut putar 0° dan posisi tekstur tanpa pergeseran. Pada pengujian ini terdapat 3
variasi jarak antara kamera dengan tekstur, yaitu 20 cm, 25 cm, dan 30 cm. Data yang
diperoleh dapat diolah menjadi persentase tingkat pengenalan tekstur dengan menghitung
nilai pengenalan dari 3 kali pengulangan untuk 10 tekstur tunggal. Satu variasi rotasi
memiliki total data pengenalan variasi sudut sebanyak 30 data. Untuk mendapat persentase
tiap jarak variasi skala, jumlah pengujian berhasil akan dibagi dengan total data pengenalan
variasi skala dan dikali dengan 100%. Grafik pengaruh variasi skala terhadap pengenalan
ditunjukkan pada Gambar 4.3.
60%
50%
40%
30%
20%
10%
0%
20 cm 25 cm 30 cm 35 cm
GLCM 90% 80% 37%
STD [3] 78% 94% 62%
Jarak (cm)
44
ditangkap kamera semakin sulit dikenali. Semakin sulitnya tekstur dikenali, maka nilai
ekstraksi ciri yang didapat dari metode GLCM pun berbeda dengan basis data. Hal ini
mengakibatkan nilai ekstraksi ciri masukan dan ekstraksi ciri basis data tidak sesuai
teksturnya. Faktor yang bisa mempengaruhi tingkat pengenalan ialah resolusi dari kamera
yang digunakan serta pencahayaan saat pengambilan citra.
60%
50%
40%
30%
20%
10%
0%
Center U1 L1 D1 R1
GLCM 90.0% 63.3% 80.0% 60.0% 60.0%
STD [3] 100.0% 86.6% 90.0% 66.6% 96.6%
Geser (cm)
Ket:
U 1 = Geser Atas 1 cm D 1 = Geser Bawah 1 cm
L 1 = Geser Kiri 1 cm R 1 = Geser Kanan 1 cm
45
Pengujian pengaruh variasi translasi diambil dengan mengatur resolusi kamera 160 x
120 piksel serta jarak 20 cm dan sudut putar 0°. Pada pengujian ini terdapat 5 variasi translasi,
yaitu posisi center, geser 1 cm ke atas (U) , geser 1 cm ke kiri (L), geser 1 cm ke bawah (D)
dan geser 1 cm ke kanan (R). Data yang diperoleh dapat diolah menjadi persentase tingkat
pengenalan tekstur dengan menghitung nilai pengenalan dari 3 kali pengulangan untuk 10
tekstur tunggal. Satu variasi translasi memiliki total data pengenalan variasi sudut sebanyak
30 data. Untuk mendapat persentase tiap variasi translasi, jumlah pengujian berhasil akan
dibagi dengan total data pengenalan variasi translasi dan dikali dengan 100%. Grafik
pengaruh variasi translasi terhadap pengenalan ditunjukkan pada Gambar 4.4.
Berdasarkan grafik, variasi translasi mempengaruhi tingkat pengenalan tekstur. Setiap
variasi pergeseran menurunkan tingkat pengenalan. Pada titik center tanpa pergeseran
memiliki tingkat pengenalan paling tinggi sebesar 90%. Kesalahan pengenalan pada
beberapa tekstur ketika dilakukan pengujian karena perbedaan yang terjadi pada nilai
ekstraksi ciri tekstur masukan dengan basis data memiliki jarak cukup jauh. Hal tersebut
mengakibatkan tekstur yang dikenali ialah tekstur yang memiliki jarak yang paling dekat.
Beberapa kasus membuat pengenalan tekstur dapat sesuai dikenali ketika dilakukan variasi
translasi. Contohnya ialah tekstur kacang dapat dikenali sebagai kacang ketika pengujian
variasi translasi 1 cm ke kiri. Ini terjadi karena nilai ekstraksi ciri yang didapat dari tekstur
masukan setelah diuji variasi translasi justru memiliki jarak yang lebih dekat dengan tekstur
asalnya. Pada penelitian sebelumnya, variasi skala juga mempengaruhi tingkat pengenalan
karena kesamaan informasi citra tekstur yang dikenali dengan basis data semakin sedikit.
Hal ini berarti bahwa variasi translasi menurunkan tingkat pengenalan secara acak.
Perbandingan dengan penelitian sebelumnya, tingkat pengenalan variasi skala menggunakan
metode STD lebih baik daripada tingkat pengenalan variasi skala menggunakan metode
GLCM. Hal tersebut bisa terjadi karena penggunaan resolusi yang lebih rendah dari
penelitian sebelumnya.
46
masukan dengan hasil ekstraksi ciri jagung basis data memiliki jarak Kosinus yang paling
kecil. Tekstur jagung memiliki karakteristik tekstur yang paling baik. Hal tersebut dapat
dilihat dari tingkat pengenalan yang dapat dikatakan selalu berhasil mengenali tekstur jagung.
(a) (b)
Gambar 4.6. Citra Grayscale Tekstur Jagung Masukan Pada Sudut 20° (a) dan Citra
Grayscale Tekstur Jagung Basis Data (b)
Tabel 4.1. Tabel Jarak Kosinus Tekstur Jagung Terhadap Basis Data
Jarak Kosinus Tekstur Jagung Masukan Pada Sudut 20° Terhadap Basis Data
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Batu
1,51 x 7,68e- 6,38 x 3,45 x
0,0018 0,0031 0,0043 0,043 0,0016 0,0023
10-4 04 10-4 10-4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
Pada Tabel 4.1 dapat dilihat bahwa Jarak Kosinus dengan tekstur jagung adalah 1,51
x 10-4. Jarak tersebut adalah jarak paling minimal dibanding dengan jarak Kosinus tekstur
lainnya. Dengan demikian, hasil pengenalan tekstur akan dikenali sebagai jagung sesuai
dengan tekstur masukan.
Berdasarkan grafik pada Gambar 4.5, tekstur kacang ialah tekstur yang paling buruk
dengan rata-rata tingkat pengenalan pengaruh RST sebesar 25,6%. Sebagian besar pengujian
pengenalan tekstur kacang dikenali sebagai tekstur bebatuan. Pada sudut 120°, tekstur
kacang dikenali sebagai tekstur bebatuan. Gambar 4.7 menunjukkan citra grayscale tekstur
kacang masukan pada sudut 120° dengan citra grayscale tekstur kacang basis data dan citra
grayscale tekstur bebatuan basis data.
Jarak Kosinus Tekstur Kacang Masukan Pada Sudut 120° Terhadap Basis Data
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Batu
9,55 x 8,3 x
0,0023 0,0011 0,0098 0,0153 0,003 0,0708 0,0033 0,0056
10-4 10-4
Perbandingan hasil ekstraksi ciri GLCM tekstur kacang pada Gambar 4.7 dapat dilihat
pada lampiran 6. Hasil ekstraksi ciri tekstur kacang masukan dengan hasil ekstraksi ciri
tekstur kacang basis data tidak memiliki jarak paling minimal. Hasil ekstraksi ciri tekstur
kacang masukan justru memiliki jarak paling minimal dengan hasil ekstraksi ciri tekstur
bebatuan basis data. Hal ini berarti tekstur kacang memiliki kemiripan dengan tekstur
bebatuan yang menyebabkan kesulitan mengenali tekstur kacang.
Pada Tabel 4.2 dapat dilihat bahwa jarak Kosinus paling minimal ialah jarak dengan
bebatuan. Jarak Kosinus dengan tekstur bebatuan adalah 8,3 x 10-4 sedangkan jarak Kosinus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
dengan tekstur kacang adalah 11 x 10-4. Dengan demikian, hasil pengenalan tekstur akan
dikenali sebagai bebatuan tidak sesuai dengan tekstur masukannya yaitu tekstur kacang.
Pada tekstur kacang pun terdapat masalah pada tingkat pengenalan variasi skala yang
tidak berhasil sama sekali (0%). Tekstur kacang dengan variasi skala 100% dikenali sebagai
tekstur bebatuan. Hal ini membuktikan bahwa tekstur kacang memiliki nilai ekstraksi ciri
yang mirip dengan nilai ekstraksi ciri tekstur bebatuan. Hal tersebut bisa terjadi karena faktor
perbedaan intensitas cahaya saat pengambilan basis data dengan pengujian
Pada grafik pengaruh variasi jarak terhadap kuat sinyal terlihat bahwa semakin jauh
lintasan propagasi antara NodeMCU dan laptop, maka kuat sinyal akan mengalami atenuasi.
Walau demikian, pada jarak 40 m hingga 70 m terlihat bahwa atenuasi kuat sinyal naik turun
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
(tidak stabil). Hal ini terjadi karena kuat sinyal akan jatuh bergantung pada jarak dari
medium transmisi. Secara umum, kuat sinyal akan mengalami atenuasi secara eksponensial.
-10
-20
-30
-40
-50
-60
-70
-80
-90
1m 10 m 20 m 30 m 40 m 50 m 60 m 70 m 80 m
Kuat Sinyal (dBm) -45 -55 -62 -70 -72 -77 -71 -74
Setiap jarak dilakukan pengujian pengenalan tekstur untuk mengetahui pengaruh jarak
NodeMCU dengan laptop terhadap tingkat pengenalan tekstur. Pada pengujian ini,
pengenalan dilakukan sebanyak 10 kali tiap jaraknya. Resolusi kamera yang digunakan
adalah 160 x 120 piksel. Dari 10 pengujian akan dihitung persentase tingkat pengenalan
dengan membagi jumlah keberhasilan pengenalan dengan sepuluh pengenalan dan dikali
100%. Grafik pengaruh variasi jarak terhadap tingkat pengenalan dapat dilihat pada Gambar
4.9. Berdasarkan grafik pengaruh variasi jarak terhadap tingkat pengenalan, pada jarak 1 m
hingga 80 m terlihat tingkat pengenalan tekstur mencapai 100%. Pada jarak terdekat (1 m)
hingga jarak terjauh (80 m), tingkat pengenalan mencapai 100% karena video streaming
berhasil diterima laptop dan citra tekstur yang diambil masih dapat dikenali.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
Tingkat Pengenalan
(a)
Gambar 4.10. Tampilan GUI Pengenalan Tekstur: pada jarak 1 m (a)
dan pada jarak 80 m (b)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
(b)
Gambar 4.10. (Lanjutan) Tampilan GUI Pengenalan Tekstur: pada jarak 1 m (a)
dan pada jarak 80 m (b)
Beberapa pengujian pengenalan terdapat masalah pada NodeMCU dalam mengirim
video streaming. Pada GUI, setelah tombol CAMERA ON ditekan, indikator lampu
berwarna merah pada board NodeMCU akan menyala dan mengirim video streaming.
Indikator lampu pada NodeMCU menyala ditunjukkan pada Gambar 4.11.
Video streaming akan diterima kemudian ditampilkan pada GUI. Pada beberapa
pengujian, laptop tidak menerima video streaming dari NodeMCU. Error ketika tidak
berhasil menerima video streaming tidak tertampil pada GUI, tetapi tertampil pada halaman
command window MATLAB. Tampilan GUI setelah CAMERA ON ditekan tapi tidak
menerima video streaming dapat dilihat pada Gambar 4.12.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Walaupun demikian, pada pengujian variasi rotasi dan skala, tingkat pengenalan
dengan resolusi 320 x 240 piksel lebih rendah dari tingkat pengenalan dengan resolusi 160
x 120 piksel. Perbaikan tingkat pengenalan tekstur hanya terjadi pada variasi translasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
dengan tingkat pengenalan sebesar 78%. Ini menyatakan bahwa variasi rotasi dan skala tidak
mengalami perbaikan walaupun menggunakan resolusi yang lebih tinggi. Hal tersebut terjadi
karena piksel yang lebih tinggi mempengaruhi metode GLCM dalam mendapatkan hasil
ektraksi. Metode GLCM adalah metode statistik fitur tekstur order dua yang berarti
perhitungan berdasarkan hitungan statistik antara ketetanggaan piksel.
Grafik pada Gambar 4.14 menunjukkan tingkat pengenalan metode GLCM dengan
resolusi kamera 320 x 240 dan normalisasi nilai fitur GLCM lebih tinggi dibanding tingkat
pengenalan yang lain, baik pada pengujian posisi awal maupun pengujian variasi RST. Ini
berarti perbaikan kinerja dengan menaikkan resolusi dan normalisasi nilai fitur GLCM
berhasil.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
Gambar 4.14. Grafik Pengaruh Perbaikan Kinerja Dengan Perubahan Resolusi Dan
Normalisasi Nilai Fitur GLCM
Tingkat pengenalan menggunakan metode GLCM setelah diperbaiki kemudian
dibandingkan dengan tingkat pengenalan menggunakan metode STD. Grafik tingkat
pengenalan tekstur dengan pengaruh RST setelah perbaikan kinerja dapat dilihat pada
Gambar 4.15.
Gambar 4.15. Grafik Tingkat Pengenalan Tekstur Dengan Pengaruh RST Setelah
Perbaikan Kinerja
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
Perbaikan tersebut memiliki tingkat pengenalan yang lebih baik pada variasi Rotasi
dan Translasi dibandingkan penelitian sebelumnya. Tingkat pengenalan ini yang dipakai
sebagai tingkat pengenalan terbaik dari penelitian ini dengan tingkat pengenalan posisi awal
atau tanpa RST mencapai 100%, variasi rotasi mencapai 85,83%, variasi skala mencapai
77,77% dan variasi translasi mencapai 97,34%. Hal ini berarti resolusi kamera, metode
ekstraksi ciri serta fungsi jarak dapat menaikkan tingkat pengenalan.
Tingkat Pengenalan
Gambar 4.16. Grafik Tingkat Pengenalan Tekstur Ganda Dengan Pengaruh RST
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
Grafik tingkat pengenalan tekstur ganda dengan pengaruh RST dapat dilihat pada
Gambar 4.16. Tekstur ganda yang digunakan untuk pengujian pengenalan tekstur ganda
antara lain: tekstur karung goni dan gabah, tekstur karung goni dan jagung, dan tekstur
karung goni dan kacang. Tekstur tersebut adalah tekstur yang akan disimpan pada basis data
untuk dikenali. Selain ke-3 tekstur ganda tersebut, tekstur ganda lain akan dikenali sebagai
tekstur ganda yang telah disimpan. Pengujian ini menggunakan resolusi kamera 160 x 120
piksel. Sama seperti pengujian pengenalan tekstur tunggal, tingkat pengenalan tekstur ganda
pun mengalami penurunan ketika pengujian variasi RST, kecuali untuk variasi skala. Variasi
RST akan membuat tekstur masukan berbeda dengan tekstur basis data. Hal ini membuat
ekstraksi ciri GLCM masukan berbeda dengan basis data sehingga mempengaruhi
perhitungan jarak Kosinus. Oleh karena itu, kesalahan pengenalan dapat terjadi karena jarak
Kosinus yang paling minimal tidak sesuai antara tekstur masukan dengan tekstur basis data.
60%
50%
40%
30%
20%
10%
0%
0 20 60 120
Ganda 100% 100% 67% 67%
Sudut (°)
Gambar 4.17. Grafik Pengaruh Variasi Rotasi Terhadap Pengenalan Tekstur Ganda
Pengujian pengaruh variasi rotasi diambil dengan mengatur resolusi kamera 160 x 120
piksel serta jarak 20 cm dan posisi tekstur tanpa pergeseran. Pada pengujian ini terdapat 4
variasi rotasi, yaitu 0°, 20°, 60°, dan 120°. Data yang diperoleh dapat diolah menjadi
persentase tingkat pengenalan tekstur dengan menghitung nilai pengenalan dari 3 kali
pengulangan untuk 3 tekstur ganda. Satu variasi rotasi memiliki total data pengenalan variasi
rotasi sebanyak 9 data. Untuk mendapat persentase tiap sudut variasi rotasi, jumlah
pengujian berhasil akan dibagi dengan total data pengenalan variasi sudut dan dikali dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
100%. Grafik pengaruh variasi rotasi terhadap pengenalan ditunjukkan pada Gambar 4.17.
Pada grafik tersebut terlihat bahwa semakin besar variasi sudut rotasi akan semakin
mempengaruhi tingkat pengenalan. Hal ini dibuktikan dengan besarnya sudut rotasi 120°,
persentase pengenalan turun hingga 66,7%. Hal tersebut dikarenakan variasi rotasi membuat
citra masukan berbeda dengan citra yang telah disimpan dengan basis data. Nilai ekstraksi
ciri masukan dibandingkan dengan nilai ekstraksi ciri basis data menggunakan jarak Kosinus
dan didapat hasil pengenalan yang tidak sesuai dengan tekstur masukan. Dari data tersebut
dapat disimpulkan bahwa variasi rotasi cukup berpengaruh terhadap tingkat pengenalan baik
pada pengenalan tekstur tunggal.
Pengujian pengaruh variasi skala diambil dengan mengatur resolusi kamera 160 x 120
piksel serta sudut putar 0° dan posisi tekstur tanpa pergeseran. Pada pengujian ini terdapat 3
variasi jarak antara kamera dengan tekstur, yaitu 20 cm, 25 cm, dan 30 cm. Data yang
diperoleh dapat diolah menjadi persentase tingkat pengenalan tekstur dengan menghitung
nilai pengenalan dari 3 kali pengulangan untuk 3 tekstur ganda. Satu variasi rotasi memiliki
total data pengenalan variasi sudut sebanyak 9 data. Untuk mendapat persentase tiap jarak
variasi skala, jumlah pengujian berhasil akan dibagi dengan total data pengenalan variasi
skala dan dikali dengan 100%. Grafik pengaruh variasi skala terhadap pengenalan
ditunjukkan pada Gambar 4.18.
60%
50%
40%
30%
20%
10%
0%
20 25 30
Ganda 100.0% 100.0% 100.0%
Jarak (cm)
Gambar 4.18. Grafik Pengaruh Variasi Skala Terhadap Pengenalan Tekstur Ganda
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
Pada grafik tersebut dapat dilihat bahwa tingkat pengenalan pada tiap variasi skala
mencapai 100%. Hal ini berarti variasi skala tidak mempengaruhi tingkat pengenalan. Hal
tersebut bisa terjadi karena tekstur gabah, jagung dan kacang pada tekstur ganda memiliki
perbedaan yang masih dapat ditoleransi dari variasi skala. Pada jarak 30 cm, ke-3 tekstur
ganda tersebut masih dapat dikenali dengan benar. Dari data tersebut, variasi skala tidak
mempengaruhi ke-3 tekstur ganda yang diuji.
Pengujian pengaruh variasi skala diambil dengan mengatur resolusi kamera 160 x 120
piksel serta jarak 20 cm dan sudut putar 0°. Pada pengujian ini terdapat 5 variasi translasi,
yaitu posisi center, geser 1 cm ke atas (U) , geser 1 cm ke kiri (L), geser 1 cm ke bawah (D)
dan geser 1 cm ke kanan (R). Data yang diperoleh dapat diolah menjadi persentase tingkat
pengenalan tekstur dengan menghitung nilai pengenalan dari 3 kali pengulangan untuk 3
tekstur ganda. Satu variasi translasi memiliki total data pengenalan variasi sudut sebanyak 9
data. Untuk mendapat persentase tiap variasi translasi, jumlah pengujian berhasil akan dibagi
dengan total data pengenalan variasi translasi dan dikali dengan 100%. Grafik pengaruh
variasi translasi terhadap pengenalan ditunjukkan pada Gambar 4.19.
70%
60%
50%
40%
30%
20%
10%
0%
Center U1 L1 D1 R1
Ganda 100.0% 100.0% 77.8% 100.0% 100.0%
Geser (cm)
Ket:
U 1 = Geser Atas 1 cm D 1 = Geser Bawah 1 cm
L 1 = Geser Kiri 1 cm R 1 = Geser Kanan 1 cm
Gambar 4.19. Grafik Pengaruh Variasi Translasi Terhadap Pengenalan Tekstur Ganda
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
Berdasarkan grafik, sama seperti pengaruh RST terhadap pengenalan tekstur tunggal,
variasi translasi mempengaruhi tingkat pengenalan tekstur. Beberapa pengujian variasi
translasi geser ke kiri 1 cm menurunkan tingkat pengenalan tekstur ganda. Tekstur ganda
yang diuji terpisah secara vertikal sehingga tidak mempengaruhi variasi translasi U1 dan D1.
Pada pengujian variasi translasi geser kiri 1 cm tekstur karung goni dan jagung, tekstur
jagung akan lebih banyak dibanding tekstur karung goni sehingga tekstur ganda tersebut
berbeda dengan basis data. Pada pengujian tekstur yang sama geser kanan 1 cm, tingkat
pengenalan mencapai 100% walaupun tekstur karung goni lebih banyak dibanding tekstur
jagung. Hal tersebut terjadi karena hasil ekstraksi ciri GLCM masukan berbeda dengan hasil
ekstraksi ciri GLCM basis data untuk tesktur ganda tertentu.
60
dilakukan, biji kacang yang berwarna lebih gelap tersebut berada di tempat yang
berbeda dari yang telah disimpan dalam basis data. Dengan demikian, pengenalan
tekstur mengalami hambatan dalam mengenali tekstur.
5. Citra tektur yang ditangkap kamera ArduCAM selalu memiliki sisi gelap pada bagian
kanan citra. Penulis sudah berusaha menambah intensitas cahaya pada bagian gelap ke
sisi bagian kanan kamera. Walaupun demikian, citra yang diambil masih memiliki sisi
gelap. Sisi gelap ditunjukkan pada Gambar 4.20. untuk citra grayscale tekstur jagung
dan tekstur kacang. Hal tersebut bisa terjadi akibat keterbatasan dari perangkat kamera
ArduCAM dalam menangkap citra.
(a) (b)
Gambar 4.20. Citra Grayscale Tekstur Jagung (a) dan Citra Grayscale Tekstur Kacang (b)
6. Pada saat pengujian, alat seringkali mengalami error saat pengambilan video
streaming (timeout dan cannot connect to the camera). Solusi yang dilakukan adalah
menekan tombol reset pada NodeMCU dan mencabut sumber tegangan dan
mengulang proses pengambilan video streaming.
61
BAB V
5.1. Kesimpulan
Berdasarkan hasil percobaan dan pengujian sistem pengenalan tekstur menggunakan
metode Gray Level Co-occurrence Matrix dapat disimpulkan bahwa:
1. Berhasil menghasilkan suatu alat computer vision yang mampu mengenali 10 tekstur
tunggal menggunakan metode Gray Level Co-occurrence Matrix dengan tingkat
pengenalan tanpa pengaruh RST mencapai 100%. Basis data yang digunakan adalah
10 citra tekstur pada posisi awal (tanpa pengaruh RST).
2. Penelitian pengujian variasi RST memperbaiki tingkat pengenalan variasi rotasi dan
variasi translasi dari penelitian sebelumnya. Tingkat pengenalan variasi rotasi
mencapai 85,83%. Tingkat pengenalan variasi skala mencapai 77,77%. Tingkat
pengenalan variasi translasi mencapai 97,34%.
3. Modul nirkabel dapat diterapkan untuk pengembangan alat ini dengan jarak antara
perangkat pengirim (NodeMCU) dan perangkat penerima (laptop) mencapai 80 m.
5.2. Saran
Saran yang diberikan untuk pengembangan sistem pengenalan tekstur adalah:
1. Pengembangan dapat dilakukan dengan menambahkan basis data untuk beberapa
posisi tiap teksturnya sehingga hasil ekstraksi ciri yang disimpan akan lebih banyak
dan mampu meningkatkan tingkat pengenalan (recognition rate).
2. Pengembangan sistem pengenalan menggunakan metode ekstraksi ciri berbeda dengan
harapan tingkat pengenalan dapat mendekati 100% pada pengujian variasi RST.
62
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR PUSTAKA
[1] Bhosle, V.V., Pawar, V.P., 2013, Texture Segmentation: Different Methods,
International Journal of Soft Computing and Engineering (IJSCE), vol. 3, issue 5, hal
69-74.
[2] Szeliski, R., 2010, Computer Vision: Algorithms and Applications, 1st Edition,
Springer, -.
[3] Adnyana, W.P., 2018, Pengenalan Tekstur dengan Statistical Texture Descriptor,
Tugas Akhir, Jurusan Teknik Elektro, FST, Universitas Sanata Dharma, Yogyakarta.
[4] Haralick, R.M., 1979, Statistical and Structural Approaches to Texture, Proceedings
of the IEEE, vol. 67, no. 5, hal 786-804.
[5] Raheja, J.L., Kumar, S., Chaudhary, A., 2013, Fabric defect detection based on GLCM
and Gabor filter: A comparison, Optik, vol. 124, hal 6469-6474.
[6] Honeycutt, C.E., Plotnick, R., 2008, Image analysis techniques and gray-level co-
occurrence matrices (GLCM) for calculating bioturbation indices and characterizing
biogenic sedimentary structures, Computers & Geosciences, vol. 34, hal 1461-1472.
[7] Goodman, P., 2019, Wireless Network vs Wired Network: Advantages and
Disadvantages | TurboFuture, https://turbofuture.com/computers/Wireless-Network-
vs-Wired-Network-Advantages-and-Disadvantages, diakses 20 Maret 2019.
[8] Kadir, A., Susanto, A., 2013, Teori dan Aplikasi Pengolahan Citra, Penerbit Andi,
Yogyakarta.
[9] Martinez, J.C., 2009, Texture Measuring by Means of Perceptually-Based Fineness
Functions, Iberian Conference on Pattern Recognition and Image Analysis, LNCS
5524, hal 265-272.
[10] -----, 2015, ArduCAM-M-2MP Camera Shield 2MP SPI Camera User Guide Rev 1.1,
ArduCAM
[11] -----, -----, The Internet of Things with ESP8266, http://esp8266.net, diakses 6
Desember 2018.
[12] -----, -----, GitHub – NodeMCU/NodeMCU-devkit-v1.0,
https://github.com/NodeMCU/NodeMCU-devkit-v1.0 , diakses 15 Desember 2018.
[13] -----, 2018, ESP8266EX Datasheet, Espressif Systems
[14] -----, 2015, ESP-12E WiFi Module Version 1.0, AI-Thinker
63
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
[15] Marques, O., 2011, Practical Image and Video Processing Using MATLAB, John
Wiley & Sons, New Jersey.
[16] Newsam, S.D., Kammath, C., 2004, Retrieval Using Texture Features in High
Resolution Multi-spectral Satellite Imagery, Proceedings of SPIE, vol. 5433, hal 21-
32
[17] Cha, Sung-Hyuk, 2007, Comprehensive Survey on Distance/Similarity Measures
between Probability Density Functions, International Journal of Mathematical Models
and Methods in Applied Sciences, vol. 1, issue 4, hal 300-307.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-1
LAMPIRAN 1
IMPLEMENTASI SISTEM PENGENALAN
L-2
jarak Kosinus yang paling minimal dan ditampilkan pada GUI. Tombol RESET digunakan
untuk menghapus data dan mengulang proses pengenalan tekstur dari awal.
Implementasi perangkat keras ditunjukkan pada Gambar L-2. Kondisi ini dibuat
berdasarkan perancangan hardware pada Gambar 3.13. Penyangga serta alas dibuat dengan
menyesuaikan variasi RST yang akan diuji. Pada penyangga terdapat tanda jarak yang
digunakan untuk variasi skala. Pada alas terdapat tanda posisi tekstur untuk variasi rotasi
dan translasi. Penambahan lampu penerangan pada sisi kanan dan kiri kamera dilakukan
untuk meminimalisasi pengaruh cahaya luar terhadap proses pengenalan.
ArduCAM+
NodeMCU Lampu
Penerangan
Penyangga
Tekstur
L-3
LAMPIRAN 2
ALUR PROSES PENGENALAN TEKSTUR DENGAN METODE
GLCM
Mulai
Masukan:
Citra RGB
Keluaran:
Citra grayscale
Ekstraksi ciri
Gray Level Co-occurrence
Matrix
Keluaran:
Hasil Ekstraksi Ciri
GLCM
A
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-4
Keluaran:
Hasil Pengenalan
berupa Teks
Selesai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-5
LAMPIRAN 3
LISTING PROGRAM
L-6
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Outputs from this function are returned to the command line.
function varargout = ipcamglcm_OutputFcn(hObject, eventdata,
handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of
MATLAB
% handles structure with handles and user data (see GUIDATA)
L-7
load dbxicglcm
if jenis==1
j1=double(dist(k,dbicglcm(:,1)));
j2=double(dist(k,dbicglcm(:,2)));
j3=double(dist(k,dbicglcm(:,3)));
j4=double(dist(k,dbicglcm(:,4)));
j5=double(dist(k,dbicglcm(:,5)));
j6=double(dist(k,dbicglcm(:,6)));
j7=double(dist(k,dbicglcm(:,7)));
j8=double(dist(k,dbicglcm(:,8)));
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-8
j9=double(dist(k,dbicglcm(:,9)));
j10=double(dist(k,dbicglcm(:,10)));
jar=[j1 j2 j3 j4 j5 j6 j7 j8 j9 j10];
jart={j1 j2 j3 j4 j5 j6 j7 j8 j9 j10 '-' '-' '-'};
dbteks={'GABAH','JAGUNG','KACANG','ANYAMAN BAMBU',...
'KARUNG
GONI','KESET','JERAMI','HANDUK','RUMPUT',...
'BEBATUAN'};
elseif jenis == 2
j11=double(dist(k,dbicglcm(:,11)));
j12=double(dist(k,dbicglcm(:,12)));
j13=double(dist(k,dbicglcm(:,13)));
jar=[j11 j12 j13];
jart={'-' '-' '-' '-' '-' '-' '-' '-' '-' '-' j11 j12
j13};
dbteks={'GONI+GABAH','GONI+JAGUNG','GONI+KACANG'};
end
set(handles.tabel_jarak,'Data',jart)
lokmin=find(jar==min(jar));
y=dbteks{lokmin};
set(handles.teks,'string',y);
break;
end
end
function [y,k]=tciri(x)
[G0,G45,G90,G135]=glcm256(x);
t1=G0.asm;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-9
t2=G0.kontras;
t3=G0.idm;
t4=G0.entropi;
t5=G0.korelasi;
t6=G45.asm;
t7=G45.kontras;
t8=G45.idm;
t9=G45.entropi;
t10=G45.korelasi;
t11=G90.asm;
t12=G90.kontras;
t13=G90.idm;
t14=G90.entropi;
t15=G90.korelasi;
t16=G135.asm;
t17=G135.kontras;
t18=G135.idm;
t19=G135.entropi;
t20=G135.korelasi;
y=[t1 t2 t3 t4 t5; t6 t7 t8 t9 t10;...
t11 t12 t13 t14 t15; t16 t17 t18 t19 t20];
k=[t1 t2 t3 t4 t5 t6 t7 t8 t9 t10...
t11 t12 t13 t14 t15 t16 t17 t18 t19 t20]';
%=======================
%Jarak Kosinus
function z=dist(x,y)
z=1-(sum(x.*y)/(sqrt(sum(x.^2))*sqrt(sum(y.^2))));
%=======================
L-10
% DBIPCAMGLCM('CALLBACK',hObject,eventData,handles,...) calls
the local
% function named CALLBACK in DBIPCAMGLCM.M with the given
input arguments.
%
% DBIPCAMGLCM('Property','Value',...) creates a new
DBIPCAMGLCM or raises the
% existing singleton*. Starting from the left, property
value pairs are
% applied to the GUI before dbipcamglcm_OpeningFcn gets
called. An
% unrecognized property name or invalid value makes property
application
% stop. All inputs are passed to dbipcamglcm_OpeningFcn via
varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows
only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
L-11
% --- Outputs from this function are returned to the command line.
function varargout = dbipcamglcm_OutputFcn(hObject, eventdata,
handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of
MATLAB
% handles structure with handles and user data (see GUIDATA)
L-12
if tk == 1
img1=gray;
tk1=tciri(gray)
elseif tk== 2
img2=gray;
tk2=tciri(gray)
elseif tk==3;
img3=gray;
tk3=tciri(gray)
elseif tk==4;
img4=gray;
tk4=tciri(gray)
elseif tk==5;
img5=gray;
tk5=tciri(gray)
elseif tk==6;
img6=gray;
tk6=tciri(gray)
elseif tk==7;
img7=gray;
tk7=tciri(gray)
elseif tk==8;
img8=gray;
tk8=tciri(gray)
elseif tk==9;
img9=gray;
tk9=tciri(gray)
elseif tk==10;
img10=gray;
tk10=tciri(gray)
elseif tk==11;
img11=gray;
tk11=tciri(gray)
elseif tk==12;
img12=gray;
tk12=tciri(gray)
elseif tk==13;
img13=gray;
tk13=tciri(gray)
end
dbtk=[tk1 tk2 tk3 tk4 tk5 tk6 tk7 tk8 tk9 tk10 tk11 tk12
tk13];
break;
end
end
L-13
tk=1;
axes(handles.axes2)
imshow(img1)
L-14
L-15
L-16
dbteks={'GABAH','JAGUNG','KACANG','ANYAMAN BAMBU','KARUNG
GONI',...
'KESET','JERAMI','HANDUK','RUMPUT','BEBATUAN','GONI+GABAH',...
'GONI+JAGUNG','GONI+KACANG'};
ciriteks={'asm0','kontras0','idm0','entropi0','korelasi0',...
'asm45','kontras45','idm45','entropi45','korelasi45',...
'asm90','kontras90','idm90','entropi90','korelasi90',...
'asm135','kontras135','idm135','entropi135','korelasi135'};
figure(1);
uitable('Data',dbtk,'ColumnName',dbteks,'RowName',ciriteks,...
'Units','Normalized','Position',[0,0,1,1])
function y=tciri(x)
[G0,G45,G90,G135]=glcm256(x);
t1=G0.asm;
t2=G0.kontras;
t3=G0.idm;
t4=G0.entropi;
t5=G0.korelasi;
t6=G45.asm;
t7=G45.kontras;
t8=G45.idm;
t9=G45.entropi;
t10=G45.korelasi;
t11=G90.asm;
t12=G90.kontras;
t13=G90.idm;
t14=G90.entropi;
t15=G90.korelasi;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-17
t16=G135.asm;
t17=G135.kontras;
t18=G135.idm;
t19=G135.entropi;
t20=G135.korelasi;
y=[t1 t2 t3 t4 t5 t6 t7 t8 t9 t10...
t11 t12 t13 t14 t15 t16 t17 t18 t19 t20]';
L-18
%___HITUNG ASM
asm0 = 0.0;
asm45 = 0.0;
asm90 = 0.0;
asm135 = 0.0;
for a=0 : 255
for b=0 : 255
asm0 = asm0 + (glcm0norm(a+1, b+1).^2);
asm45 = asm45 + (glcm45norm(a+1, b+1).^2);
asm90 = asm90 + (glcm90norm(a+1, b+1).^2);
asm135 = asm135 + (glcm135norm(a+1, b+1).^2);
end
end
%____HITUNG KONTRAS
kontras0 = 0.0;
kontras45 = 0.0;
kontras90 = 0.0;
kontras135 = 0.0;
for a=0 : 255
for b=0 : 255
kontras0 = kontras0 + glcm0norm(a+1,b+1)*(a-b).^2;
kontras45 = kontras45 + glcm45norm(a+1,b+1)*(a-b).^2;
kontras90 = kontras90 + glcm90norm(a+1,b+1)*(a-b).^2;
kontras135 = kontras135 + glcm135norm(a+1,b+1)*(a-b).^2;
end
end
%____HITUNG IDM
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-19
idm0 = 0.0;
idm45 = 0.0;
idm90 = 0.0;
idm135 = 0.0;
for a = 0 : 255
for b = 0 : 255
idm0 = idm0 + (glcm0norm(a+1, b+1) / (1+(a-b).^2));
idm45 = idm45 + (glcm45norm(a+1, b+1) / (1+(a-b).^2));
idm90 = idm90 + (glcm90norm(a+1, b+1) / (1+(a-b).^2));
idm135 = idm135 + (glcm135norm(a+1, b+1) / (1+(a-b).^2));
end
end
%_____HITUNG ENTROPI
entropi0=0.0;
entropi45=0.0;
entropi90=0.0;
entropi135=0.0;
for a = 0 : 255
for b = 0 : 255
if(glcm0norm(a+1,b+1) ~= 0)
entropi0 = entropi0 - (glcm0norm(a+1,b+1)) *
(log10(glcm0norm(a+1,b+1)));
end
if(glcm45norm(a+1,b+1) ~= 0)
entropi45 = entropi45 - (glcm45norm(a+1,b+1)) *
(log10(glcm45norm(a+1,b+1)));
end
if(glcm90norm(a+1,b+1) ~= 0)
entropi90 = entropi90 - (glcm90norm(a+1,b+1)) *
(log10(glcm90norm(a+1,b+1)));
end
if(glcm135norm(a+1,b+1) ~= 0)
entropi135 = entropi135 - (glcm135norm(a+1,b+1)) *
(log10(glcm135norm(a+1,b+1)));
end
end
end
%________HITUNG KOVARIANS
korelasi0 = 0.0;
px0 = 0;
py0 = 0;
stdevx0 = 0.0;
stdevy0 = 0.0;
korelasi45 = 0.0;
px45 = 0;
py45 = 0;
stdevx45 = 0.0;
stdevy45 = 0.0;
korelasi90 = 0.0;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-20
px90 = 0;
py90 = 0;
stdevx90 = 0.0;
stdevy90 = 0.0;
korelasi135 = 0.0;
px135 = 0;
py135 = 0;
stdevx135 = 0.0;
stdevy135 = 0.0;
% Hitung kovarians
for a=0 : 255
for b=0 : 255
px0 = px0 + (a+1) * glcm0norm (a+1, b+1);
py0 = py0 + (b+1) * glcm0norm (a+1, b+1);
px45 = px45 + (a+1) * glcm45norm (a+1, b+1);
py45 = py45 + (b+1) * glcm45norm (a+1, b+1);
px90 = px90 + (a+1) * glcm90norm (a+1, b+1);
py90 = py90 + (b+1) * glcm90norm (a+1, b+1);
px135 = px135 + (a+1) * glcm135norm (a+1, b+1);
py135 = py135 + (b+1) * glcm135norm (a+1, b+1);
end
end
% Hitung deviasi standar
for a=0 : 255
for b=0 : 255
stdevx0 = stdevx0 + (a+1-px0).^2 * glcm0norm(a+1, b+1);
stdevy0 = stdevy0 + (b+1-py0).^2 * glcm0norm(a+1, b+1);
stdevx45 = stdevx45 + (a+1-px45).^2 * glcm45norm(a+1,
b+1);
stdevy45 = stdevy45 + (b+1-py45).^2 * glcm45norm(a+1,
b+1);
stdevx90 = stdevx90 + (a+1-px90).^2 * glcm90norm(a+1,
b+1);
stdevy90 = stdevy90 + (b+1-py90).^2 * glcm90norm(a+1,
b+1);
stdevx135 = stdevx135 + (a+1-px135).^2 * glcm135norm(a+1,
b+1);
stdevy135 = stdevy135 + (b+1-py135).^2 * glcm135norm(a+1,
b+1);
end
end
% Hitung korelasi
for a = 0 : 255
for b = 0 : 255
korelasi0 = korelasi0 + ((a+1-px0)*(b+1-py0)* ...
glcm0norm (a+1, b+1)/(stdevx0*stdevy0));
korelasi45 = korelasi45 + ((a+1-px45)*(b+1-py45)* ...
glcm45norm (a+1, b+1)/(stdevx45 * stdevy45));
korelasi90 = korelasi90 + ((a+1-px90)*(b+1-py90)* ...
glcm90norm (a+1, b+1)/(stdevx90 * stdevy90));
korelasi135 = korelasi135 + ((a+1-px135)*(b+1-py135)* ...
glcm135norm (a+1, b+1)/(stdevx135 * stdevy135));
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-21
end
end
g0.asm = asm0;
g0.kontras = kontras0;
g0.idm = idm0;
g0.entropi = entropi0;
g0.korelasi = korelasi0;
g45.asm = asm45;
g45.kontras = kontras45;
g45.idm = idm45;
g45.entropi = entropi45;
g45.korelasi = korelasi45;
g90.asm = asm90;
g90.kontras = kontras90;
g90.idm = idm90;
g90.entropi = entropi90;
g90.korelasi = korelasi90;
g135.asm = asm135;
g135.kontras = kontras135;
g135.idm = idm135;
g135.entropi = entropi135;
g135.korelasi = korelasi135;
L-22
#include <SPI.h>
#include "memorysaver.h"
#if !(defined ESP8266 )
#error Please select the ArduCAM ESP8266 UNO board in the
Tools/Board
#endif
int resolution = 0;
// resolutions:
// 0 = 160x120
// 1 = 176x144
// 2 = 320x240
// 3 = 352x288
// 4 = 640x480
// 5 = 800x600
// 6 = 1024x768
// 7 = 1280x1024
// 8 = 1600x1200
ESP8266WebServer server(80);
////////////////////////////////////
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-23
// capture initialization //
////////////////////////////////////
void start_capture() {
myCAM.clear_fifo_flag();
myCAM.start_capture();
}
String getDropDown()
{
String webString = "";
webString += "<select name=\"rez\">\n";
webString += " <option value=\"0\" ";
if (resolution == 0)
webString += " selected=\"seleted\" ";
webString += ">160x120</option>\n";
L-24
return webString;
}
/////////////////////////////////////////////
// capture still image and send to client //
/////////////////////////////////////////////
void camCapture(ArduCAM myCAM) {
myCAM.CS_LOW();
myCAM.set_fifo_burst();
#if !(defined (ARDUCAM_SHIELD_V2) && defined (OV2640_CAM))
SPI.transfer(0xFF);
#endif
if (!client.connected()) return;
/*
String response = "HTTP/1.1 200 OK\r\n";
response += "Content-Type: image/jpeg\r\n";
response += "Content-Length: " + String(len) + "\r\n\r\n";
server.sendContent(response);
*/
while (len) {
size_t will_copy = (len < bufferSize) ? len : bufferSize;
SPI.transferBytes(&buffer[0], &buffer[0], will_copy);
if (!client.connected()) break;
client.write(&buffer[0], will_copy);
len -= will_copy;
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-25
myCAM.CS_HIGH();
}
/////////////////////////////
// stream video to client //
/////////////////////////////
void serverStream() {
WiFiClient client = server.client();
while (client.connected()) {
start_capture();
myCAM.CS_LOW();
myCAM.set_fifo_burst();
#if !(defined (ARDUCAM_SHIELD_V2) && defined (OV2640_CAM))
SPI.transfer(0xFF);
#endif
if (!client.connected()) break;
response = "--frame\r\n";
response += "Content-Type: image/jpeg\r\n\r\n";
server.sendContent(response);
while (len) {
size_t will_copy = (len < bufferSize) ? len : bufferSize;
SPI.transferBytes(&buffer[0], &buffer[0], will_copy);
if (!client.connected()) break;
client.write(&buffer[0], will_copy);
len -= will_copy;
}
myCAM.CS_HIGH();
if (!client.connected()) break;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-26
}
}
//////////////////////////////////////////////////////////////////
/////////////////
// used when form is submitted and at setup to set the camera
resolution //
//////////////////////////////////////////////////////////////////
/////////////////
void setCamResolution(int reso)
{
switch (reso)
{
case 0:
myCAM.OV2640_set_JPEG_size(OV2640_160x120);
resolution = 0;
break;
case 1:
myCAM.OV2640_set_JPEG_size(OV2640_176x144);
resolution = 1;
break;
case 2:
myCAM.OV2640_set_JPEG_size(OV2640_320x240);
resolution = 2;
break;
case 3:
myCAM.OV2640_set_JPEG_size(OV2640_352x288);
resolution = 3;
break;
case 4:
myCAM.OV2640_set_JPEG_size(OV2640_640x480);
resolution = 4;
break;
case 5:
myCAM.OV2640_set_JPEG_size(OV2640_800x600);
resolution = 5;
break;
case 6:
myCAM.OV2640_set_JPEG_size(OV2640_1024x768);
resolution = 6;
break;
case 7:
myCAM.OV2640_set_JPEG_size(OV2640_1280x1024);
resolution = 7;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-27
break;
case 8:
myCAM.OV2640_set_JPEG_size(OV2640_1600x1200);
resolution = 8;
break;
}
}
////////////////////////////////
// main setup function //
////////////////////////////////
void setup() {
delay(10);
uint8_t vid, pid;
uint8_t temp;
#if defined(__SAM3X8E__)
Wire1.begin();
#else
Wire.begin();
#endif
Serial.begin(115200);
Serial.println("ArduCAM Start!");
// initialize SPI:
SPI.begin();
SPI.setFrequency(4000000); //4MHz
L-28
setCamResolution(resolution);
myCAM.clear_fifo_flag();
Serial.println();
Serial.println();
Serial.print("Share AP: ");
Serial.println(AP_ssid);
Serial.print("The password is: ");
Serial.println(AP_password);
WiFi.mode(WIFI_AP);
WiFi.softAP(AP_ssid, AP_password);
Serial.println("");
Serial.println("AP ip");
Serial.println(WiFi.softAPIP());
// setup handlers
server.on("/stream", HTTP_GET, serverStream);
server.begin();
Serial.println("Server started");
/////////////////////////////
// Main loop function //
/////////////////////////////
void loop() {
server.handleClient();
}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-29
LAMPIRAN 4
Tabel L1. Data hasil pengujian posisi awal (rotasi 0°, posisi tengah, jarak 20cm)
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
L-30
L-31
Tabel L5. Data hasil pengujian variasi skala 100% (jarak 20 cm)
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L6. Data hasil pengujian variasi skala 125% (jarak 25 cm)
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-32
Tabel L7. Data hasil pengujian variasi skala 175% (jarak 30 cm)
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 0 3
Jagung 3
Kacang 0 3
Anyaman 0 3
Goni 0 3
Keset 2 1
Jerami 3
Handuk 3 0
Rumput 3 0
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
L-33
L-34
L-35
Tabel L13. Data hasil pengujian posisi awal dengan resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L14. Data hasil pengujian pengaruh variasi rotasi 20° resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 0 3
Goni 3 0
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3 0
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-36
Tabel L15. Data hasil pengujian pengaruh variasi rotasi 60° resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 0 3
Jagung 0 3
Kacang 3 0
Anyaman 0 3
Goni 0 3
Keset 3
Jerami 3 0
Handuk 3
Rumput 3 0
Bebatuan 3 0
Goni +
0 3
Gabah
Goni +
3
Jagung
Goni +
3 0
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L16. Data hasil pengujian pengaruh variasi rotasi 120° resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 0 3
Jagung 0 3
Kacang 3 0
Anyaman 0 3
Goni 3 0
Keset 3
Jerami 3 0
Handuk 3
Rumput 3 0
Bebatuan 3
Goni +
0 3
Gabah
Goni +
3
Jagung
Goni +
3 0
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-37
Tabel L17. Data hasil pengujian variasi skala 100% (jarak 20 cm) resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L18. Data hasil pengujian variasi skala 125% (jarak 25 cm) resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 1 2
Kacang 0 3
Anyaman 0 3
Goni 0 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-38
Tabel L19. Data hasil pengujian variasi skala 175% (jarak 30 cm) resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 0 3
Jagung 0 3
Kacang 0 3
Anyaman 0 3
Goni 0 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni + 2 1
Gabah
Goni + 3
Jagung
Goni + 3 0
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L20. Data hasil pengujian variasi translasi center resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-39
Tabel L21. Data hasil pengujian variasi translasi U 1 cm resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L22. Data hasil pengujian variasi translasi L 1 cm resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-40
Tabel L23. Data hasil pengujian variasi translasi D 1 cm resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 0 3
Goni 0 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L24. Data hasil pengujian variasi translasi R 1 cm resolusi 320 x 240
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 0 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3 0
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-41
Tabel L25. Data hasil pengujian posisi awal res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L26. Data hasil pengujian variasi rotasi 20° res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-42
Tabel L27. Data hasil pengujian variasi rotasi 60° res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 0 3
Goni 0 3
Keset 3
Jerami 3 0
Handuk 3
Rumput 3
Bebatuan 2 1
Goni +
0 3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L28. Data hasil pengujian variasi rotasi 120° res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 0 3
Goni 3
Keset 3
Jerami 3 0
Handuk 3
Rumput 3
Bebatuan 3
Goni +
0 3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-43
Tabel L29. Data hasil pengujian skala 100% res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L30. Data hasil pengujian skala 125% res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 0 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-44
Tabel L31. Data hasil pengujian skala 175% res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 0 3
Jagung 0 3
Kacang 3
Anyaman 3
Goni 3 0
Keset 0 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni + 0 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L32. Data hasil pengujian center res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-45
Tabel L33. Data hasil pengujian variasi translasi U 1 cm res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L34. Data hasil pengujian variasi translasi L 1 cm res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3 0
Goni + 0 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-46
Tabel L35. Data hasil pengujian variasi translasi D 1 cm res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 1 2
Goni +
3
Gabah
Goni +
3
Jagung
Goni +
3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
Tabel L36. Data hasil pengujian variasi translasi R 1 cm res320x240 & normalisasi GLCM
Out Goni + Goni + Goni +
Gabah Jagung Kacang Anyaman Goni Keset Jerami Handuk Rumput Bebatuan
In Gabah Jagung Kacang
Gabah 3
Jagung 3
Kacang 3
Anyaman 3
Goni 3
Keset 3
Jerami 3
Handuk 3
Rumput 3
Bebatuan 3
Goni + 3
Gabah
Goni + 3
Jagung
Goni + 3
Kacang
Ket : Angka 3 : Tekstur yang dikenali sebanyak 3 kali dalam 3 kali pengujian
Angka 2 : Tekstur yang dikenali sebanyak 2 kali dalam 3 kali pengujian
Angka 1 : Tekstur yang dikenali sebanyak 1 kali dalam 3 kali pengujian
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L-47
LAMPIRAN 5
L-48
Kuat Sinyal
(Signal Strength) -45 -55 -62 -70 -72 -77 -71 -74 -
( dalam dBm)
Tingkat
100% 100% 100% 50% 100% 100% 100% 100% 100%
Pengenalan
L-49
L-42
LAMPIRAN 6
L-43