Selasa, 06 April 2010

PENGOLAHAN CITRA DIGITAL

1. METODE OTSU

    Tujuan dari metode otsu adalah membagi histogram citra gray level kedalam dua daerah yang berbeda secara otomatis tanpa membutuhkan bantuan user untuk memasukkan nilai ambang .Pendekatan yang dilakukan oleh metode otsu adalah dengan melakukan analisis diskriminan yaitu menentukan suatu variabel yang dapat membedakan antara dua atau lebih kelompok yang muncul secara alami. Analisis Diskriminan akan memaksimumkan variable tersebut agar dapat membagi objek latardepan (foreground) dan latarbelakang (background).

    Formulasi dari metode otsu adalah sebagai berikut. 

Nilai Ambang yang akan dicari dari suatu citra gray level dinyatakan dengan k. Nilai k berkisar antara sampai dengan L, dengan nilai L = 255. 

Probabilitas setiap pixel pada level ke i dapat dinyatakan: 
     Pi = n/N
dengan :
ni menyatakan jumlah pixel pada level ke i
N menyatakan total jumlah pixel pada citra.

AKUISISI DATA CITRA TANGAN 

         Citra-citra Tangan diambil dengan menggunakan kamera digital sony tipe DSC-P72 dengan resolusi 640 x 480 pixel. Tangan diletakan di atas suatu alas berwarna hitam yang terdiri dari pegs dengan posisi tertentu, seperti yang ditunjukkan gambar 1. Tujuan dari pegs adalah untuk membatasi gerakan tangansehingga akan diperoleh citra tangan dengan posisi yang hampir tidak mengalami perubahan. Kemudian citra-citra tangan dijadikan citra gray level 256 warnadengan aplikasi ACD FotoCanvas Lite 2.0. Aplikasi ini bagian dari aplikasi ACD See versi 5.0, yaitu suatu aplikasi pengolah gambar. 


ALGORITMA OTSU

Berikut ini disajikan algoritma otsu dengan menggunakan kode C++.


tMean = 0;
variance = maxVariance = 0;
firstCM = zerothCM = 0;
for (i = 0; i < h; i++)
for (j = 0; j < w; j++) {
n = Image[j][i] ;
histogram[n]++;
}
for (k = 0; k < level; k++)
tMean += k * histogram[k] / (w * h);
for (k = 0; k < level; k++) {
zerothCM += histogram[k] / (w * h);
firstCM += k * histogram[k] / (w * h);
variance = (tMean * zerothCM - firstCM);
variance *= variance;
variance /= zerothCM * (1 - zerothCM);
if (maxVariance < variance){
maxVariance = variance;
T = k;
}
}


CITRA BINER 

Citra biner adalah citra yang memiliki dua nilai tingkat keabuan yaitu hitam dan putih. Secara umum proses binersisasi citra gray scale untuk menghasilkan citra biner adalah sebagai berikut.


dengan g(x,y) adalah citra biner dari citra gray scale f(x,y) dan T menyatakan nilai ambang. 

Nilai T dapat ditentukan dengan salah satu dari 3 cara
berikut.

1. Nilai Ambang Global (Global Threshold)
T = T{f(x,y)}
dengan T tergantung pada nilai gray level dari pixel pada posisi x,y. 

2. Nilai Ambang Lokal (Local Threshold)
T = T{A(x,y), f(x,y)}
dengan T tergantung pada properti pixel tetangga. A(x,y) menyatakan nilai pixel tetangga. 

3. Nilai Ambang dinamis (Dynamic Threshold)
T = T{x,y, A(x,y), f(x,y)}
dengan T tergantung pada koordinat-koordinat pixel.