BAB 2 LANDASAN TEORI
2.1
Sistem Scanner Tiga Dimensi Sistem scanner tiga dimensi adalah sebuah perangkat yang mampu menganalisis
sebuah objek (tiga dimensi), dan mengumpulkan data yang dimungkinkan untuk disusun menjadi sebuah model tiga dimensi. Perbedaan utama dengan scanner biasa terletak pada kemampuannya menghasilkan image tiga dimensi. Ini dimungkinkan dengan membentuk point cloud geometris, sebuah kumpulan titik dalam koordinat tiga dimensi, dari permukaan objek. Data yang terkumpul berupa point cloud, biasanya tidak serta-merta langsung digunakan. Oleh aplikasi pendukung, data ini kebanyakan dikonversi menjadi model polygonal 3D. Proses konversi ini disebut reconstruction. Pada proses ini, termasuk mengumpulkan data masing-masing titik dan menghubungkannya menjadi sebuah permukaan. Secara umum ada 2 jenis tipe scanner tiga dimensi berdasarkan proses kerjanya, yaitu scanner tiga dimensi contact dan non-contact.
2.1.1
Scanner Tiga Dimensi tipe Contact Sesuai dengan namanya, sistem scanner ini mengumpulkan data dari permukaan
sebuah objek tiga dimensi dengan cara melakukan contact langsung. Mirip saat seorang yang sedang memejamkan mata atau dalam lingkungan yang gelap mereka-reka sebuah objek dengan merabanya.
6
7 Salah satu contohnya adalah Coordinate Measuring Machine (CMM). banyak digunakan di manufacturing, dengan keunggulan utama pada hasilnya yang presisi. Kerugiannya adalah diperlukannya kontak langsung antara probe CMM dengan objek yang di-scan. Selain itu, proses ini dapat mengakibatkan objek mengalami sedikit perubahan bentuk atau bahkan merusaknya. Inilah yang menyebabkannya tidak ideal untuk digunakan pada objek yang mudah rusak dan sangat berharga, seperti sebuah peninggalan sejarah atau karya seni. Kekurangan lainnya adalah proses scanning yang relatif lambat. CMM paling cepat hanya dapat bergerak dalam kisaran ratusan Hz. Berbeda dengan LASER scanner 3D yang dapat bergerak melakukan proses scanning mulai dari 10 hingga 10 kHz. Contoh lain adalah seperti yang digunakan pada industri CGI (Computer Generated Imagery). Beberapa menggunakan sebuah probe yang digerakkan manual dengan tangan, untuk mengukur titik-titik koordinat penting pada sebuah model yang terbuat dari lilin atau tanah liat.
2.1.2
Scanner Tiga Dimensi tipe non-contact Sistem scanner tiga dimensi tipe non-contact adalah salah satu metode scanner
tiga dimensi yang paling banyak ragamnya. Metode ini tidak membutuhkan kontak secara fisik dengan objek yang di-scan. Saat memindai sebuah objek, sistem scanner akan memancarkan sinar ataupun radiasi lain yang akan mendeteksi permukaan objek. Emisi yang dipancarkan bisa berupa cahaya, ultrasound, ataupun x-ray (sinar x).
8 2.1.2.1 Time-of-flight Time of flight adalah active scanner yang menggunakan LASER untuk memindai objek. Intinya menggunakan time-of-flight LASER range finder, yang menentukan jarak dengan menghitung waktu tempuh yang dibutuhkan sinar LASER yang dipancarkan hingga pantulan diterima lagi oleh detektor. Dengan kecepatan cahaya mendekati 3x10^8m/s, maka jarak tempuh untuk 1mm hanya sekitar 3.3 picosecond. Waktu yang sangat singkat ini membuat akurasinya kurang akurat. Metode time of flight biasa digunakan untuk membuat model tiga dimensi dari objek seperti bangunan, formasi bebatuan ataupun beberapa objek landscape lainnya. Dengan pergerakan head yang memutar, memungkinkan sistem melakukan scanning secara horizontal. Sedangkan, pergerakan cermin mengarahkan LASER secara vertikal. Pemindaian horizontal juga dimungkinkan dengan memutar cermin. Cara memutar cermin ini lebih mudah dan lebih cepat dilakukan dari pada memutar head LASER range finder. Dengan memutar cermin, sistem dapat lebih cepat dalam melakukan pemindaian, yaitu dapat mengukur jarak sekitar 10.000 hingga 100.000 titik dalam 1 detik.
2.1.2.2 Triangulation Metode triangulation mirip dengan metoda time-of-flight, yaitu sama-sama menggunakan LASER sebagai sumber cahaya. Namun, waktu tempuh tidak diperhitungkan lagi, triangulation memperhitungkan jarak lokasi jatuhnya titik LASER pada permukaan benda.
9 Perbedaan jarak permukaan benda ke sumber LASER akan mempengaruhi letak titik LASER. Perhitungan jarak dengan variabel sumber LASER, kamera, dan titik LASER pada permukaan benda. Ketiga variabel tersebut akan membentuk sebuah segitiga. Pada pelaksanaannya, untuk mempercepat proses pemindaian digunakan LASER stripe dibandingkan menggunakan LASER dot. Prinsip ini dinamakan triangulasi, karena letak sumber LASER dan kamera pengamat membentuk sudut seperti pada segitiga siku-siku (triangle), dikutip dari (id.wikipedia.org/wiki/Triangulasi). Jika diterapkan dengan menggunakan hukum sinus maka triangulasi ini dapat diketahui yaitu: Bagian dari segitiga diberi symbol a, b, c dan sudut segitiga diberi symbol A, B, dan C maka hukum sinus berupa:
a b c = = = 2R sin A sin B sin C
Gambar 2.1 Penggunaan sudut triangulasi.
(2.1)
10 Dimana R merupakan radius dari segitiga tersebut. Hukum sinus ini digunakan pada sistem komputerisasi yang digunakan untuk mencari suatu sisi dari segitiga jika diketahui dua sisi sudut.
Gambar 2.2 Praktek teknik triangulasi.
Metode ini lebih baik dalam hal akurasi dibandingkan metode time of flight. Namun, metode ini memiliki keterbatasan untuk masalah range dari LASER emitter. Metode ini lebih sering digunakan untuk mengamati objek dalam skala yang lebih kecil dibandingkan dengan metode time-of-flight. Secara komersial, metode triangulation lebih digunakan pada sistem scanner indoor untuk memindai objek-objek dengan ukuran relatif kecil.
2.1.2.3 Conoscopic Holography
Juga menggunakan pancaran LASER yang diproyeksikan ke permukaan objek. Pantulan sinar akan melalui jalur yang sama dengan jalur sinar yang dipancarkan, kemudian diterima oleh conoscopic crystal dan diproyeksikan ke sensor CCD / CMOS.
11 Hasilnya akan didapatkan sebuah pola, hasil interpolasi gelombang sinar yang dipancarkan dengan sinar yang terpantul, kemudian dianalisis untuk menghitung jarak dengan permukaan objek. Keuntungan utama digunakannya metode ini adalah pada perhitungannya yang hanya menggunakan single ray-path. Metode ini memungkinkan sistem scanner untuk mengukur kedalaman pada sebuah lubang yang sangat kecil dengan akurat.
2.1.2.4 Structured light
Structured light 3D scanner, menggunakan sinar yang diproyeksikan dengan pola tertentu ke objek yang dipindai. Pola yang digunakan bisa berupa garis atau pola dua dimensi. Jika menggunakan sinar berbentuk garis, digunakan sumber cahaya berupa sebaris LCD atau LASER yang bergerak mengikuti pola garis tersebut. Sebuah kamera digunakan untuk menerima pantulan cahaya dan diletakkan di dekat sumber cahaya. Kamera ini bertugas mengamati pola cahaya yang terbentuk pada objek. Dengan perhitungan yang mirip dengan yang digunakan pada metode triangulation, maka jarak dari masing-masing titik yang membentuk pola garis tersebut dapat diperhitungkan. Kemudian kumpulan informasi model 3D diperhitungkan setelah sekujur permukaan objek dilalui oleh pola garis tersebut. Sedangkan pada pola dengan dua dimensi, biasanya berbentuk grid atau pola bergaris (line stripe pattern). Kamera bertugas mengamati deformasi dari pola yang terlihat pada objek. Dengan algoritma yang disesuaikan dengan pola yang digunakan, maka dapat diperhitungkan jarak dengan permukaan benda. Pola dan algoritma yang
12 sekarang sedang dikembangkan adalah dengan menggunakan Multistripe LASER Triangulation (MLT). Keuntungan utama metode ini adalah kecepatan scanning. Metode ini memungkinkan proses scanning untuk sebuah area secara langsung. Ini juga mengurangi masalah distorsi yang disebabkan pergerakan sumber cahaya dan sensor penerima atau kamera. MLT juga memungkinkan proses scanning 3D yang bisa dikatakan real-time. Metode ini terus dikembangkan. Salah satunya untuk proses scanning facial recognition expression untuk kebutuhan security dan computer vision.
2.1.2.5 Modulated light
Metode ini menggunakan pancaran sinar secara kontinu dengan amplitude yang berubah-ubah dalam pola gelombang sinusoidal. Sensor menangkap pantulan sinar dan intensitas cahaya, untuk menentukan jarak tempuh sinar hingga ke permukaan objek.
2.1.2.6 Non-Contact Passive 3D Scanner
Passive scanner hanya memanfaatkan cahaya yang ada di lingkungan objek tersebut. Scanner dengan metode ini biasanya menangkap gelombang sinar yang terlihat, namun ada juga yang khusus menangkap radiasi dari sinar tidak terlihat. Metode passive scanner ini relatif jauh lebih murah dibandingkan scanner 3D active, dikarenakan kebutuhan hardware yang lebih sederhana.
13 2.1.2.7 Stereoscopic
Sesuai dengan namanya, metode ini menggunakan dua kamera sekaligus. Letak antarkamera hanya berselisih sedikit, mengarah pada objek yang di-scan. Dengan algoritma yang bertugas menganalisis perbedaan antara gambar yang diterima kedua kamera tersebut, dapat ditentukan jarak permukaan objek yang diamati. Streoscopic ini memiliki banyak kesamaan analogi dengan kemampuan pandangan mata manusia dalam memperkirakan jarak.
2.1.2.8 Silhouette
3D scanner jenis ini menggunakan kumpulan informasi dari garis luar objek, yang didapat dari objek yang diamati. Sebuah kamera bergerak mengelilingi objek yang berada dalam sebuah latar belakang (background) yang kontras. Kumpulan siluet tersebut disusun menjadi koordinat yang akan membentuk informasi data model 3 dimensi. Kelemahan metode ini, tidak dapat memperlihatkan bentuk permukaan di dalam. Sebagai contoh katakanlah saat mengamati sebuah mangkok, bentuk parabolik di sisi luar akan teramati pada siluet, namun tidak demikian dengan kedalaman parabolik di sisi dalam. Dari berbagai macam metode diatas, sistem scanner tiga dimensi pada skripsi ini memilih menggunakan metode triangulasi, karena metode ini hanya memerlukan sebuah sumber cahaya (LASER) dan sebuah sensor penangkap gambar (Webcam), selain itu, kualitas dari metode triangulasi tergolong cukup memuaskan.
14 2.2
Motor Stepper
Motor stepper adalah peralatan elektromekanik yang mengubah sinyal pulsa menjadi perpindahan mekanis yang diskrit. Rotor dari motor stepper akan berputar pada langkah penambahan diskrit ketika diberikan pulsa listrik. Dikutip dari (Reston Condit, Stepping Motor Fundamentals, 2004). Pergerakkan motor memiliki hubungan dengan urutan pulsa input yang diberikan. Sedangkan kecepatan dari motor stepper memiliki hubungan khusus dengan frekuensi sinyal yang diberikan dan jumlah rotasi berhubungan dengan jumlah input yang diberikan. Pada motor stepper terdapat beberapa perbedaan dibandingkan dengan jenis motor yang lain, berikut ini adalah kelebihan dari motor stepper: •
Rotasi dari motor stepper proporsional dengan input yang diberikan.
•
Motor memiliki torsi penuh pada saat diam.
•
Pergerakkan rotor dapat diperkirakan dan penempatan sudut yang tepat dari motor stepper.
•
Memiliki respon yang sempurna saat akan memulai, berhenti dan berbalik arah.
•
Sangat reliable karena tidak ada brush didalam motor.
•
Respon motor terhadap pulsa input digital menyediakan open-loop control, sehingga membuat motor lebih mudah dan lebih murah untuk dikendalikan.
•
Memungkinkan untuk mencapai kecepatan yang sangat rendah dari rotasi sinkronous dengan beban yang diberikan langsung kepada motor stepper.
•
Pilihan kecepatan rotasi yang bermacam-macam bisa direalisasikan karena sifat proportional dari frekuensi sinyal pulsa yang masuk kedalam motor stepper.
15 Selain kelebihan motor stepper yang diberikan diatas, motor ini juga memiliki beberapa kelemahan diantaranya adalah: •
Resonansi bisa terjadi apabila tidak dikontrol dengan baik.
•
Sulit dioperasikan apabila digunakan pada kecepatan yang sangat tinggi.
Motor stepper yang digunakan dalam skripsi ini yaitu: •
Hybrid (HB) Motor stepper hybrid ini lebih mahal dari motor stepper permanent magnet dan lebih bagus jika dilihat dari kinerja langkah resolusi, torsi dan kecepatan. Jenis ini memiliki sudut langkah (step degree) 3.60 – 0.90 (100 – 400 langkah/resolusi), dikutip dari (Reston Condit, Stepping Motor Fundamentals, 2004, halaman 5). Motor stepper hybrid merupakan kombinasi dari motor stepper permanent magnet dan motor stepper variable reluctance. Pada bagian rotor terdapat gerigi seperti pada motor variable reluctant tetapi mengandung lapisan magnetik. Bagian gigi bermagnet pada rotor memberikan sisi yang lebih bagus dengan mengarahkan fluks magnetik melewati celah udara yang ada. Hal ini akan meningkatkan kekuatan motor dan karakteristik torsi menjadi dinamis jika dibandingkan dengan jenis motor variable reluctant dan permanent magnet.
16
Gambar 2.3 Hybrid. Jika dilihat dari hubungan kumparannya, jenis motor stepper yang digunakan pada skripsi ini yaitu: •
Motor Bipolar Motor bipolar biasanya memiliki dua kumparan tanpa center tap, sehingga input-nya langsung berupa urutan-urutan tegangan yang diatur secara khusus, dikutip dari (Reston Condit, Stepping Motor Fundamentals, 2004, halaman 3). Yang menyebabkan motor ini memerlukan ground, kutub positif dan kutub negatif.
Gambar 2.4 Kumparan bipolar tanpa center tap.
17
Gambar 2.5 Urutan input untuk menjalankan motor bipolar.
2.3
LASER (Light Amplification by Stimulated Emission of Radiation)
LASER merupakan sumber yang memancarkan sejenis cahaya dengan kemurnian dan intensitas yang tiada bandingannya, yang tidak dapat dijumpai dalam sumber–sumber radiasi elektromagnetik yang diketahui sebelumnya dan cahaya yang intensitasnya digandakan atau difokuskan pada arah tertentu. Kepanjangan nama LASER yaitu Light Amplification by Stimulated Emission of Radiation atau Penguatan Cahaya dengan Rangsangan Pancaran Radiasi, dikutip dari (B.B.Laud, LASER dan optic nonlinear, 1988). Sinar LASER bersifat koheren dan mempunyai intensitas yang sangat tinggi. Tahun 1960 untuk pertama kalinya sinar LASER He-Ne didemonstrasikan oleh Javan, Bennet dan Heriot. Setelah itu berkembang sinar LASER jenis gas seperti kriptón dan sinar LASER jenis zat cair seperti LASER dyne. Perkembangan– perkembangan dramatis telah dilakukan dalam mengenali proses – proses rumit yang terjadi dalam interaksi pulsa – pulsa cahaya ultra-pendek yang dihasilkan oleh LASER
18 dengan benda. LASER telah digunakan dalam telekomunikasi, meteorologi, metrologi, biologi, rangkaian komputer dan sebagainya.
2.4
Slotted Optocoupler
Slotted optocoupler adalah suatu saklar / sensor yang terdiri dari sensor penerima yang terbuat dari bahan semikonduktor peka cahaya dan sebuah sumber cahaya yang berupa LED (Light Emitting Diode) merah atau LED (Light Emitting Diode) infrared. Sensor penerima didalam slotted optocoupler berupa photodiode atau phototransistor, dikutip dari (http://en.wikipedia.org/wiki/Optocoupler). Sensor dan sumber cahaya diletakan saling berhadapan dengan menyisakan celah. Jika celah terhalang oleh suatu lempengan kedap cahaya, maka photodiode/phototransistor tidak akan mengalirkan arus listrik, atau sebaliknya, jika celah tidak terhalang maka photodiode/phototransistor akan aktif mengalirkan arus listrik. Output dari optocoupler tersebut bisa langsung diterjemahkan sebagai logika 1 atau 0 dalam sistem digital.
Gambar 2.6 Dua buah slotted optocoupler.
19
Gambar 2.7 Skematik optocoupler.
2.5
Webcam (CMOS sensor)
Webcam adalah kamera digital yang mengirimkan data gambar secara simultan. Webcam memiliki komponen utama yaitu sensor CMOS (Complementary Metal Oxide Semiconductor) yang bertugas mengubah pantulan cahaya yang berupa gambar (image) menjadi sinyal listrik untuk diproses dan ditampilkan didalam komputer, dikutip dari (en.wikipedia.org/wiki/Webcam). CMOS terbentuk dari ribuan sel semikonduktor yang peka cahaya. Masing-masing sel tersebut terbentuk dari beberapa transistor CMOS yang bertugas melakukan konversi warna dasar dari cahaya (Merah, Hijau, Biru) menjadi sinyal listrik yang berupa sinyal digital.
20
Gambar 2.8 Proses masuknya cahaya (pantulan gambar) ke dalam sensor CMOS.
Gambar 2.9 Proses filterisasi cahaya pada sensor CMOS.
Gambar 2.10 Sensor CMOS.
21 Pada sensor CMOS terdapat beberapa kelebihan dibandingkan dengan sensor CCD (Coupled Charge Device), diantaranya: •
Memiliki noise yang lebih sedikit.
•
Memiliki kemampuan untuk menambahkan fungsi didalam IC seperti fungsi ADC dan filtering.
•
Penggunaan daya listrik yang rendah dibandingkan dengan sensor CCD.
•
Biaya produksi yang lebih rendah, karena tidak memerlukan banyak rangkaian tambahan.
Software akan menganalisa letak cahaya LASER dari pixel pada kamera CMOS, dengan asumsi bahwa cahaya merah dengan tingkat kecerahan (brightness) tertinggi adalah letak sinar LASER. Letak pixel LASER secara vertikal menunjukkan koordinat vertikalnya (y), pergeseran LASER secara horizontal akan menunjukkan letak horizontalnya (x), sedangkan perubahan posisi horizontal dari masing-masing garis hasil scan akan menunjukkan dimensi atau kedalaman (z) objek. Setelah mendapat suatu bentuk dari garis objek, maka objek yang dipindai akan diputar satu derajat dengan cara memutar landasan tempat objek diletakan, menggunakan motor stepper. Jika proses diatas diulang sampai objek berputar 360o, maka dapat dipastikan objek virtual akan terbentuk dari garis-garis vertikal yang menyusunnya.
22
Gambar 2.11 Scan CMOS derajat ke-0.
Gambar 2.12 Scan CMOS derajat ke-1.
Gambar 2.9 menunjukkan bentuk objek secara horizontal dan vertikal, dimana software menganalisa bentuk garis per-píxel dan akan dihasilkan koordinatnya masingmasing. Pada gambar 2.10, terlihat sinar LASER dari hasil scan selanjutnya, dimana posisi horizontal mengalami penambahan sebesar 4 píxel, dengan demikian software
23 akan berasumsi bahwa permukaan objek pada garis diderajat ke-1 lebih tinggi (tebal) daripada permukaan diderajat ke-0. Dengan demikian koordinat x, y, dan z dari objek dapat diketahui oleh software dengan mudah.
2.6
Penyebaran Sinar LASER (Difraksi)
Salah satu komponen utama dalam teknik triangulasi adalah sumber cahaya. Sumber cahaya yang digunakan berupa sinar LASER yang disebarkan dengan cermin hexagonal untuk membentuk garis vertikal. Penggunaan cermin bersisi enam (hexagonal) tidak berdasarkan pada pertimbangan tertentu, karena berdasarkan percobaan, cermin hexagonal yang diputar pada kecepatan tinggi telah dapat menciptakan sinar LASER berbentuk garis vertikal. Setiap sisi pada cermin hexagonal akan memantulkan cahaya berdasarkan prinsip pemantulan pada cermin datar, yaitu Sudut sinar datang = sudut sinar pantul.
Gambar 2.13 Penyebaran LASER.
24
Gambar 2.14 Cermin hexagonal. Cermin hexagonal yang digunakan dapat berputar searah jarum jam, dengan kecepatan konstan 5525 rotation per minute. Proses pengaturan kecepatan dilakukan secara otomatis (close loop) oleh sebuah IC-controller, sehingga kecepatan putaran selalu stabil.
2.7
File Format OBJ
Obj adalah format file yang pertama kali dikembangkan oleh Wavefront Technologies untuk aplikasi animasi. Format file ini memungkinkan pendefinisian proyek yang berbasiskan polygon, begitu juga dengan kurva pada bentuk bebas dan permukaan.
25 Tabel 2.1 Isi struktur data pada format file obj
•
Vertex data
Elements
Vertex Geometris (v)
Point (p)
Vertex Tekstur (vt)
Line (l)
Vertex normal (vn)
Face (f)
Bentuk v x y z
Bentuk v x y z dinamakan sebagai vertex statement, statement ini menentukan koordinat x, y, z pada face vertex. Poligon dibentuk oleh tiga atau lebih vertex. masing–masing vertex memiliki referensi dari indeksnya, dimana definisi indeks pertama adalah 1 dan indeks yang kedua adalah 2 dan selanjutnya. •
Bentuk vt u v w
Statement Vertex tekstur digunakan untuk menjelaskan tekstur dari vertex dan koordinatnya. Sebuah struktur satu dimensi hanya membutuhkan koordinat tekstur u, sebuah tekstur dua dimensi membutuhkan koordinat u dan v, dan tekstur tiga dimensi seluruh ketiga koordinat. o u digunakan sebagai nilai dari arah horizontal dari tekstur. o v digunakan sebagai nilai dari arah vertikal dari tekstur, apabila tidak
digunakan maka nilainya adalah 0. o w digunakan sebagai nilai dari arah kedalaman tekstur, apabila tidak
digunakan maka nilainya adalah 0.
26 •
Bentuk vn i j k
Bentuk vn i j k dinamakan sebagai vertex normal. Vertex normal digunakan untuk menghaluskan permukaan dari polygon (dengan perhitungan cahaya). Vertex normal mempengaruhi smooth shading dan rendering geometris dari objek. vertex normal diawali dengan karakter “vn” dan diikuti oleh tiga nilai floating point yang menjelaskan vektor normal. •
Bentuk face (f v1[/vt1][/vn1] v2[/vt2][/vn2] v3[/vt3][/vn3] ...)
Perintah face menghasilkan bentuk polygon yang dibuat dari gabungan beberapa vertex. Untuk menunjukan referensi pada beberapa vertex, hanya perlu diberikan nomor indeks vertex tersebut, contohnya ‘f 54 55 56 57’ yang berarti face dibangun dari vertex 54-57. Untuk setiap vertex geometris bisa juga terhubung dengan vertex tekstur dan vertex normal. Pada semua elemen, nomor referensi digunakan untuk mengidentifikasi vertex geometris, vertex tekstur, vertex normal dan parameter ruang dari vertex. Setiap tipe dari vertex diberikan nomor urut secara terpisah. Biasanya file memiliki banyak urutan dari data vertex. Urutan penomoran ini terus berlanjut meskipun dipisahkan oleh data yang lain. Elemen seperti faces dan surface memiliki tiga nilai yang menjadi referensi dari data vertex. Nilai-nilai ini adalah referensi dari sebuah vertex geometris, vertex tekstur dan vertex normal. Nilai referensi harus berurutan dan dipisahkan oleh garis miring (/).
27
Gambar 2.15 Contoh urutan struktur data pada file format Obj.