60
BAB 3 METODOLOGI PENELITIAN
3.1.
Penentuan Masalah Penelitian
Penelitian ini dilakukan berdasarkan penelitian yang lalu pada kasus yang berbeda. Pada kasus Lien (2007) dan Sahagun (2007) yang dihadapi adalah pemantauan pejalan kaki dengan kondisi yang padat. Melihat kondisi lalu lintas yang sangat padat, peneliti melihat adanya kesamaan kasus yang dihadapi, kemudian metode pada percobaan sebelumnya diujikan untuk kasus pemantauan kendaraan. Pemantauan dengan menggunakan video digital, seperti yang dijelaskan oleh Lien (2007), secara umum terdapat dua jenis teknik yang dipergunakan untuk melakukan aktifitas pemantauan yaitu pendekatan menggunakan model dari objek dan pendekatan menggunakan fitur dari objek. Pendekatan menggunakan model akan mengalami banyak sekali kesulitan masalah pendeteksian objek akibat dari perubahan intensitas warna dan bentuk dari objek. Masalah segmentasi objek terjadi apabila objek mengalami oklusi atau penyatuan dengan objek lainnya. Segmentasi juga akan sulit dilakukan apabila bentuk dari objek berubah-ubah akibat pergerakan objek dan posisi kamera yang beragam. Masalah intensitas warna terjadi apabila pemantauan dilakukan pada lingkungan diluar ruangan, terutama karena perubahan intensitas cahaya matahari berubah sepanjang hari. Pendekatan yang lebih baik coba dilakukan dengan menggunakan model fitur pada objek. Seperti yang dijelaskan oleh Sahagun (2007) pada penelitian pemantauan pejalan kaki, pemilihan penggunaan pendekatan titik fitur karena titik fitur cukup
61
tangguh dalam men gatasi oklusi atau kep adatan objek karena tidak tergantun g dari kelen gkap an bentuk objek melainkan berdasark an data intrinsik dari titik fitur sep erti p ergerakkan dan jar ak antar titik fitur. M enurut Lien (2007) menambahkan, titik fitur y ang tersebar p ada area latar seharusny a sangat dekat den gan m asin g-masin g objek dan kemudian d ip ilih karen a leb ih baik d alam mer ep resentasikan objek dalam p ergerakkan objek y ang khas. Tantangan p emantauan den gan p enggunaan titik fitur adalah keterbatasan merep resentasikan kendaraan berd asarkan p ergerakkanny a y ang k aku. Untuk mencoba menjawab tantangan tersebut mak a p eneliti mencob a men ggun akan tamb ahan algoritma dengan m en ggunakan analisis relasi antar cluster m enjad i kelo mp ok objek dan p eny atuan objek y ang mem ilik i titik fitur y ang sama den gan ob jek lainny a.
3.2.
Alur Penelitian Untuk mencap ai tujuan dari p enelitian y aitu membuat dan menguji p rogram,
maka p enelitian d ilakuk an dalam alur sebagai berikut.
Gambar 3.1. Alur p enelitian.
62
Pada awal penelitian, peneliti melakukan pelatihan penggunaan program dan pustaka program yaitu mulai dari penggunaan Visual Studio 2008, Visual Studio 2010, Qt SDK, pustaka cvBlobsLib, pustaka Boost , dan pustaka OpenCV dipergunakan untuk menguji beberapa contoh aplikasi dari OpenCV ataupun contoh program dari pengembang lainnya, yaitu: 1.
Pelatihan operasi dasar pustaka OpenCV, seperti load image, threshold, dilate/ erode, canny edge detection, fill and
flood, rotate, and scale
image.
2.
Pelatihan contoh aplikasi Blob Detection menggunakan berbagai pustaka hingga diperoleh hasil terbaik menggunakan pustaka cvBlobsLib.
3.
Pelatihan contoh aplikasi Background Subtraction menggunakan model Statistical Gaussian Mixture dan model umum lainnya.
4.
Pelatihan contoh aplikasi Blob Tracking dari pustaka OpenCV.
5.
Pelatihan contoh aplikasi Pyramidal Optical Flow menggunakan pustaka OpenCV yang menjadi kelanjutan dari arah penelitian.
6.
Pelatihan contoh aplikasi K-Means menggunakan pustaka OpenCV.
7.
Pelatihan contoh aplikasi Shortest Spanning Tree menggunakan pustaka Boost.
8.
Pelatihan/ uji coba teori Coherence of Motion untuk mengelompokkan titik-titik fitur.
Pembelajaran literatur dilakukan bergantian dengan pembelajaran pustaka program. Literatur ditekankan pada pembahasan analisis cluster dan titik fitur seperti pembahasan oleh Lien (2007) dan Sahagun (2007), selain itu tulisan lain yang
63
membahas tentang subtraksi latar, pendeteksian Good Feature, dan pelacakan LucasKanade juga dibahas untuk memahami penggunaan parameter pada pustaka program. Pembuatan program dilakukan secara terus menerus dengan melakukan pelatihan penggunaan pustaka dan pembelajaran literatur. Ketika sebuah ide dari pembelajaran literatur didapatkan, maka peneliti mencoba langsung membuat programnya. Pembuatan program juga dikerjakan dengan adanya pengujian, terutama pengujian terhadap kesalahan logika dan metode yang dipergunakan. Pengujian juga dilakukan untuk menentukan nilai parameter yang tepat yang dipergunakan pada masing-masing fungsi.
3.3.
Perancangan Penelitian
3.3.1.
Kebutuhan Perancangan
Perancangan memerlukan sebuah unit komputer, handycam, tripot, dan berbagai perangkat lunak yang dibutuhkan. Spesifikasi detil dari alat yang digunakan dijelaskan sebagai berikut.
3.3.1.1. S pesifikasi Komputer
1.
Tipe komputer
: ACER ASPIRE 4736G
2.
Prosesor
: Intel CoreTM2 Duo T6600
3.
Kartu grafis
: NVIDIA GeForce G105M 512MBVRAM
4.
Ukuran layar
: 14.0” HD LED LCD
5.
Ukuran memori
: 2 GB
6.
Ukuran HDD
: 320 GB (81.1 GB, 40.5 GB free)
64
3.3.1.2. S pesifikasi Kamera
1.
Tipe kamera
: Sony DCR-SX65E
2.
Pengunaan tripot
: Ya
3.
Format perekaman
: AVI 720 x 576 piksel
3.3.1.3. S pesifikasi Perangkat Lunak
3.3.2.
1.
Sistem operasi komputer
: Windows 7 Ultimate Edition
2.
SDK Compiler
: Qt Creator 4.7.4
3.
Pustaka
: OpenCV 2.1
Perancangan Lingkungan Perekaman
Perancangan yang dilakukan tidak menggunakan kamera CCTV dan juga tidak terpasang di sudut-sudut jalur lalu lintas. Perancangan yang dilakukan kali ini adalah perancangan program secara mandiri, dimana kita menggunakan peralatan sendiri. Pemantauan jalan secara mandiri kita lakukan dengan menggunakan sebuah handycam dan tripot. Penggunaan tripot adalah untuk mendapatkan perekaman yang
bebas dari getaran tangan, karena apabila kamera bergetar maka video yang dihasilkan juga akan mengalami pergeseran. Pergeseran pada video, objek/ benda diam akan dianggap sebagai objek bergerak dan akan menganggu program pada area subtraksi latar dan pendeteksian titik fitur. Pemantauan dengan menggunakan kamera direncanakan dan dilakukan diatas jembatan penyebrangan. Pengaturan tripot dan kemiringan kamera dilakukan hanya sebatas agar seluruh objek kendaraan dapat terlihat dengan jelas dari ujung ke ujung jalan pada sebuah lajur. Pengaturan sudut kemiringan kamera dan ketinggian kamera
65
tidak p erlu dip erhatikan dalam metode kali ini karen a didalam m etode ini, bentuk, ukuran, dan jar ak dari ob jek tidak dip erhatikan.
Gambar 3.2. M odel p osisi kamera dari atas jembatan p eny ebrangan.
3.3.3.
Perancangan Diagram Alir Program dir ancan g tidak m en ggunakan keter gantun gan basis data y ang
tersimp an dalam bentuk ap ap un secara p ermanen didalam harddisk , oleh karena itu p rogram ini d ikatakan ter golon g dalam k elomp ok p rogram Unsupervised Learning. Sehin gga baik p ertama kali p rogr am d ijalankan atau dilakukan p ada kesemp atan berikutny a, p rogram ini ak an tetap berjalan den gan baik hany a den gan ketentuan p enggun aan kriteria dasar sep erti sp esifikasi alat, format video dan kelengkap an instalasi p rogram. Pro gram dir ancan g untuk berjalan hin gga frame p ada vid eo hab is terlewati ataup un ketika p engguna. Ber ikut adalah alir an utama p rogram mulai dar i awal hingga kelu ar dari p rogr am.
66
Gambar 3.3. Aliran p roses utama p rogram.
3.3.3.1. Inisialisasi Inisialisasi d ilakuk an p ada saat konstruktor dari objek kelas dijalank an. Peman ggilan konstruktor p ada p rogram in i h any a dilakuk an k etika objek kelas d ibuat sehingga inisialisasi h any a dilakukan sekali saja selama p rogram tersebut dijalankan. Inisialisasi bisa ju ga disebut konfigur asi var iabel d an p arameter y an g d igunakan didalam p rogram sep erti terlihat p ada gambar ber ikut.
67
Gambar 3.4. Aliran p roses inisialisasi p arameter dan var iabel. Pertama, inisialisasi dilakuk an untuk memberik an nilai awal p ada variabelvariabel y ang d igunakan d iseluruh b agian p rogr am, sep erti p enanda waktu untuk melakuk an deteksi titik fitur ulang, p enanda dan p engh itung ju mlah frame, p enghitung jumlah titik fitur, dan seb againy a. Pada awal p rogram berjalan p enanda aktifitas p endeteksian titik fitur baru harus dan wajib dilakuk an. Dan analisis relasi titik fitur dilakukan d alam kurun waktu setiap tujuh frame sekali. Kedua, inisialisasi d ilakuk an untuk member ikan n ilai p arameter p enggunaan fungsi Good Features to Track sep erti kualitas p endeteksian (nilai kualitas adalah 0.4), jarak minimum p endeteksian antar dua buah titik fitur (men ggun akan jarak 5 p iksel sesuai kebutuhan ukuran vid eo dan jum lah titik f itur), ukuran dar i jendela (ukur an y ang dip ergunakan ad alah 2 p iksel) y ang dip ergunakan, p enanda p enggunaan metode Harris (dalam hal ini tidak digunak an artiny a p enanda diber i nilai no l), dan ukur an dar i nilai level k (0.04) y an g dip ergun akan.
68
Ketiga, inisialisasi dilakukan untuk memberikan nilai parameter penggunaan fungsi Find Corner Sub Pix seperti ukuran dari jendela, kriteria perulangan (jumlah perulangan yang dipergunakan adalah 20, dan nilai epsilon yang dipergunakan adalah 0.03), dan zero zone yang dipergunakan adalah -1. Keempat, inisialisasi dilakukan untuk memberikan nilai parameter penggunaan fungsi Optical Flow Tracking seperti level tracking yang dipergunakan yaitu bernilai 7, inisialisasi error tracking sama dengan nol, inisialisasi flag aktifitas pemantauan sama dengan nol. Kelima, inisialisasi parameter font yaitu inisialisasi tipe garis sama dengan CV_AA, tipe teks sama dengan CV_FONT_HERSHEY_COMPLEX_SMALL, inisialisasi pemasangan font, dan inisialisasi ukuran dan font. Font disini dipergunakan untuk menuliskan identitas cluster atau objek pada layar gambar. Keenam, inisialisasi variabel warna ditentukan secara acak dan maksimal warna yang disimpan adalah sebanyak jumlah objek yaitu 50 objek. Warna dipergunakan untuk membedakan penulisan identitas objek yang berbeda. Ketujuh, inisialisasi dilakukan untuk memasang capture video yang berasal dari file berformat AVI ataupun MPEG. Video yang dipasang dipilih sendiri oleh pengguna program, apabila format video tidak valid, maka aktifitas pemantauan tidak dapat dilakukan hingga format video sesuai ataupun pemasangan capture video berhasil. Kedelapan, inisialisasi
dilakukan untuk memberikan nilai
parameter
penggunaan fungsi subtraksi latar MoG. Background threshold yang dipergunakan adalah 0,4. Standart threshold yang dipergunakan adalah 4. Window size yang dipergunakan adalah 20 piksel. Level gaussian yang dipergunakan adalah 5. Inisial bobot/ weight yang dipergunakan adalah 0,09. Inisial keragaman yang dipergunakan
69
adalah 28. M inimum area y ang dip ergunak an adalah 5. Setelah p arameter dari fungsi model gaussian sudah didefinisik an, kemudian p arameter tersebut dip asang p ada fungsi p embuatan subtraksi latar M oG. Kesembilan, inisialisasi d ilakuk an untuk men galokasikan memori var iabel didalam m emori komp uter y ang dip ergun akan untuk melakukan aktifitas p emantauan. Variabel y ang dip ergun akan antara lain sep erti variabel gambar, variab el counter dan
flag, dan var iable p enamp ung hasil p erhitungan analisis cluster dan objek.
3.3.3.2. Pembuatan Mask Objek Pembuatan mask area p endeteksian titik fitur dilakukan secara berulan g ketika
frame baru d ari v ideo d idap atkan. Gambar berikut m enjelaskan alur p roses dari p embuatan mask dimana alat utama dar i p embuatan mask adalah den gan melakukan subtraksi latar untuk setiap frame baru y ang didap atkan.
Gambar 3.5. Aliran p roses p embuatan mask area p endeteksian titik fitur. Tahap p ertama y ang dilakukan adalah mendap atkan citra b aru dar i vid eo, selanjutny a citra tersebut diubah menjadi grayscale den gan men ggun akan p ersamaan khusus y ang telah dijelaskan seb elumny a. Citra grayscale m eman g tidak dip er gunakan didalam p embuatan mask , tetap i akan dip ergunakan d idalam p endeteksian dan p elacakan titik f itur di tahap selan jutny a. Kemudian subtraksi latar di update untuk mendap atkan mask y ang b aru dar i frame y an g telah dip erbaharu i. Mask baru y an g telah
70
didap atkan kemudian akan dip erbaik i den gan men ggunak an p roses dilatasi dan erosi sehingga citra blob akan tersatukan lebih semp urna dengan sekitarny a.
3.3.3.3. Pendeteksian Titik Fitur Pada awal p rogram dijalank an, p endeteksian titik fitur dilakukan sebab belu m ada satup un titik fitur y ang terdeteksi. Pendeteksian titik fitur dilakukan setiap N frame sesuai dengan jumlah y ang telah ditentukan, dalam p ercobaan kali ini digunak an 7
frame sekali untuk setiap p endeteksian titik fitur. Alur p roses p endeteksian titik fitur adalah seb agai b erikut.
Gambar 3.6. Aliran p roses p endeteksian titik fitur. Peran utama dalam p endeteksian titik fitur dip erankan oleh fun gsi Good
Features to Track dan Find Corner Sub Pix. Titik fitur dideteksi dan d ihitung oleh fungsi Good Feature to Track sedan gkan p eletakkan p osisi titik tersebut didalam area p iksel adalah den gan men ggun akan fun gsi Find Corner Sub Pix. Titik-titik fitur baru y ang telah terdeteksi, selanjutny a digabun gkan den gan titik fitur lama y ang telah dideteksi sebelumny a. Sebelum digabun gk an, p osisi titik fitur lama p ada frame baru p erlu diketahui, oleh karen a itu p elacak an titik fitur p erlu dijalankan satu
71
kali p ada frame terbaru. Langk ah selanjutny a adalah m en ggabun gkan kedu a kelomp ok titik-titik fitur lama dan baru tersebut dengan men ggunak an p erulan gan sejum lah total titik fitur dari kedua kelomp ok tersebut. Pendeteksian titik fitur selalu dilakukan setelah analisis titik fitur dan segm entasi objek oleh karen a itu p ada tahap ini juga p erlu dilakuk an in isialisasi ulan g terhadap variabel-var iabel y ang d ibutuhkan dalam melakukan analisis sep erti variabelvariabel ker agam an, variabel titik awal gerak, d an variabel bobot koneksi untuk dip ergunakan d alam analisis selan jutny a.
3.3.3.4. Pelacakan Titik Fitur Pelacak an titik fitur dip erankan utama oleh fungsi Calc Optical Flow Pyramid
LK. Alur p roses p elacakan titik fitur digamb arkan sebagai ber ikut.
Gambar 3.7. Aliran p roses p elacakan titik fitur. Pada p roses p ertama dijalankan fun gsi Calc Optical Flow Pyramid LK dimana berfungsi untuk m elacak ger ak titik fitur p ada frame selanjutny a. Pelacak an dilakukan
72
berdasarkan metode pelacakan Lucas-Kanade dengan mengimplementasikan citra pyramid untuk memperbesar peluang keberhasilan pelacakan pada frame baru.
Pelacakan titik fitur bisa saja berhasil ataupun gagal. Terdapat dua kemungkinan gagal yaitu pertama pelacakan gagal akibat perubahan tekstur citra dan kedua pelacakan gagal akibat titik fitur bergerak keluar dari area citra. Kegagalan tipe pertama dapat ditangani dengan memposisikan titik fitur pada jarak terdekat dari posisi sebelumnya. Pelacakan titik fitur jarang menghasilkan pelacakan yang sempurna, oleh sebab inilah getaran dari titik fitur terjadi. Kegagalan tipe, kedua titik-titik fitur tersebut tidak dapat dilacak kembali dan statusnya menjadi tidak valid lagi. Oleh karena itu, perlu penyesuaian seperti menghapus koneksi yang terhubung dengan titik fitur, menghapus indeks titik fitur pada objek, dan menghapus titik awal gerak yang memiliki indeks yang sama dengan titik fitur. Penghapusan dilakukan sebab analisis gerak objek berkorelasi langsung dengan keberadaan titik fitur yang masih valid karena gerak titik fitur yang dilakukan adalah gerak nyata objek pada citra. Penggambaran titik fitur pada citra dilakukan untuk melihat keberhasilan dari segmentasi objek sehingga keanehan/ kesalahan logika pada program seperti hilangnya titik fitur yang tidak wajar dan kesalahan penyambungan koneksi antar titik fitur dapat terlihat dengan jelas. Nilai keragaman koneksi antar titik fitur didapatkan dengan menghitung jumlah jarak koneksi dan jarak koneksi kuadrat dalam N frame sehingga perhitungan dilakukan pada setiap frame perpindahan titik fitur. Terkecuali pelacakan yang dilakukan dalam tahap pendeteksian titik fitur, perubahan nilai keragaman tidak lagi dipergunakan sebab nilai keragaman telah dipergunakan dalam analisis gerak titik fitur di tahap sebelumnya.
73
Penulisan identitas dan jumlah objek y an g telah terdeteksi/ tersegmentasi dip ergunakan sup ay a p enggun a ap likasi dap at mengetahui ju mlah kendaraan y ang ada p ada citra dan jumlah seluruh kendar aan y ang ada p ada citra dan ju ga kendar aan y ang telah lewat.
3.3.3.5. Analisis Relasi Titik Fitur Analisis relasi titik fitur dilakukan setiap N frame sekali, sebab d alam frame-
frame sebelumny a p erlu dip ersiap kan variabel keragaman jar ak dari titik fitur. Setelah nilai variabel y ang dibutuhkan telah did ap atkan, maka selan jutny a p roses men ghitung bobot koneksi dan reduksi koneksi sep erti y ang dijelaskan oleh alur ber ikut.
Gambar 3.8. Aliran p roses analisis relasi titik fitur. Pertama kali y ang dilakukan dalam p roses analisis relasi titik fitur adalah men ghitung karakteristik dari tiap titik fitur sep erti jarak dan arah p ergerakkan.
74
Keduanya akan dipergunakan untuk menghitung nilai s pq,movement dan s pq,direction perbandingan jarak dan arah pergerakkan antara titik p dan q. Berdasarkan nilai pergerakkan sebuah titik fitur, titik fitur tidak valid keberadaannya apabila bergerak sangat sedikit karena identik dengan pergerakkan getaran dari titik fitur. Penyaringan ini dilakukan karena adanya titik fitur yang terdeteksi pada area latar akibat dari pembuatan mask yang tidak sempurna ataupun akibat titik fitur yang terjebak diarea latar karena gagal dalam pelacakan. Penyaringan dilakukan dengan menghapus titik fitur tersebut, dan sebagai akibatnya juga perlu dilakukan penghapusan titik fitur pada objek dan variabel yang berkaitan yaitu koneksi dan titik awal gerak. Pada tahap selanjutnya yang tersisa adalah titik fitur yang dapat dipercaya untuk merepresentasikan pergerakkan dari objek. Kemudian titik fitur dikelompokkan menjadi kelompok cluster dan objek dengan menentukkan koneksi yang baik dan dikelompokkan dengan menggunakan metode graph traversal.Objek yang terbentuk kemudian direduksi kembali dengan melakukan penggabungan objek.
3.3.3.6. Penukaran Variabel Optical Flow Tracking
Fungsi Optical Flow Tracking memerlukan dua buah citra grayscale dan dua buah citra pyramid dimana satu citra dipergunakan untuk mengetahui posisi titik sebelumnya dan satu citra dipergunakan untuk mengetahui posisi titik pada frame baru. Oleh karena itu ketika pelacakan selesai, variabel citra lama diganti dengan citra yang baru dan citra baru digantikan dengan perolehan frame selanjutnya pada video. Proses pertukaran ini terus dilakukan hingga seluruh frame pada video habis.
75
3.3.3.7. Tampilkan Gambar
Penampilan gambar titik fitur, kelompok cluster, kelompok objek, jumlah objek, jumlah total objek, dan spesifikasi dari video semuanya ditampilkan sebagai output dari aplikasi. Setiap frame selalu ditampilkan citra baru dengan informasi yang
baru juga. Penampilan berbagai informasi tersebut memang dipergunakan untuk menunjukkan hasil dari segmentasi objek dan informasi pada objek.
3.3.3.8. Membersihkan Alokasi Memori
Pada bagian akhir dari program ketika frame telah habis ataupun pengguna telah memilih untuk keluar dari program, maka akan dijalankan fungsi destruktor yang didalamnya berisikan pemanggilan fungsi-fungsi untuk membersihkan memori komputer yang telah dipergunakan.
3.3.4.
Perancangan Tampilan Program
Pada awal pengembangan program, program dirancang berbentuk aplikasi console dan pada dasarnya tampilan yang diharapkan dapat menampilkan informasi
video, identitas dari objek, jumlah objek pada layar, dan jumlah total objek yang terhitung. Kemudian selanjutnya program dikembangkan dengan berbentuk aplikasi GUI dengan menu pemilihan video, penampilan original tracking seperti pada aplikasi console, penampilan feature point tracking, penampilan cluster tracking, penampilan object tracking, dan penampilan hasil pendeteksian dalam 4 arah gerak objek.
76
Gambar 3.9. Perancan gan awal tamp ilan p rogram. Pada p erancan gan tersebut setiap objek diber ikan label id entitas objek. M isalkan, obj: 2, artiny a objek tersebut merup akan objek beridentitas 2 y ang ada p ada lay ar. Current object(s) menun jukkan jumlah objek y ang ada di lay ar p ada saat itu.
Total object(s) menunjukkan jumlah seluruh objek y ang telah terhitung. Image (w x h) dan frame rates m erup akan inform asi ukuran dan k ecep atan video y an g dip er gunakan agar p emakaianny a sesuai den gan standar min imum y an g disarank an.
3.3.5.
Perancangan Pengujian Program Pengujian d ilakuk an untuk setiap aktifitas, mulai dari hasil p ersiap an data
hingga hasil dari setiap segmentasi objek. Pengujian hasil akhir p endeteksian dilakukan dengan men ggunak an beberap a samp el video den gan ukuran leb ar dan tinggi p ixel dan frame rate y ang sudah ditentukan, serta kondisi siang hari dan cuaca y ang cerah. Video y ang dip ergunakan hany a memantau satu arah lajur lurus dengan tingk at kep adatan y ang bervariasi.
77
Beberapa hal yang diuji dalam pembuatan program antara lain: 1.
Pengujian hasil terbaik dari subtraksi latar, pendeteksian titik fitur dan pelacakan titik fitur.
2.
Pengujian penghapusan titik fitur yang tidak valid dari frame satu ke frame selanjutnya.
3.
Pengujian penghapusan titik fitur yang bergerak sangat sedikit yang dianggap sebagai titik background.
4.
Pengujian pembentukkan kelompok cluster.
5.
Pengujian pembentukkan objek dan penambahan titik dalam klasifikasi sebuah objek.
6.
Pengujian reduksi jumlah objek dengan penggabungan objek.
7.
Pengujian penjagaan hasil tracking dari setiap titik objek.
8.
Pengujian hasil total perhitungan objek.