PENGOLAHAN CITRA
PROYEK AKHIR
Laporan akhir ini dibuat dan diajukan untuk memenuhi salah satu syarat kelulusan
Diploma IV Politeknik Manufaktur Negeri Bangka Belitung
Disusun oleh:
HALAMAN JUDUL
POLITEKNIK MANUFAKTUR NEGERI
BANGKA BELITUNG
TAHUN 2021
ii
iii
ABSTRAK
Usaha budidaya pembenihan ikan lele saat ini sangat tinggi. Hal ini dapat dilihat
dari banyaknya orang yang membuka usaha pembenihan ikan lele dan tempat
makan ikan lele namun masih terkendala dalam proses perhitungan jumlah benih
ikan lele. Metode penghitungan pada saat ini masih secara secara manual dan
volumetrik. Dari kedua metode tersebut masih sangat bergantung kepada orang
yang menghitung benih ikan lele tersebut. Bila dalam penghitungan benih ikan
lele dihitung 50 ekor paling sedikit perhitungannya mungkin akan akurat, tetapi
bila sudah ribuan penghitungannya akan kurang akurat. Maka dari itu dibuatlah
alat penghitung benih ikan lele secara otomatis agar mempersingkat waktu
penghitungan ikan lele tersebut, menggunakan webcam. Setelah dilakukan
pengujian pada rancang bangun alat penghitung benih ikan lele didapatkan
bahwa, dari persentase rata-rata error alat pada 5 kali percobaan pada setiap
perhitungan jumlah benih ikan lele dengan data maksimum 200 ekor benih lele
berukuran panjang 5 mm – 10 mm hasil yang didapatkankan adalah rata-rata
error alat yaitu 8,92%. Waktu proses perhitungan menggunakan alat lebih cepat
dari pada perhitungan secara manual. Kesalahan utama penghitungan
disebabkan oleh banyaknya benih ikan lele yang bertumpukan dan ukuran benih
yang berbeda-beda sehingga pembacaan tidak stabil atau akurat.
iv
ABSTRACT
Currently catfish hatchery cultivation is very high. This can be seen from the
number of people who open catfish hatchery businesses and catfish eating places
but are still constrained in the process of calculating the number of catfish seeds.
The method of calculation at this time is still manual and volumetric. Of the two
methods, it is still very dependent on the person counting the catfish seeds. If the
counting of catfish seeds is counted 50 heads the calculation may at least be
accurate, but if there are thousands of the calculations will be less accurate.
Therefore, a tool for calculating catfish seeds was made automatically in order to
shorten the counting time of the catfish, using a webcam. After testing the design
of the catfish seed counting tool, it was found that, from the average percentage
error of the tool in 5 experiments for each calculation of the number of catfish
seeds with a maximum data of 200 catfish seeds measuring 5 mm - 10 mm in
length, the results obtained were the average error of the tool was 8.92%. The
calculation process time using the tool is faster than manual calculations. The
main error in counting was caused by the large number of catfish seeds that were
piled up and the size of the seeds that varied so that the reading was unstable or
accurate.
v
KATA PENGANTAR
vi
6. Dosen dan Staf Pengajar di Politeknik Manufaktur Negeri Bangka Belitung
yang telah mendidik, membina dan mengantarkan penulis untuk menempuh
kematangan dalam berfikir dan berperilaku.
7. Teman–teman seperjuangan dan semua pihak yang telah memberikan
bantuannya serta sahabat-sahabat yang selalu memberikan support selama ini
dan mitra kerja penulis selama mengerjakan proyek akhir ini yang selalu
berjuang bersama-sama.
Setelah melalui proses yang panjang dan penuh tantangan, akhirnya penulis
dapat menyelesaikan pembuatan alat dan laporan proyek akhir ini yang tentunya
masih banyak kekurangan dan jauh dari kesempurnaan. Walaupun demikian,
penulis berharap laporan proyek akhir ini dapat bermanfaat bagi kita semua dan
penulis khususnya. Semoga Allah senatiasa melimpahkan taufiq dan hidayah-Nya
kepada penulis dan semua pihak yang telah membantu dalam pembuatan alat dan
penulisan laporan proyek ini, Wassalamua’laikum Warahmatullahi Wabarakatuh.
Penulis
Sapgitayani
vii
DAFTAR ISI
ix
DAFTAR GAMBAR
xi
DAFTAR TABEL
xii
DAFTAR LAMPIRAN
xiii
BAB I
PENDAHULUAN
1
dan 8 mm. Selain itu, dikarenakan ukuran benih ikan lele yang kecil dan
jumlahnya yang sangat banyak proses perhitungan benih ikan lele secara manual
dapat memakan waktu yang lama dan tingkat ketelitian yang rendah.
Proses perhitungan jumlah benih ikan lele masyarakat Indonesia saat ini
masih secara manual, ada beberapa metode penghitungan otomatis sendiri telah
diterapkan untuk proses penghitungan jumlah benih ikan. Metode dalam
penghitungan benih ikan ini dilakukan dengan memanfaatkan teknologi
pengolahan citra digital image processing. Didalam teknologi ini menggunakan
metode pengolahan baik foto maupun video untuk melakukan proses
penghitungan jumlah benih ikan. Namun penerapan teknologi pengolahan citra
belum dapat menghitung ikan yang bergerombol dan tingkat kecerahan objek
yang berbeda masih menjadi kendala [4]. Metode berikutnya juga menggunakan
pengolahan citra dengan sistem yang dirancang dan diimplementasikan
menggunakan HTML, Python, serta pengolahan citra yang menggunakan metode
thresholding, morphology, serta pelabelan. Sistem ini diterapkan secara real time
[5]. Oleh karena itu, dengan membuat rancang bangun “Alat Penghitung Benih
Ikan Lele Menggunakan Pengolahan Citra” yang rancang bangunnya sederhana
diharapkan mudah digunakan bagi masyarakat dan tentunya aman untuk benih
ikan lele. Hasil penghitungan benih ikan lele tersebut dapat dilihat melalui laptop
atau monitor.
2
1.3 Batasan Masalah
Adapun batasan masalah dalam proyek akhir ini adalah:
1. Toleransi penghitungan 10%.
2. Benih ikan lele berukuran panjang 5 mm – 10 mm.
3. Jumlah benih ikan lele maksimal 200 ekor.
4. Ketinggian webcam 42 cm.
5. Belum membedakan antara benih ikan lele dengan benda lain.
6. Data hasil perhitungan benih ikan lele dapat menampilkan jumlah benih ikan
lele.
1.4 Tujuan
Proyek akhir ini membuat mesin Alat Penghitung Benih Ikan Lele dengan
tujuan sebagai berikut:
1. Merancang alat penghitung benih ikan lele otomatis.
2. Membuat alat penghitung benih ikan lele yang dapat menghitung secara
otomatis.
3. Menentukan batasan threshold dan cakupan luasan webcam dalam
mendeteksi ikan lele.
3
BAB II
DASAR TEORI
2.2 SolidWorks
SolidWorks merupakan aplikasi program mekanikal 3D CAD (computer
aided design) yang berjalan pada Microsoft Windows. File SolidWorks memakai
penyimpanan file format Microsoft yang terstruktur. Ini berarti kalau terdapat
bermacam file tertanam dalam tiap SLDDRW (file foto), SLDPRT (part file),
SLDASM (file assembly), dengan bitmap preview serta metadata sub- file.
Berbagai macam tools dapat digunakan untuk mengekstrak sub- file, walaupun
sub- file dalam banyak permasalahan memakai format file biner. Parameter bisa
berbentuk numerik, semacam panjang garis ataupun diameter bundaran, ataupun
geometris, semacam tangen, paralel, konsentris, horizontal ataupun vertikal.
parameter numerik bisa berhubungan dengan satu sama lain lewat pemakaian
ikatan, yang membolehkan mereka buat menangkap iktikad dari desain [8].
Adapun untuk aplikasi dapat dilihat pada gambar 2.2.
5
Gambar 2.2 Aplikasi Solidworks [8]
7
memiliki tiga komposisi warna. Grayscaling adalah proses perubahan nilai piksel
dari warna (RGB) menjadi gray-level atau sering disebut juga sebagai grayscale.
Pada dasarnya proses grayscaling dilakukan dengan meratakan beberapa nilai
piksel dari 3 nilai RGB menjadi 1 nilai. Proses grayscaling secara matematis
dapat ditulis sebagai berikut:
𝑅+𝐺+𝐵
Gs = ………………………………………………………………………………………..……(1)
3
Gs adalah nilai grayscale dari proses grayscaling. R adalah nilai warna merah, G
adalah nilai warna hijau dan B adalah nilai warna biru. Citra biner dihasilkan
melalui citra warna yang telah melalaui proses binerisasi. Operasi yang dapat
digunakan untuk binerisasi adalah thresholding. Thresholding citra adalah metode
yang gunanya untuk memisahkan objek dan background-nya. Thresholding
merupakan sebuah teknik yang sederhana dan efektif untuk proses segmentasi
citra. Segmentasi citra adalah proses pemisahan citra menjadi beberapa bagian
yang homogen dan mengekstrak bagian-bagian tersebut menjadi beberapa objek
yang akan diamati [10].
2.4 Python
Python merupakan bahasa pemrograman interpretatif yang multiguna
memakai filosofi perancangan dengan fokus kepada tingkatan keterbacaan kode.
Bahasa pemrograman, Python mencampurkan sebagian keahlian, kapabilitas serta
sintaksis kode dan guna pustaka yang bermutu besar. Pada dasarnya, bahasa
pemrograman yang dirancang oleh Guido van Rossum ini sangat banyak
dimanfaatkan buat membuat sesuatu program yang dipakai oleh warga universal.
Salah satunya program GUI (graphical user interface), aplikasi smartphone,
program CLI, IoT, game, web, program buat hacking serta masih banyak lagi [11].
8
Gambar 2.4 Bahasa Pemrograman Python [12]
9
Morfologi
Metode morfologi adalah penggunaan dalam structuring element.
Structuring element adalah suatu bentuk dasar suatu objek yang berfungsi
dalam menganalisis struktur geometri dari objek lain yang lebih besar dan
kompleks. Tujuan dari structuring element untuk memperoleh informasi
dalam hal bentuk dari sebuah citra dengan mengatur bentuk serta ukuran
suatu structuring element. Morfologi memiliki dua operator dasar
diantaranya dilasi (dilation) dan erosi (erosion) yang biasa digunakan
untuk mengekstrak komponen yang diinginkan dalam sebuah citra.
Berdasarkan dua operator tersebut, dapat diturunkan dua operator lainnya
yang berguna dalam menghaluskan batas subinterval komponen yang telah
diekstrak, yaitu opening dan closing. Penggunaan metode morfologi selalu
melibatkan sebuah citra dengan komponen I sebagai (citra) dan elemen
penyusun E sebagai (structuring element). Dilasi untuk memperbesar
komponen yang diinginkan dengan penambahan seluruh tepinya dengan
elemen penyusun E. Erosi untuk menghilangkan komponen yang
diinginkan dengan cara mengurangi seluruh tepinya dengan elemen
penyusun E [15].
Thresholding
Thresholding adalah salah satu metode yang digunakan dalam
proses segmentasi citra untuk memisahkan objek dengan background
dalam suatu citra berdasarkan perbedaan tingkat kecerahan atau gelap
terangnya suatu objek. Region citra yang memiliki warna gelap akan
menjadi semakin gelap (hitam sempurna dengan memiliki nilai intensitas
sebesar 0), sedangkan region citra yang memiliki warna terang akan dibuat
semakin terang (putih sempurna dengan memiliki nilai intensitas sebesar
1). Output dari proses segmentasi yang menggunakan metode thresholding
berupa citra biner dengan nilai intensitas piksel akan bernilai sebesar 0
atau 1. Setelah proses citra telah melakukan proses segmentasi atau sudah
berhasil dipisahkan objeknya dengan background, selanjutnya citra biner
yang didapatkan bisa dijadikan sebagai masking untuk melakukan proses
10
cropping sehingga diperoleh tampilan citra asli tanpa background atau
dengan background yang dapat diubah-ubah [16].
11
digunakan dari lokal area dikarenakan dibuat khusus dalam satu ruang lingkup
saja.
2. Sistem berjalan sesuai dengan yang diharapkan, yaitu mampu menghitung
objek secara optimal sebesar 40 ekor ikan [5].
Berdasarkan pengembangan alat penghitung benih benih ikan yang dibuat
oleh [5] yang masih ada kekurangan sehingga konsep rancangan yang akan
dibuat yaitu alat penghitung benih ikan lele, untuk mendeteksi benih lelenya
menggunakan webcam dan dengan komponen kontruksi yang berbeda. Proyek
akhir kami menggunakan bahan yang sederhana namun tidak merusak nilai jual
serta mengkombinasikan 3 metode dalam proses perhitungan benih ikan lele
yaitu: watershed, morfologi, dan thresholding.
12
BAB III
METODE PELAKSANAAN
Mulai A
dan Informasi
Selesai
Perancangan Sistem
Hardware Benih Ikan
Lele
Pembuatan Sistem
Hardware Benih Ikan Lele
A
Gambar 3.1 Flowchart Metode Pelaksanaan
13
3.1 Pengumpulan Data dan Informasi
Pengumpulan data dan informasi terkait proyek akhir ini dilakukan
melalui dua cara, yaitu: (1) studi literatur; (2) wawancara. Studi literatur
mempelajari referensi-referensi yang bersumber baik dari buku-buku maupun
internet dan survei lapangan. Referensi-referensi dari buku dan internet
dibutuhkan untuk mengetahui perkembangan teknologi alat penghitung benih ikan
yang sudah ada saat ini. Wawancara dilakukan dengan survei lapangan dilakukan
dengan mengunjungi langsung tambak ikan lele di Desa Bukit Betung, Sungailiat,
Bangka. Survei dilakukan untuk mendapatkan informasi-informasi mengenai cara
menghitung benih ikan lele dan ukuran benih ikan lele. Setelah dilakukannya
survei, pengumpulan dan pengolahan data dilakukan untuk mendapatkan
kebutuhan komponen dan peralatan yang akan digunakan di dalam perancangan
hardware dan software.
14
Beberapa langkah dalam perancangan pembuatan sistem hardware
mekanik dilakukan seperti berikut:
1. Penentuan wadah penampung benih ikan lele dengan menggunakan
wadah.
2. Penentuan ukuran kontruksi yang menggunakan kayu dan triplek untuk
kontruksi alat keseluruhan.
3. Pemilihan jenis webcam yang akan digunakan.
4. Penentuan peletakan webcam.
3.4 Perancangan dan Pembuatan Software Alat Penghitung Benih Ikan Lele
Perancangan software pada proyek ini merupakan pengkodean pada
Raspberry Pi 3 yang digunakan untuk mengontrol sistem secara keseluruhan dari
“Alat Penghitung Benih Ikan Lele Menggunakan Pengolahan Citra” yang akan
dibuat.
Beberapa langkah dalam pengkodean Raspberry Pi 3 yang dilakukan, yaitu
perancangan dan pembuatan kode program Raspberry Pi 3.
16
BAB IV
PEMBAHASAN
Bab ini menguraikan proses pembuatan proyek akhir dengan judul “Alat
Penghitung Benih Ikan Lele Menggunakan Pengolahan Citra”. Berikut ini
merupakan blok diagram hardware alat penghitung benih ikan lele menggunakan
pengolahan citra dapat dilihat pada gambar 4.1.
Pada blok diagram hardware diatas terdapat satu input yaitu benih ikan
lele. Benih ikan lele berfungsi sebagai objek benda yang akan dideteksi kemudian
webcam berfungsi untuk menangkap atau mengambil gambar dari benih ikan lele
yang kemudian di proses ke dalam program Raspberry Pi 3 menggunakan bahasa
pemrograman Python yang selanjutnya hasil dari program Python tersebut dapat
ditampilkan dan di lihat hasil perhitungan pada laptop atau monitor.
Tempat
Webcam
Webcam
Box
Raspberry Pi
Wadah benih
ikan lele Kerangka
utama box
Gambar 4.2 Desain Alat Penghitung Benih Ikan Lele
19
Peralatan yang
No Jumlah Keterangan Fungsi
Digunakan
6 Kayu 3 Buah Digunakan sebagai
penyanggah untuk
meletakan webcam
7 Box 1 Buah P = 9,8 cm Digunakan sebagai
L = 7,5 cm tempat box dari
T = 4 cm Raspberry Pi 3
8 Paku 20 Buah Digunakan untuk
merekatkan antara
triplek dengan
kayu
20
Gambar 4.3 Box Benih Lele
21
Gambar 4.5 Perakitan Tempat untuk Webcam
Gambar 4.6 Hasil Perakitan Kontruksi Alat Penghitung Benih Ikan Lele
22
Gambar 4.7 Flowchart Tahapan Image Processing
23
opening. Didalam opening terdapat dua proses yaitu dilasi dan erosi. Operasi
dilasi adalah proses untuk merapatkan atau menggabungkan piksel-piksel dari satu
objek (benih ikan lele) yang terpisah pada citra biner. Operasi erosi adalah proses
pemindahan atau pengurangan piksel pada batas dari suatu objek. Jumlah piksel
yang ditambahkan atau yang dihilangkan dari batas objek pada citra digital
masukan tergantung pada ukuran dan bentuk dari struktur objek. Setelah proses
morfologi berikutnya proses thresholding yang berfungsi untuk memisahkan
objek yang dalam hal ini benih ikan lele dengan background. Proses thresholding
tersebut dilakukan untuk mengubah piksel background menjadi hitam dan putih
dimana nilai piksel hitam (0) dan nilai piksel putih (255). Setelah itu proses
penentuan background area yang berfungsi untuk mendukung dan memperkuat
kesan serta fokus perhatian pada objek dan penentuan foreground area berfungsi
untuk pendukung objek utama. Selanjutnya yaitu menggabungkan kedua area
tersebut menggunakan algoritma watershed agar mengetahui objek dan
background yang mana tiap objek dan background akan diberi label warna yang
berbeda-beda. Pada proses ini foreground area akan bernilai 1 dan background
area bernilai 0. Proses terakhir yaitu marking yang berfungsi untuk melakukan
penandaan objek benih ikan lele dalam sebuah citra menggunakan metode contour
yang mana objek yang di marking akan dihitung dan dijumlahkan dan hasilnya
akan ditampilkan di monitor. Setelah perhitungan selesai maka proses akan
memulai dari awal lagi.
24
4.4.1 Pengujian Sistem Bagian Input
Pada pengujian ini yang akan dilakukan dalah menguji pada bagian input
yang akan digunakan apakah berfungsi sesuai dengan yang diinginkan, pengujian
bagian input antaranya adalah pengujian benih ikan lele.
25
Gambar 4.9 Hasil Pengujian Webcam
Pengujian Raspberry Pi 3
Pada proses ini yang akan dilakukan adalah dengan menguji apakah
Raspberry Pi 3 yang digunakan berfungsi dengan baik untuk menyimpan program
yang dibuat pada Python. Berikut merupakan hasil pengujian Raspberry Pi 3
apakah berfungsi dengan baik yang dapat dilihat pada monitor atau laptop dapat
26
dilihat pada gambar dibawah ini. Adapun hasil pengujian Raspberry Pi 3 dalam
kondisi baik dan dapat digunakan dapat dilihat pada gambar 4.11.
27
a
Jika nilai threshold terlalu rendah dari 79 maka piksel akan lebih dominan
berwarna hitam sehingga area objek dan background tidak terlihat jelas. Begitu
juga sebaliknya jika nilai threshold terlalu tinggi dari 79 maka piksel akan lebih
lebih dominan berwarna putih sehingga area objek dan background tidak terlihat
jelas.
Pengolahan Citra
Pengolahan citra pada benih ikan lele diawali dengan melakukan proses
tangkap layar pada daerah citra yang berada di luar daerah citra yang diproses.
Hasil dari proses tangkap layar ditunjukkan pada gambar 4.13.
28
Gambar 4.13 Hasil dari Proses Tangkap Layar
a b
Gambar 4.15 (a) Hasil Sebelum Thresholding (b) Hasil Sesudah Thresholding
29
Tahap selanjutnya adalah melakukan proses morfologi adalah proses yang
mempunyai dua tahapan proses yang disebut opening. Dimana dalam opening
terdapat dua proses yaitu dilasi dan erosi. Operasi dilasi adalah proses untuk
merapatkan atau menggabungkan piksel-piksel dari suatu objek (benih ikan lele)
yang terpisah pada citra biner. Operasi erosi adalah proses pemindahan atau
pengurangan piksel dari suatu objek (benih ikan lele). Hasil proses morfologi dari
citra yang telah di thresholding ditunjukkan pada gambar 4.16.
a b
Gambar 4.16 (a) Hasil Saat Thresholding (b) Hasil Sesudah Morfologi
Gambar 4.18 (a) Hasil Penentuan Foreground (b) Hasil Penentuan Background
31
Gambar 4.20 Hasil Perhitungan Jumlah Benih Ikan Lele
32
4.5.1 Pengujian Program Alat
Pengujian program alat dilakukan setelah semua komponen dan kontruksi
telah selesai dibuat atau rakit. Pengujian dilakukan untuk mengetahui seberapa
besar tingkat presentasi error, nilai thresholding dan waktu penghitungan benih
ikan lele. Pengujian dilakukan dengan melihat seberapa efektif proses perhitungan
menggunakan cahaya, tanpa menggunakan cahaya, serta perbandingan dengan
perhitungan manual dengan jumlah benih ikan lele yang beragam. Pada wadah
yang digunakan jumlah benih maksimal 200 ekor. Jumlah benih diatas 200 ekor
dan ketinggian air 0,5 cm. Apabila ketinggian diatas 1 cm dan jumlah ikan lele
diatas 200 ekor itu bisa menyebabkan semakin banyak benih ikan lele yang
bersinggungan.
Pengujian untuk menghitung benih ikan lele pada citra dengan berbagai
jumlah benih yang berbeda tanpa menggunakan cahaya ditunjukkan pada tabel 4.2
dan untuk hasil gambar dapat dilihat pada gambar 4.22.
33
Tabel 4.2 Pengujian Program tanpa Menggunakan Cahaya
Uji Hasil
Jumlah Benih Ikan Persentase
Coba Perhitungan
Lele (ekor) Error (%)
ke (ekor)
1 10 10 0%
2 10 10 0%
3 10 10 0%
4 10 10 0%
5 10 10 0%
6 30 30 0%
7 30 30 0%
8 30 30 0%
9 30 30 0%
10 30 30 0%
11 50 45 10 %
12 50 43 14 %
13 50 47 6%
14 50 45 10 %
15 50 43 14 %
16 70 62 11,4 %
17 70 65 7,14 %
18 70 64 8,57 %
19 70 65 7,14 %
20 70 63 10 %
21 90 80 11,11 %
22 90 79 12,22 %
23 90 80 11,11 %
24 90 84 6,67 %
25 90 83 7,78 %
26 100 90 10 %
27 100 87 13 %
34
Uji Hasil
Jumlah Benih Ikan Persentase
Coba Perhitungan
Lele (ekor) Error (%)
ke (ekor)
28 100 86 14 %
29 100 85 15 %
30 100 87 13 %
31 120 108 10 %
32 120 109 9,16 %
33 120 110 8,33 %
34 120 108 10 %
35 120 110 8,33 %
36 140 129 7,86 %
37 140 125 10,7 %
38 140 125 10,7 %
39 140 120 14,28 %
40 140 126 10 %
41 160 145 9,37 %
42 160 145 9,37 %
43 160 140 12,5 %
44 160 140 12,5 %
45 160 145 9,37 %
46 180 166 7,78 %
47 180 166 7,78 %
48 180 165 8,33 %
49 180 165 8,33 %
50 180 160 11,11 %
51 200 186 7%
52 200 185 7,5 %
53 200 185 7,5 %
54 200 185 7,5 %
35
Uji Hasil
Jumlah Benih Ikan Persentase
Coba Perhitungan
Lele (ekor) Error (%)
ke (ekor)
55 200 180 10 %
Dari hasil data percobaan pada 100 ekor benih ikan lele tanpa
menggunakan cahaya menunjukan bahwa presentasi error lebih kecil dari pada
perhitungan jumlah benih ikan lele diatas 120 karena ukuran dari benih ikan lele
yang bervariasi dan adanya benih ikan lele (lebih dari satu ekor) yang saling
bersinggungan. Benih ikan lele yang saling bersinggungan dihitung sebagai satu
ekor oleh program apabila benih ikan lele tersebut lebih kecil. Selanjutnya
pengujian program untuk menghitung benih ikan lele pada citra dengan berbagai
jumlah benih yang berbeda menggunakan cahaya ditunjukkan pada tabel 4.3 dan
untuk hasil gambar dapat dilihat pada gambar 4.23.
37
Uji Hasil
Jumlah Benih Ikan Persentase
Coba Perhitungan
Lele (ekor) Error (%)
ke (ekor)
32 120 110 8,33 %
33 120 109 9,17 %
34 120 114 5%
35 120 112 6,67 %
36 140 135 3,57 %
37 140 130 7,14 %
38 140 134 4,28 %
39 140 130 7,14 %
40 140 134 4,28 %
41 160 156 2,5 %
42 160 155 3,12 %
43 160 155 3,12 %
44 160 150 6,25 %
45 160 156 2,5 %
46 180 170 5,56 %
47 180 169 6,11 %
48 180 165 8,33 %
49 180 169 6,11 %
50 180 170 5,56 %
51 200 186 7%
52 200 185 7,5 %
53 200 180 7%
54 200 185 7,5 %
55 200 180 7%
Dari hasil data percobaan pada 100 ekor benih ikan lele tanpa
menggunakan cahaya pada tabel 4.2 dan menggunakan cahaya pada tabel 4.3
menunjukan bahwa presentasi error pada tabel menggunakan cahaya lebih kecil
38
dari pada tanpa menggunakan cahaya itu disebabkan karena cahaya sangat
mempengaruhi proses ke akuratan dalam perhitungan benih ikan lele dan ukuran
dari benih ikan lele yang bervariasi juga berpengaruh. Semakin besar benih ikan
lele maka ikan lele yang kecil tidak akan bisa kedeteksi dalam program.
Percobaan berikutnya yaitu melihat ketinggian air yang berbeda. Untuk
menentukan ketinggian air yang tepat dalam proses perhitungan benih ikan lele.
Hasil perhitungan benih ikan lele dengan ketinggian air berbeda dapat dilihat pada
tabel 4.4 dan untuk hasil gambar dapat dilihat pada gambar 4.24.
Gambar 4.24 Hasil Benih Ikan Lele dengan Ketinggian Air Berbeda
Tabel 4.4 Hasil Benih Ikan Lele dengan Ketinggian Air Berbeda
Hasil Perhitungan Menggunakan Alat
Uji Coba Jumlah Benih
Berdasarkan Ketinggian Air
ke Ikan Lele (ekor)
2 cm 1,5 cm 1 cm 0,5 cm 0 cm
1 15 10 11 12 15 14
2 30 26 28 28 30 27
3 70 48 52 50 58 53
4 90 53 62 67 75 68
5 100 40 60 82 92 85
Dari hasil data percobaan pada benih ikan lele dengan pada tabel 4.4
menunjukan bahwa ketinggian air sangat mempengaruhi dalam hal ketepatan
dalam pembacaan benih ikan lele dengan ketebalan 1 mm – 2 mm. Hal ini
dikarenakan banyaknya benih ikan lele yang bertumpukan. Semakin tinggi air
39
maka benih ikan lele akan semakin banyak yang bertumpukan. Objek (benih ikan
lele) yang banyak ini membentuk wilayah yang gelap, jadi ada sebagian benih
yang tidak terdeteksi diakibatkan oleh wilayah yang gelap lebih dominan
dibandingkan objek dan dalam proses perhitungan pada saat tidak ada air dalam
wadah tidak efektif dikarenakan benih ikan lele yang melompat-lompat sehingga
perhitungan kurang baik. Percobaan selanjutnya yaitu melihat ketinggian webcam
yang berbeda. Untuk menentukan ketinggian webcam yang tepat dalam proses
menangkap citra dari benih ikan lele. Hasil gambar benih ikan lele dengan
ketinggian webcam berbeda dapat dilihat pada gambar 4.25.
a
Dari hasil gambar 4.25 didapatkan bahwa benih ikan lele dengan
ketinggian yang berbeda menunjukan bahwa ketinggian webcam sangat
mempengaruhi dalam hal pembacaan benih ikan lele. Hal ini dikarenakan semakin
dekat webcam maka pembacaan dari benih ikan lele yang perhitungan awal 100
benih ikan lele hanya beberapa ekor benih ikan lele yang terdeteksi ketinggian
webcam 30 cm dan sebaliknya semakin tinggi posisi webcam perhitungan maka
pembacaan webcam akan mendeteksi objek selain benih ikan lele, hal ini
40
dikarenakan benih ikan lele akan kalah dominan dengan sekitar tepi wadah yang
mana ketinggian webcam 50 cm. Ketinggian yang tepat dalam mendeteksi benih
ikan lele adalah 42 cm. Percobaan selanjutnya dengan menggunakan wadah benih
lele berbentuk lingkaran. Hal ini diuji coba agar mengetahui wadah mana yang
lebih efektif hasil uji coba wadah benih lele berbentuk lingkaran dapat dilihat
pada gambar 4.26.
Tabel 4.5 Uji Coba Penghitungan Waktu Manual dan Waktu Alat
Rata – Rata
Jumlah Waktu Waktu
Uji Persentase
Benih Hitung Hitung
Coba Error 5 kali
Ikan Lele Manual Alat
ke Percobaan
(ekor) (menit) (menit)
(%)
1 10 03.01 01.40 0%
2 30 05.58 01.40 0%
42
Cara perhitungan persentase error dengan mengambil beberapa sampel pada
tabel 4.5 uji coba pada benih ikan lele yang didapatkan. Dari persentase rata-rata
error alat pada 5 kali percobaan pada setiap perhitungan jumlah benih ikan lele
dengan data maksimum 200 ekor benih lele adalah:
98,19
jadi = 8,92%
11
Untuk setiap kali percobaan atau uji coba alat, alat belum bisa mendapatkan
nilai penghitungan yang akurat yang ditunjukkan oleh hasil uji coba yaitu nilai
errornya yang tidak stabil. Hal ini dipengaruhi oleh benih ikan lele yang
ukurannya tidak sama dan cahaya sehingga program tidak bisa membaca hasil
tangkap dari webcam. Untuk perbandingan waktu menggunakan alat penghitung
otomatis dan penghitungan benih secara manual, ialah penghitungan
menggunakan alat lebih cepat dari waktu penghitungan manual dan jarak waktu
perhitungan menggunakan alat relatif hampir sama.
43
BAB V
PENUTUP
5.1 Kesimpulan
Berdasarkan hasil pengujian dan analisa dari proyek akhir yang berjudul
“Alat Penghitung Benih Ikan Lele Menggunakan Pengolahan Citra” ini, maka
dapat ditarik kesimpulan bahwa:
1. Alat ini dirancang secara manual menggunakan kertas gambar dan setelah itu
menggunakan aplikasi Solidworks agar desain lebih menarik dan lebih mudah
dipahami.
2. Alat dapat berfungsi dengan baik dalam menghitung benih ikan lele. Tingkat
kesalahan pembacaan benih ikan lele yang tingkat kesalahan atau presentae
error di bawah 10 % yaitu perhitungan dengan jumlah 90 ekor dengan ukuran
benih ikan lele 5 mm – 10 mm. Apabila diatas 90 ekor tingkat kesalahan atau
presentae error sudah di atas 10 %. Hal ini dikarenakan benih ikan lele yang
saling berdekatan atau bersinggungan sehingga webcam mendeteksi satu benih
ikan lele walaupun ada 2 atau 3 benih ikan lele. Cahaya juga sangat
mempengaruhi dalam proses perhitungan benih ikan lele. Apabila
pencahayaannya seimbang maka pembacaan akan lebih akurat dan sebaliknya
jika cahayanya ada yang lebih dominan (gelap) maka program akan membaca
cahaya yang lebih gelap.
3. Penentuan nilai batasan threshold dalam perhitungan benih ikan lele ini
dilakukan beberapa kali percobaan yaitu dengan nilai 60, 70, 75, 79, 80, 85,
dan 90. Dari beberapa kali percobaan didapatkan nilai yang paling baik
menggunakan nilai threshold sebesar 79. Jika nilai threshold terlalu rendah dari
79 maka piksel akan lebih dominan berwarna hitam sehingga area objek dan
background tidak terlihat jelas. Begitu juga sebaliknya jika nilai threshold
terlalu tinggi dari 79 maka piksel akan lebih lebih dominan berwarna putih
sehingga area objek dan background tidak terlihat jelas.
44
4. Bentuk segi empat dipilih sebagai wadah dari benih ikan lele setelah
melakukan percobaan yang mana terlebih dahulu menggunakan wadah
berbentuk lingkaran yang ternyata sangat mempengaruhi dalam proses
pembacaan benih ikan lele. Pada hasil deteksi webcam posisi rendah yang
mana dalam proses perhitungan benih ikan lele tidak efektif itu dikarenakan
sebagian benih lele tidak dapat terdeteksi dan pada saat thresholding akan
menyebabkan area objek dan background tidak terlihat dengan jelas. Begitu
juga dengan hasil deteksi webcam posisi tinggi.
5. Ketinggian air yang baik dalam pembacaan webcam adalah 0,5 cm. Hal ini
dikarenakan semakin tinggi ketinggian air maka semakin banyak juga benih
ikan lele yang saling bertumpukan.
6. Pembacaan webcam dipengaruhi oleh cahaya dari luar. Hal ini sangat
mempengaruhi tingkat keakuratan dalam pembacaan benih ikan lele.
7. Penghitungan benih ikan lele dapat dilihat melalui monitor. Monitor akan
menampilkan jumlah perhitungan dari proses hasil pembacaan program.
5.2 Saran
Dari keseluruhan proyek akhir ini terdapat beberapa saran untuk
kedepannya dalam pembuatan proyek akhir ini, yaitu :
1. Diharapkan pada penelitian selanjutnya merancang alat langsung menggunakan
aplikasi Solidworks atau aplikasi lainnya.
2. Diharapkan pada perhitungan selanjutnya alat dapat menghitung benih ikan
lele dengan jumlah benih diatas 90 ekor dengan tingkat kesalahan atau
presentae error di bawah 10 %.
3. Diharapkan pada penelitian selanjutnya alat dapat menghitung benih ikan lele
dengan batasan threshold yang berbeda atau sama.
4. Diharapkan ketika menguji pencahayaan tidak mempengaruhi perhitungan dari
benih ikan lele.
5. Diharapkan bisa membedakan antara ikan lele dengan benda selain ikan lele.
45
DAFTAR PUSTAKA
46
autocad/#:~:text=SolidWorks%20sendiri%20adalah%20software%20prog
ram,file%20format%20Microsoft%20yang%20terstruktur.. [Accessed 02
Maret 2021].
47
dengan-metode-
thresholding/#:~:text=Thresholding%20merupakan%20salah%20satu%20
metode,kecerahannya%20atau%20gelap%20terang%20nya.. [Accessed
08 Januari 2021].
48
LAMPIRAN
LAMPIRAN 1
DAFTAR RIWAYAT HIDUP
LAMPIRAN 2
DESAIN ALAT
LAMPIRAN 3
PROGRAM ALAT PENGHITUNG BENIH IKAN LELE
MENGGUNAKAN PENGOLAHAN CITRA
import cv2
import imutils
import numpy as np
import math
def calculateDistance(x1,y1,x2,y2):
return dist
def jarak_terdekat(ctnp,ctnps):
jarak = 999999
x1,y1,w1,h1 = cv2.boundingRect(ctnp)
all_jarak = []
for p in ctnps:
x2,y2,w2,h2 = cv2.boundingRect(p)
tmp_jrk = calculateDistance(x1,y1,x2,y2)
if tmp_jrk > 0 :
all_jarak.append([tmp_jrk])
print(np.min(np.array(all_jarak)))
cap= cv2.VideoCapture(1)
result = True
while(result):
ret,frame=cap.read()
cv2.imshow('video_ikan_lele',frame)
ret,frame=cap.read()
cv2.imwrite("Citra Asli1.jpg",frame)
result = False
cap.release()
cv2.destroyAllWindows()
img=cv2.imread('Citra Asli.jpg')
cv2.imwrite('img.png', img)
original = img.copy()
cv2.imwrite('1_gray.png', gray_img)
cv2.THRESH_BINARY_INV)
cv2.imwrite('2_thresh.png', thresh)
# menghilangkan noise
kernel = np.ones((2,3),np.uint8)
opening = cv2.morphologyEx(thresh,cv2.MORPH_OPEN,kernel)
cv2.imwrite('3_opening.png', opening)
erd = cv2.erode(opening,kernel,iterations=1)
cv2.imwrite('4_erode.png', erd)
ret,thresh1 = cv2.threshold(dist,
0.2*dist.max(),255,cv2.THRESH_BINARY)
cv2.normalize(dist,dist,0,6,cv2.NORM_MINMAX)
# cv2.imshow("dist",dist)
cv2.imwrite('5_dist.png', dist)
# cv2.imshow("thresh1",thresh1)
cv2.imwrite('6_thresh1.png', thresh1)
thresh1 = thresh1.astype(np.uint8)
sure_bg = cv2.dilate(thresh1,kernel,iterations=2)
cv2.imwrite('7_sure_bg.png', sure_bg)
# menentukanforeground area
dist_transform = cv2.distanceTransform(thresh1,cv2.DIST_L2,5)
ret, sure_fg =
cv2.threshold(dist_transform,0.02*dist_transform.max(),255,0)
cv2.imwrite('8_sure_fg.png', sure_fg)
unknown = cv2.subtract(sure_bg,sure_fg)
# Marker labelling
markers = markers+1
markers[unknown==255] = 0
markers = cv2.watershed(img,markers)
#menentukan objek
x,y,w,h = cv2.boundingRect(contour)
cv2.rectangle(allcnts,(x,y),(x+w,y+h),(0,255,0),1)
number= str(len(cnts))
cv2.imshow("original",hasil)
cv2.imwrite('9_Hasil.png', hasil)
cv2.waitKey(0)
cv2.destroyAllWindows()
print("Program Selesai")
cv2.waitKey(0)
cv2.destroyAllWindows()