PENGGUNAAN FITUR ANGULAR INVARIANT UNTUK REGISTRASI OBYEK 3D
Robby Hartanto Wiyono – 2206 100 174 Jurusan Teknik Elektro – FTI, Institut Teknologi Sepuluh Nopember Kampus ITS, Keputih-Sukolilo, Surabaya-60111, Email:
[email protected]
Abstrak - Sampai saat ini perkembangan teknologi khususnya bidang komputer grafik yang berkaitan dengan citra 3 dimensi (3D) terus meningkat. Salah satu hal yang berkaitan dengan teknologi 3D adalah registrasi 3D. Registrasi 3D masih dalam tahap pengembangan. Selama ini registrasi 2D-lah yang sudah ada dan siap digunakan. Registrasi 3D dapat digunakan salah satunya untuk menemukan pasangan titik pada 2 obyek 3D. Dengan diketahui pasangan titik dari 2 obyek 3D, dapat dilakukan manipulasi terhadap obyek 3D. Contohnya : menggabungkan potongan-potongan obyek 3D menjadi satu obyek 3D yang utuh. Dalam tugas akhir ini akan dibuat sebuah aplikasi untuk mengimplementasikan proses registrasi 3D dengan menggunakan fitur angular invariant. Fitur ini merupakan hasil inspirasi dari curvature feature dan vektor normal. Fitur angular invariant diperoleh dari sudut yang dibentuk oleh vektor normal pada permukaan suatu obyek 3D. Setelah diperoleh nilai dari fitur angular invariant dilakukan proses registrasi. Hasil yang diperoleh menunjukkan adanya error rata-rata sebesar 2,9395 dan waktu kompilasi rata-rata selama 4,36 detik.
I. PENDAHULUAN Seiring berkembangnya teknologi di bidang Teknologi Informasi, Teknologi 3D juga ikut berkembang. Hal ini dapat kita lihat dengan semakin maraknya penggunaan animasi 3D dalam dunia entertaintment (contohnya : film Avatar yang memenangkan 3 nominasi sekaligus yaitu : Best Art Director, Best Cinematography dan Best Visual Effects). Obyek animasi yang digunakan tidak lain berasal dari obyek nyata. Suatu obyek nyata dapat direkonstruksi ulang menggunakan komputer dan kamera sehingga terbentuk suatu citra 3D yang mirip dengan obyek sebenarnya. Untuk dapat melakukan rekonstruksi 3D, pertama perlu dilakukan pengambilan gambar obyek tersebut. Dari gambar-gambar obyek yang telah diambil dilakukan registrasi terlebih dahulu sebelum dapat disusun menjadi citra 3D yang menyerupai obyek yang diamati. Proses registrasi ini dapat dilakukan dengan metode ICP (Iterative closest Point). Sebelumnya sudah banyak digunakan variant dalam metode ICP. Contohnya normal feature dan curvature feature. Registrasi menggunakan normal feature dan curvature feature membutuhkan waktu yang cukup lama dalam proses registrasi. Untuk mengatasi masalah waktu yang lama dalam proses registrasi di atas, maka dikembangkan fitur tambahan yang disebut angular invariant feature. Dengan menggunakan angular
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI‐ITS
invariant feature waktu untuk menyelesaikan proses registrasi dapat dipersingkat dan hasil yang didapatkan juga cukup memuaskan. II. DASAR TEORI 2.1. Komputer Grafis Perkembangan dunia komputer grafis telah membuat komputer lebih mudah untuk berinteraksi dan lebih baik dalam memahami berbagai jenis data. Perkembangan komputer grafis memiliki dampak yang mendalam pada banyak media dan telah merevolusi industri video games dan animasi. Istilah komputer grafis dalam arti luas digunakan untuk menggambarkan "segala sesuatu pada komputer yang tidak berupa teks atau suara". Biasanya, istilah grafik komputer merujuk pada beberapa hal: Representasi dan manipulasi data gambar oleh komputer Berbagai teknologi yang digunakan untuk membuat dan memanipulasi gambar Gambar yang dihasilkan Sub-bidang ilmu komputer yang mempelajari metode untuk mensintesis digital dan memanipulasi konten visual Saat ini, komputer dengan gambar yang dihasilkannya telah menyentuh banyak aspek kehidupan sehari-hari kita. Citra komputer ditemukan di televisi, di koran, misalnya dalam laporan cuaca, atau misalnya dalam semua jenis penyelidikan medis dan prosedur operasi. Grafik komputer yang dibuat dengan baik dapat menyajikan statistik kompleks ke dalam bentuk yang lebih mudah untuk dipahami dan ditafsirkan. Secara umum, ada 2 macam citra komputer yang kita kenal, yaitu komputer grafis 2D dan komputer grafis 3D. Komputer grafis 2D adalah citra digital yang dibuat berbasis komputer, sebagian besar dari model dua dimensi, seperti model 2D geometris, teks, dan gambar digital. Komputer grafis 3D adalah grafis yang menggunakan representasi data geometris tiga dimensi yang disimpan dalam komputer untuk keperluan melakukan perhitungan dan rendering citra 2D. 2.2. 3 Dimensi 2.2.1. Definisi Obyek 3 Dimensi Obyek 3 dimensi (biasa disebut 3D) adalah sekumpulan titik-titik 3D (x,y,z) yang membentuk luasan-luasan (face) yang digabungkan menjadi satu
1
kesatuan.Face adalah gabungan titik-titik yang membentuk luasan tertentu atau sering dinamakan dengan sisi. Obyek 3D memiliki besaran panjang, lebar dan tinggi, obyek 3D juga memiliki volume. Contoh dari obyek 3D adalah benda-benda yang ada di sekitar kita yang memiliki volume (kursi, bola, meja, dll). Perbedaannya dengan obyek 2D yang paling utama adalah obyek 2D hanya memiliki 2 besaran (panjang dan lebar), sedangkan obyek 3D memiliki 3 besaran (panjang, lebar dan tinggi). 2.2.2. Model 3D Hampir semua model 3D dapat dibagi menjadi dua kategori. Solid - Model ini menentukan volume dari obyek yang diwakili (seperti batu). Model ini lebih realistis, tapi lebih sulit untuk dibuat. Solid model banyak digunakan untuk simulasi nonvisual seperti dalam bidang medis dan bidang teknik, untuk CAD dan plikasi visual khusus seperti ray tracing dan constructive solid geometry. Shell/boundary - model 3D ini mewakili permukaan, misalnya batas dari sebuah obyek, bukan volume (seperti kulit telur bagian luar yang amat sangat tipis). Model ini lebih mudah dibuat daripada model solid. Hampir semua model visual yang digunakan dalam permainan dan film yang ada adalah model shell. 2.3. Titik Pada bidang geometri, topologi, atau cabang lain bidang matematika, sebuah titik dideskripsikan sebagai sebuah obyek pada ruang tertentu yang mengandung unsur volume, area, panjang, atau ukuran dimensi yang lain. Dengan demikian, sebuah titik adalah obyek 0 dimensi. Sebuah titik merupakan konsep geometri yang paling mendasar, karenanya titik sering digunakan sebagai sebuah bentuk dalam unsur pokok dasar pada bidang geometri,fisika, grafis vektor, dan bidang lainnya. 2.4. Sistem Koordinat Pada bidang matematika dan pengembangannya, sistem koordinat adalah sistem untuk memberikan angka atau nilai skalar n pada sebuah titik dalam dimensi n. Skalar pada banyak kasus diartikan sebagai angka real, tapi dapat juga berupa bilangan kompleks atau sebuah element dari nilai yang dapat berubah. Sistem koordinat yang umum digunakan adalah sistem koordinat kartesian. 2.4.1. Sistem Koordinat Kartesian 2D Sistem Koordinat Kartesian 2 dimensi mempunyai dua sumbu untuk menyatakan tempat kedudukan suatu titik. Sumbu pertama dengan arah horisontal disebut sebagai sumbu x dan sumbu dengan arah vertikal disebut sebagai sumbu Y. Titik pertemuan kedua sumbu tersebut digunakan sebagai titik acuan 0,0. Tepat kedudukan suatu titik dinyatakan jarak titik tersebut sepanjang sumbu X dari titik 0,0 dan jarak sepanjang simbu Y dari titik 0,0.
Gambar 2.4.1 Sistem Koordinat Kartesian 2D
2.4.2. Sistem Koordinat Kartesian 3D Sistem koordinat kartesian 3D diguanakan 3 buah sunbu untuk menyatakan tempat kedudukan suatu titik. Selain mempunyai sumbu X dan sumbu Y pada sistem koordinat kartesian digunakan pula sebuah sumbu lagi yang tegak lurus terhadap sumbu X dan sumbu Y dan dinamakan sebagai sumbu Z. Tempat kedudukan suatu titik dinyatakan sebagai jarak titik tersebut sepanjang sumbu X,Y dan Z yang diukur dari pusat sumbu titik 0,0,0.
Gambar 2.4.2 Sistem Koordinat Kartesian 3D
2.5. Vektor Vektor dapat disajikan secara geometris sebagai ruas garis berarah atau panah dalam ruang 2 dimensi maupun ruang 3 dimensi. Arah panah menunjukkan arah vektor dan panjang vektor menunjukkan besarnya. Ekor dari suatu vektor disebut dengan titik pangkal vektor, dan ujung panah vektor disebut titik ujung vektor. Vektor dikatakan sama apabila besar dan arahnya sama. Cara mendefinisikan vector : a = 3i + 5j + 9k artinya vektor a sebesar 3 satuan ke arah sumbu-x, 5 satuan ke arah sumbu-y, 9 satuan ke arah sumbu-z. Penulisan vektor harus menggunakan huruf tebal atau dengan member tanda panah di atasnya. Ditunjukkan pada gambar 2.5.
Gambar 2.5 Contoh Vektor
2.5.1. Besar Suatu Vektor Vektor adalah besaran yang memiliki nilai dan arah, tentunya vector juga memiliki nilai yang menunjukkan
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI‐ITS
2
besar vektor tersebut. Biasa dilambangkan dengan simbol | |. Contoh vektor a = a1i+a2j+a3k, maka besar vektor a adalah : | | = √ 1 + 2 + 3 ...................................(2.5.1) 2.5.2. Perkalian Titik Antara 2 Vektor Jika a dan b adalah vektor-vektor dalam ruang berdimensi-2 atau berdimensi-3, dan adalah sudut θ antara a dan b (pada gambar 2.5.2), maka hasil kali titik atau hasil kali dalam Euclidean a.b didefinisikan sebagai: .
= | |. | | cos θ ...........................................(2.5.2)
2.6. Fitur Angular Invariant Fitur ini merupakan hasil inspirasi dari vektor normal. Vektor normal nilainya selalu berubah-ubah apabila dilakukan pergeseran ataupun rotasi. Sehingga diperlukan fitur pengganti untuk mengantisipasi perubahan terhadap transformasi matriks. Angular artinya sudut. Invariant artinya tidak berubah. Jadi artinya adalah fitur sudut yang nilainya tetap. Fitur ini dikatakan tetap, karena nilai dari fitur ini tidak akan berubah walaupun dilakukan transformasi matriks (translasi, rotasi, dilatasi). Fitur ini diperoleh dengan menghitung sudut yang terbentuk antara satu vektor normal dengan vektor normal disekitarnya. Ditunjukkan pada gambar 2.6.
Persamaan di atas terpenuhi jika a, b ≠ 0. Jika a atau b bernilai 0, maka hasil kali titik adalah 0.
Gambar 2.5.2 Vektor a dan b membentuk sudut θ Gambar 2.6 Fitur Angular Invariant
2.5.3. Perkalian Silang Antara 2 Vektor Jika a = (a1,a2,a3) dan b = (b1,b2,b3) adalah vektor-vektor dalam ruang berdimensi 3, maka hasil perkalian silangnya adalah : a x b = (a2.b3-a3.b2, a3.b1a1.b3, a1.b2-a2.b1) atau dalam notasi determinan : =
2 2
3 ,− 3
1 1
3 , 3
1 1
2 …..(2.5.3) 2
Gambar perkalian 2 vektor ditunjukkan pada gambar 2.5.3.
III. DESAIN DAN IMPLEMENTASI SISTEM Desain Sistem Dalam penelitian ini, proses registrasi menggunakan fitur angular invariant diuji cobakan dengan menggunakan beberapa pasang input, di mana tiap-tiap pasangan input berupa obyek 3D. Obyek 3D yang dimaksudkan di sini adalah sekumpulan titik yang membentuk suatu permukaan 3D. Titik-titik tersebut sebelumnya didefinisikan melalui software matlab, sehingga titik-titik tersebut mewakili posisi dalam koordinat kartesian (x, y, z). Dari titik-titik yang ada, dicari vektor normal permukaan pada titiktitik tersebut, ditunjukkan pada gambar 3.1.
Gambar 2.5.3 Perkalian dua Vektor
2.5.4. Vektor Normal Vektor normal sama halnya dengan vektor, namun yang dimaksud vector normal biasanya dihubungkan dengan suatu bidang. Vektor normal memiliki arah yang tegak lurus terhadap suatu permukaan bidang pada titik tertentu. Contohnya pada gambar 2.5.4, vektor n tegak lurus terhadap permukaan I di titik p.
Gambar 3.1 Vektor Normal Permukaan
Setelah diperoleh vektor normal pada setiap titik, maka dipilih titik-titik tertentu untuk dijadikan sebagai sampel atau acuan dan dicari fitur angular invariant dari titik-titik sampel tersebut. Apabila fitur angular invariant sudah diperoleh maka proses registrasi Gambar 2.5.4 Vektor Normal
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI‐ITS
3
dilakukan. Registrasi dilakukan dengan membandingkan nilai dari fitur angular invariant antar pasangan input. Pemilihan Lingkungan 3..1 Pemilihan Perangkat Lunak Dalam tugas akhir ini digunakan sistem operasi Windows XP Professional version 2002 Service Pack 2 32 bit. Software yang digunakan untuk membuat obyek 3D, menghitung vektor normal, mencari fitur angular invariant dan sampai registrasi seluruhnya menggunakan software Matlab. 3..2 Pemilihan Perangkat Keras Adapun perangkat keras yang digunakan dalam tugas akhir ini adalah sebuah komputer dengan spesifikasi seperti tabel 3.2.2. Processor
:
Memory
: : :
VGA Operating System
Intel®Pentium®processor T4300 (2,1 GHz, 800MHz FSB) 3GB DDR2 Intel®GMA 4500M (On Board) Windows XP Professional SP 2 - 32 bit
IV. PENGUJIAN SISTEM Pengujian proses registrasi menggunakan fitur angular invariant menggunakan obyek sebagai berikut : [x,y]=meshgrid(-2:.1:6); r=sqrt(x.^2+y.^2); z=sin(r)*cos(r); [x1,y1]=meshgrid(-1:.1:0); r1=sqrt(x1.^2+y1.^4); z1=sin(r1)*cos(r1); ditunjukkan gambar 4.1 [x,y]=meshgrid(-2:.1:6);r=sqrt(x.^2+y.^2); z=sin(r)*cos(r);[x1,y1]=meshgrid(-1:.1:0); r1=sqrt(x1.^2+y1.^2); z1=sin(r1)*cos(r1); ditunjukkan gambar 4.2 [x,y]=meshgrid(-1:.1:7); r=sqrt(x.^2+y.^2); z=sin(r)*cos(r); [x1,y1]=meshgrid(-1:.1:0); r1=sqrt(x1.^2+y1.^2); z1=sin(r1)*cos(r1); ditunjukkan gambar 4.3 [x,y]=meshgrid(-4:.1:6); r=sqrt(x.^2+y.^2); z=sin(r)*sin(r)*cos(r); [x1,y1]=meshgrid(1:.1:0); r1=sqrt(x1.^4+y1.^2); z1=sin(r1)*cos(r1); ditunjukkan gambar4.4
Tabel 3.2.2 Spesifikasi Perangkat Keras
Implementasi Sistem Sebagai contoh implementasi sistem ini pada sebuah permukaan 3D, akan diujicobakan pada sebuah permukaan pada gambar 3.3. Dari gambar tersebut akan dicari vektor normalnya, ditunjukkan pada gambar 3.4. Menentukan vektor normal dapat dilakukan dengan perkalian silang antara dua vektor. Kemudian dilakukan perhitungan fitur angular invariant dan proses registrasi. Fitur angular invariant ini terbentuk antara vector normal yang dipilih sebagai sample dan vektor normal sekitarnya. Proses registrasi dilakukan dengan metode iterasi untuk mendapatkan perbedaan yang terkecil antara dua obyek. Gambar 4.1 Obyek I
Gambar 3.3 Contoh Permukaan 3D Gambar 4.2 Obyek II
Gambar 3.4 Vektor Normal Permukaan 3D
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI‐ITS
Gambar 4.3 Obyek III
4
pasangan obyek tersebut adalah 81x81x81 untuk permukaan yang besar, dan 11x11x11 untuk permukaan yang kecil. Nilai perbedaan antara dua obyek sebesar 2,0505 dan waktu yang diperlukan untuk keseluruhan prosesnya adalah 17,94 detik. Hasil pengujian yang dilakukan sangat memuaskan, dengan nilai perbedaan dua obyek yang kecil diperoleh hasil pada gambar 4.7.
Gambar 4.4 Obyek IV
4.1 Hasil Pengujian Pasangan Obyek I Pada pengujian pasangan obyek pertama ini dapat dilihat hasilnya seperti gambar 4.5. Dimensi dari pasangan obyek tersebut adalah 41x41x41 untuk permukaan yang besar, dan 11x11x11 untuk permukaan yang kecil. Nilai perbedaan antara dua obyek sebesar 3,688 dan waktu yang diperlukan untuk keseluruhan prosesnya adalah 4,11 detik. Hasil registrasi memberikan hasil yang cukup memuaskan, dengan perbedaan kedua obyek yang paling besar di antara pasangan obyek yang ada.
Gambar 4.5 Hasil I
4.2 Hasil Pengujian Pasangan Obyek II Pada pengujian pasangan obyek pertama ini dapat dilihat hasilnya seperti gambar 4.6. Dimensi dari pasangan obyek tersebut adalah 81x81x81 untuk permukaan yang besar, dan 11x11x11 untuk permukaan yang kecil. Nilai perbedaan antara dua obyek sebesar 2,7140 dan waktu yang diperlukan untuk keseluruhan prosesnya adalah 20,98 detik. Hasil registrasi menunjukkan adanya ketidak sesuaian antara dua obyek yang digunakan dan hasil ini cukup memuaskan mengingat nilai perbedaan kedua obyek adalah kedua terbesar dari keseluruhan pasangan obyek yang digunakan.
Gambar 4.6 Hasil II
Gambar 4.7 Hasil III
4.4 Hasil Pengujian Pasangan Obyek IV Pada pengujian pasangan obyek pertama ini dapat dilihat hasilnya seperti gambar 4.8. Dimensi dari pasangan obyek tersebut adalah 101x101x101 untuk permukaan yang besar, dan 11x11x11 untuk permukaan yang kecil. Nilai perbedaan antara dua obyek sebesar 2,0553 dan waktu yang diperlukan untuk keseluruhan prosesnya adalah 30,67 detik. Hasil yang diperoleh dari pesangan obyek ini kurang memuaskan, karena dengan nilai perbedaan yang kecil diperoleh hasil yang menunjukkan hanya sedikit kemiripan di antara dua obyek yang digunakan. Hal ini mungkin disebabkan karena penggunaan fungsi transformasi matriks yang kurang tepat untuk pasangan obyek ini.
Gambar 4.8 Hasil IV
Dari hasil pengujian terhadap pasangan-pasangan input yang ada, dapat dianalisa bahwa semakin besar ukuran obyek yang dilibatkan dalam proses registrasi maka semakin lama waktu yang diperlukan untuk melakukan registrasi. Ukuran obyek tidak menentukan nilai perbedaan antara obyek satu dengan yang lain. Faktor yang mempengaruhi besar perbedaan antara dua obyek adalah bentuk obyek-obyek itu sendiri. Hal ini karena semakin berbeda bentuk permukaan obyek tersebut, maka perbedaan nilai dari fitur angular invariant semakin besar dan gambar atau hasil yang diperoleh dari hasil pengujian semakin terlihat ketidak miripannya.
4.3 Hasil Pengujian Pasangan Obyek III Pada pengujian pasangan obyek pertama ini dapat dilihat hasilnya seperti gambar 4.7. Dimensi dari
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI‐ITS
5
V. PENUTUP 5.1 Kesimpulan Dari hasil pengujian registrasi 3D menggunakan fitur angular invariant, dapat ditarik kesimpulan sebagai berikut : • Waktu untuk menyelesaikan proses registrasi pada obyek berukuran lebih besar membutuhkan waktu yang lebih lama dibandingkan dengan obyek yang lebih kecil. • Kemiripan obyek tidak tergantung dari ukurannya, namun tergantung dari nilai perbedaan yang dihasilkan dalam proses registrasi. • Proses registrasi 3 dimensi dapat dilakukan dengan hasil yang cukup memuaskan dengan menggunakan fitur Angular Invariant. 5.2 Saran Untuk penelitian registrasi 3D berikutnya, alangkah baiknya apabila dibandingkan dengan metode registrasi 3D menggunakan fitur angular invariant ini. Hal ini karena waktu yang dibutuhkan untuk melakukan proses registrasi tidak memakan banyak waktu dan hasil registrasi dengan perbedaan nilai yang kecil menunjukkan hasil yang cukup memuaskan. Diharapkan pula pengembangan metode registrasi ini dengan menggunakan cara perhitungan yang lain yang mungkin dapat meningkatkan kualitas keluarannya.
Saat di bangku kuliah, penulis mulai tertarik dengan bidang ilmu komputer, maka penulis memutuskan untuk memilih bidang studi Teknik Komputer dan Telematika pada semester 5. Kemudian penulis juga ikut serta dalam keanggotaan lab B201, dan mulai tertarik dengan salah satu tim penelitian di bidang studi TKT. Hingga akhirnya penulis memutuskan untuk menjadikan ketertarikannya pada penelitian itu sebagai motivasi untuk memilih topik penelitian Motion Capture sebagai topik dari Tugas Akhirnya.
DAFTAR PUSTAKA J. Jun, C. Jun, C. Xinglin. “Registration for 3-D Point Cloud Using Angular-Invariant Feature”. 2009. Anton, Howard. “Dasar-Dasar Aljabar Linear”. Interaksara. Mei 1994. Cornell University Program of Computer Graphics. “What is Computer Graphics?”. 15 April 1998. Friendly, Michael. “Milestones in the history of thematic cartography, statistical graphics, and data visualization”. 2008. Greenberg, Ira. “Processing: Creative Coding and Computational Art”. Apress. ISBN 159059617X. 2007. University of Leeds ISS. “What are computer graphics?”. 22 September 2008. RIWAYAT PENULIS Robby Hartanto Wiyono dilahirkan di Blitar pada tanggal 6 April 1988, merupakan anak kedua dari dua bersaudara. Menempuh pendidikan pertama kali di TK Santa Maria Blitar, kemudian melanjutkan pendidikan dasar di SDK Santa Maria Blitar, pendidikan menengah pertama di SMP Negeri 1 Blitar, dan pendidikan menengah atas di SMA Negeri 1 Blitar. Setelah lulus SMA memilih untuk melanjutkan pendidikan tingginya di Jurusan Teknik Elektro, Fakultas Teknologi Industri ITS.
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI‐ITS
6