Kamis, 02 Juli 2009

Tugas 7 (Karya Tulis)

Content Based Image Retrieval (CBIR)

Ada dua cara yang dapat dilakukan dalam pengambilan kembali suatu image atau image retrieval

a. context-based adalah pengambilan data dengan merujuk pada kandungan semantik berkaitan dengan image, biasanya berhubungan dengan deskripsi image misalnya keyword dari image.

b. content-based adalah pengambilan data dengan merujuk pada fitur image seperti warna, tekstur, bentuk, atau kombinasi atau yang biasa desebut dengan Content Based Image Retrieval (CBIR).

Pada perkembangannya teknik context based menjadi tidak praktis dikarenakan adanya ukuran basis data yang besar dan penilaian subjektif dalam mengartikan image dengan text. Untuk menghindari teknik ini, maka digunakan pendekatan lain dalam image retrieval yaitu content based.CBIR adalah salah satu metodologi untuk pemanggilan kembali data image berdasarkan content sebuah image. Teknik CBIR yang banyak digunakan adalah teknik warna, teknik tekstur, dan teknik bentuk. Pada sistem CBIR, content visual dari image akan diekstraksi dan diuraikan menggunakan metode pengekstrakan ciri. Untuk mendapatkan kembali image, user menginputkan query image. Kemudian sistem akan mengekstrak image tersebut sehingga menghasilkan fitur ciri image. Fitur ciri image query dan image dalam database akan dicari similaritynya. Image yang memiliki nilai similarity yang paling tinggi akan muncul diurutan teratas. Gambar dibawah ini memperlihatkan bentuk umum sistem CBIR. Pada image tersebut terdapat dua jalur utama yaitu query dan database. Pada kedua lajur tersebut terdapat visual content description yang akan digunakan untuk proses similarity comparison, indexing dan retrieval.






www.ittelkom.ac.id/library/index.php?option


Sistem Pengenalan Wajah Optimal


Sistem Pengenalan Wajah
Wajah manusia merupakan objek dinamik yang memiliki tingkat variabilitas yang
tinggi. Hal ini membuat sistem pengenalan wajah yang memanfaatkan komputer meru-
pakan sistem yang tidak sederhana. Permasalahan umum yang ingin dijawab oleh sis-
tem ini adalah : Diberikan citra statis atau citra video, tunjukkan bagian citra yang
yang mengandung wajah(-wajah), jika ada identifikasi atau verifikasi wajah tersebut.
Pada dasarnya ada lima langkah yang dilakukan dalam pengenalan wajah yaitu
menangkap citra wajah baik langsung maupun tidak langsung, melakukan segmen-
tasi atau deteksi wajah dengan cara melokalisir wajah dari latar belakangnya, meng-
ekstraksi ciri wajah dari region wajah yang sudah terdeteksi untuk mendapatkan tem-
plate wajah, membandingkan template dengan template pada basisdata wajah dan
menunjukkan hasilnya. Gambar 2.1 memperlihatkan langkah-langkah tersebut secara
generik.
Gambar 2.1: Diagram Blok Sistem Pengenalan Wajah Generik
Penangkapan citra wajah (image capturing) dapat dilakukan secara langsung (real
time) menggunakan kamera video atau secara tidak langsung dimana citra wajah di-
ambil dari citra yang sudah ada ataupun dipindahkan dengan bantuan scanner. Secara
umum tahapan ini bisa dilakukan tanpa kendala yang berarti. Tahap lokalisasi wajah
adalah tahap dimana komputer mencoba melokalisir wajah yang ada di dalam citra,
kemudian memisahkannya dari latar belakangnya. Tahapan ini merupakan tahapan
yang sukar dilakukan namun sangat penting, walaupun dalam literatur masih belum
banyak dibahas [6]. Pengetahuan tentang bagaimana bentuk wajah serta warna kulit
sangat mempengaruhi kesuksesan pendeteksian wajah. Setelah citra wajah diperoleh,
maka dilakukan tahap analisis karakteristik wajah dimana ciri-ciri khusus wajah diek-
straksi (features extraction) untuk memperoleh template wajah. Template ini berisi
kumpulan data wajah yang telah direduksi demikian rupa yang menunjukkan ciri-ciri
khusus wajah yang bersangkutan. Tahapan pengenalan wajah dapat dikelompokkan
dalam 2 bagian yaitu identifikasi (who is X?) dan verifikasi (is this X?). Pada tahapan
ini template akan dibandingkan dengan template yang ada pada basisdata wajah.
Dalam literatur disebutkan topik-topik penelitian lain yang berkaitan dengan pen-
deteksian wajah antara lain adalah penelitian ekspresi wajah dan juga penelusuran
wajah (face tracking).
2.2 Metode Pendeteksian Wajah
Pendeteksian wajah merupakan bagian yang utama dalam sistem pengenalan wajah.
Literatur memberikan penjelasan yang berbeda-beda mengenai metode-metode yang
digunakan pada tahapan ini. Chellapa dalam [30] membagi sistem pengenalan wa-
jah menjadi tiga bagian yaitu segmentasi/deteksi, ekstraksi ciri dan pengenalan wa-
jah. Masing-masing tahapan dijelaskan metode-metode yang tercakup di dalamnya.
Hjelmas [6] dalam surveinya tidak membagi pendeteksi wajah berdasarkan langkah-
langkah, namun ia mengelompokkannya menjadi dua bagian besar yaitu berdasarkan
pendekatan ciri (Feature-based approaches) dan berdasarkan pendekatan citra (Image-
based approaches) seperti yang ditunjukkan pada gambar 2.2.
Pendekatan lain dibuat oleh Yang [17] dimana pendeteksian wajah dibagi ke dalam
empat kategori sebagai berikut:
1. Metode berbasiskan pengetahuan (Knowledge-based methods). Metode
berbasiskan aturan ini (rule-based) mencoba mengkodekan pengetahuan manusia
yang menjelaskan apa itu wajah manusia. Biasanya aturan-aturan ini mengkaitkan
relasi antara ciri-ciri wajah.
2. Pendekatan ciri invarian (Feature Invariant approaches). Teknik ini
berusaha menemukan struktur ciri yang ada dalam berbagai posisi, titik pengam-3. Metode pencocokan template (Template matching methods). Beber-
apa pola-pola wajah disimpan untuk mendeskripsikan wajah secara keseluruhan
maoun sebagian. Korelasi antara citra masukan dan pola yang disimpan akan
dihitung untuk pendeteksian.
4. Metode Berbasiskan Penampilan (Appearance-based methods). Pada
pendekatan ini, sekaligus juga peningkatan metode sebelumnya, model wajah akan dipelajari oleh sistem melalui sekumpulan citra yang mewakili ciri-ciri wajah
yang berbeda.







PROGRAM PASCASARJANA
INSTITUT TEKNOLOGI BANDUNG
2004

Deteksi Huruf Dan angka

Secara umum dan sederhana, citra dapat didefinisikan sebagai representasi visual dari suatu objek. Lebih jauh citra juga dapat diartikan sebagai gambaran yang representatif mengenai suatu objek sedemikian sehingga citra tersebut dapat memberikan kesan yang mendalam mengenai objek yang dimaksud. Jika ingin mendefinisikannya lebih bebas lagi, citra
dapat didefinisikan sebagai bentuk visual yang dapatditerima secara baik oleh indera penglihatan, apapunbentuknya. Dalam bidang komputer, citra atau disebut juga image merupakan representasi visual dari suatuobjek setelah mengalami berbagai transformasi datadari berbagai bentuk rangkaian numerik. Komputer memiliki cara pandang tersendiriterhadap suatu citra. Berbeda dengan citra konvensionalyang misalnya dengan melalui proses fotografis seperti pada foto dapat dihasilkan suatu citra nyata
yang langsung dapat dinikmati oleh indera penglihatan,
citra pada komputer harus melalui beberapa tahapan
yang cukup rumit. Tahapan-tahapan tersebut dapat
digambarkan sebagai suatu rangkaian proses dari
proses akuisisi data, manipulasi data, visualisasi data,
serta proses penyimpanan data. Penjelasan lebih lanjut
dari proses-proses tersebut dapat dilihat pada [8].
Diantara proses tersebut diatas, proses penyimpanan
data adalah bagian paling pelik dari pengolahan citra
pada komputer. Saat ini sudah ter-dapat banyak metode
yang dapat digunakan untuk menyimpan suatu citra
digital ke dalam suatu file. File adalah media penyimpanan
standar pada sistem komputer. Metode-metode
penyimpanan tadi tentunya memiliki perbedaan yang
cukup berarti antara satu dengan yang lainnya. Hal
yang paling membedakan biasanya adalah tingkat
kompresi data yang ditawarkan oleh masing-masing
metode. Beberapa metode yang sudah cukup dikenal
adalah BMP, JPEG, PCX, WMF, TIFF, dll.
B. Jaringan Syaraf Propagasai Balik
Propagasi balik merupakan salah satu proses
belajar jaringan syaraf buatan dimana dalam proses
belajar tersebut pengubahan nilai berlangsung pada
arah mundur, yaitu mulai dari lapisan output dan
berakhir di lapisan input.
Algoritma belajar propagasi balik adalah sebagai
berikut [5] :
1. Perhitungan nilai keluaran neuron pada lapisan
tersembunyi dan output














dimana,
i = nomor neuron yang sedang dihitung
sinyal aktivasinya.
j = nomor neuron yang outputnya
dikontribusikan pada neuron i
sj = nilai output neuron j
wij = nilai bobot hubungan antara neuron ke i
dan ke j
qi = nilai bias neuron ke i
fungsi neti atau f(neti) disebut juga sebagai fungsi
aktivasi yang bentuknya dapat bermacam-macam.
2. Perhitungan kesalahan dalam proses belajar
disebut dengan fungsi energi.
dimana,
yi = output target neuron output i
si
x = output aktual neuron output I pada saat
jaringan terhubung dengan sample x
3. Perhitungan sensitivitas (δi) neuron-neuron dalam
lapisan tersembunyi dan lapisan output. Dimana
persamaan yang digunakan untuk perhitungan
sensitivitas baik untuk lapisan tersembunyi
maupun lapisan output, tergantung dari fungsi
aktivasi yang digunakan.
4. Perhitungan nilai perubahan bobot dan bias.
perubahan bobot :
perubahan bias :
5. Perhitungan nilai bobot dan bias baru.
bobot baru :
bias baru :
6. Langkah-langkah tersebut diulang sampai deviasi
keluaran kecil sehingga mencapai stopping kriteria
error yang diharapkan.
Fungsi aktivasi dapat diibaratkan sebagai
pendefinisian penguatan non linier dalam sistem analog
(continue). Penguatan (gain) ini dihitung dengan
mencari rasio perubahan pada fungsi output neuron
pada lapisan tersembunyi dan lapisan keluaran, dimana
penguatan merupakan kemiringan kurva pada suatu
tingkat eksistensi tertentu, dan nilainya berubah dari
harga yang kecil pada eksitasi negatif yang besar
(kurvanya hampir mendatar) menjadi harga yang besar
pada eksitasi nol, dan nilainya kembali mengecil
seiring dengan eksitasi yang semakin besar dan positif.
Fungsi aktivasi tidak hanya digunakan pada saat
perhitungan nilai keluaran neuron saja (neuron pada
lapisan tersembunyi dan lapisan output), tetapi turunan
pertamanya digunakan juga untuk menghitung
perubahan bobot dan bias pada proses belajar. Dalam
penulisan ini digunakan fungsi aktivasi Sigmoid
Parameter penting lainnya dari JSB adalah
bagaimana output dari JSB tersebut direpresentasikan,
secara terlokalisasi atau terdistribusi. Dalam penulisan
ini akan digunakan metode output yang direpresentasikan
secara terdistribusi. Hal ini dikarenakan banyaknya
jumlah variasi output yang harus direpresentasikan,
sehingga tidaklah efektif bila direpresentasikan
dengan jumlah digit sebanyak variasi output yang
berbeda. Perlu diketahui, seperti yang telah disebutkan
pada bagian batasan masalah, bahwa citra yang akan
dicoba untuk dikenali adalah citra huruf-huruf alpabet
(huruf kecil maupun huruf kapital) berikut angka-angka
arab satuan, yang berarti ada sejumlah 62 (13 huruf
kecil+13 huruf besar+10 angka arab satuan) objek yang
harus direpresentasikan sebagai target output. Tentunya
sangatlah tidak efektif bila 62 objek tersebut
( )
i ( i)
N
j
i ij j i
s f net
net w s q
=
+ =Σ
=1
( )
( )
= Σ Σ −
xy i
x
i
x
i E
dimana,
yi = output target neuron output i
si
x = output aktual neuron output I pada saat
jaringan terhubung dengan sample x
3. Perhitungan sensitivitas (δi) neuron-neuron dalam
lapisan tersembunyi dan lapisan output. Dimana
persamaan yang digunakan untuk perhitungan
sensitivitas baik untuk lapisan tersembunyi
maupun lapisan output, tergantung dari fungsi
aktivasi yang digunakan.
4. Perhitungan nilai perubahan bobot dan bias.
perubahan bobot :
perubahan bias :
5. Perhitungan nilai bobot dan bias baru.
bobot baru :
bias baru :
6. Langkah-langkah tersebut diulang sampai deviasi
keluaran kecil sehingga mencapai stopping kriteria
error yang diharapkan.
Fungsi aktivasi dapat diibaratkan sebagai
pendefinisian penguatan non linier dalam sistem analog
(continue). Penguatan (gain) ini dihitung dengan
mencari rasio perubahan pada fungsi output neuron
pada lapisan tersembunyi dan lapisan keluaran, dimana
penguatan merupakan kemiringan kurva pada suatu
tingkat eksistensi tertentu, dan nilainya berubah dari
harga yang kecil pada eksitasi negatif yang besar
(kurvanya hampir mendatar) menjadi harga yang besar
pada eksitasi nol, dan nilainya kembali mengecil
seiring dengan eksitasi yang semakin besar dan positif.
Fungsi aktivasi tidak hanya digunakan pada saat
perhitungan nilai keluaran neuron saja (neuron pada
lapisan tersembunyi dan lapisan output), tetapi turunan
pertamanya digunakan juga untuk menghitung
perubahan bobot dan bias pada proses belajar. Dalam
penulisan ini digunakan fungsi aktivasi Sigmoid
Parameter penting lainnya dari JSB adalah
bagaimana output dari JSB tersebut direpresentasikan,
secara terlokalisasi atau terdistribusi. Dalam penulisan
ini akan digunakan metode output yang direpresentasikan
secara terdistribusi. Hal ini dikarenakan banyaknya
jumlah variasi output yang harus direpresentasikan,
sehingga tidaklah efektif bila direpresentasikan
dengan jumlah digit sebanyak variasi output yang
berbeda. Perlu diketahui, seperti yang telah disebutkan
pada bagian batasan masalah, bahwa citra yang akan
dicoba untuk dikenali adalah citra huruf-huruf alpabet
(huruf kecil maupun huruf kapital) berikut angka-angka
arab satuan, yang berarti ada sejumlah 62 (13 huruf
kecil+13 huruf besar+10 angka arab satuan) objek yang
harus direpresentasikan sebagai target output. Tentunya
sangatlah tidak efektif bila 62 objek tersebut
direpresentasikan dengan sejumlah 62 digit biner
output.
Pada metode output terdistribusi, setiap huruf
alpabet dan angka arab akan dikonversi ke dalam
bentuk pengkodean 6 bit. Berarti hanya diperlukan 6
neuron yang akan digunakan sebagai output pada
lapisan output JSB. Tetapi dengan pengkodean 6 bit
berarti tersedia 26 = 64 variasi output yag berbeda,
sedangkan simbol atau objek yang akan
direpresentasikan hanya ada 62 objek, untuk itu penulis
menambahkan dua objek tambahan untuk melengkapi
ketersediaan pengkodean, kedua objek tersebut adalah
‘>’ dan ‘?’.
III. IMPLEMENTASI KONSEP
A. Analisi Masalah
Suatu citra huruf atau angka (selanjutnya akan
disebut sampel) yang akan diidentifikasi menggunakan
JSB, haruslah melalui tahapan-tahapan tertentu terlebih
dahulu sehingga dapat menjadi input yang baik bagi
JSB. Adapun input yang dapat diterima oleh dengan
baik oleh JSB adalah berupa kumpulan data numerik.
Dengan demikian maka permasalahan pertama adalah
bagaimana mengkonversi suatu citra digital menjadi
kumpulan data numerik yang representatif dan
konsisten. Tentunya walaupun JSB yang digunakan
memiliki karakteristik, struktur ataupun konfigurasi
yang sudah cukup spesifik, masih ada parameterparameter
penting lain dari JSB tersebut yang harus
diatur untuk mendapatkan hasil terbaik. Parameterparameter
tersebut antara lain adalah pengaruh bias dan
bobot awal, nilai momentum, nilai LearnRates, nilai
stopping criteria error, epoch, dan lain sebagainya.
Penyesuaian terhadap nilai-nilai tersebut adalah
masalah berikutnya yang akan dianalisa.
B. Metode Akuisisi Data
Setiap sampel yang akan diamati dan dianalisa
oleh JSB harus direpresentasikan secara baik ke dalam
bentuk data numerik. Untuk itu diperlukan suatu
metode yang dapat mengekstraksi data ciri dari setiap
sampel tadi secara konsisten. Tentunya data numerik
yang dihasilkan haruslah benar-benar dapat mewakili
karakteristik atau ciri-ciri dari sampel yang diamati,
sehingga diharapkan dari sekumpulan data dengan
target yang sama akan dihasilkan suatu generalisasi
atau pencirian secara umum terhadap suatu target yang
sejenis. Proses akuisisi data tersebut harus benar-benar
akurat dengan mempertimbangkan semua karakteristik
dari setiap sampel yang tidak lain adalah suatu citra
digital, dimana setiap citra digital memiliki
karakteristik tertentu.
B.1. Karakteristik Sampel
Sampel-sampel yang akan diamati tentunya harus
dibatasi dengan suatu struktur dimensi dan
homogenisasi pixel yang sederhana, sehingga diharapkan
dapat mempermudah proses analisa terhadap
konsep ini. Setiap sampel adalah satu citra digital yang
nilai warna dari pixel-pixelnya terhomo-genisasi
menjadi dua representasi warna, yaitu warna aktif
(hitam) dan warna nonaktif (selain hitam). Selain itu
dimensi dari setiap sampel dibatasi sebesar area yang
disediakan pada program aplikasi, tetapi tidak akan
mengurangi fleksibilitas dan skalabilitas yang
diharapkan.
B.2. Ekstraksi Data
Untuk mendapatkan data yang akurat dan
konsisten dari setiap sampel, digunakan suatu metode
sederhana yaitu dengan cara menghitung jumlah pixel
aktif yang terdapat pada bagian-bagian dari sampel.
Adapun algoritma umum dari pengekstrakan data
numerik dari setiap sampel adalah sebagai berikut :
1. Setiap sampel yang diamati, dibagi menjadi
beberapa area, misalnya 4 kolom dan 5 baris,
sehingga akan terdapat 20 area pengamatan;
2. jumlah pixel yang aktif dari setiap area yang ada
dihitung secara akurat;
3. dihasilkan sejumlah 20 data numerik dengan
atribut kolom dan baris yang diharapkan dapat
mewakili data ciri dari sampel yang diamati.
Setelah melalui tahapan normalisasi, data-data
numerik tadi akan menjadi data input pada JSB.
Dengan demikian jumlah area yang ada pada setiap
sampel akan bersesuaian dengan jumlah neuron input
JSB yang akan digunakan. Agar dapat dihasilkan
kumpulan data yang seragam, maka setiap sampel yang
akan diamati haruslah memiliki jumlah area pembagian
yang sama. Berikut contoh pengekstrakan data ciri dari
sampel pada Gambar 3.1.

Tidak ada komentar:

Posting Komentar