Archive for the 'Technology' Category

3D Teleconference (..4)

4. ANALISA

 

1.1  Clustering sampel kulit

Jumlah cluster sangat menentukan hasil dari penelitian selanjutnya. Untuk itu penentuan jumlah yang tepat dengan cara melakukan ujicoba dengan jumlah yang berbeda-beda dan membandingkan hasil yang terbaik sangat perlu dalam penelitian ini.

 



 

Tabel 4.1  : Tabel range RGB sampel kulit

Centroid

Pixel RGB Sampel Kulit

 

R

G

B

1

163.256097

160.853721

160.853721

2

152.184076

151.867125

151.347125

3

230.531735

154.893759

154.893759

4

210.289576

157.507689

151.169151

 

1.2  Pendeteksian Titik

Merupakan tahap yang paling banyak mengalami error. Pada skin region, jika background dan pencahayaan kurang tepat akan susah mendeteksi daerah kulit. Pada dasarnya tidak ada fitur wajah manusia yang sama, maka penentuan treshold yang tepat untuk mendeteksi fitur-fitur wajah sangat dibutuhkan.



 

1.3  Tracking Titik-titik Fitur Wajah

Pencarian pergeseran template point lebih sulit dibandingkan dengan template kotak. Karena kurang adanya ciri khusus pada point template sedangkan piksel pada object semua hampir sama.Berikut contoh analisa tracking:


Tabel 4.2  : Tabel point tracking frame

No.

Frame awal

Frame sekarang

Pergeseran

Korelasi

 Point

X

Y

X

Y

Koordinat

Max

48

117

160

119

160

+2 ; 0

0,9949         

49

123

162

122

160

+1 ; -2

0,9957         

51

124

161

124

163

  0 ; +2

0,995          

50

126

160

129

159

+3 ; -1

0,9937         

17

187

160

193

158

+6 ; -2

0,6876

 

              Pada kolom pergeseran koordinat, baris yang diwarnai biru merupakan titik yang error karena pergeseran titiknya melebihi rata-rata pergeseran lainnya.

 



 

Tracking fitur user bisa dilakukan secara online maupun offline. Untuk offline hanya digunakan sebagai ujicoba keakuratan sistem saja.

 

1.4  Pengiriman Data

Analisa pengiriman titik-titk fitur menggunakan send( ) :

Banyak data           = jumlah koordinat X * jumlah koordinat Y * Nomer Urutan Titik

                                 = 35 * 35 * 35

                                 = 42875

Waktu yang dibutuhkan =  0.66 / second

Kecepatan pengiriman            = banyak  data / waktu yang dibutuhkan

                =  42875 / 0.66

                =  64962,1212

Jadi kecepatan pengiriman data adalah  64962,1212 data / second

 

 

 

1.5  Texture Mapping

Pada tahap terakhir ini, pergerakan fitur-fitur wajah sulit ditampilkan dikarenakan perubahan titik-titik koordinat yang cepat sekali.

 


Sistem 3D Teleconference ini disajikan dalam library PLIB yang mampu memberikan GUI sesuai kebutuhan.

 


 

Pada Gambar 4.5 tampak tampilan interface program client yang berfungsi untuk mendeteksi titik. Window yang berwarna biru adalah GUI dari client sedangkan window yang berwarna merah adalah GUI dari server. Jadi nantinya akan berjalan dua buah aplikasi.

3D Teleconference (..3)

3. IMPLEMENTASI

Pada penelitian ini menggunakan tiga buah library sebagai dasar pemrogramannya, yaitu OpenGL , PLIB, socket.

 

3.1 OpenGL di Linux

OpenGL adalah software (perangkat lunak) interface perangakat keras grafik. Interface ini terdiri dari sekitar 150 command atau perintah yang berbeda yang bias digunakan untuk menentukan objek dan operasi yang dibutuhkan untuk menghasilkan aplikasi tiga dimensi yang interaktif.

Fungsi-fungsi OpenGL dimuat didalam 2 library  yang disebut dengan gl dan glu (atau GL dan GLU). Library yang pertama, adalah fungsi utama dari OpenGL, berisi semua fungsi OpenGL yang dibutuhkan sedangkan yang kedua, the openGL Utility Llibrary (GLU) memuat fungsi yang ditulis menggunakan fungsi dari library utama dan sangat membantu bagi pengguna. Fungsi utama mempunyai nama yang diawali dengan “gl” seperti “glVertex3f()”, sedangkan fungsi didalam GLU mempunyai nama yang diawali dengan “glu” seperti “gluOrtho2D()”.

 

3.2 PLIB

PLIB merupakan singkatan dari Portable Game Library.  PLIB merupakan kumpulan pustaka yang mendukung untuk pembuatan sebuah aplikasi grafik yang menggunakan bahasa pemrograman C++ dan platform grafik openGL. Tujuan dari pembuatan PLIB ini untuk lebih memudahkan proses pembuatan sebuah aplikasi dalam menangani proses grafik seperti manajemen window, penanganan sistem suara, joystick, dan perangkat lainnya. PLIB dilengkapi dengan pustaka efek suara, 3D engine, Font Rendering, pustaka window sederhana, script bahasa pemrograman game, pustaka metematis 3D, dan koleksi pustaka lainnya.

Seluruh API yang terdapat dalam pustaka PLIB dibangun dengan arsitektur permrograman berorientasi obyek, hal ini akan lebih memudahkan ketika penanganan atau pemanggilan obyek yang telah dibuat. PLIB berjalan dalam platform sistem operasi Windows dan Linux dengan lisensi open source. Saat ini PLIB versi terbaru adalah 1.8.4, kode source bisa di dapat di alamat situs http://plib.sourceforge.net/download.html.

 

3.3 Socket Programming

Interface  socket  merupakan  bagian  dari  Application  Programming  Interface  (API)  yang digunakan untuk protokol komunikasi. Application Programming Interface (API) dapat digunakan oleh user untuk dapat membuat suatu  aplikasi.  Sedangkan  untuk  fasilitas  jaringannya  dapat  menggunakan  API  bagian SOCKET.

Dalam penelitian ini, library socket digunakan untuk pengiriman data file bitmap dan data koordinat hasil tracking.

3D Teleconference (..1)

Video teleconference merupakan sarana berkomunikasi antar orang melalui media jaringan. Seperti kita ketahui bahwa video teleconference menggunakan bandwith yang cukup besar karena data yang dikirim berupa data video.

Penggunaan metode baru untuk video teleconference juga semakin dikembangkan. Metode yang dikembangkan berdasarkan efisiensi pemakaian sarana, seperti bagaimana caranya meminimalisasi pemakaian bandwith. Untuk meminimalisasi digunakan suatu teknik, yaitu data video tersebut diganti dengan data ordinat fitur wajah yang mengalami perubahan. Data tersebut akan disinkronisasikan terhadap gambar animasi 3D sehingga diperoleh animasi yang real time.Untuk mendapatkan sebuah model 3D, pertama kali dilakukan adalah clustering sampel kulit yang kemudian digunakan untuk pendeteksian titik-titik fitur wajah, dimana titik-titik tersebut digunakan sebagai dasar penjejakan titik. Data-data hasil penjejakan akan dikirimkan ke user lain untuk dibangun sebuah wireframe dan teksture mapping. Komunikasi ini bersifat dua arah atau lebih, sehingga tercipta suatu teleconference.

Dari seluruh metode tersebut, penelitian ini sudah dapat melakukan pendeteksian fitur-fitur wajah untuk dikirimkan dan menjadi pemodelan 3 dimensi. Sehingga dapat digunakan sebagai alternatif teleconfernce dengan bandwith yang kecil..

Kata kunci : pendeteksian titik-titik fitur wajah, penjejakan titik-titik fitur wajah, socket programming, teksture mapping

Continue reading ‘3D Teleconference (..1)’

3D Teleconference (..2)

Video Teleconference is a tool for human communication through networking. As we know that video teleconference use a big size of bandwith because it send video data through network

New method for video teleconference has been more and more developed. A method that developed based on utility efficiency, such as how to minimize bandwith requirement.. To minimize it, videos data are replaced by coordinate of changing face feature points. Those data will be synchronize to 3D model, the result is 3D animation real time.The first step to get 3D model is clustering skin samples used for facial feature points detection, where these points used as a based of points tracking. The result of tracking will be sent to another user to be built as a wireframe and texture mapping. This communication is two or more ways, so it will create teleconference.

From those methods, this research has able to do facial features detection for sent as 3 dimension model. So it can used as teleconference alternative with small bandwith.

Keywords : facial feature points detection, facial feature points tracking, socket programming, texture mapping.

2. LANDASAN TEORI

1.1 PENDETEKSIAN TITIK-TITIK FITUR WAJAH

Pendeteksian titik fitur wajah adalah suatu ilmu dimana objek wajah akan diproses untuk mendapatkan titik-titik fitur yang kita inginkan.

START

r= √ (x*x) + (y*y)

Skin Region

Gray Scale + Inversi Skin

Operator Sobel + Gaussian Filter

Integral Projection

Horisontal Integral Projection

Vertical Integral Projection

Points detection

Save points

Send Points

Adapaun prosedur pendeteksian titik-titik tersebut melalui beberapa proses :

  1. Pencarian image daerah kulit

Pencarian image daerah kulit dapat dilakukan dengan cara membandingkan tiap piksel image dengan hasil clustering sampel kulit. Bila eucludiean distancenya kurang dari batas yang ditentukan berarti piksel tersebut mirip atau sama dengan warna kulit.

  1. Pencarian lokasi wajah

Integral projection adalah suatu metode untuk menjumlahkan nilai piksel tiap baris perkolom dan tiap kolom per baris untuk kemudian di rata-rata. Nilai treshold inilah yang digunakan sebagai bahan perbandingan, jika nilainya lebih dari treshold maka image yang sebelumnya telah dicari lokasi kulitnya tersebut termasuk daerah wajah.

  1. Pencarian lokasi fitur-fitur wajah

Integral projection horisontal adalah metode untuk menjumlahkan nilai piksel tiap baris per kolom dan integral projection vertical adalah metode untuk menjumlahkan nilai piksel tipa kolom per baris. Dari dua metode ini, lokasi fitur-fitur wajah dapat dicari.

  1. Pendeteksian titik-titik fitur wajah

Tidak ada metode khusus untuk mencari titik-titik fitur wajah, maka untuk mendapatkannya dilakukan penghitungan matematis secara manual.

1.2 TRACKING TITIK-TITIK FITUR WAJAH

Setiap titik fitur yang telah terdeteksi akan dicari pergeseran dan pergerakannya. Untuk mencari lokasi titik yang baru tersebut maka dilakukan penghitungan korelasi antara template titik dengan image asli. Besar kernel template titik ini adalah 7×7 dimana 48 piksel lainnya adalah piksel tetangga. Batas jarak pencariannya berdasarkan kecepatan suatu template mencari lokasinya yang baru.

1.3 PENGIRIMAN DATA

Socket programming adalah salah satu pemrograman jaringan. Salah satu library dari socket programming ini adalah send () dan sendfile( ). Kedua fungsi ini sudah terdapat dalam library socket dalam sistem operasi Linux dan dalam bahasa C. Fungsi send dapat digunakan untuk pengiriman titik-titik koordinat hasil tracking melalui buffer. Sedangkan fungsi sendfile( ) digunakan untuk melakukan pengiriman file bitmap model yang ditangkap pertama kalinya sebagai bahan untuk teksture mapping wireframe pada server nantinya.

 
   

Setiap PC nantinya akan bertugas ganda yaitu sebagai client dan server, sehingga setiap user akan saling mengirimkan datanya dan menerima data koordinat.

1.4 TEXTURE MAPPING

Wireframe adalah suatu kesatuan jaringan polygon yang dibuat dari titi-titik yang dihubungkan oleh garis. Wireframe model adalah suatu jaring polygon dimana koordinat titik-titiknya berasal dari pendeteksian fitur-fitur model. Teksture mapping merupakan teknik pemetaan sebuah tekstur pada pola gambar wireframe, dimana wirefram yang telah dibuat akan ditampilkan memiliki kulit luar seperti tekstur yang diinginkan. Karena koordinat yang dikirmkan oleh client berubah-ubah maka koordinat pada wireframe ikut berubah pula dan pola tekstur mapping akan berubah pula.

Gambar 1.5 Teksture mapping 3 dimensi

Continue reading ‘3D Teleconference (..2)’


  • Ngintip Doank Gak Kasih Comment??



    He3 emang enak di timpuk..
  • Daftarin jd blog favo kamuh..

    Add to Technorati Favorites

    Blog Stats

    • 10,541 hits
  • Wanna Chat WIth Me:

  • Yang lagi Nongkrong

    web tracker