BAB II TINJAUAN PUSTAKA 2.1. Pengertian Citra - Prancangan Perangkat Lunak Pengenalan Wajah dengan Metode Eigenface

Teks penuh

(1)

BAB II

TINJAUAN PUSTAKA

2.1. Pengertian Citra

Citra adalah gambar dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontiniu menjadi gambar diskrit melalui proses sampling. Citra digital dapat didefinisikan sebagai fungsi dua variabel, f(x,y), dimana x dan y adalah koordinat spasial sedangkan nilai f(x,y) adalah intensitas citra pada koordinat tersebut, hal tersebut diilustrasikan pada gambar di bawah ini. Teknologi dasar untuk menciptakan dan menampilkan warna pada citra digital berdasarkan pada penelitian bahwa sebuah warna merupakan kombinasi dari tiga warna dasar, yaitu merah, hijau, dan biru (Red, Green, Blue - RGB) [6].

Citra digital merupakan citra yang diambil berdasarkan sampling dan kuantitas

tertentu sehingga citra digital ini terbentuk dari piksel-piksel yang besarnya tergantung pada besar kecilnya sampling dan nilainya (besarnya derajat keabuan) tergantung pada kuantitas. Berdasarkan pengertian ini maka model citra digital dinyatakan dalam bentuk matriks yang nilainya berupa nilai derajat keabuan. Model ini menyatakan model dari citra grayscale yaitu citra yang terdiri dari derajat keabuan tertentu [3].

2.1.1. Pengolahan Citra

(2)

Kebutuhan untuk memproses sebuah gambar dengan cepat dalam satu aplikasi yang melakukan pengolahan citra adalah salah satu masalah utamanya seperti yang

dikemukakan oleh Chen, “Walau bagaimanapun, aplikasi yang bekerja secara

realtime lebih bergantung pada pemrosesan piksel / signal yang cepat daripada metode optimisasi lain yang rumit dan memakan waktu” [4].

2.1.2. Mode Warna

Menampilkan sebuah citra pada layar monitor diperlukan lebih dari sekedar informasi tentang letak dari pixel-pixel pembentuk citra. Untuk memperoleh gambar yang tepat dibutuhkan juga informasi tentang warna yang dipakai untuk menggambarkan sebuah citra digital. Beberapa mode warna yang sering digunakan adalah:

1. Bitmap mode memerlukan 1 bit data untuk menampilkan warna dan warna yang dapat ditampilkan hanya warna hitam dan putih (monochrome).

2. Indexed Color Mode, mengurutkan warna dalam jangkauan 0-255 (8 bit). 3. Grayscale Mode, menampilkan citra dalam 256 tingkat keabuan.

4. RGB Mode, menampilkan citra dalam kombinasi 3 warna dasar (Red, Green, Blue) tiap warna dasar memiliki intensitas warna 0-255 (8 bit).

5. CMYK Mode, menampilkan citra dalam kombinasi 4 warna dasar (cyan, magenta,

yellow, black) tiap warna dasar memiliki intensitas warna 0-255 (8 bit).

(3)

Gambar 2.1 Kombinasi Warna RGB

Warna campuran (selain dari putih) dihasilkan dengan menambahkan warna komponen RGB individual dengan berbagai tingkat saturasi, dengan tingkatan mulai dari 0.0 hingga 1.0 (0 berarti tidak menggunakan warna tersebut; 1 berarti menggunakan warna tersebut pada saturasi penuh) [6].

2.1.3. Pengenalan Pola

Pengenalan pola adalah suatu proses analisis gambar, dimana masukkan berupa sebuah citra dan hasil keluarannya berupa sebuah deskripsi citra tersebut. Proses ini bertujuan untuk mengekstrak informasi yang disampaikan oleh citra. Pada pengenalan pola dibutuhkan obyek citra untuk diidentifikasikan. Hasil dari pengenalan pola ini

akan berupa kelas yang merupakan kelompok dari klasifikasinya [2].

FeatureExtraction adalah proses mengambil informasi yang relevan, berhubungan dengan klasifikasi data input dengan bantuan suatu alat. Biasanya

feature extraction dilakukan dengan bantuan piranti lunak. Pemrosesan ini akan mengubah pola data mentah dari gambar menjadi sebuah vector ciri. Penggunaaannya akan mengurangi data yang berulang dalam sebuah pola gambar. Teknik feature extraction ini digunakan dalam proses, salah satunya face detection [9].

2.1.4. Pengenalan Wajah

(4)

1. Metode berdasar pengetahuan

Metode ini mencoba menggambarkan semua pola dari wajah dengan menggunakan aturan syarat wajah manusia, seperti sebuah wajah memiliki 2 buah mata dan sebuah mulut.

2. Metode berdasar template

Metode ini merepresentasikan wajah dengan template yang diubah-ubah berdasarkan pada poin-poin fitur wajah. Akan tetapi poin-poin tersebut bisa menjadi rusak oleh pencahayaan, posisi wajah, tambahan benda pada wajah, atau perubahan expresi bias saja gagal ditemukan. Namun jika batas anterlalu longgar, akan terjadi kesalahan deteksi.

3. Metode fitur yang serupa

Metode ini sulit digunakan untuk mendeteksi wajah dalam citra nyata karena adalah sulit untuk menemukan suatu fitur yang benar-benar serupa dengan adanya variasi pencahayaan, posisi, dan ekspresi wajah. Untuk mengatasi kesulitan tersebut, metode berdasar penampilan memberikan keuntungan dan banyak digunakan dalam pendeteksian wajah. Karena kemampuannya untuk

belajar dari data hasil training, banyaknya variasi, ekspresi, dan posisi bisa digantikan dengan training menggunakan data awal yang banyak.

4. Metode berdasar tampilan

(5)

Proses pengenalan wajah secara umum adalah terdiri dari:

a. Acquisition module, merupakan blok input dari proses pengenalan wajah,

sumbernya dapat berasal dari kamera ataupun file citra.

b. Pre-processing module, merupakan proses penyesuaian citra input yang meliputi, normalisasi ukuran citra, histogram equalization untuk memperbaiki kualitas citra input agar memudahkan proses pengenalan tanpa menghilangkan informasi utamanya, median filtering untuk menghilangkan noise akibat kamera atau pergeseran frame, high pass filtering untuk menunjukkan bagian tepi dari citra, background removal untuk menghilangkan background sehingga hanya bagian wajah saja yang diproses dan normalisasi pencahayaan ketika mengambil citra input. Bagian pre-processing ini untuk menghilangkan masalah yang akan timbul pada proses pengenalan wajah seperti yang dijelaskan sebelumnya.

c. Feature Extraction module, digunakan untuk mengutip bagian terpenting sebagai suatu vektor yang merepresentasikan wajah dan bersifat unik.

d. Classification module, pada modul ini, dengan bantuan pemisahan pola, fitur wajah yang dibandingkan dengan fitur yang telah tersimpan di database sehingga dapat diketahui apakah citra wajah tersebut dikenali.

e. Training set, modul ini digunakan selama proses pembelajaran proses pengenalan, semakin kompleks dan sering, proses pengenalan wajah akan semakin baik.

f. Database, berisi kumpulan citra wajah.

2.2. Eigenface

Ide utama dari eigenface ini didapat dengan mengambil informasi yang terdapat pada citra muka, lalu memasukkan ke dalam perhitungan matematika yang mudah dan membandingkannya dengan masing-masing muka dari muka yang diketahui yang diproses dengan perhitungan yang sama. Jika didapatkan hasil yang sama, maka dapat disimpulkan bahwa citra yang diinputkan berupa muka dan diketahui.

Proses yang dilakukan oleh perhitungan eigenface ini menggunakan teknik PCA. Hasil yang diperoleh dari PCA ini berupa vektor eigen. Vektor eigen

(6)

didapatkan nilai eigenface dengan mengalikan nilai vector yang sudah didapat dari PCA dengan nilai awal citra yang belum diproses PCA [7].

Vektor eigenface yang didapat akan mewakili wajah yang paling menggambarkan subyek. Seperti yang dituliskan di atas, nilai yang dihitung dengan rumus yang sama akan mempunyai nilai yang sama dengan nilai yang mempunyai rumus yang sama juga. Karena itu, untuk melakukan pengenalan, nilai vektor input yang mengandung data citra, akan diproses dengan menggunakan langkah yang sama, tetapi pada pengenalan ini tidak akan dilakukan perhitungan nilai eigenvektor baru. Tetapi cukup dengan mencerminkan data input baru terhadap nilai rata-rata citra dan hasilnya dikalikan dengan nilai vektor eigen yang didapat dari proses pelatihan.

Eigenvector dari suatu transformasi adalah vektor-vektor yang tidak mengalami perubahan sedang eigenvalue dari suatu eigenvector adalah scale factor

dimana eigenvector dikalikan. Eigenvector juga dinyatakan sebagai karakteristik wajah oleh karena itu metoda ini disebut dengan eigenface. Setiap wajah direpresentasikan dalam kombinasi linear eigenface. Kirbi dan Sirovich mengembangkan suatu teknik yang menunjukan wajah menggunakan analisis komponen, teknik tersebut menghitung koordinat sistem wajah yang disebut dengan

eigenpicture [1].

Hasil yang didapat dari perhitungan proses pengenalan, selanjutnya akan dibandingkan dengan masing-masing nilai eigenfaces yang paling mencerminkan citra. Hasil perbedaan nilai yang paling kecil ini merupakan citra yang paling mewakili citra yang diinputkan.

2.2.1. Perhitungan Eigenface

Perhitungan eigenface citra adalah sebagai berikut: a. Mengisi variabel S dengan seluruh citra wajah input.

(7)

d. Kemudian tentukan selisih antara citra input dengan citra mean.

e. Selanjutnya vektor orthonormal M, un, yang menunjukkan distribusi data. Vektor ke-k, uk: bernilai maksimum terhadap uk dan ul adalah eigenvector dan

eigenvalue.

f. Nilai matriks C akan diperoleh.

g. Kemudian tentukan eigenvector, v1, u1.

Proses Perhitungan eigenface-nya adalah:

a. Citra wajah baru yang akan ditransformasikan menjadi komponen eigenface, dibandingkan dengan citra input yang telah diubah manjadi bentuk mean kemudian dikalikan dengan eigenvector.

b. Kemudian tentukan euclidean distance yang merepresentasikan citra wajah tersebut.

Gambar 2.2 Citra Hasil Proses Eigenfaces.

(8)

2. Ambil citra input X (*.jpg) yang akan dikenali dari database 3. Tentukan nilai mean berikut eigenvalue dari setiap citra

4. Ambil sebuah citra (*.jpg) yang akan dicocokkan dengan citra input dari database 5. Tentukan nilai mean dan eigenvaluenya

6. Apakah eigenvalue dari citra random sama dengan citra input 7. Jika belum sama, maka ulangi lagi langkah ke-4

8. Jika sama, maka tampilkan ke dua citra. 9. Proses selesai.

2.3. Principal Component Analysis (PCA)

Metode Principal Component Analysis (PCA) dibuat pertama kali oleh para ahli statistik dan ditemukan oleh Karl Pearson pada tahun l90l yang memakainya pada bidang biologi. Kemudian tidak ada perkembangan baru pada teknik ini, dan. perkembangannya baru mulai pesat pada akhir tahun l930 dan awal 1940. Setelah itu perkembangannya berkurang sebentar sampai komputer telah berhasil didesain sehingga dapat mengaplikasikan teknik ini pada masalah-masalah yang masuk akal. Pada tahun 1947 teori ini muncul lagi dan cukup independen sebagai teori probabilitas yang ditemukan oleh Karhunen, dan kemudian dikembangkan oleh Loeve pada tahun l963, sehingga teori ini juga dinamakan Karhunen-Loeve transform pada bidang ilmu

telekomunikasi.

PCA adalah sebuah transformasi linier yang biasa digunakan pada kompresi data. PCA adalah sebuah teknik statistika yang berguna pada bidang pengenalan, klasifikasi dan kompresi data citra. PCA juga merupakan teknik yang umum digunakan untuk menarik fitur-fitur dari data pada sebuah skala berdimensi tinggi. Dengan cara mentransformasikan citra ke dalam eigenfaces secara linier, proyeksikan citra ke dalam bentuk skala berdimensi n, yang menampakkan properti dari sampel yang paling jelas sepanjang koordinat.

Fitur yang paling signifikan yang ada pada citra akan menjadi principal component yang akan digunakan untuk pengolahan selanjutnya. Dalam prosesnya

(9)

eigenvector dan nilai-nilai yang disebut dengan eigenvalue untuk mendapatkan fitur yang paling signifikan pada dataset. Principal component dicari dengan hubungan:

AC = λC

di mana A adalah matriks yang akan dicari principal component-nya, C adalah

principal component atau disebut dengan eigenvector dan λ adalah eigenvalue. Andaikan A adalah sebuah matriks berdimensi n x n, eigenvalue dari matriks A diperoleh dengan hubungan:

det(A-λI) = 0

di mana I adalah matriks identitas dari A dan λ adalah eigenvalue dari matriks A.

Mencari nilai eigenvector dapat dicari dengan memecahkan (A- λI) v = 0, dalam beberapa kasus dapat dijumpai suatu matriks tanpa eigenvalues di mana karakteristik polinomial-nya adalah λ2 + 1 sehingga eigenvalue-nya adalah bilangan bilangan

kompleks i, -i. Eigenvalue juga tidak riil. Sebagai contoh diberi matrik citra A= , polinomial karakteristiknya dapat dicari sebagai berikut:

Ini adalah persamaan kuadrat dengan akarnya λ1 = 2 dan λ2 = 3. Substitusikan λ2 = 3 ke dalam persamaan. Misalnya Y0 adalah Eigenvector yang berasosiasi dengan

Eigenvalue λ2 = 3. Set Y0 dengan nilai:

Substitusikan Y0 dengan v pada persamaan:

(10)

2.4 Database

Database terdiri dari dua kata, yaitu base dan data. Base berarti markas atau gudang, tempat bersarang atau berkumpul. Sedang data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia pegawai, siswa, guru, pelanggan, barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya [8].

Database dapat didefinisikan berdasarkan sejumlah sudut pandang yaitu sebagai berikut:

1. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. 2. Kumpulan data yang saling berhubungan yang disimpan secara bersama

sedemikian rupa dan tanpa pengulangan (Redudance) yang tidak perlu, untuk memenuhi berbagai kebutuhan.

3. Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.

Database dan lemari arsip sesungguhnya memiliki prinsip kerja dan tujuan yang sama. Prinsip utamanya adalah pengaturan data/arsip. Dan tujuan utamanya

adalah kemudahan dan kecepatan dalam mengambil kembali data/arsip. Perbedaannya hanya terdapat pada media penyimpanan yang digunakan. Jika lemari arsip menggunakan lemari dari besi atau kayu sebagai media penyimpanan, maka basis data menggunakan media penyimpanan elektronis seperti disk (disket atau harddisk). Hal ini merupakan konsekuensi yang logis, karena lemari arsip langsung dikelola/ditangani manusia, sementara basis data dikelola/ditangani melalui perantaraan alat/mesin pintar elektronik (yang kita kenal sebagai komputer).

Istilah-istilah yang biasa dipergunakan dalam sistem database adalah sebagai berikut:

(11)

Entitas adalah suatu bentuk organisasi, seperti: Restoran maupun Pegawai. Data yang disimpan di dalam basis data merupakan data operasional suatu enterprise.

Contoh data operasional adalah:

Data Restoran Kode, NamaRestoran, Alamat

Data Pegawai NIP, NamaPegawai, JKPegawai

Data MenuMakanan KodeMenu, NamaMenu, Harga.

2. Entitas (entity)

Entitas adalah suatu obyek yang dapat dibedakan dengan obyek lainnya yang dapat diwujudkan di dalam basis data.

Contoh:

a. Entitas di lingkungan Restoran (Pegawai, Menu Makanan, Gaji). b. Entitas di lingkungan Kantor (Pegawai, Gaji Pegawai, Tamu).

c. Kumpulan entitas disebut himpunan entitas. Contoh: Restoran merupakan kumpulan entitas pegawai dan tamu.

3. Attribute/field, karakteristik entitas tertentu.

Contoh:

Entity Menu Makanan  atributnya adalah Kode, NmMenu, Harga

Entity Pegawai  atributnya adalah NIP, NamaPegawai, JKPegawai

4. Data Value (nilai atau isi data), merupakan data aktual atau informasi yang

disimpan di tiap data elemen atau atribut. Isi atribut disebut nilai data.

Contoh:

Atribut NmSiswa  Sutrisno, Budiman.

5. Record/Tuple, kumpulan isi elemen data atribut yang saling berhubungan menginformasikan tentang suatu entity secara lengkap.

(12)

6. File, kumpulan record sejenis yang mempunyai panjang elemen dan atribut yang sama, namun berbeda-beda valuenya.

7. Kunci elemen data, sebagai tanda pengenal yang secara unik mengidentifikasi entitas dari suatu kumpulan entitas.

Contoh: Entitas Pegawai mempunyai atribut-atribut NIP, NamaPegawai, JKPegawai, menggunakan NIP sebagai kunci elemen data.

Database Management System (DBMS) kemudian yang saling berkaitan bersama dengan program untuk pengelolanya. Database dapat terdiri dari ratusan field

yang dibutuhkan untuk informasi dan dapat diakses/dipakai secara bersama-sama oleh lebih dari beberapa ratus pemakai (user). Karena database dipergunakan secara bersama-sama, mungkin dalam waktu yang bersamaan, maka diperlukan suatu pengontrol dan pengelola data yang ada di dalamnya.

Pengontrol ini dilakukan oleh DBMS (Database Management System) yang merupakan kumpulan software yang mengkoordinasikan semua kegiatan yang berhubungan dengan basis data agar data dapat diakses/dipakai oleh pengguna. Tujuannya adalah efisiensi dan kenyamanan dalam memperoleh dan menyimpan informasi di dalam database.

2.5. Microsoft Visual Studio

Microsoft Visual Studio merupakan sebuah perangkat lunak lengkap (suite) yang dapat digunakan untuk melakukan pengembangan aplikasi, baik itu aplikasi bisnis, aplikasi personal, ataupun komponen aplikasinya, dalam bentuk aplikasi console, aplikasi Windows, ataupun aplikasi Web. Visual Studio mencakup kompiler, SDK,

(13)

Microsoft Visual Studio dapat digunakan untuk mengembangkan aplikasi dalam native code (dalam bentuk bahasa mesin yang berjalan di atas Windows)

ataupun managed code (dalam bentukMicrosoft Intermediate Language di atas .NET Framework). Selain itu, Visual Studio juga dapat digunakan untuk mengembangkan aplikasi Silverlight, aplikasi Windows Mobile (yang berjalan di atas .NET Compact Framework).

2.6. Bahasa Pemograman C#

C# adalah bahasa pemrograman baru yang diciptakan oleh Microsoft yang dikembangkan dibawah kepemimpinan Anders Hejlsberg yang telah menciptakan berbagai macam bahasa pemrograman termasuk Borland Turbo C++ dan orland Delphi. Bahasa C# juga telah di standarisasi secara internasional oleh ECMA. Seperti halnya bahasa pemrograman yang lain, C# bisa digunakan untuk membangun berbagai macam jenis aplikasi, seperti aplikasi berbasis windows (desktop) dan aplikasi berbasis web serta aplikasi berbasis web services.

2.7. Webcam

Webcam (singkatan dari web camera) adalah sebuah kamera video digital kecil yang

dihubungkan ke komputer melalui (biasanya) port USB ataupun port COM. Ada berbagai macam merek webcam, di antaranya LogiTech, Itech, SunFlowwer dan sebagainya. Webcam biasanya ber-resolusi sebesar 352 x 288 / 640 x 480 piksel, namun ada yang kualitasnya hingga 1 megapiksel. Sekarang hampir semua kamera digital dan telepon genggam bisa dijadikan sebagai kamera web (webcam).

Istilah webcam merujuk pada teknologi secara umumnya, sehingga kata web

terkadang diganti dengan kata lain yang mendeskripsikan pemandangan yang ditampilkan di kamera, misalnya StreetCam yang memperlihatkan pemandangan jalan, Metrocam yang memperlihatkan pemandangan panorama kota dan pedesaan,

TraffiCam yang digunakan untuk memonitor keadaan jalan raya, cuaca dengan

(14)

Kabel support yang dibuat dari bahan yang fleksibel, salah satu ujungnya dihubungkan dengan papan sirkuit (PCB) dan ujung satu lagi memiliki konektor.

Kabel ini dikontrol untuk menyesuaikan ketinggian, arah dan sudut pandang web camera. Sebuah webcam biasanya dilengkapi dengan software, software ini mengambil gambar-gambar dari kamera digital secara terus menerus ataupun dalam interval waktu tertentu dan menyiarkannya melalui koneksi internet. Ada beberapa metode penyiaran dan yang paling umum adalah software mengubah gambar ke dalam bentuk file JPEG dan meng-upload-nya ke web server menggunakan File Transfer Protocol (FTP).

Frame rate mengindikasikan jumlah gambar sebuah software dapat ambil dan transfer dalam satu detik. Untuk streaming video, dibutuhkan minimal 15 frame per second (fps) atau idealnya 30 fps. Untuk mendapatkan frame rate yang tinggi, dibutuhkan koneksi internet yang tinggi kecepatannya. Sebuah webcam tidak harus selalu terhubung dengan komputer, ada webcam yang memiliki software webcam dan

web server bulit-in, sehingga yang diperlukan hanyalah koneksi internet, webcam ini dinamakan “network camera”.

Penggunaan webcam mencakup video conferencing, internet dating, video messaging, home monitoring, images sharing, video interview, video phone-call, dan

banyak hal lain. Kamera untuk video conference biasanya berbentuk kamera kecil yang terhubung langsung dengan komputer. Kamera analog juga terkadang digunakan, kamera ini terhubung dengan video capture card dan tersambung dengan internet (baik langsung maupun tidak langsung). Saat ini kamera untuk video conference sudah makin maju, sudah ada webcam yang di dalamnya terdapat

microphone maupun noise cancellation untuk memfokuskan audio ke speaker yang terletak di depan kamera sehingga noise yang ada tidak mengganggu jalannya konferensi.

Webcam memiliki fitur-fitur dan setting yang bermacam-macam, di antaranya adalah:

(15)

2. Image archiving, pengguna dapat membuat sebuah archive yang menyimpan semua gambar dari webcam atau hanya gambar-gambar tertentu saat interval

pre-set.

3. Video messaging, beberapa program messaging mendukung fitur ini.

4. Advanced connections, menyambungkan perangkat home theater ke webcam

dengan kabel maupun nirkabel.

5. Automotion, kamera robotik yang memungkinkan pengambilan gambar secara pan

atau tilt dan setting program pengambilan frame berdasarkan posisi kamera. 6. Streaming media, aplikasi profesional, setup webcam dapat menggunakan

kompresi MPEG4 untuk mendapatkan streaming audio dan video yang sesungguhnya.

7. Custom coding, mengimpor kode komputer pengguna untuk memberitahu webcam apa yang harus dilakukan (misalnya automatically refresh).

8. AutoCam, memungkinkan pengguna membuat webpage untuk webcam-nya secara gratis di server perusahaan pembuat webcam.

2.8. Penelitian Relevan

Penelitian relevan yang dilakukan oleh Kusnadi di mana topik utama membahas permasalahan pengembangan eigenfaces atau face detection adalah Analisis dan Perancangan Sistem Pengenalan Wajah menggunakan Web-Camera dengan metode Eigenface. Penulis merancang sistem aplikasi penerapan eigenfaces dengan menggunakan inputan data dari Web-Camera. Dalam penelitian ini, program

penulisan dibatasi posisi gambar muka harus berada di tengah dan menjadi pusat dari

Figur

Gambar 2.1  Kombinasi Warna RGB

Gambar 2.1

Kombinasi Warna RGB p.3
Gambar 2.2 Citra Hasil Proses Eigenfaces.

Gambar 2.2

Citra Hasil Proses Eigenfaces. p.7

Referensi

Memperbarui...