Home > Posts > Hotspotizer (εφαρμογή για Kinect, μετάφραση άρθρου στα ελληνικά)

Hotspotizer (εφαρμογή για Kinect, μετάφραση άρθρου στα ελληνικά)

Το παρακάτω κείμενο είναι μετάφραση στα ελληνικά της σελίδας:
http://designlab.ku.edu.tr/hotspotizer

Σχετική διπλωματική εργασία (του Mehmet Aydın Baytaş):
https://github.com/mbaytas/thesis/releases

Ο πηγαίος κώδικας της εφαρμογής Hotspotizer είναι διαθέσιμος στο:
https://github.com/mbaytas/Hotspotizer

Μια βελτιωμένη έκδοση του πηγαίου κώδικα της εφαρμογής Hotspotizer είναι διαθέσιμη στο:
http://github.com/birbilis/Hotspotizer


Επιβλέποντες: Prof Oğuzhan Özcan, Dr Yücel Yemez
Ανάπτυξη ιδέας: Mehmet Aydın Baytaş, Dr Ayça Ünlüer
Ανάπτυξη λογισμικού: Mehmet Aydın Baytaş

Σχετικό έργο: Προδιαγραφές πάνω σε Εκπαίδευση Σχεδίασης για Διάδραση μέσω Νευμάτων

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

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

Το Hotspotizer επικεντρώνεται γύρω από ένα καινοτόμο, εύκολο στη χρήση γραφικό περιβάλλον διεπαφής, βασισμένο στη διακριτοποίηση του χώρου, για τον προσδιορισμό ελεύθερης μορφής, πλήρους σώματος νευμάτων (δηλ. τη “διδαχή” νευμάτων στον υπολογιστή) για χρήση με τον αισθητήρα Microsoft Kinect.

hotspotizer_cover

Το Hotspotizer έχει σχεδιαστεί κυρίως για τους παρακάτω σκοπούς:

  • Ψηφιακές τέχνες και εκπαίδευση σχεδίασης
  • Ταχεία πρωτοτυποποίηση διαδραστικών εφαρμογών με νεύματα πλήρους σώματος
  • Παιχνίδια
  • Προσαρμογή οποιουδήποτε λογισμικού χειριζόμενου μέσω πληκτρολογίου για χειρισμό με νεύματα

Στιγμιότυπα οθόνης

Προαπαιτούμενα

*: Το Hotspotizer θα ελέγξει και υποβοηθήσει για την εγκατάσταση αυτών των πακέτων λογισμικού κατά την εγκατάσταση του.
**: Το Hotspotizer θα ελέγξει και υποβοηθήσει για την εγκατάσταση αυτών των πακέτων λογισμικού κατά την εκκίνηση του.

Άδεια χρήσης (διαθέσιμο για κάθε χρήση, με υποχρεωτική παράθεση της άδειας)

The MIT License (MIT)
Copyright (c) 2014 Mehmet Aydın Baytaş

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Εγκατάσταση

Λήψη: Hotspotizer_1.zip (4 MB)

Αποσυμπιέστε το συμπιεσμένο αρχείο και τρέξτε το setup.exe για εγκατάσταση.

Εναλλακτικά (αν τα προαπαιτούμενα είναι εγκατεστημένα), μπορείτε απευθείας να τρέξετε το Hotspotizer.exe από τον υποφάκελο Application Files/Hotspotizer_X_X_X_X/.

Πρώτα βήματα

Το Hotspotizer αποτελείται από τρεις ενότητες:

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

Εκκινήστε το Hotspotizer για την έναρξη μιας οθόνης Διαχειριστή με ένα άδειο σύνολο νευμάτων:

Αν το Hotspotizer δεν μπορεί να συνδεθεί επιτυχώς στον αισθητήρα Kinect σας, μια προειδοποίηση θα εμφανιστεί στη αριστερή πλευρά και οι λειτουργίες που σχετίζονται με το Kinect θα απενεργοποιηθούν.

has_addnew

Πατήστε το κουμπί “Προσθήκη νέου νεύματος” (Add New Gesture) για την έναρξη του Επεξεργαστή.

Θα υλοποιήσουμε ένα απλό νεύμα "αρπαγής" με το δεξί χέρι, από αριστερά προς τα δεξιά. Θα αντιστοιχίσουμε αυτό το νεύμα με το πλήκτρο "κενό" (space).

Αφού ονομάσετε το νεύμα, πατήστε το κουμπί "Εντολή πληκτρολογίου (Keyboard Command) για να ορίσετε την αντιστοίχιση πληκτρολογίου. Πατήστε το πλήκτρο "κενό" και κάντε κλικ στο σύμβολο "επιλογής" (check) για αποδοχή.

Το κουμπί δυο θέσεων "Πάτημα/Κράτημα" δίπλα στο κουμπί "Εντολή πληκτρολογίου" (Keyboard Command) ορίζει αν η εκτέλεση του νεύματος θα πρέπει να στείλει ένα μόνο πάτημα πλήκτρου ή να κρατήσει πατημένο το κουμπί πληκτρολογίου όσο το παρακολουθούμενο άκρο παραμένει στα ενεργά σημεία του τελευταίου βήματος του νεύματος.

Μπορείτε να αντιστοιχίσετε τα νεύματα σας σε οποιοδήποτε συνδιασμό πλήκτρων, όχι μονάχα ένα κουμπί.

Επιλέξτε το άκρο που θα χρησιμοποιηθεί για να εκτελεστεί το νεύμα – στην περίπτωση αυτή, το δεξί χέρι.

image

Θα υλοποιήσουμε ένα νεύμα “αρπαγής” που συμπεριλαμβάνει 3 βήματα: Το δεξί χέρι θα περάσει μέσα από “ενεργά σημεία” (hotspots) στα αριστερά, στο μέσο, και στα δεξιά αντίστοιχα.

Σημειώστε τα ενεργά σημεία για το πρώτο βήμα στο πλέγμα εμπρόσθιας όψης πρώτα. Στο πλέγμα πλευρικής όψης, που αρχικά είναι πλήρως απενεργοποιημένο, αυτό θα ενεργοποιήσει τις γραμμές που αντιστοιχούν σε αυτά τα ενεργά σημεία. Έπειτα σημειώστε τα ενεργά σημεία στο πλέγμα πλευρικής όψης. Θα δείτε τα ενεργά σημεία να οπτικοποιούνται στην τρισδιάστατη όψη (3D viewport).

Ένα “ενεργό σημείο” ορίζει ένα κυβικό κελί 15 εκ x 15 εκ x 15 εκ. Το πλέγμα εμπρόσθιας όψη σηματοδοτεί που βρίσκονται αυτά τα κελιά οριζόντια και κατακόρυφα. Το πλέγμα πλευρικής όψης σηματοδοτεί που βρίσκονται κατακόρυφα και εις βάθος. Το Hotspotizer ακολουθεί τα επιλεγμένα άκρα για κάθε νεύμα και καταχωρεί πότε περνούν από τα σημειωμένα ενεργά σημεία.

Μπορείτε να περιστρέψετε την 3D όψη στον Επεξεργαστή και τον Οπτικοποιητή κάνοντας δεξί κλικ και κρατώντας το δεξί πλήκτρο του ποντικιού πατημένο καθώς κινείτε το ποντίκι τριγύρω. Μπορείτε να μεγεθύνετε και σμικρύνετε χρησιμοποιώντας τη ρόδα κύλισης του ποντικιού ή το δεξί πλήκτρο του ποντικιού μαζί με το κουμπί Ctrl του πληκτρολογίου.

Μπείτε μπροστά από το Kinect για να δοκιμάσετε τα δοκιμάσετε. Δείτε αν τα ενεργά σημεία που σημειώστε αντιστοιχούν πραγματικά στο σημείο που θέλετε το δεξί σας χέρι να είναι όταν αρχίζετε το νεύμα.

Προσθέστε το δεύτερο (μεσαίο) βήμα χρησιμοποιώντας το κουμπί “Προσθήκη νέου βήματος” (Add New Frame) και σημειώστε ενεργά σημεία σε αυτό. Έπειτα προσθέστε το τρίτο βήμα.

Μπορείτε να επιστρέψετε και επεξεργαστείτε κάποιο βήμα κάνοντας κλικ πάνω τους στη χρονογραμμή στο κάτω μέρος. Μπορείτε επίσης να αναδιατάξετε και διαγράψετε βήματα χρησιμοποιώντας τα κουμπιά κάτω από τα μικρά πλαίσια των βημάτων εκεί.

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

 hs_savegesture

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

hs_play

Πατήστε το κουμπί “Έναρξη εξομοίωσης” (Begin Emulation) (ή “Παίξιμο” [Play]) για να εκκινήσετε τον Οπτικοποιητή. Ο Οπτικοποιητής θα εμφανίσει:

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

Τα ενεργά σημεία και τα αντικείμενα της λίστας θα φωτιστούν καθώς πραγματοποιείτε το νεύμα. Μπείτε μπροστά από το Kinect και δοκιμάστε το!

Όταν ένα παρακολουθούμενο άκρο περνά από τα ενεργά σημεία που ανήκουν σε ένα νεύμα, η εντολή πληκτρολογίου αυτού του νεύματος εκτελείται. Αυτό επίσης λειτουργεί όταν το Hotspotizer είναι κρυμμένο ή όταν μια άλλη εφαρμογή είναι σε χρήση (στο προσκήνιο).

Το νεύμα “αρπαγής”, για παράδειγμα, μπορεί να χρησιμοποιηθεί για να προχωρήσουν οι διαφάνειες μιας παρουσίασης.

Στο Διαχειριστή, μπορείτε να προσθέσετε νέα νεύματα στη συλλογή νευμάτων σας (για παράδειγμα, ένα νεύμα “ανάστροφης αρπαγής” αντιστοιχισμένο στο πλήκτρο “backspace” [σβησίματος προηγούμενου χαρακτήρα] για την εμφάνιση της προηγούμενης διαφάνειας κατά τη διάρκεια μιας παρουσίασης), ή να αποθηκεύσετε τη συλλογή νευμάτων για μελλοντική χρήση.

Οι συλλογές νευμάτων αποθηκεύονται ως δεδομένα “JSON”, με την επέκταση αρχείου “.hsjson”. Περίεργοι και τεχνικά επιδέξιοι χρήστες μπορούν να επεξεργαστούν αυτά τα αρχεία για να διερευνήσουν δυνατότητες χρήσης.

Σημειώσεις έκδοσης

  • 1.0.0 εισάγει ενημερώσεις στη γραφική διεπαφή (GUI), μαζί με βελτιώσεις στις επιδόσεις και τη σταθερότητα.
  • 0.9.7 εισάγει μια διόρθωση που δεν επιτρέπει σε ένα νεύμα να μην περιέχει βήματα.
  • 0.9.6 εισάγει αλλαγές στη γραφική διεπαφή και διορθώνει ένα σφάλμα στην εξομοίωση πληκτρολογίου που επηρέαζε τα νεύματα που ήταν αντιστοιχισμένα σε συνδυασμούς πλήκτρων.
  • 0.9.5 διορθώνει ένα πρόβλημα με την ανάγνωση πλήκτρων του πληκτρολογίου που δεν επέτρεπε συνδυασμούς πλήκτρων που περιελάμβαναν το πλήκτρο “alt”, και εισάγει μικρές βελτιώσεις γραφικής διεπαφής στον Οπτικοποιητή.
  • 0.9.4 εισάγει βελτιώσεις στη γραφική διεπαφή για τη βελτίωση της αναγνώρισης των ενεργών σημείων στον Επεξεργαστή.
  • 0.9.3 διορθώνει ένα πρόβλημα με τον αναγνωριστή νεύματος που έκανε τα νεύματα μονού βήματος που ήταν ρυθμισμένα να στέλνουν πατήματα πλήκτρων, να τα κρατούν πατημένα.
  • 0.9.2 διορθώνει το πρόβλημα με τη μη σωστή εμφάνιση των εικονιδίων στα Windows 7.
  • 0.9.1 διορθώνει μικρά προβλήματα στον αναγνωριστή νεύματος.
  • 0.9.0 αρχική δημόσια έκδοση.
Γνωστά θέματα στην τρέχουσα έκδοση
  • Η εφαρμογή μπορεί να εμφανίσει σφάλμα στην εκκίνηση της, αφού εμφανίσει μήνυμα προειδοποίησης, αν το Kinect Runtime δεν είναι εγκατεστημένο.
Advertisements
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: