Konsep Camera Modelling
Kamere modelling merupakan suatu permodellan
dimana dalam komputer grafis digunakan untuk perkiraan sistem optik fisik.
Beberapa model kamera memiliki ke khasannya masing masing dalam menghasilkan
suatu gambar. Sebuah model kamera mensimulasikan menangkap cahaya dari tiga
dimensi menjadi ruang objek gambar ke dua dimensi. Kebanyakan model mengandung
perkiraan sistem lensa pararel seperti dari kamera atau mata. Sumbu yang
melewati pusat geometris dari sistem lensa disebut sumbu optik. Dalam
komputer grafis pusat dari sistem lensa tunggal disebut pusat
proyeksi(COP). Suatu objek dalam adegan diproyeksikan melalui sistem
lensa untuk memebentuk sebuah gambar di sisi berlawanan dari sistem. Setiap
lensa memiliki aperture yang mendefinisikan daerah dimana cahaya diperbolehkan
untuk langsung ke gambar. Biasanya model – model render mempertimbangkan suatu
gambar didepan sistem lensa ketika membentuk gambar, model kamera
mempertimbangkan bidang film belakang sistem lensa. Seperti sistem optik fisik
,gambar terbentuk pada bidang film terbalik. Dalam optik unit
standar kekutan lensa adalah diopter unit yang diukur dalam meter terbalik.
Meskipun jumlah blur tidak sama di kejauhan , itu merupakan
sekeliling dari dioptri.
Ada berbagai algoritma yang digunakan untuk menerjemahkan 3D
geometri ke gambar 2D. Ketika adegan berubah menjadi gambar 2D ,adegan sering
mempertahankan peta kedalaman yang berisi pengukuran jarak ke kamera pada
setiap piksel yang diberikan, ini dapat digunakan untuk tambahan algoritma
post-procesing. Dua metode untuk menterjemahkan model 3D dalam ruang obyek
menjadi gambar 2D adalah scanline rendering dan ray tracing.
Rendering adalah proses akhir dari keseluruhan proses
pemodelan ataupun animasi komputer. Dalam rendering, semua data-data yang sudah
dimasukkan dalam proses modeling, animasi, texturing, pencahayaan dengan
parameter tertentu akan diterjemahkan dalam sebuah bentuk output (tampilan
akhir pada model dan animasi).
Rendering tidak hanya digunakan pada game programming,
tetapi juga digunakan pada banyak bidang, misalnya arsitektur, simulator,
movie, spesial effect pada tayangan televisi, dan design visualization.
Rendering pada bidang-bidang tersebut memiliki perbedaan, terutama pada fitur
dan teknik renderingnya. Terkadang rendering juga diintegrasikan dengan model
yang lebih besar seperti paket animasi, tetapi terkadang berdiri sendiri dan
juga bisa free open-source product.
Ø Algoritma Rendering
Algoritma Rendering adalah prosedur yang digunakan oleh suatu program untuk mengerjakan perhitungan untuk menghasilkan citra 2D dari data 3D. Metode yang saat ini sering dipakai adalah scan-line. Rendering berarti program melihat dari setiap pixel, satu per satu, secara horizontal dan menghitung warna di pixel tersebut. Saat ini dikenal 3 algoritma :
Ray-Casting
Ray-Tracing
Radiosity
Algoritma Rendering adalah prosedur yang digunakan oleh suatu program untuk mengerjakan perhitungan untuk menghasilkan citra 2D dari data 3D. Metode yang saat ini sering dipakai adalah scan-line. Rendering berarti program melihat dari setiap pixel, satu per satu, secara horizontal dan menghitung warna di pixel tersebut. Saat ini dikenal 3 algoritma :
Ray-Casting
Ray-Tracing
Radiosity
· Teknik
Rendering Permukaan
- Melakukan perhitungan dengan model pencahayaan untuk semua titik yg tampak
- Ray-tracing, melakukan interpolasi untuk titik-titik pada permukaan dari sekumpulan intensitas hasil perhitungan dengan model pencahayaan.
Kelanjutan ide Ray-Casting :
- Melakukan perhitungan dengan model pencahayaan untuk semua titik yg tampak
- Ray-tracing, melakukan interpolasi untuk titik-titik pada permukaan dari sekumpulan intensitas hasil perhitungan dengan model pencahayaan.
Kelanjutan ide Ray-Casting :
§ ‘Sinar’ diteruskan (memantul ke / menembus
objek lain)
§ Mencatat semua kontribusi terhadap
intensitas suatu titik
§ Untuk mendapatkan efek pantulan _ dan transmisi
secara global
Ray-Tracing dasar :
Ray-Tracing dasar :
§ Deteksi permukaan tampak, efek bayangan,
transparansi, pencahayaan dengan beberapa sumber cahaya
Pengembangan Ray-Tracing:
Pengembangan Ray-Tracing:
§ Tampilan fotorealistik (terutama objek
mengkilap)
Algoritma Ray-Tracing Dasar :
For each pixel in projection plane {
Create ray from the reference point passing through this pixel
Initialize NearestT to INFINITY and NearestObject to NULL
For every object in scene {
If ray intersects this object {
If t of intersection is less than NearestT {
Set NearestT to t of the intersection
Set NearestObject to this object
}
}
}
If NearestObject is NULL {
Fill this pixel with background color
} Else {
Shoot a ray to each light source to check if in shadow
If surface is reflective, generate reflection ray: recurse
If transparent, generate refraction ray: recurse
Use NearestObject and NearestT to compute shading function
Fill this pixel with color result of shading function
}
}
- Scan-line
a. Permukaan = polygon
b. Aplikasi model pencahayaan:
- Perhitungan intensitas tunggal untuk masing-masing polygon
- Intensitas tiap titik pada poligon didapat dengan cara interpolasi
c. Algoritma:
- Flat (constant-intensity) shading
Intensitas tunggal untuk setiap polygon
Create ray from the reference point passing through this pixel
Initialize NearestT to INFINITY and NearestObject to NULL
For every object in scene {
If ray intersects this object {
If t of intersection is less than NearestT {
Set NearestT to t of the intersection
Set NearestObject to this object
}
}
}
If NearestObject is NULL {
Fill this pixel with background color
} Else {
Shoot a ray to each light source to check if in shadow
If surface is reflective, generate reflection ray: recurse
If transparent, generate refraction ray: recurse
Use NearestObject and NearestT to compute shading function
Fill this pixel with color result of shading function
}
}
- Scan-line
a. Permukaan = polygon
b. Aplikasi model pencahayaan:
- Perhitungan intensitas tunggal untuk masing-masing polygon
- Intensitas tiap titik pada poligon didapat dengan cara interpolasi
c. Algoritma:
- Flat (constant-intensity) shading
Intensitas tunggal untuk setiap polygon
· Semua
titik dalam poligon ditampilkan dengan intensitas yang sama
· Sering
digunakan untuk mendapat tampilan cepat dari objek
· Akurat
dengan asumsi: Objek = polihedron (bukan aproksimasi kurva), Sumber cahaya
cukup jauh (N.L konstan), Pengamat cukup jauh (V.R konstan)
· Bisa
disiasati dengan memperkecil polygon Facet
Algoritma render standar dalam komputer grafis setara dengan
modeling kamera obscura atau kamera lubang jarum . Dalam model ini semua sinar
cahaya dari adegan yang lewat melalui satu titik disebut pusat
proyeksi atau melalui lensa dengan aperture sangat kecil . Karena
hanya sinar cahaya tunggal dilemparkan dari setiap titik dalam adegan dapat
melewati COP terlepas dari lokasinya di ruang bebas, setiap titik akan
diberikan tepat sekali di bidang film . Hal ini menyebabkan semua benda dalam
adegan muncul dalam fokus yang tajam pada gambar yang dihasilkan . Model
ini tidak bisa direalisasikan secara fisik karena dalam kenyataannya , titik
berukuran aperture akan menghasilkan gambar pada bidang film yang akan
terlalu redup untuk diamati . Namun hanya membalikkan model
ini untuk menghasilkan pelacak sinar , dimana sinar diproyeksikan
dari COP melalui setiap pixel pada gambar pesawat dan kemudian warna bahan
ini bersimpangan menentukan warna piksel tertentu . Teknik analitik juga
telah dikembangkan dengan menggunakan model ini untuk obyek proyek ke
ruang gambar efisien.
Banyak situasi di mana model kamera yang akurat itu penting
yaitu:
· Salah
satu tren di komputer grafis realistis adalah menuju physicallybased algoritma
render yang kuantitatif model transportasi cahaya . Output dari program
ini adalah biasanya cahaya pada setiap permukaan . Sebuah model kamera
berbasis fisik diperlukan untuk mensimulasikan proses pembentukan citra jika
perbandingan akurasi dengan data empiris yang dibuat .
· Dalam
banyak aplikasi ( efek khusus , augmented reality ) itu diperlukan untuk
mempermudah menggabungkan citra yang diperoleh dengan sintetik citra .
Dalam situasi ini, penting bahwa sintetis citra dihitung menggunakan model
kamera mirip dengan kamera nyata.
· Dalam
beberapa visi dan aplikasi mesin ilmiah itu perlu untuk
mensimulasikan kamera dan sensor akurat . Sebagai contoh, sistem visi
mungkin ingin menguji apakah model internal dari dunia sesuai dengan apa
yang sedang diamati .
· Banyak
pengguna sistem grafis 3d yang sangat akrab dengan kamera serta tahu
bagaimana cara menggunakannya . Dengan menggunakan kamera metafora sistem
grafis mungkin lebih mudah untuk digunakan. Mungkin pengenalan awal model
kamera di komputer grafis adalah model kamera sintetik yang diusulkan
dalam CORE
sistem. Kemudian bekerja menggunakan metafora kamera untuk menggambarkan proses sintesis gambar , tapi tidak berniat untuk mereproduksi efek fotografi atau memberikan kontrol fotografi seperti di ataspembentukan citra . Terobosan besar berikutnya dalam pemodelan kamera adalah simulasi kedalaman lapangan dan motion blur. Metode saat ini untuk mensimulasikan efek ini menggunakan sistem lensa ideal dan dengan demikian tidak dapat digunakan untuk mensimulasikan perilaku tertentu sistem fisik . Sejumlah peneliti telah menunjukkan bagaimana melakukan proyeksi kamera non - linear , seperti untuk fisheye atau Lensa Omnimax. Metode ini berasal dari transformasi peta gambar poin ke arah dalam 3D , dan memiliki kekurangan efek seperti kedalaman lapangan tidak dapat dikombinasikan dengan proyeksi tujuan khusus .
sistem. Kemudian bekerja menggunakan metafora kamera untuk menggambarkan proses sintesis gambar , tapi tidak berniat untuk mereproduksi efek fotografi atau memberikan kontrol fotografi seperti di ataspembentukan citra . Terobosan besar berikutnya dalam pemodelan kamera adalah simulasi kedalaman lapangan dan motion blur. Metode saat ini untuk mensimulasikan efek ini menggunakan sistem lensa ideal dan dengan demikian tidak dapat digunakan untuk mensimulasikan perilaku tertentu sistem fisik . Sejumlah peneliti telah menunjukkan bagaimana melakukan proyeksi kamera non - linear , seperti untuk fisheye atau Lensa Omnimax. Metode ini berasal dari transformasi peta gambar poin ke arah dalam 3D , dan memiliki kekurangan efek seperti kedalaman lapangan tidak dapat dikombinasikan dengan proyeksi tujuan khusus .
Konsep Texture Modelling
Teori statistik
untuk pemodelan tekstur menggabungkan penyaringan teori dan pemodelan Markov
lapangan acak melalui prinsip entropi maksimum, dan menafsirkan dan menjelaskan
berbagai konsep dan metode untuk analisis tekstur dan sintesis dari titik
kesatuan tampilan sebelumnya. Teori ini mencirikan ansambel gambar I dengan
penampilan tekstur yang sama dengan distribusi probabilitas f ( I) di lapangan
acak, dan tujuan dari pemodelan tekstur adalah untuk membuat inferensi tentang
f ( I) , diberi satu set contoh tekstur yang diamati . Dalam teori ini,
pemodelan tekstur ini terdiri dari dua langkah.
1) Satu set filter dipilih dari filter bank umum untuk
menangkap fitur tekstur , filter ini diterapkan ke gambar tekstur yang diamati
, dan histogram dari gambar yang diambil disaring . Ini histogram merupakan
perkiraan dari distribusi marjinal f ( I) . Langkah ini disebut ekstraksi fitur
.
2) Prinsip entropi maksimum digunakan untuk memperoleh p
distribusi ( I) , yang dibatasi untuk memiliki distribusi marjinal yang sama
seperti pada ( 1 ). P ini ( I) dianggap sebagai estimasi f ( I). Langkah ini
disebut fitur fusi.
Tekstur merupakan karakteristik penting dari penampilan objek dalam pemandangan alam, dan merupakan syarat kuat dalam persepsi visual. Memainkan peran penting dalam visi komputer, grafis, dan pengkodean gambar. Pemahaman tekstur merupakan bagian penting dari memahami visi manusia. Analisis tekstur dan sintesis telah menjadi daerah penelitian arsip selama tiga dekade berlalu, dan sejumlah besar metode telah diusulkan, dengan tujuan yang berbeda atau asumsi pokok tentang prosespembentukan tekstur yang mendasarinya. Misalnya dalam komputer grafis, persamaan reaksi-difusi telah digunakan untuk mensimulasikan beberapa proses kimia yang dapat menghasilkan tekstur pada kulithewan. Pembentukan tekstur tujuannya adalah untuk mencari model umum yang harus dapat untuk menggambarkan berbagai tekstur dalam kerangka umum, dan dengan pemahaman fisik dan logika teksturmanusia persepsi.
Model pertama tekstur umum diusulkan oleh Julesz di
tahun 1960. Julesz menyarankan bahwapersepsi tekstur dapat
dijelaskan dengan mengekstraksi disebut "k order" statistik, yaitu statistik kejadianuntuk
intensitas piksel. Dalam akta kerja awal pemodelan tekstur terutama didorong
oleh dugaan ini(haralick, 1979). Kelemahan utama untuk model
ini adalah bahwa jumlah data yang terdapat dalam urutan statistik k adalah raksasa dan
dengan demikian sangat sulit untuk menangani ketika k > 2. Di
sisi lain percobaan psychophysical menunjukkan bahwa sistem
visual manusia tidak mengambil setidaknya beberapa statistik lebih
tinggi dari urutan dua (Diaconis dan preman, 1981).
Penelitian yang lebih baru pada tekstur terutama berfokus pada dua bidang.
Penelitian yang lebih baru pada tekstur terutama berfokus pada dua bidang.
Seseorang penyaringan teori yang terinspirasi oleh
multichannel mekanisme penyaringan yang ditemukan dan berlaku umum di
neurofisiologi. Mekanisme ini menunjukkan bahwa sistem visual terurai ke satu
set sub - band. Daerah kedua adalah pemodelan statistik yang menjadi ciri
gambar tekstur yang timbul dari distribusi probabilitas pada bidang acak ini .
Pendekatan pemodelan hanya melibatkan sejumlah kecil untuk tekstur . Lebih
penting lagi mereka mengajukan analisis tekstur sebagai masalah inferensi
statistik yang terdefinisi dengan baik . Teori statistik memungkinkan kita
tidak hanya untuk membuat inferensi tentang parameter dari model probabilitas
yang mendasari berdasarkan gambar tekstur yang diamati, tetapi juga untuk
mensintesis gambar tekstur dengan contoh dari model probabilitas. Itu
menyediakan cara yang ketat untuk dimodelkan (Salib dan Jain 1983), tetapi
biasanya model ini adalah bentuk yang sangat terbatas yaitu kurangnya kekuatan
ekspresif .
Objek
3D pada open GL merupakan objek yang lebih hidup dibandingkan objek 2D.
Namun permukaan objek 3D yang polos membuat 3D sangatlah kurang
menarik. Untuk membuat objek yang lebih hidup pada OpenGL diperlukan suatu pembuatan
tekstur yaitu salah satunya texture mapping.Mapping adalah kegiatan untuk melakukan
pewarnaan atau memetakan permukaan geometri pada objek 3D. Sedangkan Maps
adalah bentuk gambar atau warna yang digunakan untuk melapisi objek 3D pada
saat dilakukan mapping. Sehingga pemetaan texture merupakan
pemberian sebuah gambar pada permukaan objek sehingga objek akan tampak
realistis. Texture mapping memungkinkan untuk menaruh gambar pada geometric
primitive tersebut dan sekaligus mengikuti transformasi yang diterapkan kepada
objek. Contohnya apabila sebuah objek kubus tanpa gambar diberi texture
bebatuan pada permukaannya, maka objek tersebut akan tampak memiliki tekstur
kasar seperti batu. Texture pada permukaan objek dapat dilihat dari berbagai
perspective yang berbeda. Contoh dari pembuatan texture:
Namun terkadang efek tekstur dicampur lebih
dari satu texture. Proses pencampuran lebih dari satu texture disebut dengan
istilah blending. Salah satu efek blending yang paling sederhana adalah
dengan memblending texture dengan warna. Fungsi yang digunakan pada
proses blending adalah glEnable(GL_BLEND).Sumber :
http://andarys.blogspot.com/2014/01/objek-3-dimensi-landasan-teori.html