47
APLIKASI PREDIKSI BERAT BADAN BERDASARKAN
CITRA DIGITAL MENGGUNAKAN LOGIKA FUZZY
Reinaldo Noviandri
1)Yulius Denny Prabowo
2)Teknik Informatika Institut Teknologi dan Bisnis Kalbis
Jl. Pulomas Selatan Kav.22 – Jakarta Timur
email : [email protected]), [email protected]2)
ABSTRACT
This research aims to build an application to predict body weight through a photo taken with a camera. To determine a person’s weight, generally require a weight gauge that is commonly called as a weight scale. Because the shape is large enough, weight scale is quite difficult to bring. To determine body weight from the photo, author use the method of computer vision and fuzzy logic, computer vision can be used to determine the height and width of objects visible in the photo, then those values are processed using fuzzy logic. After being tested on seven people, the result showed that the application error rate is 8,57%.
Key words
Computer vision, fuzzy logic
1. Pendahuluan
Computer vision merupakan metode yang dapat membantu komputer untuk mengenali masukan berupa citra [1]. Pada penelitian ini metode computer vision digunakan untuk memperoleh data berupa tinggi dan lebar badan seseorang dari fotonya. Logika fuzzy
merupakan sebuah logika yang dapat
merepresentasikan ketidakpastian, ketidakjelasan, ketidaktepatan, kekurangan informasi, dan kebenaran parsial yang diperkenalkan oleh Lotfi A. Zadeh pada tahun 1965 [2].
Di pedesaan Kamuli, Uganda, sebuah studi sudah dikembangkan di mana prediksi berat badan dapat dilakukan berdasarkan macam-macam ukuran badan. Dalam studi ini digunakan data dari 411 ekor babi. Untuk melakukan perhitungan prediksi berat badan, digunakan lima acuan ukuran badan yaitu, panjang badan, ketebalan dada, tinggi, lebar badan, dan bagian panggul. Model prediksi dibuat dengan cara membuat regresi berat badan dari ukuran-ukuran badan babi [3]. Selain itu, di pedesaan Kenya bagian barat, terdapat juga studi untuk menghitung estimasi berat badan babi menggunakan panjang badan dan ukuran lilitan badan babi tersebut. Dalam studi ini sampel acak diperoleh dari 288 peternakan babi. Model prediksi dibuat menggunakan 75% dari data yang ada dan divalidasi menggunakan 25% sisanya. Berat badan diregresikan menggunakan analisis model campuran [4].
Pada penelitian ini, informasi yang digunakan untuk memprediksi berat badan adalah tinggi dan lebar badan yang terlihat pada citra, lalu data tersebut diolah menggunakan logika fuzzy untuk menentukan kisaran berat badan seseorang yang ada dalam citra tersebut. Sebagai data awal digunakan foto dan perhitungan berat badan secara manual, data berat badan aktual digunakan sebagai pembanding akurasi dari aplikasi yang dibuat. Batasan masalah yang ada ialah jumlah orang dalam setiap citra hanya satu, jarak antara orang dengan kamera yang digunakan sejauh 2 meter hingga 2,5 meter. Posisi orang harus berdiri tegap dan menghadap ke kamera. Latar belakang yang digunakan adalah latar belakang polos tanpa motif.
2. Metodologi Penelitian
Computer vision merupakan sekumpulan metode yang dapat membuat komputer mampu menerima masukan berupa citra. Secara teknis, computer visionakan menggunakan komputer untuk memperoleh, memproses, dan menganalisis sebuah citra digital. Sebagai contoh manusia dapat membedakan botol parfum dan botol minum hanya dengan melihatnya saja. Namun di komputer, kedua citra tersebut mempunyai bentuk yang hampir sama sehingga sulit untuk membedakannya [1].
Dalam computer vision untuk menganalisa sebuah citra digital, maka diperlukan proses pengolahan citra. Secara umum, langkah-langkah proses pengolahan citra yaitu, akuisisi citra, image preprocessing, segmentasi, representasi dan deskripsi, interpretasi dan pengenalan, dan basis pengetahuan [5]. Namun, pada penelitian ini hanya digunakan tiga langkah yaitu akuisisi citra, image preprocessing, dan segmentasi.
Akuisisi citra bertujuan untuk menentukan data yang diperlukan dan metode perekaman untuk memperoleh citra digital tersebut [5].Terdapat dua gambar sebagai data, gambar pertama berupa latar belakang tanpa objek, dan gambar kedua terdapatobjek di dalamnya
Jarak antara kamera dengan objek pada saat pengambilan gambar pertama dan kedua sama. Objek yang terdapat pada citra digital tersebut harus memenuhi kriteria dan batasan yang sudah ada agar tidak mengganggu proses pengolahan citra.
Setelah citra diakuisisi, citra tersebut kemudian diolah untuk meningkatkan kualitas citra hasil dari tahapan akuisisi citra sebelumnya. Ada empat tahapan image preprocessingyang digunakan dalam penelitian ini, yaitu [5]:
1. Peningkatan kualitas citra.
Peningkatan kualitas citra pada penelitian ini dilakukan dengan cara:
a. Mengubah menjadi citra grayscale, untuk
mempermudah pemrosesan citra
selanjutnya.Langkah ini dilakukan dengan mengubah piksel warna yang terdiri dari tiga bagian (Red, Green, Blue) menjadi skala keabuan.
b. Memperhalus sudut-sudut objek sehingga dapat mempermudah proses pendeteksian. c. Mempertajam lagi objek yang ada pada citra
untuk mempermudah pendeteksian. 2. Menghilangkan derau
Untuk menghilangkan derau, dilakukan proses pengurangan resolusi citra dari 3072 x 4096 piksel menjadi 819 x 614 piksel. Hasilnya adalah derau yang terlihat pada citra awal dapat hilang, dampaknya proses pengolahan citra menjadi lebih cepat dibanding sebelum dilakukan penghilangan derau.
3. Perbaikan Citra
Perbaikan citra dilakukan dengan
menyambungkan garis-garis putus yang menjadi batas antara objek dan latar belakang sehingga batasan-batasan objek dapat terlihat dengan jelas.
4. Menentukan citra yang akan diobservasi Untuk menentukan citra yang akan diobservasi, maka pada penelitian ini dilakukan proses pengambilan nilai absolut dari dua citra yang telah diperoleh pada proses akuisisi citra. Hal ini dilakukan untuk menghitung perbedaan piksel secara absolut antara citra pertama dan kedua. Citra pertama merupakan gambar latar belakang tanpa objek, sedangkan citra kedua merupakan citra dengan objek namun dengan posisi kamera yang sama sehingga satu-satunya perbedaan dari kedua citra adalah adanya objek pada citra pertama tersebut.
Setelah image preprocessing dilakukan,langkah selanjutnya adalah segmentasi. Segmentasi ini bertujuan untuk mempartisi citra menjadi bagian-bagian pokok yang mengandung informasi penting [5]. Pada penelitian ini, tahapan segmentasi dilakukan dengan cara mencari kontur dari objek yang terdapat pada citra akan dicari, setelah ditemukan, kontur tersebut akan membentuk garis membentuk persegi panjang sesuai dengan tinggi dan lebar objek.
Kerangka pikir yang digunakan dalam penelitian ini dapat dilihat pada gambar 1.
Gambar 1 Alur pembangunan aplikasi
Pada gambar 2 terlihat bahwa terdapat beberapa kontur yang terdeteksi. Terdapat kontur besar yang mengelilingi objek membentuk persegi panjang, namun banyak juga terdapat kontur-kontur kecil yang terdeteksi di sekitar objek. Kontur-kontur kecil ini bukan merupakan pendeteksian kontur seperti yang sudah direncanakan, yaitu kontur seharusnya hanya terdapat pada batasan objek dan latar belakang.
Sesuai dengan rancangan, apabila kontur yang dideteksi belum cukup baik, maka pendeteksian kontur akan dilakukan secara manual, dengan cara pengkotakkan pada citra akan dibuat secara manual.
Setelah kontur terdeteksi dengan baik, maka akan terlihat tinggi dan lebar objek yang ada pada citra tesebut. Kedua nilai ini akan digunakan sebagai input untuk fuzzy inferensi Tsukamoto
Gambar 3 Hasil deteksi kontur secara manual
Logika fuzzy merupakan sebuah logika yang dapat merepresentasikan ketidakpastian, ketidakjelasan, ketidaktepatan, kekurangan informasi, dan kebenaran parsial. Logika ini diperkenalkan oleh Lotfi A. Zadeh pada tahun 1965. Sebagai contoh, logika fuzzy dapat membantu menentukan nilai 8,3 pada ujian apakah dapat dikatakan bagus atau tidak bagus apabila nilai 9 dapat dikatakan bagus, dan nilai 8 dapat dikatakan tidak bagus [2].
Metode Tsukamoto merupakan salah satu metode yang digunakan dalam fuzzy inference system. Dalam setiap fuzzy inference system terdapat sistem yang terdiri dari himpunan fuzzy, variabel fuzzy, dan nilai keanggotaan. Nilai keanggotaan merupakan sebuah nilai yang merepresentasikan himpunan fuzzy. Nilai keanggotaan himpunan fuzzy tidak hanya berada pada nol ataupun satu, tetapi juga terletak di antaranya [6].
Tahapan yang dilakukan untuk melakukan pengolahan fuzzy adalah [7]:
1. Pembentukan himpunan fuzzy
Di tahap ini nilai himpunan fuzzy akan ditentukan berdasarkan variabel fuzzy,inputberupa tinggi dan lebar setelah pendeteksian kontur dan data yang sudah diperoleh sebelumnya untuk membuat kurva fungsi keanggotaannya.
Data yang sudah diambil berupa foto objek tersebut dan berat badannya setelah dilakukan penimbangan menggunakan alat timbangan Setelah itu, foto yang sudah diperoleh sebelumnya dihitung tinggi dan lebarnya menggunakan aplikasi sehingga menghasilkan nilai dalam satuan piksel.
Nilai tersebut berupa tinggi, lebar, dan berat badan asli dari pengambilan data digunakan untuk
pengolahan fuzzy inferensi Tsukamoto. Data tersebut dapat dilihat pada tabel 1.
Tabel 1 Data tinggi, lebar, dan berat badan
Tinggi (piksel) Lebar (piksel) Berat Asli (kg) 527 183 109 492 141 78 444 134 42 478 151 64 500 131 62 492 155 44 532 145 75 436 135 49 466 130 54 496 164 67 554 181 102 520 162 80 478 141 72 423 115 40 469 167 73 487 142 51 525 154 69 479 149 41 538 149 69 550 152 87 472 107 45 468 122 43 456 131 49 387 118 44 483 156 79 525 161 67 527 139 67 530 196 131 518 160 62 538 129 51 488 143 68 467 147 61 434 130 48 465 133 60 422 124 46 461 138 59 540 166 90 444 130 53 691 183 70
Setelah itu, nilai himpunan fuzzy ditentukan bedasarkan variabel dan himpunan fuzzyVariabel input maupun variabel output masing-masing dibagi menjadi dua himpunan fuzzy. Untuk menampung dua himpunan tersebut, digunakan tiga variabel fuzzy, yaitu :
a. Tinggi, yang merupakan tinggi objek yang ada di dalam citra. Variabel tersebut terdiri dari dua himpunan fuzzy, yaitu SEDIKIT dan BANYAK. b. Lebar, yang merupakan lebar objek yang ada di dalam citra. Variabel tersebut terdiri dari dua himpunan fuzzy, yaitu SEDIKIT dan BANYAK. c. Output-nya berupa berat badan objek yang terdapat di dalam citra. Variabel ini terdiri dari dua himpunan fuzzy, yaitu BERKURANG dan BERTAMBAH.
2. Penerapan fungsi implikasi
Pada tahap ini, setiap konsekuen yang ada dibuat menggunakan aturan if-then. Lalu setiap aturan tersebut dievaluasi dalam mesin inferensi, metode fuzzy Tsukamoto menggunakan fungsi implikasi min untuk mendapatkan nilai α-predikat tiap-tiap rule (α1, α2, α3,.... αn). Masing-masing nilai α-predikat digunakan untuk menghitung hasil inferensi secara tegas (crisp) pada masing-masing aturan (z1, z2, z3,.... zn).
Untuk mendapatkan daerah hasil implikasi diperlukan sejumlah aturan. Jumlah aturan yang terbentuk dari himpunan fuzzy dan variabel fuzzy adalah empat buah. Empat aturan yang digunakan adalah sebagai berikut :
a. Jika tinggi SEDIKIT dan lebar BANYAK maka berat BERKURANG.
b. Jika tinggi SEDIKIT dan lebar SEDIKIT maka berat BERKURANG.
c. Jika tinggi BANYAK dan lebar BANYAK maka berat BERTAMBAH.
d. Jika tinggi BANYAK dan lebar SEDIKIT maka berat BERTAMBAH.
3. Defuzzifikasi
Pada tahap ini, hasil akhir akan diperoleh dengan menggunakan metode rata-rata terbobot
3. Hasil
Pengujian dilakukan dengan mengambil tujuh foto objek yang ingin dideteksi berat badannya. Hasil implementasinya dapat dilihat pada tabel 2.
Tabel 2 Hasil implementasi program Tinggi (piksel) Lebar (piksel) Berat Asli (kg) Berat Perhitungan (kg) Error (%) 678 181 73 107,2 46,85 487 172 90 75,39 16,23 482 143 73 77,92 6,74 481 141 53 77,3 45,85 464 137 66 74,74 13,24 525 156 91 83,29 8,47 444 115 48 61,4 27,92 Rata-rata error (%) 23,61
Pada tabel 2 dapat dilihat bahwa rata-rata error sebesar 23,61%. Nilai error dihitung dengan cara mencari selisih antara berat asli dan berat perhitungan, lalu hasilnya dikalikan dengan angka 100. Karena rata-rata error yang cukup besar, maka harus dilakukan perubahan pada program, khususnya pada bagian pendeteksian objek. Perubahan tersebut dilakukan dilakukan dengan memperkecil area pendeteksian menjadi seperti pada Gambar 4.
Gambar 4 Hasil perubahan pendeteksian objek
Untuk mendapatkan perubahan tersebut, hasil deteksi objek sebelumnya di crop sesuai pendeteksian kontur sebelumnya. Lalu, kontur dibuat lagi secara manual terdiri dari tiga bagian, yakni bagian kepala, bagian badan, dan bagian kaki seperti terlihat pada Gambar 4. Dari tiga bagian tersebut, dihitung tinggi dan lebar kontur dari masing-masing bagian. Pada setiap bagian dihitung luasnya dan setiap luas bagian dijumlahkan. Nilai luas ini yang akan dijadikan sebagai variabel fuzzy dan diolah menjadi nilai berat badan. Implementasi dilakukan pada data foto yang sudah dikumpulkan. Hasilnya dapat dilihat pada tabel 3.
Tabel 3 Hasil implementasi pendeteksian objek yang baru
Luas (piksel) Berat (kg)
74036 109 59864 78 44580 42 53486 64 54864 62 53449 44 57027 75 42308 49 43468 54 56670 67 75884 102 58746 80 45698 72 36196 40 55528 73 50140 51 58842 69 47758 41 55784 69 62998 87 47119 45 40338 43 43184 49 32950 44 51111 79 61759 67 56934 67 76178 131 62634 62 52354 51 53475 68 50260 61 37644 48 44562 60 36944 46 43997 59 61524 90 38616 53 63262 70
Dari data pada tabel 3 dapat ditentukan satu himpunan fuzzy berupa luas dan dua variabel yaitu BESAR dan KECIL. Setelah itu perhitungan nilai himpunan fuzzy dilakukan berdasarkan data yang ada.
Untuk menerapkan fungsi implikasi ditentukan dua aturan fuzzyberdasarkan variabel yang ada yaitu luas dan berat, yaitu :
1. Jika luas BESAR maka berat BERTAMBAH. 2. Jika luas KECIL maka berat BERKURANG.
Fungsi min diterapkan pada setiap aturan yang dapat dituliskan sebagai berikut :
1.
= min (0,60) = 0,60
Berdasarkan himpunan berat badan dan aturan yang ada maka
(z – 40)/91 = 0,60 2.
= min (0,40) = 0,40
Berdasarkan himpunan berat badan dan aturan yang ada maka
(131 – z)/91 = 0,40 z = 94,60
Proses defuzzifikasi akan menggunakan metode rata-rata terbobot dari hasil fungsi implikasi dari kedua aturan diatas. Dari proses tersebut didapatkan hasil bahwa berat badan objek sebesar 94,60 kg dengan input luas objek sebesar 58842 piksel. Perhitungan fuzzy tersebut diimplementasikan pada tujuh orang yang sudah ditentukan. Hasilnya dapat dilihat pada tabel 4.
Tabel 4 Hasil implementasi pendeteksian objek yang kedua Luas (piksel) Berat Asli (kg) Berat Perhitungan (kg) Error (%) 44380 73 64,06 12,25 57890 90 92,5 2,78 48372 73 72,47 0,73 47134 53 69,86 31,81 47472 66 70,57 6,92 59092 91 95,03 4,43 36513 48 47,5 1,04 Rata-rata error (%) 8,57
Dari rata-rata error pada tabel 4 bisa disimpulkan bahwa perbedaan hasil perhitungan berat dan berat asli jauh lebih kecil dibandingkan dengan metode pendeteksian objek yang pertama. Oleh karena itu, program pendeteksian berat badan ini akan menggunakan metode pendeteksian objek yang kedua, lalu dilanjutkan dengan menerapkan metode fuzzy Tsukamoto untuk memprediksi berat badan objek yang ada pada citra.
4. Simpulan
Posisi kamera dan jarak pengambilan citra akan mempengaruhi hasil pendeteksian objek, oleh karena itu posisi kamera dan jarak saat pengambilan citra pertama dan kedua sedapat mungkin dibuat sama.
Pencahayaan juga berpengaruh terhadap akurasi hasil pendeteksian objek.
Metode pendeteksian objek dilakukan dua kali, pendeteksian objek pertama dilakukan dengan cara mendeteksi seluruh tubuh secara utuh dan pendeteksian objek kedua dilakukan dengan cara membaginya dalam beberapa bagian yaitu bagian kepala, badan, dan kaki, sehingga daerah pendeteksian lebih kecil karena lebar pendeteksian bagian kepala dan kaki tidak disamakan dengan lebar pendeteksian bagian badan. Dengan demikian hasil pendeteksian objek lebih akurat.
Metode fuzzy inferensi Tsukamoto dapat memprediksi berat badan objek dari citra digital dengan tingkat error terbesar 23,61%.
REFERENSI
[1] DeMaagd, K., Oliver, A., Oostendorp, Nathan., Scott, K., 2012,”Practical Computer Vision”, O’Reilly, United States of America.Castleman, Kenneth R., 1998, “Digital Image Processing”, Prentice Hall, New Jersey. [2] Kusumadewi, S., Hartati, S., Harjoko, A., Wardoyo, R.,
2006, “Fuzzy Multi-Attribute Decision Making”, Graha Ilmu, Yogyakarta.
[3] M, Walugembe., G, Nadiope., J, D, Stock., K, J, Stalder., D, Pezo., M, F, Rothschild., 2014, ”Prediction
of Luve Body Weight Using Various Body
Measurements in Ugandan Village Pigs”, Iowa State University.
[4] K, M, Florence., E, Dewey, Catherine., M, A, Samuel., S, Esther., O, O, William., 2011, ”Prediction of Live Body Weight Using Length and Girth Measurements for Pigs in Rural Western Kenya”, Journal of Swine Health and Production.
[5] Sutoyo, T., Mulyanto, E., Suhartono, V., Nurhayati, O.D., Wijanarto., 2009, “Teori Pengolahan Citra Digital”, Andi, Yogyakarta.
[6] Hasibuan, Y.M., Kusumastuti, N., Irawan, Beni., 2014, “Pengendalian Kecepatan Kendaraan Roda Empat Dengan Menggunakan Fuzzy Inference System Metode Mamdani”, Buletin Ilmiah Math Stat dan Terapannya (Bimaster). Vol 03.
[7] Istraniady., Andrian, P., 2013, “Analisis Perbandingan Metode Fuzzy Tsukamoto dan Metode Fuzzy Mamdani Pada Perbandingan Harga Sepeda Motor Bekas”, STMIK GI MDP.