Σε αυτό το εργαστήριο θα δούμε πως μπορούμε να αξιοποιήσουμε το πρόσθετο αναγνώρισης σώματος που έχει το Pictoblox στην κατηγορία της Τεχνητής Νοημοσύνης. Η συγκεκριμένη AI έχει εκπαιδευτεί με χιλιάδες δεδομένα ώστε να αναγνωρίζει πάνω σε μια εικόνα ή βίντεο διάφορα σημεία του ανθρώπινου σώματος, όπως: αυτιά, μάτια, μύτη, χέρια, δάχτυλα, αγκώνες, γόνατα, γοφοί κλπ.
Αναγνώριση σημείων προσώπου – Φίλτρα προσώπου
Θα προσπαθήσουμε να αναγνωρίσουμε αρχικά διάφορα σημεία του προσώπου μας και να τοποθετήσουμε σε αυτό γυαλιά και ένα μουστάκι.
Πριν προχωρήσω στις εντολές για τα γυαλιά θα ελέγξω αρχικά την ενδυμασία για να δω που βρίσκεται το κέντρο της. Όπως παρατηρώ στην παρακάτω εικόνα το κέντρο των γυαλιών είναι στο ύψος της μύτης. Άρα αν κεντράρω τον χαρακτήρα με την μύτη που θα αναγνωρίζεται από το βίντεο θα πετύχω το αποτέλεσμα που επιθυμώ.
Πάω να γράψω τώρα το σενάριο για τα γυαλιά. Αρχικά θα ενεργοποιώ το βίντεο με 0% διαφάνεια και θα ενεργοποιήσω την εμφάνιση των πράσινων κύκλων που μου επιτρέπουν να βλέπω την αναγνώριση των σημείων από την AI. Μέσα σε μια δομή επανάληψης που θα γίνεται συνέχεια θα αναλύω την εικόνα από την κάμερα και θα ορίσω τις θέσεις X και Υ των γυαλιών ώστε να πηγαίνουν στις θέσεις X και Y της μύτης που αναγνωρίζεται από την κάμερα.
Το αποτέλεσμα είναι καλό αλλά έχει ένα πρόβλημα. Αν έρθω πολύ κοντά στην κάμερα ή αν φύγω πολύ μακριά, τα γυαλιά φαίνονται άσχημα στο πρόσωπο μου.
Θα πρέπει λοιπόν να αλλάζω διαρκώς το μέγεθος των γυαλιών ώστε να ταιριάζει με το μέγεθος του προσώπου μου, το οποίο είναι μεγαλύτερο όταν έρχομαι κοντά στην κάμερα και μικρότερο όταν φεύγω μακριά. Χρησιμοποιώ τις θέσεις X των ματιών. Η διαφορά τους θα γίνεται μεγαλύτερη όσο μεγαλώνει και το πρόσωπο.
Επίσης πολλαπλασιάζω το αποτέλεσμα της αφαίρεσης και με έναν συντελεστή. Στην δική μου περίπτωση το 2 ήταν ιδανικό!
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_2-1.png)
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_1-1.png)
Πάμε τώρα να βάλουμε το μουστάκι.
Παρατηρώ ότι και αυτή η ενδυμασία έχει στο κέντρο της την μύτη άρα μπορώ να χρησιμοποιήσω τον ίδιο κώδικα όπως και στα γυαλιά, χωρίς τις αρχικές εντολές οι οποίες δεν χρειάζεται να εκτελεστούν πάλι.
Αναγνώριση δαχτύλων χεριού – Ποιον αριθμό δείχνω;
Πάμε τώρα να κάνουμε ένα δεύτερο πρόγραμμα το οποίο θα αναγνωρίζει ποιον αριθμό δείχνουμε στην οθόνη με τα δάχτυλα μας. Θα φέρω αρχικά έναν χαρακτήρα στον οποίο θα γράψω το παρακάτω σενάριο. Θα ενεργοποιώ την κάμερα, την εμφάνιση των πράσινων κύκλων αναγνώρισης και θα αναλύω την εικόνα από την κάμερα για την αναγνώριση χεριού.
Παρατηρώ ότι για κάθε δάχτυλο που βλέπει χρησιμοποιεί 4 σημεία.
Αν κάποιο δάχτυλο είναι σηκωμένο τότε το σημείο κορυφής του θα είναι σίγουρα πιο ψηλά από το μεσαίο του σημείο. Στην αντίθετη περίπτωση, δηλαδή αν το δάχτυλο είναι κατεβασμένο τότε το σημείο κορυφής θα είναι πιο κάτω από την μέση.
Αυτό αλλάζει λίγο με τον αντίχειρα μου. Επειδή για να τον κρύψω τον διπλώνω διαφορετικά, εδώ όταν είναι κατεβασμένο αυτό που αλλάζει είναι ότι το σημείο κορυφής πάει πιο δεξιά από το προηγούμενο.
Πάμε λοιπόν να κάνουμε το πρόγραμμα. Αρχικά θα δημιουργήσω μια μεταβλητή η οποία θα μετράει τα δάχτυλα που βλέπει σηκωμένα η AI.
Μέσα σε μια διαρκή επανάληψη, αρχικά θα μηδενίζω την μεταβλητή και μετά θα ρωτάω για τον δείκτη αν η θέση Y του σημείου κορυφής είναι πιο ψηλά από την μεσαία. Σε αυτή την περίπτωση θα προσθέτω στην μεταβλητή ένα δάχτυλο.
Το ίδιο θα κάνω και για τα υπόλοιπα δάχτυλα εκτός του αντίχειρα.
Στον αντίχειρα θα ελέγχω την θέση X του σημείο κορυφής σε σχέση με την θέση X του μεσαίου σημείου.
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_10.png)
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_9.png)
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_8-1.png)
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_7.png)
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_5.png)
![](https://hackers.ioarvanit.gr/wp-content/uploads/2024/11/Screenshot_3-1.png)