jurusan matematika fakultas matematika dan ilmu ... · mengekstraksi objek bergerak pada sebuah...

29
TUGAS AKHIR Implementasi Block Matching Algorithm (BMA) Pada Ekstraksi Objek Bergerak Block Matching Algorithm (BMA) Implementation of Motion Object Extraction Oleh : Amalia Sulfa Hashlinda NRP. 1208100046 JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT TEKNOLOGI SEPULUH NOPEMBER 2011

Upload: lytu

Post on 10-May-2019

232 views

Category:

Documents


0 download

TRANSCRIPT

TUGAS AKHIR

Implementasi Block Matching Algorithm (BMA) Pada Ekstraksi Objek Bergerak

Block Matching Algorithm (BMA) Implementation of Motion Object Extraction

Oleh :

Amalia Sulfa Hashlinda

NRP. 1208100046

JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT TEKNOLOGI SEPULUH NOPEMBER 2011

I. PENDAHULUAN 1.1 Latar Belakang

Ektraksi pada video adalah pengambilan objek yang bergerak.

Objek bergerak yang digunakan untuk analisis

lebih lanjut.

Dibutuhkan dalam beberapa aplikasi vision-based seperti kamera

pengintai (video survaillence), penginderaan jarak jauh (remote

sensing), diagnosis dan pengobatan medis.

Segmentasi Gerakan (Motion Segmentation) adalah pengelompokan piksel

berdasarkan kecepatan dan arah perpindahannya

Motion Vector adalah besar dan arah pergerakan suatu

piksel dari satu frame ke frame berikutnya

Motion Vector dihasilkan oleh Estimasi Gerakan

(Motion Estimation)

I. PENDAHULUAN 1.1 Latar Belakang

Ektraksi pada video adalah pengambilan objek yang bergerak.

Objek bergerak yang digunakan untuk analisis

lebih lanjut.

Dibutuhkan dalam beberapa aplikasi vision-based seperti kamera

pengintai (video survaillence), penginderaan jarak jauh (remote

sensing), diagnosis dan pengobatan medis.

Segmentasi Gerakan (Motion Segmentation)

Motion Vector

Estimasi Gerakan (Motion Estimation)

LANJUTAN...

Segmentasi Gerakan (Motion Segmentation) berbasis Block Matching Algorithm (BMA) untuk mengekstraksi

objek bergerak pada sebuah video.

I. PENDAHULUAN

1.2 Rumusan Masalah

Permasalahan yang akan dibahas pada Tugas Akhir ini

adalah:

1. Bagaimana mengimplementasikan Estimasi

Gerakan (Motion Estimation) untuk menghasilkan

Motion Vector dengan metode BMA pada sebuah

video?

2. Bagaimana melakukan Segmentasi Gerakan (Motion

Segmentation) berbasis BMA pada sebuah video

dengan tujuan mengekstraksi objek bergerak yang

ada dalam adegan?

I. PENDAHULUAN 1.3 Batasan Masalah

Batasan Masalah dalam Tugas Akhir ini adalah:

1. Video yang akan diteliti adalah video dijital dengan

satu objek bergerak

2. Background pada video diasumsikan diam.

3. Metode segmentasi gerakan yang digunakan adalah

K-Means Clustering .

4. Metode BMA yang digunakan adalah algoritma

EBMA untuk estimasi gerakannya.

I. PENDAHULUAN 1.4 Tujuan

Tujuan dari Tugas Akhir ini adalah membangun sistem untuk

mengekstraksi objek bergerak pada sebuah video dengan

metode segmentasi gerakan berbasis Block Matching

Algorithm (BMA) .

1.5 Manfaat

Manfaat yang dapat diambil dari Tugas Akhir ini adalah

mendapatkan objek bergerak dalam sebuah adegan video.

Hasil dari proses ini dapat dimanfaatkan untuk menganalisis

lebih lanjut suatu objek bergerak pada sebuah video. Sebagai

contoh, pelacakan dan deteksi objek bergerak pada sistem

Video Survaillence.

II. TINJAUAN PUSTAKA 2.1 Citra Digital

Citra digital adalah citra yang

nilainya di-digitalisasi-kan (dibuat

diskrit) baik dalam koordinat

spasialnya maupun dalam

intensitasnya. Citra digital dapat

digambarkan dalam suatu matriks

dengan baris dan kolom yang

merepresentasikan suatu titik pada

citra, dan nilai dari elemen matriks

tersebut menunjukkan intensitas di

titik tersebut. Setiap citra digital

memiliki beberapa karakteristik,

antara lain ukuran citra,resolusi,

koordinat, noise dan kedalaman bit.

II. TINJAUAN PUSTAKA 2.2 Video

Video digital tersusun atas serangkaian frame yang

ditampilkan pada layar dengan kecepatan tertentu.

Masing-masing frame merupakan citra digital yang

direpresentasikan dengan sebuah matriks yang

masing-masing elemennya merepresentasikan nilai

intensitas. Karakteristik suatu video digital

ditentukan oleh resolusi, kedalaman bit, dan frame

rate. Karakteristik ini menentukan kualitas video.

II. TINJAUAN PUSTAKA 2.3 Ekstraksi Objek Bergerak

Ekstraksi objek bergerak pada

video

Segmentasi Gerakan (Motion Segmentation) adalah pengelompokan

piksel berdasarkan kecepatan dan arah

perpindahannya

Motion Vector adalah besar dan arah pergerakan piksel

dari satu frame ke frame berikutnya

Estimasi Gerakan (Motion Estimation) adalah suatu

proses memperkirakan perubahan gerak piksel antara

dua frame yang berurutan

Metode Estimasi Gerakan: 1. Optical Flow 2. General Methodologies 3. Pixel-Based Motion

Estimation 4. Block Matching Algorithm

(BMA)

Metode Segmentasi Gerakan: 1. Segmentation Using Two Frame 2. Temporal Integration 3. Clustering in the Motion Parameter Space 4. Maximum Likelihood Segmentation 5. Maximum A Posteriori Probability

Segmentation 6. Region- Based ML Segmentation: Fusion of

Color and Motion

II. TINJAUAN PUSTAKA 2.4 Estimasi Gerakan Suatu proses memperkirakan perpindahan piksel dari

frame ke (t-1) ke frame ke-t. Perpindahan tersebut direpresentasikan dengan motion vector.

2.5 Estimasi Gerakan dengan Block Matching Algorithm (BMA)

Sumber: Video Processing and Communication Hal 164 [6]

Fungsi Pencocokan: Mean Absolute Difference (MAD) = Mean Squared Error (MSE) =

II. TINJAUAN PUSTAKA 2.6 Exchautive Search BMA (EBMA) EBMA disebut juga algoritma pencarian penuh. Algoritma ini membutuhkan perhitungan yang sangat tinggi. Namun, memperoleh posisi blok yang optimal pada search region. Berikut skema pada EBMA

Error / Absolute Difference=

Sumber: Implementation Of A Java Applet For Demonstration Of Block-Matching Motion Estimation Algorithms Hal 7

II. TINJAUAN PUSTAKA

2.7 Segmentasi Gerakan Mengelompokkan piksel-piksel berdasarkan intensitas yang sama dan informasi gerakannya yang sesuai dengan objek tunggal. 2.8 Segmentasi Gerakan dengan Kmeans Clustering Mengelompokkan piksel-piksel berdasarkan jarak terdekat atau ketetanggaannya.

Motion vector yang dihasilkan EBMA dikelompokkan menjadi beberapa cluster. Merepresentasikan piksel-piksel yang mirip dan

merupakan kesatuan gerakan yang sama.

II. TINJAUAN PUSTAKA 2.8 Segmentasi Gerakan dengan Kmeans Clustering (Lanjutan…)

Langkah-langkah Kmeans clustering pada motion vector field:

1. Tentukan K cluster 2. Tentukan pusat-pusat cluster secara

acak. 3. Masukkan tiap motion vector ke dalam cluster yang jarak pusatnya paling dekat.

4. Ubah nilai pusat cluster sebagai rata-rata (mean) dari seluruh motion vector dalam cluster.

5.Ulangi langkah 2,3,4 hingga memperoleh hasil yang konvergen.

II. TINJAUAN PUSTAKA 2.9 Pelabelan dengan Minimisasi Energi Oleh Graph cut. Memperoleh pelabelan dengan memetakan setiap piksel x hasil estimasi gerakan dengan label gerakan

𝑚𝑥 ∈ 1, …𝑀 . Fungsi pelabelan: ⋀ 𝑡 ≔ 𝑥;𝑚𝑥 𝑡 𝑥∈𝑋 . Akan dicari nilai ⋀ yang meminimalkan fungsi objektif berikut

𝐽 ∧ = 𝐽𝑚𝑚𝑚 ∧ + 𝐶2𝐽𝑠𝑠𝑠𝑚 ∧

• 𝐶2 adalah bobot konstan

• 𝐽𝑚𝑚𝑚 ∧ = ∑ 𝑉𝑚𝑚𝑚 𝑥;𝑚𝑥 ,𝑑𝑑𝑑𝑑𝑑𝑑 𝑥 𝑉𝑚𝑚𝑚 𝑥;𝑚𝑥 = 𝑓 𝑥; 𝑡 − 𝑓(𝑥 + 𝑢�𝑚𝑥 𝑡 ; 𝑡 − 1) 2

• 𝐽𝑠𝑠𝑠𝑚 ∧ = ∑ ∑ 𝑉𝑠 𝑥, 𝑥𝑛;𝑚𝑥,𝑚𝑥𝑛𝑥𝑛∈𝑁 𝑥 ,𝑥 Dengan

𝑉𝑠(𝑥, 𝑥𝑛;𝑚𝑥,𝑚𝑥𝑛) = �4 − 𝐶𝐶 𝑓 𝑥 , 𝑚𝑥 ≠ 𝑚𝑥𝑛

0, 𝑙𝑑𝑙𝑑𝑑𝑙𝑑

𝐶𝐶 𝑓 𝑥 = CA r x + CA g x + CA b x deteksi tepi Canny

II. TINJAUAN PUSTAKA 2.9 Pelabelan dengan Minimisasi Energi Oleh Graph cut. (Lanjutan…)

Minimisasi Energi oleh Graph cut (algoritma 𝜶 −𝒆𝒆𝒆𝒆𝒆𝒆𝒆𝒆𝒆/perluasan 𝛼)

1. Inisialisasi: mulai dengan pelabelan awal secara acak (clustering).

2. Cycle: untuk setiap label 𝛼 ∈ {1, … . . ,𝑀} :

Iterasi: Dapatkan ∧𝑛𝑛𝑛 dalam sebuah pergerakan

perluasan 𝛼. 3. Jika J ∧𝑛𝑛𝑛<∧𝑠𝑝𝑛𝑝 , tetapkan ∧𝑠𝑝𝑛𝑝 sama dengan

∧𝑛𝑛𝑛 dan mulai dengan cycle baru. Sedangkan proses berhenti untuk hasil yang lainnya.

II. TINJAUAN PUSTAKA 2.9 Pelabelan dengan Minimisasi Energi Oleh Graph cut. (Lanjutan…)

algoritma 𝜶 − 𝒆𝒆𝒆𝒆𝒆𝒆𝒆𝒆𝒆/perluasan 𝛼

Ilustrasi Graph cut Bobot tepi pada Graph cut

III. Perancangan dan Implementasi Simulasi 3.1 Diagram Alur Sistem

III. Perancangan dan Implementasi Simulasi 3.2 Perancangan Program Dalam membangun simulasi untuk mengekstraksi objek bergerak, program ini terdiri dari 5 program, yaitu 1. Program Pilih Video Berfungsi menginputkan dan memutar video yang akan diekstrak si objek bergeraknya.

2. Program Segmentasi Gerakan Program ini disajikan dalam dua sistem yang berbeda yaitu

segmentasi gerakan yang dilakukan per frame dan segmentasi gerakan seluruh frame. Dalam program ini, sistem menjalankan tiga algoritma yaitu Estimasi gerakan dengan BMA, segmentasi gerakan dengan Kmeans Clustering, dan Pelabelan dengan Minimisasi Energi Graph cut.

III. Perancangan dan Implementasi Simulasi 3.2 Perancangan Program 2. Program Segmentasi Gerakan (Lanjutan…)

Flowchart Estimasi Gerakan BMA

Flowchart Segmentasi Gerakan

Flowchart Segmentasi Gerakan Semua Frame

III. Perancangan dan Implementasi Simulasi 3.2 Perancangan Program 3. Program Hasil Segmentasi Per Frame

Berfungsi menampilkan hasil ekstraksi objek bergerak per pasangan frame berurutan.

Citra objek dan citra background terpisah 4. Program Hasil Segmentasi Semua Frame

(Objek/Foreground) Berfungsi menampilkan hasil ekstraksi objek bergerak seluruh

frame dari video yang diinputkan. Video objek bergerak

5. Program Hasil Segmentasi Semua Frame (Background) Berfungsi menampilkan hasil ekstraksi objek bergerak seluruh

frame dari video yang diinputkan. Video background berurutan

III. Perancangan dan Implementasi Simulasi 3.2 Perancangan Program Program Hasil Segmentasi (Lanjutan…)

Flowchart Hasil Ekstraksi Objek Bergerak Per Frame

Flowchart Hasil Ekstraksi Objek Bergerak Semua Frame

IV. Uji Coba Simulasi Uji Coba dilakukan terhadap setiap pasangan frame

berurutan. 4.1 Data Uji Coba (video fahmalari.avi)

IV. Uji Coba Simulasi 4.2 Pengujian Estimasi Gerakan , Segmentasi Gerakan, dan Pelabelan

IV. Uji Coba Simulasi 4.2 Pengujian Estimasi Gerakan , Segmentasi Gerakan, dan Pelabelan (Lanjutan…)

IV. Uji Coba Simulasi 4.3 Hasil Ekstraksi Objek Bergerak

IV. Uji Coba Simulasi 4.4 Evaluasi

Pada percobaan di atas secara kasat mata citra hasil ekstraksi objek bergerak pada pasangan frame yang sama dapat berbeda-beda. Ini berhubungan dengan estimasi gerakan menggunakan BMA yaitu pada salah satu variabelnya, ukuran blok. Semakin kecil ukuran blok pada estimasi gerakan BMA, maka hasil ekstraksi objeknya semakin baik.

Hasil Ekstraksi Objek Bergerak dari Pelabelan 7,8,9

V. Penutup 5.1 Kesimpulan Dari Uji Coba Simulasi dipeoleh kesimpulan sebagai berikut 1. Algoritma Block Matching Algorithm untuk estimasi gerakan dapat

diterapkan dengan ukuran blok yang berbeda. Hasil yang diperoleh pun berbeda-beda. Dari pengujian yang dilakukan dapat ditarik kesimpulan bahwa semakin kecil ukuran blok yang digunakan (4 x 4) akan semakin akurat hasil estimasi gerakan yang diperoleh.

2. Dapat ditarik kesimpulan juga bahwa keakuratan hasil estimasi gerakan akan berpengaruh terhadap hasil pelabelan dengan Graph cut. Semakin kecil ukuran blok yang digunakan pada BMA untuk estimasi gerakan, maka hasil estimasi gerakan semakin akurat, dan pada segmentasi gerakannya akan menghasilkan pelabelan yang lebih baik.

3. Pelabelan dengan Graph cut yang baik, akan diperoleh hasil ekstraksi yang baik pula. Jadi, hasil estimasi gerakan berpengaruh terhadap tingkat keberhasilan pada ekstraksi objek bergerak.

V. Penutup 5.2 Saran Saran yang dapat diberikan dalam pengembangan penelitian ini antara lain adalah: 1. Estimasi gerakan adalah algoritma untuk menghitung perpindahan

piksel antara pasangan frame berurutan. Untuk penelitian selanjutnya, penulis menyarankan penggunaan metode estimasi gerakan yang lebih baik yaitu estimasi gerakan yang dilakukan pada setiap piksel frame. Sebagai contoh, algoritma optical flow. Diharapkan dengan algoritma ini akan dihasilkan estimasi gerakan yang jauh lebih akurat dan tentu saja akan menghasilkan ekstraksi objek yang lebih optimal.

2. Untuk menghasilkan esktraksi objek yang lebih optimal juga hendaknya dilakukan segmentasi yang lain selain segmentasi gerakan. Misalnya, segmentasi warna. Dengan demikian, noise dan kehilangan strukstur objek (hasil ekstraksi pada subbab Uji Coba) dapat diminimalkan.

IV. DAFTAR PUSTAKA [1] Barjatya, Aroh.2004.“Block Matching Algorithms For Motion Estimation”.DIP 6620

Spring 2004 Final Project Paper. [2] Bhusan, K. Sasi, Vineela, T., Reddy, N. Venkateswara, Krishna, K.Vamsi, dan Rao,

Joseph Abilash. May 2009. “Motion Based Foreground Segmentation using Block Matching Algorithm (BMA)”.International Journal Of Recent Trends in Engineering. Vol. 1, No. 2.

[3] Bovik, Al. 2009. The Essential Guide to Video Processing. India : diacriTech [4] Boykov, Yuri, Veksler, Olga, Zabih, Ramin. November 2011. “Fast Approximate

Energy Minimization via Graph Cuts”. IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, Vol. 23, No. 11.

[5] Chung, Ronald H.Y., Chin, Francis Y.L., Wong, Kwan-Yee K., Chow, K.P., Luo, T., dan Fung, Henry, S.K. Apr 2005. “Efficient Block-based Motion Segmentation Method using Motion Vector Consistency”. Conference on Machine Vision Application.

[6] Han, Bing, Robert,William, Wu, Dapeng, dan Li, Jian.2007. “Motion-Segmentation-Based Change Detection”. Algorithms for Synthetic Aperture Radar Imagery XIV.

[7] S. Alexiadis, Dimitrios, D. Sergiadis, George. 2008. “Motion estimation, segmentation and separation, using hypercomplex phase correlation, clustering techniques and graph-based optimization”. Computer Vision and Image Understanding 113 (2009) 212-234.

[8] Wang, Yao, Ostermann, Jorn, Zhang, Ya-Qin, Ostermann, Joern, dan Zhang Ya-quin. 2001. Video Processing and Communication. Prentice Hall.