Προηγμένες Τεχνολογίες Αλληλεπίδρασης και Εφαρμογές (Φυσικές Διεπαφές Χρήστη-Natural User Interfaces, NUIs) [open]

Koutsabasis Panayiotis

Περιγραφή

Οι φυσικές διεπαφές χρήστη είναι μια γενική έννοια που αφορά την εκμετάλευση των ανθρώπινων τρόπων επικοινωνίας (φωνή, βλέμμα, κίνηση, χειρονομίες, κ.α.) για αλληλεπίδραση με τον Η/Υ, προφανώς σε νέα πλαίσια χρήσης και εφαρμογές.

Το μάθημα κάνει μια εκτεταμένη εισαγωγή σε θέματα σχεδίασης, ανάπτυξης, εφαρμογής και αξιολόγησης προηγμένων διεπαφών χρήστη (advanced user interfaces) και φυσικών διεπαφών χρήστη (natural user interfaces, NUIs). Οι στόχοι του μαθήματος είναι: 

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

Το μάθημα περιλαμβάνει Θεωρία και Εργαστήριο. 

Στη Θεωρία οι μορφές διεπαφών που συζητούνται είναι: Κιναισθητικές διεπαφές / διεπαφές με χειρονομίες (Kinesthetic / gestural user interfaces), Πολυαπτικές διεπαφές για μεγάλες οθόνες και διαδραστικά τρ

Περισσότερα  
CC - Αναφορά Δημιουργού

Ενότητες

Οι καθιερωμένες διεπαφές χρήστη βασίζονται στην χρήση υλικού όπως πληκτρολόγιο, ποντίκι, οθόνη, και προϋποθέτουν την χρήση του Η/Υ σε θέση εργασίας. Πλέον, ο υπολογιστής αλλάζει μορφή και δυνατότητες, επίσης πολλά βιομηχανικά προϊόντα αποκτούν δυνατότητες υπολογισμού, ενώ σε κάποιες περιπτώσεις η διεπαφή χρήστη «εξαφανίζεται». Η εισαγωγή στο θεωρητικό μέρος του μαθήματος παρουσιάζει τα παραπάνω θέματα και εξηγεί και τις πρακτικές λεπτομέρειες του μαθήματος. 

Λέξεις κλειδιά: Φυσικές Διεπαφές Χρήστη (Natural User Interfaces, NUIs), ιστορική αναδρομή, πρακτικά θέματα. 

Οι διεπαφές κιναισθητικού ελέγχου, υπό μια ευρεία οπτική, αφορούν στην εκμετάλευση των παρακάτω για την αλληλεπίδραση με τον υπολογιστή: κινήσεις δακτύλων - «νοηματική», κινήσεις χεριών, στάσεις σώματος (postures), κινήσεις ποδιών (πίεση, προσανατολισμός, βηματισμός τρέξιμο, κλπ), εκφράσεις προσώπου, βλέμμα (gaze interaction), χρήση γραφίδας (pen-based interfaces), κ.α. Η έμφαση είναι σε ασύρματες διεπαφές, χωρίς επιπλέον βοηθήματα (accessory free interfaces). 

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

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

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

Η έρευνα σχετικά με την καταδίωξη βλέμματος είναι διεπιστημονική, και από τη 10ετία του 1980 μεγαλώνει το ενδιαφέρον σε μελέτες αλληλεπίδρασης ανθρώπου-υπολογιστή. Οι κύριες εφαρμογές της τεχνολογίας είναι για τη προσβασιμότητα των υπολογιστών από ανθρώπους με ειδικές ανάγκες, και για την αξιολόγηση της εμπειρίας του χρήστη. Πάντως, τα τελευταία χρόνια η τεχνολογία έχει εξελιχθεί πολύ σε βαθμό να χαρακτηρίζεται ελκυστική (διακριτική: χωρίς καλώδια και φυσική διασύνδεση. κομψή, με απλή βαθμονόμηση, επιτρέποντας αρκετή κινητικότητα του κεφαλιού και με μεγαλύτερη αξιοπιστία και ακρίβεια στην καταγραφή).

Λέξεις κλειδιά: αλληλεπίδραση με το βλέμμα (gaze interaction), τεχνικές αλληλεπίδρασης (interaction techniques), καταδίωξη ματιού (eye tracking), αξιολόγηση και οπτικοποιήσεις, ιστορική αναδρομή, τεχνολογίες, οδηγίες, μέθοδοι σχεδίασης, παραδείγματα. 

Σήμερα οι Φωνητικές διεπαφές (voice user interfaces) αφορούν σε ένα μεγάλο εύρος εφαρμογών που κυμαίνεται από τη χρήση του προσωπικού υπολογιστή και του φορητού τηλεφώνου μέχρι τη τηλεόραση και του αυτοκινήτου. Οι σχετικές διαλέξεις διακρίνουν τις εξής κατηγορίες συστημάτων: Συστήματα εκφοράς λόγου από κείμενο (Text to Speech - TTS) και βοηθητικές τεχνολογίες (assistive technologies). Διεπαφές αυτόματης φωνητικής απάντησης (Interactive Voice Response Interfaces). Διεπαφές (αναγνώρισης) φωνής ((Speech Recognition or) Voice User Interfaces, VUIs). 

Λέξεις κλειδιά: Συστήματα εκφοράς λόγου από κείμενο (Text to Speech - TTS), Διεπαφές αυτόματης φωνητικής απάντησης (Interactive Voice Response Interfaces, IVR), Διεπαφές (αναγνώρισης) φωνής ((Speech Recognition or) Voice User Interfaces, VUIs) ιστορική αναδρομή, τεχνολογίες, οδηγίες, μέθοδοι σχεδίασης, παραδείγματα. 

Οι διεπαφές εγκεφάλου-υπολογιστή (brain-computer interfaces) συνδέουν το ανθρώπινο νευρικό σύστημα και τον υπολογιστή με στόχο να γίνει χειρισμός συσκευών με τη σκέψη. Η διεπαφή λαμβάνει το εγκεφαλικό σήμα και το μετατρέπει σε ψηφιακό, απομονώνει τα χαρακτηριστικά του σήματος (feature extraction) και το μετατρέπει (translation) σε εντολή συστήματος. Ιδανικά μια BCI αλληλεπίδραση θα πρέπει να γίνεται με μικρή προσπάθεια, σε καταστάσεις όπου είναι ασφαλείς για το χρήστη και εύκολο γι αυτόν να ελέγξει ή να αλλάξει. Κάποιες εφαρμογές σήμερα περιλαμβάνουν τη χρήση ρομποτικού βραχίονα, τη κίνηση αναπηρικής καρέκλας, τη πλοήγηση σε εικονικό κόσμο και το χειρισμό του ποντικιού με τη σκέψη. 

Λέξεις κλειδιά: Διεπαφές Εγκεφάλου-υπολογιστή (Brain-Computer Interfaces, BCI), ιστορική αναδρομή, τεχνολογίες, οδηγίες, μέθοδοι σχεδίασης, παραδείγματα. 

Η γλώσσα προγραμματισμού Processing έχει δημιουργηθεί για τη διδασκαλία βασικών εννοιών προγραμματισμού με έμφαση στη χρήση οπτικών στοιχείων που ζωγραφίζονται επί της οθόνης του υπολογιστή. Πρόκειται για πολύ συνοπτική και ευέλικτη γλώσσα, στην οποία είναι δυνατόν να γραφτούν προγράμματα που έχουν κάποια λειτουργικότητα με ελάχιστες γραμμές κώδικα. Ο στόχος των δημιουργών της γλώσσας ήταν να χρησιμοποιηθεί από καλλιτέχνες και σχεδιαστές διαδραστικών συστημάτων χωρίς να απαιτείται προηγούμενη γνώση προγραμματισμού. Η Processing είναι γλώσσα ανοικτού κώδικα και βασίζεται στη Java (επίσης ανοικτού κώδικα), ενώ κάθε πρόγραμμα της Processing μετατρέπεται σε Java και εκτελείται ως applet. Οι δημιουργοί της είναι οι Casey Reas και Ben Fry οι οποίοι ήταν διδακτορικοί φοιτητές στο Aesthetics and Computation Group, ΜΙΤ Media Lab.

Η Processing μπορεί να χρησιμοποιηθεί αυτόνομα, αλλά και (αυτό είναι το πιο συναρπαστικό) σε συνεργασία με συσκευές όπως το Kinect, Arduino, πολυαπτικά τραπέζια, κινητά τηλέφωνα (π.χ. Android) αλλά και εφαρμογές προσωπικού υπολογιστή, ιδιαίτερα αν είναι γραμμένες σε Java. Για να συνεργαστεί με άλλες συσκευές και προγραμματιστικά περιβάλλοντα απαιτούνται κατάλληλες βιβλιοθήκες.

Στο εργαστήριο επιδεικνύεται η γλώσσα Processing και η συνεργασία της με τον αισθητήρα Kinect μέσω της χρήσης της βιβλιοθήκης simpleOpenNI. Η βιβλιοθήκη SimpleOpenNI χρησιμοποιεί το OpenNI SDK για να δώσει πρόσβαση στο kinect από τη γλώσσα προγραμματισμού Processing. ‘Εχει γραφτεί από τον Max Reiner (interaction designer, προγραμματιστής της Processing, συγγραφέας του βιβλίου Generative Design) και έγινε διαθέσιμη το Σεπτέμβρη του 2013. 

Λέξεις κλειδιά: Processing, OpenNI library, Kinect. 

Ο  προγραμματισμός του αισθητήρα Kinect για κιναισθητικό έλεγχο με στη γλώσσα προγραμματισμού C# (Visual Studio, Kinect SDK 1.8) προϋποθέτει ότι οι φοιτητές έχουν διδαχθεί C# (αν και παρουσιάζονται κάποιες επιπλέον έννοιες).

Το εργαστήριο επικεντρώνεται στα εξής: Εγκατάσταση απαραίτητων προγραμμάτων και παραδείγματα επίδειξης. Προγραμματισμός σε Visual Studio, C# (WPF) και Kinect SDK για αξιοποίηση των δεδομένων της κάμερας χρώματος, της κάμερας βάθους και σκελετού (skeleton data). Ανίχνευση κινήσεων σώματος και χειρονομιών του χρήστη μέσα από ανάπτυξη απλής μηχανής αναγνώρισης χειρονομιών. Χρήση των δεδομένων ήχου της συστοιχίας μικροφώνων του kinect. 

Η πιο σημαντική καινοτομία που φέρνει το kinect είναι ότι επί της ουσίας πρόκειται για μια κάμερα βάθους (depth camera). Με άλλα λόγια το kinect μπορεί να εκτιμά με μεγάλη ακρίβεια την απόσταση κάθε σημείου από αυτό, κατ’ αντιστοιχία με το ανθρώπινο μάτι! Επιπλέον, το kinect SDK δίνει τη δυνατότητα πρόσβασης σε κλάσεις με δεδομένα ανθρώπινου σκελετού (σημεία αρθρώσεων στο 3Δ χώρο), προσώπου, αλλά και τοπικά εντοπισμένου ήχου (σε συνδυασμό δηλαδή με μηχανή αναγνώρισης φωνής μπορούν να αναπτυχθούν σχετικές εφαρμογές). Το kinect μπορεί να χρησιμοποιηθεί (και ήδη χρησιμοποιείται, ερευνητικά) για ευρεία γκάμα εφαρμογών όπως: αναγνώριση χειρονομιών και στάσεων σώματος για κιναισθητική αλληλεπίδραση, βοηθητική τεχνολογία για ΑμΕΑ, αναγνώριση προσώπου (εκφράσεων, συναισθημάτων, εκφοράς λόγου, κ.α.), αναγνώριση αντικειμένων (και διαχείριση σκηνών, π.χ. για κινηματογραφία), ανάλυση κίνησης (για κινηματογραφία, παιχνίδια, κ.α.) και βαδίσματος, 3Δ ανίχνευση (scanning) αντικειμένων (για διαχείριση νεφών σημείων, ή/και μετάπειτα αναπαραγωγή και 3Δ εκτύπωση), 3Δ όραση σε ρομπότ (για αποφυγή εμποδίων), τηλεπαρουσία, κ.ο.κ. Πριν την έλευση του kinect όλες οι παραπάνω εφαρμογές αντιμετωπίζαν τρομερούς περιορισμούς επειδή χρησιμοποιούσαν 2Δ υπολογιστική όραση. Η σχετική έρευνα και τεχνολογική ανάπτυξη είναι ραγδαία σε όλες τις παραπάνω κατευθύνσεις με τη χρήση του kinect.

Λέξεις κλειδιά: C#, Visual Studio, Kinect, Kinect SDK. 

Ανοικτό Ακαδ. Μάθημα

Ανοικτά Ακαδημαϊκά Μαθήματα
Επίπεδο: A-

Αρ. Επισκέψεων :  4374
Αρ. Προβολών :  13192