10
1-1 Κεφάλαιο 1 - Εισαγωγή Σύνοψη Στο πρώτο κεφάλαιο του βιβλίου μετά από μια συζήτηση για τα προαπαιτούμενα και τον προτεινόμενο τρόπο διδασκαλίας, γίνεται μια εισαγωγή στα περιεχόμενα του βιβλίου. Στη συνέχεια δίνεται ένα πρακτικό παράδειγμα υλοποίησης μιας σκηνής γραφικών στα πλαίσια του οποίου παρουσιάζονται με παραδείγματα τα περισσότερα κεφάλαια του βιβλίου. Τέλος, δίνονται κάποιες ενδεικτικές εφαρμογές στην περιοχή των γραφικών και της εικονικής πραγματικότητας. Προαπαιτούμενη γνώση Το κεφάλαιο αυτό δεν απαιτεί γνώση άλλων αντικειμένων για την κατανόησή του. Στην παράγραφο 1.1.2 γίνεται μια συζήτηση περί της προαπαιτούμενης γνώσης για την κατανόηση όλου του βιβλίου. 1.1. Εισαγωγικά στοιχεία Το βιβλίο αυτό έχει ως στόχο την παρουσίαση των σημαντικότερων στοιχείων των συστημάτων Γραφικών και Εικονικής Πραγματικότητας στον αναγνώστη, ο οποίος μπορεί να είναι προπτυχιακός ή μεταπτυχιακός φοιτητής, ερευνητής ή εργαζόμενος στην περιοχή αυτή. Πολλές από τις έννοιες που πραγματεύεται έχουν αναπτυχθεί την τελευταία τριακονταετία, είναι ώριμες και θεωρούνται θεμελιώδεις στα Γραφικά. Κάποιες άλλες, ειδικά στα πιο προχωρημένα κεφάλαια του βιβλίου έχουν αναπτυχθεί πιο πρόσφατα και μπορούν να θεωρηθούν τεχνολογίες αιχμής. 1.1.1. Σχετικά με το παρόν βιβλίο Τα Γραφικά, κυρίως, αλλά και η Εικονική Πραγματικότητα είναι έννοιες ελαφρώς παρεξηγημένες στην ελληνική γλώσσα. Δε θα πρέπει να συγχέονται με την περιοχή της Γραφιστικής αλλά και των Γραφικών Διεπαφών Χρήστη (GUI-Graphical User Interfaces). Για το λόγο αυτό αναφέρουμε παρακάτω τι πραγματεύεται το παρόν βιβλίο και τι όχι. Τι θα απαντήσει το παρόν βιβλίο: - Πώς αναπαρίσταται και πώς σχεδιάζεται ένα ένα τριών διαστάσεων (3Δ) αντικείμενο σε συσκευές απεικόνισης δύο διαστάσεων (οθόνη). - Πώς μπορούμε να αποδώσουμε κίνηση σε ένα αντικείμενο (animation); - Πώς μπορώ να αναπτύξω μια αλληλεπιδραστική εφαρμογή εικονικής πραγματικότητας (μηχανές παιχνιδιών); - Τι επιρροή έχει ο φωτισμός στην εμφάνιση της σκηνής μου; - Τι είναι η εικονική και η επαυξημένη πραγματικότητα και πώς μπορώ να αναπτύξω αντίστοιχες εφαρμογές; - Πέρα από τη γεωμετρία των αντικειμένων πώς μπορώ να χρωματίσω ένα αντικείμενο χρησιμοποιώντας μια εικόνα; Τι δε θα απαντήσει το παρόν βιβλίο: - Πώς μπορώ να φτιάξω μια Γραφική Διεπαφή Χρήστη για μια εφαρμογή μου σε υπολογιστή; - Ποιοι συνδυασμοί χρωμάτων και καμπυλών είναι οι πιο ενδεδειγμένοι (Γραφιστική); - Πώς μπορώ να δημιουργήσω αντικείμενα τριών διαστάσεων (Σχεδιαστικά Προγράμματα 3Δ αντικειμένων, π.χ. Blender). Βάσει των παραπάνω πρέπει να σημειωθεί ότι το βιβλίο αυτό έχει ως στόχο να παρουσιάσει τα θεμέλια της περιοχής των Γραφικών και της Εικονικής Πραγματικότητας, να μεταδώσει στον αναγνώστη πληροφορία για το πώς ακριβώς δουλεύει ένα τέτοιο σύστημα και όχι να τον εκπαιδεύσει σε ένα συγκεκριμένο εργαλείο λογισμικού.

Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-1

Κεφάλαιο 1 - Εισαγωγή Σύνοψη Στο πρώτο κεφάλαιο του βιβλίου μετά από μια συζήτηση για τα προαπαιτούμενα και τον προτεινόμενο τρόπο διδασκαλίας, γίνεται μια εισαγωγή στα περιεχόμενα του βιβλίου. Στη συνέχεια δίνεται ένα πρακτικό παράδειγμα υλοποίησης μιας σκηνής γραφικών στα πλαίσια του οποίου παρουσιάζονται με παραδείγματα τα περισσότερα κεφάλαια του βιβλίου. Τέλος, δίνονται κάποιες ενδεικτικές εφαρμογές στην περιοχή των γραφικών και της εικονικής πραγματικότητας.

Προαπαιτούμενη γνώση Το κεφάλαιο αυτό δεν απαιτεί γνώση άλλων αντικειμένων για την κατανόησή του. Στην παράγραφο 1.1.2 γίνεται μια συζήτηση περί της προαπαιτούμενης γνώσης για την κατανόηση όλου του βιβλίου.

1.1. Εισαγωγικά στοιχεία Το βιβλίο αυτό έχει ως στόχο την παρουσίαση των σημαντικότερων στοιχείων των συστημάτων Γραφικών και Εικονικής Πραγματικότητας στον αναγνώστη, ο οποίος μπορεί να είναι προπτυχιακός ή μεταπτυχιακός φοιτητής, ερευνητής ή εργαζόμενος στην περιοχή αυτή. Πολλές από τις έννοιες που πραγματεύεται έχουν αναπτυχθεί την τελευταία τριακονταετία, είναι ώριμες και θεωρούνται θεμελιώδεις στα Γραφικά. Κάποιες άλλες, ειδικά στα πιο προχωρημένα κεφάλαια του βιβλίου έχουν αναπτυχθεί πιο πρόσφατα και μπορούν να θεωρηθούν τεχνολογίες αιχμής. 1.1.1. Σχετικά με το παρόν βιβλίο Τα Γραφικά, κυρίως, αλλά και η Εικονική Πραγματικότητα είναι έννοιες ελαφρώς παρεξηγημένες στην ελληνική γλώσσα. Δε θα πρέπει να συγχέονται με την περιοχή της Γραφιστικής αλλά και των Γραφικών Διεπαφών Χρήστη (GUI-Graphical User Interfaces). Για το λόγο αυτό αναφέρουμε παρακάτω τι πραγματεύεται το παρόν βιβλίο και τι όχι.

Τι θα απαντήσει το παρόν βιβλίο:

- Πώς αναπαρίσταται και πώς σχεδιάζεται ένα ένα τριών διαστάσεων (3Δ) αντικείμενο σε συσκευές απεικόνισης δύο διαστάσεων (οθόνη).

- Πώς μπορούμε να αποδώσουμε κίνηση σε ένα αντικείμενο (animation); - Πώς μπορώ να αναπτύξω μια αλληλεπιδραστική εφαρμογή εικονικής πραγματικότητας

(μηχανές παιχνιδιών); - Τι επιρροή έχει ο φωτισμός στην εμφάνιση της σκηνής μου; - Τι είναι η εικονική και η επαυξημένη πραγματικότητα και πώς μπορώ να αναπτύξω

αντίστοιχες εφαρμογές; - Πέρα από τη γεωμετρία των αντικειμένων πώς μπορώ να χρωματίσω ένα αντικείμενο

χρησιμοποιώντας μια εικόνα;

Τι δε θα απαντήσει το παρόν βιβλίο:

- Πώς μπορώ να φτιάξω μια Γραφική Διεπαφή Χρήστη για μια εφαρμογή μου σε υπολογιστή; - Ποιοι συνδυασμοί χρωμάτων και καμπυλών είναι οι πιο ενδεδειγμένοι (Γραφιστική); - Πώς μπορώ να δημιουργήσω αντικείμενα τριών διαστάσεων (Σχεδιαστικά Προγράμματα 3Δ

αντικειμένων, π.χ. Blender).

Βάσει των παραπάνω πρέπει να σημειωθεί ότι το βιβλίο αυτό έχει ως στόχο να παρουσιάσει τα θεμέλια της περιοχής των Γραφικών και της Εικονικής Πραγματικότητας, να μεταδώσει στον αναγνώστη πληροφορία για το πώς ακριβώς δουλεύει ένα τέτοιο σύστημα και όχι να τον εκπαιδεύσει σε ένα συγκεκριμένο εργαλείο λογισμικού.

Page 2: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-2

1.1.2. Προαπαιτούμενα Η περιοχή των Γραφικών και της Εικονικής Πραγματικότητας είναι ένα αντικείμενο αρκετά πολύπλοκο από πολλές απόψεις. Χρησιμοποιεί μαθηματικές έννοιες, οι οποίες υλοποιούνται με προγράμματα σε κάποια γλώσσα προγραμματισμού, ενώ παράλληλα οι περισσότερες έννοιες που πραγματεύεται, όπως για παράδειγμα ο φωτισμός και οι δυναμικές προσομοιώσεις έχουν άμεση σχέση με τους φυσικούς νόμους. Έτσι, για να είναι εφικτή η εστιασμένη παρουσίαση, μέσω του βιβλίου, των σημαντικότερων στοιχείων ενός συστήματος γραφικών υποθέτουμε ότι ο αναγνώστης έχει ήδη γνώση των παρακάτω αντικειμένων: Γραμμική Άλγεβρα – Μαθηματικά. Ένα εικονικό περιβάλλον απαρτίζεται από γεωμετρικά αντικείμενα τα οποία αναπαρίστανται σε έναν τρισδιάστατο ευκλείδειο χώρο. Τα αντικείμενα αυτά περιγράφονται ως σύνολα σημείων (διανυσμάτων) ή συνηθέστερα ως σύνολα στοιχειωδών γεωμετρικών οντοτήτων, όπως είναι τα τρίγωνα, τα οποία όμως και πάλι είναι τριάδες σημείων. Οποιαδήποτε κίνηση του αντικειμένου ή του σημείου παρατήρησης περιγράφεται από τους κατάλληλους συσχετισμένους μετασχηματισμούς, οι οποίοι εν γένει ανάγονται σε πολλαπλασιασμούς πινάκων. Η γραμμική άλγεβρα είναι το σημαντικότερο προαπαιτούμενο για το παρόν βιβλίο. Προγραμματισμός. Η υλοποίηση ενός συστήματος Γραφικών ή/και Εικονικής Πραγματικότητας γίνεται γράφοντας ένα πρόγραμμα σε κάποια γλώσσα προγραμματισμού. Για το βιβλίο αυτό, θεωρούμε ότι ο αναγνώστης έχει γνώσεις κάποιας γλώσσας προγραμματισμού. Σε κάποια κεφάλαια δίνονται παραδείγματα σε μορφή ψευδοκώδικα και κάποιες φορές δίνεται και κώδικας συνήθως σε γλώσσα C, τον οποίο μπορεί ο αναγνώστης να χρησιμοποιήσει άμεσα. Η γνώση προγραμματισμού είναι ένα σημαντικό προαπαιτούμενο. Φυσική Οι γνώσεις φυσικής είναι επιθυμητές, διότι πολλά από τα συστήματα Γραφικών είναι εμπνευσμένα από φυσικές διεργασίες. Έτσι οι αλγόριθμοι φωτισμού βασίζονται στην κλασική αλληλεπίδραση φωτός και ύλης την οποία «προσπαθούν» να μιμηθούν. Ακόμα οι δυναμικές προσομοιώσεις έχουν ως στόχο την αλγοριθμική υλοποίηση των νόμων της κλασικής Νευτώνιας μηχανικής. Δε θα λέγαμε, όμως, ότι είναι απαραίτητη η εις βάθος γνώση των αντίστοιχων κεφαλαίων της φυσικής. Μια ανασκόπηση των βασικών νόμων γίνεται στα κεφάλαια όπου αυτό είναι απαραίτητο. 1.1.3. Τρόποι διδασκαλίας Το βιβλίο αυτό μπορεί να χρησιμοποιηθεί είτε ως εγχειρίδιο αναφοράς είτε ως κύριο σύγγραμμα εξαμηνιαίου μαθήματος. Στη δεύτερη περίπτωση υπάρχουν διάφοροι τρόποι διδασκαλίας, κάποιοι εκ των οποίων ενδεικτικά παρουσιάζονται παρακάτω. Γενικά, μπορούμε να χωρίσουμε τα κεφάλαια του βιβλίου σε 2 μέρη: Μέρος Α – Θεμελιώδεις έννοιες:

- κεφάλαιο 1: Εισαγωγή, - κεφάλαιο 2: Σχεδίαση, - κεφάλαιο 3: Γεωμετρικοί μετασχηματισμοί και προβολές, - κεφάλαιο 4: Αναπαράσταση αντικειμένων, - κεφάλαιο 5: Χρώμα και υφή, - κεφάλαιο 6: Μοντέλα φωτισμού.

Μέρος Β – Προχωρημένα κεφάλαια:

- κεφάλαιο 7: Διαχείριση σκηνής, - κεφάλαιο 8: Συνθετική κίνηση, - κεφάλαιο 9: Εικονική Πραγματικότητα, - κεφάλαιο 10: Επαυξημένη Πραγματικότητα.

Page 3: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-3

Ένα εξαμηνιαίο μάθημα Γραφικών με έμφαση στη θεωρία θα μπορούσε να αποτελείται από τα κεφάλαια του Μέρους Α. Ένα μάθημα Γραφικών βασισμένο σε πρακτικά παραδείγματα και εφαρμογές με εργαστηριακό σκέλος θα μπορούσε να ακολουθήσει τα Κεφάλαια 1, 3, 4, 5, 6, 7, 8. Τέλος, ένα πλήρες εξαμηνιαίο μάθημα Γραφικών και Εικονικής Πραγματικότητας με σημαντικό θεωρητικό και εργαστηριακό σκέλος θα μπορούσε να ακολουθήσει όλα τα κεφάλαια του βιβλίου δίνοντας σαφώς έμφαση στα κεφάλαια 3, 4, 6, 7, 8, 10.

Ακόμα αξίζει να αναφερθεί μια στρατηγική εκμάθησης που έχει αποδειχθεί ιδιαίτερα αποτελεσματική στην πράξη από τους συγγραφείς. Ως στοιχείο εκμάθησης και ταυτόχρονα στοιχείο εξέτασης μπορεί να χρησιμοποιηθούν ιδιαίτερα απαιτητικές εργασίες. Ανάλογα με τη δυσκολία τους μπορεί ο διδάσκων να επιλέξει να έχουν οι εργασίες συμμετοχή στον τελικό βαθμό ή ακόμα και να απαλλάσσεται ο φοιτητής από τη γραπτή εξέταση. Αυτή η υποκατηγορία των απαλλακτικών εργασιών που πραγματεύονται θέματα αιχμής, έχει δείξει ότι:

- Κινεί το ενδιαφέρον του φοιτητή για την ανάπτυξη ενός ολοκληρωμένου συστήματος. - Καθιστά απαραίτητη την αναζήτηση και ανάγνωση εργασιών (papers). - Μεγιστοποιεί τη θεωρητική και πρακτική γνώση που αποκομίζει ο φοιτητής γύρω από ένα

υποσύνολο της περιοχής των Γραφικών. 1.1.4. Για τον φοιτητή Η πράξη έχει δείξει ότι η πλειοψηφία των φοιτητών που επιλέγουν ένα μάθημα Γραφικών και Εικονικής Πραγματικότητας στον κύκλο σπουδών τους έχουν ισχυρό κίνητρο και ενδιαφέρον από μόνοι τους, οπότε κάποιες από τις παρακάτω παροτρύνσεις, ίσως, να τις θεωρήσουν αυτονόητες.

Όπως και σε κάθε θεωρητικό μάθημα με πρακτικές εφαρμογές η αρχή της εις βάθος γνώσης είναι η αμφισβήτηση! Ειδικά στα Γραφικά όπου επιχειρείται πολλές φορές προσέγγιση φυσικών νόμων με αλγορίθμους και μοντέλα τα οποία εμπεριέχουν σφάλματα είναι πολύ σημαντικό να μαθαίνουμε γιατί μία ακριβής αναπαράσταση δεν είναι αποδεκτή (συνήθως, η απάντηση είναι η υπολογιστική πολυπλοκότητα) και γιατί ένα προσεγγιστικό μοντέλο με εγγενή σφάλματα είναι αποδεκτό! Μη διστάζετε να αμφισβητείτε ό,τι ακούτε και διαβάζετε, διότι οι απαντήσεις στις ερωτήσεις σας είναι αυτό που θα σας μείνει.

Πολλές φορές δε θα μπορείτε να απευθύνετε τις ερωτήσεις σας στο διδάσκοντα για πρακτικούς λόγους. Η αναζήτηση πηγών από τη βιβλιογραφία είναι ένα πολύ χρήσιμο εργαλείο για την εις βάθος εκμάθηση των εννοιών που παρουσιάζονται. Μπορείτε να βρείτε αξιόλογες εργασίες σε μια σειρά συνεδρίων, όπως το Siggraph και το Eurographics. Πολύ γνωστά περιοδικά στην περιοχή είναι το ACM Transactions on Graphics, IEEE Transactions on Visualization and Computer Graphics και το Eurographics Computer Graphics Forum.

Πέρα από την εκμάθηση θεωρητικών εννοιών, ένα πλήρες μάθημα Γραφικών και Εικονικής Πραγματικότητας πρέπει να συνοδεύεται από πρακτικό-εργαστηριακό σκέλος. Ακόμα και αν δε σας δίνεται αυτή η δυνατότητα στα πλαίσια ενός μαθήματος, προσπαθήστε να χρησιμοποιήσετε εργαλεία ανοιχτού κώδικα που είναι διαθέσιμα, για να μπορέσετε να υλοποιήσετε και να δείτε πρακτικά παραδείγματα των θεωρητικών εννοιών. Ενδεικτικά παραδείγματα βιβλιοθηκών που μπορείτε να χρησιμοποιήσετε είναι η OGRE και το VTK. 1.2. Εισαγωγή στα Γραφικά και στην Εικονική Πραγματικότητα Τα Γραφικά (Computer Graphics) είναι η επιστήμη που ασχολείται με όλα τα ζητήματα που σχετίζονται με την οπτική επικοινωνία ανθρώπου και μηχανής. Συνήθως, η επικοινωνία αυτή περιορίζεται στη σύνθεση εικόνων μέσω ενός υπολογιστή τις οποίες παρατηρεί ένας χρήστης. Δεν είναι λίγες όμως και οι εφαρμογές κατά τις οποίες και ο υπολογιστής «παρακολουθεί» και αναγνωρίζει τις κινήσεις του χρήστη.

Η Εικονική Πραγματικότητα είναι η επιστήμη που έχει ως στόχο την ανάπτυξη κατάλληλων συσκευών και συστημάτων τα οποία έχουν ως απώτερο στόχο την πλήρη αποκοπή ενός χρήστη από το πραγματικό περιβάλλον και την εμβύθισή του (immersion) σε ένα εικονικό περιβάλλον. Για να το επιτύχει αυτό ένα σύστημα εικονικής πραγματικότητας πρέπει να αποκόψει κάθε πληροφορία που προέρχεται από τον πραγματικό κόσμο από τα αισθητήρια του χρήστη και να την αντικαταστήσει με εικονική. Το πρώτο και σημαντικότερο κανάλι αλληλεπίδρασης το οποίο χρησιμοποιείται στην εικονική πραγματικότητα είναι η

Page 4: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-4

όραση και ακολουθούν η ακοή και η αφή, ενώ πρόσφατα έχουν αναπτυχθεί και συστήματα για την παραγωγή συνθετικών ερεθισμάτων όσφρησης και γεύσης. Όσον αφορά την όραση, τα τελευταία χρόνια οι όροι Γραφικά και Εικονική Πραγματικότητα έχουν γίνει ταυτόσημοι, οπότε όλες οι διαδικασίες που θα αναλυθούν στα επόμενα κεφάλαια αφορούν και τα συστήματα Γραφικών εν γένει, αλλά και τα συστήματα Εικονικής Πραγματικότητας. Κάποιες ιδιαιτερότητες των τελευταίων θα αναλυθούν σε ξεχωριστό κεφάλαιο. 1.3. Ένα πρακτικό παράδειγμα Μια από τις πιο ενδιαφέρουσες σχέσεις είναι αυτή της επιστημονικής περιοχής των Γραφικών (Computer Graphics) και της Υπολογιστικής Όρασης (Computer Vision). Όπως φαίνεται και στην Εικόνα 1.1α σε ένα σύστημα γραφικών είναι γνωστά όλα τα αντικείμενα και οι παράμετροι του τρισδιάστατου (συνήθως κόσμου). Αυτό που ζητείται είναι η απεικόνισή τους σε ένα επίπεδο προβολής δύο διαστάσεων το οποίο αναπαριστά και το «παράθυρο» του χρήστη προς τον εικονικό κόσμο. Αντίθετα, στην Υπολογιστική Όραση (Εικόνα 1.1β) αυτό που δίνεται είναι μία εικόνα, ή μία ακολουθία εικόνων δύο διαστάσεων από την οποία ζητείται ο υπολογισμός δεδομένων και χαρακτηριστικών των αντικειμένων και του κόσμου τριών διαστάσεων όπως είναι το βάθος, η γεωμετρία των αντικειμένων, η κίνησή τους, κ.ά.

Για το λόγο αυτό οι θεμελιώδεις έννοιες, όπως οι μετασχηματισμοί, οι προβολές (Κεφάλαιο 3) αλλά και οι χρωματικές αναπαραστάσεις (Κεφάλαιο 5), είναι κοινές και στις δύο αυτές περιοχές οι οποίες διαφοροποιούνται στον τρόπο με τον οποίο κάνουν χρήση των μαθηματικών αυτών εργαλείων.

Εικόνα 1.1. Υπολογιστική όραση και Γραφικά. Στα Γραφικά (αριστερά) είναι γνωστό το μοντέλο ενός τρισδιάστατου περιβάλλοντος και προσπαθούμε να σχεδιάσουμε ρεαλιστικά και αποδοτικά την εικόνα στο επίπεδο προβολής. Στην Υπολογιστική Όραση (δεξιά) μας δίνεται μια εικόνα ενός περιβάλλοντος και προσπαθούμε να εκτιμήσουμε τις γεωμετρικές ιδιότητές του. (Τροποπ. από Wikimedia Commons, Jo Yardley, CC-BY-SA 3.0)

Ας δούμε, όμως, τώρα ένα παράδειγμα ενός προβλήματος Γραφικών και πώς εμπλέκονται σε αυτό οι

έννοιες που θα συναντήσουμε σε κάθε κεφάλαιο του παρόντος βιβλίου. Η σκηνή μας είναι ένα δωμάτιο, στη μέση του οποίου βρίσκεται ένα τραπέζι. Πάνω στο τραπέζι βρίσκεται μια τσαγιέρα, ενώ στο δωμάτιο περιφέρεται ένας εικονικός χαρακτήρας. Ακριβώς πάνω από τραπέζι υπάρχει μια λάμπα, η οποία φωτίζει τη σκηνή. Έστω τώρα τα εξής υπολογιστικά προβλήματα τα οποία πρέπει να αντιμετωπίσουμε:

1. Τι είναι ένα εικονικό αντικείμενο και πώς αναπαρίσταται; Ένα εικονικό αντικείμενο είναι συνήθως ένα

σύνολο σημείων, τα οποία είναι κατάλληλα συνδεδεμένα μεταξύ τους, ώστε να σχηματίζουν ένα σύνολο τριγώνων τα οποία απαρτίζουν την επιφάνεια του αντικειμένου. Αυτή η αναπαράσταση καθώς και διάφορες ακόμα περιγράφονται στο Κεφάλαιο 4.

2. Πώς ορίζεται η σχετική θέση των αντικειμένων στο χώρο; Τα αντικείμενα είναι, συνήθως, κεντραρισμένα στο τοπικό τους σύστημα συντεταγμένων. Τοποθετούνται στο σύστημα συντεταγμένων κόσμου με τη χρήση κατάλληλων μετασχηματισμών, οι οποίοι περιγράφονται στο Κεφάλαιο 3.

3. Από ποιο σημείο κοιτάμε εμείς τον κόσμο και πώς προκύπτει η δύο διαστάσεων εικόνα που βλέπουμε; Σε κάποιο σημείο του εικονικού κόσμου τοποθετείται μια εικονική κάμερα, η οποία προσομοιώνει τη

Page 5: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-5

θέση του ματιού μας. Μπορούμε να κινήσουμε την κάμερα αυτή με τη χρήση κατάλληλων μετασχηματισμών, ώστε να περιηγηθούμε στο χώρο. Η προβολή του κόσμου τριών διαστάσεων σε μια εικόνα δύο διαστάσεων γίνεται με κατάλληλους μετασχηματισμούς, οι οποίοι περιγράφονται, επίσης, στο Κεφάλαιο 3.

4. Αν υποθέσουμε ότι έχουμε προβάλει μια καμπύλη στο επίπεδο, πώς μπορούμε να την σχεδιάσουμε στην εικόνα της οθόνης. Αυτή η διαδικασία είναι θεμελιώδης στα Γραφικά. Στην πράξη υπάρχει μετάβαση από ένα συνεχή χώρο σε ένα διακριτό (εικονοστοιχεία της εικόνας). Περισσότερες λεπτομέρειες, κάποιες ιδιαιτερότητες όπως και χειρισμός προβλημάτων για παράδειγμα η ταύτιση (aliasing) αναλύονται στο Κεφάλαιο 2.

5. Πώς μπορούμε να χρωματίσουμε τα αντικείμενα; Η αναπαράσταση χρώματος και κυρίως η απόδοση υφής περιγράφονται στο Κεφάλαιο 5.

6. Πώς θα επηρεαστεί η εμφάνιση της τσαγιέρας αν αλλάξουμε τις ιδιότητες της λάμπας και πώς μεταδίδεται το φως στο περιβάλλον; Ο φωτισμός είναι μια από τις σημαντικότερες διεργασίες στα συστήματα Γραφικών. Στο Κεφάλαιο 6 περιγράφονται διάφοροι τύποι φωτιστικών σωμάτων, μοντέλα φωτισμού και αλγόριθμοι φωτοσκίασης. Ακόμα περιγράφονται και οι ιδιότητες του υλικού των αντικειμένων όπως η ανακλαστικότητα.

7. Είναι προφανές ότι όταν κινείται ο εικονικός χαρακτήρας κινούνται και όλα τα μέλη του και τα ρούχα του. Πρέπει να προσέχουμε να τα κινούμε όλα ταυτόχρονα ή υπάρχει κάποιος πιο έξυπνος τρόπος; Υπάρχει έξυπνος τρόπος που βασίζεται σε μια ιεραρχική αναπαράσταση της σκηνής η οποία, ονομάζεται γράφος σκηνής. Ο γράφος σκηνής αλλά και διάφορες ιδιότητές του αναλύονται στο Κεφάλαιο 7.

8. Πώς όμως μπορούμε να κάνουμε τον εικονικό χαρακτήρα να κινείται; Η απόδοση κίνησης (animation) είναι ένα από τα πιο εντυπωσιακά στοιχεία ενός συστήματος Γραφικών. Λεπτομέρειες σχετικά με την απόδοση κίνησης συμπαγών σωμάτων, αρθρωτών αντικειμένων αλλά καθώς και προσομοιώσεις βάσει των φυσικών νόμων παρουσιάζονται στο Κεφάλαιο 8.

9. Το δωμάτιο της παραπάνω εικόνας είναι πολύ ενδιαφέρον. Μπορώ κάπως «να μπω» μέσα στο χώρο αυτό και να αισθάνομαι ότι είμαι πραγματικά μέσα; Στο Κεφάλαιο 9 περιγράφονται λεπτομέρειες των συστημάτων εικονικής πραγματικότητας καθώς και πώς μπορούμε να επιτύχουμε εμβύθιση του χρήστη στο εικονικό περιβάλλον (immersion).

10. Έχω δει εικόνες σε φορητές συσκευές όπου ένα εικονικό αντικείμενο παρουσιάζεται πάνω σε κάποιο πραγματικό! Η επαυξημένη πραγματικότητα έχει την ιδιαιτερότητα να συνδυάζει πληροφορία από τον πραγματικό και τον εικονικό κόσμο. Έτσι υπάρχει η δυνατότητα να καταγράφουμε με την κάμερα μίας φορητής συσκευής (π.χ. κινητό τηλέφωνο) ένα τραπέζι και να τοποθετούμε πάνω στο πραγματικό τραπέζι την εικονική τσαγιέρα (στην οθόνη του κινητού προφανώς). Στο Κεφάλαιο 10 αναλύονται οι τεχνικές επαυξημένης πραγματικότητας.

1.4. Σωλήνωση γραφικών Ο όρος σωλήνωση γραφικών (computer graphics pipeline) χρησιμοποιείται για να περιγράψει τον τρόπο με τον οποίο γίνεται η επεξεργασία των δεδομένων, προκειμένου να σχεδιαστεί μία σκηνή. Στην πιο αφηρημένη μορφή, ένα σύστημα γραφικών μπορεί να θεωρηθεί ως ένα «μαύρο κουτί», το οποίο δέχεται ως είσοδο κάποια δεδομένα και παράγει στην έξοδό του μια εικόνα. Πρακτικά, στα συστήματα γραφικών όλα τα στοιχειώδη αντικείμενα μιας σκηνής υπόκεινται σε επεξεργασία ακολουθιακά από διάφορα υποσυστήματα. Ένας από τους λόγους για τους οποίους χρησιμοποιείται μια τέτοιου τύπου αρχιτεκτονική είναι η παράλληλη λειτουργία όλων των υποσυστημάτων. Έτσι, όταν ένα υποσύστημα ολοκληρώσει την επεξεργασία ενός στοιχειώδους αντικειμένου προωθεί το αποτέλεσμα στο επόμενο υποσύστημα, ενώ ταυτόχρονα ξεκινά την επεξεργασία του επόμενου στοιχειώδους αντικειμένου.

Στην Εικόνα 1.2 απεικονίζεται ένα παράδειγμα σωλήνωσης γραφικών. Τα πολλών μορφών δεδομένα που απαιτούνται, χρησιμοποιούνται σε διάφορες φάσεις της επεξεργασίας. Ένα γεωμετρικό αντικείμενο μπορεί να θεωρηθεί ότι διασχίζει όλες τις διαδικασίες της σωλήνωσης γραφικών έως ότου προβληθεί σε μια συσκευή απεικόνισης. Όλα τα δεδομένα και οι διαδικασίες της σωλήνωσης γραφικών θα αναλυθούν λεπτομερώς στο παρόν σύγγραμμα. Στη συνέχεια περιγράφονται συνοπτικά και ενδεικτικά τα κυριότερα χαρακτηριστικά και οι λειτουργίες τους.

Page 6: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-6

Δεδομένα Η κυριότερη, ίσως, μορφή δεδομένων σε ένα σύστημα γραφικών είναι το γεωμετρικό αντικείμενο. Ένα αντικείμενο αποτελείται συνήθως από κορυφές οι οποίες συνδέονται μεταξύ τους σχηματίζοντας τρίγωνα. Υπάρχουν και άλλες εναλλακτικές μορφές αναπαράστασης αντικειμένων, όπως θα δούμε σε επόμενο κεφάλαιο. Πέρα, όμως, από τη γεωμετρική αναπαράσταση, ένα αντικείμενο, συνήθως, συνοδεύεται από χάρτες υφής, οι οποίοι περιγράφουν την κατανομή του χρώματος πάνω στην επιφάνεια του αντικειμένου και από πληροφορία σχετικά με το είδος του υλικού, η οποία έχει συχνά να κάνει με την ανακλαστικότητα του αντικειμένου. Πέρα από τα αντικείμενα αυτά καθαυτά, απαραίτητη πληροφορία για ένα σύστημα γραφικών είναι και οι πηγές φωτός της σκηνής αλλά και η θέση και ο προσανατολισμός του παρατηρητή. Γεωμετρικοί μετασχηματισμοί Τα γεωμετρικά μοντέλα εν γένει μοντελοποιούνται σε ένα σύστημα συντεταγμένων το οποίο να διευκολύνει τους υπολογισμούς. Το σύστημα συντεταγμένων αυτό ονομάζεται τοπικό σύστημα συντεταγμένων. Για παράδειγμα το τοπικό σύστημα συντεταγμένων μιας σφαίρας είναι κεντραρισμένο στο κέντρο της και οι τρεις ορθογώνιοι άξονες επιλέγονται τυχαία. Για την περίπτωση ενός κύβου, συνήθως, επιλέγεται ως αρχή των αξόνων το κέντρο του (κέντρο βάρους) και οι άξονες ευθυγραμμίζονται με τις πλευρές του.

Στη συνέχεια το μοντέλο τοποθετείται στο σύστημα συντεταγμένων κόσμου. Στην πράξη αυτό που γίνεται είναι να οριστεί ένας γεωμετρικός μετασχηματισμός που να μεταφέρει το τοπικό σύστημα συντεταγμένων στη συγκεκριμένη θέση του κόσμου (μεταφορά) και να το προσανατολίζει επιθυμητά (περιστροφή).

Το παραπάνω είναι ένα παράδειγμα γεωμετρικού μετασχηματισμού τριών διαστάσεων. Η δουλειά, όμως, των μετασχηματισμών δεν τελειώνει εδώ. Όλα τα αντικείμενα που περιγράφονται πλέον στο σύστημα συντεταγμένων κόσμου πρέπει να μετασχηματιστούν ως προς το σύστημα συντεταγμένων του παρατηρητή, κάτι το οποίο εμπλέκει ένα νέο 3Δ γεωμετρικό μετασχηματισμό όμοιο με το μετασχηματισμό του τοπικού συστήματος συντεταγμένων σε σύστημα συντεταγμένων κόσμου (το σύστημα συντεταγμένων παρατηρητή μπορεί να θεωρηθεί ως ένα τοπικό σύστημα συντεταγμένων για το «αντικείμενο» παρατηρητής). Στη συνέχεια πρέπει όλη η τρισδιάστατη πληροφορία των αντικειμένων να προβληθεί πάνω στο επίπεδο προβολής (viewport), το οποίο στη συνέχεια θα «αντιγράψουμε» στην οθόνη μας. Οι μετασχηματισμοί αυτοί ονομάζονται μετασχηματισμοί προβολής. Οι μετασχηματισμοί έχουν θεμελιώδη σημασία στα Γραφικά, διότι συμμετέχουν σχεδόν σε όλες τις διαδικασίες ενός Συστήματος Γραφικών, από τη σχεδίαση, έως την υφή και την απόδοση κίνησης.

Εικόνα 1.2. Η Σωλήνωση γραφικών περιγράφει όλες τις διαδικασίες που εμπλέκονται σε ένα σύστημα γραφικών. Στην παραπάνω θεώρηση τα μαύρα βέλη ιχνηλατούν τους αλγορίθμους της σωλήνωσης γραφικών, ενώ τα κόκκινα χρησιμοποιούνται για να περιγράψουν ποια δεδομένα αποτελούν είσοδο σε ποια διαδικασία.

Page 7: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-7

Χρώμα - Απεικόνιση υφής Η γεωμετρική αναπαράσταση ενός αντικειμένου δεν είναι στην πλειονότητα των περιπτώσεων τίποτα παραπάνω από ένα σύνολο σημείων, τα οποία είναι κατάλληλα συνδεδεμένα μεταξύ τους, ώστε να σχηματίζουν τρίγωνα. Άρα ως δεδομένα έχουμε: 1. Σημεία και 2. Τρίγωνα. Εάν θέλουμε να χρωματίσουμε τα αντικείμενά μας, το μόνο που μπορούμε αρχικά να κάνουμε είναι να ορίσουμε ένα χρώμα για κάθε τρίγωνο του αντικειμένου. Αυτό είναι αρκετά περιοριστικό, διότι δε μας δίνει τη δυνατότητα να «ζωγραφίσουμε» την επιφάνεια ενός τριγώνου κατά το δοκούν. Η απεικόνιση υφής έχει ως στόχο να λύσει το πρόβλημα αυτό. Έχοντας ως είσοδο μια εικόνα, ορίζεται ένας νέος μετασχηματισμός ο οποίος προβάλει τις κορυφές έστω ενός τριγώνου πάνω στην εικόνα αυτή. Στη συνέχεια με μια διαδικασία που ονομάζεται απεικόνιση υφής, «κόβουμε» το τρίγωνο της εικόνας που σχηματίζεται από τα τρία αυτά σημεία και το χρησιμοποιούμε για να χρωματίσουμε το αντίστοιχο τρίγωνο του 3Δ αντικειμένου. Έτσι με αυτόν τον τρόπο μπορούμε να αποδώσουμε διάφορα πρότυπα και μοτίβα χρωμάτων πάνω στο αντικείμενό μας. Φωτισμός Έστω τώρα ότι έχουμε τη γεωμετρική αναπαράσταση ενός αντικειμένου μαζί με τους εμπλεκόμενους μετασχηματισμούς, πάνω στο οποίο έχει εφαρμοστεί απεικόνιση υφής. Είναι σαφές και προφανές ότι ανάλογα με το φωτισμό της σκηνής το είδωλο του αντικειμένου πάνω στο επίπεδο προβολής θα είναι διαφορετικό. Πώς, όμως, μπορεί να κωδικοποιηθεί κάτι τέτοιο;

Η αρχική μας υπόθεση είναι ότι τα αντικείμενα αντανακλούν, ή διαθλούν, ή απορροφούν το φως, είτε συνδιάζουν τα παραπάνω σε κάποιο ποσοστό το καθένα. Ακόμα ο αέρας ούτε αντανακλά (σκέδαση) ούτε απορροφά φως. Στη συνέχεια καθορίζεται ο τρόπος με τον οποίο αντανακλά μια επιφάνεια το φως. Πιο συγκεκριμένα το φως μπορεί να αντανακλάται μόνο σε μια κατεύθυνση (καθρέφτης) είτε να διαχέεται προς όλες τις κατευθύνσεις (ματ επιφάνειες). Όλες οι παραπάνω παράμετροι κωδικοποιούνται στο μοντέλο φωτισμού Phong, το οποίο θα εξετάσουμε διεξοδικά στο αντίστοιχο κεφάλαιο. Παρά το γεγονός, όμως, ότι το μοντέλο Phong χρησιμοποιείται ευρύτατα, δεν παύει να είναι μια χαμηλού υπολογιστικού κόστους προσέγγιση του τρόπου με τον οποίο αλληλεπιδρά το φως με την ύλη. Σχεδιασμός Το τελευταίο στοιχείο της σωλήνωσης γραφικών μπορεί να θεωρηθεί ο σχεδιασμός των γεωμετρικών στοιχείων και καμπυλών μιας σκηνής. Εδώ το σημαντικότερο πρόβλημα είναι το πώς μπορεί κανείς να απεικονίσει συνεχείς καμπύλες (ευθύγραμμα τμήματα, τόξα, τρίγωνα) σε ένα πλέγμα πεπερασμένου αριθμού σημείων (εικονοστοιχεία). Για την αντιμετώπιση των προβλημάτων που συνεπάγεται η διακριτοποίηση αυτή χρησιμοποιούνται διάφορες τεχνικές όπως η αντι-ταύτιση (anti-aliasing). Συσκευές παρατήρησης Παραδοσιακά οι συσκευές παρατήρησης σε ένα σύστημα γραφικών θεωρούνται οι προσωπικοί υπολογιστές και κατ’ επέκταση οι οθόνες τους. Ενώ η τεχνολογία κατασκευής οθονών εξελίσσεται ραγδαία παραμένει αναλλοίωτος έως σήμερα ο τρόπος με τον οποίο γίνεται η απεικόνιση της πληροφορίας με χρήση εικονοστοιχείων. Πιο συγκεκριμένα, η επιφάνεια μιας οθόνης χωρίζεται σε ένα πλέγμα από εικονοστοιχεία (pixels) τα οποία μπορούν να πάρουν ένα συγκεκριμένο χρώμα. Αυτή η διακριτή μορφή αναπαράστασης είναι πολύ σημαντική υπόθεση για το σχεδιασμό αντικειμένων, όπως θα δούμε και στο Κεφάλαιο 2.

Με τη ραγδαία, όμως, αύξηση της ισχύος των φορητών υπολογιστικών μηχανών, ως συσκευές παρατήρησης συστημάτων γραφικών λογίζονται πλέον και όλες οι φορητές συσκευές συμπεριλαμβανομένων των κινητών τηλεφώνων. Ακόμα, πολύπλοκες συσκευές παρατήρησης εικονικής και επαυξημένης πραγματικότητας που τη δεκαετία του 2000 είχαν απαγορευτικό κόστος, πλέον είναι προσιτές στο ευρύ κοινό και παρουσιάζουν ιδιαίτερο ενδιαφέρον, όπως θα δούμε και στο Κεφάλαιο 9.

1.5. Εφαρμογές Τα συστήματα γραφικών έχουν εφαρμογή σε πάρα πολλές περιοχές της επιστήμης αλλά και της καθημερινότητάς μας. Στη συνέχεια παρουσιάζονται ενδεικτικά κάποιες από τις περιοχές αυτές.

Page 8: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-8

1.5.1. Διασκέδαση Μια από τις κύριες και άμεσες εφαρμογές των Συστημάτων Γραφικών είναι στην περιοχή της διασκέδασης. Στην περιοχή αυτή την πλειοψηφία κατέχουν τα 3Δ παιχνίδια (Εικόνα 1.3) τα οποία αποτελούν ένα πολύ μεγάλο κομμάτι της παγκόσμιας οικονομίας, ενώ παρουσιάζουν και ραγδαία αύξηση στον 21ο αιώνα.

α) πολλαπλών χρηστών (Πηγή: Wikimedia Commons, Jo Yardley, CC-BY-SA 3.0)

β) περιπέτειας με εκπαιδευτικό περιεχόμενο [Καραμπάτη & Πατρινός, 2009]

Εικόνα 1.3. Παραδείγματα αλληλεπιδραστικών παιχνιδιών

1.5.2. Ιατρική

Τα τελευταία χρόνια παρουσιάζει ιδιαίτερη ανάπτυξη στον τομέα της ιατρικής η περιοχή της απεικόνισης (imaging), η οποία έχει ως στόχο τη μεταφορά πληροφορίας του οργανισμού ενός ασθενούς σε κάποιο εξωτερικό μέσο (π.χ. πλάκα ακτινογραφίας) με μη επεμβατικό τρόπο. Η περιοχή αυτή εμπλέκει τεχνολογίες υπολογισμού μιας εικόνας (εκπομπή ηλεκτρονίων, ποζιτρονίων, μαγνητικός συντονισμός, κ.ά.) αλλά και τεχνολογίες γραφικών και απεικόνισης της πληροφορίας αυτής με τέτοιο τρόπο, ώστε να είναι χρήσιμη στο θεράποντα ιατρό (Εικόνα 1.4).

α) Καρδιαγγειακό σύστημα (Πηγή: BruceBlaus, Blausengallery, CC BY 3.0)

β) Αραχνοειδίτιδα (Πηγή: BruceBlaus, Blausen gallery, CC BY 3.0)

γ) Ανατομία μυοσκελετικού συστήματος (Πηγή: Wikimedia Commons, BodyParts3D/ Anatomography, CC BY-SA 2.1 JP)

δ) Πνεύμονες (Πηγή: Wikimedia Commons, Eboelen, CC0 1.0)

Εικόνα 1.4. Παραδείγματα 3Δ απεικόνισης ιατρικών δεδομένων

Page 9: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-9

Πέρα από τις παραδοσιακές μεθόδους απεικόνισης σε πλάκες και αντίστοιχα συμβατικά μέσα, τα τελευταία χρόνια η πληροφορία μπορεί να χρησιμοποιηθεί ώστε να ανακατασκευαστεί ένα 3Δ αντίγραφο του εσωτερικού του οργανισμού ενός ασθενούς και το οποίο μπορεί στη συνέχεια να εξετάσει ο ιατρός. 1.5.3. Απεικόνιση πληροφορίας – Δεδομένα μεγάλου όγκου

Μια ιδιαίτερα σημαντική εφαρμογή των συστημάτων γραφικών είναι η απεικόνιση πληροφορίας και γενικότερα οπτικοποίηση δεδομένων (Εικόνα 1.5). Ιδιαίτερα η συνεργασία των γραφικών με τη στατιστική και την οπτικοποίηση δεδομένων ακολούθησε μια ιστορική πορεία αλληλεξάρτησης του ενός από τα άλλα [Friendly, 2006)]. Εδώ, σε αντίθεση με την περίπτωση της ιατρικής απεικόνισης όπου συνηθίζεται η πληροφορία που απεικονίζεται να αφορά γεωμετρικές οντότητες (π.χ. πνευμόνια, σκελετός), η απεικόνιση γίνεται, συνήθως, σε αφηρημένους χώρους οι οποίοι επιλέγονται ανάλογα με την εφαρμογή.

α) Ζώνες Van Allen (Πηγή: NASA, Goddard Space Flight Center)

β) Αεροδυναμική φτερού (Πηγή: Wikimedia Commons,

Thierry Dugnolle, CC0 1.0)

γ) 3Δ απεικόνιση δικτύων και δενδρικών δομών (K-partite graph visualization) [Papadopoulos et al., 2014]

δ) Απεικόνιση μεγάλου όγκου δεδομένων (Πηγή: Wikimedia Commons, Lawrence Livermore National Laboratory, Public Domain)

Εικόνα 1.5. Παραδείγματα απεικόνισης πληροφορίας

Βιβλιογραφία/Αναφορές

Blausengallery (2014). Wikiversity, Journal of Medicine, DOI:10.15347/wjm/2014.010, ISSN 20018762.

Friendly M. (2006). A Brief History of Data Visualization, Handbook of Computational Statistics: Data Visualization, pp. 15-56.

Papadopoulos S., Mavroudis V., Drosou A., Tzovaras D. (2014). Visual Analytics for Enhancing Supervised Attack Attribution in Mobile Networks, Information Sciences and Systems, pp. 193-203.

Page 10: Κεφάλαιο 1 Εισαγωγή - repository.kallipos.gr · 1-1 . Κεφάλαιο 1 - Εισαγωγή . Σύνοψη. Στο πρώτο κεφάλαιο του βιβλίου

1-10

Καραμπάτη Π., Πατρινός ΑΙ. (2009). Η χρήση των ηλεκτρονικών παιχνιδιών ως μουσειακών εκπαιδευτικών εργαλείων: η περίπτωση του Μουσείου Μακεδονικού Αγώνα, MUSEOLOGY – International Scientific Electronic Journal, 5, σελ. 16-34.