Πίνακας περιεχομένων:
- Βήμα 1: Sipeed MAix: AI at the Edge
- Βήμα 2: Προετοιμάστε το περιβάλλον σας
- Βήμα 3: Μεταγλωττίστε τον κώδικα
- Βήμα 4: Μεταφόρτωση του αρχείου.bin
- Βήμα 5: Σύνδεση στο Arduino
- Βήμα 6: Σύνδεση στο Raspberry Pi
- Βήμα 7: Συμπέρασμα
Βίντεο: Κάμερα AI για Raspberry Pi/Arduino: 7 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Εάν παρακολουθείτε τις ειδήσεις πρόσφατα, υπήρξε μια έκρηξη νεοσύστατων επιχειρήσεων που αναπτύσσουν τσιπ για την επιτάχυνση των συμπερασμάτων και της εκπαίδευσης των αλγορίθμων ML (μηχανικής μάθησης). Ωστόσο, τα περισσότερα από αυτά τα τσιπ είναι ακόμη υπό ανάπτυξη και δεν είναι κάτι που ο μέσος κατασκευαστής σας μπορεί να πιάσει. Η μόνη σημαντική εξαίρεση μέχρι στιγμής ήταν το Intel Movidius Neural Compute Stick, το οποίο είναι διαθέσιμο για αγορά και συνοδεύεται από ένα καλό SDK. Έχει όντως μερικά σημαντικά μειονεκτήματα - συγκεκριμένα την τιμή (περίπου 100 USD) και το γεγονός ότι έρχεται σε μορφή USB stick. Είναι υπέροχο αν θέλετε να το χρησιμοποιήσετε με φορητό υπολογιστή ή Raspberry PI, αλλά τι γίνεται αν θέλετε να κάνετε κάποια έργα αναγνώρισης εικόνας με το Arduino; Ras Raspberry Pi Zero;
Βήμα 1: Sipeed MAix: AI at the Edge
Πριν από πολύ καιρό πήρα στα χέρια μου τον πίνακα ανάπτυξης Sipeed M1w K210, ο οποίος διαθέτει διπύρηνο RISC-V 64bit CPU και διαθέτει ενσωματωμένο KPU (Neural Network Processor), ειδικά σχεδιασμένο για την επιτάχυνση του CNN για επεξεργασία εικόνας. Μπορείτε να διαβάσετε περισσότερες λεπτομέρειες εδώ.
Η τιμή αυτού του πίνακα ειλικρινά με συγκλόνισε, είναι μόλις 19 δολάρια για την πλήρη ανάπτυξη του AI-on-the-edge πίνακα ανάπτυξης με υποστήριξη Wi-fi! Ωστόσο, υπάρχει μια προειδοποίηση (φυσικά υπάρχει): το υλικολογισμικό micropython για τον πίνακα είναι ακόμα σε εξέλιξη και συνολικά δεν είναι πολύ φιλικό προς το χρήστη από τώρα. Ο μόνος τρόπος για να αποκτήσετε πρόσβαση σε όλες τις λειτουργίες του αυτή τη στιγμή είναι να γράψετε τον δικό σας ενσωματωμένο κώδικα C ή να τροποποιήσετε ορισμένες υπάρχουσες επιδείξεις.
Αυτό το σεμινάριο εξηγεί πώς να χρησιμοποιήσετε το μοντέλο ανίχνευσης κλάσης Mobilenet 20 για τον εντοπισμό των αντικειμένων και την αποστολή του κωδικού αντικειμένου που εντοπίστηκε μέσω του UART, από όπου μπορεί να ληφθεί από το Arduino/Raspberry Pi.
Τώρα, αυτό το σεμινάριο υποθέτει ότι είστε εξοικειωμένοι με το Linux και τα βασικά της σύνταξης του κώδικα C. Εάν το άκουσμα αυτής της φράσης σας έκανε λίγο ζαλάδα:) τότε απλά μεταβείτε στο Βήμα 4, όπου ανεβάζετε το προκατασκευασμένο μου δυαδικό αρχείο στο Sipeed M1 και παραλείπετε τη μεταγλώττιση.
Βήμα 2: Προετοιμάστε το περιβάλλον σας
Χρησιμοποίησα το Ubuntu 16.04 για συλλογή και μεταφόρτωση κώδικα C. Είναι δυνατό να το κάνετε αυτό στα Windows, αλλά εγώ ο ίδιος δεν το δοκίμασα.
Κατεβάστε το RISC-V GNU Compiler Toolchain, εγκαταστήστε όλες τις απαραίτητες εξαρτήσεις.
git clone-επαναληπτικό
sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev
Αντιγράψτε τη ληφθείσα αλυσίδα εργαλείων στον κατάλογο /opt. Στη συνέχεια, εκτελέστε τις ακόλουθες εντολές
./configure --prefix =/opt/kendryte-toolchain --with-cmodel = medany
φτιαχνω, κανω
Προσθέστε/opt/kendryte-toolchain/bin στο PATH σας τώρα.
Είστε τώρα έτοιμοι για τη σύνταξη του κώδικα!
Βήμα 3: Μεταγλωττίστε τον κώδικα
Κατεβάστε τον κώδικα από το αποθετήριο github μου.
Κατεβάστε το αυτόνομο SDK Kendryte K210
Αντιγραφή φακέλου /kpu από το αποθετήριο github μου στο φάκελο /src στο SDK.
Εκτελέστε τις ακόλουθες εντολές στο φάκελο SDK (φάκελος όχι /src!)
mkdir build && cd build
cmake.. -DPROJ = project_name -DTOOLCHAIN =/opt/kendryte -toolchain/bin && make
όπου το project_name είναι το όνομα του έργου σας (εξαρτάται από εσάς) και -DTOOLCHAIN = πρέπει να δείχνει τη θέση της αλυσίδας εργαλείων risc -v (το κατεβάσατε στο πρώτο βήμα, θυμάστε;)
Μεγάλος! Τώρα ελπίζουμε ότι θα δείτε τη συλλογή να έχει ολοκληρωθεί χωρίς σφάλματα και έχετε ένα αρχείο.bin που μπορείτε να ανεβάσετε.
Βήμα 4: Μεταφόρτωση του αρχείου.bin
Τώρα συνδέστε το Sipeed M1 στον υπολογιστή και από το φάκελο /build εκτελέστε την ακόλουθη εντολή
sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu.bin
Όπου kpu.bin είναι το όνομα του αρχείου σας.bin
Η μεταφόρτωση διαρκεί συνήθως 2-3 λεπτά, αφού ολοκληρωθεί, θα δείτε τον πίνακα να εκτελεί ανίχνευση 20 τάξεων. Το τελευταίο βήμα για εμάς είναι να το συνδέσουμε με Arduino mega ή Raspberry Pi.
!!! Αν μόλις ήρθατε από το Βήμα 2 !
Εκτελέστε την ακόλουθη εντολή από το φάκελο όπου κλωνοποιήσατε το αποθετήριο github μου
sudo python3 isp_auto.py -d /dev /ttyUSB0 -b 200000 kpu_bin.bin
Η μεταφόρτωση διαρκεί συνήθως 2-3 λεπτά, αφού ολοκληρωθεί θα δείτε τον πίνακα να εκτελεί ανίχνευση 20 τάξεων. Το τελευταίο βήμα για εμάς είναι να το συνδέσουμε με Arduino mega ή Raspberry Pi.
Βήμα 5: Σύνδεση στο Arduino
Χρησιμοποίησα το Arduino Mega με το Seeed Studio Mega Shield, αυτός είναι ο λόγος για τον οποίο συγκολλήσα μια υποδοχή Grove στην πλακέτα Sipeed M1. Ωστόσο, μπορείτε απλά να χρησιμοποιήσετε καλώδια βραχυκυκλωτήρων και να συνδέσετε το Sipeed M1 απευθείας στο Arduino Mega, ακολουθώντας αυτό το διάγραμμα καλωδίωσης.
Στη συνέχεια, ανεβάστε το σκίτσο του camera.ino και ανοίξτε τη Σειριακή οθόνη. Όταν στρέφετε την κάμερα σε διαφορετικά αντικείμενα (η λίστα των 20 κλάσεων βρίσκεται στο σκίτσο) θα πρέπει να εξάγει το όνομα της τάξης στη σειριακή οθόνη!
Συγχαρητήρια! Έχετε πλέον λειτουργική μονάδα ανίχνευσης εικόνας για το Arduino σας!
Βήμα 6: Σύνδεση στο Raspberry Pi
Χρησιμοποίησα το καπέλο Grove Pi+ για το Raspberry Pi 2B, αλλά και πάλι, καθώς με το Arduino μπορείτε απλώς να συνδέσετε απευθείας το Sipeed M1 στη διεπαφή UART του Raspberry Pi ακολουθώντας αυτό το διάγραμμα καλωδίωσης.
Μετά την εκκίνηση του camera_speak.py και δείξτε την κάμερα σε διαφορετικά αντικείμενα, το τερματικό θα βγάλει το ακόλουθο κείμενο "Νομίζω ότι είναι" και επίσης αν έχετε συνδεδεμένα ηχεία, θα μιλήσει αυτή τη φράση δυνατά. Αρκετά δροσερό, έτσι δεν είναι;
Βήμα 7: Συμπέρασμα
Αυτοί είναι πολύ έξοχοι καιροί που ζούμε, με την τεχνητή νοημοσύνη και τη μηχανική μάθηση να διαπερνούν όλους τους τομείς της ζωής μας. Ανυπομονώ για την εξέλιξη σε αυτόν τον τομέα. Διατηρώ επαφή με την ομάδα Sipeed και γνωρίζω ότι αναπτύσσουν ενεργά περιτύλιγμα μικροπύθωνος για όλες τις απαραίτητες λειτουργίες, συμπεριλαμβανομένης της επιτάχυνσης του CNN.
Όταν είναι έτοιμο, πιθανότατα θα δημοσιεύσω περισσότερες οδηγίες σχετικά με τον τρόπο χρήσης των δικών σας μοντέλων CNN με μικροπύθωνα. Σκεφτείτε όλες τις συναρπαστικές εφαρμογές που μπορείτε να έχετε για έναν πίνακα που μπορεί να τρέξει τα δικά σας νευρωνικά δίκτυα επεξεργασίας εικόνας σε αυτήν την τιμή και με αυτό το αποτύπωμα!
Συνιστάται:
LED LIGHT DIY για κάμερα Web (C920): 10 βήματα (με εικόνες)
LED LIGHT DIY για κάμερα Web (C920): Ο φωτισμός είναι απαραίτητος για μια κάμερα ιστού. Αυτός ο μικρός δακτύλιος LED βοηθά την κάμερα του προσώπου σας να σας πάει πολύ καλά. Μπορείτε να τραβήξετε ένα βίντεο χωρίς κανένα φως εκτός από αυτό το LED. Χρησιμοποίησα έναν τρισδιάστατο εκτυπωτή και μονάδα LED WS2812b (συμβατό με Neopixel)
Η ευκολότερη κάμερα web ως κάμερα ασφαλείας - Ανίχνευση κίνησης και εικόνες με email: 4 βήματα
Η ευκολότερη κάμερα ως κάμερα ασφαλείας - Ανίχνευση κίνησης και εικόνες μέσω ηλεκτρονικού ταχυδρομείου: Δεν χρειάζεται πλέον να κατεβάζετε ή να διαμορφώνετε λογισμικό για να λαμβάνετε εικόνες που εντοπίζονται από την κάμερα στο email σας - απλά χρησιμοποιήστε το πρόγραμμα περιήγησής σας. Χρησιμοποιήστε ένα ενημερωμένο πρόγραμμα περιήγησης Firefox, Chrome, Edge ή Opera σε Windows, Mac ή Android για να τραβήξετε την εικόνα
Upcycled κάμερα εφεδρική κάμερα: 7 βήματα (με εικόνες)
Upcycled Camcorder Backup Camera: Είμαι βέβαιος ότι οι περισσότεροι από εσάς που διαβάζετε αυτό έχετε ένα συρτάρι ή ένα ντουλάπι κάπου γεμάτο από κάποτε αγαπημένη τεχνολογία που μόλις έχει γίνει πολύ παλιά και ξεπερασμένη. Σίγουρα έχω το μερίδιό μου στην παλιά τεχνολογία και είναι λυπηρό να βλέπω τέτοιες δυνατότητες να χάνονται. Λοιπόν, σε αυτόν τον οδηγό, είμαι
Δημιουργήστε βάση στήριξης DSLR για λιγότερο από 6 $ χρησιμοποιώντας σωλήνες PVC (μονόποδο/τρίποδο για οποιαδήποτε κάμερα): 6 βήματα
Φτιάξτε βάση στήριξης DSLR για λιγότερο από 6 $ χρησιμοποιώντας σωλήνες PVC (μονόποδο/τρίποδο για οποιαδήποτε κάμερα): Ναι …. Μπορείτε να φτιάξετε το δικό σας μόνο με κάποιο σωλήνα PVC και T's Είναι ελαφρύ … Είναι τέλεια ισορροπημένο … Είναι σταθερή … Είναι φιλική προς την προσαρμογή … Είμαι ο Sooraj Bagal και θα μοιραστώ την εμπειρία μου σχετικά με αυτό το στήριγμα κάμερας που δημιούργησα για
Μετατρέποντας την κάμερά σας σε "στρατιωτική νυχτερινή όραση", προσθέτοντας εφέ νυχτερινής όρασης ή δημιουργώντας λειτουργία νυχτερινής όρασης σε οποιαδήποτε κάμερα !!!: 3 βήματα
Μετατροπή της φωτογραφικής σας μηχανής σε "στρατιωτικό Nightvision", Προσθήκη εφέ Nightvision ή Δημιουργία Λειτουργίας NightVision "Σε οποιαδήποτε κάμερα !!! *Εάν χρειάζεστε βοήθεια, στείλτε email: [email protected] Μιλάω αγγλικά, γαλλικά, ιαπωνικά, ισπανικά και γνωρίζω άλλες γλώσσες αν είστε