LOGO
IMPLEMENTASI METODE SCALE INVARIANT
FEATURE TRANSFORM DAN METODE CAMSHIFT
PADA PENJEJAKAN OBJEK BERGERAK
Oleh :
Shanty Eka Agustina (1207.1000.24)
Jurusan Matematika
Fakultas Matematika dan Ilmu Pengetahuan Alam
Institut Teknologi Sepuluh Nopember
Surabaya
Dosen Pembimbing: Dr . Imam Mukhlas, S.si, MT
LOGO
DASAR TEORI
ANALISIS SISTEM DAN
PERANCANGAN PERANGKAT LUNAK IMPLEMENTASI SISTEM PENGUJIAN DAN ANALISIS PERANGKAT LUNAK
PENDAHULUAN
PENUTUPLOGO
PENDAHULUAN
Sistem Penjejakan Objek Bergerak
LOGO
Kelebihan :
1. memiliki kemampuan melakukan adaptasi atau penyesuaian terhadap distribusi probabilitas warna yang selalu
berubah tiap pergantian frame dari video.
Alasan:
distribusi probabilitas warna yang selalu berubah tiap pergantian frame dari video
LOGO
1
• Bagaimana mengaplikasikan metode scale
invariant feature transform
untuk
mendeteksi dan mendeskripsikan fitur –
fitur lokal yang terdapat dalam data video.
2
• Bagaimana mengaplikasikan metode
camshift
untuk mendeteksi objek bergerak
dalam data video.
3
• Bagaimana sistem yang telah dibuat dapat
menjejaki gerakan dari objek yang telah
ditentukan
.
Rumusan Masalah
LOGO
Data video yang akan diamati
sebelumnya telah tersimpan dalam
penyimpanan komputer.
Objek yang akan diamati ditentukan
oleh user dengan ketentuan hanya satu
kesatuan objek bergerak saja.
Penjejakan objek bergerak dengan
metode scale invariant feature
transform
dan metode camshift di
implementasikan pada MATLAB
R2012a
Batasan Masalah
LOGO
Mengaplikasikan metode scale
invariant feature transform
untuk mendeteksi dan
mendeskripsikan fitur- fitur
lokal dari citra pada data video
Mengaplikasikan metode
camshift
untuk mendeteksi
objek bergerak dalam data
video.
Mengaplikasikan sistem yang
telah dibuat agar dapat
menjejaki gerakan dari objek
yang telah ditentukan oleh user.
Tujuan
LOGO
1
Dapat memudahkan
pengamat dalam
melakukan proses
pengamatan objek
bergerak pada suatu
data video.
2
Dihasilkan suatu
aplikasi penjejakan
objek bergerak pada
video yang mampu
melakukan penjejakan
suatu objek bergerak.
Manfaat
LOGO
DASAR TEORI
ANALISIS SISTEM DAN
PERANCANGAN PERANGKAT LUNAK IMPLEMENTASI SISTEM PENGUJIAN DAN ANALISIS PERANGKAT LUNAK PENDAHULUAN PENUTUP
LOGO
DASAR TEORI
Citra Digital
Citra adalah kumpulan gambar yang
secara keseluruhan merekam suatu
adegan melalui media indra visual.Citra
dapat dideskripsikan sebagai data dalam
dua dimensi dalam bentuk matriks. Citra
digital adalah citra dua dimensi yang
dapat dipresentasikan dengan fungsi
intensitas cahaya yang mana X dan Y
menyatakan koordinat spasial.
LOGO
Penjejakan Objek Bergerak
Penjejakan Objek Bergerak(Obyek Tracking) adalah proses mencari lokasi dari objek yang akan diamati dari suatu data video untuk setiap satu satuan frame dalam data video tersebut.
Penjejakan objek bergerak berdasarkan gerakan objek Penjejakan objek bergerak berdasarkan pengenalan objek.
Metode yang sering digunakan :
1.Kalman filter
2.extended Kalman filter 3.Particle filter
Metode yang sering digunakan :
1.SIFT 2.RANSAC 3.Mean Shift 4.Camshift
LOGO
Cara Kerja Algoritma SIFT
Cara Kerja Algoritma SIFT adalah sebagai berikut:
1. Gaussian dan Difference of Gaussian Scale Space
Scale Space
agar didapatkan fitur-fitur yang stabil (invarian) terhadap berbagai
kemungkinan perubahan terhadap skala citra. Tujuan Fungsi Gausian Pembangun Scale Space Gaussian
Scale Space Difference Of Gaussian
Cara Pembentukannya
cara mensubstraksi dua citra
Gaussian Scale Space yang
berdekatan
(D(x,y,σ)) = L(x,y,kσ)-L(x,y,σ)
Rumus
LOGO
Keterangan
– L(x,y,kσ) adalah konvolusi dari citra asli I(x,y) dengan Gaussian filter G(x,y,σ) pada skala kσ dengan k = √2.
– L(x,y,σ) adalah konvolusi dari citra asli I(x,y) dengan Gaussian filter G(x,y,σ) pada skala σ
2. Deteksi Ekstremum
Deteksi Ekstremum
membandingkan nilai setiap piksel pada DoG Scale space dengan delapan piksel yang berada di sekelilingnya dan 9 piksel yang bersesuaian pada citra
DoG sebelumnya dan setelahnya.
Cara Pembentukannya
Jika nilai piksel yang dimaksud lebih besar atau lebih kecil
daripada nilai-nilai piksel pembandingnya maka koordinat
piksel tersebut ditandai sebagai ekstremum
Kriteria Deteksi Ekstremum
LOGO
Titik-titik Ekstremum
Lokalisasi dengan akurasi
subpiksel ekspansi Taylor orde kedua
Posisi Ekstrema Menghitung Nilai Keypoint Pada Ekstrema
Jika nilai D(z)tidak melebihi suatu nilai
threshold ( 0.03) maka keypoint tersebut
dihilangkan dan tidak dipakai lagi.
Alat Pembantu
Kriteria Keypoint
LOGO
Penetapan Orientasi Keypoint
(Orientation assignment)Penetapan Orientasi Keypoint untuk mendapatkan sifat invarian terhadap rotasi objek Tujuan
citra Gaussian smooth L yang memiliki skala paling dekat dengan skala keypoint Gradien Magnitude Orientasi Histogram Orientasi Puncak Histogram Orientasi = Orientasi Dominan Alat Pembentuk Dicari Dibentuk Dicari
LOGO
Penentuan Deskriptor Lokal
Proses terakhir adalah menghitung vektor deskriptor.
Deskriptor dihitung untuk masing-masing keypoint, langkah
ini dilakukan pada gambar yang paling dekat dengan skala
untuk skala keypoint. Pertama membuat orientasi dengan 4x4
piksel dengan 8 bin untuk tiap masing-masingnya.
Histogram ini dihitung dari magnitude dan nilai orientasi dari
sampel dalam wilayah 16x16 disekitar keypoint. Magnitude
dihitung dengan fungsi Gaussian dengan σ sama dengan satu
setengah lebar deskriptor. Kemudian deskriptor menjadi vektor
dari semua nilai histogram ini. Karena 4x4= 16 histogram
dengan masing-masing memiliki 8bin, maka vektor memiliki
128 elemen.
LOGO
Algoritma Meanshift
Langkah-langkah dari algoritma Mean Shift adalah sebagai berikut:
Step 1 : Ukuran search window yang sudah ditentukan.
Step 2 : Lokasi awal search window yang sudah ditentukan.
Step 3 : Hitung daerah mean dalam search window.
Step 4 : Posisikan search window ke tengah daerah mean seperti
dihitung pada step (3).
Step 5 : Ulangi step (3) dan (4) hingga konvergen (atau hingga
pergeseran daerah mean kurang dari threshold / batas yang ditentukan).
LOGO
Algoritma Camshift
Secara umum algoritma camshift meliputi step-step sebagai berikut:
Step 1 : Tentukan ukuran awal search window.
Step 2 : Tentukan lokasi awal dari search window.
Step 3 : Tentukan daerah kalkulasi (calculation region) pada bagian tengah
search window dengan ukuran lebih besar dari search window.
Step 4 : Frame citra video dikonversi ke dalam sistem warna HSV (Hue,
Saturation
,Value), dan dilakukan color histogram lookup dalam calculation
region yang akan menghasilkan citra distribusi probabilitas warna.
Step 5 : Lakukan algoritma Mean Shift seperti di atas (satu atau banyak
iterasi) dengan input berupa ukuran dan lokasi search window serta citra
distribusi probabilitas warna, simpan zeroth moment.
Step 6 : Set nilai x, y, z yang diperoleh dari step (5).
Step 7 : Nilai x, y dipakai untuk set titik tengah search window,
(2*area
1/2). Untuk set ukuran window. Ulangi step(3) untuk setiap pergantian
frame citra video.
LOGO
DASAR TEORI
ANALISIS SISTEM DAN PERANCANGAN PERANGKAT LUNAK IMPLEMENTASI SISTEM PENGUJIAN DAN ANALISIS PERANGKAT LUNAK PENDAHULUAN PENUTUP
LOGO
Perancangan Perangkat Lunak
Software Program Utama: Penjejakan Objek Bergerak dengan SIFT Program Utama: Penjejakan Objek Bergerak dengan Camshift
LOGO
FLOWCHART PENJEJAKAN OBJEK BERGERAK
dengan SIFT
Mulai
Data Video
Non Realtime
Menampilkan data video yang telah tersimpan di direktori
Konversi video ke frame
Ekstrasi fitur-fitur lokal dalam citra uji dengan algoritma SIFT
Ekstrasi fitur pencocokan keypoint
Tentukan ROI dari objek
Video hasil tracking
Selesai
Penjejakan objek bergerak
LOGO
FLOWCHART PENJEJAKAN OBJEK BERGERAK
dengan CAMSHIFT
Mulai
Data Video
Non Realtime
Menampilkan data video yang telah tersimpan di direktori
Tentukan ROI dari objek yang akan diamati
Update posisi baru dari objek Penjejakan Objek Bergerak dengan
Camshift
Video Hasil Tracking
LOGO
Uji Coba Program
UJI COBA PROGRAM
Data Uji Coba
No Nama Video Video
1 Redcup.avi 2 bola.avi
LOGO
Uji coba pendeteksian fitur keypoint
Total citra .jpg ada 100 citra.jpg untuk dataset redcup.avi yaitu 1.jpg
sampai dengan 100.jpg.Sedangkan total citra .jpg ada 80.jpg untuk dataset
bola.avi yaitu bola1.jpg sampai dengan bola80.jpg. Dan untuk dataset
cangkir.avi ada 40 citra yaitu cangkir1.jpg sampai cangkir40.jpg.
N o
Citra Uji Jumlah Fitur Keypoint Yang Terdeteksi
1 Redcup1.jpg Jumlah Fitur yang terdeteksi 395 keypoint 2 Redcup2.jpg Jumlah Fitur yang
terdeteksi 422 keypoint 3 Redcup3.jpg Jumlah Fitur yang
terdeteksi 393 keypoint 4 Redcup4.jpg Jumlah Fitur yang
terdeteksi 389 keypoint
Untuk dataset Redcup.avi
LOGO
N o
Citra Uji Jumlah Fitur Keypoint Yang Terdeteksi
1 Bola1.jpg Jumlah Fitur yang terdeteksi 193 keypoint 2 Bola2.jpg Jumlah Fitur yang
terdeteksi 208 keypoint 3 Bola3.jpg Jumlah Fitur yang
terdeteksi 211 keypoint 4 Bola4.jpg Jumlah Fitur yang
terdeteksi 240 keypoint
N o
Citra Uji Jumlah Fitur Keypoint Yang Terdeteksi
1 Cangkir1.jpg Jumlah Fitur yang terdeteksi 273 keypoint 2 Cangkir2.jpg Jumlah Fitur yang
terdeteksi 328 keypoint 3 Cangkir3.jpg Jumlah Fitur yang
terdeteksi 301 keypoint 4 Cangkir4.jpg Jumlah Fitur yang
terdeteksi 339 keypoint
Untuk dataset Bola.avi
Untuk dataset cangkir.avi
LOGO
Uji coba ekstrak fitur pencocokan keypoint beserta penjejakan
objek bergeraknya
LOGO
Deteksi fitur match bola1.jpg dengan bola2.jpg Deteksi fitur match bola3.jpg dengan bola4.jpg
LOGO
LOGO
Untuk dataset bola.avi
Untuk dataset cangkir.avi
LOGO
•Uji coba penjejakan (tracking) objek bergerak.
Input : - Data video penyimpanan direktori
- Indeks frame awal sampai dengan indeks frame akhir
- Koordinat dari ROI
Proses: Proses penjejakan objek bergerak
Output :- Koordinat titik pusat dari ROI sesuai dengan hasil
penjejakan objek bergerak
- Nilai zeroth moment untuk x dan y, Jumlah iterasi untuk setiap
proses penjejakan
LOGO
Untuk dataset bola.avi
Untuk dataset cangkir.avi
LOGO
KESIMPULAN DAN SARAN
Dari hasil uji coba diatas menunjukkan bahwa waktu komputasi dari algoritma SIFT lebih efisien dibandingkan dengan algoritma Camshift. Akan tetapi, hasil penjejakan yang dilakukan oleh algoritma Camshift lebih baik dibandingkan dengan algoritma SIFT.
Saran
Saran yang dapat diberikan dalam pengembangan tugas akhir ini antara lain adalah:
•Sebagai pengembangan program, dapat dibuat program penjejakan objek bergerak dengan pengambilan citra secara real time .
LOGO
DAFTAR PUSTAKA
 Exner David and Bruns Erich,”Fast and robust camshift tracking,” in Proc. IEEE Conf. on Computer Vision and Pattern Recognition, 2010.
 M. Isard and A. Blake, “Condensation - Conditional density propagation for
visual tracking,” Intl. J. of Computer Vision, vol. 29, no. 1, 1998.
 Pratama, Rangga Yudha, 2005, “Rancang Bangun Perangkat Lunak Untuk Deteksi Objek Bergerak Menggunakan Motion Tracking dan Short Message Services”, Tugas Akhir, Jurusan Matematika ITS.
 R. Rosales and S. Sclaroff, “3D trajectory recovery for tracking multiple
objects and trajectory guided recognition of actions,” in Proc. IEEE Conf. on
Computer Vision and Pattern Recognition, Fort Collins, CO, 1999, pp. 117–
123.
 Y. Boykov and D. Huttenlocher, “Adaptive Bayesian recognition in tracking
rigid objects,” in Proc. IEEE Conf. on Computer Vision and Pattern
Recognition, Hilton Head, SC, 2000, pp. 697–704.
 Y. Rui and Y. Chen, “Better proposal distributions: Object tracking using
unscented particle filter,” in Proc. IEEE Conf. on Computer Vision and Pattern
LOGO
 Chaoyang Zhu, 2011, “ Video Object Tracking using SIFT and Mean Shift”,
Thesis, Department of Signals and Systems Chalmers University Of Technology.
 Susanto,2008,” Pengembangan Perangkat Lunak Penjejakan Objek Bergerak Menggunakan Metode Mean Shift” Tugas Akhir, Jurusan Matematika ITS.  Lowe, D.G., “Distinctive Image Features from Scale-Invariant Keypoints”,
International Journal of Computer Vision, 60, 2, pp. 91-110, 2004.
 G. R. Bradski. Computer video face tracking for use in a perceptual user
interface. Intel Technology Journal, Q2 1998.
 D. Comaniciu, V. Ramesh, “Real-Time Tracking of Non-Rigid Objects using Mean Shift”, IEEE CVPR, 2000.