Top Banner
i TUGAS AKHIR PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN EKSTRAKSI CIRI KODE FREEMAN Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Disusun oleh : STEFHANI LESTARI RUMISSING NIM : 145114005 PROGRAM STUDI JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2018 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
107

PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

Jan 28, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

i

TUGAS AKHIR

PENGENALAN ALAT-ALAT STASIONERI

MENGGUNAKAN EKSTRAKSI CIRI

KODE FREEMAN

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Disusun oleh :

STEFHANI LESTARI RUMISSING

NIM : 145114005

PROGRAM STUDI JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

ii

FINAL PROJECT

STATIONERY EQUIPMENT RECOGNITION USING

FREEMAN CODE FEATURE EXTRACTION

Presented as Fullfillment of the Requirements

To Obtain the Sarjana Teknik Degree

Departement of Electrical Engineering

Constructed By :

STEFHANI LESTARI RUMISSING

NIM : 145114005

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

iii

HALAMAN PERSETUJUAN

TUGAS AKHIR

PENGENALAN ALAT-ALAT STASIONERI

MENGGUNAKAN

EKSTRAKSI CIRI KODE FREEMAN

(STATIONERY EQUIPMENT RECOGNITION USING

FREEMAN CODE

FEATURE EXTRACTION)

Disusun oleh :

STEFHANI LESTARI RUMISSING

NIM : 145114005

Telah disetujui oleh :

Pembimbing

Dr. Linggo Sumarno Tanggal :

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

iv

HALAMAN PENGESAHAN

TUGAS AKHIR

PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN

EKSTRAKSI CIRI KODE FREEMAN

(STATIONERY EQUIPMENT RECOGNITION USING FREEMAN CODE

FEATURE EXTRACTION)

Disusun oleh :

STEFHANI LESTARI RUMISSING

NIM : 145114005

Telah dipertahankan di depan Panitia Penguji

Pada tanggal 03 Juli 2018

dan dinyatakan memenuhi syarat

Susunan Tim Penguji :

Nama Lengkap Tanda Tangan

Ketua : Augustinus Bayu Primawan, D.Tech, Sc. ……………………………

Sekretaris : Dr. Linggo Sumarno ……………………………

Anggota : Wiwien Widyastuti, S.T.,M.T. ……………………………

Yogyakarta,__ Juli 2018

Fakultas Sains dan Teknologi

Universitas Sanata Dharma

Dekan,

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

v

LEMBAR PERNYATAAN KEASLIAN KARYA

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

sebagaimana layaknya karya ilmiah.

Yogyakarta,

Penulis

Stefhani Lestari Rumissing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

vi

HALAMAN PERSEMBAHAN

MOTTO :

Just Be Brave, girls!!

Presented To…

Tuhan Yesus dan Bunda Maria

Mama dan Papa

Emanuel Febriano Dwi S.

All my friend

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

vii

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI

KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Stefhani Lestari Rumissing

Nomor Mahasiswa : 145114005

Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakan Universitas

Sanata Dharma karya ilmiah saya yang berjudul :

PENGENALAN ALAT-ALAT STASIONERI

MENGGUNAKAN EKSTRAKSI CIRI KODE FREEMAN

Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk

media lain, mengelolahnya 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.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta, 06 Juni 2018

Stefhani Lestari Rumissing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

viii

INTISARI

Hingga saat ini perkembangan teknologi robot terus berkembang dengan begitu

pesat. Robot-robot yang diciptakan sebagian besar digunakan untuk membantu pekerjaan

manusia. Salah satu robot yang pernah diciptakan oleh manusia adalah robot vision, robot

vision menggunakan webcam untuk melihat dan mendeteksi objek disekitarnya. Tentunya

robot vision ini sangat membantu pekerjaan manusia dalam memilah objek. Oleh karena itu

pada tugas akhir ini akan dibuat suatu sistem yang menyerupai robot vision, yaitu

pengenalan alat-alat stasioneri.

Pada tugas akhir ini, sistem pengenalan alat-alat stasioneri dibuat dengan

menggunakan webcam dan laptop. Secara garis besar proses kerja dari sistem ini ialah

preprocessing, ekstraksi ciri kode freeman, fungsi jarak Canberra dan kemudian program

akan menampilkan hasil pengenalan ke layar monitor berupa huruf atau text.

Sistem pengenalan alat-alat stasioneri berhasil dibuat dan berjalan dengan baik. Hasil

pengujian nilai koefisien ekstraksi ciri dari kode freeman terkecil dengan tingkat pengenalan

terbaik yaitu sejumlah 64 dengan persentase tingkat pengenalan mencapai 100%.

Kata kunci : Webcam, preprocessing, kode Freeman, jarak Canberra.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

ix

ABSTRACT

Until now, the development of robot technology continues to grow so rapidly. Robot

are created mostly use to help human’s work. One of robot which is ever created by human

is a vision robot. Vision robot is very helpful for human’s work in sorting the object.

Therefore, in this final project will be made a system that resembles a vision robot. The

system is recognition of stasionary tools.

In this final project, the system of stasionary tool made by using a webcam and

laptop. The outline of work process from this system is preprocessing, extraction of freeman

code feature and Canberra distance. Then the program will be display the results of

recogniotion to the monitor screen in the formof letter or text.

Recognition of tool stasionary system is created successfully and running well.

Testing result show that the smallest value of Freeman code with the best recognition level

is 64 with percentage of 100%.

Keyword : webcam, preprocessing, Freeman code, Canberra distance

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

x

KATA PENGANTAR

Puji dan Syukur Penulis panjatkan kepada Tuhan Yesus dan Bunda Maria atas

karunia dan berkat-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini

dengan baik. Laporan ini disusun untuk memenuhi syarat untuk memperoleh gelar sarjana.

Selama pembuatan tugas akhir ini, penulis menyadari adanya bantuan dan dukungan

dari berbagai pihak. Oleh karena itu, penulis mengucapkan terima kasih kepada :

1. Tuhan Yesus dan Bunda Maria yang kasih-Nya tidak pernah berkesudahan.

2. Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma.

3. Ketua Program Studi Teknik Elektro Universitas Sanat Dharma.

4. Dr. Linggo Sumarno selaku dosen pembimbing yang begitu sabar dan tulus hari

memberika bimbingan, kritik, saran, serta motivasi dalam penulisan skripsi ini.

5. Ibu Wiwien Widyastuti, ST., M.T. dan Bapak Agustinus Bayu Primawan S.T.,

M.Eng. sebagai dosen penguji yang telah memberikan masukan , bimbingan, dan

saran dalam merevisi skrpsi ini.

6. Papa dan Mama yang tidak pernah menyerah dalam mendukung, menasehati dan

mendoakanku.

7. Adik-adikku serta keluarga besar yang selalu mendoakan dari Sulawesi.

8. Emanuel Febriano Dwi Saputra yang selalu ada mendukung, menemani dan

memberi perhatian selama penulisan tugas akhir ini.

9. Adikku Maria Estrella yang selalu mendukung dan menjadi keluarga terdekat

selama di Jogja.

10. Teman-teman Teknik Elektro khususnya angkatan 2014.

11. Seluruh Dosen dan Laboran Program Studi Teknik Elektro, Fakultas Sains dan

Teknologi Universitas Sanata Dharma yang telah membantu dan memberikan

ilmu selama belajar di Teknik Elektro.

12. Seluruh Staff Fakultas Sains dan Teknologi Universitas Sanata Dharma atas

bantuan dalam melayani mahasiswa.

13. Semua pihak yang tidak dapat disebutkan satu persatu atas semua dukungan yang

telah diberikan dalam penyelesaian skripsi ini.

Penulis menyadari bahwa dalam penyusunan tugas akhir ini jauh dari kesempurnaan.

Oleh karena itu, penulis mengharapkan masukan, kritik dan saran yang membangun agar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xi

skripsi ini menjadi lebih baik. Dan semoga skripsi ini dapat bermanfaat sebagaimana

mestinya. Trima Kasih

Yogyakarta, 06 Juni 2018

Stefhani Lestari Rumissing

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xii

DAFTAR ISI

Halaman Sampul (Bahasa Indonesia) ..................................................................................... i

Halaman Sampul (Bahasa Inggris) ........................................................................................ ii

Halaman Persetujuan ............................................................................................................ iii

Halaman Pengesahan ............................................................................................................ iv

Halaman Keaslian Karya ....................................................................................................... v

Halaman Persembahan ......................................................................................................... vi

Lembar Persetujuan Publikasi Karya .................................................................................. vii

Intisari ................................................................................................................................. viii

Abstract ................................................................................................................................. ix

Kata Pengantar ....................................................................................................................... x

Daftar Isi .............................................................................................................................. xii

Daftar Gambar ..................................................................................................................... xv

Daftar Tabel ....................................................................................................................... xvii

BAB I PENDAHULUAN ..................................................................................................... 1

1.1.Latar Belakang ............................................................................................................. 1

1.2 Tujuan dan Manfaat Penelitian .................................................................................... 2

1.3 Batasan Masalah .......................................................................................................... 2

1.4. Metode Peneliatian ..................................................................................................... 3

BAB II DASAR TEORI ........................................................................................................ 5

2.1.Alat-alat Stasioneri ...................................................................................................... 5

2.2. Webcam Logitech C270 ............................................................................................ 6

2.3 Pengolahan Citra Digital ............................................................................................ 6

2.3.1. Pegertian Citra Digital ....................................................................................... 6

2.3.2. Citra RGB .......................................................................................................... 7

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xiii

2.3.3. Citra Biner ......................................................................................................... 8

2.3.4. Mengkonversi Citra RGB ke Biner ................................................................... 9

2.4. Ektraksi Ciri ............................................................................................................. 11

2.4.1. Resizing ........................................................................................................... 11

2.4.2. Kontur Moore ................................................................................................. 11

2.4.3 Kode Freeman. ................................................................................................. 14

2.5. Data Referensi ......................................................................................................... 17

2.6. Jarak ......................................................................................................................... 17

BAB III PERANCANGAN ................................................................................................. 19

3.1. Perancangan Sistem Pengenalan Alat-alat Stasioneri .............................................. 19

3.2. Perancangan Hardware ........................................................................................... 20

3.3. Sistem Pengenalan Citra Alat-alat Stasioneri .......................................................... 20

3.3.1. Pengambilan Citra Alat-alat Stasioneri .......................................................... 21

3.3.2. Tahap Preprocessing ...................................................................................... 22

3.3.3. Tahap Ekstraksi Ciri ....................................................................................... 23

3.3.4. Proses Perhitungan Fungsi Jarak .................................................................... 26

3.3.5. Tahap Penentuan Keluaran ............................................................................. 26

3.4. Pembuatan Data Referensi....................................................................................... 27

3.5 Perancangan Tampilan GUI Matlab ........................................................................ 28

3.6. Pengujian Citra Alat-alat Stasioneri ........................................................................ 29

3.6.2. Pengujian Secara Tidak Langsung ................................................................. 30

3.6.2. Pengujian Secara Langsung ............................................................................ 30

BAB IV PERANCANGAN................................................................................................ 32

4.1. Implementasi Program ............................................................................................. 32

4.1.1. Tombol Camera On ........................................................................................ 32

4.1.2. Tombol Capture ............................................................................................. 33

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xiv

4.1.3. Popupmenu ..................................................................................................... 33

4.1.4. Tombol Process .............................................................................................. 34

4.1.4.1. Program Pembanding Data Referensi ................................................... 34

4.1.4.2. Program Konversi RGB ke Biner .......................................................... 35

4.1.4.3. Program Operasi Dilasi ......................................................................... 37

4.1.4.4. Program Resizing ................................................................................... 38

4.1.4.5. Ekstraksi Ciri ......................................................................................... 38

4.1.4.6. Program Pembanding Jarak Canberra ................................................... 39

4.1.4.7. Program Penentuan Keluaran ................................................................ 39

4.1.5 . Tombol Reset ................................................................................................ 40

4.1.6. Tombol End ................................................................................................... 41

4.2. Pengujian Data Tidak Langsung ........................................................................... 41

4.3. Pengujian Data Secara Langsung .......................................................................... 44

4.4. Analisis Hasil Data Pengujian Tidak Langsung .................................................... 46

4.5. Analisis Hasil Data Pengujian Secara Langsung ................................................... 47

4.6. Keterbatasan Metodologi ....................................................................................... 55

BAB V KESIMPULAN DAN SARAN .............................................................................. 56

5.1. Kesimpulan ........................................................................................................... 56

5.2. Saran .................................................................................................................... 56

DAFTAR PUSTAKA .......................................................................................................... 57

LAMPIRAN ................................................................................................................ L1-L29

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xv

DAFTAR GAMBAR

Gambar 2.1. Alat-alat Stasioneri ........................................................................................... 5

Gambar 2.2. Logitech C270 .................................................................................................. 6

Gambar 2.3. Koodinat Citra Digital ...................................................................................... 7

Gambar 2.4. Warna RGB dalam bentuk kubus ..................................................................... 8

Gambar 2.5. Citra Biner ........................................................................................................ 9

Gambar 2.6. Citra Grayscale ............................................................................................... 10

Gambar 2.7. Proses Pelacakan Kontur Moore ..................................................................... 13

Gambar 2.8. Skema 8 arah Mata Angin Kode Freeman ...................................................... 15

Gambar 2.9. Kontur Moore dengan Koordinatnya .............................................................. 16

Gambar 3.1. Gambaran Umum Perancangan Sistem .......................................................... 19

Gambar 3.2. Perancangan Hardware ................................................................................... 20

Gambar 3.3. Blok Diagram Sistem Pengenalan Alat-alat stasioneri ................................... 21

Gambar 3.4. Diagram Alir Pengambilan Citra .................................................................... 21

Gambar 3.5. Diagram Air Tahap Preprocessing ................................................................ 22

Gambar 3.6. Diagram Alir Tahap Ektraksi Ciri .................................................................. 23

Gambar 3.7. Diagram Alir Deteksi Kontur Moore .............................................................. 24

Gambar 3.8. Diagram Alir Kode Freeman .......................................................................... 25

Gambar 3.9. Diagram Alir Fungsi Jarak Canberra ............................................................. 26

Gambar 3.10 Diagram Alir Penentuan Keluaran................................................................. 27

Gambar 3.11. Diagram Alir Pengambilan Data Referensi .................................................. 28

Gambar 3.12. Perancangan GUI .......................................................................................... 29

Gambar 4.1. Program Kamera Aktif ................................................................................... 31

Gambar 4.2. Program Ambil Gambar ................................................................................. 32

Gambar 4.3. Program Popupmenu ...................................................................................... 33

Gambar 4.4. Program Basis Data ........................................................................................ 34

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xvi

Gambar 4.5. Program Konversi Citra RGB ke Biner .......................................................... 35

Gambar 4.6. Konversi Citra RGB ke Biner ......................................................................... 36

Gambar 4.7. Ukuran Elemen Penstruktur ............................................................................ 37

Gambar 4.8. Program Operasi Dilasi .................................................................................. 37

Gambar 4.9. Program Resizing ............................................................................................ 38

Gambar 4.10. Program Ekstraksi Ciri ................................................................................. 40

Gambar 4.11. Program Pembanding Jarak Canberra ......................................................... 40

Gambar 4.12. Program Program Penentuan Keluaran ........................................................ 41

Gambar 4.13. Program Tombol Reset ................................................................................. 42

Gambar 4.14. Program Tombol End ................................................................................... 42

Gambar 4.15. Tampilan GUI Pengujian Tidak Langsung ................................................... 43

Gambar 4.16. Contoh Ketika GUI Dijalankan .................................................................... 44

Gambar 4.17. Tampilan GUI Pengujian Langsung ............................................................. 45

Gambar 4.18. Contoh Ketika GUI Dijalankan .................................................................... 46

Gambar 4.19. Kondisi Pengambilan Data ........................................................................... 46

Gambar 4.20. Posisi Translasi yang dapat Dikenali ............................................................ 52

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

xvii

DAFTAR TABEL

Tabel 2.1. Hasil Deteksi Kontur Moore ............................................................................. 14

Tabel 2.2. Indeks dan Kode Rantai Dua Piksel yang Bertetangga ...................................... 16

Tabel 3.1. Keterangan GUI ................................................................................................. 29

Tabel 4.1. Pengaruh Variasi Resizing terhadap Tingkat Pengenalan .................................. 48

Tabel 4.2. Hasil Pengujian Variasi Resizing 10% ............................................................... 50

Tabel 4.3. Hasil Pengujian Variasi Resizing 5% ................................................................. 50

Tabel 4.4. Pengaruh Variasi Resizing Terhadap Tingkat Pengenalan ................................. 51

Tabel 4.5. Pengaruh Variasi Translasi Terhadap Tingkat Pengenalan ................................ 51

Tabel 4.6. Pengaruh Variasi Rotasi ..................................................................................... 53

Tabel 4.7. Pengaruh Variasi Skala ..................................................................................... 54

Tabel 4.8. Rerata Pengaruh Variasi Translasi, Rotasi dan Skala ........................................ 55

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Mata merupakan salah satu penting pada tubuh manusia. Mata atau indera

penglihatan manusia memiliki kemampuan untuk mengenali suatu objek atau bentuk yang

memiliki kemiripan sangat sempurna sekalipun. Manusia akan mengumpulkan benda atau

objek yang terekam oleh lensa mata sesuai dengan kategori jenis yang telah ditentukan oleh

manusia sendiri [1].

Seiring dengan semakin berkembangnya teknologi khususnya pada bidang software,

manusia membuat terobosan baru dalam membuat sebuah aplikasi yang digunakan untuk

mengenali bentuk suatu benda. Sama seperti mata manusia yang bisa membedakan bentuk-

bentuk dari setiap objek yang ditangkap oleh indera penglihatan. Penelitian tentang

pembuatan software pengenalan bentuk atau objek seperti angka, tanda tangan seseorang,

tulisan/abjad, sidik jari bahkan wajah manusia sekalipun telah banyak dilakukan dengan

mencoba berbagai metode. Pangaplikasian software bisa dilakukan pada robot yang

menyerupai manusia yang dapat mengenali atau mengidentisikasi objek yang ada

disekitarnya contohnya pada robot vision. Sehingga dapat membantu manusia dalam

mengambil peralatan.

Pada penelitian ini, peneliti ingin mengembangkan penelitian sebelumnya tentang

pengenalan objek khususnya alat-alat stasioneri. Penelitian yang pernah dilakukan terhadap

pengenalan alat-alat stasioneri dilakukan oleh Febriyanto[1] dimana penelitian tersebut

menggunakan ekstraksi ciri Discrete Sine Transform (DST). Pada penelitian tersebut

menggunakan nilai koefisien DST sejumlah 171 koefisien. Berdasarkan penelitian yang

dilakukan oleh Febriyanto semakin besar koefisien yang digunakan, maka semakin besar

pula nilai fungsi jarak antara citra alat stasioneri satu dengan citra lainnya sehingga makin

mempermudah dalam membedakan citra alat stasioneri yang satu dengan yang lain.

Sehingga disarankan menggunakan ekstraksi ciri yang berbeda agar dapat membuat jumlah

koefisien yang dipakai menjadi lebih sedikit.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

2

Ekstraksi ciri kode Freeman dapat menjadi jawaban dari permasalah tersebut.

Penelitian yang pernah dilakukan dengan ekstraksi ciri kode Freeman dilakukan oleh

Nuryuliani dkk[2] yaitu pengenalan karakter tulisan tangan dimana kode Freeman dapat

mempermudah analisis pengenalan karakter tulisan sehingga mudah diidentifikasi. Selain

itu penelitian lain menggunakan ektraksi ciri kode rantai diakukan oleh Ezy Claudia Nivsky

dkk[3] yaitu pencocokan citra daun telinga berbasis tekstur dan bentuk yang mana pada

penelitian tersebut menggunakan fungsi jarak Canberra, dari hasil penelitian tersebut dapat

dibuktikan bahwa aplikasi biometrika tersebut berfungsi secara optimal dengan persentasi

keberhasilan 100%. Sehingga pada penelitian ini peneliti juga menggunakan fungsi jarak

tersebut selain karena fungsi jarak Canberra digunakan untuk mengukur tingkat kemiripan

dua buah vektor juga fungsi jarak ini sangat peka terhadap sedikit perubahan dengan kedua

koordinat yang mendekati nol.

Pada penelitian ini, peneliti membuat sistem pengenalan alat-alat stasioneri seperti

ballpoint, tipe-x, paper klip, cutter, gunting, stabilo, steples, buku kecil, dan pelubang kertas.

Secara garis besar tahapan pengenalan citra diawali dengan mengambil data berupa gambar

citra dari alat stasioneri menggunakan webcam. Data tersebut kemudian akan diproses

melalui tahap preprocessing dan ekstraksi ciri. Pada tahap ekstraksi ciri diawali dengan

deteksi kontur menggunakan kontur Moore kemudian kode Freeman. Kemudian dengan

menggunakan jarak Canberra akan dicari jarak minimum antara citra pada basis data dengan

citra hasil ekstraksi ciri untuk diperoleh hasil keluaran berupa teks yang akan ditampilkan

pada layer monitor.

1.2 Tujuan dan Manfaat Penelitian

Tujuan dari penulisan penelitian tugas akhir adalah untuk memperbaiki sistem

pengenalan pola bentuk dari alat stasioneri dan memperkecil jumlah koefisien yang

digunakan pada aplikasi pengenalan alat stasioneri menggunakan ekstraksi ciri Freeman.

Manfaat dari penelitian adalah sebagai pengembangan aplikasi robot vision untuk

mengenali alat-alat stasioneri seperti ballpoint, tipe-x, paper klip, cutter, gunting, stabilo,

steples, buku kecil, dan pelubang kertas.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

3

1.3 Batasan Masalah

Sistem pengenalan alat-alat stasioneri menggunakan metode ekstraksi ciri Freeman

ini terdiri dari perangkat keras (Hardware) dan perangkat lunak (Software). Perangkat keras

terdiri dari webcam dan laptop. Perangkat lunak yang digunakan adalah Matlab. Matlab ini

akan mengatur seluruh proses pengolahan yang di-capture oleh webcam.

Pada perancangan sistem otomatisasi ini, peneliti memfokuskan pada pembuatan

perangkat lunak komputer untuk pengenalan bentuk dari alat-alat stasioneri. Peneliti

menetapkan batasan masalah dalam penelitian ini, antara lain sebagai berikut :

a. Objek yang dikenali adalah alat-alat stasioneri seperti ballpoint, tipe-x, paper clip,

cutter, gunting, stabilo, steples, buku kecil (note), dan pelubang kertas.

b. Warna background yang digunakan adalah berwarna hitam.

c. Menggunakan ekstraksi ciri kode rantai Freeman.

d. Pengambilan citra dengan menggunakan webcam merk Logitech C270h.

e. Tinggi atau jarak pengambilan gambar 48 cm.

f. Keluaran berupa teks pada layar monitor.

1.4 Metode Penelitian

Adapun metode penelitian pada pengerjaan tugas akhir adalah :

a. Peneliti mencari dan mengumpulkan referensi seperti jurnal-jurnal ilmiah, buku-

buku, dan website tentang pengenalan suatu objek, pemorgraman Matlab, image

processing, dan kode rantai Freeman.

b. Pembuatan Software

Pembuatan software pada penelitian ini diawali dengan membuat GUI pada

MATLAB kemudian medesain tampilan interface dari pengenalan alat stasioneri.

Langkah selanjutnya adalah membuat program untuk proses preprocessing,

ekstraksi ciri dan basis data. Sistem otomatisasi akan bekerja jika user atau

pengguna menekan tombol “Camera On” yang ada pada tampilan visual yang

tersedia dalam software. Sistem akan mengolah perintah yang diterima hingga

pengguna menekan tombol “Capture”. Setelah itu, penggunakan memberikan

perintah untuk memulai proses pengolahan gambar dari alat-alat stasioneri .

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

4

Kemudian hasil keluaran pada layar komputer akan berupa teks dari nama masing-

masing alat stasioneri

c. Pembuatan Basis Data

Pembuatan basis data diawali dengan mengambil data berupa citra dari alat-

alat stasioneri. Kemudian data tersebut diproses pada tahap preprocessing yaitu

mengkonversi citra RGB ke citra biner. Hasil dari tahap preprocessing akan

menjadi masukan pada tahap ekstraksi ciri. Tahap ekstraksi ciri diawali dengan

operasi deteksi kontur menggunakan kontur Moore. Selanjutnya, mencari kode

rantai menggunakan kode Freeman. Tahap berikutnya adalah resizing, dimana

kode rantai akan divariasikan dengan cara mengurangi jumlah piksel sebanyak

90%, 80%, 70%, 60%, 50%,40%,30%,20%, 10% dan 5 %. Hasil dari ekstraksi ciri

disimpan dalam folder dan digunakan sebagai acuan dalam pengenalan alat-alat

stasioneri. Adapun banyaknya data yang disimpan pada basis data yaitu 90 data (

9 alat stasioneri x 10 variasi jumlah kode rantai). Jarak antara webcam dengan alat

stasioneri adalah 48 cm.

d. Pengambilan data

Penelitian ini menggunakan 10 variasi jumlah kode rantai dan 9 alat

stasioneri. 10 variasi kode rantai yang digunakan adalah 90%, 80%, 70%, 60%,

50%,40%,30%,20%, 10% dan 5 % . Masing-masing data kemudian ditambahkan

dan didapatkan data sebanyak 90 data pada penelitian ini. Pengambilan data dibagi

dalam dua keadaan yaitu pengujian secara tidak langsung dan pengujian secara

langsung.

e. Analisis dan penyimpulan

Analisis data yang dilakukan dengan mengamati pengaruh panjang kode

Freeman dalam mengenali suatu objek, khususnya dalam pengenalan alat-alat

stasioneri dengan melihat jumlah koefisien ekstraksi ciri terkecil yang digunakan.

Penyimpulan dilakukan dengan melihat pengaruh kinerja sistem dengan

menggunakan ekstraksi ciri kode Freeman dalam pengenalan objek dan variasi

jumlah kode kode Freeman.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

5

BAB II

DASAR TEORI

2.1 Alat-alat Stationeri

Menurut Kamus Besar Bahasa Indonesia arti dari kata stasioneri adalah alat-alat

tulis dan peralatan kerja [4]. Contoh alat alat stationeri meliputi peralatan tulis menulis (

ballpoint, penghapus, pensil, penggaris, dan lainnya), alat tulis menulis kantor ( stabilo,

gunting, kertas hvs, pelubang kertas, note (buku catatan) dan lainnya, dan juga souvenir).

Gambar stasioneri yang akan digunakan dalam penelitian dapat dilihat pada Gambar 2.1.

(a) (b) (c) (d) (e)

(f) (g) (h) (i)

Gambar 2.1. Alat-alat stasioneri (a) note (b) pelubang kertas (c) steples (d) stabilo (e)

ballpoint (f) cutter (g) tipe-x (h) paper clip (i) gunting

Alat-alat stasioneri diatas sama dengan peralatan yang digunakan pada penelitian

sebelumnya oleh Febriyanto [1]. Peneliti menggunakan alat yang sama agar bisa melihat

pengaruh kode rantai Freeman dalam mengenali suatu alat-alat stasioneri.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

6

2.2 Webcam Logitech C270

Webcam atau web camera merupakan camera yang biasanya digunakan untuk

melakukan panggilan video melalui computer dengan cara dihubungkan pada port USB.

Webcam terdiri dari lensa sederhana, cover, dan kabel yang digunakan untuk

menghubungkannya dengan computer. Penggunaan webcam sangat sederhana dengan

menginstall software yang mendukung webcam pada computer, webcam sudah dapat

digunakan untuk melakukan pengambilan gambar/citra. Webcam Logitech C270 memiiliki

resolusi 1280 X 720 piksel dan kualitas gambar yang dihasilkan 3 Megapiksel.

Gambar 2.2 Logitech C270 [5].

2.3 Pengolahan Citra Digital

2.3.1 Pengertian Citra Digital

Citra (image) merupakan gambar dua dimensi yang dihasilkan dari tangkapan alat-

alat optik, misalnya pada mata manusia, kamera, scanner, dan sebagainya. Citra digital

diambil dari pendekatan berdasarkan sampling yang merepresentasikan besar kecilnya

ukuran dari piksel pada citra. Bila dilihat dari sudut pandang sistematis, citra merupakan

fungsi continue dari intensitas cahaya pada bidang dua dimensi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

7

Citra digital merupakan sebuah larik (array) yang berisikan nilai-nilai yang real

maupun komplek yang direpresentasikan dalam deretan bit tertentu[6]. Posisi koordinat

citra digital dapat dilihat pada Gambar 2.3.

Gambar 2.3. Koordinat Citra Digital [7]

Keterangan :

M = Banyak piksel per baris (panjang)

N = Banyak piksel per kolon (lebar)

Citra digital tersusun dalam bentuk grid. Setiap kotak yang terbentuk disebut piksel

dan mempunyai titik koordinat (x,y). Sumbu x (horizontal) merepresentasikan kolom

(column) , sedangkan sumbu y (vertical) merepresentasikan baris (row, line). Setiap piksel

memiliki nilai yang menunjukkan intensitas keabuan pada piksel tersebut.

f(x,y) = [

f(0,0) f(0,1) ⋯ f(0, N - 1)

f(1,0) f(1,1) ⋯ f(1, N - 1) ⋮

f(M - 1,0)⋮

f(M - 1,1) ⋮

⋯ f(M - 1, N - 1)

] (2.1)

Nilai pada posisi (x,y) disebut dengan picture elements atau piksel pada citra digital.

Kumpulan piksel tersebut yang menjadi penyusun suatu objek.

2.3.2 Citra RGB

Citra RGB merupakan citra berwarna yang mengandung informasi warna. Setiap

piksel pada citra RGB merupakan gabungan dari variasi nilai intensitas tiga warna dasar

yaitu merah R (red), hijau G (green), dan biru B (blue). Tiga warna dasar pada umumunya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

8

dikodekan dengan 8 bit , dengan kata lain total bit dari ketiga warna dasar tersebut adalah 3

x 8 = 24 bit (tiga byte). Sehingga variasi warna maksimum sebanyak 224 = 16.777.216 variasi

warna dalam satu citra [8].

Secara umum, citra berwarna dapat dipresentasikan dalam bentuk kubus tiga dimensi,

dengan tiga warna dasar atau utama yaitu merah, hijau dan biru berada pada ujung sumbu

kubus. Sedangkan sudut-sudut kubus selain pada sudut utama, menunjukkan nilai warna

sekunder yang dihasilkan dai perpaduan dari warna dasar. Warna sekunder tersebut yaitu

cyan, magenta, dan yellow. Pada titik pusat koordinat (0,0,0), merepresentasikan warna

hitam, sedangkan warna putih terletak disudut kubus yang letaknya paling jauh dari titik

pusat koordinat atau letakkan berada pada titik koordinat (1,1,1). Diagonal ruang yang

terbentuk dengan menarik garis putus-putus dari titik koordinat pusat (0,0,0) sampai

koordinat (1,1,1) akan menghasilkan gradasi warna keabuan atau grayscale.

Gambar 2.4 Warna RGB dalam bentuk kubus [9]

2.3.3 Citra Biner

Citra biner merupakan citra yang memiliki warna hitam dan putih saja. Citra biner

hanya mempunyai dua kemungkinan nilai, seperti 1 (on) dan 0 (off) yang disimpan dalam

sebuah mtriks[10]. Citra ini disebut juga sebagai citra B&W (black and white) atau citra

monokrom. Piksel yang bernilai 1 merepresentasikan warna hitam dan piksel bernilai 0

merepresentasikan warna putih

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

9

Citra biner dapat diatur dari nilai ambang (threshold) yang diinginkan jika nilai piksel

lebih kecil daripada batas ambang maka nilai tersebut diubah menjadi 0 (hitam), sedangkan

jika lebih besar atau sama dengan nilai ambang maka nilai tersebut diubah menjadi 1 (putih).

Citra biner dapat dilihat pada Gambar 2.6.

Gambar 2.5. Citra Biner [11]

2.3.4 Mengkonversi Citra RGB ke Biner

Mengkonversi citra RGB ke biner pertama kali diawali dengan proses grayscale,

proses grayscale merupakan proses mengubah citra berwarna (RGB) ke citra berskala

keabuan. Mengkonversi citra RGB ke biner dilakukan dengan menerapkan suatu nilai yang

dikena sebagai nilai ambang (Threshold).

Citra grayscale merupakan citra yang tidak memiliki komponen warna RGB (Red,

Green, Blue). 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 [12]. Citra grayscale terdiri dari x dan y didalam spasial koordinat dan memiliki

intensitasnya masing-masing. Setiap gambar pada citra grayscale memiliki intensitas antara

0 (hitam) hingga 255 (putih) dalam citra 8 bitnya.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

10

Gambar 2.6. Citra Grayscale [13]

Secara umum rumus yang dipakai untuk mengubah citra RGB ke citra berskala

keabuan dapat digunakan persamaan [14] :

𝑰 = 𝟎, 𝟐𝟗𝟖𝟗𝒙𝑹 + 𝟎, 𝟓𝟖𝟕𝟎𝒙𝑮 + 𝟎, 𝟏𝟏𝟒𝟏𝒙𝑩

(2.2)

keterangan :

I = Tingkat keabuan

R,G,B = Red, Green, Blue

Proses selanjutnya untuk mengkonversi citra berskala keabuan ke citra biner dapat

mengatur nilai ambang (threshold). Adapun metode yang digunakan untuk mengkonversi

citra berskala keabuan ke citra biner yaitu metode otsu. Pada metode ini secara otomatis nilai

ambang dari tingkat keabu-abuan histrogram melalui analisis diskriminan [15]. Metode otsu

terdiri dari beberapa tahapan. Tahapan pertama, probabilitas nilai intensitas i dihitung

melalui persamaan[15] :

𝒑𝒊 = 𝒏𝒊/𝑵 (2.3)

Keteranan :

𝒏𝒊 = jumlah piksel dengan intensitas i.

N = jumlah semua piksel dalam citra

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

11

Untuk menghitung nilai zeroth- cumulative moment, first- order cumulative moment

dan nilai rerata dari gambar original dapat dilihat secara berturut pada persamaan dibawah

[15]:

ω(k) = ∑ 𝑝𝑖𝑘𝑖=1 (2.4)

𝜇(𝑘) = ∑ 𝑖𝑘𝑖=1 𝑝𝑖 (2.5)

𝜇𝑇 = 𝜇(𝐿) = ∑ 𝑖. 𝑝𝑖𝐿𝑖=1 (2.6)

Untuk mendapatkan nilai threshold atau nilai ambang k dapat dihitung menggunakan

persamaan sebagai berikut [15]:

𝜎2

𝐵(𝑘) = max 𝜎

2

𝐵(𝑘) (2.7)

dengan

𝜎2

𝐵(𝑘) =

[𝜇𝑇𝜔(𝑘)−𝜇(𝑘)]2

𝜔(𝑘)[1−𝜔(𝑘)] (2.8)

2.4. Ekstraksi Ciri

Ekstraksi ciri merupakan tahapan yang penting dalam proses pengenalan objek. Hasil

dari tahap ektraksi ciri akan digunakan sebagai acuan untuk membedakan antara objek yang

satu dengan objek yang lainnya melalui beberapa tahapan. Pada penelitian ini tahap ekstraksi

ciri terdiri dari beberapa tahapan yang dibutuhkan yaitu operasi opening, deteksi kontur dan

kode rantai Freeman.

2.4.1 Resizing

Resizing adalah proses untuk mengubah ukuran suatu citra atau objek dalam piksel.

Dengan cara mengurangi atau menambahkan jumlah piksel penyusun dari citra tersebut baik

pada ukuran panjang maupun ukuran lebar. Dalam penelitian ini dilakukan variasi resizing

untuk memvariasikan jumlah kode rantai. Kode rantai bervariasi dari kode yang terpanjang

sampai yang terpendek. Tujuan dari memvariasikan jumlah kode rantai adalah peneliti ingin

melihat pada variasi keberapa system masih akan mengenali objek.

2.4.2 Kontur Moore

Mengikuti bentuk kontur (contour) merupakan suatu metode yang digunakan untuk

mendapatkan batas tepi suatu objek dalam bentuk koordinat. Salah satu cara untuk

mendeteksi tepi suatu objek adalah menggunakan kontur Moore .

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

12

Algoritma 1 : Memperoleh Kontur Moore [14].

Masukan :

• f (x,y): Citra masukan berukuran x baris dan y kolom

Keluaran :

• kontur : Larik yang berisi piksel-piksel kontur.

1. Dapatkan piksel bernilai 1 pada bagian terkiri dan teratas. Posisi piksel dicatat

pada 𝑏0 dan posisi untuk piksel berikutnya dicatat pada 𝑐0, yang pada awalnya

diisi 4 (arah barat di Gambar 2.8 (c)).

2. Periksa 8 tetangga 𝑏0 searah jarum jam dimulai dari 𝑏0. Piksel pertama yang

bernilai satu dicatat pada 𝑏1. Adapun posisi untuk piksel yang mendahului 𝑏1

dicatat pada 𝑐1.

3. Kontur(1) 𝑏0, kontur(2) 𝑏1, jum 2

4. b 𝑏1 dan c 𝑐1

5. WHILE true

a. Cari piksel pada 8 tetangga yang pertama kali bernilai 1 dengan

pencarian dimulai dari arah c dengan menggunakan pola arah jarum jam.

b. Catat posisi piksel tersebut ke b.

c. Catat posisi yang mendahului piksel tersebut ke c.

d. Tambahkan b sebagai bagian kontur:

Jum jum + 1

Kontur(jum) b

e. if b = 𝑏0

Keluar dari while

end-if

end-while

Berikut penerapan algoritma kontur Moore dilihat pada contoh Gambar 2.8. dibawah ini.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

13

(a)

(b)

(c)

(d)

Gambar 2.7 Proses Pelacakan Kontur Moore (a) Objek citra (b) langkah-langkah deteksi

kontur Moore (c) hasil kontur (d) penomoran arah pencarian

Untuk memahami algoritma Moore, dapat dilihat Gambar 2.7. Gambar 2.7(a)

merupakan keadaan objek pada citra. Piksel bernilai 1 merupakan objek citra sedangkan

yang bernilai 0 merupakan latar belakang. Piksel bernilai 1 menyatakan bagian objek dan

yang bernilai 0 adalah bagian latar belakang. Pada contoh tersebut, pelacakan akan dimulai

pad posisi (2,2), yaitu piksel bagian objek yang terletak paling kiri dan paling atas. Adapun

titik pencarian untuk piksel kedua dimulai di arah barat atau kiri piksel (2,2) tersebut.

Pencarian dilakukan searah jarum jam. Pada langkah pertama, diperoleh piksel pada posisi

(2,3). Pencarian berikutnya akan dimulai di posisi (1,3). Pada pencarian kedua, piksel yang

didapat, yaitu posisi (2,4), dengan titik pencarian berikutnya dimulai pada posisi (1,4). Pada

Objek

Piksel objek paling kiri

dan paling atas sebagai

titik awal pelacakan

Kontur

1 2 3 4

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

14

pencarian ketiga, piksel yang didapat adalah pada (2,5) dengan titik pencarian berikutnya

dimulai di posisi (1,5). Pada pencarian keempat, piksel yang didapat yaitu (3,4), dengan titik

pencarian berikutnya dimulai di posisi (3,5). Jika langkah seperti it uterus diulang, suatu

ketika akan diperoleh piksel yang sam dengan piksel yang pertama kali menjadi bagian

kontur. [14]

Berdasarkan algoritma 1 dengan menggunakan contoh pada Gambar 2.8(a) hasil

deteksi kontur berupa posisi piksel objek (x,y) dapat dilihat pada Tabel 2.1. hasil deteksi

kontur ini akan menjadi masukan untuk kode Freeman. Hasil dalam tabel dibawah

merupaakn titik koordinat dari tepi objek.

Tabel 2.1. Hasil Deteksi Kontur Moore

x y

2 2

2 3

2 4

2 5

3 4

4 5

5 5

5 4

5 3

5 2

4 3

3 2

2 2

2.4.3 Kode Freeman

Kode Freeman merupakan metode deteksi bentuk yang akan digunakan dalam

penelitian ini. Tak lain karena metode Freeman ini akan bergerak berurutan mengikuti

bentuk dari objek dengan batas pixel berdasarkan 8 konektivitas atau 8 arah mata angin.

Metode ini dikenal sebagai metode yang banyak diguakan dalam pengenalan objek karena

kompresi informasinya yang dianggap cukup baik [3].

Kode Freeman atau kode rantai banyak digunakan dalam pengolahan citra untuk

merepresentasikan garis, kurva atau tepi dari suatu daerah. Penelitian tentang kode rantai

diperkenalkan oleh Freeman pada tahun 1961 (Freeman, 1961) yang digunakan untuk

merepresentasikan kurva digital. Kode Freeman bergerak sepanjang kurva digital atau batas

pixel yang berurutan berdasarkan 8 konektivitas. Arah dari setiap gerakan dikodekan dengan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

15

menggunakan skema nomor {i|i=0,1,2,3,4,5,6,7} yang merupakan kelipatan sudut 45 derajat

melawan arah jarum dari posisi sumbu x positif. [2]

Gambar 2.8. Skema 8 arah mata angin kode Freeman [2]

Algoritma 2 : Memperoleh Kode Rantai Freeman :

Masukan :

• Larik yang berisi piksel – piksel kontur Moore yang telah terurutkan

Keluaran :

• Deretan Kode Rantai

1. Dapatkan piksel awal pada bagian terkiri atas sesuai dengan larik piksel dari

kontur Moore.

2. Periksa 8 tetangga dari piksel awal yang bernilai 1 searah jarum jam (lihat

gambar 2.7(b)), piksel selanjutnya yang bernilai 1 dicatat ∆x dan ∆y nya.

3. Hitung indeks

4. Cocokkan indeks dengan kode rantai

5. Catat kode rantai

6. Selesai

Untuk mempermudah perolehan kode rantai piksel yang menjadi tetangga suatu

piksel, perlu pembuatan indeks yang dapat dihitung melalui rumus berikut :

Indeks = 3∆𝑦 + ∆𝑥 + 5 (2.3)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

16

Dalam hal ini, ∆x menyatakan selisih nilai kolom dua piksel yang bertetangga dan

∆y menyatakan selisih nilai baris dua piksel yang menjadi tetangga suatu piksel [14].

Hubungan kode rantai dan indeks pada persamaan 2.3 tersaji di table 2.2.

Tabel 2.2. Indeks dan kode rantai dua piksel yang bertetangga [13]

∆x ∆y Kode Rantai Indeks = 3∆y+∆x + 5

0 +1 6 8

0 -1 2 2

-1 +1 5 7

-1 -1 3 1

+1 +1 7 9

+1 -1 1 3

-1 0 4 4

Pada tabel diatas untuk indeks 5 dan 6 memiliki kode rantai 0. Ditinjau dari model

kode rantai pada gambar 2.9 posisi kode rantai 0 berada disebelah kanan searah jarum jam

3( ) dengan ∆x = +1 dan ∆y = 0 sehingga dapat dihitung indeksnya

3(0) + 1 + 5 = 6

Berdasarkan contoh gambar 2.7 yang sudah dilakukan pelacakan yaitu kontur Moore

pada table 2.1 selanjutnya untuk proses mencari kode rantainya berdasarkan indeks dua

piksel yang bertetangga akan dijelaskan sebagai berikut :

Gambar 2.9. kontur Moore dengan koordinatnya

Piksel paling kiri dan paling atas menjadi titik awal pelacakan kontur, yaitu pada

koordinat (2,2) kemudian akan melacak searah jarum jam mengikuti bentuk dari objek.

Berikut penjelasannya.

a. Piksel dengan koordinat(2,2) ke (2,3) ke (2,4) ke (2,5) memiliki kode rantai 0

b. Piksel dengan koordinat (2,5) ke (3,4) memiliki kode rantai 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

17

c. Piksel dengan koordinat (3,4) ke (4,5) memiliki kode rantai 7

d. Piksel dengan koordinat (4,5) ke (5,5) memiliki kode rantai 6

e. Piksel dengan koordinat (5,5) ke (5,4) ke (5,3) ke (5,2) memiliki kode rantai 4

f. Piksel dengan koordinat (5,2) ke (4,3) memiliki kode rantai 1

g. Piksel dengan koordinat (4,3) ke (3,2) memiliki kode rantai 3

h. Piksel dengan koordinat (3,2) ke (2,2) memiliki kode rantai 2

Jadi kode rantai untuk gambar 2.9. yaitu 000576444132.

2.5. Basis Data

Basis Data merupakan sekumpulan informasi yang akan menjadi acuan dan disimpan

dalam suatu folder komputer secara sistematik sehingga dapat diperiksa menggunakan suatu

program komputer untuk mendapatkan informasi dari basis data tersebut. Semakin banyak

informasi yang diperlukan maka akan semakin banyak basis data dari objek referensi yang

akan disimpan didalamnya. Dalam peneitian ini basis data objek referensi diperlukan dalam

proses perhitungan jarak. Pembuatan basis data objek menggunakan 10 variasi jumlah kode

rantai dan penulis akan mengambil 9 gambar dari masing-masing alat stasioneri. Jenis basis

data yang digunakan pada penelitian ini adalah Cell Array yang biasanya menggunakan

kurung kurawal “{ }”.

2.6. Jarak

Jarak merupakan fungsi yang digunakan untuk mewujudkan pencarian citra.

Berfungsi sebagai penentu kesamaan atau ketidaksamaan dua buah vektor fitur. Tingkat

kesamaan dinyatakan dengan suatu skor atau ranking. Semakin kecil nilai dari ranking, maka

semakin dekat kesamaan kedua vektor tersebut[14]. Pada penelitian ini menggunakan fungsi

jarak Canberra untuk mengukur tingkat kesamaan dua buah vektor.

Jarak Canberra akan membagi absolut selisih dari 2 nilai dengan jumlah dari absolut

2 nilai tersebut. Hasil dari setiap dua nilai yang dicocokkan lalu dijumlahkan untuk

mendapatkan jarak Canberra. Berikut adalah persamaan untuk menghitung jarak

Canberra[14].

𝑗(𝑉1, 𝑉2) = ∑|𝑉1(𝑘)−𝑉2(𝑘)|

|𝑉1(𝑘)|+|𝑉2(𝑘)|

𝑁𝑘=1 (2.4)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

18

Keterangan :

𝑉1(𝑘) = citra basis data

𝑉2(𝑘) = citra masukan

Sebagai contoh, terdapat dua buah vektor 𝑉1 = [ 5, 4,7 ] dan 𝑉2 = [ 3, 4, 8 ], jarak canberra

dari kedua vektor tersebut adalah :

𝑗(𝑉1, 𝑉2) = |5 − 3|

5 + 3+

|4 − 4|

4 + 4+

|7 − 8|

7 + 8=

2

8+

0

8+

1

15= 0,3166

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

19

BAB III

PERANCANGAN

3.1 Perancangan Sistem Pengenalan Alat-alat Stasioneri

Perancangan sistem yang akan dibuat adalah sistem yang dapat mengenali citra alat-

alat stasioneri menggunakan webcam. Gambar 3.1. adalah gambaran umum keseluruhan

sistem.

Gambar 3.1. Gambaran Umum Perancangan Sistem

Sistem pengenalan alat-alat stasioneri terdiri dari perangkat keras dan perangkat

lunak yang ada pada komputer. Perangkat keras yang digunakan adalah alat-alat stasioneri,

fixture, laptop, webcam dan perangkat lunaknya adalah menggunakan Matlab. Pengambilan

citra menggunakan webcam yang dihubungkan dengan laptop sebagai pusat pengolahan

data dan user interface sebelum masuk dalam program Matlab. Mekanismenya adalah

webcam akan diletakkan pada gagangan fixture sebagai sanggahan untuk mengambil gambar

dari atas, selanjutnya alat stasioneri akan diletakkan dibawah kaki fixture tepat dibawah

webcam. Alat stasioneri yang ditangkap oleh webcam akan langsung dikirim menggunakan

kabel USB webcam ke laptop yang kemudian akan dilakukan pengolahan menggunakan

perangkat lunak Matlab. Untuk tahap akhir dari sistem adalah berupa keluaran pada layar

monitor laptop berupa teks.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

20

3.2. Perancangan Hardware

Perancangan hardware dimulai dengan mendesain fixture sebagai sanggahan untuk

webcam. Jarak antara webcam dengan alat stasioneri adalah 48cm. Kabel USB dari webcam

dihubungkan ke laptop untuk melanjutkan ke proses pengolahan. Perancangan hardware

dapat dilihat pada Gambar 3.2

Gambar 3.2 Perancangan Hardware

3.3. Sistem Pengenalan Citra Alat-alat Stasioneri

Pada Gambar 3.3. merupakan diagram alir dari system pengenalan alat-alat

stasioneri. Berdasarkan diagram alir diatas proses pengambilan citra akan dilakukan dengan

menggunakan webcam (web camera). Pada tahap preprocessing, citra RGB dikonversi

kedalam bentuk citra biner, Selanjutnya hasil dari preprocessing ini akan diproses ke tahap

pengenalan.

Tahap pengenalan terdiri dari 3 tahap yaitu ekstraksi ciri dan perhitungan fungsi

jarak, dan basis data citra pengenalan alat stasioneri . Proses terakhir dari system ini yaitu

tahap penentuan keluaran. Hasil dari penentuan keluaran system ini berdasarkan jarak

minimum yang diperoleh dari hasil perbandingan antara ekstraksi ciri dengan basis data.

Uraian penjelasan secara bertahap akan dijelaskan pada subbab selanjutnya.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

21

3.3 Blok Diagram Sistem Pengenalan alat-alat stasioneri

3.3.1. Pengambilan Citra Alat-alat Stasioneri

Diagram alir dari proses pengambilan citra dapat dilihat pada gambar 3.4

Gambar 3.4 Diagram alir pengambilan citra.

Proses pengambilan citra alat-alat stasioneri adalah proses pengambilan citra dengan

menggunakan webcam yang akan disimpan. Webcam dihubungkan ke laptop dengan

menggunakan port USB 2.0 sehingga gambar citra dapat dikirim dan diterima oleh laptop

untuk selanjutnya akan diproses menggunakan MATLAB.

Pengambilan citra alat

stasioneri

Variasi Kode Rantai

Freeman

Preprocessing

Ektraksi ciri

Jarak Canberra

Keluaran berupa teks

Basis Data

Mulai

Capture

A

A

Camera On

Keluaran:

Citra RGB

Selesai

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

22

3.3.2. Tahap Preprocessing

Tahap preprocessing merupakan tahap untuk mengkonversi citra RGB ke biner. .

Tahap ini dilakukan karena hasil gambar dengan webcam C270 memiliki fomat RGB.

Sehingga konversi citra diperlukan agar format citra menjadi citra biner. Berdasarkan

Gambar 3.3. diagram alir subrutin tahap preprocessing ditunjukkan pada Gambar 3.5.

Gambar 3.5 Diagram Alir tahap preprocessing

Tahap preprocessing diawali dengan mengonversi citra RGB ke citra grayscale

(persamaan 2.2) kemudian diubah ke citra biner menggunakan metode otsu (persamaan 2.3

sampai dengan persamaan 2.8) sehingga didpatkan nilai ambang dari citra tersebut. Nilai

ambang digunakan untuk mengkonversi citra menjadi biner.

Mulai

Masukan:

Citra RGB

Konversi citra

RGB ke

grayscale

Keluaran:

Citra

preprocessing

Selesai

Konversi citra

grayscale ke

citra biner

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

23

3.3.3. Tahap Ekstraksi Ciri

Tahap ekstraksi ciri merupakan tahap terpenting untuk mengambil ciri dari suatu

citra. Ekstraksi ciri diperoleh menggunakan ekstraksi ciri kode Freeman atau kode rantai.

Tahapan ekstraksi ciri dapat dilihat secara garis besar pada diagram alir 3.6.

Gambar 3.6 Diagram Alir tahap ekstraksi ciri

Hasil dari tahap preprocessing akan menjadi masukan untuk ekstraksi ciri ini. Proses

diawali dengan resizing untuk mendapatkan variasi jumlah kode rantai. Kemudian deteksi

tepi objek menggunakan deteksi kontur Moore. Diagram alir deteksi kontur Moore dapat

dilihat pada gambar 3.7.

Mulai

Masukan :

citra hasil

preprocessing

Resizing untuk

variasi jumlah

kode rantai

Ekstraksi Ciri kode

Freeman

Keluaran :

deretan kode

Freeman

Selesai

A

A

Deteksi

Kontur

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

24

Gambar 3.7. Diagram Alir Deteksi Kontur Moore

Mengacu pada algoritma 1 tahap deteksi kontur pada Gambar 3.7 diawali dengan

mencari piksel bernilai 1 pada posisi paling kiri dan paling atasa objek yang telah

dibinerisasi. Posisi piksel dicatat pada 𝑏0 dan piksel berikutnya dicatat pada 𝑐0. Langkah

kedua periksa 8 tetangga searah jarum jam (Gambar 2.7(d)) dimulai dari 𝑐0. Piksel yang

didapatkan adalah piksel yang bernilai 1 kemudian dicatat pada 𝑏1. Sedangkan piksel yang

Mulai

Masukan:

Citra preprocessing

Peroleh piksel

awal bernilai 1

Periksa 8 tetangga

searah jarum jam

Catat kontur(1) = 𝑏0,

kontur(2) = 𝑏1 dan jum = 2

Catat b= 𝑏1 dan

c = 𝑐1

B

B

Cari piksel bernilai 1 pada 8

tetangga dimulai dari c dan

catat pada b

catat posisi yang

mendahului ke c

Tambahkan c sebagai

bagian kontur

b = 𝑏0

Piksel berikutnya

bernilai 1?

Selesai

Ya

Tidak

Ya

Tidak

Keluaran:

Citra kontur

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

25

mendahului 𝑏1dicatat pada 𝑐1. Selanjutnya langkah ketiga catat elemen 𝑏0 pada kontur

(1), elemen 𝑏1 pada kontur (2) dan jum = 2. Langkah keempat catat elemen 𝑏1 pada b dan

elemen 𝑐1 pada c. Langkah kelima merupakan proses looping apabila pada piksel

selanjutnya bernilai 1. Apabila terdapat piksel bernilai 1 maka posisi piksel dicatat pada b

serta piksel yang mendahului b dicatat pada c. Penambahan elemen y sebagai bagian dari

kontur. Proses looping akan berhenti jika elemen b = 𝑏0.

Selanjutnya hasil deteksi kontur yang telah terurutkan akan diproses untuk mendapatkan

mendapatkan kode rantai Freeman . Diagram alir proses mendapatkan kode rantai Freeman

dapat dilihat pada Gambar 3.8.

Gambar 3.8 Diagram alir kode Freeman

Berdasarkan diagram alir diatas, proses ekstraksi ciri diawali dengan masukan dari

deteksi kontur Moore, kemudian proses ekstraksi ciri dengan menggunkan kode rantai

Freeman dimana disajikan pada Algoritma 2 yang ada pada bab sebelumnya. Hasil dari

tahap ekstraksi ciri berupa deretan kode rantai.

Mulai

Masukan: citra

kontur

Kode rantai Freeman

Keluaran : kode

rantai Freeman

Mulai

C

C

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

26

3.3.4. Proses Perhitungan Fungsi Jarak

Proses fungsi jarak merupakan proses yang dilakukan setelah mendapatkan hasil dari

ekstraksi ciri. Fungsi jarak yang digunakan adalah jarak Canberra yang berfungsi sebagai

pembanding hasil dan untuk mencari nilai selisih minimum antara ekstraksi ciri dengan citra

alat-alat stasioneri yang ada pada basis data . Proses dari fungsi jarak dapat dilihat pada

diagram alir Gambar 3.9.

Gambar 3.9 Diagram Alir Fungsi Jarak Canberra

3.3.5 Tahap Penentuan Keluaran

Hasil keluaran pada pengenalan alat stasioneri ini ditentukan dari pencocokan kode

rantai keluaran dari ekstraksi ciri dengan kode Freeman yang ada yang ada pada basis data

. Hasil keluaran berupa teks pada layer monitor. Proses penentuan keluaran digambarkan

pada diagram alir pada Gambar 3.10.

Mulai

Masukan : Hasil

ekstraksi ciri,

basis data

Perhitungan jarak : Citra

Hasil Ekstraksi Ciri

dengan basis data

D

D

Keluaran : Hasil

perhitungan

jarak

Selesai

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

27

Gambar 3.10 Diagram Alir Penentuan Keluaran

3.4 Pembuatan Basis Data

Basis Data berfungsi sebagai acuan untuk membandingkan nilai hasil dari ekstraksi

ciri alat stasioneri yang diambil menggunakan webcam. Proses perancangan basis data dapat

dilihat pada diagram alir Gambar 3.11. Perancangan basis data pada Gambar 3.11. dimulai

dengan pegambilan cira alat stasioneri menggunakan webcam. Selanjutnya data tersebut

akan diproses pada tahap preprocessing. Tahap preprocessing berfungsi untuk

meningkatkan kualitas citra. Terdapat beberapa proses pada tahap preprocessing yaitu

mengkonversi citra RBG ke grayscale kemudian diubah ke citra biner, hasil dari

preprocessing akan menjadi masukan pada tahap ekstraksi ciri. Tahap ekstraksi ciri

merupakan tahapan untuk mencari kode rantai pada citra menggunakan kode Freeman yang

diawali dengan proses resizing untuk mendapatkan variasi jumlah kode rantai pada citra

preprocessing, kemudian deteksi kontur menggunakan kontur Moore. Selanjutnya proses

untuk mendapatkan kode rantai dengan kode Freeman. Hasil dari ekstraksi ciri akan

disimpan dalam sebuah folder yang digunakan sebagai acuan dalam pengenalan alat

stasioneri. Adapun banyaknya data yang disimpan pada basis data adalah 90 data ( 9 alat

stasioneri x 10 variasi jumlah kode rantai).

Mulai

Masukan:

hasil dari ekstraksi

ciri Freeman

Nilai keluaran = nilai yang

tersimpan dalam basis data

E

E

Keluaran:

Hasil

berupa teks

Selesai

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

28

Gambar 3.11 Diagram Alir Pengambilan Basis Data

3.5 Perancangan Tampilan GUI Matlab

GUI (Graphical User Interface) merupakan sub menu dari software Matlab

yang digunakan untuk menjadi penampil dari program yang dijalankan. Bagian-bagian dari

GUI seperti axes , popupmenu, edit text, dan lainnya bisa digunakan sesuai dengan

kebutuhan dari pengguna. Berikut adalah penjelasan untuk perancangan tampilan dari GUI

yang akan digunakan dalam pengujian.

Tampilan system pengenalan alat stasioneri menggunakan GUI (Graphical User

Interface) pada Matlab dengan tujuan membantu dalam proses pengenalan alat stasioneri.

Adapun perancangan GUI dapat dilihat pada gambar 3.12 Ditinjau dari Gambar 3.12 proses

menjalankan system dimulai dengan menekan tombol “Camera On” pada Axes 1 akan

ditampilkan citra alat stasioneri secara real time menggunakan webcam . Selanjutnya

pengguna menekan tombol “capture” untuk pengambilan citra alat stasioneri yang akan

menjadi masukan pada proses ini. Gambar citra tersebut ajan ditampilkan pada Axes 1.

Mulai

Pengambilan citra

alat stasioneri

Preprocessing

Ekstraksi Ciri kode

rantai Freeman

Basis data alat

stasioneri

Selesai

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

29

Langkah selanjutnya pengguna menekan tombol “Process” untuk memroses citra masukan

ke tahap preprocessing dan ekstraksi ciri. Hasil dari tahap preprocessing berupa citra biner

akan ditampilkan pada Axes 2. Keluaran pada proses ektraksi ciri berupa teks yang akan

ditampilkan pada Axes 3. Tombol “Reset” berfungsi sebagai pengulangan proses pengenalan

alat stasioneri yang akan dilakukan dari awal.. Keterangan GUI dapat dilihat pada Tabel 3.1.

Gambar 3.12 Perancangan GUI

Tabel 3.1 Keterangan GUI

Nama Bagian Keterangan

Tombol “Camera On” Untuk menghidupkan webcam

Tombol “Capture” Untuk mengambil gambar

Tombol “Process” Untuk memulai proses pengenalan perangkat elektronika

Axes 1 pada panel

kamera

Untuk menampilkan citra secara real time dari webcam dan citra

hasil pengambilan gambar

Axes 2 pada proses

preprocessing

Untuk menampilkan citra hasil preprocessing

Axes 3 pada panel

keluaran

Untuk menampilkan hasil akhir pengenalan perangkat elektronika

berupa teks

Tombol “Reset” Untuk mengulang proses pengenalan dari awal

Tombol “End” Untuk menutup GUI

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

30

3.6 Pengujian Citra Alat-alat Stasioneri

Pengujian citra merupakan cara yang dilakukan untuk menguji program dan

mendapatkan hasil dari penelitian. Pengujian citra alat-alat stasioneri ini dilakukan melalui

dua cara yaitu pengujian secara tidak langsung dan pengujian secara langsung. Berikut

penjelasan mengenai kedua cara pengujian tersebut.

3.6.1 Pengujian Secara Tidak Langsung

Pengujian secara tidak langsung mengacu pada Gambar 3.11 diawali dengan

pengambilan citra menggunakan webcam kemudian disimpan dalam sebuah folder. Setiap

gambar yang telah diambil dengan webcam diberi nama agar dapat dikenali oleh program

Matlab. Pengujian secara tidak langsung menggunakan data yang diperoleh dari 9 alat

stasioneri. Data tersebut kemudian diproses dengan menggunakan Matlab sebagai data uji

yang akan diteruskan ke tahap preprocessing, ekstraksi ciri, dan fungsi jarak Canberra. Data

masukan akan dibandingkan dengan data yang ada pada basis data. Pengambilan data pada

pengujian secara tidak langsung adalah sebanyak 90 data (9 alat stasioneri x 10 variasi

jumlah kode rantai). Variasi kode rantai menggunakan proses resizing yaitu dengan

mengurangi jumlah baris piksel.. Hasil akhir dari proses ini akan ditampilkan ke layar

monitor dengan format teks pada GUI Matlab.

3.6.2 Pengujian Secara Langsung

Berdasarkan Gambar 3.12 untuk menjalankan system secara langsung pengguna atau

user harus menekan t ombol “Camera On”. Selanjutnya webcam akan mengambil gambar

alat stasioneri setelah pengguna menekan tombol “Capture”. Pengujian data secara langsung

dilakukan dengan cara mengambil gambar 9 alat stasioneri, data tersebut digunakan sebagai

basis data dan kemudian diberi nama maupun data sebagai pengujian secara tidak langsung.

Masing-masing perangkat akan mewakili variasi kode rantai. Setiap alat stasioneri akan

menghasilkan data sesuai dengan resizing yang diinginkan yaitu 90%, 80%, 70%, 60%,

50%,40%,30%,20%, 10% dan 5 %. Hasil pengambilan gambar ini dapat diubah kode

rantainya, setelah pengguna menentukan nilai resizing yang diinginkan. Kemudian citra

tersebut akan diteruskan ke tahap preprocessing yaitu tahap mengkonversi citra RGB ke

biner. Tahap selanjutnya adalah tahap ekstraksi ciri yang dimulai dengan deteksi kontur,

hasil dari deteksi kontur adalah masukan ke tahap mencari kode rantai Freeman dari setiap

objek. Hasil dari tahap ekstraksi ciri ini menjadi masukan untuk perhitungan jarak Canberra,

sebagai pembanding dengan data yang ada dalam basis data . Pengambilan data akan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

31

dilakukan sebanyak 9 kali masing-masing dari alat stasioneri. Jumlah data yang akan

dibandingkan adalah 90 data ( 9 alat stasioneri x 10 variasi kode rantai ). Untuk tahap akhir

dari system yaitu tampilan berupa teks pada layer monitor.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

32

BAB IV

HASIL DAN PEMBAHASAN

Bab IV akan membahas mengenai pengujian software yang telah dirancang,

membahas mengenai interface atau GUI serta membahas menganai pengujian system

program pengenalan alat-alat stasioneri.

4.1 Implementasi Program

4.1.1 Tombol Camera On

Tombol Camera On (kamera aktif ) berfungsi untuk menghubungkan webcam

dengan Software Matlab yang ada pada laptop dimana nantinya rekaman dari webcam akan

ditampilkan pada axes 1 yang ada pada GUI dilayar monitor. Berdasarkan diagram alir 3.4

program untuk mengaktifkan tombol Camera On (Kamera Aktif) dapat dilihat pada Gambar

4.1. Adapun sintaks imaghwinfo berfungsi untuk memastikan adapter kamera sudah

terhubung dan terbaca dengan baik. Program ‘winvideo’ digunakan untuk memanmpilkan

informasi dari webcam dan informasi tersebut akan diinisialisasikan didalam program agar

webcam dengan software dapat saling terhubung. Pada program ini yang akan ditampilkan

adalah video, lebar, panjang, resolusi, port webcam dan band dari video. Perintah program

preview berfungsi untuk menampilkan video pada saat program Camera On dijalankan, dan

untuk menampilkannya digunakan sintaks Handles Image.

Gambar 4.1. Program Kamera Aktif

function CameraOn _Callback(hObject, eventdata, handles) global camvid; axes(handles.axes1); info=imaqhwinfo('winvideo'); dev_info=imaqhwinfo('winvideo',1); camvid = videoinput('winvideo',1,'RGB24_640x480'); camvid.FramesPerTrigger=1; triggerconfig(camvid,'manual'); camRes = get(camvid,'VideoResolution'); imWidth = 640; imHeight = 480; nBands = get(camvid,'NumberOfBands'); hImage = image(zeros(imHeight, imWidth, nBands),'parent',

handles.axes1); preview(camvid,hImage);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

33

4.1.2 Tombol Capture

Tombol capture (ambil gambar) berfungsi untuk mengambil gambar alat-alat

stasioneri yang akan diolah lebih lanjut dalam proses pengenalan. Mengacu pada diagram

alir 3.4 yaitu proses pengambilan gambar alat stasioneri, program untuk ambil gambar dapat

dilihat pada Gambar 4.2.

Gambar 4.2. Program Ambil Gambar

Pada program diatas sintaks global digunakan untuk menyatakan variable sehingga

dapat digunakan dalam fungsi lain yang ada dalam file yang sama. Sedangkan untuk sintaks

getdata berfungsi untuk meambil citra pada saat kondisi webcam telah aktif. Citra tersebut

kemudian akan diinisialisasikan menggunakan sintaks handles agar dapat dipanggil dalam

file figure dan file.m serta untuk menampilkan gambar akan ditampilkan pada axes 1.

Sintaks imwrite berfungsi untuk menyimpan gambar yang telah diambil menggunakan

webcam.

4.1.3 Popupmenu

Popupmenu adalah salah satu bagian dari GUI (Graphical User Interface) yang

digunakan untuk memudahkan pengguna dalam memilih menu jika dalam software terdapat

beberapa pilihan koefisien yang akan diolah. Pengguna dapat memilih variasi yang

diinginkan, dalam hal ini popupmenu terdiri dari 10 variasi resizing yaitu 90%, 80%, 70%,

80%, 70%, 60%, 50%, 40%, 30%, 20% , 10% dan 5%. Gambar program untuk popupmenu

dapat dilihat pada Gambar 4.3.

function Capture_Callback(hObject, eventdata, handles) % hObject handle to Capture (see GCBO) % eventdata reserved - to be defined in a future version of

MATLAB % handles structure with handles and user data (see GUIDATA) %capture global picture; global camvid; pause(0.5); stoppreview(camvid); picture = getsnapshot (camvid); handles.picture=picture; axes(handles.axes1); imshow(picture); imwrite(picture,'coba.jpg');

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

34

Gambar 4.3. Program Popupmenu

Berdasarkan Gambar 4.3. pengguna dapat memilih nilai variasi resizing yang

digunakan misalnya “var=90” artinya variasi yang akan digunakan adalah 90%, begitu juga

pada “var=10” artinya variasi yang digunakan adalah 90% begitupun seterusnya. Sintaks

“handles.var” berfungsi agar nilai variasi resizing dapat dipanggil deprogram lain.

4.1.4 Tombol Process

Tombol Process (Proses) merupakan tombol yang berfungsi untuk menjalankan

proses dalam pengenalan alat stasioneri. Tombol proses terdiri dari beberapa tahap program,

program untuk tahap pertama adalah pembanding basis data, kemudian program

preprocessing yaitu program untuk mengkonversi RGB ke biner, program ekstraksi ciri yang

terdiri dari beberapa program yaitu operasi dilasi, resizing , deteksi kontur dan Freeman

Code, program jarak Canberra dan hasil keluaran berupa teks pada GUI Matlab.

function popupmenu1_Callback(hObject, eventdata, handles) indeks = get(handles.popupmenu1,'value'); switch indeks case 2 var=90; case 3 var=80; case 4 var=70; case 5 var=60; case 6 var=50; case 7 var=40; case 8 var=30; case 9 var=20; case 10 var=10; case 11 var=5; end handles.var=var; guidata(hObject,handles);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

35

4.1.4.1 Program Pembanding Basis Data

Progam ini berfungsi untuk membandingkan data sesuai dengan variasi resizing yang

dipilih oleh pengguna pada proses popupmenu. Berikut adalah program popupmenu.

Gambar 4.4. Program Basis Data

%DATABASE %PopUpMenu var = handles.var; if (var==90) load dbvar90 panjang = 613; ukuran = 0.9; elseif (var==80) load dbvar80 panjang = 543; ukuran = 0.8; elseif (var==70) load dbvar70 panjang = 475; ukuran = 0.7; elseif (var==60) load dbvar60 panjang = 407; ukuran = 0.6; elseif (var==50) load dbvar50 panjang = 339; ukuran = 0.5; elseif (var==40) load dbvar40 panjang = 271; ukuran = 0.4; elseif (var==30) load dbvar30 panjang = 202; ukuran = 0.3; elseif (var==20) load dbvar20 panjang = 135; ukuran = 0.2; elseif (var==10) load dbvar10 panjang = 65; ukuran = 0.1; elseif (var==5) load dbvar5 panjang = 31; ukuran = 0.05; end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

36

Gambar 4.4. merupakan program yang digunakan untuk memanggil data yang ada

pada basis data yang kemudian akan dibandingkan dengan jarak Canberra . Setelah

pengguna memilih variasi resizing yang dinginkan misalnya 90% pada popupmenu , maka

data tersebut akan dipanggil dan dibandingkan dengan data pada “dbvar90” begitupun juga

jika pengguna emilih variasi yang lainnya.

4.1.4.2 Program Konversi RGB ke Biner

Program konveri RGB ke Biner berfungsi untuk mengubah citra RGB ke citra biner.

Berdasarkan diagram alir tahap preprocessing pada Gambar 3.5. Program RGB ke biner

dapat dilihat pada Gambar 4.5.

Gambar 4.5. Program Konversi Citra RGB ke Biner

Setelah proses capture gambar dilakukan oleh pengguna, data berupa gambar alat

stasioneri tersebut kemudian akan dipanggil menggunakan sintaks imread. Kemudian untuk

mengubah citra RGB ke citra berskala keabuan atau grayscale dapat menggunakan sintaks

“rgb2gray” sesuai dengan persamaan 2.2 . Sintaks “graysthresh” merupakan metode yang

diimplementasikan dari metode Otsu (persamaan 2.3 sampai 2.8) digunakan untuk mencari

nilai ambang secara otomatis. Nilai hasil dari metode tersebut berupa nilai ambang akan

dikonversi ke citra iner menggunakan sintaks “im2bw”. Contoh hasil program RGB ke biner

dapat dilihat pada Gambar 4.6.

%PROSES KONVERSI RGB KE BINER

x = rgb2gray(imread('coba.jpg'));

level=graythresh(x);

biner= im2bw(x,level);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

37

(a) (b)

(c)

Gambar 4.6. Konversi Citra RGB ke Biner. (a) Citra Masukan (b) citra grayscale (c) citra

hasil konversi gray ke biner.

4.1.4.3 Program Operasi Dilasi

Program dilasi ini berfungsi untuk mendapatkan pelebaran terhadap piksel yang

bernilai 1 dan menghilangkan lubang-lubang kecil pada citra. Pada operasi dilasi ini

diperlukan elemen penstruktur untuk menentukan hasil dari dilasi. Adapun bentuk elemen

penstruktur yang digunakan yaitu ones pada masing-masing tahapan. Berikut adalah ukuran

dan hasil dari elemen penstruktur ditunjukkan pada Gambar 4.7.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

38

(a) Dilasi = 5 (b) Dilasi = 10

(c) Dilasi = 15

Gambar 4.7. Ukuran Elemen Penstruktur

Berdasarkan Gambar 4.7. citra alat stasioneri yang digunakan adalah gunting. Pada

gambar tersebut ditunjukkan beberapa elemen penstruktur sehingga ditentukan elemen

penstruktur yang paling tepat digunakan yaitu ukuran matrik 15x15 yang berisi ‘1’. Pada

dilasi matrik 15x15 tersebut dapat membuat gambar lebih halus pad pinggirannya dan

menutupi semua lubang-lubang kecil pada objek. Berdasarkan diagram alir Gambar 3.5

program untuk operasi dilasi dapat dilihat pada Gambar 4.8.

Gambar 4.8. Program Operasi Dilasi

%OPERASI DILASI C1= ones(15); BW1=imdilate (biner,C1);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

39

4.1.4.4 Program Resizing

Program Resizing berfungsi untuk mengubah ukuran dari suatu citra dengan

mengurangi atau menambahkan jumlah piksel dari citra tersebut. Dalam hal ini citra akan

divariasikan dalam 10 resizing yaitu 90%, 80%, 70%, 60%, 50%, 40%, 30%, 20% dan 10%

5%. Hasil dari resizing akan menjadi masukan pada program ekstraksi ciri. Berikut adalah

program dari resizing dituliskan dalam Gambar 4.9.

Gambar 4.9. Program Resizing

Sintaks “imresize” digunakan untuk meresizing citra ke ukuran yang diinginkan.

Sedangkan “BW1” merupakan citra hasil dari dilasi, “ukuran” merupakan besarnya resizing

contohnya jika 10% maka ukuran yang dimasukkan adalah 0.1, jika 20% maka ukuran yang

dimasukkan adalah 0.2 dan begitupun untuk variasi resizing yang selanjutnya. Gambar 4.9

berikut adalah ukuran resizing dan hasilnya.

(a) Hasil Dilasi (b) Resizing 90%

Gambar 4.9 Variasi Resizing

BW = imresize(BW1,ukuran);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

40

(c) Resizing 50% (d) Resizing 30%

(e) Resizing 10% (f) Resizing 5%

Gambar 4.9 (lanjutan) Variasi Resizing

4.1.4.5 Ekstraksi Ciri

Pada program ektraksi ciri digunakan untuk mengambil informasi yang terdapat

dalam suatu citra yang kemudian akan digunakan sebagai parameter/nilai untuk

membedakan suatu objek dengan objek lainnya. Berdasarkan diagram alir tahap ekstraksi

ciri Gambar 3.6 program ekstraksi ciri dapat dilihat pada Gambar 4.9. Program

“deteksikontur” merupakan program yang digunakan untuk mendapatkan koordinat tepi

(kontur) dari objek alat stasioneri. Selanjutnya fungsi dari program “koderantai” adalah

untuk mendapatkan kode Freeman.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

41

Gambar 4.10. Program Ektraksi Ciri

4.1.4.6 Program Pembanding Jarak Canberra

Pada program pembanding jarak ini menggunakan jarak Canberra sebagai

pembanding hasil antara ekstraksi ciri dengan basis data. Berdasarkan diagram alir jarak

Canberra pada Gambar (bab 2). Program yang digunakan dapat dilihat pada Gambar

Gambar 4.11. Program Pembanding Jarak Canberra

Program pada gambar 4 digunakan untuk memanggil fungsi jarak Canberra, adapun

variabel yang akan dibandingkan adalah ektraksi ciri yaitu “FK” atau kode Freeman dari

objek dengan basis data yaitu “db{1}” sampai dengan “db{9}. Sintaks “minr” merupakan

nilai terkecil dari hasil perhitungan jarak. Nilai tersebut akan menjadi keluaran dari sistem

pengenalan alat stasioneri.

4.1.4.7 Program Penentuan Keluaran

Program Keluaran berfungsi untuk menampilkan hasil dari pengenalan alat stasioneri

yang berupa teks. Berdasarkan diagram alir penentuan keluaran Gambar 3.10. program yang

digunakan dapat dilihat pada Gambar 4.12.

%FUNGSI JARAK r(1)= jarakcanberra(FK, db{1}); r(2)= jarakcanberra(FK, db{2}); r(3)= jarakcanberra(FK, db{3}); r(4)= jarakcanberra(FK, db{4}); r(5)= jarakcanberra(FK, db{5}); r(6)= jarakcanberra(FK, db{6}); r(7)= jarakcanberra(FK, db{7}); r(8)= jarakcanberra(FK, db{8}); r(9)= jarakcanberra(FK, db{9});

%EKTRAKSI CIRI DK = deteksikontur (BW); FK = kodefreeman(DK); FK (panjang)= 0;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

42

Gambar 4.12. Program Penentuan Keluaran

Program pada gambar 4.12. Merupakan program untuk menampilkan hasil berupa

teks dari alat stasioneri. Terdapat 9 pengenalan alat stasioneri yang mewakili masing-masing

nama dari alat stasioneri.

4.1.5 Tombol Reset

Program tombol Reset berfungsi untuk mengembalikan tampilan awal GUI apabila

pengguna ingin memulai kembali dari awal proses pengenalan atau jika terjadi kesalahan

%KELUARAN TEKS if (minr==r(1)) z1={'Gunting'}; set(handles.edit1,'string',z1); elseif(minr==r(2)) z2={'Cutter'}; set(handles.edit1,'string',z2); elseif(minr==r(3)) z3={'Ballpoint'}; set(handles.edit1,'string',z3); elseif(minr==r(4)) z4={'Tipe-x'}; set(handles.edit1,'string',z4); elseif(minr==r(5)) z5={'Pelubang Kertas'}; set(handles.edit1,'string',z5); elseif(minr==r(6)) z6={'Paper Clip'};

set(handles.edit1,'string',z6); elseif(minr==r(7)) z7={'Stabilo'}; set(handles.edit1,'string',z7); elseif(minr==r(8)) z8={'Note(buku catatan'}; set(handles.edit1,'string',z8); elseif(minr==r(9)) z9={'Steples'}; set(handles.edit1,'string',z9); end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

43

pada saat proses pengenalan berlangsung. Program yang digunakan dalam tombol reset

ditunjukkan pada Gambar 4.13.

Gambar 4.13. Program Tombol Reset

4.1.6 Tombol End

Program tombol End (keluar) berfungsi untuk mengakhiri program tampilan GUI

pengenalan alat stasioneri. Program yang digunakan dapat dilihat pada Gambar 4.14.

Gambar 4.14. Program Tombol End

4.2. Pengujian Program Pengenalan Alat Stasioneri Secara Tidak

Langsung

Pengujian secara tidak langsung dilakukan untuk mengetahui apakah sistem sudah

dapat bekerja sesuai dengan perancangan yang telah dirancang sebelumnya. Pengujian ini

dilakukan dengan memasukkan citra satu persatu dengan menuliskan nama dari citra yang

telah di capture dan telah disimpan. Data tersebut kemudian akan diproses dan hasil berupa

teks akan ditampilkan di GUI Matlab. Berikut adalah proses untuk menjalankan program

pengenalan alat stasioneri secara tidak langsung.

1. Membuka software Matlab dengan mengklik kiri pada ikon Matlab.

%RESET axes(handles.axes1) plot(0) axes(handles.axes2) plot(0) set(handles.edit1,'string','') set(handles.popupmenu1, 'value', 2)

function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of

MATLAB % handles structure with handles and user data (see GUIDATA) close

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

44

2. Setelah masuk pada tampilan utama Matlab, langkah selanjutnya membuka

folder dimana program pengenalan alat stasioneri disimpan dengan cara

mengganti Current Folder-nya.

3. Ketik “PENGUJIANTIDAKLANGSUNG” pada Command Window untuk

memanggil program pengujian secara tidak langsung alat stasioneri. Kemudian

tekan tombol “Enter”. Sebagai catatan semua program di RUN terlebih dahulu

untuk memastikan semua program sudah siap untuk dijalankan.

4. Setelah menekan tombo “Enter” akan muncul tampilan pada layar monitor

seperti pada Gambar 4.15.

Gambar 4.15. Tampilan GUI Pengujian Tidak Langsung

Berikut adalah penjelasan tentang fungsi dari tombol dan popupmenu pada gambar

GUI diatas.

a. Tombol “Process” . Saat ditekan maka hasil dari preprocessing, hasil resizing,

dan keluaran teks (text) akan ditampilkan.

b. Tombol “Reset”. Berfungsi untuk mengembalikan setiap axes, popupmenu, dan

edit kembali seperti semula.

c. Tombol “End”. Berfungsi untuk menutup GUI.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

45

d. Popupmenu “variasi resizing”. Berfungsi untuk memilih variasi resizing yang

diinginkan seperti variasi 90%,80%, 70%, 60%, 50%, 40%, 30%, 20% ,10%

dan 5%.

e. Berdasarkan Gambar 4.15 Untuk menjalankan system pengenalan alat

stasioneri secara tidak langsung pengguna harus memasukkan nama dari file

citra yang telah di capture sebelumnya yang berada pada mfile. Setelah itu,

pengguna memilih variasi resizing (90%,80%, 70%, 60%, 50%, 40%, 30%,

20% ,10% dan 5%). Kemudian pengguna menekan tobol process. Untuk hasil

dari pengujian secara tidak langsung dapat dilihat pada Gambar 4.16.

4.16 Contoh ketika GUI Dijalankan untuk alat stasioneri Gunting dengan resizing

10%

4.3. Pengujian Program Pengenalan Alat Stasioneri Secara Langsung.

Pengujian secara langsung cara kerjanya sama seperti pada pengujian secara tidak

langsung. Hanya saja pada pengujian secara langsung data citra alat stasioneri diambil secara

langsung, kemudian data tersebut diproses dan ditampilkan pada GUI Matlab.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

46

Langkah percobaan pengujian secara langsung sama seperti pada langkah 1 dan 2

pada pengujian secara tidak langsung, yang diganti hanya pada nama file program yang

diketikkan di Command Window yaitu “PENGUJIANLANGSUNG”. Setelah nama dari file

program dijalankan maka akan muncul tampilan pada layar monitor seperti Gambar 4.17.

Keterangan untuk tombol yang ada pada Gambar 4.17, Dapat dilihat pada tabel 3.1.

Berdasarkan Gambar 3.12 pengguna mengambil gambar citra alat stasioneri secara langsung

sebagai masukkan. Kemudian pengguna memilih variasi resizing yang ada popupmenu.

Setelah itu pengguna menekan tombol process. Hasil berupa teks ditampilkan pada GUI

matlab dapat dilihat pada Gambar 4.18. Kondisi pengujian secara langsung dapat dilihat

pada Gambar 4.19.

Gambar 4.17 Tampilan GUI Pengujian Secara Langsung

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

47

Gambar 4.18 Contoh ketika GUI Dijalankan untuk alat stasioneri Steples dengan

resizing 10%

Gambar 4.19 Gambaran Kondisi Ruangan Tugas Akhir saat Pengujian

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

48

4.4 Analisis Hasil Data Pengujian secara Tidak Langsung

Pengujian secara tidak langsung menggunakan gambar alat stasioneri sebanyak 90

gambar (9 alat stasioneri x 10 variasi resizing) dengan pengulangan sebanyak 10 kali.

Pengujian secara tidak langsung dilakukan dengan mengubah ukuran resizing yang

diinginkan. Adapun tujuan dari pengujian secara tidak langsung adalah untuk mengetahui

apakah sistem berjalan dengan baik dan meneliti variasi resizing yang digunakan terhadap

tingkan pengenalan alat stasioneri serta mencari nilai variasi terkecil dengan tingkat

pengenalan terbaik.

Adapun beberap tahap dalam pengujian secara tidak langsung yaitu tahap pertama

adalah memberi nama setiap gambar alat stasioneri yang diperoleh dari proses capture.

Kemudian menentukan variasi resizing yang akan digunakan. Kemudian untuk melihat hasil

dari pengenalan alat stasioneri dengan menekan tombol “process” . hasil akhir berupa teks

akan ditampilkan pada GUI matlab. Pengaruh variasi resizing terhadap tingkat pengenalan

secara tidak langsung dapat dilihat pada Tabel 4.1. Untuk mendapatkan persentase tingkat

pengenalan digunakan rumus :

Tingkat Pengenalan : 𝒗

𝒏 𝑥 100% 4.1

Keterangan : Σv = Jumlah alat stasioneri yang dikenali dan benar

n = Banyaknya percobaan

Tabel 4.1. Pengaruh Variasi Resizing terhadap tingkat pengenalan

Variasi Resizing (%) Koefisien ekstraksi

ciri

Tingkat Pengenalan

(%)

90 612 100

80 542 100

70 474 100

60 406 100

50 338 100

40 270 100

30 201 100

20 134 100

10 64 100

5 30 100

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

49

Berdasarkan data pada Tabel 4.1. dapat disimpulkan bahwa nilai variasi resizing

terkecil dengan tingkat pengenalan terbaik yaitu 5% atau 0.05 karena mampu mengenali

alat-alat stasioneri dengan tingkat pengenalan 100%.

4.5. Analisis Hasil Data Pengujian secara Langsung.

Pengujian secara langsung dilakukan sebanyak 5 kali pengulangan sehingga data

yang diambil sebanyak 507 dengan jarak webcam ke objek 48cm. Data tersebut merupakan

9 alat stasioneri x 10 variasi resizing x 5 kali pengujian sehingga didapatkan data sebanyak

450. Serta sebagai tambahan meneliti pengaruh rotasi yaitu 45°, 90°, dan 180° , variasi

translasi yang digunakan yaitu saat objek digeser ke kiri, kanan, atas dan bawah dari posisi

awal sebanyak 3 cm serta variasi skala 41cm dan 54cm. Variasi skala ini mengikuti tinggi

dari fixture yang digunakan. Pengujian ini dilakukan di ruang Tugas Akhir Teknik Elektro.

Intensitas cahaya pada pengujian ini diatur agar tidak ada bayangan pada alat-alat stasioneri.

Tujuan dari pengujian secara tidak langsung ini adalah untuk mengetahui apakah

program berjalan dengan baik serta mencari nilai variasi resizing terkecil dengan tingkat

pengenalan terbaik, dan sebagai tambahan meneliti pengaruh variasi rotasi dan translasi

terhadap tingkat pengenalan alat stasioneri.

Pada pengujian secara langsung alat stasioneri diletakkan tepat berada dibawah

webcam. Hasil dari ekstraksi ciri menggunakan kode Freeman ditunjukkan pada Tabel 4.1

dan 4.2. Pada Tabel 4.1. dapat dilihat bahwa hingga variasi 10% tingkat pengenalan masih

100%, untuk hasil pengujian variasi 90%,80%,70%,60%,50%,40%,30%,dan 20% dapat

dilihat pada lampiran 2. Namun pada saat resizing 5% pada Tabel 4.2. terjadi kesalahan saat

mengenali objek. Objek steples dikenali sebagai stabilo. Hasil ini tentu berbeda dengan

pengujian secara tidak langsung yang menunjukkan tingkat pengenalan pada resizing 5%

adalah 100%. Hal ini terjadi karena ektraksi ciri menggunakan kode Freeman memiliki

kelemahan. Menurut Levner[14] representasi kode Freeman sebenarnya memiiki kelemahan

yaitu sebagai berikut :

1. Kode cenderung Panjang.

2. Sensitif terhadap distorsi dan segmentasi yang tidak sempurna.

3. Sangat bergantung pada penyekalaan ataupun rotasi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

50

Jadi pengujian saat resizing 5% tidak berjalan sesuai saat pengujian secara tidak langsung

itu karena saat objek di capture posisi objek tidak dalam posisi yang sama dengan gambar

yang dijadikan data base. Meskipun pada saat resizing

90%,80%,70%,60%,50%,40%,30%,20% dan 10% objek masih dapat dikenali namun pada

saat resizing 5% terjadi kesalahan pada pengenalan objek.

Tabel 4.2 Hasil PengujianVariasi Resizing 10% dengan koefisien ekstraksi ciri 64

Alat Stasioneri Variasi Resizing Dikenali sebagai

Gunting 10% Gunting

Stabilo

Stabilo

Tipe-x

Tipe-x

Paper Clip

Paper Clip

Pelubang Kertas

Pelubang Kertas

Ballpoint

Ballpoint

Steples

Steples

Note

Note

Cutter

Cutter

Tabel 4.3. Hasil Pengujian Variasi Resizing 5%

Alat Stasioneri Variasi Resizing Dikenali Sebagai

Gunting 5% Gunting

Stabilo

Stabilo

Tipe-x

Tipe-x

Paper Clip

Paper Clip

Pelubang Kertas

Pelubang Kertas

Ballpoint

Ballpoint

Steples

Stabilo

Note

Note

Cutter

Cutter

Alat stasioneri dapat dikatakan mirip apabila hasil perhitungan fungsi jarak Canberra

memiliki hasil yang paling kecil. Pada saat proses perhitungan fungsi jarak, hasil

perhitungan akan diurutkan dari nilai yang terkecil hingga terbesar. Objek yang

menghasilkan nilai terendah adalah citra yang mirip dengan citra yang ada pada basis data.

Jarak minimum yang diambil dari setiap percobaan yang dilakukan sebanyak 5 kali dapat

dilihat pada lampiran 2.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

51

Tabel 4.4 Pengaruh Variasi Resizing Terhadap Tingkat Pengenalan

Variasi Resizing (%) Koefisien ekstraksi

ciri

Tingkat Pengenalan

(%)

90 612 100

80 542 100

70 474 100

60 406 100

50 338 100

40 270 100

30 201 100

20 134 100

10 64 100

5 30 88

Berdasarkan data pada Tabel 4.4 persentase tingkat pengenalan untuk koefisien

ekstraksi ciri Kode Freeman sejumlah 30 adalah 88% karena terjadi kesalahan pengenalan

pada objek yang ada pada resizing 5% dimana ukuran dari objek serta Panjang kode rantai

objek sudah berbeda dengan data basenya sedangkan untuk kofisien 612, 542, 474, 406, 338,

270, 201, 134, dan 64 memiliki persentase tingkat pengenalan 100%. Sehingga dapat

disimpulkan bahwa nilai koefisien dari variasi resizing terkecil dengan tingkat pengenalan

terbaik yaitu menggunakan koefisien 64. Sebagai tambahan penelitian ini juga meneliti

pengaruh variasi rotasi, skala dan translasi dapat dilihat pada tabel 4.5 sampai 4.6.

Tabel 4.5 Pengaruh Variasi Translasi Terhadap Tingkat Pengenalan

Pengaruh Translasi

Translasi

Alat stasioneri

Kanan 3cm

(%)

Kiri 3cm

(%)

Atas 3cm

(%)

Bawah 3cm

(%)

Gunting

100

100

100

100

Stabilo

Tipe-x

Paper Clip

Pelubang Kertas

Ballpoint

Steples

Note

Cutter

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

52

Berdasarkan Tabel 4.5 variasi translasi dilakukan terhadap resizing 10% yang

memiliki koefisien eksraksi ciri 64, merupakan koefisien terkecil dengan tingkat pengenalan

terbaik. Jarak translasi dari titik tengah objek dapat digeser sejauh 3 cm. Disimpulkan bahwa

variasi translasi memiliki tingkat pengenalan yang baik. Untuk posisi translasi yang diuji

dapat dilihat pada Gambar 4.20. Selain meneliti pengaruh translasi pada penelitian ini juga

meneliti variasi rotasi terhadap resizing 10% dapat dilihat pada Tabel 4.7 dan Tabel 4.8.

(a) (b)

(c) (d)

Gambar 4.20 Posisi Tranlasi yang dapat Dikenali (a) Pojok Kiri Atas(b) Tengah Atas (c)

Pojok Kanan Atas (d) Kanan 3cm (e) Pojok Kanan Bawah (f) Tengah Bawah (g) Pojok

Kiri Bawah (h) Kiri 3cm

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

53

(e) (f)

(g) (h)

Gambar 4.20 (lanjutan) Posisi Translasi yang dapat Dikenali Posisi Tranlasi yang dapat

Dikenali (a) Pojok Kiri Atas(b) Tengah Atas (c) Pojok Kanan Atas (d) Kanan 3cm (e)

Pojok Kanan Bawah (f) Tengah Bawah (g) Pojok Kiri Bawah (h) Kiri 3cm

Tabel 4.6. Pengaruh Variasi Rotasi

Pengaruh Rotasi

Rotasi

Alat stasioneri

Dikenali sebagai

45° 90° 180°

Gunting cutter gunting gunting

Stabilo Tipe-x Paper Clip Tipe-x

Tipe-x Tipe-x Paper Clip Tipe-x

Paper Clip Tipe-x Paper Clip Paper Clip

Pelubang Kertas stabilo pelubang kertas pelubang kertas

Ballpoint Paper Clip pelubang kertas Ballpoint

Steples cutter gunting pelubang kertas

Note cutter note Note

Cutter stabilo cutter Cutter

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

54

Berdasarkan Tabel 4.6 8 pengujian terhadap variasi rotasi 45°, 90° dan 180° yang

dilakukan terhadap resizing 10%. Pada Tabel 4.8 dapat dilihat hasil dari rotasi sangat buruk.

contohnya pada kolom rotasi 45° hanya ada 1 benda yang bisa dikenali yaitu Tipe-x yang

berarti persentase pada rotasi 45° sebesar 11%. Selanjutnya pada kolom 90° hanya ada 5

benda yang bisa dikenali, selebihnya tidak yang berarti persentase pada rotasi 90° sebesar

55%. Sedangkan untuk kolom 180° benda yang dikenali hanya 7 benda dan tingkat

pengenalan sebesar 77%. Sehingga dapat disimpulkan bahwa perubahan rotasi pada alat

stasioneri sangat mempengaruhi tingkat pengenalan karena perubahan bentuk dari kontur

objek akan mengubah deretan kode Freeman objek tersebut. Selanjutnya pada Tabel 4.9

pengaruh variasi skala 41cm dan 54cm.

Tabel 4.7 Pengaruh Variasi Skala

Pengaruh Skala

Rotasi

Alat stasioneri

Dikenali sebagai

𝟒𝟖

𝟒𝟏𝒙 𝟏𝟎𝟎% = 𝟏𝟏𝟕%

𝟒𝟖

𝟓𝟒𝒙𝟏𝟎𝟎% = 𝟖𝟖%

Gunting Note cutter

Stabilo Cutter tipe-x

Tipe-x Stabilo tipe-x

Paper Clip Cutter tipe-x

Pelubang Kertas Note cutter

Ballpoint Note cutter

Steples Note stabilo

Note note pelubang kertas

Cutter Note stabilo

Berdasarkan tabel 4.7 pengaruh skala diuji pada resizing 10% yang merupakan

variasi koefisien terkecil dengan tingkat pengenalan terbaik. Pengujian skala dilakukan pada

jarak 41cm dan 54cm, pemilihan jarak tersebut karena menyesuaikan sanggahan yang ada

pada fixture sedangkan untuk jarak normalnya adalah 48cm. Pada kolom 41cm benda yang

dikenali dan benar hanya 1 benda selebihnya dikenali namun salah. Ini karena panjang kode

rantai antara objek yang di capture berbeda dengan yang ada pada database. Misalnya pada

pengenalan gunting pada kolom 41 cm pada tabel 4.7 pada kolom 41 cm gunting dikenali

sebagai note. Hal ini terjadi karena panjang kode rantai gunting sama dengan panjang kode

rantai note. Sehingga tingkat pengenalan pada skala 41 dapat dikatakan buruk dengan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

55

persentase pengenalan 11%. Selanjutnya pada kolom 54cm untuk tingkat pengenalannya

juga buruk dengan persentase 11% karena hanya ada 1 objek saja yang dapat dikenali dari 9

objek yang ada. Sehingga dapat disimpulkan bahwa variasi skala mempengaruhi tingkat

pengenalan alat-alat stasioneri.

Tabel 4.8 Rerata Pengaruh Translasi, Rotasi dan Skala pada Tingkat Pengenalan

Alat-alat Stasioneri

Variasi Tingkat Pengenalan (%)

Tranlasi 100

Rotasi 47.6

Skala 11

Pada pengujian ini objek yang dikenali harus berwarna lebih terang karena latar

belakangnya berwarna gelap yaitu warna hitam. Apabila objek berwarna gelap juga maka

akan mempengaruhi proses preprocessing sehingga program menjadi error. Selain itu pada

saat pengujian diusahakan tidak ada bayangan dan mendapatkan pencahayaan yang baik

karena jika tidak sesuai maka akan mempengaruhi proses pengenalan.

Berdasarkan hasil pengujian secara langsung dapat disimpulkan bahwa pengenalan

alat stasioneri secara langsung berbasis ekstraksi ciri kode Freeman sudah lebih baik dari

penelitian sebelumnya[1]. Hal ini dapat dilihat dari nilai koefisien kode Freeman terkecil

yang digunakan yaitu sejumah 64 dengan persentase tingkat pengenalan mencapai 100%.

Serta sebagai tambahan rata-rata pengaruh variasi translasi yaitu dengan tingkat pengenalan

100%.

4.6 Keterbatasan Metodologi

1. Pada saat proses pengujian diusahakan objek mendapatkan pencahayaan yang baik

serta diusahakan tidak ada bayangan.

2. Alat stasioneri yang digunakan harus berwarna terang ini karena latar belakang objek

berwarna gelap yaitu hitam. Jika alat stasioneri berwarna gelap akan mempengaruhi

proses preprocessing sehingga program akan menjadi error.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

56

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan hasil pengujian sistem pengenalan alat stasioneri dapat disimpulkan

sebagai berikut :

1. Sistem pengenalan alat stasioneri dengan ekstraksi ciri kode Freeman dan fungsi

jarak Canberra berjalan sesuai dengan yang diharapkan serta lebih baik dari

penelitian sebelumnya. Hal tersebut dapat dilihat dari hasil pengujian pengenalan

alat stasioneri yang baik dan dapat mengenali semua objek pada Kode Freeman

terkecil sejumlah 64 pada resizing 10%.

2. Kode Freeman terkecil dengan tingkat pengenalan terbaik yaitu sejumlah 64

pada resizing 10% didapatkan persentase variasi translasi 100%, variasi rotasi

47.6% dan variasi skala 11%.

3. Dari hasil pengujian variasi rotasi dan skala didapatkan hasil bahwa kedua variasi

tersebut belum bisa mengenali benda dengan baik. Hal ini menunjukkan bahwa

ekstrasi ciri dengan menggunakan kode Freeman sangat rentan terhadap

perubahan posisi dan skala benda.

5.2 Saran

Dengan dibuatnya software pengenalan alat stasioneri ini, saran yang dapat diberikan

dalam pengembangan kedepan antara lain:

1. Membuat program agar ektraksi ciri kode Freeman bebas rotasi dan skala.

2. Mencoba ekstraksi ciri lain untuk pengenalan objek yang labih baik.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

57

DAFTAR PUSTAKA

[1] Febriyanto, 2009, Pengenalan Alat-alat Stasioneri secara RealTime Menggunakan

Ekstraksi Ciri DST, Tugas Akhir, Jurusan Teknik Elektro, FST, Universitas Sanata

Dharma, Yogyakarta.

[2] Yuliana, Nur., dkk. 2009. Pedekatan Kode Rantai Sebagai Dasar Pengenalam

Karakter, Seminar Nasional Aplikasi Teknologi Informasi 2009 (SNATI 2009),

Fakultas Ilmu Komputer, Universitas Guna Darma. Yogyakarta.

[3] Nivsky, E.C., Ernawati, Purwandari, E.P., 2016, Aplikasi Biometrika Pencocokan

Citra Daun Telinga Berbasis Tekstur dan Bentuk Menggunakan Metode

Transformasi Wavelet dan Chain Code, Jurnal Rekursif, vol. 4 no.3, hal 326.

[4] Kamus Besar Bahasa Indonesia

[5] https://www.logitech.com/en-in/product/hd-webcam-c270. Diakses pada tanggal 05

november 2017.

[6] Putra, Dharma, 2010, Pengolahan Citra Digital, Andi, Yogyakarta.

[7] http://www.vedcmalang.com/pppptkboemlg/index.php/menuutama/teknologi-

informasi/862-menghitung-jumlah-orang-dengan-deteksi-wajah. Diakses pada

tanggal 05 November 2017

[8] Madenda, Sariffudin, 2015, Pengolahan Citra dan Video Digital, Erlangga, Jakarta.

[9] http://thyamersita.blogspot.co.id/2016/10/penerapan-aplikasi-computer-vision.html.

diakses pada tanggal 05 des 2017.

[10] Wijaya, M.Ch.,Prijono, Agus. 2007, Pengolahan Citra Digital Menggunakan

Matlab. Informatika. Bandung.

[11] https://koleksibukukuliah.blogspot.co.id/2017/01/jenis-citra.html. Diakses pada

tanggal 5 Desember 2017

[12] Fatta, H.A.,2007, Konversi Format Citra RGB ke Format Grayscale Menggunakan

Visual Basic. Seminar Nasional Teknologi, STIMIK AMIKOM Yogyakarta.

[13] http://matlab.izmiran.ru/help/toolbox/images/intro6.html. Diakses pada tanggal 11

november 2017

[14] Kadir,A., Susanto, A., 2013, Teori dan Aplikasi Pengolahan Citra, Andi,

Yogyakarta.

[15] Otsu, N., A Threshold Selection Method from Gray-Level Histograms, IEEE

Transactions on Systems, Man, and Cybernetics, vol 9.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

1

LAMPIRAN 1

LISTING PROGRAM

LISTING PROGRAM SECARA TIDAK LANGSUNG

function varargout = Pengujiantidaklansung(varargin) % PENGUJIANTIDAKLANSUNG MATLAB code for Pengujiantidaklansung.fig % PENGUJIANTIDAKLANSUNG, by itself, creates a new PENGUJIANTIDAKLANSUNG

or raises the existing % singleton*. % % H = PENGUJIANTIDAKLANSUNG returns the handle to a new

PENGUJIANTIDAKLANSUNG or the handle to % the existing singleton*. % % PENGUJIANTIDAKLANSUNG('CALLBACK',hObject,eventData,handles,...)

calls the local % function named CALLBACK in PENGUJIANTIDAKLANSUNG.M with the given

input arguments. % % PENGUJIANTIDAKLANSUNG('Property','Value',...) creates a new

PENGUJIANTIDAKLANSUNG or raises the % existing singleton*. Starting from the left, property value pairs

are % applied to the GUI before Pengujiantidaklansung_OpeningFcn gets

called. An % unrecognized property name or invalid value makes property

application % stop. All inputs are passed to Pengujiantidaklansung_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

% Edit the above text to modify the response to help Pengujiantidaklansung

% Last Modified by GUIDE v2.5 22-May-2018 23:45:04

% Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Pengujiantidaklansung_OpeningFcn,

... 'gui_OutputFcn', @Pengujiantidaklansung_OutputFcn,

... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

2

if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT

% --- Executes just before Pengujiantidaklansung is made visible. function Pengujiantidaklansung_OpeningFcn(hObject, eventdata, handles,

varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Pengujiantidaklansung (see VARARGIN)

% Choose default command line output for Pengujiantidaklansung handles.output = hObject;

% Update handles structure guidata(hObject, handles);

% UIWAIT makes Pengujiantidaklansung wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line. function varargout = Pengujiantidaklansung_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)

% Get default command line output from handles structure varargout{1} = handles.output;

% --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%DATABASE %PopUpMenu var = handles.var; if (var==90) load dbvar90 panjang = 613; ukuran = 0.9; elseif (var==80) load dbvar80 panjang = 543; ukuran = 0.8; elseif (var==70) load dbvar70

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

3

panjang = 475; ukuran = 0.7; elseif (var==60) load dbvar60 panjang = 407; ukuran = 0.6; elseif (var==50) load dbvar50 panjang = 339; ukuran = 0.5; elseif (var==40) load dbvar40 panjang = 271; ukuran = 0.4; elseif (var==30) load dbvar30 panjang = 202; ukuran = 0.3; elseif (var==20) load dbvar20 panjang = 135; ukuran = 0.2; elseif (var==10) load dbvar10 panjang = 65; ukuran = 0.1; elseif (var==5) load dbvar5 panjang = 31; ukuran = 0.05; end

%========================================================================

== %PROSES KONVERSI RGB KE BINER x = rgb2gray(imread('gunting.jpg')); level=graythresh(x); biner= im2bw(x,level); axes(handles.axes1) imshow(biner)

%OPERASI DILASI C1= ones(15); BW1=imdilate (biner,C1);

BW = imresize(BW1,ukuran); axes(handles.axes2) imshow(BW)

%EKTRAKSI CIRI DK = deteksikontur (BW); FK = kodefreeman(DK); FK (panjang)= 0;

SFK = size (FK); Sdb1 = size (db{1}); Sdb2 = size (db{2});

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

4

Sdb3 = size (db{3}); Sdb4 = size (db{4}); Sdb5 = size (db{5}); Sdb6 = size (db{6}); Sdb7 = size (db{7}); Sdb8 = size (db{8}); Sdb9 = size (db{9}); sdb = [Sdb1 ;Sdb2; Sdb3; Sdb4; Sdb5; Sdb6; Sdb7; Sdb8; Sdb9;];

r(1) = jarakcanberra(FK, db{1}); r(2) = jarakcanberra(FK, db{2}); r(3) = jarakcanberra(FK, db{3}); r(4) = jarakcanberra(FK, db{4}); r(5) = jarakcanberra(FK, db{5}); r(6) = jarakcanberra(FK, db{6}); r(7) = jarakcanberra(FK, db{7}); r(8) = jarakcanberra(FK, db{8}); r(9) = jarakcanberra(FK, db{9}); r; minr=min(r);

%KELUARAN TEKS if (minr==r(1)) z1={'Gunting'}; set(handles.edit1,'string',z1); elseif(minr==r(2)) z2={'Cutter'}; set(handles.edit1,'string',z2); elseif(minr==r(3)) z3={'Ballpoint'}; set(handles.edit1,'string',z3); elseif(minr==r(4)) z4={'Tipe-x'}; set(handles.edit1,'string',z4); elseif(minr==r(5)) z5={'Pelubang Kertas'}; set(handles.edit1,'string',z5); elseif(minr==r(6)) z6={'Paper Clip'}; set(handles.edit1,'string',z6); elseif(minr==r(7)) z7={'Stabilo'}; set(handles.edit1,'string',z7); elseif(minr==r(8)) z8={'Note(buku catatan)'}; set(handles.edit1,'string',z8); elseif(minr==r(9)) z9={'Steples'}; set(handles.edit1,'string',z9); end

% --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%RESET axes(handles.axes1)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

5

plot(0) axes(handles.axes2) plot(0) set(handles.edit1,'string','') set(handles.popupmenu1, 'value',1)

% --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: contents = cellstr(get(hObject,'String')) returns popupmenu1

contents as cell array % contents{get(hObject,'Value')} returns selected item from

popupmenu1 indeks = get(handles.popupmenu1,'value'); switch indeks case 2 var=90; case 3 var=80; case 4 var=70; case 5 var=60; case 6 var=50; case 7 var=40; case 8 var=30; case 9 var=20; case 10 var=10; case 11 var=5; end handles.var=var; guidata(hObject,handles);

function x1 = prepros (a) x2 = graythresh(a); BW2= im2bw(a,x2);

%operasi opening D1= ones(15); x1 =imdilate (BW2,D1);

function [KM] = deteksikontur (DK) [jum_baris, jum_kolom] = size(DK); %peroleh pixel awal selesai = false ; for p = 1 : jum_baris for q = 1 : jum_kolom if DK (p,q) == 1 b0.y = p;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

6

b0.x = q;

selesai = true; break; end end if selesai break; end end c0 = 4; %arah barat %periksa 8 tetangga dan cari piksel pertama bernilai 1

for p = 1 : 8 [dy, dx] = delta_piksel (c0); if DK (b0.y + dy, b0.x + dx) == 1 b1.y = b0.y + dy; b1.x = b0.x + dx;

c1 = sebelum (c0); break; else c0 = berikut (c0); end end

KM = []; KM(1, 1) = b0.y; KM(1, 2) = b0.x; KM(2, 1) = b1.y; KM(2, 2) = b1.x;

%kontur n = 2; %jumlah piksel dalam kontur

b = b1; c = c1;

%ulang sampai berakhir while true for p = 1 : 8 [dy, dx] = delta_piksel (c); if DK (b.y + dy, b.x + dx) == 1 b.y = b.y + dy; b.x = b.x + dx;

c = sebelum (c);

n = n + 1; KM(n, 1) = b.y; KM(n, 2) = b.x;

break else c = berikut (c); end end %kondisi pengakhir pengulangan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

7

if (b.y == b0.y) && (b.x == b0.x) break; end end

return

function [b] = berikut (x) if x == 0 b = 7; else b = x - 1; end

function [s] = sebelum(x) if x == 7 s = 0; else s = x + 1; end

if s < 2 s = 2; elseif s < 4 s = 4; elseif s < 6 s = 6; else s = 0; end

function [dy, dx] = delta_piksel(id) if id == 0 dx = 1; dy = 0; elseif id == 1 dx = 1; dy= -1; elseif id == 2 dx = 0; dy = -1; elseif id == 3 dx = -1; dy = -1; elseif id == 4 dx = -1; dy = 0; elseif id == 5 dx = -1; dy = 1; elseif id == 6 dx = 0; dy = 1; elseif id == 7 dx = 1; dy = 1; end

% --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

% Hint: popupmenu controls usually have a white background on Windows.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

8

% See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a

double

% --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close

%========================================================================

====

%========================================================================

====function [FK] = kodefreeman(DK) %chain code digunakan untuk mendapatkan titik awal (x, y) dan %kode rantai dari kotur U yang dataya telahh terurutkan misalnya melalui %get kontur FK = [ ]; for p=2 : length(DK) deltay = DK(p, 1) - DK(p-1, 1); deltax = DK(p, 2) - DK(p-1, 2); indeks = 3 * deltay + deltax + 5; FK = [ FK ; indeks ]; End

%========================================================================

====

%========================================================================

====

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

9

function z=jarakcanberra(x,y) if length (x) > length (y) y(length(x)) = 0; end x = x+eps; y = y+eps; z =sum((abs(x-y))./(x+y))

end

LISTING PROGRAM PENGUJIAN SECARA LANGSUNG

function varargout = PEENGUJIANLANGSUNG(varargin) % PEENGUJIANLANGSUNG MATLAB code for PEENGUJIANLANGSUNG.fig % PEENGUJIANLANGSUNG, by itself, creates a new PEENGUJIANLANGSUNG or

raises the existing % singleton*. % % H = PEENGUJIANLANGSUNG returns the handle to a new

PEENGUJIANLANGSUNG or the handle to % the existing singleton*. % % PEENGUJIANLANGSUNG('CALLBACK',hObject,eventData,handles,...) calls

the local % function named CALLBACK in PEENGUJIANLANGSUNG.M with the given

input arguments. % % PEENGUJIANLANGSUNG('Property','Value',...) creates a new

PEENGUJIANLANGSUNG or raises the % existing singleton*. Starting from the left, property value pairs

are % applied to the GUI before PEENGUJIANLANGSUNG_OpeningFcn gets

called. An % unrecognized property name or invalid value makes property

application % stop. All inputs are passed to PEENGUJIANLANGSUNG_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

% Edit the above text to modify the response to help PEENGUJIANLANGSUNG

% Last Modified by GUIDE v2.5 15-May-2018 22:47:59

% Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @PEENGUJIANLANGSUNG_OpeningFcn, ... 'gui_OutputFcn', @PEENGUJIANLANGSUNG_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1})

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

10

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT

% --- Executes just before PEENGUJIANLANGSUNG is made visible. function PEENGUJIANLANGSUNG_OpeningFcn(hObject, eventdata, handles,

varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to PEENGUJIANLANGSUNG (see VARARGIN)

% Choose default command line output for PEENGUJIANLANGSUNG handles.output = hObject;

% Update handles structure guidata(hObject, handles);

% UIWAIT makes PEENGUJIANLANGSUNG wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line. function varargout = PEENGUJIANLANGSUNG_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)

% Get default command line output from handles structure varargout{1} = handles.output;

% --- Executes on button press in Camera On. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global camvid; axes(handles.axes1); info=imaqhwinfo('winvideo'); dev_info=imaqhwinfo('winvideo',1); camvid = videoinput('winvideo',1,'RGB24_640x480'); camvid.FramesPerTrigger=1; triggerconfig(camvid,'manual'); camRes = get(camvid,'VideoResolution'); imWidth = 640; imHeight = 480; nBands = get(camvid,'NumberOfBands');

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

11

hImage = image(zeros(imHeight, imWidth, nBands),'parent', handles.axes1); preview(camvid,hImage);

% --- Executes on button press in Capture. function Capture_Callback(hObject, eventdata, handles) % hObject handle to Capture (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) %capture global picture; global camvid; pause(0.5); stoppreview(camvid); picture = getsnapshot (camvid); handles.picture=picture; axes(handles.axes1); imshow(picture); imwrite(picture,'coba.jpg');

% --- Executes on button press in PROCESS. function PROCESS_Callback(~, eventdata, handles) % hObject handle to PROCESS (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%DATABASE %PopUpMenu var = handles.var; if (var==90) load dbvar90 panjang = 613; ukuran = 0.9; elseif (var==80) load dbvar80 panjang = 543; ukuran = 0.8; elseif (var==70) load dbvar70 panjang = 475; ukuran = 0.7; elseif (var==60) load dbvar60 panjang = 407; ukuran = 0.6; elseif (var==50) load dbvar50 panjang = 339; ukuran = 0.5; elseif (var==40) load dbvar40 panjang = 271; ukuran = 0.4; elseif (var==30) load dbvar30 panjang = 202; ukuran = 0.3; elseif (var==20) load dbvar20

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

12

panjang = 135; ukuran = 0.2; elseif (var==10) load dbvar10 panjang = 65; ukuran = 0.1; elseif (var==5) load dbvar5 panjang = 31; ukuran = 0.05; end

%========================================================================

== %PROSES KONVERSI RGB KE BINER x = rgb2gray(imread('coba.jpg')); level=graythresh(x); biner= im2bw(x,level); axes(handles.axes1) imshow(biner) %OPERASI DILASI C1= ones(15); BW1=imdilate (biner,C1); BW = imresize(BW1,ukuran); axes(handles.axes2) imshow(BW)

%EKTRAKSI CIRI DK = deteksikontur (BW); FK = kodefreeman(DK); FK (panjang)= 0;

SFK = size (FK); Sdb1 = size (db{1}); Sdb2 = size (db{2}); Sdb3 = size (db{3}); Sdb4 = size (db{4}); Sdb5 = size (db{5}); Sdb6 = size (db{6}); Sdb7 = size (db{7}); Sdb8 = size (db{8}); Sdb9 = size (db{9}); sdb = [Sdb1 ;Sdb2; Sdb3; Sdb4; Sdb5; Sdb6; Sdb7; Sdb8; Sdb9;];

r(1) = jarakcanberra(FK, db{1}); r(2) = jarakcanberra(FK, db{2}); r(3) = jarakcanberra(FK, db{3}); r(4) = jarakcanberra(FK, db{4}); r(5) = jarakcanberra(FK, db{5}); r(6) = jarakcanberra(FK, db{6}); r(7) = jarakcanberra(FK, db{7}); r(8) = jarakcanberra(FK, db{8}); r(9) = jarakcanberra(FK, db{9});

r; minr=min(r);

%keluaran teks

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

13

if (minr==r(1)) z1={'Gunting'}; set(handles.edit1,'string',z1); elseif(minr==r(2)) z2={'Cutter'}; set(handles.edit1,'string',z2); elseif(minr==r(3)) z3={'Ballpoint'}; set(handles.edit1,'string',z3); elseif(minr==r(4)) z4={'Tipe-x'}; set(handles.edit1,'string',z4); elseif(minr==r(5)) z5={'Pelubang Kertas'}; set(handles.edit1,'string',z5); elseif(minr==r(6)) z6={'Paper Clip'}; set(handles.edit1,'string',z6); elseif(minr==r(7)) z7={'Stabilo'}; set(handles.edit1,'string',z7); elseif(minr==r(8)) z8={'Note(buku catatan'}; set(handles.edit1,'string',z8); elseif(minr==r(9)) z9={'Steples'}; set(handles.edit1,'string',z9); end

% --- Executes on button press in RESET. function RESET_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%RESET axes(handles.axes1) plot(0) axes(handles.axes2) plot(0) set(handles.edit1,'string','') set(handles.popupmenu1, 'value',2)

function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a

double

% --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

14

% handles empty - handles not created until after all CreateFcns

called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

% Hints: contents = cellstr(get(hObject,'String')) returns popupmenu1

contents as cell array % contents{get(hObject,'Value')} returns selected item from

popupmenu1

%popupmenu1 indeks = get(handles.popupmenu1,'value'); switch indeks case 2 var=90; case 3 var=80; case 4 var=70; case 5 var=60; case 6 var=50; case 7 var=40; case 8 var=30; case 9 var=20; case 10 var=10; case 11 var=5; end handles.var=var; guidata(hObject,handles);

% --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns

called

% Hint: popupmenu controls usually have a white background on Windows.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

15

% See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in END. function END_Callback(hObject, ~, handles) % hObject handle to END (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%TOMBOL END close

%===========================================================

%=========================================================== function DK = deteksikontur (BW) %INBOUND_TRACING Memperoleh kontur yang telah terurutkan dgn menggunakan %algoritma pelacakan kontur moore

[jum_baris, jum_kolom] = size(BW); %peroleh pixel awal selesai = false ; for p = 1 : jum_baris for q = 1 : jum_kolom if BW (p,q) == 1 b0.y = p; b0.x = q;

selesai = true; break; end end if selesai break; end end c0 = 4; %arah barat %periksa 8 tetangga dan cari piksel pertama bernilai 1

for p = 1 : 8 [dy, dx] = delta_piksel (c0); if BW (b0.y + dy, b0.x + dx) == 1 b1.y = b0.y + dy; b1.x = b0.x + dx;

c1 = sebelum (c0); break; else c0 = berikut (c0); end end

DK = []; DK(1, 1) = b0.y; DK(1, 2) = b0.x; DK(2, 1) = b1.y;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

16

DK(2, 2) = b1.x;

%kontur n = 2; %jumlah piksel dalam kontur

b = b1; c = c1;

%ulang sampai berakhir while true for p = 1 : 8 [dy, dx] = delta_piksel (c); if BW (b.y + dy, b.x + dx) == 1 b.y = b.y + dy; b.x = b.x + dx;

c = sebelum (c);

n = n + 1; DK(n, 1) = b.y; DK(n, 2) = b.x;

break else c = berikut (c); end end %kondisi pengakhir pengulangan if (b.y == b0.y) && (b.x == b0.x) break; end end

return

function [b] = berikut (x) if x == 0 b = 7; else b = x - 1; end

function [s] = sebelum(x) if x == 7 s = 0; else s = x + 1; end

if s < 2 s = 2; elseif s < 4 s = 4; elseif s < 6 s = 6; else s = 0; end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

17

function [dy, dx] = delta_piksel(id) if id == 0 dx = 1; dy = 0; elseif id == 1 dx = 1; dy= -1; elseif id == 2 dx = 0; dy = -1; elseif id == 3 dx = -1; dy = -1; elseif id == 4 dx = -1; dy = 0; elseif id == 5 dx = -1; dy = 1; elseif id == 6 dx = 0; dy = 1; elseif id == 7 dx = 1; dy = 1; end

%============================================================

===

%============================================================

=== function [FK] = kodefreeman(DK) %chain code digunakan untuk mendapatkan titik awal (x, y) dan %kode rantai dari kotur U yang dataya telahh terurutkan misalnya melalui %get kontur FK = [ ]; for p=2 : length(DK) deltay = DK(p, 1) - DK(p-1, 1); deltax = DK(p, 2) - DK(p-1, 2); indeks = 3 * deltay + deltax + 5; FK = [ FK ; indeks ]; end

%============================================================

===

%============================================================

=== function z=jarakcanberra(x,y) if length (x) > length (y) y(length(x)) = 0; end x = x+eps; y = y+eps; z =sum((abs(x-y))./(abs(x)+abs(y))

end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

18

LISTING PROGRAM BASIS DATA function dbvar90 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.9); F = deteksikontur(E);S1 = kodefreeman (F) ; x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.9); F = deteksikontur(E); S2 = kodefreeman (F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.9); F = deteksikontur(E); S3 = kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.9); F = deteksikontur(E); S4 = kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.9); F = deteksikontur(E); S5 = kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.9); F = deteksikontur(E); S6 = kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.9); F = deteksikontur(E);S7 = kodefreeman (F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.9); F = deteksikontur(E);S8 = kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.9); F = deteksikontur(E);S9 = kodefreeman (F);

S1 (613)= 0; S2 (613)= 0; S3 (613)= 0; S4 (613)= 0; S5 (613)= 0; S6 (613)= 0; S7 (613)= 0; S8 (613)= 0; S9 (613)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar90 db

function dbvar80 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.8); F = deteksikontur(E); S1 = kodefreeman (F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.8); F = deteksikontur(E); S2 = kodefreeman (F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.8); F = deteksikontur(E); S3 = kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.8); F = deteksikontur(E); S4 = kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.8); F = deteksikontur(E); S5 = kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.8); F = deteksikontur(E); S6 = kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.8); F = deteksikontur(E); S7 = kodefreeman (F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.8); F = deteksikontur(E); S8 = kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.8); F = deteksikontur(E);S9 = kodefreeman (F);

S1 (543)= 0; S2 (543)= 0; S3 (543)= 0; S4 (543)= 0; S5 (543)= 0;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

19

S6 (543)= 0; S7 (543)= 0; S8 (543)= 0; S9 (543)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar80 db

function dbvar70 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.7); F = deteksikontur(E); S1 = kodefreeman(F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.7); F = deteksikontur(E); S2 = kodefreeman(F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.7); F = deteksikontur(E); S3 = kodefreeman(F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.7); F = deteksikontur(E); S4 = kodefreeman(F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.7); F = deteksikontur(E); S5 = kodefreeman(F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.7); F = deteksikontur(E); S6 = kodefreeman(F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.7); F = deteksikontur(E); S7 = kodefreeman(F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.7); F = deteksikontur(E); S8 = kodefreeman(F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.7); F = deteksikontur(E); S9 = kodefreeman(F);

S1 (475)= 0; S2 (475)= 0; S3 (475)= 0; S4 (475)= 0; S5 (475)= 0; S6 (475)= 0; S7 (475)= 0; S8 (475)= 0; S9 (475)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar70 db

function dbvar60 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.6); F = deteksikontur(E); S1 = kodefreeman(F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.6); F = deteksikontur(E);S2 = kodefreeman(F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.6); F = deteksikontur(E);S3 = kodefreeman(F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.6); F = deteksikontur(E);S4 = kodefreeman(F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.6); F = deteksikontur(E);S5 = kodefreeman(F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.6); F = deteksikontur(E);S6 = kodefreeman(F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.6); F = deteksikontur(E); S7 = kodefreeman(F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.6); F = deteksikontur(E);S8 = kodefreeman(F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.6); F = deteksikontur(E);S9 = kodefreeman(F);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

20

S1 (407)= 0; S2 (407)= 0; S3 (407)= 0; S4 (407)= 0; S5 (407)= 0; S6 (407)= 0; S7 (407)= 0; S8 (407)= 0; S9 (407)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar60 db

function dbvar50 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.5); F = deteksikontur(E); S1 =kodefreeman (F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.5); F = deteksikontur(E);S2 =kodefreeman (F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.5); F = deteksikontur(E);S3 =kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.5); F = deteksikontur(E);S4 =kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.5); F = deteksikontur(E);S5 =kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.5); F = deteksikontur(E); S6 =kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.5); F = deteksikontur(E);S7 =kodefreeman (F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.5); F = deteksikontur(E); S8 =kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.5); F = deteksikontur(E);S9 =kodefreeman (F);

S1 (339)= 0; S2 (339)= 0; S3 (339)= 0; S4 (339)= 0; S5 (339)= 0; S6 (339)= 0; S7 (339)= 0; S8 (339)= 0; S9 (339)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar50 db

function dbvar40 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.4); F = deteksikontur(E); S1 = kodefreeman (F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.4); F = deteksikontur(E); S2 = kodefreeman (F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.4); F = deteksikontur(E); S3 = kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.4); F = deteksikontur(E); S4 = kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.4); F = deteksikontur(E); S5 = kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.4); F = deteksikontur(E); S6 = kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.4); F = deteksikontur(E); S7 = kodefreeman (F);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

21

x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.4); F = deteksikontur(E); S8 = kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.4); F = deteksikontur(E); S9 = kodefreeman (F);

S1 (271)= 0; S2 (271)= 0; S3 (271)= 0; S4 (271)= 0; S5 (271)= 0; S6 (271)= 0; S7 (271)= 0; S8 (271)= 0; S9 (271)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar40 db

function dbvar30 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.3); F = deteksikontur(E); S1 = kodefreeman(F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.3); F = deteksikontur(E); S2 = kodefreeman(F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.3); F = deteksikontur(E); S3 = kodefreeman(F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.3); F = deteksikontur(E); S4 = kodefreeman(F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.3); F = deteksikontur(E); S5 = kodefreeman(F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.3); F = deteksikontur(E); S6 = kodefreeman(F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.3); F = deteksikontur(E); S7 = kodefreeman(F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.3); F = deteksikontur(E); S8 = kodefreeman(F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.3); F = deteksikontur(E); S9 = kodefreeman(F);

S1 (202)= 0; S2 (202)= 0; S3 (202)= 0; S4 (202)= 0; S5 (202)= 0; S6 (202)= 0; S7 (202)= 0; S8 (202)= 0; S9 (202)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar30 db

function dbvar20 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.2); F = deteksikontur(E); S1 = kodefreeman (F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.2); F = deteksikontur(E); S2 = kodefreeman (F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.2); F = deteksikontur(E); S3 = kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.2); F = deteksikontur(E); S4 = kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.2);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

22

F = deteksikontur(E); S5 = kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.2); F = deteksikontur(E); S6 = kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.2); F = deteksikontur(E); S7 = kodefreeman (F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.2); F = deteksikontur(E); S8 = kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.2); F = deteksikontur(E); S9 = kodefreeman (F);

S1 (135)= 0; S2 (135)= 0; S3 (135)= 0; S4 (135)= 0; S5 (135)= 0; S6 (135)= 0; S7 (135)= 0; S8 (135)= 0; S9 (135)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar20 db

function dbvar10 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.1); F = deteksikontur(E); S1 = kodefreeman (F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.1); F = deteksikontur(E); S2 = kodefreeman (F); x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.1); F = deteksikontur(E); S3 = kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.1); F = deteksikontur(E); S4 = kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.1); F = deteksikontur(E); S5 = kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.1); F = deteksikontur(E); S6 = kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.1); F = deteksikontur(E); S7 = kodefreeman (F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.1); F = deteksikontur(E); S8 = kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.1); F = deteksikontur(E); S9 = kodefreeman (F);

S1 (65)= 0; S2 (65)= 0; S3 (65)= 0; S4 (65)= 0; S5 (65)= 0; S6 (65)= 0; S7 (65)= 0; S8 (65)= 0; S9 (65)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar10 db

function dbvar5 x=rgb2gray(imread('gunting.jpg'));x1= prepros(x); E = imresize(x1,0.05); F = deteksikontur(E); S1 =kodefreeman (F); x=rgb2gray(imread('cutter.jpg'));x1=prepros(x); E = imresize(x1,0.05); F = deteksikontur(E);S2 =kodefreeman (F);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

23

x=rgb2gray(imread('balpo.jpg'));x1=prepros(x); E = imresize(x1,0.05); F = deteksikontur(E);S3 =kodefreeman (F); x=rgb2gray(imread('tipx.jpg'));x1=prepros(x); E = imresize(x1,0.05); F = deteksikontur(E);S4 =kodefreeman (F); x=rgb2gray(imread('pelker.jpg'));x1=prepros(x); E = imresize(x1,0.05); F = deteksikontur(E);S5 =kodefreeman (F); x=rgb2gray(imread('perklip.jpg'));x1=prepros(x);E = imresize(x1,0.05); F = deteksikontur(E); S6 =kodefreeman (F); x=rgb2gray(imread('stabilo.jpg'));x1=prepros(x);E = imresize(x1,0.05); F = deteksikontur(E);S7 =kodefreeman (F); x=rgb2gray(imread('note.jpg'));x1=prepros(x);E = imresize(x1,0.05); F = deteksikontur(E); S8 =kodefreeman (F); x=rgb2gray(imread('steples.jpg'));x1=prepros(x);E = imresize(x1,0.05); F = deteksikontur(E);S9 =kodefreeman (F);

S1 (31)= 0; S2 (31)= 0; S3 (31)= 0; S4 (31)= 0; S5 (31)= 0; S6 (31)= 0; S7 (31)= 0; S8 (31)= 0; S9 (31)= 0; db = {S1 S2 S3 S4 S5 S6 S7 S8 S9}; save dbvar5 db

LISTING PROGRAM FUNGSI JARAK CANBERRA function z=jarakcanberra(x,y) if length (x) > length (y) y(length(x)) = 0; end x = x+eps; y = y+eps; z =sum((abs(x-y))./ (abs(x)+abs(y))

end

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

24

LAMPIRAN 2

DATA HASIL PERCOBAAN

Hasil percobaan untuk variasi resizing 90%

out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi resizing 80% out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 99: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

25

Hasil percobaan untuk variasi resizing 70% out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi resizing 60% out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 100: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

26

Hasil percobaan untuk variasi resizing 50% out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi resizing 40% out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 101: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

27

Hasil percobaan untuk variasi resizing 30% out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi resizing 20% out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 102: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

28

Hasil percobaan untuk variasi resizing 10% out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi resizing 5% out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 4 1

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 103: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

29

Hasil percobaan untuk variasi rotasi

45°

out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

90°

out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 104: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

30

180°

out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi Translasi

3 cm ke kiri

out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 105: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

31

3 cm ke kanan

out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

3 cm ke atas

out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 106: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

32

3 cm ke bawah

out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

Hasil percobaan untuk variasi Skala

𝟒𝟖

𝟒𝟏 𝒙 𝟏𝟎𝟎% = 𝟏𝟏𝟕%

out

in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 107: PENGENALAN ALAT-ALAT STASIONERI MENGGUNAKAN …

33

𝟒𝟖

𝟓𝟒 𝒙 𝟏𝟎𝟎% = 𝟖𝟖%

out in

Gunting Steples Tipe-

x Pelubang

kertas Penjepit

kertas Cutter Note Ballpoint stabilo

Gunting 5

Steples 5

Tipe-x 5

Pelubang

kertas 5

Penjepit

kertas 5

Cutter 5

Note 5

Ballpoint 5

stabilo 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI