Μετασχ. Γραφικά Παρατήρησης Υπολογιστών και Προβολές Μετασχηματισμοί Παρατήρησης και Προβολές Γ. Γ. Παπαϊωάννου, - 2008
Στάδια Προβολής στο Επίπεδο Περνάμε από WCS στοτοπικόσύστημα συντεταγμένων του παρατηρητή (ECS Eye Coordinate System) Πραγματοποιούμε την περικοπή (culling) και την προβολή Παίρνουμε τις συντεταγμένες σε κανονικοποιημένο χώρο οθόνης (Canonical Screen Space) Προσαρμόζουμε την έξοδο στο παράθυρό μας (viewport transformation)
Προβολές - Γενικά Η προβολή χρησιμοποιεί δύο έννοιες: Το επίπεδο προβολής Το κέντρο προβολής Υπάρχουν και χρησιμοποιούνται 2 ειδών προβολές: Παράλληλες προβολές: άπειρη απόσταση επιπέδουκέντρου προβολής Προοπτική προβολή: πεπερασμένη απόσταση επιπέδου-κέντρου προβολής Εν γένει, οι προβολικοί μετασχηματισμοί δεν είναι συσχετισμένοι (και άρα ούτε γραμμικοί)
Παραδείγματα Προβολών Ορθογραφική (παράλληλη) Προοπτική
Το Μοντέλο της Ιδανικής Κάμερας
Η Προοπτική Προβολή
Ο Πίνακας της Προοπτικής Προβολής Η προοπτική προβολή δεν είναι γραμμική, οπότε χρειάζεται ένα τέχνασμα για να κάνουμε τις πράξεις με πίνακες: Χρησιμοποιούμε τον πίνακα: Διαιρούμεμετοβάθοςγια να ομογενοποιήσουμε τα διανύσματα
Ιδιότητες της Προοπτικής Προβολής Ευθείες προβάλλονται σε ευθείες Αποστάσεις αλλάζουν (γενικά) 3Δ παράλληλες ευθείες, μη παράλληλες με επίπεδο προβολής, δεν προβάλλονται σε παράλληλες ευθείες Γωνία μεταξύ ευθειών αλλάζει, εκτός αν επίπεδο γωνίας παράλληλο με επίπεδο προβολής Προοπτική Σμίκρυνση: Το μέγεθος του προβαλλόμενου αντικειμένου είναι αντιστρόφως ανάλογο της απόστασής του από το επίπεδο προβολής
Η Επίδραση της Εστιακής Απόστασης
Ορθογραφική Προβολή
Μετασχηματισμός Παρατήρησης Δύο βήματα: Μετασχηματισμός από καθολικό σύστημα συντεταγμένων σε σύστημα συντεταγμένων παρατηρητή (WCS ECS) Μετασχηματισμός από χώρο παρατηρητή σε κανονικοποιημένο χώρο οθόνης (ECS CSS) Εισάγεται η προοπτική παραμόρφωση Διατηρείται η z συνιστώσα καθώς χρειάζεται σε άλλους υπολογισμούς (διαίρεση με βάθος, περικοπή, ταξινόμηση) Αντιμετωπίζονται ασύμμετρες και πλάγιες προβολές
Σύστημα Συντεταγμένων Παρατηρητή Επίπεδο παρατήρησης WCS y Εστιακή Απόσταση v VCS u z x w Θέση Παρατηρητή
Συντεταγμένες Παρατηρητή Καθολικές Συντεταγμένες Συντεταγμένες Παρατηρητή Καθολικές Συντεταγμένες Γιαναμπορέσουμεναπροβάλουμετονκόσμο πάνω στο επίπεδο παρατήρησης πρέπει να μετασχηματίσουμε τα αντικείμενα από το WCS στο τοπικό σύστημα συντεταγμένων του παρατηρητή. Αυτό σημαίνει ότι θα πρέπει να μετασχηματίσουμε το σύστημα αναφοράς του κόσμου ώστε να συμπίπτει με αυτό του παρατηρητήγιαναυπάρχεικοινήαναφορά Ισοδύναμα μπορούμε να μετασχηματίσουμε (αντίστροφα) το σύστημα του παρατηρητή να συμπέσει με το WCS.
Συντεταγμένες Συντεταγμένες Παρατηρητή Παρατηρητή Καθολικές Καθολικές Συντεταγμένες Συντεταγμένες Αφού μετασχηματίζουμε τον παρατηρητή και τα αντικείμενα με τον ίδιο μετασχηματισμό, η σχετική τους θέση δεν αλλάζει, άρα ο παρατηρητής «βλέπει» τα ίδια. WCS v y VCS u x z n Μετασχηματισμός Παρατήρησης Μετασχηματισμός Παρατήρησης y v z x u n WCS VCS
Συντεταγμένες Παρατηρητή Καθολικές Συντεταγμένες Έστω ένας παρατηρητής με κέντρο C, και τοπικό αριστερόστροφο σύστημα συντεταγμένων (U,V,N) = (right, up, look at) Έστω ένα σημείο P του χώρου, ορισμένο στο τυπικό δεξιόστροφο σύστημα (Χ,Υ,Ζ) n r v r u r Επίπεδο παρατήρησης c z y x
Συντεταγμένες Παρατηρητή Καθολικές Συντεταγμένες Ο Μετασχηματισμός Ε που θα εκφράζει το σημείο P σε σχέση με το σύστημα του παρατηρητή θα είναι της μορφής E = B T (μη παραμορφωτικός Μ/Τ) Ο Τ αφορά στην αλλαγή της θέσης του σημείου P σε σχέση με την κάμερα: T 1 0 0 c x 0 1 0 cy = 0 0 1 cz 0 0 0 1
Συντεταγμένες Παρατηρητή Καθολικές Συντεταγμένες Για τον Β ισχύει: b11 b12 b13 b14 Ux Vx Nx 1 0 0 b21 b22 b23 b 24 Uy Vy N y 0 1 0 = b31 b32 b33 b 34 Uv Vz N z 0 0 1 b41 b42 b43 b44 1 1 1 1 1 1 Ακόμα U + U + U = 1, V + V + V = 1, N + N + N = 1 2 2 2 2 2 2 2 2 2 x y z x y z x y z Και λόγω ορθογώνιων διανυσμάτων: UV + UV + UV = 0, U N + U N + UN = 0 x x y y z z x x y y z z VN + VN + VN = x x y y z z 0
Συντεταγμένες Παρατηρητή Καθολικές Συντεταγμένες Οπότε ο Β δίνεται από τον παρακάτω πίνακα, αφού λύσουμε το σύστημα: B Ux Uy Uz 0 Vx Vy Vz 0 = Nx Ny Nz 0 0 0 0 1
ECS CSS - Ορθογραφική Προβολή Μετασχηματίζουμε μια παραλληλεπίπεδη περιοχή του χώρου (view volume) σε κανονικοποιημένες συντεταγμένες Όρια αποκοπής:
ECS CSS - Ορθογραφική Προβολή
ECS CSS Προοπτική Προβολή Ο χώρος αποκοπής είναι μια κομμένη πυραμίδα:
ECS CSS Προοπτική Προβολή Χρειάζεται να διατηρούμε μια πληροφορία βάθους η οποία να ακολουθεί την προοπτική σμίκρυνση και αυτή Μια σχέση που δίνει αυτό το μετασχηματισμό διατηρώντας τις ευθείες είναι η z s =A+B/z e Λύνοντας για τις οριακές συνθήκες f=a+b/f και n=a+b/n: A=n+f B=-nf z s =n+f-nf/z e O πίνακας προοπτικής προβολής γίνεται: Χρειάζεται διαίρεση με τη z συνιστώσα
ECS CSS Προοπτική Προβολή Ο μετασχηματισμός αυτός μετατρέπει την κόλουρη πυραμίδα σε παραλληλεπίπεδο:
ECS CSS Προοπτική Προβολή Παρόμοια με την ορθογραφική προβολή, πρέπει να κανονικοποιήσουμε τις συντεταγμένες, φέρνοντας όλες τις συντεταγμένες στο [-1,1]:
Αποκοπή και Προοπτική Διαίρεση Μας συμφέρει να προηγηθεί τώρα η αποκοπή στις μη κανονικοποιημένες συντεταγμένες διότι: Μετά τη διαίρεση δεν ξεχωρίζουμε τις συντεταγμένες συμμετρικά προς το κέντρο (πίσω από τον παρατηρητή) από αυτές μπροστά του Γλυτώνουμε τη διαίρεση για όσες συντεταγμένες απορρίπτονται Ένα σημείο είναι εντός ορατής περιοχής όταν:
Σύνθετη Προοπτική Προβολή Εν γένει, δεν έχουμε συμμετρικό οπτικό πεδίο: Ο άξονας συμμετρίας δεν είναι οάξονας προβολής/κατεύθυνσης παρατήρησης
Σύνθετη Προοπτική Προβολή Για να γίνει συμμετρικό, πρέπει να προηγηθεί ένα πλάγιασμα σύμφωνα με τον πίνακα μετασχηματισμού: Επιδιώκουμε να φέρουμε το μέσω του near cap στο 0, οπότε λύνοντας για 0 το παραπάνω: Ομοίως για x
Σύνθετη Προοπτική Προβολή Ο τελικός πίνακας πολλαπλασιασμένος με τον πίνακα μετασχηματισμού από συμμετρική πυραμίδα σε παραλληλεπίπεδο δίνει: