3—14
SISTEM PENGENALAN OBYEK REAL TIME
Bidang Teknik
This research explains about object recognition system that using artificial neural
network as classifier of object types. Artificial neural network (ANN) receives four
object features, that is, bounding rectangle, bounding circle, first and second
momen invarian of Hu. That features extracted using image processing program and
good accurate level to representating object characteristics.This system developed
in real-time environment. QuickCam camera used as visual sensor to capture light
from system environment. Image acquisition rate is 300 ms, time to do image
processing till objects classification have distance that widely, that is 30 ms till 200
ms. System have capability to recognizing objects as continue by good accurate
level is 97.14% for normal camera position. That’s mean, camera be same position
when taking sample data for ANN training. System also have capability to
recognizing smaller objects (a half normal size), bigger (two normal size), and
shape-changed objects. Success to recognize objectsc for each condition above are
94.28%, 95.71, and 87.14%. The optimum structure for this ANN: four neurons for
input layer, 10 neurons for hidden layer, and seven neurons for output layer with
learning rate is 0.9.
3
LUKMAN TALIBO, YEFFRY HANDOKO PUTRA & NANA JUHANA
Penelitian ini mencoba untuk menerapkan adalah menentukan tepian obyek (ciri
kamera QuickCam, yang relatif lebih murah pertama) menggunakan teknik dilasi dan
dibanding kamera CCD yang sering subtraksi. Dari tepian obyek ini, dapat
digunakan saat ini. Dengan kamera ini, ditentukan nilai bounding circle. Ciri obyek
informasi citra obyek dan lingkungannya lain yang diekstrak adalah luas, pusat massa,
dapat dicuplik (capture), selanjutnya diubah dan momen. Dari ketiga ciri ini dapat
ke dalam bentuk sinyal listrik analog. ditentukan nilai bounding rectangle, invarian
Hu orde 1 dan dan 2.
Pada sistem kendali visual, telah sering
digunakan informasi luas (jumlah piksel yang Pada setiap obyek diekstrak 20 data ciri untuk
membentuk obyek). Hal ini berakibat berbagai keadaan (posisi, orientasi,
ketergantungan pengklasifikasi terhadap perbesaran). Data-data ini dijadikan input
ukuran obyek, sehingga apabila ukuran obyek untuk proses pelatihan JST. JST dilatih
diperbesar atau sebaliknya, maka dapat dengan konstanta kecepatan belajar 0.9
menyebabkan kegagalan dalam pengambilan dengan iterasi maksimum sebanyak 50000.
keputusan mengenai obyek. Alternatif yang Bobot-bobot interkoneksi akhir dari JST ini
akan dikembangkan dalam penelitian ini akan digunakan oleh JST pengklasifikasi
adalah menggunakan ciri-ciri geometri dan untuk menentukan kelas dari masing-masing
momen obyek, yaitu bounding rectangle, obyek.
bounding circle, invarian momen Hu orde 1
dan orde 2. Ciri ini dapat diandalkan dan tetap PENGOLAHAN CITRA DIGITAL
dapat digunakan untuk obyek yang
mengalami transformasi (translasi, rotasi, dan Proses Akuisisi Citra
penskalaan).
Citra direpresentasikan dalam bentuk array 2
Jaringan Syaraf Tiruan yang dikenal sering dimensi (2D) atau matriks. Pada penelitian ini,
digunakan untuk pengenalan karakter (huruf). digunakan citra digital dengan ukuran
Penelitian ini menerapkan jaringan syaraf 240x320 piksel. Representasi citra digital ini
tiruan (JST) propagasi balik diilustrasikan pada Gambar 1.
(backpropagation) sebagai pengklasifikasi
obyek berdasarkan ciri geometri dan momen
f (0,0) f (0,1) K f (0,319)
yang disebutkan diatas. Dengan ciri ini sistem f (1,0)
kendali visual dapat lebih cerdas dalam f (1,1) K f (1,319)
f ( x, y ) =
mengambil keputusan terhadap obyek yang M M M
akan dimanipulasi.
f (239,0) f (239,1) L f (239,319)
DESKRIPSI SISTEM Gambar 1
Fungsi citra f(x,y)
Citra input yang digunakan dalam penelitian
0 0 0 0 0 0 0 0
ini adalah citra RGB 24 bit dengan ukuran 0 0 0 0 0 0 0 0
320x240 piksel (hasil akuisisi). Citra ini 0 0 0 0 0 0 0 0
dikonversi menjadi citra gray-scale 256 level 0 0 230 235 240 240 245 0
dan disimpan dalam array dua dimensi. 0 0 210 220 232 235 245 0
Selanjutnya citra gray-scale ini dithresholding 0 0 200 240 235 235 245 0
0 0 185 215 220 235 243 0
sehingga menghasilkan citra biner dengan dua 0 0 0 0 0 0 0 0
derajat keabua (0 dan 255). Selanjutnya pada 0 0 0 0 0 0 0 0
citra tersebut dideteksi apakan terdapat obyek
atau tidak. Proses ini dinamakan dengan Gambar 2
region growing (RG). Proses selanjutnya Citra digital dengan berbagai
derajat keabuan
4
SISTEM PENGENALAN OBYEK REAL TIME
Dalam bentuk matriks citra digital dengan tahap, yaitu dilasi dan dilanjutkan dengan
berbagai derajat keabuan,citra subtraksi. Algoritma kedua proses tersebut
direpresentasikan sebagaimana terlihat pada dijelaskan sebagai berikut[7]:
Gambar 2.
Dilasi
Proses Thresholding Algoritma:
read (obyek(i,j))
Thresholding digunakan untuk mengubah for i Å 0 to Height do
citra yang memiliki banyak derajat keabuan for j Å 0 to Width do
(gray-scale) menjadi citra biner atau citra if obyek(i,j) > 0 then
yang hanya memiliki dua derajat keabuan. dilasi(i,j)=dilasi(i,j+1)= dilasi(i-
Secara sederhana, thresholding digunakan 1,j+1)=
untuk menghilangkan informasi citra yang dilasi(i-1,j)=dilasi(i-1,j-1)=dilasi(i,j-
memiliki derajat keabuan di bawah nilai 1)=
threshold (T) yang ditentukan. dilasi(i+1,j-1)=dilasi(i+1,j)=dilasi
(i+1,j+1)
Ga jika f ( x, y ) ≤ T , =obyek(i,j)
g ( x, y ) = (1) endif
Gb jika f ( x, y ) > T
endfor
Proses thresholding yang dideskripsikan oleh endfor
persamaan di atas mereduksi berbagai derajat
keabuan citra sehingga hanya ada dua derajat Hasil:
keabuan, yaitu Ga dan Gb, sedangkan obyek mengalami perbesaran satu piksel
merupakan citra yang menampung dua derajat
keabuan tersebut. Thresholding dapat Subtraksi
mereduksi jumlah komputasi (reducing Algoritma:
computation costs) pada pengolahan citra. for i Å 0 to Height do
for j Å 0 to Width do
Proses Region Growing if obyek(i,j) = dilasi(i,j) then
tepi(i,j) = 0
Region growing adalah proses untuk else
mendeteksi keberadaan obyek pada citra yang tepi(i,j) = dilasi(i,j);
terbentuk [1,4]. Algoritma region growing endif
(RG) akan mengidentifikasi daerah-daerah endfor
pada citra dan menentukan apakah daerah itu endfor
obyek atau bukan. Jika daerah yang
bersangkutan memenuhi syarat luas minimum Hasil:
dan maksimum yang ditentukan, maka daerah citra tepi obyek
tersebut merupakan obyek. Jika tidak, daerah
tersebut akan diidentifikasi sebagai derau dan Ekstraksi Ciri Obyek
nilai pikselnya diganti dengan nilai piksel
latar belakang (yaitu 0). Bila di suatu bidang Ada empat ciri yang akan diekstrak dari setiap
citra terdapat dua atau lebih obyek, maka obyek, yaitu bounding rectangle, bounding
setiap obyek akan memiliki nilai piksel yang circle, invarian momen Hu orde 1 dan
berbeda. invarian momen Hu orde 2. Untuk
mendapatkan keempat ciri tersebut, perlu
Pendeteksian Tepi ditentukan telebih dahulu pusat massa setiap
obyek. Pusat massa digunakan untuk
Proses pendeteksian tepi dilakukan dalam dua menghitung nilai ciri momen Hu dan
bounding rectangle.
5
LUKMAN TALIBO, YEFFRY HANDOKO PUTRA & NANA JUHANA
Pusat Massa β Y
β1
Pusat massa suatu objek dalam arah horisontal
x (mx) di dapat dengan cara menjumlahkan A4 α
A1'
semua koordinat x dari piksel-piksel objek, A '
Bounding Circle
Gambar 4
Salah satu obyek yang memiliki bentuk yang Bonding Circle
sangat sederhana adalah lingkaran. Di
samping sederhana, lingkaran memiliki Pendekatan yang dilakukan pada penelitian ini
bentuk yang sangat simetris. Seperti adalah memberikan nilai maksimum 1
diketahui, luas dan keliling sebuah lingkaran dimiliki untuk lingkaran dan nilai yang terus
dapat diketahui dengan: menurun untuk obyek yang lebih kompleks.
Nilai ini dapat mewakili bounding circle.
Perbandingan antara luas suatu lingkaran
A = πR 2 (5) dengan luas lingkaran terkecil yang dapat
P = 2πR = πD (6) menutupi lingkaran tersebut adalah 1.
1 4πA
dimana R adalah jari-jari dan D merupakan C= = (8)
garis tengah lingkaran. Komputasi untuk P2 P2
kedua properti lingkaran ini dapat dilakukan
4πA
6
SISTEM PENGENALAN OBYEK REAL TIME
dimana H dan W masing-masing merupakan Nilai-nilai numerik untuk ciri invarian momen
tinggi lebar citra. Selanjutnya, momen pusat Hu orde 1 terdapat pada range 0.10 sampai
untuk suatu citra dinyatakan dengan: dengan 0.20. Sedangkan nilai invarian momen
µ pq = ∑∑ i − i ( ) ( j − j)
p q
(10)
Hu orde 2 berada di luar range normal (0
sampai 1). Normaliasai pada ciri invarian
i , j ∈R
momen Hu orde 1 dapat dilakukan dengan
sederhana, yaitu dengan mengalikan ciri ini
dimana µ20 adalah pusat arah horisontal, µ02 untuk setiap obyek dengan 3 sehingga
adalah pusat arah vertikal, dan µ11 adalah nilainya tersebar dari 0 sampai mendekati 1.
pusat arah diagonal. Nilai iˆ d a n ĵ m a s i n g -
masing didapatkan dengan.persamaan: nh1 = 3 * φ1 (15)
(11) Sedangkan untuk orde 2, normalisasi dapat
i = ( m / m ), j = ( m / m )
10 00 01 00
dilakukan dengan persamaan.
m00 adalah jumlah total piksel yang φ + 0.0001
membentuk obyek. sedangkan m10 dan m11 nh2 = 0.05* (3 log 2 (16)
adalah pusat massa obyek. 0.0101
Momen pusat yang terbentuk sensitif terhadap Dengan demikian, keempat ciri diatas telah
transformasi rotasi dan penskalaan. Maka dari memenuhi syarat sebagai input JST.
itu dilakukan normalisasi terhadap momen
pusat (µπθ) melalui persamaan: ALGORITMA JARINGAN SYARAF
TIRUAN BACK-PROPAGATION
η pq = µ pq / µ 00γ (12)
Dimana γ = ( p + q) / 2 +1 Arsitektur jaringan syaraf tiruan yang
dibangun terdiri dari empat node pada lapisan
Dari persamaan (12), ciri ketiga dari obyek input, 10 node pada lapisan hidden dan tujuh
dapat ditentukan, yaitu invarian momen Hu node pada lapisan output. Jumlah node lapisan
orde 1 yang didefinisikan sebagai: input disesuaikan dengan jumlah ciri obyek
φ1 = η 20 + η 02 (13) yang telah dijelaskan sebelumnya, yaitu
bounding rectangle, bounding circle, invarian
7
LUKMAN TALIBO, YEFFRY HANDOKO PUTRA & NANA JUHANA
8
SISTEM PENGENALAN OBYEK REAL TIME
START
memperbaiki bobot-bobot interkoneksi sel-
sel lapisan dalam. Apaila lapisan dalam
lebih dari satu lapis, proses merambatkan
a, ep, error, itu berlanjut, lapis demi lapis, sehingga
error_target
setiap sel lapisan dalam memiliki nilai
error-nya masing-masing memperbaiki
Baca Ciri dari File dan
bobot-bobot interkoneksi dari sel-sel
Tentukan Target Output
lapisan sebelumnya.
8. Ulangi langkah 2 sampai 6 hingga
Inisialisasi bobot awal diperoleh nilai error keluaran yang
diperkenankan
Nilai error keluaran dalam proses ini
a=1 a=ep a=a+1 menjadi kendali untuk menghentikan
proses belajar JST. Apabila error keluaran
yang diberikan telah terpenuhi maka
Tentukan Input
dan Target Output proses belajar akan dihentikan. Proses juga
akan berhenti jika jumlah pelatiha telah
mencapai jumlah iterasi maksimal.
Feedforward 1 (in-hid) 8. Penulisan bobot interkoneksi sel
Proses ini melakukan penyimpanan
pengetahuan JST (berupa nilai-nilai bobot
Feedforward 2 (hid-out) interkoneksi sel JST) selama melakukan
proses belajar ke media penyimpan, agar
dapat dipergunakan pada proses
Hitung Error klasifikasi. Dalam tugas akhir ini,
penulisan bobot interkoneksi dituliskan ke
dalam bentuk file teks (.txt) agar mudah
error<error_target
Ya untuk dibaca kembali dalam aplikasinya.
9
LUKMAN TALIBO, YEFFRY HANDOKO PUTRA & NANA JUHANA
8. BoundingRect
9. BoundingCirc
10. MomenPusat
11. MomenHu
Prosedur-prosedur:
1. ReadFeaturesDataFromFile
Threshold = 140
2. RandomizeInitWeights
3. TargetOutput
4. Feedforward
5. Backpropagation
6. WriteWeightsToFile
Prosedur-prosedur:
1. ReadWeightsFromFile
2. SetObjectFeatures
3. ThresholdingOutput Threshold = 200
4. Classification Gambar 6
5. WriteResultsToFile Citra hasil tresholding
Tabel 3
Hasil uji variasi alpha/konst. kec. belajar
Jumlah obyek =7
Neuron input =4
Neuron hidden = 10
Neuron output =7
Error = 0.0001
Tidak
Alpha Epoch Benar Salah
dikenal
0.1 Gagal 6 0 1
0.2 Gagal 6 0 1
Gambar 8 0.3 43680 6 0 1
Tepi obyek 0.4 29220 6 1 0
0.5 21610 6 1 0
Uji Pelatihan JST 0.6 17110 5 1 1
0.7 14230 6 1 0
Parameter jaringan syaraf tiruan termasuk 0.8 19150 6 1 0
didalamnya parameter pelatihan sangat 0.9 19490 7 0 0
menentukan keberhasilan proses pelatihan
jaringan dan pengenalan obyek secara Grafik penurunan error kuadrat
keseluruhan. Pada JST, nilai-nilai setiap (mse – mean square error) diperlihatkan
parameter dapat ditentukan dalam berbagai pada Gambar 9 (a), (b), dan (c).
kombinasi. Tentunya kombinasi ini akan
sangat banyak. Untuk itu, dilakukan 1
pengujian terhadap kombinasi-kombinasi 0,8
tersebut sehingga didapatkan nilai yang
Erro r ku ad rat
0,6
optimum. Hasil pengujian beberapa variasi
arsitektur JST diperlihatkan pada Tabel 2. 0,4
0,2
Selanjutnya dilakukan pengujian juga 0
terhadap variasi konstanta kecepatan belajar. 0 50 100 150 200
Hasil pengujian ini diperlihatkan pada Tabel Epoch (x250)
3.
1
0,8
Tabel 2
Error kuadrat
0,6
Hasil uji variasi arsitektur JST 0,4
Backpropagation 0,2
0
Jumlah obyek =7 0 50 100 150 200
Neuron input =4 Epoch (x250)
Neuron output =7
Learning rate = 0.9 1
dikenal 0,4
4 Gagal 5 1 1 0,2
5 29090 4 1 2 0
5 1 1 1 1
Selanjutnya dilakukan pengujian untuk
obyek yang diperkecil dan diperbesar. Untuk 6 1 1 1 1
memperkecil citra obyek ketinggian kamera
ditambah dan untuk memperkecil dilakukan 7 1 1 1 1
pengurangan ketinggian kamera. Obyek 8 1 1 1 1
yang diperkecil memiliki ukuran setengah
dari ukuran sebelumnya (normal), sedangkan 9 1 0 1 1
ukuran obyek yang diperbesar adalah dua
10 1 1 1 1
kali ukuran sebelumnya. Hasil pengujian
diperlihatkan pada Tabel 5.
(Lanjutan) Tabel 4. Hasil uji ...
Pengujian juga dilakukan dengan mengubah
OBYEK
orientasi kamera sehingga arah kamera Klasifi- Keber-hasilan
membentuk sudut 25 derajat dengan sumbu kasi ke
5 6 7
(%)
Z (tegak lurus terhadap meja eksperimen).
Pada keadaan ini, terjadi deformasi bentuk 1 1 1 1 100
obyek karena informasi citra yang terbentuk 2 1 1 1 100
adalah informasi tiga dimensi. Keberhasilan
pengenalan untuk keadaan ini adalah 87.12 3 1 1 1 85.71
dan hasil pengujiannya diperlihatkan pada 4 1 1 1 100
Tabel 6.
5 1 1 1 100
SIMPULAN 6 1 1 1 100
12
SISTEM PENGENALAN OBYEK REAL TIME
13
LUKMAN TALIBO, YEFFRY HANDOKO PUTRA & NANA JUHANA
bergerak. Tugas Akhir Teknik Elektro Schalkoff, R.J. (1989). Digital image
ITB. Bandung: ITB. processing and computer vision. Wiley.
14