View
236
Download
0
Category
Preview:
Citation preview
RANCANG BANGUN PERHITUNGAN KELILING DAUN
BAYAM MENGGUNAKAN CITRA DIGITAL
SKRIPSI
Oleh:
ASASUN NAJAKH
NIM. 09650179
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM
MALANG
2015
ii
RANCANG BANGUN PERHITUNGAN KELILING DAUN
BAYAM MENGGUNAKAN CITRA DIGITAL
SKRIPSI
Diajukan kepada :
Fakultas Sains dan Teknologi
Universitas Islam Negeri Maulana Malik Ibrahim Malang
Untuk Memenuhi Salah Satu Persyaratan Dalam
Memperoleh Gelar Sarjana Komputer (S.Kom)
Oleh :
ASASUN NAJAKH
NIM. 09650165
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM
MALANG
2015
iii
RANCANG BANGUN PERHITUNGAN KELILING DAUN
BAYAM MENGGUNAKAN CITRA DIGITAL
SKRIPSI
Oleh :
Nama : Asasun Najakh
Nim : 09650179
Jurusan : Teknik Informatika
Fakultas : Sains dan Teknologi
Telah Diperiksa dan Disetujui untuk Diuji :
Tanggal, 23 Februari 2015
Pembimbing I Pembimbing II
Dr. Suhartono, M.Kom
NIP. 196805192003121001
Linda Salma Angreani, M.T
NIP. 197708032009122005
Mengetahui,
Ketua Jurusan Teknik Informatika
Dr. Cahyo Crysdian
NIP. 19740424200901 1 008
iv
RANCANG BANGUN PERHITUNGAN KELILING DAUN
BAYAM MENGGUNAKAN CITRA DIGITAL
SKRIPSI
Oleh :
ASASUN NAJAKH
NIM. 09650179
Telah dipertahankan di Depan Dewan Penguji Skripsi dan
Dinyatakan Diterima Sebagai Salah Satu Persyaratan Untuk
Memperoleh Gelar Sarjana Komputer (S.Kom)
Tanggal, 22 Juni 2015
Susunan Dewan Penguji Tanda Tangan
1. Penguji Utama : Zainal Abidin, M.Kom
NIP. 19760613 200501 1 004
( )
2. Ketua : Dr. M. Faisal, M.T
NIP. 19740510 200501 1 007
( )
3. Sekretaris : Dr. Suhartono, M.Kom
NIP. 19680519 200312 1 001
( )
4. Anggota : Linda Salma Angreani, M.T
NIP. 19770803 200912 2 005
( )
Mengetahui dan Mengesahkan,
Ketua Jurusan Teknik Informatika
Dr. Cahyo Crysdian
NIP. 19740424 200901 1 00
v
PERSEMBAHAN
Untuk
Untuk perkembangan teknologi dan sains dunia
Untuk
Kedua orang tua ku yang selalu memberiku semngat, memberiku motivasi,
dan mengiringi do’a di setiap langkah langkah ku
Bapak Abdul Hakam mubarok & Ibu Amanah
Untuk
Adik ku ter cinta Nurun Najakh, yang selalu memberiku semangat dan
menghiburku
Untuk
Sabilla Danwantari, yang selalu menemaniku, dan selalu memberiku
semngat untuk bangkit ketika aku menyelesaikan kuliah ini
Untuk
Semua saudara-saudra dan teman-teman ku trimaksih atas dukungan dan
kebersamaanmu selama ini
vi
MOTTO
اللهم افتح قلو بنا فتوح العارفين
YA ALLAH BUKALAH HATI KAMI SEPERTI HATI ORANG YANG
MA’RIFAT
vii
SURAT PERNYATAAN
ORISINALITAS PENELITIAN
Saya yang bertandatangan di bawah ini:
Nama : Asasun Najakh
NIM : 09650179
Fakultas/Jurusan : Sains Dan Teknologi / Teknik Informatika
Judul Penelitian : Rancang Bangun Perhitungan Keliling Daun Bayam
menggunakan Citra Digital
Menyatakan dengan sebenarnya bahwa skripsi yang saya tulis ini benar-benar
merupakan hasil karya saya sendiri, bukan merupakan pengambil alihan data,
tulisan atau pikiran oarang lain yang saya akui sebagai hasil tulisan atau pikiran
saya sendiri, kecuali dengan mencantumkan sumber cuplikan pada daftar pustaka.
Apabila di kemudian hari terbukti atau dapat dibuktikan skripsi ini hasil jiplakan,
maka saya bersedia menerima sanksi atas perbuatan tersebut.
Malang, 29 Juni 2015
Hormat Saya
Asasun Najakh
NIM. 09650179
viii
KATA PENGANTAR
Segala puji bagi Allah SWT dan junjungan besar Nabi Muhammad SAW
yang telah melimpahkan rahmat serta hidayahNya kepada penulis sehingga bisa
menyelesaikan skripsi yang berjudul ” Rancang Bangun Perhitungan Keliling
Daun Bayam Menggunakan Citra Digital ” dengan baik..
Penulis menyadari bahwa dalam menyelesaikan skripsi ini masih jauh
dengan kesempuranaan karena masih terbatasnya kemampuan dan pengetahuan
yang penulis miliki, maka dari itu saran yang membangun dibutuhkan penulis
serta sumbangsih dalam bentuk apapun baik bantuan dukungan spirit, moriil dan
intelektual dalam membangun dan menyusun program ini adalah luar biasa
bermanfaat. Sehingga sudilah kiranya penulis mengucapkan beribu-ribu
terimakasih kepada :
1. Allah SWT dan RasulNya, yang telah memberiku inspirasi melalui
wahyuNya.
2. Dr. Suhartono, M.Kom, selaku dosen pembimbing I yang telah
meluangkan waktu untuk membimbing, memotivasi, mengarahkan dan
memberi masukan dalam pengerjaan skripsi dan program ini.
3. Linda Salma angreani, M.T, selaku dosen pembimbing II, yang selalu
memberikan masukan, nasehat serta petunjuk dalam penyusunan laporan
skripsi ini.
4. Dr. Cahyo Crysdian, M.Kom selaku Ketua Jurusan Teknik Informatika
Universitas Islam Negeri Maulana Malik Ibrahim Malang, yang
mendukung dan mengarahkan dalam pengerjaan skripsi ini.
ix
5. Zainal Abidin, M. Kom selaku Penguji Utama dan Dr. Muhammad Faisal
M.T selaku Ketua Penguji, yang memberikan masukan dan kritikan dalam
penulisan skripsi ini.
6. Segenap Dosen Teknik informatika dan teman-teman TI angkatan 2009
yang telah memberikan bimbingan keilmuan dan segala dukungan kepada
penulis selama masa studi.
7. Semua pihak yang tidak mungkin penulis sebutkan satu-persatu, atas
segala yang telah diberikan kepada penulis dan dapat menjadi pelajaran.
Sebagai penutup, penulis menyadari dalam skripsi ini masih banyak
kekurangan dan jauh dari sempurna. Semoga kekurangan yang ada nantinya dapat
dikembangkan oleh peneliti-peneliti selanjutnya. Semoga skripsi yang jauh dari
sempurna ini sedikit banyak dapat memberikan manfaat bagi kita semua.
Malang, 29 Juni 2015
Penulis
x
DAFTAR ISI
HALAMAN JUDUL ……………………………………………………… i
HALAMAN PENGAJUAN ………………………………………………. ii
HALAMAN PERSETUJUAN ……………………………………………. iii
HALAMAN PENGESAHAN …………………………………………….. iv
HALAMAN PERSEMBAHAN …………………………………………... v
HALAMAN MOTTO …………………………………………………….. vi
HALAMAN PERNYATAAN ……………………………………………. vii
KATA PENGANTAR …………………………………………………….. viii
DAFTAR ISI ………….…………………………………………………... x
DAFTAR TABEL ..……………………………………………………….. xiv
DAFTAR GAMBAR .…………………………………………………..… xv
ABSTRAK …………………………………………………………………... xx
ABSTRACT ………………………………………………………………. xxi
BAB I PENDAHULUAN .………………………………………………... 1
1.1 Latar Belakang …………………………………………………….. 1
1.2 Rumusan Masalah ………………………………………………..... 4
1.3 Batasan Masalah ……………………………………………........... 5
1.4 Tujuan Penelitian …………………………………………….......... 5
1.5 Manfaat Penelitian ……………………………………………….... 5
1.6 Sistematika Penulisan ……………………………………………... 5
BAB II LANDASAN TEORI ……...……………………..……………....... 7
2.1 Citra Digital ... …………………………………………………….. 7
xi
2.2 Deteksi Tepi (edge detection).….………………………………… 11
2.2.1 edge, line, dan point detection.……………………………….. 11
2.3 Chain Code…………..…………………………………………….. 13
2.3.1 penggunaan nomer dalam penulisan algoritma chain code….. 17
2.3.2 keliling ( primeter objek)…………………….……………… 19
2.4 Tanaman Bayam (Alternanthera spp)………….…………………... 19
2.4.1 Manfaat Tanaman ……………………………………………. 20
2.5 Java…. …………………………………………………………….. 21
2.6 Analisis Dan Perancangan System Beroreintasi Objek Dengan
Unfield Modeling Language (UML)………………………………
22
BAB III ANALISIS DAN PERANCANGAN SISTEM .… ……………… 31
3.1 Analisis Sistem………………………….…………………………. 31
3.1.1 Analisis dalam bentuk terukur secara manual….……………. 41
3.2. Perancangan Sistem…..…………………………………………… 42
3.2.1 Use Case Diagram………….….……………………………… 42
3.2.2 Activity Diagram…………………………………………….. 44
3.2.3 Squence Diagram ……………………………………………. 49
3.2.4 Class Diagram………………………………………………… 55
3.2.5 Rancangan Interface………………………………………… 57
BAB IV IMPLEMNTASI DAN PENGUJIAN ………………………….. 63
4.1 Implementasi Sistem…………………………………….………… 63
4.1.1 Antar Muaka Aplikasi……....………………………………… 63
4.1.2 Implementasi Kode Program ……………………………….. 67
xii
4.1.2.1 Kode Program Scanning Objek…………………….. 67
4.1.2.2 Kode Program Proses Pemisahan Piksel Image…….. 69
4.1.2.3 Kode Program penghitung keliling objek daun………. 75
4.2 Tahap Pengujian ………………...………………………………... 82
4.3.1 Pengujian pada objek daun secara manual………………….. 82
4.3.2 Pengujian Proses Pemisahan Warna dan Objek Image………. 77
4.2.2 Pengujian Scanning Gambar………………………………… 83
4.3.3 Pengujian Proses Pemisahan Warna Dan Objek Image……… 86
4.3.4 pengujian analisis keliling image............................................. 87
4.3 Pembahasan Data Hasil Uji Coba……………………………… 89
4.3.1 Hasil Pengujian Pada Multi Objek…………………………… 89
4.3.2 Hasil Uji Coba Dalam Bentuk Sederhana………………….... 91
4.3.3 Hasil Uji Coba Perhitungan Secara Manual Dan Citra Digital 92
4.4 Integrasi Agama Islam Dalam Mempelajari Tumbuh Dan
Mengetahui Ukuran Tumbuhan…………………………………..
94
BAB V KESIMPULAN DAN SARAN ……………………………...…….. 97
5.1 Kesimpulan ………………………………………………….…….. 97
5.2 Saran ………………………………………………………………. 98
DAFTAR PUSTAKA ……………………………………………….……. 99
LAMPIRAN - LAMPIRAN ………………………………………………. 100
xiii
DAFTAR TABEL
Tabel 2.1 Tabel Kode Dari 8 Arah Algoritma Chain Code…………………… 18
Tabel 3.1 Hasil Analisa Algoritma Chain Code……………………………. 40
Tabel 3.2 Tabel Hasil Analisa Dalam Bentuk Terukur……………………….. 41
Tabel 3.3 Tabel Penjelasan Use Case Diagram……………………………….. 43
Tabel 3.5 Tabel Class Diagram Yang Terdapat Dalam System……………… 57
Tabel 4.1 Tabel Hasil Pengujian……………………………………………… 90
Tabel 4.2 Tabel Hasil Pengujian Dalam Bentuk Sederhana………………….. 91
Tabel 3.3 Tabel Hasil Uji Coba Perhitungan Secara Manual Dan Citra Digital 92
xiv
DAFTAR GAMBAR
Gambar 2.1 Gambar Citra biner dan representasinya dalam data digital…… 8
Gambar 2.2 Gambar Citra warna berindeks 4 bit…………………………… 11
Gambar 2.3 Gambar Arah garis gambar dengan 8 arah………………………. 14
Gambar 2.4 Gambar derajat kelengkungan terkecil dari pixel sederhana……. 15
Gambar 2.5 Gambar contoh arah pembuatan segi tiga……………………….. 16
Gambar 2.6 Gambar penulisan chain code bentuk 1 dan 2………………….. 17
Gambar 2.7 Gambar contoh penomoran dalam algoritma chain code………. 18
Gambar 2.8 Gambar use case diagram……………………………………….. 24
Gambar 2.9 Gambar class diagram…………………………………………… 26
Gambar 2.10 Gambar activity diagram……………………………………….. 27
Gambar 2.11 Gambar sequence diagram………………………………………. 28
Gambar 2.12 Gambar collaboration diagram………………………………….. 29
Gambar 2.13 Gambar Statechart diagram…………………………………….. 30
Gambar 3.1 Gambar Proses Aplikasi Secara Umum………………………. 31
Gambar 3.2 Gambar Proses Pemisahan Objek Daun………………………… 32
Gambar 3.3 Gambar Langkah Mencari Titik X Minimal…………………….. 33
xv
Gambar 3.4. Gambar Mencari Titik Xmaks…………………………………. 35
Gambar 3.5. Gambar Langkah Mencari Titik Y Min………………………… 36
Gambar 3.6 Gambar langkah untuk mencari titik kordinat Ymax…………… 37
Gambar 3.7 Gambar Langkah Untuk Menghapus Area Kordinat Yang Telah
dideteksi………………………………………………………….
38
Gambar 3.8 Gambar contoh proses perhitungan keliling…………………….. 39
Gambar 3.9 Gambar use case diagram……………………………………….. 42
Gambar 3.10 Gambar activity diagram scanning image………………………. 45
Gambar 3.11 Gambar activity diagram jalankan proses pemisahan warna dan
objek image……………………………………………………..
46
Gambar 3.12 Gambar activity diagram jalankan proses analisa chain code……. 47
Gambar 3.13 Gambar Activity diagram lihat hasil analisa…………………….. 48
Gambar 3.14 Gambar sequence diagram scanning image …………………… 50
Gambar 3.15 Gambar sequence diagram jalankan proses pemisahan warna dan
objek……………………………………………………………..
52
Gambar 3.16 Gambar sequence diagram jalankan proses analisa chain code.. 53
Gambar 3.17 Gambar sequence diagram jalankan proses analisa chain code 54
xvi
Gambar 3.18 Gambar class diagram………………………………………….. 56
Gambar 3.19 Gambar interface halaman awal aplikasi……………………….. 58
Gambar 4.1 Gambar interface halaman menu utama aplikasi……………… 59
Gambar 4.2 Gambar interface halaman aplikasi…………………………….. 60
Gambar 4.3 Gambar interface halaman scan………………………………… 61
Gambar 4.4 Gambar antar muka menu tampil hasil…………………………... 61
Gambar 4.5 Gambar interface antar muka menu about………………………. 62
Gambar 4.6 Gambar antar muka menu utama……………………………….. 64
Gambar 4.7 Gambar antar muka menu ke dua……………………………….. 65
Gambar 4.8 Gambar kode program pemisahan pixel image………………….. 71
Gambar 4.9 Gambar perhitungan kesamaan objek dengan sample…………… 72
Gambar 4.10 Gambar kode program pembuatan kode rantai…………………... 78
xx
ABSTRAK
Najakh, Asasun. 2015. Rancang Bangun Perhitungan Keliling Daun Bayam
Menggunakan Citra Digital. Jurusan Teknik Informatika Fakultas Sains dan
Teknologi Universitas Islam Negeri Maulana Malik Ibrahim Malang,
Pembimbing (I) Dr. SUHARTONO,M.Kom dan (II) LINDA SALMA
ANGREANI M.T
Kata Kunci : Keliling Daun, Bayam, Citra Digital
Pada akhir-akhir ini, penelitian tentang tumbuh-tumbuhan mulai berkembang,
sebagian peneliti menggunakan tumbuh-tumbuhan sebagai subjek untuk
penelitian. Pada beberapa peneliti, cara melakukan penelitian pada daun
mempunyai perbedaan metode. Pada penelitian ini juga meneliti tentang
tumbuh-tumbuhan, pada khususnya daun bayam. Pada penelitian ini daun
bayam diteliti dengan menggunakan perhitungan keliling daun bayam. Pada
penelitian ini, peneliti menggunakan perangkat lunak, perangkat keras seperti
scanner, computer dan komunikasi data USB sebagai data keluarnya untuk
menghitung keliling daun bayam dengan menggunakan Citra Digital untuk
menghitung jumlah dan keliling daun. menggunakan Citra digital, peneliti
dapat menghitung keliling daun bayam dengan mudah. Penggunaan Citra
Digital dibuat dengan menggunakan bahasa pemrograman Java. Jadi,
penelitian ini meneliti tentang bagaimana perhitungan keliling daun bayam
dengan menggunakan Citra Digital Sehingga dengan menggunakan Citra
Digital untuk menghitung keliling daun bayam dapat membantu dalam
perhitungan keliling daun bayam dengan mudah.
xxi
ABSTRACT
Najakh, Asasun. 2015. Design Calculation of Spinach Leaves Circle Use Digital
Image. Thesis. Information Technology Department, Faculty of Science and
Technology. The State Islamic University Maulana Malik Ibrahim Malang.
Advisor: (I) Dr. Suhartono, M.Kom and (II) Linda Salma Angreani, M.T
Key terms: leaves circle, spinach, Digital Image.
In now days, research about plants is developed, most researcher use plants as
subject to be investigated. In various research, the way that investigating the
leaves have difference method and algorithm. This research also investigates
about plants, especially spinach leaves. In this research, the spinach leaf is
investigated by calculating the leaves circle of spinach. In this research, the
researcher uses software, hardware such as scanner, computers, and data
communication such as USB as the output to calculate leaves circle of spinach
by using Digital Image to calculate amount of leaves and circle. By using
Digital Image, it makes the researcher calculates the leaves circle easily.
Developing the Digital Image is made by using Java programming. Therefore,
this research investigates about how the leaves circle of spinach calculation by
using Digital Image. Besides, by using Digital Image to calculate the leaves
circle of spinach can help the calculation of leaf area of spinach easily.
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Seiring perkembangan zaman, manusia semakin dituntut untuk
melakukan segala sesuatu bukan hanya secara cepat, tetapi juga harus
tepat. Demikian halnya dalam masalah pengukuran area daun, pengukuran luas
daun sangat diperlukan pada bidang pertanian. Meskipun proses fotosintesis dapat
berlangsung pada bagian lain dari pohon, daun secara umum dipandang sebagai
organ fotosintesis utama pada tumbuhan. Daun berfungsi sebagai penerima
cahaya dan fotosintesis. Atas dasar ini, luas daun menjadi parameter utama karena
laju fotosintesis per satuan tumbuhan ditentukan oleh luas daun.
Pengukuran luas daun diperlukan sebagai indikator pertumbuhan dan kinerja
fisiologis suatu tanaman. Mengukur keliling daun bukan merupakan hal yang
mudah karena daun berbagai tanaman memiliki bentuk yang beraneka ragam
sehingga memerlukan waktu yang lama dan alat ukur yang tepat. Untuk
kepentingan hal tersebut perlu dicari sebuah solusi untuk mempermudah
perhitungan keliling daun secara mudah.
Tumbuhan sangatlah berpengaruh penting dalam kehidupan manusia
diantaranya adalah tumbuhan pangan yang salah satunya adalah sayur . Indonesia
yang merupakan negara agraris sangat kaya akan sayur sayuran terutama sayur
bayam. Selain sebagai sumber zat besi dan vitamin yang baik,. Di Indonesia,
sayur menjadi sumber gizi dan vitamin utama sebagai pelengkap empat sehat lima
sempurna.
2
Bagi umat manusia mempelajari tumbuhan merupakan bagian dari proses
pembelajaran diri pada nilai-nilai agama dan untuk kembali mengingat ciptaan
Allah. Sehingga bagi seorang muslim merupakan sebuah tuntutan untuk
Hal ini sesuai dengan firman Allah :
Artinya : Dan Kami hamparkan bumi itu dan kami letakkan padanya gunung-
gunung yang kokoh dan Kami tumbuhkan segala macam tanaman yang indah
dipandang mata, untuk menjadikan pelajaran dan peringatan bagi hamba-hamba
yang kembali mengingat Allah (QS QAAF 50 : 7-8 ).
Adapun dalam ayat diatas, Allah berfirman untuk mengambil pelajaran
dari berbagai macam benda ataupun makhluk yang ada di bumi. Yang disebutkan
adalah gunung-gunung serta berbagai macam tanaman, ini karena keduanya
(gunung dan tanaman) memiliki nilai lebih untuk disebut dalam Al-quran. Selain
indah dipandang mata (menjadi penghibur hati) digunakan untuk mempelajari,
dan peringatan bagi seluruh umat manusia (muslim utamanya). Akan tetapi,
tujuan utama ada pada kalimat terakhir “bagi hamba-hamba yang kembali
mengingat Allah”, agar kembali ingat pada pencipta dunia serta isinya.
Sebagai hamba yang kembali mengingat Allah, mungkin perlu
merenungkan sedikit tentang hubungan tumbuhan dan manusia. Tumbuhan
memberikan makanan, obat, hiburan, sampai udara untuk bernafas manusia. Daun
dengan proses fotosintesisnya memberikan O2 (Oksigen) untuk bernafas manusia
dan mengambil CO2 (Karbondioksida) dari udara bebas. Ada baiknya, dipahami
3
dahulu apa itu proses fotosintsis dan lajunya. Daun merupakan organ utama
tempat berlangsungnya fotosintesis dengan bantuan cahaya matahari. Akan tetapi
sering terjadi bebarapa daun tidak terkena sinar matahari karena tertutup oleh
daun lain. Ini dipengaruhi oleh jumlah daun yang optimum, sehingga
memungkinkan distribusi (pembagian) cahaya antar daun lebih merata.
Distribusi cahaya yang lebih merata antar daun mengurangi kejadian
saling menaungi antar daun sehingga masing-masing daun dapat bekerja
sebagaimana mestinya. Hal ini adalah salah satu faktor internal yang turut
mempengaruhi laju fotosintesis daun.
Selain luas daun, penting pula mengetahui indeks luas daun. Indeks luas
daun merupakan gambaran tentang rasio permukaan daun terhadap luas tanah
yang ditempati oleh tanaman. Laju pertumbuhan tanaman dipengaruhi oleh laju
asimilasi bersih dan indeks luas daun. Laju asimilasi bersih yang tinggi dan
indeks luas daun yang optimum akan meningkatkan laju pertumbuhan tanaman
(Gardner et al., 1991).
Pada bidang pertanian, pengukuran area daun tanaman biasanya dilakukan
dengan metode kertas millimeter, gravimetri, planimeter, metode panjang kali
lebar dan metode fotografi Harganya sangat mahal dan jumlahnya terbatas bila
menggunakan alat ukur yang ada.
Dengan menggunakan perangkat keras, komunikasi data serta perangkat
lunak, perhitungan area daun Bayam menggunakan Citra digital dapat mengetahui
jumlah daun dan mengukur keliling dengan tingkat presisi yang tinggi dan biaya
yang murah. Perangkat keras yang meliputi scanner, sebuah computer.
4
Penelitian ini menggunakan Citra digital yang digunakan untuk mengolah
gambar daun sehingga akan diperoleh informasi jumlah daun, dan garis keliling.
1.1 Rumusan Masalah
Dari latar belakang yang telah diungkapkan, maka dapat
dirumuskan permasalahan yaitu: Bagaimana menerapkan Citra digital
pada perhitungan area daun bayam?
1.2 Batasan Masalah
Agar penyusunan tugas skripsi tidak keluar dari pokok permasalahan
yang dirumuskan, maka ruang lingkup pembahasan dibatasai pada:
1 Aplikasi ini dibangun berbasis Desktop.
2 Bahasa pemrograman yang digunakan adalah Java J2SE.
3 Menggunakan citra digital.
4 Tanaman yang diteliti adalah daun Bayam.
5 Untuk mendeteksi garis terluar daun menggunakan edge detection.
6 Untuk menghitung keliling daun menggunakan metode chain code.
1.3 Tujuan Penelitian
Adapun tujuan dari penulisan skripsi ini adalah membuat rancang
bangun perhitungan keliling daun bayam menggunakan Citra digital .
1.4 Manfaat Penelitian
Manfaat dari penelitian ini adalah memudahkan seseorang yang
bekerja di bidang pertanian dalam menghitung keliling daun, serta
memperkaya pengetahuan tentang aplikasi teknologi pemrosesan citra
5
digital dan pengenalan pola di bidang biologi dan pertanian sehingga dapat
menjadi inspirasi bagi penerapan teknik sejenis untuk bidang-bidang
lainnya.
1.5 Sistematika penulisan
Untuk memberikan gambaran dan kerangka yang jelas mengenai
pokok bahasan dalam setiap bab dalam penelitian ini maka diperlukan
sistematika penulisan. Berikut gambaran sistematika pembahasan pada
masing-masing bab:
BAB I : PENDAHULUAN
Bab ini berisi tentang latar belakang masalah, rumusan masalah,
tujuan penelitian, manfaat penelitian, batasan masalah, dan sistematika
penulisan.
BAB II : KAJIAN TEORI
Bab ini menjelaskan mengenai metode, konsep, dan teori yang
mendukung penulisan skripsi ini seperti pengertian java, citra digital,
tanaman bayam,
BAB III : ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini akan dibahas tentang langkah dan pembuatan
perangkat lunak serta rancangan program untuk menghitung keliling daun
bayam.
BAB IV : IMPLEMENTASI DAN PENGUJIAN
Meliputi hasil yang dicapai dari perancangan sistem dan
implementasi program. Sehingga dapat ditarik kesimpulan dari pengujian
6
sistem yang telah dibuat dan dapat disampaikan dalam sebuah
pembahasan.
BAB V : KESIMPULAN DAN SARAN
Berisi saran dan kesimpulan berdasarkan hasil yang telah dicapai
sehingga dapat digunakan sebagai bahan pertimbangan bagi pihak-pihak yang
berkepentingan serta kemungkinan pengembangannya.
7
BAB II
LANDASAN TEORI
2.1 Citra digital
Secara harfiah, citra (image) adalah gambar pada bidang dua dimensi.
Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus
(continue) dari intensitas cahaya pada bidang 2 dimensi. Citra digital juga
merupakan sebuah larik (array) yang berisi nilai nilai real maupun komplek
yang di representasikan dengan deretan bit tertentu.
Suatu citra dapat di definisikan sebagai fungsi f(x.y) berukuran M baris
dan N kolom, dengan x dan y adalah kordinat spasial, dan amplitude citra pada
titik tersebut. Apabila nilai x,y dan nilai amplitudo f secara keseluruhan
berhingga (finite) dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut
adalah citra digital (Darma 2010 ).
Berdasarkan warna-warna penyusunnya, citra digital dapat dibagi
menjadi empat macam (Balza Achmad dan Kartika Firdausi,2013):
a. Citra biner (Monokrom)
Pada citra biner, setiap titik bernilai 0 dan 1 dan masing-masing
mempresentasikan warna tertentu. Contoh yang paling lazim adalah warna
hitam bernilai 0 dan warna putih bernilai 1. Pada standart citra untuk
ditampilkan di layar computer, nilai biner ini berhubungan dengan ada
atau tidaknya cahaya yang ditembakkan oleh electron gun yang terdapat
dalam monitor computer. Angka 0 menyatakan tidak ada cahaya maka
warna yang direpresentasikan adalah hitam. Untuk angka 1 terdapat
8
cahaya sehingga warna yang direpresentasikan adalah putih. Standart ini
disebut sebagai standar citra cahaya, sedangkan standar citra tinta/cat
adalah berkebalikan dengan citra biner tersebut menyatakan ada atau
tidaknya tinta.
Setiap titik pada citra hanya membutuhkan 1 bit sehingga setiap
byte dapat menampung informasi delapan titik. Data digital sering
dinyatakan dalam bentuk bilangan heksadesimal dan pada bahasa Pascal
(Delphi) diberi symbol $ di depannya. Angka 8 bit (1 byte) dapat ditulis
dalam 2 digit/karakter heksadesimal.
Gambar 2.1 menunjukkan contoh representasi citra biner ke dalam data
digital.
Gambar 2.1 Citra biner dan representasinya dalam data digital
b. Citra Skala Keabuan (grayscale)
Citra grayscale merupakan citra digital yang hanya memiliki satu nilai
kanal pada setiap pixelnya, dengan kata lain nilai bagian
RED=GREEN=BLUE. Nilai tersebut digunakan untuk menunjukan
tingkat intensitas warna yang dimiliki adalah warna dari hitam, keabuan
dan putih. Tingkat keabuan di sini merupakan warna abu dengan berbagai
tingkat dari hitam hingga mendekati putih.
9
Format citra ini disebut skala keabuan karena pada umumnya
warna yang dipakai adalah antara hitam sebagai warna minimal dan warna
putih sebagai warna maksimalnya sehingga warna diantaranya adalah abu-
abu. Namun pada praktiknya, warna yang dipakai tidak terbatas pada
warna abu – abu.Sebagai contoh dipilih warna minimalnya adalah putih
dan warna maksimalnya adalah merah maka semakin besar nilainya
semakin besar pula intensitas warna merahnya. Beberapa buku menyebut
format citra ini sebagai citra intensitas.
c. Citra berwarna (True Color)
Pada citra warna, setiap titik mempunyai warna spesifik yang
merupakan kombinasi dari 3 warna dasar yaitu merah, hijau dan biru.
Format citra ini sering disebut sebagai citra RGB (red-green-blue). Ada
perbedaan warna dasar untuk cahaya (misalnya display di monitor
komputer) dan untuk cat (misalnya cetakan diatas kertas). Untuk cahaya,
warna dasarnya adalah merah-hijau-biru (red-green-blue, RGB);
sedangkan untuk cat, warna dasarnya adalah sian-magenta-kuning (cyan-
magenta-yellow, CMY). Keduanya saling berkomplemen. Setiap warna
dasar memiliki intensitas sendiri dengan nilai maksimum 255 (8 bit),
misalnya warna kuning merupakan kombinasi warna merah dan hijau
sehingga nilai RGBnya adalah 255 255 0; sedangkan warna ungu muda
nilai RGBnya adalah 150 0 150. Jadi setiap titik pada citra warna
membutuhkan data sebesar 3 byte. Jumlah kombinasi warna yang mungkin
10
untuk format citra ini adalah 224
atau lebih dari 16 juta warna sehingga bisa
dianggap mencakup semua warna yang ada. Itulah sebabnya format ini
dinamakan true color.
d. Citra Warna Berindeks
Jumlah warna yang dibutuhkan untuk format citra warna true color
adalah tiga kali jumlah titik yang ada dalam citra yang ditinjau. Di lain
pihak, pada kebanyakan kasus, jumlah warna yanga da dalam suatu citra
terkadang sangat terbatas (jauh di bawah 16 juta kemungkinan warna
yanga ada) karena banyaknya warna dalam sebuah citra tidak mungkin
melebihi banyaknya titik dalam citra itu sendiri. Untuk kasus tersebut,
disediakan format citra warna berindeks. Pada format ini, informasi setiap
titik merupakan indeks dari suatu tabel yang berisi informasi warna yang
tersedia, yang disebut palet warna (beberapa buku menyebutnya sebagai
color map). Jumlah bit yang dibutuhkan untuk setiap bit dalam citra
bergantung pada jumlah warna yang tersedia dalam palet warna. Sebagai
contoh , untuk palet berukuran 16 warna, setiap titik membutuhkan 14 bit
dan untuk palet berukuran 256 warna, setiap titik membutuhkan 8 bit atau
1 byte. Palet warna merupakan bagian dari citra warna berindeks sehingga
pada saat menyimpan citra ini ke dalam sebuah file, informasi palet warna
juga harus diikut sertakan. Keuntungan pemakaian palet warna ini adalah
kita dapat dengan cepat memanipulasi warna tanpa harus mengubah
informasi pada setiap titik dalam citra. Keuntungan lainnya adalah
11
besarnya data yang diperlukan untuk menyimpan citra ini lebih kecil
dibandingkan dengan citra warna true color.
Gambar 2.2 merupakan contoh representasi citra warna berindeks ke
dalam data digital.
Gambar 2.2 Citra warna berindeks 4 bit
2.2 Deteksi tepi (Edge Detection)
Tepian dari suatu citra mengandung informasi penting dari citra yang
bersangkutan tepian citra dapat mempresentasikan objek objek yang
terkandung dalam citra tersebut, bentuk dan ukurannya serta terkadang juga
informasi tentang teksturnya. Tepian citra adalah posisi dimana intensitas
pixel dari citra berubah dari nilai rendah ke nilai tinggi atau sebaliknya.
Deteksi tepi umumnya adalah lankah awal melakukan segementasi citra
2.2.1 Edge, line, dan Point Detection
Arah dari tepian citra bermacam macam.. ada yang lurus da nada yang
seperti kurva. Terdapat berbagai metode deteksi tepi yang dapat di
gunakan untuk mendeteksi berbagai macam jenis tepian. Setiap teknik
memiliki keunggulan masing masing. Satu teknik deteksi tepi mungkin
12
dapat bekerja sangat baik dalam suatu aplikasi tertentu namun sebaliknya
belum tentu dapat bekerja secara maksimal dalam aplikasi lainnya.
Tepian citra dapat dilihat melalui perubahan intensitas pixel pada suatu
area. Berdasarkan perbedaan perubahan intensitas tersebut,tepian dapat
dibagi menjadi 4 jenis (Darma, 2010) antara lain sebagai berikut.
a. Step
Tepian jenis step merupakan tepian citra yang terbentuk dari
perubahan intensitas citra secara signifikan dari tinggi ke rendah
ataupun sebaliknya.
b. Ramp
Tepian jenis terbentuk dari perubahan intensitas citra secara
perlahan.perubahan secara perlahan dapat dilihat pada bentuk kurva
yang semakin tinggi dengan perubahan kontinu.
c. Line
Tepian jenis ini di tandai dengan perubahan intensitas secara drastic
dari intensitas rendah-tinggi-rendah atau sebaliknya.
d. Step line
Tepian step line merupakan gabungan dari tepian jenis step dan line.
Tepian jenis ini ditandai dengan peningkatan intensitas yang tajam
dalam interval tertentu dan kemudian ditandai dengan penurunan yang
tidak signifikan, sehingga perubahan perubahan intensitas selanjutnya
berlangsung setabil.
13
2.3 Chain Code
Ketika menggambar segitiga, kita mungkin mulai pada satu titik (sudut)
dan melanjutkan untuk menarik titik tegak lurus dengan garis yang terhubung,
dan akhirnya kembali ke titik awal dengan baris tegak lurus ditarik kembali ke
titik awal. Jika kita mencoba untuk berkomunikasi lewat objek segitiga apa yang
kita lakukan dengan seseorang untuk dapat memperlihatkan objek segitiga yang
kita gambar.
Kita mungkin mengatakan sesuatu seperti, "dimulai dengan pensil pada
satu titik di kertas, bergerak garis lurus ke arah atas dan agak miring ke kanan
setelah itu tarik garis kebawah miring ke kanan dan sejajar titik awal. Dan itu
dilakukan tanpa mengangkat pensil.
Kata kata dari instruksi itu membuat pendengar mengerti apa yang kita
gambar dengan aturan kode rantai yang telah kia definisikan untuk
merekonstruksi bentuk dari gambar kita menggunakan arah garis yang
digambarkan.
Instruksi dalam kode rantai seperti ini, meskipun tidak sangat tepat,
tetapi dapat menggambarkan berbagai bentuk yang berbeda dan bisa dilakukan
lebih sistematis dengan arah yang kita lebih bervariasi jika ingin mendapatkan
definisi model yang lebih detil ditambah dengan petunjuk yang jelas.
Berikut gambar arah yang dianggap variatif dan bisa mendefinisikan
model dengan lebih detil
14
Gambar 2.3 Arah garis gambar dengan 8 arah
Cara mudah untuk mempelajari metode kode rantai adalah dengan
memahami system arah pada kompas. Dimana dalam kompas terdapat 4 atau 8
arah yang berbeda yang dapat kita gunakan untuk memberitahukan kemana kita
bergerak.
Katakanlah kita ingin berkomunikasi dengan orang untuk menunjukkan
bentuk, ukuran dan orientasi dari perjalanan laju air dari system pengairan dari
sebuah desa dimana titik awal air adalah belakang masjid dan titik akhir adalah
desa sebelah. Pertama, kita memilih titik awal dan kemudian kita memberitahu
mereka arah dari titik awal menuju titik titik selanjutnya sampai titik akhir dari
laju air mengalir.
Contoh dari detil petunjuk yang bisa diidentifikasikan adalah sebagai
berikut:
1. Air bersumber dari sumber mata air dibelakang masjid.
2. Kemudian dari belakang masjid pipa menuju rumah A.
3. Dari rumah A laju air menuju pipa di rumah B.
15
4. Dari rumah B air bergerak sampai ke rumah E mengikuti arah dari rumah
sebelumnya.
5. Dari rumah E air menuju rumah F di desa tetangga.
Kode rantai berjalan menggunakan kode poin absolut dari arah yang ditentukan.
Kode rantai tidak harus sesuai kelengkungannya dengan sifat asli dari poin asli
karena memang kode arah memakili piksel secara mutlak dimana dalam piksel
kelengkungan terkecil adalah 45 derajat.
Gambar 2.4 Derajar kelengkungan terkecil dari piksel digital(45o)
Namun, kita bisa memperbaiki poin arah untuk sesuatu yang memerlukan
detil yang lebih dalam seperti menambah arah poin dari 4 arah (utara, timur,
selatan dan barat) menjadi 8 arah yaitu utara, miring utara ke timur, timur,
miring timur ke selatan, selatan, miring selatan ke barat, barat, miring barat ke
utara.
Dari bentuk arah poin yang didapat kita encoding menjadi suatu hasil
perhitungan ukuran atau panjang dari sebuah unit objek dengan menggunakan
alur arau mulai dari titk awal sampai akhir menggunakan perhitungan sesuai
kode arah yang didapat.
16
Suatu contoh didapat tanda arah panah untuk membuat segitiga, maka
untuk menghitung ukuran luas segitiga dengan mengkodekan tiap titik menjadi
sebuah rumus perhitungan luas.
Gambar 2.5 Contoh arah pembuatan segitiga
dari gambar diatas misal nilai konversi NE bernilai 45, SE bernilai 45 dan W
bernilai 45. Urutan arah yang didapat adalah v1 v2 v3. Menggunakan
konvensi dari panah diatas maka hasil yang didapat sebagai berikut
(www.mind.ilstu.edu / Introduction to Chain Codes) :
1. Arah v1 ke v2 = 45, Luas = 0+45 = 45.
2. Arah v2 ke v3 = 45, Luas = 45+45 = 90.
3. Arah v3 ke v1 = 45, Luas = 90+45 = 135.
4. Jadi Luas = 135.
Dari penjelasan diatas dapat dilihat bahwa algoritma kode rantai
menghasilkan representasi simbol untuk menggambarkan bentuk segitiga dan
dapat memperkirakan ukuran dari bentuk segitiga.
Algoritma kode rantai juga menghasilkan aturan dari rekontruksi dari
sebuah objek yang dalam hal ini adalah segitiga dalam gambar. Pengggambaran
aturan dari kode rantai ada 2 yaitu :
17
Gambar 2.6 Penulisan Chain Code bentuk 1 dan 2
2.3.3 Penggunaan Nomor dalam penulisan Algoritma Chain code.
Karena algoritma kode rantai(Chain code) digunakan untuk memberikan
informasi ukuran dan bentuk objek, maka para ahli sistem computer ingin
membangun sebuah program yang mampu melakukan hal tersebut.
Namun karena algoritma tidak dapat diimplementasikan dalam program
komputer kalau menggunakan perhitungan manual, maka perlu dilakukan
konversi untuk mengganti kode arah panah sebagai sistem pengkodean, karena
komputer digital biasanya menggunakan sistem numerik untuk menyimpan
informasi (semuanya dikodekan "0" dan "1") dan agar bahasa program
komputer dapat mengenalinya. Maka untuk mengatasi hal tersebut, para
programmer computer memodifikasi sistem directional dari kdoe rantai dari
system manual yang menggunakan kata teks seperti barat, utara, selatan atau
timur dan menggantinya dengan system numeric seperti 0,1,2,3 dan selanjutnya.
Maka programmer komputer menulis kode rantai berdasarkan sistem
directional delapan arah dengan mengganti delapan arah menjadi skema
penomoran. Contoh dari system penomoran yaitu 1 untuk utara, 3 untuk timur,
B
A C
A B C
18
untuk selatan dan selanjutnya. Berikut contoh penomoran yang dipakai dalam
algoritma Chain Code.
Gambar 2.7 Contoh penomoran dalam algoritma Chain code
Dari gambar diatas dapat dilihat bahwa pengkodean algoritma Chain Code
adalah sebagai berikut (Muh Ali. 2013):
Tabel 2.1 Tabel kode dari 8 arah algoritma Chain Code
Kode Arah
0 Timur
1 Timur Laut
2 Utara
3 Barat laut
4 Barat
5 Barat daya
6 Selatan
7 Tenggara
19
2.3.4 keliling (perimeter objek )
primeter menyatakan panjang dari kerangka yang di hasilkan primeter dihitung
dengan rumus berikut.
P = jumlah kode genap + √2.jumlah kode ganjil
Masuknya faktor √2 pada penentuan P untuk kode ganjil, karena kode ganjil
memiliki arah diagonal (Darma, 2010)
2.4 Tanaman Bayam ( Alternanthera spp. )
Bayam merupakan tanaman sayuran yang dikenal dengan nama ilmiah
Amaranthus spp. Kata "amaranth" dalam bahasa Yunani berarti "everlasting"
(abadi). Tanaman bayam berasal dari daerah Amerika tropik.Tanaman bayam
semula dikenal sebagai tumbuhan hias.Dalam perkembangan
selanjutnya.Tanaman bayam dipromosikan sebagai bahan pangan sumber
protein, terutama untuk negara-negara berkembang.Diduga tanaman bayam
masuk ke Indonesia pada abad XIX ketika lalu lintas perdagangan orang luar
negeri masuk ke wilayah Indonesia .
Pusat penanaman bayam di Indonesia adalah Jawa Barat (4.273 hektar),
Jawa Tengah (3.479 hektar), dan Jawa Timur (3.022 hektar).atau menempati
urutan ke-11 dari 18 jenis sayuran komersial yang dibudidayakan dan dihasilkan
oleh Indonesia. Produk bayam nasional sebesar 72.369 ton atau rata-rata 22,63
kuintal per hektar.
Jenis bayam budidaya dibedakan 2 macam, yaitu:
1. Bayam cabut atau bayam sekul alias bayam putih (A. tricolor L.). Ciri-ciri
bayam cabut adalah memiliki batang berwarna kemerah-merahan atau hijau
20
keputih-putihan, dan memilki bunga yang keluar dari ketiak cabang. Bayam
cabut yang batangnya merah disebut bayam merah, sedangkan yang batangnya
putih disebut bayam putih.
2. Bayam tahun, bayam skop atau bayam kakap (A. hybridus L.). Ciri-ciri bayam
ini adalah memiliki daun lebar-lebar, yang dibedakan atas 2 spesies yaitu:
A. hybridus caudatus L., memiliki daun agak panjang dengan ujung
runcing, berwarna hijau kemerah-merahan atau merah tua, dan bunganya
tersusun dalam rangkaian panjang terkumpul pada ujung batang.
A. hibridus paniculatus L., mempunyai dasar daun yang lebar sekali,
berwarna hijau, rangkaian bunga panjang tersusun secara teratur dan
besar-besar pada ketiak daun.
2.4.1. Manfaat Tanaman
Bayam merupakan bahan sayuran daun yang bergizi tinggi dan digemari
oleh semua lapisan masyarakat.Daun bayam dapat dibuat berbagai sayur mayur,
bahkan disajikan sebagai hidangan mewah (elit).Di beberapa negara
berkembang bayam dipromosikan sebagai sumber protein nabati, karena
berfungsi ganda bagi pemenuhan kebutuhan gizi maupun pelayanan kesehatan
masyarakat.
Manfaat lainnya adalah sebagai bahan obat tradisional, dan juga untuk
kecantikan.Akar bayam merah dapat digunakan sebagai obat penyembuh sakit
disentr.Daun dan bunga bayam duri berkhasiat untuk mengobati penyakit asma
dan eksim.Bahkan sampai batas tertentu, bayam dapat mengatasi berbagai jenis
penyakit dalam.Untuk tujuan pengobatan luar, bayam dapat dijadikan bahan
21
kosmetik (kecantikan).Biji bayam digunakan untuk bahan makanan dan obat-
obatan.Biji bayam dapat dimanfaatkan sebagai pencampur penyeling terigu
dalam pembuatan roti atau dibuat bubur biji bayam.Ekstrak biji bayam
berkhasiat sebagai obat keputihan dan pendarahan yang berlebihan pada wanita
yang sedang haid.
2.5 Java
Java adalah suatu teknologi di dunia software komputer, yang
merupakan suatu bahasa pemrograman, dan sekaligus suatu platform.Sebagai
bahasa pemrograman, Java dikenal sebagai bahasa pemrograman tingkat
tinggi.Java mudah dipelajari, terutama bagi programmer yang telah mengenal
C/C++.Java merupakan bahasa pemrograman berorientasi objek yang
merupakan pemrograman Java dirancang menjadi handal dan aman.Java juga
dirancang agar dapat dijalankan di semua platform. Dan juga dirancang untuk
menghasilkan aplikasi – aplikasi dengan performansi yang terbaik, seperti
aplikasi database Oracle 8i/9i yang core-nya dibangun menggunakan bahasa
pemrograman Java (Irawan,2007). Java diciptakan oleh James Gosling,
developer dari Sun Microsystems pada tahun 1991.
Sintaks Java merupakan pengembangan dari bahasa C/C++. Berikut
adalah beberapa hal tentang pemrograman Java :
1. Bersifat protable dan platform independent. Program Java yang telah
ditulis akan dapat dieksekusi di mesin apapun dan system operasi apapun
tanpa harus mengubah sedikitpun dari program tersebut.
22
2. Memiliki garbage collection yang dapat mendealokasikan memori secara
otomatis.
3. Menghilangkan sifat pewarisan berganda yang terdapat pafa C++.
4. Mengurangi pointer aritmetika. Pengaksesan lokasi memori secara
langsung dengan menggunakan pointer memungkinakn program untuk
melakukan suatu tindakan yang tidak seharusnya atau tidak boleh
dilakukan. Untuk mengurangi kemungkinan kesalahan seperti ini
penggunaan pointer pada Java telah dibatasi dengan menggunakan
reference.
5. Memiliki array sejati.
6. Mengurangi kerancuan antara pemberian nilai pada statement conditional
2.6 Analisis dan Perancangan Sistem Berorientasi Objek Dengan Unified
Modelling Language (UML)
Konsep Dasar Unified Modelling Language (UML) adalah sebuah
"bahasa" yang telah menjadi standar dalam proses visualisasi,
perancangan dan pendokumentasian sebuah sistem piranti perangkat lunak.
UML menawarkan sebuah standar untuk merancang model sebuah sistem.
Salah satu aplikasi yang menggunakan perancangan sistem berorientasi objek
dengan Unified Modelling Language (UML) adalah Rational Rose. Seperti
bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik.
Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan
berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan
UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat
23
dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada
sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh
OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented
Software Engineering).
a. Use case Diagram
Use case diagram menggambarkan fungsionalitas yang
diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang
diperbuat sistem, dan bukan “bagaimana”. Sebuah use case
merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case
merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-
create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor
adalah sebuah entitas manusia atau mesin yang berinteraksi dengan
sistem untuk melakukan pekerjaan-pekerjaan tertentu.
Sebuah use case dapat meng-include fungsionalitas use case lain
sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan
bahwa use case yang di-include akan dipanggil setiap kali use case yang
meng-include dieksekusi secara normal. Sebuah use case dapat di-include
oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat
dihindari dengan cara menarik keluar fungsionalitas yang common.
Sebuah use case juga dapat meng-extend use case lain dengan
behaviour-nya sendiri. Sementara hubungan generalisasi antar use case
menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang
24
lain.
Contoh Use case diagram :
Gambar 2.8 Gambar Use Case Diagram
b. Class Diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan
menghasilkan sebuah objek dan merupakan inti dari pengembangan
dandesain berorientasi objek. Class menggambarkan keadaan
(atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk
memanipulasi keadaan tersebut (metoda/fungsi).
Class Diagram menggambarkan struktur dan deskripsi class,
package dan objek beserta hubungan satu sama lain seperti containment,
pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda
25
Atribut dan metoda dapat memiliki salah satu sifat berikut :
a. Private, tidak dapat dipanggil dari luar class yang bersangkutan
b. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan
anak-anak yang mewarisinya.
c. Public, dapat dipanggil oleh siapa saja
Hubungan Antar Class:
1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan
class yang memiliki atribut berupa class lain, atau class yang harus
eksistensi class lain. Panah navigability menunjukkan arah query
antar class.
2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).
3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan
dari class lain dan mewarisi semua atribut dan metoda class asalnya
dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari
class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
4. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing
dari satu class kepada class lain. Hubungan dinamis dapat
digambarkan dengan menggunakan sequence diagram yang
akan dijelaskan kemudian.
Contoh Class Diagram
26
Gambar 2.9 Class Diagram
c. Activity Diagram
Activity diagram menggambarkan proses-proses yang terjadi
mulai aktivitas dimulai sampai aktivitas berhenti. Activity diagram ini
mirip dengan flowchart diagram. Untuk membuat activity diagram klik
kanan pada design model kemudian klik new activity diagram. Berikut ini
adalah bentuk dari activity diagram :
27
Gambar 2.10 Activity diagram
d. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam
dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa
message yang digambarkan terhadap waktu.
Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi
horizontal (objek-objek yang terkait). Sequence diagram biasa
digunakan untuk menggambarkan skenario atau rangkaian langkah-
langkah yang dilakukan sebagai respons dari sebuah event untuk
menghasilkan output tertentu.
Masing-masing objek, termasuk aktor, memiliki lifeline vertikal.
Message digambarkan sebagai garis berpanah dari satu objek ke objek
28
lainnya. Pada fase desain berikutnya, message akan dipetakan
menjadi operasi/metoda dari class. Activation bar menunjukkan lamanya
eksekusi sebuah proses,biasanya diawali dengan diterimanya sebuah
message.
Contoh Sequence diagram:
Gambar 2.11 Sequence Diagram
e. Collaboration Diagram
Collaboration Diagram hampir sama dengan sequence diagram
tetapi berbeda pada objek yang di titik tekankan , collaboration lebih
menekankan pada pemunculan objek itu sendiri sedangkan sequence
diagram lebih pada penyampaian message dengan parameter waktu. Untuk
membuat collaboration diagram dapat secara otomatis dibuat jika
sudah ada sequence diagramnya.untuk membuat collaboration diagram
klik browse pada menu kemudian create collaboration diagram, atau
dengan menekan tombol F5 pada keyboard.bentuk collaboration
29
diagram adalah seperti di bawah ini:
Gambar 2.12 Collaboration diagram
f. Statechart Diagram
Statechart Diagram merupakan diagram yang menggambarkan
perubahan state dari state yang satu ke state lainnya. Untuk
membuat statechart diagram hamper sama dengan membuat activity
diagram yaitu: klik kanan pada package design model kemudian pilih
New Statechart Diagram. Bentuk statechart diagram adalah seperti
di bawah ini:
30
Gambar 2.13 Statechart diagram
31
BAB III
ANALISA DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Aplikasi perhitungan keliling daun bayam menggunakan citra digital
yang akan dibuat merupakan sistem untuk mendeteksi keliling dari objek daun
bayam dalam suatu image yang dimulai dari proses scanning image, pemberian
brightness image agar warna gelap yang mewakili background dan terang yang
mewakili benda tiap objek, kemudian dilakukan proses grayscale dan deteksi
tepi baru kemudian tiap objek yang terdeteksi sebagai objek dipisahkan untuk
dihitung keliling dari objek daun bayam.
Gambaran proses dari sistem pendeteksian Pendeteksi kelling daun
bayam ditunjukkan pada Gambar 3.1 dibawah ini.
Gambar 3.1 Gambar proses Aplikasi secara umum
Proses aplikasi perhitungan keliling daun bayam menggunakan citra
digital dibagi menjadi 4 proses utama yaitu :
1. Proses scan image yaitu mengcapture image daun yang akan digunakan
dalam perhitungan keliling daun bayam.
Pengguna
menscan image
daun dalam
scanner
Sistem
melakukan
proses
brightness,grays
cale dan edge
detection.untuk
pemisahan tiap
objek
Sistem
melakukan
proses
penentuan
keliling daun.
Sistem
menampilkan
hasil
perhitungan
32
2. Proses pemisahan tiap objek yaitu proses pemisahan objek daun agar bisa
terdeteksi tiap objek apakah mengandung 1 objek ataupun multi objek.
Berikut detil proses pemisahan tiap objek daun, seperti terdapat pada
Gambar 3.2 di bawah ini.
Gambar 3.2 Gambar proses pemisahan objek daun
Penjelasan :
a. image hasil capture dari scanner akan di load.
b. dilakukan proses brightness image yaitu menerangkan objek agar
mudah untuk dideteksi warna gelap dan terang.
Pada proses ini menggunakan rumus sebagai berikut :
brightness = sqrt( .241 R2 + .691 G
2 + .068 B
2 )
Metode ini menghasilkan angka yang akan membuat background
image menjadi hanya ada 2 jenis yaitu 0 (hitam) dan 255 (putih)
dengan menggunakan setting threshold warna sebagai berikut :
Color = Brightness(Color) < 130 ? Putih : Hitam.
c. system melakukan proses grayscale agar warna objek daun hanya
terdiri 2 warna hitam dan putih.
Pada proses ini menggunakan rumus sebagai berikut :
Gray = 0.299×Red + 0.587×Green + 0.114×Blue
Image Hasil
Capture
Proses
Brightness
Proses
Grayscale
Proses Edge
detection
Pemisahan
tiap objek
dalam area
image
33
d. deteksi tepi agar tepi tiap objek dikenali system sebagai bentuk
sebuah garis yang memisahkan antara tiap objek yang dikenali dalam
image.
Dalam proses pencarian edge detection dalam aplikasi ini
memanfaatkan library java bernama CannyEdgeDetector yaitu
sebuah library khusus untuk pendeteksian edge detection citra
menggunakan bahasa pemrograman java.
e. Pemisahan tiap objek dalam area image hingga nanti dapat terdeteksi
apakah image hasil scan mengandung 1 objek daun atau lebih.
Berikut adalah analisa serta simulasi pemisahan tiap objek daun yang
dilakukan oleh sistem dalam aplikasi.
Proses penentuan area daun pada image dilakukan dengan mencari
titik putih pertama yang dijadikan titik koordinat xminimal pada
image yang diduga titik x minimal area daun. Langkah untuk
mencari titik koordinat xminimal dapat disimulasikan seperti gambar
Gambar 3.3 dibawah ini :
Gambar 3.3 gambar langkah mencari titik xminima
X
Y Xmin,Y
34
Dalam mencari titik pertama piksel dicari mulai dari titik x
ujung atas kiri layar yang merupakan titik x minimal dari image
(x=0) sampai ke kanan layar yang merupakan titik y minimal dari
image (y=0), dan titik y di ujung atas kiri layar sampai ujung kanan
bawah kanan layar.
Jika ada terdeteksi warna putih, maka itu dianggap koordinat
xmin untuk satu area daun bayam. Sedangkan y yang didapat
dijadikan y awal pendeteksian Ymin dan Ymaks titik
Selanjutnya untuk melakukan pengujian terhadap pencarian
titik Xmaks pada image dilakukan dengan mencari titik putih
terakhir dari koordinat y dari xmin. Langkah untuk mencari titik
koordinat Xmaks dapat disimulasikan seperti gambar Gambar 3.4
dibawah ini :
35
Gambar 3.4 gambar langkah mencari titik Xmaks
Dalam mencari titik kedua adalah titik x maksimal dimana piksel
ini dicari mulai dari titik x dari xmin dan y dari pencarian xmin, pencarian
dimulai dari titik xmin sampai x image dengan menggunakan koordinat y
dari pencarian xmin.
Sementara untuk melakukan pengujian terhadap pencarian titik
Ymin titik pada image dilakukan dengan mencari total titik putih yang
bernilai 0 untuk tiap piksel antara xmin dan xmaks dan y dari xmin menuju
y = 0. Langkah untuk mencari titik koordinat Ymin dapat disimulasikan
seperti gambar dibawah ini :
X
Y
X awal,y
Deteksi X akhir dicari
sampai nilai x habis
X akhir
Xmin,Y
36
Gambar 3.5 Langkah untuk mencari titik koordinat Ymin
Dalam mencari titik kedua adalah titik yminimal dimana
piksel ini dicari mulai dari titik x dari xmin dan y dari pencarian
xmin, pencarian dimulai dari titik xmin sampai x image dengan
menggunakan koordinat y dari pencarian xmin menuju y awal atau
sama dengan 0.
Sementara untuk melakukan pengujian terhadap pencarian
titik Ymax pada image dilakukan dengan mencari total titik putih
X
Y Xmin,Y Xmaks,Y
X awal,y
Deteksi X akhir dicari
sampai nilai x habis
X pencarian
Y pencarian
Ymin
(nilai piksel putih
antara xmin dan
xmaks =0)
37
yang bernilai 0 untuk tiap piksel antara xmin dan xmaks dan y dari
xmin menuju y image. Langkah untuk mencari titik koordinat Ymax
dapat disimulasikan seperti gambar dibawah ini :
Gambar 3.6 Langkah untuk mencari titik koordinat Ymax
Dalam mencari titik kedua adalah titik y maksimal dimana
piksel ini dicari mulai dari titik x dari xmin dan y dari pencarian
xmin, pencarian dimulai dari titik xmin sampai x image dengan
X
Y Xmin,Y
Xmaks,Y
X awal,y
Deteksi X akhir dicari
sampai nilai x habis
X pencarian
Y pencarian
Ymax
(nilai piksel putih
antara xmin dan
xmaks =0)
38
menggunakan koordinat y dari pencarian xmin menuju y image atau
sama dengan tinggi image.
Selanjutnya agar area bayam yang telah terdeteksi
xmin,xmaks,ymin dan ymaks tidak terdeteksi kembali, maka
dihilangkan dari image dan hasil koordinat disimpan dalam database.
Langkah untuk menghapus area koordinat yang telah dideteksi dapat
disimulasikan seperti gambar dibawah ini :
Gambar 3.7 Langkah untuk menghapus area koordinat yang telah
dideteksi
Dalam menghapus titik yang telah dideteksi, maka akan
diganti piksel yang berada dalam area xmin, xmaks serta ymin,
Xmi
n
Ymi
n
Xma
ks
Yma
ks
Xmi
n
Ymi
n
Xma
ks
Yma
ks
39
ymaks menjadi piksel berwarna hitam yang berarti diganti dengan
warna background.
3. Proses berikutnya yaitu sistem melakukan proses penentuan keliling objek
daun menggunakan chaincode.
Contoh dari analisa titik dapat dilihat pada gambar dibawah ini :
Gambar 3.8 contoh proses perhitungan keliling
Dari arah pada gambar diatas dengan menggunakan algoritma Chain
Code kode 8 mata angin pada gambar disampingnya maka didapat urutan kode
rantai sebagai berikut :
Start
A
B
C D
E
F
40
Table 3.1 Hasil dari analisa algoritma ChainCode
No Kode Panah Kode Arah
1 A 7
2 B 6
3 C 5
4 D 3
5 E 2
6 F 1
Dari hasil itu maka bisa dihitung kelilingnya menggunakan rumus sebagai
berikut :
Keliling = Kode Genap + √2 * Kode Ganjil
= 4 + √2 . 2
= 6.82
4. Terakhir sistem menampilkan hasil perhitungan keliling kedalam tabel
hasil agar user dapat melihat hasil objek yang terdeteksi dan perhitungan
keliling.
41
3.1.1 Analisis Dalam Bentuk Terukur Secara Manual
Analisis secara manual bentuk terukur di gunakan sebagai
pembuktian penggunaan rumus secara matematis dan menggunakan
metode chain code
Tabel 3.2 tabel uji coba dalam bentuk terukur 1
Gambar Perhitungan secara
manual
Perhitungan menggunakan
rumus chain code
Keliling persegi
panjang ( 2P + 2 L)
10 + 8 = 18
Kode yang di dapat
(00000 6666 44444 2222)
K= jumlah kode genap +
√2. Jumlah kode ganjil.
18 +√2.0 = 19.41
Keliling segi tiga
(K=a+b+c)
3+3+6 = 12
Kode yang di dapat
(222 444444 111)
K= jumlah kode genap +
√2. Jumlah kode ganjil
9+3 √2= 13.41
42
3.2 Perancangan Sistem
Perancangan sistem dalam program penghitungan keliling daun
bayam dapat dijelaskan dalam UML yang meliputi usecase, activity diagram,
sequence diagram dan class diagram dibawah ini.
3.2.1 Use Case Diagram
Use Case diagram menggambarkan batasan akses user di dalam
sistem. Dimana user diberi hak akses scan image, jalankan proses
pemisahan image, jalankan proses analisa keliling dan lihat analisa hasil.
Diagram Use Case Aplikasi ditunjukkan pada gambar 3.9
dibawah ini ini.
Gambar 3.9 Use Case Diagram
Penjelasan dari use case diagram diatas dapat dilihat pada tabel 3.2
dibawah ini
capture image
jalankan proses analisa keliling
lihat analisa hasil
jalankan proses brightness image
user
43
Tabel 3.3 Penjelasan Use Case Diagram
No Use Case Keterangan
1 Scan Image
Use Case ini menjelaskan tentang
kerjasistem dalam melakukan
scanningimage daun dari scanner yang
telah disediakan. Pada proses inilah
image daun akan didapatkan dan akan
diproses ke tahap selanjutnya yaitu tahap
sistem melakukan proses pemisahan
warna dan objek image.
2 Jalankan proses
pemisahan warna dan
objek image
Use Case ini menjelaskan tentang kerja
sistem dalam melakukan proses
pengaturan pemilahan warna akan terdiri
dari buah jenis pixel warna yaitu 0
(hitam) dan 255(putih) dengan brightness
image, grayscale dan deteksi tepi gambar.
Setelah terpilah warna image, maka akan
dideteksi oleh sistem piksel mana saja
dari image yang merupakan objek benda
dan pixel mana saja yang merupakan
background image maka system
melakukan proses selanjutnya yaitu
analisa keliling.
3 Jalankan proses analisa
keliling
Use Case ini menjelaskan tentang kerja
sistem dalam mengambil tiap image di
folder gambar_olah dan mulai
menghitung kelilingnya. Setelah keliling
image sudah dideteksi dan dihitung,
maka hasil analisa akan ditampikan di
44
tabel hasil dalam aplikasi.
4 Lihat analisa hasil Use Case ini menjelaskan tentang kerja
sistem dalam hal user dapat melihat hasil
dari perhitungan keliling yang dianalisa.
3.2.2 Activity diagram
Activity diagram menggambarkan proses-proses yang terjadi saat
aktifitas dimulai sampai dengan aplikasi dihentikan. Berikut adalah
activity diagram yang ada dalam aplikasi perhitungan keliling daun
bayam menggunakan citra digital.
a. Activity diagram Scanning Image
Activity diagram scanning image ini menjelaskan proses saat user
melakukan scanning image daun dari scanner yang telah disediakan. Pada
proses inilah image daun akan didapatkan dan akan diproses ke tahap
selanjutnya yaitu tahap sistem melakukan proses pemisahan warna dan
objek image.
Activity diagram proses scanning image ditunjukkan pada Gambar
3.10 dibawah ini :
45
Gambar3.10 Activity diagramScanningimage
Pada saat aplikasi dimainkan sistem menampilkan form aplikasi.
Kemudian user mengklik tombol scan image seketika itu sistem
menjalankan device scanner. Pada saat inilah user diperintah menekan
tombol scan dan setelah di tekan maka sistem akan melakukan scanning
image dan otomatis menyimpan buffer gambar yang ada saat itu untuk
disimpan di folder uji.
b. Activity diagram Jalankan proses pemisahan warna dan objek
image
Pada activity diagram Jalankan proses pemisahan warna dan objek
image merupakan alur aktivitas user dalam melakukan proses pengaturan
pemilahan warna akan terdiri dari buah jenis pixel warna yaitu 0 (hitam)
dan 255(putih) dengan brightness image yaitu penerangan kondisi image,
proses grayscale yaitu membuat image menjadi image hitam putih dan
mainkan
aplikasi
klik tombol
scan image
klik scan
tampil form
aplikasi
start scanner
save image capture
to folder uji
scanning
object
sistemuser
46
deteksi tepi gambar yaitu pendeteksian tepi tiap image agar tiap objek
daun yang terkandung mudah dikenali.
Setelah terpilah warna image, maka akan dideteksi oleh sistem
piksel mana saja dari image yang merupakan objek benda dan pixel mana
saja yang merupakan background image maka system melakukan proses
selanjutnya yaitu analisa keliling dari objek.
Activity diagram Jalankan proses pemisahan warna dan objek image
ditunjukkan pada Gambar 3.11 dibawah ini:
Gambar 3.11 Activity diagram Jalankan proses proses
pemisahan warna dan objek image
Aktifitas proses pemisahan warna dan objek image dimulai ketika
system mengambil gambar hasil scanning di folder uji, kemudian
ambil image
dari folder uji
baca nilai rgb
tiap piksel
kelompokkan piksel gelap dan terang dengan
brightness,grayscale dan edge detection
pisah tiap objek yang terdeteksi
menjadi image tersendiri
simpan image hasil pemisahan
ke foldet gambar_olah
sistem
47
dilakukan pengelompokkan warna RGB gambar ke bentuk gelap dan
terang menggunakan 3 kali proses yaitu brightness gambar, grayscale
gambar dan deteksi tepi gambar. Hasil pengelompokkan piksel
gambarakan diproses agar didapat mana saja yang dianggap objek dan
mana saja yang dianggap background dan menjadikan tiap objek yang
terdeteksi menjadi gambar tersendiri kemudian disimpan di folder
gambar_olah agar dapat di proses dalam proses selanjutnya.
c. Activity diagramJalankan proses analisa keliling
Pada activity diagram Jalankan proses analisa keliling merupakan
alur aktivitas kerja sistem dalam mengambil tiap image di folder
gambar_olah dan mulai menghitung keliling dari image. Setelah keliling
image sudah dideteksi dan dihitung, maka hasil analisa akan ditampikan di
tabel hasil dalam aplikasi.
Activity diagram Jalankan proses analisa keliling ditunjukkan pada
Gambar 3.12 dibawah ini :
Gambar3.12 Activity diagram Jalankan proses analisa chain code
48
Setelah gambar tiap objek tersimpan di folder gambar_olah, maka
selanjutnya sistem melanjutkan proses perhitungan keliling.
d. Activity diagram Lihat analisa hasil
Padaactivity diagram Lihat analisa hasil merupakan alur aktivitas
kerja sistem dalam hal user dapat melihat hasil dari keliling image yang
telah dihitung, maka setelah itu muncul form tampil jika user menekan
tombol hasil.
Activity diagram Lihat analisa hasil ditunjukkan pada gambar 3.13
dibawah ini :
Gambar3.13 Activity diagramLihat analisa hasil
lihat data hasil
analisa
tekan tombo
hasil
tampil form tampil
tampilkan hasil di
tabel aplikasi
sistemuser
49
Setelah perhitungan selesai maka user diperintah menekan tombol
hasil, kemudian system menampilkan form tampil dan nilai hasil
perhitungan akan ditampilkan di tabel oleh system pada form tampil.
Kemudian user dapat melihat hasil perhitungan keliling dari gambar objek
hasil deteksi beserta perhitungannya.
3.2.3 Sequence diagram
Melalui tahapan analisis kebutuhan yang dilakukan sebelumnya
maka dapat dibentuk beberapa sequence diagram untuk menunjukkan
urutan-urutan proses dari masing-masing usecase. Pada aplikasi
perhitungan keliling daun bayam menggunakan citra digital ini terdapat
beberapa Sequence diagram, yaitu:
a. Sequence diagram Scanning Image
Sequence diagram scanning image adalah sequence diagram yang
menjelaskan proses saat user melakukan scanning image daun dari
scanner yang telah disediakan. Pada proses inilah image daun akan
didapatkan dan akan diproses ke tahap selanjutnya yaitu tahap sistem
melakukan proses pemisahan warna dan objek image.
Sequence diagram scanning image ditunjukkan pada gambar 3.14
dibawah ini:
50
Gambar3.14 Sequence diagramscanningimage
Penjelasan:
1. User menekan aplikasi di start.
2. Ketika form aplikasi terbuka maka halaman aplikasi di load system.
3. Click tombol capture.
4. Load form scanning.
5. Sistem membuka form scanning.
6. User menekan tombol scan
7. Setelah itu proses scanning dijalankan.
8. Sistem menyimpan hasil scanning image.
9. Sistem menampilkan form scan.
useruser sistemsistem
1: start aplikasi
2: load form aplikasi
3: click capture
4: load scanning form
5: display scanning form
6: klik scan
7: run scan image process
9: load form scan
11: end
8: save image result
10: click keluar
51
10. User menekan tombol keluar.
11. End.
b. Sequence diagram jalankan proses pemisahan warna dan objek
image
Sequence diagramJalankan proses pemisahan warna dan objek
image adalah sequence diagram yang menjelaskan proses proses
pengaturan pemilahan warna akan terdiri dari buah jenis pixel warna yaitu
0 (hitam) dan 255(putih) dengan brightness image, grayscale dan deteksi
tepi gambar.
Setelah terpilah warna image, maka akan dideteksi oleh sistem piksel
mana saja dari image yang merupakan objek benda dan pixel mana saja
yang merupakan background image maka system melakukan proses
selanjutnya yaitu analisa keliling.
Sequence diagram proses pemisahan warna dan objek image ditunjukkan
pada gambar 3.15 dibawah ini:
52
Gambar 3.15 Sequence diagram Jalankan proses
pemisahan warna dan objek image.
Penjelasan:
1. Sistem membuka image dari hardisk.
2. Sistem menjalankan brightness mode yaitu mengganti warna piksel
dengan rumus Red = Redx0.241, Green = Greenx0.59, Blue = Bluex0.3
3. Image brightness mode tercipta.
4. Sistem menjalankan brightness mode yaitu mengganti warna piksel
dengan rumus Red = Redx0.11, Green = Greenx0.59, Blue = Bluex0.3
sistemsistem harddriveharddrive
1: load image from hard drive
2: set R*0.241,G*0.59,B*0.3
3: hasil piksel brightness
4: set R*0.11,G*0.59,B*0.3
5: hasil piksel grayscale
6: run cannyedgedetector
7: hasil piksel edge detection
8: split tiap object yang terdeteksi
9: simpan tiap objek ke hard drive
10: end
53
5. Image hasil brightness tercipta.
6. Sistem melakukan deteksi tepi.
7. Piksel hasil deteksi tepi tercipta.
8. Pisahkan tiap objek daun yang terdeteksi.
9. Simpan tiap objek daun ke hardisk.
10. End.
c. Sequence diagram Jalankan proses analisa keliling
Sequence diagram Jalankan proses analisa keliling adalah sequence
diagram yang menjelaskan proses saat sistem mengambil tiap image di
folder gambar_olah dan mulai menghitung keliling dari objek daun bayam.
Setelah area image sudah dideteksi dan dihitung, maka hasil analisa akan
ditampikan di tabel hasil dalam aplikasi.
Sequence diagram Jalankan proses analisa keliling ditunjukkan pada
Gambar 3.16 dibawah ini :
Gambar 3.16 Sequence diagram Jalankan proses
analisa chain code
sistemsistem
1: ambil piksel image hasil brightness image
2: detect white piksel
3: run deteksi keliling
4: result keliling object
54
Penjelasan:
1. Sistem menjalankan proses buka image hasil deteksi.
2. Sistem mendeteksi jumlah piksel putih yang mengelilingi object
3. Hitung jumlah piksel.
4. Hasil keliling.
5. End.
d. Sequence diagram Lihat analisa hasil
Sequence diagram Lihat analisa hasil adalah sequence diagram
yang menjelaskan proses saat user dapat melihat hasil dari image yang
dihitung menggunakan citra digital, maka setelah itu muncul form tampil
jika user menekan tombol hasil.
Sequence diagram Lihat analisa hasil ditunjukkan pada Gambar 3.17
dibawah ini
Gambar 3.17 Sequence diagram Jalankan proses
analisa chain code
useruser sistemsistem
3: set hasil to tabel
4: display
5: end
1: klik hasil
2: load form tampil
55
Penjelasan :
1. User menekan tombol hasil.
2. Sistem membuka form tampil
3. Set hasil ke tabel hasil.
4. Tampilkan tabel hasil
5. End.
3.2.4 Class Diagram
Berikut ini merupakan gambar dari class diagram aplikasi
perhitungan area daun bayam. yang mana class diagram ini menampilkan
beberapa kelas serta atribut dan operasi yang terjadi di dalam kelas dan
interaksi terhadap kelas yang lain dalam aplikasi perhitungan keliling daun
bayam menggunakan citra digital.
Class diagram yang digunakan dalam aplikasi ini ditunjukkan pada
Gambar 3.18 dibawah ini.
56
Gambar 3.18 Class Diagram
Class diagram pada Gambar 3.12 diatas menunjukkan halaman -
halaman yang berperan pada sistem aplikasi perhitungan keliling daun
bayam menggunakan citra digital.
Dimana class yang berperan dalam jalannya system pada aplikasi ini
dapat ditunjukan pada Table 3.2 dibawah ini :
57
Table 3.4 Tabel class diagram yang terdapat dalam sistem
No Class Keterangan
1 intro kelas yang berisi menu menu yang ada
dalam aplikasi.
2 Aplikasi Kelas dalam system yang berisi aplikasi
pendeteksi area daun bayam.
3 Scan_ Kelas yang berisi proses scanning image
daun bayam. Dan konektor system dengan
device scanner.
4 tampil kelas yang berisi proses tampil hasil
perhitungan.
5 Image Rendere Kelas yang berisi perintah tampil icon pada
tabel.
6 about kelas yang berisi proses tampilkan tentang
system.
3.3.5 Rancangan Interface
Graphical User Interface atau yang sering disebut sebagai GUI adalah
tampilan dari program yang bisa dinikmati oleh user.Perancangan Use
rInterface harus dibuat semenarik dan seindah mungkin dengan tetap
mengutamakan kenyamanan dalam mengoperasikan program (user friendly).
Tampilan User Interface pada aplikasi perhitungan keliling daun bayam
menggunakan citra digital ini meliputi tampilan form aplikasi yang
ditampilkan menggunakan bahasa pemrograman java menggunakan editor
Netbeans 7.0. Berikut merupakan rancangan tampilan desain interface dari
aplikasi.
58
a. Perancangan Tampilan Awal Aplikasi
Perancangan Tampilan Awal Aplikasi yang merupakan form utama
pada saat user mengakses aplikasi perhitungan keliling daun bayam
menggunakan citra digital.
Form ini akan otomatis muncul ketika user membuka aplikasi
perhitungan keliling daun bayam menggunakan citra digital. Halaman ini
dimaksudkan untuk memberi form perkenalan aplikasi keada user
melalui interface program.
Gambar dari perancangan tampilan awal aplikasi perhitungan keliling
daun bayam menggunakan citra digital ditunjukkan pada gambar 3.19
dibawah ini.
Gambar 3.19 Interface Halaman Awal Aplikasi
b. Perancangan Tampilan Menu Utama Aplikasi
Perancangan Tampilan Menu Utama Aplikasi merupakan form
yang berisi link menuju semua halaman yang ada dalam aplikasi
Logo UIN
Nama Aplikasi
Masuk
59
perhitungan keliling daun bayam menggunakan citra digital pada saat user
telah membuka aplikasi.
Formini akan otomatis muncul ketika user telah menekan tombol
masuk pada form utam.Halaman ini dimaksudkan untuk memberi form
yang bisa mengakses form lainnya yang ada dalam aplikasi.
Gambar dari perancangan tampilan menu utama aplikasi perhitungan
keliling daun bayam menggunakan citra digital ditunjukkan pada Gambar
3.20 dibawah ini.
Gambar 3.20 Interface Halaman Menu Utama Aplikasi
c. Perancangan Tampilan Aplikasi
Perancangan Halaman Menu Aplikasi merupakan form dimana
proses perhitungan keliling objek daun bayam ada. Di form inilah semua
proses yang telah dipaparkan diatas ada disini mulai dari proses scanning
program, proses brightness image, penggrayscalean image dan edge
detection image serta pemisahan objek yang terdeteksi dan proses
penghitungan keliling image dengan citra digital.
Gambar dari perancangan tampilan dari aplikasi perhitungan
Logo UIN
Nama Aplikasi
Aplikasi About Keluar
60
keliling daun bayam menggunakan citra digital ditunjukkan pada Gambar
3.21 dibawah ini.
Gambar 3.21 Interface Halaman Aplikasi
d. Perancangan Tampilan Scan
Perancangan Halaman Menu Scan merupakan form dimana semua
fungsi scanning objek melalui device scanner berada. Pada form inilah
gambar yang akan diproses dalam aplikasi perhitungan keliling daun
bayam menggunakan citra digital dibuat.
Gambar dari perancangan tampilan scan dari aplikasi perhitungan
keliling daun bayam menggunakan citra digital ditunjukkan pada gambar
3.22 dibawah ini.
Tampilan Image Capture
ScanImage Proses Hasil Kembali
61
Gambar 3.22 Interface Halaman Scan
e. Perancangan Tampilan Tampil Hasil
Perancangan Halaman Menu Scan merupakan form dimana semua
hasil perhitungan menggunakan citra digital lengkap dengan gambar
objek yang terdeteksi akan ditampilkan di tabel dalam form ini.
Gambar dari perancangan tampilan tampil hasil dari aplikasi
perhitungan keliling daun bayam menggunakan citra digital ditunjukkan
pada Gambar 3.23 dibawah ini.
Gambar 3.23 Interface Halaman Tampil Hasil
Select Device Scan Keluar
No
Kembali
Keliling Persen Image
62
f. Perancangan Tampilan Halaman About
Perancangan Halaman about aplikasi merupakan form dimana user
dapat melihat tentang info aplikasi baik mengenai info aplikasi dan
pembuat aplikasi.
Gambar dari perancangan tampilan dari halaman about aplikasi
ditunjukkan pada Gambar 3.24 dibawah ini.
Teks
Gambar 3.24 Interface Halaman About
Teks About
Kembali
63
BAB IV
IMPLEMENTASI DAN PENGUJIAN
4.1. Implementasi Sistem
Aplikasi perhitungan keliling daun bayam menggunakan citra digital
dikembangkan menggunakan perangkat dengan spesifikasi sebagai berikut :
1. Laptop yang digunakan memiliki spesifikasi :
- Processor Intel(R) Core(TM) i3 CPU M 330 @2.13 GHz.
- Memori (RAM) 2GB.
2. Scanner
3. Sistem Operasi Windows 7 32-bit.
4. Netbeans 7.0 dan JDK 6.
4.1.1. Antar Muka Aplikasi
Ketika aplikasi pertama dijalankan, tampilan yang muncul adalah form
menu utama seperti Gambar 4.1. Pada menu utama ini berisi pilihan menu
seperti menu untuk menuju ke form aplikasi dan about. Dibawah ini tampilan
antar muka form menu utama yang berguna sebagai jembatan menuju form
aplikasi dan about aplikasi yang ada dalam program.
64
Gambar 4.1 Antar muka menu utama
Pada form menu utama terdapat 3 tombol menu dimana 2 tombol menu
bisa menghubungkan user ke form lain dalam aplikasi dan 1 tombol sebagai
pemberhenti jalannya aplikasi. Berikut deskripsi dan tampilan dari 2 form
yang ada dan dihubungkan oleh menu utama yaitu :
a. Form aplikasi yaitu form yang didalamnya terdapat sistem pendeteksi
objek daun bayam dan penghitung keliling objek daun bayam
menggunakan citra digital.
Dibawah ini adalah tampilan antar muka form aplikasi yang berguna
sebagai sistem pendeteksi objek dan penghitung keliling daun bayam
menggunakan citra digital.
65
Gambar 4.2Antar muka menu ke dua
Sementara itu dalam form aplikasi terdapat form yang berhubungan yaitu
form scan untuk proses scanning objek dan form tampil hasil perhitungan.
Berikut 2 form yang telah disebutkan diatas.
Form Scan yaitu form yang didalamnya terdapat sistem scanning daun
bayam menggunakan device scanner. Dibawah ini adalah tampilan antar
muka form scanning yang berguna sebagai sistem scanning objek.
Gambar 4.3 Antar muka menu scanning objek
Form Tampil hasil yaitu form yang didalamnya terdapat sistem untuk
menampilkan hasil perhitungan keliling dari objek daun bayam
menggunakan citra digital. Dibawah ini adalah tampilan antar muka form
66
penampil hasil perhitungan keliling dari objek daun bayam menggunakan
citra digital.
Gambar 4.4 Antar muka menu tampil hasil
b. Form about yaitu form yang didalamnya terdapat informasi tentang apa
dan fungsi dari aplikasi yang dibuat. Dibawah ini adalah tampilan antar
muka form about yang berguna sebagai sistem pemberi informasi tentang
apa dan fungsi dari aplikasi yang dibuat.
Gambar 4.5 Antar muka menu about
67
4.1.2 Implementasi Kode Program
4.1.2.1 Kode Program ScanningObjek
Kode program scanningobjek adalah kode program untuk menyalakan
device scanner, kemudian setelah menyala tiap frame image akan di scanning
dan secara otomatis di simpan dalam folder uji yang ada di folder utama
aplikasi.
Berikut adalah kode program untuk sistem scanning objek yang ada
dalam aplikasi perhitungan keliling daun bayam menggunakan citra digital.
/////////////////select device scanner jButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { if (scanner.isBusy() == false) { selectDevice(); jButton.setEnabled(false); jButton1.setEnabled(true); jButton2.setEnabled(false); } } }); //////////////////////////////////////////////////////////////////////proses scan if (jButton1 == null) { jButton1 = new JButton(); jButton1.setBounds(new Rectangle(160, 16, 131, 42)); jButton1.setText("Scan"); jButton1.setEnabled(false); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { getScan(); } });
} public void getScan() { try { scanner.acquire(); } catch (ScannerIOException e1) { IJ.showMessage("Access denied! \nTwain dialog maybe
68
already opened!"); // e1.printStackTrace(); }
} public void update(ScannerIOMetadata.Type type, ScannerIOMetadata metadata) { ///////////////////////////////////////////////////////////////////////////// if(type.equals(ScannerIOMetadata.ACQUIRED)){ BufferedImageimage=metadata.getImage(); System.out.println("Have an image now!"); try{ ImageIO.write(image, "png", new File("D://mmsc_image.png")); }catch(Exception e){ e.printStackTrace(); } }else if(type.equals(ScannerIOMetadata.NEGOTIATE)){ ScannerDevice device=metadata.getDevice(); try{ // device.setShowUserInterface(true); // device.setShowProgressBar(true); // device.setResolution(100); }catch(Exception e){ e.printStackTrace(); } }else if(type.equals(ScannerIOMetadata.STATECHANGE)){ System.err.println(metadata.getStateStr()); if(metadata.isFinished()){ setVisible(true); //System.exit(0); jButton.setEnabled(false); jButton1.setEnabled(false); jButton2.setEnabled(true); } }else if(type.equals(ScannerIOMetadata.EXCEPTION)){ metadata.getException().printStackTrace();
} }
Gambar 4.6 Kode program scanningimage
Gambar 4.6 memperlihatkan potongan kode program untuk
mengscanning image dari scanner, dimana dalam melakukan proses tersebut
69
pertama-tama sistem mendeteksi device scanner dengan menggunakan
variabel scanner selectdevice() dari library jtwain.
Setelah terdeteksi maka untuk mengambil image dari scanning maka
dipergunakan variabel aquire() dari library jTwain. Dan setelah image
terekam, maka secara otomatis sistem menyimpannya ke folder ASAS/uji/
dengan bantuan var Scanner IOMetadata.ACQUIRED.
4.1.2.2. Kode Program Proses Pemisahan Piksel Image
Kode program proses pemisahan piksel image ke 2 jenis piksel utama
terang (putih) dan gelap(hitam) adalah kode program untuk mengubah image
hasil scanning menjadi 2 jenis yaitu gelap(hitam) dan terang(putih). Hingga
nanti akan terpisahkan antara objek yang terdeteksi dengan background
objek.
Berikut adalah kode program untuk sistem proses pemisahan piksel
image yang ada dalam aplikasi perhitungan keliling daun bayam
menggunakan citra digital.
BufferedImageimage1 = new
BufferedImage(img10.getWidth(),img10.getHeight(),BufferedImage.TYPE_INT_RGB);
WritableRaster raster = image1.getRaster();
for(int i=0;i<img10.getWidth();i++){
for(int j=0;j<img10.getHeight();j++){
int[] Kolor = RGB(img10,i,j);
double R = Math.pow(Kolor[0],2);
double G = Math.pow(Kolor[1],2);
double B = Math.pow(Kolor[2],2);
double TRGB = (R * .241) + (G * .691) + (B * .068);
double RATA = Math.sqrt(TRGB);
70
//http://www.nbdtech.com/Blog/archive/2008/04/27/Calculating-the-Perceived-
Brightness-of-a-Color.aspx
if(RATA<130){ raster.setPixel(i,j,white); }else{ raster.setPixel(i,j,black); } //System.out.print("["+RATA+"],"); } //System.out.print("\n"); } try { ImageIO.write(image1,"jpg",new File(path3)); } catch (IOException ex) { System.out.print("Error "+ex);
}
////////////////////////////deteksi objek=00///////////////////////////////////////////
BufferedImage img00 = null;
try {
img00 = ImageIO.read(new File(path3));
} catch (IOException e) {
}
img00=grayscale(img00);//proses grayscale
img00=edge(img00);//deteksi tepi
BufferedImage grayscale(BufferedImage IB){
for (int x = 0; x < IB.getWidth(); x++) {
for (int y = 0; y < IB.getHeight(); y++) {
int[] clr = RGB(IB,x, y);
int merah = (int) (0.11*clr[0]) + (int) (0.59*clr[1]) + (int) (0.3*clr[2]);
int hijau = (int) (0.11*clr[0]) + (int) (0.59*clr[1]) + (int) (0.3*clr[2]);
int biru = (int) (0.11*clr[0]) + (int) (0.59*clr[1]) + (int) (0.3*clr[2]);
Color colore = new Color(merah,hijau,biru);//pasang warna ke lib warna
int rgb = colore.getRGB();
IB.setRGB(x, y, rgb); //pasang warna ke pixel
}
71
}
return IB;
}
BufferedImage edge(BufferedImage IB){
CannyEdgeDetector detector = new CannyEdgeDetector();//lib canny edge detectot
detector.setLowThreshold(0.5f);//set treshold terendah
detector.setHighThreshold(1f); //set treshold tertinggi
detector.setSourceImage(IB);
detector.process();
BufferedImage edges = detector.getEdgesImage();
return edges; }
Gambar 4.7Kode program pemisahan piksel image
Gambar 4.7 adalah kode program untuk mengubah image menjadi lebih
terang hingga hanya terdeteksi 2 jenis image yaitu gelap(hitam) dan
terang(putih) dan dalam prosesnya pengubahan image dilakukan dengan cara
mengalikan RGB piksel dengan nilai 0.241 untuk warna piksel R, 0.59 untuk
piksel G, dan 0.3 untuk piksel B dan proses ini disebut brightness.
Kemudian proses pengubahan image dilakukan dengan cara mengalikan
RGB piksel dengan nilai 0.11 untuk warna piksel R, 0.59 untuk piksel G, dan
0.3 untuk piksel B dan proses ini disebut grayscale.
Dan Terakhir proses pemisahan piksel adalah melakukan proses
pendeteksian tepi menggunak library CannyEdgeDetector yang ada dalam
class CannyEdgeDetector.
72
4.1.2.3 Kode Program Proses Pemisahan Tiap Objek yang dideteksi
Kode program proses pemisahan tiap objek yang dideteksi menjadi
beberapa objek baru adalah kode program untuk mencari dan menjadikan
objek sebagai gambar baru dan disimpan di folder pengyimpanan..
Berikut adalah kode program untuk sistem proses pemisahan tiap objek
yang dideteksi menjadi beberapa objek baru yang ada dalam aplikasi
perhitungan keliling daun bayam menggunakan citra digital.
boolean sudah00=false;
ArrayList<Integer> nA00 = new ArrayList<Integer>();
ArrayList<Integer> nAA00 = new ArrayList<Integer>();
ABI.clear();
///////////////////////////////////////////////////////
while(sudah00==false){
int[] pl00 = cek1(img00);
int xket = pl00[0];//xtengah
int yket = pl00[1];//Ymin
int[] XYmin = XMINUS(img00,xket,yket);
int Xmin = XYmin[0];
int Yteng = XYmin[1];
//akhir cari Xmin//
System.out.print("X0="+xket+" yket="+yket+"\n");
System.out.print("X0="+xket+" yket="+yket+"\n");
int baruX = cek2b(img00,xket,yket);
int[] XYmax = XMAXIMUS(img00,baruX,yket);
int Xmax = XYmax[0];
int Yteng1 = XYmax[1];
//cari Ymax tengah//
int YmaxKr = YMAXIMUSKIR(img00,Xmin,xket,Yteng);
int YmaxKn = YMAXIMUSKAN(img00,baruX,Xmax,Yteng);
73
int Ymax = Math.max(YmaxKr,YmaxKn);
//end cari Ymax tengah//
//BufferedImage IC = buatin(img,Xmin,Xmax,yket,Ymax);
System.out.print("X1="+Xmin+" X2="+Xmax+" Y1="+yket+" Y2="+Ymax+"\n");
BufferedImage IC = Create(img00,Xmin,Xmax,yket,Ymax);
img00 = bersihkan(img00,Xmin,Xmax,yket,Ymax);
ABI.add(IC);
//nA.add(xket);
//nAA.add(yket);
sudah00 = kosong(img00);
//sudah=true;
}
ITEMP.clear();
ITEMK.clear();
for (int i = 0; i < ABI.size(); i++) {
//System.out.print("Gambar ke "+i+"\n");
File outputfiler = new File("d://ASAS/gambar_olah/"+i+".jpg");
File outputfilers = new File("d://ASAS/gambar_kecil/"+i+".jpg");
try {
ImageIO.write(ABI.get(i), "jpg", outputfiler);
} catch (IOException ex) {
Logger.getLogger(Aplikasi.class.getName()).log(Level.SEVERE, null, ex);
}
BufferedImage scaledImg = Scalr.resize(ABI.get(i), Mode.FIT_EXACT, 16,29);//set
dimension of result image
try {
ImageIO.write(scaledImg, "jpg", outputfilers);
} catch (IOException ex) {
74
Logger.getLogger(Aplikasi.class.getName()).log(Level.SEVERE, null, ex);
}
ITEMP.add("d://ASAS/gambar_olah/"+i+".jpg");
ITEMK.add("d://ASAS/gambar_kecil/"+i+".jpg");
}
Gambar 4.8Kode program pemisahan tiap objek yang dideteksi menjadi beberapa
objek baru
Gambar 4.8 adalah kode program untuk pemisahan tiap objek yang
dideteksi menjadi beberapa objek baru dimana dalam prosesnya pertama
dilakukan deteksi titk awal menggunakan fungsi cek1(). Kemudian dicari
xmin agar letak x minimum terdeteksi dengan menggunakan fungsi
XMINUS(). Kemudian dicari xmax agar letak x maximum terdeteksi dengan
menggunakan fungsi XMAXIMUS(). Setelah itu cari ykanan dan kiri dengan
fungsi YMAXIMUSKIR() dan YMAXIMUSKAN().
Setelah itu buat gambar dari koordinat yang ditentukan dari xminimum
dan maksimum serta y minimum dan maksimum dari objek image uji
menggunakan fungsi CREATE(). Setelah itu hapus gambar dari image uji
menggunakan fungsi bersihkan(). Dan deteksi apakah gambar uji telah
kosong yang berarti tidak ada objek lagi untuk dideteksi menggunakan fungsi
kosong(). Dan terakhir simpan gambar objek ke folder di harddisk
menggunakan variableImageIO.write(scaledImg, "jpg", outputfilers);
75
4.1.2.4 Kode Program Penghitung keliling objek daun
Kode program proses penghitung keliling adalah kode program untuk
melakukan proses perhitungan keliling objek yang dideteksi dari proses
sebelumnya. Melalui proses inilah nantinya keliling dari objek yang
terdeteksi dapat dianalisa dan ditemukan..
Berikut adalah step dari kode program untuk sistem proses penghitung
keliling yang ada dalam aplikasi perhitungan keliling daun bayam
menggunakan citra digital mulai dari membuka gambar hasil olah pada proses
pemisahan objek yang terdeteksi sampai keluarnya hasil keliling dari daun
bayam.
a) Perhitungan persen kesamaan objek dengan sample
int benar = 0;
int salah = 0;
int tots = 0;
double persen = 0;
for (int r = 0; r < INPUTS.getWidth(); r++) {
for (int s = 0; s < INPUTS.getHeight(); s++) {
Color colors = new Color(INPUTR.getRGB(r,s));
int reds = colors.getRed();
int greens = colors.getGreen();
int blues = colors.getBlue();
double ratas = reds+greens+blues;
ratas=ratas/3;
///////////////////////////////////////////////////
Color color = new Color(INPUTS.getRGB(r,s));
int red = color.getRed();
int green = color.getGreen();
int blue = color.getBlue();
76
double rata = red+green+blue;
rata=rata/3;
if(rata>0){
if(ratas>0){
//System.out.print(""+rata+"="+ratas+",");
benar++;
}else{
//System.out.print(""+rata+"="+ratas+",");
salah++;
}
}else{
//System.out.print(""+rata+"="+ratas+",");
}
//System.out.print(""+ratas+",");
}
//System.out.print("\n");
}
tots = benar+salah;
persen = (double)benar/(double)tots;
persen=persen*100;
//System.out.print("persen = ("+benar+"/"+tots+")*100 =
"+salah+"\n");
PRS.add(persen);
System.out.print("Dari "+tots+" Piksel Image ini Benar
"+benar+" dan Salah "+salah+"\n");
System.out.print("Persentase = "+persen+" %\n");
Gambar 4.9 Kode program perhitungan kesamaan objek dengan sample
77
Pada gambar 4.9 diperlihatkan potongan kodeprogram untuk
menghitung kesamaan objek yang dideteksi dengan sample daun bayam yang
ada pada sistem.
b) Proses Pembuatan Kode Rantai.
CODE.clear();
XXX.clear();
YYY.clear();
int[] XYA = awal(INPUT);
XXX.add(XYA[0]);
YYY.add(XYA[1]);
CODE.add(0);
System.out.print("X awal "+XYA[0]+" Y awal "+XYA[1]+" dan Kode =
0\n");
for(int t = XYA[1];t<INPUT.getHeight();t++){
int[] HSL = SEARCHKANAN(INPUT,XYA[0],t);
XXX.add(HSL[0]);
YYY.add(HSL[1]);
CODE.add(HSL[2]);
XYA[0]=HSL[0];
XYA[1]=HSL[1];
System.out.print("X="+XYA[0]+" ,Y="+XYA[1]+"
,Kode="+HSL[2]+"\n");
}
ArrayList<Integer> XX1 = new ArrayList<Integer>();
ArrayList<Integer> YY1 = new ArrayList<Integer>();
ArrayList<Integer> COD1 = new ArrayList<Integer>();
int[] XYA1 = Awal(INPUT);
XXX.add(XYA1[0]);
YYY.add(XYA1[1]);
78
CODE.add(7);
for(int t = (INPUT.getHeight()-1);t>=0;t--){
int[] HSL = SEARCHKIRI(INPUT,XYA1[0],t);
XXX.add(HSL[0]);
YYY.add(HSL[1]);
CODE.add(HSL[2]);
XYA1[0]=HSL[0];
XYA1[1]=HSL[1];
//System.out.print("X="+XYA1[0]+" ,Y="+XYA1[1]+"
,Kode="+HSL[2]+"\n");
}
Gambar 4.10 Kode program pembuatan kode rantai
Pada gambar 4.10 diperlihatkan potongan kode program untuk
pembuatan kode rantai agar nantinya dari kode tersebut dapat dihitung
keliling dari tiap objek yang telah dideteksi..
c) Menjalankan Kode Konversi Chain code .
double Y=INPUT.getHeight();
double L=0.0;
double SET=0.5;
for(int in = 0;in<CODE.size();in++){
if(CODE.get(in) ==0){
Y=Y;
L=L;
}else if(CODE.get(in)==1){
Y=Y;
L=L;
}else if(CODE.get(in)==2){
Y=Y+1;
79
L=(L-(SET+Y));
}else if(CODE.get(in)==3){
Y=Y;
L=L+Y;
}else if(CODE.get(in)==4){
Y=Y-1;
L=L+(SET+Y);
}else if(CODE.get(in)==5){
Y=Y-1;
}else if(CODE.get(in)==6){
Y=Y-1;
L=L-(SET-Y);
}else if(CODE.get(in)==7){
L=L-Y;
}else if(CODE.get(in)==8){
Y=Y+1;
L=L+(SET-Y);
}
}
System.out.print("Luas Piksel Image ini = "+L+" \n");
System.out.print("Keliling Piksel Image ini = "+CODE.size()+" \n");
Gambar 4.11 Kode program proseschain code
Pada gambar 4.11 diperlihatkan potongan kode program untuk
perhitungan keliling gambar dari konversi kode rantai yang telah didapat dari
proses sebelumnya.
d) Menampilkan Hasil dalam Tabel .
public void DATA(ArrayList<String> icons,ArrayList<ArrayList<Integer>>
chain_code,ArrayList<Integer> Pjg,ArrayList<Integer> Lbr,ArrayList<Double>
80
Luas,ArrayList<Double> Keliling,ArrayList<Double> Prs){
jTable1.getColumnModel().getColumn(3).setCellRenderer(new
ImageRenderer());
DefaultTableModel Tmodel=(DefaultTableModel) jTable1.getModel();
int heig = 0;
int widt = 0;
for(int i=0;i<icons.size();i++){
int j=i+1;
ImageIcon icon = new ImageIcon(icons.get(i));
File f = new File(icons.get(i));
BufferedImage img = null;
try {
img = ImageIO.read(f);
} catch (IOException e) {
}
double PanA = (double)Pjg.get(i);
double Pan = (double)Pjg.get(i)*0.048;
double LebA = (double)Lbr.get(i);
double Leb = (double)Lbr.get(i)*0.049;
double LusA = (double)Luas.get(i);
double Lus = (double)Luas.get(i)*0.002352;//(Pan*Leb);
double KelA = (double)Keliling.get(i);
double Kel = (double)Keliling.get(i)*0.048;
double Asli = Pan * Leb;
double Modulus = Lus - Asli;
if(Modulus<0){
Modulus=-1*Modulus;
}
double Erelatif = (Modulus/LusA)*100.0;
double keliling = 2*(PanA+LebA);//px
//double keliling = chain_code.get(i).size();//px
81
//double keliling = 2*(Pan+Leb);//cm
//double skeliling = 0.048*0.049;
//keliling=keliling*skeliling;
Tmodel.setValueAt(j, i, 0);
//Tmodel.setValueAt(DF(Kel)+"("+KelA+")", i, 1);//ch
Tmodel.setValueAt(""+keliling+" Pixel", i, 1);//p har
Tmodel.setValueAt(Erelatif+"%", i, 2);
String P="";
for(int p=0;p<chain_code.get(i).size();p++){
if(p==0){
P+=chain_code.get(i).get(p)+"";
}else{
P+=","+chain_code.get(i).get(p)+"";
}
}
Tmodel.setValueAt(icon, i, 3);
heig = Math.max(heig,img.getHeight());
widt = Math.max(widt,img.getWidth());
}
jTable1.setRowHeight(heig);
TableColumn column = null;
column = jTable1.getColumnModel().getColumn(0);
column.setPreferredWidth(50);
column = jTable1.getColumnModel().getColumn(1);
column.setPreferredWidth(100);
column = jTable1.getColumnModel().getColumn(2);
column.setPreferredWidth(100);
column = jTable1.getColumnModel().getColumn(3);
column.setPreferredWidth(widt);
}
Gambar 4.12 Kode program tampil hasil perhitungan
82
Pada gambar 4.12 diperlihatkan potongan kodeprogram untuk
menampilkan data hasil perhitungan dari tiap objek gambar yang telah
dideteksi sebagai objek daun.
4.2. Tahap Pengujian
Tahap pengujian dilaksanakan untuk mengetahui program yang dibuat
mampu berjalan dengan baik atau tidak, sesuai alur proses yang diinginkan serta
untuk mengetahui kekurangan program yang telah dibuat.
4.2.1 Pengujian Pada Objek Daun secara manual
Perhitungan luas daun dilakukan dengan menempelkan daun bayam ke kertas
milimeter kemudian di blat/jiplak menggunakan bolpoin pada garis tepi daun.
Jangan lupa diberi tanda untuk daun dan hasil blat, agar tidak ketukar atau
kesulitan untuk mencocokan kembali
Hasil pengujian yang dilaksanakan akan mengetahui letak keberhasilan
dalam menghitung keliling secara manual. dilihat pada gambar 4.16
Gambar 4.13 proses perhitungan menggunakan kertas milimeter
83
4.2.2. Pengujian Scanning Gambar
Pengujian ini dilakukan untuk mengetahui apakah proses scanning
image berhasil dan tersimpan didevice harddisk yang telah di tentukan.
Hasil pengujian proses capture ditunjukkan pada gambar yang terlihat
dibawah ini :
No Gambar Deskripsi
1
Posisi Awal Form
2
Posisi Ketika
menekan tombol
scan image.
84
3
Posisi ketika
tombol Select
Device ditekan
4
Posisi ketika
tombol Scan
ditekan.
5
Posisi ketika proses
scanning.
6
Posisi ketika proses
scanning selesei.
85
7
Hasil Scanning di
form aplikasi.
8
Hasil scanning di
folder uji.
Gambar 4.14 Pengujian Scanning Gambar
86
4.2.3 Pengujian Proses Pemisahan Warna Dan Objek Image
Pengujian proses pemisahan warna dan objek image ini dilakukan untuk
mengetahui apakah proses pemisahan warna dan objek image berhasil dan
tersimpan di device harddisk yang telah di tentukan.
Hasil pengujian proses pemisahan warna dan objek image ditunjukkan pada
gambar 4.14 dibawah ini :
No Gambar Deskripsi
1
Posisi Awal Image
Yang terdeteksi.
2
Hasil setelah proses
pemisahan warna
didevice harddisk.
87
3
Hasil setelah
pemisahan objek
image didevice hard
disk.
Gambar 4.15 Pengujian brightnes simage
4.2.4. Pengujian Analisa keliling Image
Pengujian ini dilakukan untuk mengetahui apakah proses analisa keliling
image berhasil dan tersimpan didevice harddisk yang telah di tentukan.
No Gambar Deskripsi
1
Posisi Awal Image
Yang terdeteksi.
88
2
Hasil setelah proses
pemisahan warna
image didevice
harddisk.
3
Output Hasil
Perhitungan chain
code.
4
Hasil Image yang
terdeteksi.
Gambar 4.16 Pengujian analisa keliling gambar
89
4.3 Pembahasan Data Hasil Uji Coba
4.3.1 Hasil pengujian pada multi objek
Hasil pengujian yang dilaksanakan akan mengetahui letak keberhasilan
program dalam menentukan objek daun secara single ataupun multi
objek. Hal tersebut dapat dilakukan karena dalam pengujian yang
dilakukan digunakan beberapa objek daun baik itu menggunakan 1
daun atau lebih dari 1 daun. Hasil pengujian dapat dilihat dari Gambar
4.17 berikut:
Gambar 4.17 uji coba pada multi objek
90
Table 4.1 Hasil Pengujian
No Nama Benda Berhasil? Deskripsi
1 1 Daun Ya Daun yang di coba berhasil
dideteksi dengan persentase Daun
sebesar 90%
2 2 Daun Ya Daun yang di coba berhasil
dideteksi dengan persentase Daun
1 sebesar 88.4% dan daun 2
95.3%
3 3 Daun Ya Daun yang di coba berhasil
dideteksi dengan persentase Daun
1 sebesar 85.4% dan daun 2
85.3% dan daun 3 86.4%
Dari tabel diatas dapat disimpulkan bahwa untuk objek 1 daun sudah dapat
terdeteksi dengan persentase >80% dan untuk objek banyak daun atau lebih dari 1
juga sudah dapat dideteksi.
Maka dari hal itu dapat dikatakan bahwa selain dapat mendeteksi objek 1 daun
aplikasi ini juga dapat membedakan yang mana objek daun dalam jumlah tidak 1
atau multi objek.
91
4.3.2 Hasil Uji Coba Dalam Bentuk Sederhana
Hasil pengujian yang pertama di lakukan pada bentuk sederhana dan
terukur. Di perlukan untuk menguji program dalam menghitung keliling objek
dan multi objek berikut hasil uji coba dalam bentuk sederhana pada bentuk
kubus, persegi, panjang, segi tiga, dan lingkaran. Berikut hasil perbandingan dari
gambar asli dan menggunakan citra digital.
Tabel 4.1 uji coba dalam bentuk sederhana
Gambar Ukuran asli Citra digital Persen eror
574 pixel 580 pixel
1.04 %
601 pixel 615 pixel 2.32%
289 pixel 293 pixel 1.38%
92
4.3.2 Hasil Uji Coba Perhitungan Secara Manual Dan Citra Digital
Setelah dilakukan uji coba, diperoleh data pembandingan antara
perhitungan luas area daun dengan menggunakan kertas millimeter block
(manual) dan menggunakan Citra Digital, Dari perhitungan yang telah di buat ada
sebanyak 11 buah daun . Semua hasil akan dijumlah, dan dihitung tingkat
errornya. Dengan rumus :
( )
= Jumlah Total keliling Perhitungan Manual
= Jumlah Total keliling Perhitungan Dengan Citra Digital
Adapun untuk hasil penelitian bisa dilihat pada tabel berikut :
Tabel 4.2 Hasil Perhitungan keliling daun bayam dengan kertas millimeter dan
Citra Digital
No
Daun
Menggunakan
kertas
milimeter
(Cm2)
Menggunakan
citra digital
(Cm2)
Selisih
(Cm2)
Persen
Error
(%)
1 16 Cm2 15.9753 Cm
2 0.0247 Cm
2 0.15 %
2 11 Cm2 10.9415 Cm
2 0.0585 Cm
2 0.53 %
3 12 Cm2 12.0802 Cm
2 0.0802 Cm 0.66 %
4 12 Cm2 11.9152 Cm
2 0.0848 Cm
2 0.70 %
5 12 Cm2 12.0268 Cm
2 0.0268 Cm
2 0.22 %
6 13.5 Cm2 13.5651 Cm
2 0.0651 Cm
2 0.48 %
7 10 Cm2 10.0014 Cm
2 0.0014 Cm
2 0.013 %
8 13.8 Cm2 13.7288 Cm
2 0.0712 Cm
2 0.51 %
93
9 13 Cm2 12.9488 Cm
2 0.0512 Cm
2 0.39 %
10 10 Cm2 9.9202 Cm
2 0.0798 Cm
2 0.7979 %
11 10.3 Cm2 10.2686 Cm
2 0.0314 Cm
2 0.3045 %
Eror Rata- Rata Dari 11 Sampel daun 4.79 : 11
= 0.43%
Untuk perhitungan keliling dengan perbandingan Manual dan Citra
Digital, didapati tingkat errornya adalah 0.43 %. Ini merupakan tingkat error yang
sangat baik. Jadi akurasinya adalah 99.57 % jika dibandingkan dengan
perhitungan manual menggunakan kertas milimeter.
Penghitungan manual dinggap lebih akurat karena memiliki tingkat
ketelitian dan bisa diulang-ulang. Selisih dengan penghitungan manual
menggunakan kertas milimeter cukup rendah, dan bisa dijadikan tolak ukur
sebagai pembanding. Dari tabel hasil penelitian dapat diketahui bahwa keliling
daun bayam dengan jumlah uji coba 11 daun, antara perhitungan Manual dengan
Citra Digital memiliki perbedaan sebesar 0.43%.
Sementara untuk perbandingan waktu, satu pengukuran daun dengan cara manual
(mulai menjiplak, membuat media alas dan menghitung) menghabiskan waktu
lebih dari 10 menit untuk satu daunnya. Untuk menggunakan rancang
bangunpeneliti, kurang lebih hanya 1 menit sudah selesai.
94
4.4 Integrasi Agama Islam Dalam Mempelajari Tumbuhan Dan
Mengetahui Ukuran Tumbuhan
sebagaimana yang telah di singgungkan dalam latar belakang menegenai
mempelajari ilmu tumbuh tumbuhan merupakan bagian proses pembelajaran diri
pada nilai nilai agama dan ntuk kembali mengingat ciptaan allah sehingga bagi
seorang muslim merupakan tuntutan untuk hal ini. sesuai dengan firman Allah :
Artinya : Dan Kami hamparkan bumi itu dan kami letakkan padanya gunung-
gunung yang kokoh dan Kami tumbuhkan segala macam tanaman yang indah
dipandang mata, untuk menjadikan pelajaran dan peringatan bagi hamba-hamba
yang kembali mengingat Allah (QS QAAF 50 : 7-8 )
Adapun dalam ayat diatas, Allah berfirman untuk mengambil pelajaran
dari berbagai macam benda ataupun makhluk yang ada di bumi. Yang disebutkan
adalah gunung-gunung serta berbagai macam tanaman, ini karena keduanya
(gunung dan tanaman) memiliki nilai lebih untuk disebut dalam Al-quran. Selain
indah dipandang mata (menjadi penghibur hati) digunakan untuk mempelajari,
dan peringatan bagi seluruh umat manusia (muslim utamanya). Akan tetapi, tujuan
utama ada pada kalimat terakhir “bagi hamba-hamba yang kembali mengingat
Allah”, agar kembali ingat pada pencipta dunia serta isinya.
95
Tumbuhan merupakan salah satu makhluk hidup ciptaan Allah yang
memiliki banyak sekali manfaat. Tumbuh-tumbuhan dapat memunculkan
beberapa zat untuk dimanfaatkan oleh makhluk hidup lainnya, misalnya mulai
beberapa vitamin-vitamin, minyak dan masih banyak lainnya. Dalam firman-Nya
Allah menjelaskan. QS Al-an’am ayat 99:
ء فأخرجا ي بات ك م ش اء ياء فأخرجا ب انس زل ي انذي أ
جات داة ا طهعا ق انخم ي ي تراكب ا حب ا ي ا خرج ي خضر
ر ا إنى ث ظ ر ا تشاب ر ي غ شتب ا ي ا ي انر ت انز أعاب ي
و ؤي ات نق ى نك ف ذ إ ع ر إذا أث Artinya : Dan dialah yang menurunkan air hujan dari langit, lalu kami tumbuhkan
dengan air itu segala macam tumbuh-tumbuhan, maka kami keluarkan dari
tumbuh-tumbuhan itu tanaman yang menghijau. kami keluarkan dari tanaman
yang menghijau itu butir yang banyak; dan dari mayang korma mengurai tangkai-
tangkai yang menjulai, dan kebun-kebun anggur, dan (Kami keluarkan pula)
zaitun dan delima yang serupa dan yang tidak serupa. perhatikanlah buahnya di
waktu pohonnya berbuah dan (perhatikan pulalah) kematangannya. Sesungguhnya
pada yang demikian itu ada tanda-tanda (kekuasaan Allah) bagi orang-orang yang
beriman. (Al-An'aam:99)
Tumbuhan mengalami proses pertumbuhan yang sangat rumit. Mulai dari
berkecambah dengan melakukan penyerapan air dari dalam tanah tumbuhan pun
memulai perkembangannya. Biji yang tadinya tumbuh menjadi kecambah kulitnya
pun mulai robek karena perkembangannya. Selanjutnya tumbuhan mulai
mengeluarkan akar dan menembus kedalam tanah untuk mencari makanan dan
masih panjang lagi perjalanan tumbuhan menjalani proses pertumbuhannya.
96
Semua proses pertumbuhan. Mulai dari permukaan yang mendapatkan
siraman air, pergerakan, perkembangan dan pertumbuhan yang dialami oleh
tanaman mulai sejak awal sampai dengan proses selanjutnya sebenarnya telah
terangkum dalam kata didalam al-quran, seperti dalam kalimat ihtazzat yang
berarti “bergerak”,wa robat yang memiliki arti “bertambah atau berkembang”,
serta wa anbatat yang artinya “menumbuhkan”. Kata-kata yang telah disebutkan
dalam al-quran ini sangatlah sesuai dengan apa yang telah dikemukakan dalam
penelitian-penelitian ilmu pengetahuan modern (fizhilahil Quran jilid 2).
Adapun firman Allah yang lain dalam surat Al-Hijr ayat 19:
Artinya: “Dan kami telah menghamparkan bumi dan menjadikan padanya
gunung-gunung dan kami tumbuhkan padanya segala sesuatu menurut ukuran.”
(QS. Al-Hijr:19).
Maka sesungguhnya segala sesuatu yang telah diciptakan di bumi, baik itu
gunung-gunung dan tumbuhan diciptakan berdasarkan ukurannya. Begitu pula
halnya dengan daun, yang merupakan salah satu bagian tumbuhan, memiliki
ukuran tertentu berdasarkan izin Allah. Ukuran yang dimaksud adalah semua yang
dapat dihitung dan ditentukan nilainya. Tentu dengan standart berbeda, baik
ukuran dalam satuan luas, keliling, berat dan volume. Begitu halnya dengan daun
tumbuhan, yang banyak tersebar di seluruh permukaan bumi, sebagai sumber
kehidupan tumbuhan.
97
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari hasil pembuatan dan pengujian aplikasi penghitung keliling daun
bayam menggunakan citra digital dapat dikatakan telah berhasil, hal itu bisa
dilihat dari terselesaikannya semua rumusan masalah yang dihadapi dan beberapa
aspek penting yang mendukung bahwa aplikasi ini telah berhasil.
Adapun rumusan masalah dan aspek penting yang berhasil di selesaikan adalah
sebagai berikut :
1. Aplikasi telah dapat mengetahui jumlah daun yang nantinya akan di hitung
keliling daun dengan menggunakan device scanner..
2. Aplikasi telah dapat mengetahui keliling daun bayam dengan menggunakan
citra digital.
3. Pada perhitungan secara manual menggunakan kertas milimeter dan
menggunakan citra digital terdapat selisih hasil tingkat errornya adalah
0.43 %. Jadi akurasi menggunakan citra digital adalah 99.57 % jika
dibandingkan dengan perhitungan manual menggunakan kertas milimeter.
98
5.2 Saran
Dari hasil yang telah dicapai dari pembuatan aplikasi penghitung keliling
daun bayam menggunakan citra digital, ada beberapa hal yang perlu ditambahkan
agar aplikasi ini bisa lebih baik. Diantara hal yang perlu ditambahkan adalah :
1. Perlu ditambahkan lebih banyak lagi pilihan metode dalam aplikasi agar
bisa dibandingkan hasil antar metode dan lebih bisa mendekati hasil yang
nyata dalam hal pengukuran keliling.
2. Diperlukan aplikasi yang client server agar aplikasi bisa dimainkan secara
online.
3. Diperlukan pengembangan agar aplikasi bisa digunakan tidak hanya dalam
bentuk desktop tapi dalam bentuk mobile seperti android
99
DAFTAR PUSTAKA
“Al Khadir” The Holy Quran on Chloroplasts. 2009.
www.quranandscience.com/quran-science/plants/174-al-khadir-the-
holy-quran-on-chloroplasts diakses pada hari jumat, 28 November
2014 jam 08:06 WIB
penciptaan tumbuhan dalam alquran tafsir fi zhilahil Quran jilid 2
https://books.google.com.eg di akses pada hari senin 6 juli 2015
AlQuran dan Terjemahannya. Departemen Agama RI. Bandung: PT Diponegoro
An Najjar, Prof DR Zaglul. dan DR Abdul Daim Kahil. 2012. Ensiklopedia Al
Quran dan Hadits. Jakarta: PT Lentera Abadi
Achmad, Balza.2013.Pengolahan Citra Digital Menggunakan Delphi, Yogyakarta
: ANDI
Gonzalez, Rafael C, dkk. 2004. Digital Image Processing using MATLAB. New
Jersey: Prentice Hall
Hery Purnomo, Mauridhi; Mustafa, Arif. 2010. Konsep Pengolahan Citra Digital
dan Ekstraksi Fitur. Yogyakarta : Graha Ilmu.
Ikhsanuddin, Muh Ali. 2013. Rancang Bangun Perhitungan Area Daun Kacang-
Kacangan Menggunakan Citra Digital. Skripsi. Malang: UIN Maliki
Malang
Salisbury, F.B. dan C.W. Ross. 1995. Plant Physiology, 4th ed.
(FisiologiTumbuhan jilid 2, alih bahasa oleh Lukman, D.R. dan
Sumaryono). InstitutTeknologi Bandung. 173 p.Gardner, F.P., R.B.
Pearce, dan R.L. Mitchell. 1991.
Irawan. 2007. Java Untuk Orang Awam. Palembang : Maxikom.
Putra, darma. 2010. Pengolahan Citra Digital. Yogyakarta: Penerbit ANDI
Rega, kestrilia. 2008. Object Tracking dan Analisis Citra Digital untuk
Kuantifikasi Morfologi Tanaman In Vitro Hasil Teknologi Kultur
Jaringan. Thesis. Bogor: Institut Pertanian Bogor.
100
LAMPIRAN – LAMPIRAN
Gambar daun yang akan di hitung secara manual dan menggunakan citra digital
Gambar sketsa daun No 1 dan 2
101
Gambar sketsa daun No 3 dan 4
Gambar sketsa daun No 5 dan 6
Gambar sketsa daun No 7 dan 8
102
Gambar sketsa daun No 9 dan 10
Gambar sketsa daun No 11
89
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari hasil pembuatan dan pengujian aplikasi penghitung keliling daun
bayam menggunakan citra digital dapat dikatakan telah berhasil, hal itu bisa
dilihat dari terselesaikannya semua rumusan masalah yang dihadapi dan beberapa
aspek penting yang mendukung bahwa aplikasi ini telah berhasil.
Adapun rumusan masalah dan aspek penting yang berhasil di selesaikan adalah
sebagai berikut :
1. Aplikasi telah dapat mengetahui jumlah daun yang nantinya akan di hitung
keliling daun dengan menggunakan device scanner..
2. Aplikasi telah dapat mengetahui keliling daun bayam dengan menggunakan
citra digital.
3. Pada perhitungan secara manual menggunakan kertas milimeter dan
menggunakan citra digital terdapat selisih hasil didapati tingkat errornya
adalah 0.43 %. Jadi akurasi menggunakan citra digitaladalah 99.57 % jika
dibandingkan dengan perhitungan manual menggunakan kertas milimeter.
5.2 Saran
Dari hasil yang telah dicapai dari pembuatan aplikasi penghitung keliling
daun bayam menggunakancitra digital, ada beberapa hal yang perlu ditambahkan
agar aplikasi ini bisa lebih baik. Diantara hal yang perlu ditambahkan adalah :
90
1. Perlu ditambahkan lebih banyak lagi pilihan metode dalam aplikasi agar
bisa dibandingkan hasil antar metode dan lebih bisa mendekati hasil yang
nyata dalam hal pengukuran keliling.
2. Diperlukan aplikasi yang client server agar aplikasi bisa dimainkan secara
online.
3. Diperlukan pengembangan agar aplikasi bisa digunakan tidak hanya dalam
bentuk desktop tapi dalam bentuk mobile seperti android
91
DAFTAR PUSTAKA
“Al Khadir” The Holy Quran on Chloroplasts. 2009.
www.quranandscience.com/quran-science/plants/174-al-khadir-the-
holy-quran-on-chloroplasts diakses pada hari jumat, 28 November
2014 jam 08:06 WIB
AlQuran dan Terjemahannya. Departemen Agama RI. Bandung: PT Diponegoro
An Najjar, Prof DR Zaglul. dan DR Abdul Daim Kahil. 2012. Ensiklopedia Al
Quran dan Hadits. Jakarta: PT Lentera Abadi
Gonzalez, Rafael C, dkk. 2004. Digital Image Processing using MATLAB. New
Jersey: Prentice Hall
Hery Purnomo, Mauridhi; Mustafa, Arif. 2010. Konsep Pengolahan Citra Digital
dan Ekstraksi Fitur. Yogyakarta : Graha Ilmu.
Introduction to Chain Codes. http://www.mind.ilstu.edu/curriculum/chain_codes
_intro/chain_codes_intro.php diakses pada hari jumat, 6 maret 2015 jam
08:06 WIB
Ikhsanuddin, Muh Ali. 2013. Rancang Bangun Perhitungan Area Daun Kacang-
Kacangan Menggunakan Citra Digital. Skripsi. Malang: UIN Maliki
Malang
M Hafidh Fauzi1, Prof.Ir.Handayani Tjandrasa, M.Sc., Ph.D. 2010. Implementasi
Thresholding Citra Menggunakan Algoritma Hybrid Optimal
Estimation.Paper.Surabaya: Institut Teknologi Sepuluh Nopember.
Putra, darma. 2010. Pengolahan Citra Digital. Yogyakarta: Penerbit ANDI
92
Rega, kestrilia. 2008. Object Tracking dan Analisis Citra Digital untuk
Kuantifikasi Morfologi Tanaman In Vitro Hasil Teknologi Kultur
Jaringan. Thesis. Bogor: Institut Pertanian Bogor.
LAMPIRAN – LAMPIRAN
Gambar daun yang akan di hitung secara manual dan menggunakan citra digital
Gambar sketsa daun No 1 dan 2
Gambar sketsa daun No 3 dan 4
Gambar sketsa daun No 5 dan 6
Gambar sketsa daun No 7 dan 8
Gambar sketsa daun No 9 dan 10
Gambar sketsa daun No 11
Recommended