II TINJAUAN PUSTAKA 2.1 Ensiklopedia Ensiklopedia (/énsiklopédia/) adalah sejumlah tulisan yang berisi penjelasan, yang menyimpan informasi secara komprehensif dan cepat dipahami serta dimengerti mengenai keseluruhan cabang ilmu pengetahuan atau khusus. Dalam satu cabang ilmu pengetahuan tertentu yang tersusun dalam bagian artikel-artikel dengan satu topik bahasan pada tiap-tiap artikel yang disusun berdasarkan abjad, kategori atau volume terbitan dan pada umumnya tercetak dalam bentuk rangkaian buku yang tergantung pada jumlah bahan yang disertakan. Kata "ensiklopedia" diambil dari bahasa Yunani; enkyklios paideia (ἐγκύκλιος παιδεία) yang berarti sebuah lingkaran atau pengajaran yang lengkap. Maksudnya ensiklopedia itu sebuah pendidikan paripurna yang mencakup semua lingkaran ilmu pengetahuan. Seringkali ensiklopedia dicampurbaurkan dengan kamus dan ensiklopedia-ensiklopedia awal memang berkembang dari kamus. Perbedaan utama antara kamus dan ensiklopedia ialah bahwa sebuah kamus hanya memberikan definisi setiap entri atau lemma dilihat dari sudut pandang linguistik atau hanya memberikan kata-kata sinonim saja, sedangkan sebuah ensiklopedia memberikan penjelasan secara lebih mendalam dari yang kita cari. Sebuah ensiklopedia mencoba menjelaskan setiap artikel sebagai sebuah fenomena. Atau lebih singkat: kamus adalah daftar kata-kata yang dijelaskan dengan kata-kata lainnya sedangkan sebuah ensiklopedia adalah sebuah daftar hal-hal yang kadang kala dilengkapi dengan gambar untuk lebih menjelaskan. ( Anonim,2010a) 2.2 Ilmu Pengetahuan Alam Ilmu pengetahuan alam atau sains (science) diambil dari kata latin Scientia yang arti harfiahnya adalah pengetahuan, tetapi kemudian berkembang menjadi khusus Ilmu Pengetahuan Alam atau Sains. Sains merupakan kumpulan pengetahuan dan proses. Sains adalah kumpulan pengetahuan dan cara-cara untuk mendapatkan dan mempergunakan pengetahuan itu. Sains merupakan produk dan proses yang tidak dapat dipisahkan. Sains sebagai proses merupakan langkah-langkah yang ditempuh para ilmuwan untuk melakukan penyelidikan dalam rangka mencari penjelasan tentang gejala-gejala alam. Langkah tersebut adalah merumuskan masalah, merumuskan hipotesis, merancang eksperimen, mengumpulkan data, menganalisis dan akhimya menyimpulkan. Dari sini tampak bahwa karakteristik yang mendasar dari Sains ialah kuantifikasi artinya gejala alam dapat berbentuk kuantitas. ( Anonim,2010b) 2.3 Tata Surya Sampai saat ini teori lanetesimal telah menghasilkan banyak hal baru dalam cosmogony. Pada dasarnya untuk mempelajari Tata Surya ada enam hal yang dijadikan syarat batas, yaitu; 1. Tata Surya terdiri dari objek-objek benda langit yang bergerak pada bidang orbit yang dikontrol oleh gravitasi Matahari.Objek ini mengalami tekanan radiasi atau ber interaksi dengan (angin Matahari) solar wind. 2. Hal pertama yang perlu kita ketahui adalah massa total objek di dalam Tata Surya menunjukkan fraksi kurang dari 0,0015 massa Matahari dan yang kedua adalah kebanyakan dari anggota Tata Surya mengorbit dekat dengan bidang ekuator Matahari. 3. Planet merupakan objek yang massive di dalam Tata Surya, memiliki Orbit yang hampir lingkaran, mengitari Matahari, dan berada pada rentang jarak heliosentrik antara 0,4 – 40 AU. Diameternya berkisar antara ribuan kilometer sampai lebih dari 100000 km. 4. Di antara lintasan Mars dan Jupiter, terdapat benda-benda kecil yang sebagai Asteroid atau planet minor. Asteroid mengorbit Dikenal mengitari Matahari dan berdiameter dari beberapa meter sampai dengan beberapa ratus kilometer. 5. Komet, objek yang lebih kecil dengan radius sekitar beberapa kilometer dan bergerak dalam orbit elip memiliki inklinasi tinggi terhadap bidang orbit Bumi, disebut juga bidang ekliptika. Objek lainnya adalah satelit,ang mengorbit mengitari planet. 6. Medium antar planet (interplanetary medium), dalam Tata Surya terdiri dari butiran-butiran debu dan plasma. Plasma terdiri dari electron dan ion, yang sebagian besar berada didalam korona Matahari. ( Anonim,2010c) a. Mekanika Sistem Tata Surya Gambar 1. Anggota Tata Surya planet dan asteroid, komet bergerak dalam kaedah hukum Mekanika Sistem Tata Surya kita. 2.4 Pemodelan Dan Simulasi 2.4.1 Model Sebuah model adalah representasi yang disederhanakan dari suatu sistem di beberapa titik tertentu dalam waktu atau ruang dimaksudkan untuk mempromosikan pemahaman tentang sistem nyata. 2.4.2 Simulasi Simulasi merupakan teknik atau cara penyelesaian persoalan melalui pengolahan data operasi sistem imitasi untuk memperoleh data output penyelidikan atau percobaan penelitian sebagai bahan solusi persoalan ataupun sebagai bahan masukan dalam rangka pengembangan dan perbaikan struktur dan operasi sistem ril. Penggunaan sistem maya sebagai imitasi dari suatu sistem ril dapat memberikan keleluasaan dan kemudahan dalam melakukan penyelidikan dan percobaan penelitian dalam rangka penyelesaian persoalan. Simulasi dapat dirancang untuk menghasilkan output mengenai kemampuan dan kehandalan sistem serta karakteristik dan keadaan sistem sebagai masukan dalam rangka pengkajian pengembangan sistem dan optimasi hasil operasi sistem. Simulasi dapat diterapkan untuk menggantikan dan mewakili pelaksanaan penyelidikan dan percobaan penelitian ril yang dihadapkan dengan masalah ongkos yang mahal, resiko fatal, waktu yang terbatas dan sarana yang tidak memadai. Pemodelan dan Simulasi adalah suatu disiplin untuk mengembangkan tingkat pemahaman interaksi antara bagian-bagian dari sistem, dan sistem secara keseluruhan. Tingkat pemahaman yang mungkin akan dikembangkan melalui disiplin ini jarang dicapai melalui setiap disiplin lainnya. Sebuah sistem dipahami sebagai suatu entitas yang mempertahankan keberadaannya melalui interaksi bagian-bagiannya. Sebuah model adalah representasi yang disederhanakan dari sistem yang sebenarnya dimaksudkan untuk mempromosikan pemahaman. Apakah model adalah model yang baik atau tidak tergantung pada sejauh mana itu mempromosikan pemahaman. (Napitupulu,2009) 2.4.3 Model 3D model 3D merupakan sebuah objek 3D menggunakan koleksi poin dalam ruang 3D, dihubungkan dengan berbagai entitas geometris seperti segitiga, garis, permukaan melengkung, dan lain-lain menjadi pengumpulan data (poin dan informasi lainnya), model 3D dapat dibuat dengan tangan , algorithmically ( model prosedural ), atau scan . Saat ini, model 3D digunakan dalam berbagai bidang. Industri medis menggunakan model rinci organ. Industri film menggunakan mereka sebagai karakter dan objek untuk animasi dan kehidupan nyata film sektor ilmu menggunakan mereka sebagai model yang sangat rinci tentang senyawa kimia. Industri Arsitektur menggunakan mereka untuk menunjukkan bangunan yang diusulkan dan lanskap melalui Model Arsitektur Perangkat Lunak . Komunitas rekayasa menggunakan mereka sebagai desain perangkat baru, kendaraan dan struktur serta sejumlah kegunaan lain. Dalam dekade belakangan ini, ilmu bumi masyarakat telah mulai menyusun model 3D geologi sebagai standar praktek. ( Anonim,2010d) 2.5 Interaksi Manusia dengan komputer Model interaksi membantu untuk memahami apa yang terjadi pada interaksi antara user dan sistem. Model mengakomodasi apa yang diinginkan user dan yang dilakukan sistem. Interaksi Manusia dan Komputer (IMK) atau Human-Computer Interaction (HCI) adalah ilmu yang mempelajari tentang bagaimana mendesain, mengevaluasi, dan mengimplementasikan sistem komputer yang interaktif sehingga dapat digunakan oleh manusia dengan mudah. Interaksi adalah komunikasi dua arah antara manusia (user) dan sistem komputer. Interaksi menjadi maksimal apabila kedua belah pihak mampu memberikan stimulan dan respon (aksi & reaksi) yang saling mendukung. Jika salah satu tidak bisa, maka interaksi akan mengalami hambatan atau bahkan menuju pembiasan tujuan. IMK berkaitan dengan aspek-aspek interaksi antara manusia dan komputer sehingga dapat mencapai kondisi yang senyaman mungkin ketika pengguna bekerja di depan komputer untuk selang waktu yang lama. Fokus IMK adalah perancangan dan evaluasi antarmuka pemakai (user interface). User interface adalah bagian sistem komputer yang memungkinkan manusia berinteraksi dengan komputer dan menghasilkan sistem yang bermanfaat (usable) dan aman (safe), artinya sistem tersebut dapat berfungsi dengan baik. Sistem tersebut bisa untuk mengembangkan dan meningkatkan keamanan (safety), utilitas (utility), ketergunaan (usability), efektifitas (efectiveness) dan efisiensinya (eficiency). (Subakti,2006) 2.5.1 Komponen Interaksi Manusia dan Komputer a. User User adalah pengguna secara individu, kelompok pengguna yang bekerja Sama, atau kelompok organisasi yang berhubungan dengan bagian yang sama dari suatu proses atau kerja. Pengguna berusaha menyelesaikan pekerjaanya dengan menggunakan bantuan teknologi. b. Interaksi Interaksi merupakan komunikasi antara pengguna (User) dengan komputer baik secara langsung maupun tidak langsung. Interaksi tersebut melibatkan suatu dialog dengan umpan balik dan kontrol hasil kinerja dari suatu kerja. Interaksi yang baik antara pengguna dengan pemberi dapat memberikan suatu kemudahan dalam melakukan pekerjaan sehingga dapat menghasilkan suatu hasil yang diinginkan tepat waktu. c. Manusia (Humans) Dalam hal ini manusia di golongkan kedalam empat kriteria yaitu manusia sebagai pengguna atau User, manusia sebagai salah satu yang merancang sistem komputer itu ada, pengguna seharusnya dalam al ini menjadi prioritas yang utama, dan yang terakhir manusia sebagai Brainware yaitu orang yang menjalankan atau orang yang menggunakan kemampuan logikanya untuk bekerjasama dengan komputer. d. Komputer Komputer adalah suatu teknologi yang digunakan untuk mengontrol suatu proses atau sebuah sistem. Komputer ada bermacam-macam mulai dari komputer yang berskala kecil atau desktop sampai komputer dengan skala besar seperti komputer super. Komputer juga dapat ditempelkan (Embeded system) ke suatu benda. (Subakti,2006) 2.6 Library AR Toolkit Fokus dari 3D Graphic visualization adalah bagaimana menampilkan objek virtual ke dunia real secara real-time dengan menggunakan aplikasi ARToolkit. Dibutuhkan kamera untuk input video serta untuk men-tracking posisi dan orientasi terhadap marker yang ada di dunia real, marker sebagai tempat dimana objek 3D akan ditampilkan, dan komputer untuk komputasi proses dan menampilan. Pembuatan aplikasi AR harus mengacu pada outline berikut : 1. Menginisialisasi video capture, membaca file pola marker, dan parameter kamera. 2. Menangkap frame video. 3. Mendeteksi marker dan mengenali pola marker yang tertangkap pada frame video. 4. Mengkalkulasi nilai posisi dan orientasi kamera relatif terhadap marker. 5. Menggambar objek virtual diatas pola marker yang terdeteksi. 6. Menghentikan pengambilan video dan proses lain. Proses 2 sampai dengan 5 akan diulang secara terus menerus sampai aplikasi ini selesai, sementara proses 1 dan 6 hanya dijalankan pada saat inisialisasi dan selesainya aplikasi. 1. Initialize the video capture and read in the marker pattern files and camera parameters 2. Grab a video input frame. 3. Detect the markers and recognized patterns in the videoinput frame. 4. Calculate the camera transformation relative to the detected patterns.5. Draw the virtual objects on the detected patterns. the video capture down. Berikut adalah contoh main code suatu source code aplikasi ARToolkit: 6. Close int main(int argc, char **argv) { init(); arVideoCapStart(); argMainLoop( NULL, keyEvent, mainLoop ); return 0 ; } Step 1. Yang diwakili oleh fungsi init(); adalah tahap inisialisasi untuk memulai pengambilan gambar dari kamera, membaca parameter marker dan kamera, serta membuka window untuk menampilkan gambar. Selanjutnya aplikasi memasuki real-time state dengan memanggil fungsi pengambilan video yaitu fungsi arVideoCapStart(); Kemudian dimulailah proses 2 sampai 5 yang merupakan bagian utama dari aplikasi ARToolkit dimana pada contoh diatas terdapat di dalam fungsi argMainLoop( NULL, keyEvent, mainLoop ), Pada proses ke-5 yaitu menggambar objek virtual, pola marker akan diwakili oleh fungsi draw(); yang dipanggil didalam argMainLoop( NULL, keyEvent, mainLoop ); Fungsi ini terdiri dari 3 bagian yaitu: inisialisasi (initialize rendering); yaitu melakukan 3D rendering dengan cara memerintahkan ARToolkit untuk melakukan rendering objek 3D dan membangun suatu state minimal untuk OpenGL, men-setup matrix, dan menggambar objek 3D (render object). Berikut adalah source code dari fungsi draw() : double gl_para[16]; GLfloat mat_ambient[] = {0.0, 0.0, 1.0, 1.0}; GLfloat mat_flash[] = {0.0, 0.0, 1.0, 1.0}; GLfloat mat_flash_shiny[]= {50.0}; GLfloat light_position[] = {100.0,-200.0,200.0,0.0}; GLfloat ambi[] = {0.1, 0.1, 0.1, 0.1}; GLfloat lightZeroColor[] = {0.9, 0.9, 0.9, 0.1}; (Azuma, 2010) 2.7 AR Tracking Bagian ini menerangkan lebih lanjuttentang cara kerja ARtoolki, yaitu terutama proses mengidentifikasi marker dari video input frame sampai ditampilkannya objek virtual di atas marker. ARToolkit mendeteksi marker berdasarkan basic corner approach. Penjelasan singkat tentang prinsip ini dapat dilihat pada gambar berikut : a. Original image b. Thresholded image c. Connected component e. Extracted marker edges and corners d. Contours f. Fitted square Gambar 3. Pendeteksian sudut gambar Prinsip tracking ini merupakan bagian utama dalam ARToolkit yaitu merupakan proses Main Loop (Proses ke 2 sampai 5) dalam Outline aplikasi. Perlu diketahui ARToolkit menggunakan tiga sistem koordinat yang memegang peranan penting dalam proses tracking ini, yang pertama adalah Observed Screen Coordinates yaitu sistem koordinat dari monitor PC kita. Kedua Camera coordinate atau Camera ideal coordinat yaitu system koordinat dari kamera yang digunakan untuk menangkap input video frame, dan yang ketiga sistem koordinat dari marker itu sendiri. Hubungan antar posisi dan sistem koordinat mana yang dipakai sangat penting untuk menentukan letak marker dan proses rendering objek virtual ke atas marker. Berikut adalah ilustrasi dari ke tiga sistem koordinat tersebut : Gambar 4. Sistem Koordinat AR Proses tracking dimulai saat ARtoolkit menangkap video frame kemudian menganalisanya untuk mendeteksi marker. Untuk mendeteksi dan mengidentifikasi marker dilakukan proses treshholding, labeling, contour extraction, line corner estimation, dan identifikasi pola marker dengan cara membandingkan pola marker yang terdeteksi dengan file pola marker yang dibaca oleh program pada saat proses inisialisasi (proses ke-1 dalam outline aplikasi). Dari video frame tersebut akan didapatkan data seperti koordinat titik tengah marker, persamaan garis untuk tiap tepi marker, arah rotasi marker dan titik sudut marker. Data dari proses pendeteksian marker menggunakan sistem koordinat kamera atau ideal screen, didapat setelah melakukan pengkompensasian terhadap distorsi gambar yang terjadi karena kita sebenarnya melihat menggunakan observed screen coordinate. Data yang didapat dari proses tersebut sangat penting untuk perhitungan camera transformation (tahap ke-4 dalam outline application). Camera transformation bertujuan untuk mendapatkan posisi kamera relatif terhadap marker dalam koordinat ideal screen. Kemudian tahap terakhir adalah menggambar objek di atas marker. Dari sub-bab sebelumnya dapat dilihat source code untuk objek rendering menggunakan Open GL, sehingga posisi kamera-marker yang didapat harus diubah kedalam format Open GL, dan kordinat sistem yang digunakan juga harus diubah kedalam koordinat sistem yang dipakai oleh Open GL. Koordinat sistem Open GL memiliki orientasi yang sama dengan marker coordinate. Dari hasil transformasi ini akan didapat koordinat posisi objek virtual yang akan digambar. Berikut diagram proses tracking menggunakan computer tracking menggunakan computer vision algorithm : Gambar 5. Proses tracking AR (Sobana,2010)