Segmentasi Citra Wajah Menggunakan Metode Level SetHadi Santoso
Pengolahan citra digital saat ini semakin mudah dilakukan dengan adanya segmentasi. Level set adalah metode untuk mendeteksi pergerakan kurva yang dapat digunakan untuk melakukan segmentasi citra. Pendekatan yang dilakukan dalam proses segmentasi ada 2 metode, yaitu metode berdasarkan tepi dan metode berdasarkan wilayah. Agar hasil dari kedua metode tersebut dapat maksimal, digunakan model active contour. Active contour merupakan proses pengubahan fungsi level set kedalam bentuk biner, kemudian untuk meregularisasinya digunakan filter gaussian. Pada makalah ini digunakan algoritma segmentasi selektif lokal atau global untuk proses binarization dan dijelaskan mengenai segmentasi menggunakan metode level set berbasis citra wajah manusia. Uji coba dilakukan pada citra wajah berwarna kemudian diubah kedalam citra wajah grayscale. Citra wajah yang digunakan pada proses segmentasi ini sebanyak 20 dari database citra wajah Caltech, dengan ukuran 200 x 150 piksel, aplikasi yang digunakan untuk mengolah data citra wajah yaitu MATLAB 2009a. Dari pengujian yang telah dilakukan, didapatkan hasil 18 citra wajah dapat dideteksi dengan baik dari 20 citra wajah atau unjuk kerja sistem sebesar 90%
Segmentasi Citra Wajah Menggunakan Metode Level SetHadi Santoso
Pengolahan citra digital saat ini semakin mudah dilakukan dengan adanya segmentasi. Level set adalah metode untuk mendeteksi pergerakan kurva yang dapat digunakan untuk melakukan segmentasi citra. Pendekatan yang dilakukan dalam proses segmentasi ada 2 metode, yaitu metode berdasarkan tepi dan metode berdasarkan wilayah. Agar hasil dari kedua metode tersebut dapat maksimal, digunakan model active contour. Active contour merupakan proses pengubahan fungsi level set kedalam bentuk biner, kemudian untuk meregularisasinya digunakan filter gaussian. Pada makalah ini digunakan algoritma segmentasi selektif lokal atau global untuk proses binarization dan dijelaskan mengenai segmentasi menggunakan metode level set berbasis citra wajah manusia. Uji coba dilakukan pada citra wajah berwarna kemudian diubah kedalam citra wajah grayscale. Citra wajah yang digunakan pada proses segmentasi ini sebanyak 20 dari database citra wajah Caltech, dengan ukuran 200 x 150 piksel, aplikasi yang digunakan untuk mengolah data citra wajah yaitu MATLAB 2009a. Dari pengujian yang telah dilakukan, didapatkan hasil 18 citra wajah dapat dideteksi dengan baik dari 20 citra wajah atau unjuk kerja sistem sebesar 90%
Pemanfaatan Stack Untuk Deteksi GerakanTeady Matius
The recoqnition of optically hand movements have to identify whether a movement is in the mobile phase or has reached the status that has been fixed. In this process we need a tool that is capable of storing images captured by the camera to obtain the motion requirements are considered fixed.
Stack is a linear data structure which can be accessed only at the end to enter or generate the data. With the properties of the stack and the regular operation and the entry and exit gates, can be used to assist in the selection process of a sequence of objects.
By using a stack, will be organized method to determining the status of an object captured by the camera in a series of images are considered fixed or
still moving. As part of the computer vision, hand gestures can be processed using the L1-distance measurement metric to get the frame in accordance with the desired phase. In this process, each frame captured by the camera must be distinguished between the phase is changing with the changing phase already, and
taken only the frames that are already changing phase. While the frames for a changing phase is discarded. Stack and the operations that have been compiled will be used to accommodate pixels population matrix features and calculated the distance to the next frames are considered to obtain the same frame with the next frame, as well as ignoring the different frame with the next frame.
Pemanfaatan Stack Untuk Deteksi GerakanTeady Matius
The recoqnition of optically hand movements have to identify whether a movement is in the mobile phase or has reached the status that has been fixed. In this process we need a tool that is capable of storing images captured by the camera to obtain the motion requirements are considered fixed.
Stack is a linear data structure which can be accessed only at the end to enter or generate the data. With the properties of the stack and the regular operation and the entry and exit gates, can be used to assist in the selection process of a sequence of objects.
By using a stack, will be organized method to determining the status of an object captured by the camera in a series of images are considered fixed or
still moving. As part of the computer vision, hand gestures can be processed using the L1-distance measurement metric to get the frame in accordance with the desired phase. In this process, each frame captured by the camera must be distinguished between the phase is changing with the changing phase already, and
taken only the frames that are already changing phase. While the frames for a changing phase is discarded. Stack and the operations that have been compiled will be used to accommodate pixels population matrix features and calculated the distance to the next frames are considered to obtain the same frame with the next frame, as well as ignoring the different frame with the next frame.
2. Machine Vision
LEARNING OUTCOMES
1. Peserta diharapkan memahami proses deteksi fitur, terutama fitur boundary dan region
serta proses segmentasi citra.
OUTLINE MATERI (Sub-Topic):
1. Thresholding
2. Identifying Boundary
3. Identifying Region
3. Machine Vision
ISI MATERI
Thresholding
Image segmentation atau segmentasi citra adalah sebuah proses membagi citra menjadi
sub-citra yang memiliki karakteristik serupa. Tujuan dari segmentasi adalah untuk
mendekomposisi citra menjadi bagian-bagian yang memiliki makna untuk aplikasi tertentu.
Contoh, pada inspeksi PCB (printed circuit board) secara otomatis, perlu dilakukan
segmentasi yang dapat membedakan bagian dari PCB yang merupakan hasil proses solder
dengan bagian lainnya. Proses inspeksi secara otomatis dapat dilakukan dengan cara
membandingkan citra hasil segmentasi yang menunjukkan hasil proses solder pada PCB
dengan template yang ada. Gambar berikut memperlihatkan proses segmentasi tersebut:
Citra PCB input
Citra hasil segmentasi
Segmentasi merupakan salah satu proses yang paling sulit dilakukan pada pengolahan
citra. Proses segmentasi juga merupakan salah satu proses yang memegang peranan penting
karena menentukan keberhasilan dari prosedur analisis citra secara otomatis. Dibutuhkan
pertimbangan dalam pemilihan metode agar proses segmentasi dapat menghasilkan output
4. Machine Vision
yang optimal. Secara umum segmetasi citra bekerja berdasarkan nilai intensitas
warna/graylevel piksel dengan cara mendeteksi 1) diskontinuitas: mempartisi citra
berdasarkan perubahan intenitas yang signifikan, biasanya ditemui pada bagian sisi/edge dari
sebuah obyek pada citra, atau 2) kesamaan: mempartisi citra menjadi bagian-bagian yang
memiliki kesamaan berdasarkan kriteria yang sudah didefinisikan sebelumnya.
Thresholding adalah pendekatan yang paling mendasar dalam proses segmentasi. Teknik
single value thresholding dapat dirumuskan secara matematis sebagai berikut:
dimana T menyatakan nilai threshold/ambang. Contoh berikut memperlihatkan penerapan
single value thresholding pada robot pemain poker. Untuk dapat bermain poker, robot harus
dapat menginterpretasikan setiap kartu. Proses segmentasi dapat diterapkan untuk
memisahkan latar depan (lambang dan nilai setiap kartu) dari latar belakangnya. Langkah
berikutnya tentu saja mengenali lambang dan nilai dari kartu tersebut. Gambar berikut
memperlihatkan citra input dan hasil proses thresholding.
Pemilihan nilai threshold merupakan hal yang sangat penting karena nilai threshold yang
tidak tepat akan menghasilkan proses segmentasi yang tidak sesuai dengan harapan. Gambar
berikut memperlihatkan hasil proses threholding menggunakan dua nilai threshold berbeda.
Gambar pertama memperlihatkan akibat dari pemilihan nilai threshold yang terlalu tinggi,
sebaliknya gambar kedua memperlihatkan akibat dari pemilihan nilai threshold yang terlalu
rendah.
T
y
x
f
if
T
y
x
f
if
y
x
g
)
,
(
0
)
,
(
1
)
,
(
5. Machine Vision
Berikut algoritma untuk melakukan thresholding menggunakan nilai threshold tunggal
untuk keseluruhan citra (single global threshold).
1. Inisialisasi nilai threshold T, biasanya dipilih nilai rata-rata graylevel dari citra.
2. Segmentasi citra menggunakan nilai threshold T pada langkah 1 menjadi dua
kelompok piksel: G1 mewakili piksel-piksel dengan nilai graylevel > T dan G2
mewakili piksel-piksel dengan nilai greylevel ≤ T.
3. Hitung nilai rata-rata graylevel semua piksel pada kelompok G1 dan G2, sehingga
diperoleh m1
dan m2
.
4. Hitung nilai threshold baru:
5. Ulangi langkah 2 sampai 4 hingga selisih nilai threshold baru dengan nilai threshold
pada iterasi sebelumnya dibawah nilai ambang T¥
yang didefinisikan sebelumnya.
Algoritma ini bekerja baik untuk mendapatkan nilai threshold yang optimal pada citra yang
memiliki histogram dengan karakteristik bimodal atau memiliki dua puncak seperti
diperlihatkan pada gambar berikut.
Citra input Histogram citra input Hasil segmentasi
2
2
1
T
6. Machine Vision
Citra input Hasil segmentasi
Histogram citra input
Seperti ditunjukkan pada contoh sebelumnya, teknik single value thresholding dapat
bekerja baik untuk citra dengan histogram bimodal. Namun terdapat banyak kasus dimana
proses segmentasi membutuhkan lebih dari sebuah nilai threshold. Gambar berikut
memperlihatkan kasus dimana penggunaan single value thresholding tidak dapat
menghasilkan hasil segmentasi sesuai dengan yang diharapkan. Misalkan akan dilakukan
inspeksi secara otomatis untuk melihat apakah isi dari setiap minuman pada botol sudah
sesuai dengan standar yang ditentukan. Proses segmentasi harus dapat memisahkan isi botol
dari botol dan latar belakangnya. Gambar di sebelah kiri merepresentasikan citra input,
sedangkan gambar di tengah menunjukkan hasil segmentasi menggunakan teknik single value
thresholding, dan gambar terakhir memperlihatkan hasil segmentasi menggunakan dua nilai
threshold berbeda. Penggunaan nilai threshold tunggal tidak berhasil memisahkan isi botol,
botol dan latar belakangnya. Sedangkan penggunaan dua nilai threshold dapat memisahkan
ketiga obyek tersebut dengan baik.
7. Machine Vision
ISI MATERI
Identifying Boundary
Sebuah obyek direpresentasikan sebagai sekumpulan piksel pada citra. Untuk mendukung
proses pengenalan obyek maka sifat dari kumpulan piksel perlu dideskripsikan, salah satunya
menggunakan object descriptor. Object descriptor dapat dikelompokkan menjadi:
1. Boundary descriptor: merepresentasikan susunan piksel pada perimeter atau sisi dari
obyek pada citra.
2. Region descriptor: merepresentasikan susunan piksel pada area di dalam obyek pada
citra.
Berikut sifat-sifat penting yang perlu dimiliki oleh object descriptor:
a. Complete set: dua obyek harus memiliki descriptor yang sama, jika dan hanya jika
kedua obyek tersebut memiliki bentuk yang sama.
b. Congruent: dapat mengenali dua obyek yang serupa apabila kedua obyek tersebut
memiliki descriptor yang mirip.
c. Convenient: tidak dipengaruhi oleh proses transformasi (translasi, rotasi, skala,
maupun perubahan perspektif).
d. Compact set: merepresentasikan esensi dari obyek secara efisien.
Boundary adalah bagian dari obyek yang menyatakan sisi atau perimeter dari obyek, atau
dapat dikatakan juga sebagai kontur obyek. Boundary dapat ditemukan dengan cara memilih
salah satu piksel pada kontur kemudian menelusuri piksel-piksel berikutnya sepanjang kontur
searah atau berlawanan dengan arah jarum jam. Penelusuran dilakukan hingga ditemukan
kembali titik awal. Hasil penelusuran kontur dapat direpresentasikan sebagai daftar koordinat
dari piksel-piksel pada kontur, atau dapat juga disimpan sebagai posisi relatif dari piksel-
piksel tersebut. Hal tersebut yang dijadikan ide dasar dari chain code yang merepresentasikan
piksel-piksel pada kontur sebagai himpunan koneksi. Koneksi antar piksel dapat dinyatakan
sebagai 4-way connectivity atau 8-way connectivity, seperti diilustrasikan pada gambar
berikut:
8. Machine Vision
Dua gambar berikut memperlihatkan penerapan chain code untuk merepresentasikan kontur
dari obyek yang sama. Proses penelusuran dimulai dari piksel dengan label ‘Start’ searah
dengan jarum jam.
Hal yang perlu diperhatikan adalah pemilihan titik awal dalam proses penelusuran.
Pemilihan titik awal yang berbeda dari dua obyek yang sama akan menghasilkan kode yang
berbeda. Untuk mengatasi permasalahan ini, dapat digunakan pergeseran digit dengan cara
mengganti least significant digit dengan most significant digit dan menggeser digit lainnya.
Ilustrasi berikut memperlihatkan proses pergeseran digit untuk memperoleh chain code yang
bersifat start point invariant dari kode 8-way connectivity di gambar sebelumnya. Untuk
mendapatkan start point invariant dari kode awal dibutuhkan 6 kali pergeseran digit. Hasil
akhir dari pergeseran digit akan menunjukkan deretan angka yang terurut naik.
9. Machine Vision
Salah satu teknik yang dapat juga digunakan untuk merepresentasikan boundary adalah
Fourier descriptor. Fourier descriptor diperoleh dengan cara melakukan transformasi Fourier
terhadap boundary dari obyek, dimana setiap titik (x,y) pada boundary dipetakan menjadi
sebuah bilangan kompleks x + iy. Fourier descriptor Z(k) dapat dinyatakan oleh persamaan
berikut.
Bentuk asli obyek dapat direkonstruksi dengan melakukan transformasi Fourier invers,
namun apabila hanya digunakan sedikit koefisien hasil transformasi, maka bentuk boundary
hasil rekonstruksi menjadi lebih sederhana. Pendekatan Fourier descriptor dapat
dimanfaatkan untuk meminimalkan variasi kecil pada obyek yang berbeda. Fourier descriptor
bersifat invariant terhadap translasi, rotasi, skala, dan titik awal, artinya Fourier descriptor
akan bernilai sama meskipun obyek telah mengalami perpindahan lokasi, perputaran, maupun
perbesaran/pengecilan. Gambar berikut mengilustrasikan hasil rekonstruksi penggunaan 9,
19, dan 29 koefisien Fourier descriptor dari sebuah obyek berbentuk payung.
Z[k]= DFT[z[m]]=
1
N
z[m]e- j2pmk/N
m=0
N-1
å
Original shape Reconstructed
Using 9 FD
Reconstructed
Using 19 FD
Reconstructed
Using 29 FD
10. Machine Vision
ISI MATERI
Identifying Region
Region descriptor berfungsi untuk merepresentasikan susunan piksel pada area di dalam
obyek pada citra. Terdapat dua jenis region descriptor, yaitu basic region descriptor dan
statistical description yang bekerja berdasarkan prinsip momen. Pada basic region
descriptor, sebuah area dapat direpresentasikan berdasarkan karakteristik geometrinya, yaitu
area (A), perimeter (P), compactness (C) dan dispersion (IR). Berikut rumus dari basic region
descriptor dari obyek S.
Area menyatakan luas dari obyek, dimana DAmenyatakan ukuran luas dari sebuah piksel.
Sehingga jika DA=1 maka luas obyek dinyatakan dalam piksel. Area bersifat invariant
terhadap rotasi, namun tidak terhadap skala. Perimeter direpresentasikan oleh koordinat
parametrik x(t) dan y(t) yang membentuk kurva yang melingkupi obyek S. Compactness
mengukur tingkat efisiensi boundary menutupi area. Sebuah lingkaran sempurna akan
memiliki nilai C = 1, artinya lingkaran merupakan bentuk yang paling kompak. Dispersion
dapat digunakan untuk mengukur tingkat irregularity, yaitu rasio dari radius maksium
terhadap radius minimumnya. Dispersion mendefinisikan rasio antara radius maksimum dari
lingkaran yang dapat melingkupi obyek S terhadap radius lingkaran yang dapat dimuat pada
S. Lingkaran sempurna akan memiliki nilai IR = 1. Semakin tidak beraturan sebuah obyek
(irregular) maka nilai irregularity akan semakin besar.
A(S) = I(x, y)DA
y
x
P(S) = (xi - xi-1)2
+(yi - yi-1)2
i
å
C(S) =
A(s)
P2
(s) / 4p
IR(S) =
max (xi - x)2
+(yi - y)2
( )
min (xi - x)2
+(yi - y)2
( )
11. Machine Vision
Berikut contoh perhitungan basic region descriptor dari tiga obyek berbeda.
A(S) = 4917
P(S) = 259.27
C(S) = 0.91
PS(S) = 1.03
A(S) = 4917
P(S) = 259.27
C(S) = 0.91
PS(S) = 1.03
A(S) = 4917
P(S) = 259.27
C(S) = 0.91
PS(S) = 1.03
Moment berguna untuk menyatakan susunan/layout dari obyek yang digambarkan oleh
susunan piksel-piksel yang membentuk obyek. Moment dapat dikatakan merupakan
kombinasi antara fitur area, compactness, irregularity, dan statistika orde tinggi. Moment
kartesian dua dimensi I(x,y) didefinisikan oleh:
dimana DA menyatakan area dari sebuah piksel. Moment orde 0 dapat dituliskan sebagai:
sedangkan moment order 1 dapat dinyatakan oleh:
Salah satu variasi dari moment adalah centralized moment yang bersifat invariant terhadap
translasi. Centralized moment dapat dinyatakan oleh:
mpq = xp
yq
y
x
I(x, y)DA
m00 = I(x, y)DA
y
x
m10 = xI(x, y)DA
y
x
m01 = yI(x, y)DA
y
x
mpq = (x - x)p
(y - y)q
y
x
I(x, y)DA
12. Machine Vision
contoh:
Berikut contoh perhitungan centralized moment:
Berdasarkan contoh tersebut, dapat dilihat bahwa centralized moment tidak dipengaruhi
oleh operasi translasi atau pergeseran namun hal tersebut tidak berlaku terhadap operasi
rotasi. Dapat dikatakan bahwa centralized moment bersifat translation invariant tetapi tidak
bersifat rotation invariant. Untuk mengatasi kekurangan ini, Hu pada tahun 1962
mengusulkan invariant moment yang bersifat invariant terhadap translasi, rotasi, dan skala.
Untuk mendapatkan karateristik tersebut, perlu didefinisikan normalized central moment:
Tujuh invariant moment berikut dapat diturunkan dari persamaan diatas:
m01 = m01 -
m01
m00
m00
m10 = m01
m20 = m20 -
m10
2
m00
hpq =
mpq
m00
g
where g=
p + q
2
"p+ q ³ 2
13. Machine Vision
Berikut contoh perhitungan tiga invariant moment pertama dari sebuah obyek berbentuk
pesawat tempur F-14:
Seperti dapat dilihat pada contoh tersebut, operasi rotasi dan skala tidak mempengaruhi nilai
invariant moment M1, M2, dan M3 secara signifikan.
14. Machine Vision
SIMPULAN
1. Operasi thresholding dapat bekerja secara optimal pada citra dengan histogram yang
memenuhi kondisi bimodal, trimodal, dst.
2. Sebuah obyek pada citra dapat direpresentasikan oleh susunan piksel pada
sisi/perimeternya (boundary) atau susunan piksel dalam obyek tersebut (region).
3. Beberapa sifat penting yang perlu dimiliki oleh sebuah object descriptor adalah
complete set, congruent, convenient, dan compact set.
4. Representasi sebuah obyek dapat dinyatakan berdasarkan sifat geometris maupun
karakteristik statistiknya.
15. Machine Vision
DAFTAR PUSTAKA
1. Gonzales. (2011). Digital Image Processing (3rd Edition). Prentice Hall. New Jersey.
ISBN-10: 013168728X. ISBN-13: 978-0131687288
2. Nixon, M. (2008). Feature extraction & image processing (2nd
Edition). Academic
Press. ISBN: 9780080556727
3. Y.K. Liu, B.Zalik, An efficient chain code with Huffman coding, Pattern Recognition
38 (4) (2005) 553-557.
4. Tutorial on Fourier Theory,
http://www.cs.otago.ac.nz/cosc453/student_tutorials/fourier_analysis.pdf
5. OpenCV: Discrete Fourier Transform,
http://docs.opencv.org/2.4/doc/tutorials/core/discrete_fourier_transform/discrete_fouri
er_transform.html?highlight=fourier
6. L.Keyes, A.Winstanley, Using moment invariants for classifying shapes on large-
scale maps, Computers, Environment and Urban Systems 25 (1) (2001) 119-130.