Πίνακας περιεχομένων:

Google Vision API χρησιμοποιώντας Raspberry Pi και Node: 11 βήματα
Google Vision API χρησιμοποιώντας Raspberry Pi και Node: 11 βήματα

Βίντεο: Google Vision API χρησιμοποιώντας Raspberry Pi και Node: 11 βήματα

Βίντεο: Google Vision API χρησιμοποιώντας Raspberry Pi και Node: 11 βήματα
Βίντεο: ComfyUI Tutorial - How to Install ComfyUI on Windows, RunPod & Google Colab | Stable Diffusion SDXL 2024, Νοέμβριος
Anonim
Google Vision API χρησιμοποιώντας Raspberry Pi και Node
Google Vision API χρησιμοποιώντας Raspberry Pi και Node

Αυτός είναι ένας οδηγός έναρξης για τη χρήση του API Google Vision. Χρησιμοποιεί τα ακόλουθα

  • Raspberry Pi Zero W
  • Arch Linux
  • NodeJS
  • σύνδεση στο Internet

Δεν γνωρίζετε το Arch Linux; Or πώς να ρυθμίσετε ένα Raspberry Pi; Μην ανησυχείτε, έχω γράψει μια σειρά άρθρων που την καλύπτουν αρκετά γρήγορα. Είναι πολύ πιο εύκολο να το ρυθμίσετε από όσο νομίζετε. Μην το αφήσεις λοιπόν να σε αποθαρρύνει.

  • Εγκατάσταση του Arch Linux στο Raspberry Pi με άμεση πρόσβαση WiFi
  • Ρυθμίστε το i2c στο Raspberry Pi Zero W χρησιμοποιώντας Arch Linux
  • Ρύθμιση χώρου έργου NodeJS στο Raspberry Pi Zero W
  • Μεταφορά κωδικού οδηγού κινητήρα DRV8830 I2C στο NodeJS
  • Επεξεργασία Raspberry Pi Code εξ αποστάσεως από Visual Studio Code
  • Ρομπότ 1Β1

Φωτογραφία εξωφύλλου από τον Andy Kelly στο Unsplash

Βήμα 1: Αποκτήστε έναν Λογαριασμό API Google

Δυστυχώς, το Google Vision API δεν είναι μια εντελώς δωρεάν υπηρεσία. Κατά τη σύνταξη ενός λογαριασμού API παρέχει 1000 δωρεάν κλήσεις API Google Vision το μήνα. Στη συνέχεια, είναι $ 1,00 για κάθε 1000 κλήσεις.

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

Για επίσκεψη λογαριασμού

Κονσόλα Google

Συνδεθείτε με έναν υπάρχοντα λογαριασμό Google ή δημιουργήστε έναν.

Βήμα 2: Εισαγάγετε τα στοιχεία χρέωσης

Εισαγάγετε τα στοιχεία χρέωσης
Εισαγάγετε τα στοιχεία χρέωσης

Τώρα, εδώ είναι το τρομακτικό μέρος, πρέπει να εισαγάγετε τα στοιχεία χρέωσής σας πριν ξεκινήσετε. Θυμηθείτε, θα χρεωθείτε εάν πραγματοποιήσετε περισσότερες από 1000 κλήσεις. Και πάλι, εάν υπερβείτε τις 1.000 δωρεάν κλήσεις σας, θα χρεωθείτε. (Τι; Το είπα ήδη; Ω.)

Βήμα 3: Ανοίξτε τη Βιβλιοθήκη API

Ανοίξτε τη Βιβλιοθήκη API
Ανοίξτε τη Βιβλιοθήκη API

Μετά τη ρύθμιση των στοιχείων χρέωσης, πρέπει ακόμα να ενεργοποιήσουμε το Cloud Vision API. Αυτό είναι ένα χαρακτηριστικό ασφαλείας, ουσιαστικά, όλα τα API της Google είναι απενεργοποιημένα από προεπιλογή, οπότε αν κάποιος αποκτήσει τυχαία πρόσβαση, δεν εξαπολύει την κόλαση παντού.

Βήμα 4: Αναζήτηση για API Google Vision

Αναζήτηση για το Google Vision API
Αναζήτηση για το Google Vision API

Τώρα αναζητήστε το Όραμα και κάντε κλικ στο κουμπί. Εδώ θα πρέπει να υπάρχει ένα κραυγαλέο κουμπί Ενεργοποίηση. Πατήστε το.

Βήμα 5: Μεταβείτε στα Διαπιστευτήρια

Μεταβείτε στα Διαπιστευτήρια
Μεταβείτε στα Διαπιστευτήρια

Το τελευταίο πράγμα που πρέπει να κάνουμε είναι να πάρουμε το κλειδί API. Αυτό πρέπει να συμπεριληφθεί στις κεφαλίδες κλήσεων API για έλεγχο ταυτότητας.

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

Αφήστε αυτό το άρθρο να σας τρομάξει λίγο.

Ο προγραμματιστής βάζει τα κλειδιά AWS στο Github

Εντάξει! Πάμε να πάρουμε το κλειδί API. Βρείτε την ενότητα Διαπιστευτήρια

Βήμα 6: Δημιουργήστε κλειδί API Google Vision

Δημιουργήστε κλειδί API Google Vision
Δημιουργήστε κλειδί API Google Vision
Δημιουργήστε κλειδί API Google Vision
Δημιουργήστε κλειδί API Google Vision

Πιθανότατα δεν θα δείτε να έχουν δημιουργηθεί διαπιστευτήρια, καθώς πιθανότατα δεν έχετε δημιουργήσει ακόμη.

Ας δημιουργήσουμε ένα νέο κλειδί API. Θα ονόμαζα το κλειδί κάτι ουσιαστικό και θα το περιορίζω μόνο στο Google Cloud API. Προχωρήστε και αντιγράψτε το κλειδί API, καθώς θα το χρειαστούμε στο επόμενο βήμα.

Βήμα 7: Ρύθμιση του Raspberry Pi Side

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

Ξεκινήστε με SSH'ing στο Pi σας.

Και ενημερώστε όλα τα πακέτα

sudo pacman -Syu

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

Μεταβείτε στον βασικό χρήστη πληκτρολογώντας

su

Εισάγετε τον κωδικό σας.

Το επόμενο πράγμα που κάνουμε είναι να προσθέσουμε το Google Vision API Key σας ως μεταβλητή περιβάλλοντος στο

/etc/προφίλ

αρχείο, αυτό θα πρέπει να προκαλέσει την αρχικοποίηση κατά την εκκίνηση.

Τύπος, αντικατάσταση

YOUR_API_KEY

με το πραγματικό κλειδί API.

ηχώ 'εξαγωγή GOOGLE_CLOUD_VISION_API_KEY = YOUR_API_KEY' >> /etc /προφίλ

Τώρα επανεκκινήστε το Pi έτσι ώστε να τεθεί σε ισχύ.

sudo επανεκκίνηση

Συνδεθείτε ξανά. Ας ελέγξουμε για να βεβαιωθούμε ότι φορτώνει το κλειδί API.

ηχώ $ GOOGLE_CLOUD_VISION_API_KEY

Εάν το κλειδί σας API επαναληφθεί, θα πρέπει να πάτε.

Βήμα 8: Διαμόρφωση έργου

Εγκατάσταση έργου
Εγκατάσταση έργου

Ας δημιουργήσουμε έναν κατάλογο έργου.

mkdir google-vis

cd google-vis

Τώρα ας προετοιμάσουμε ένα νέο έργο Node.

npm init

Αν θέλετε, μπορείτε να προσαρμόσετε τις λεπτομέρειες του πακέτου. Εάν είστε τεμπέλης όπως εγώ, πατήστε enter μέχρι να επιστρέψετε στη γραμμή εντολών.

Ας προσθέσουμε τις απαραίτητες βιβλιοθήκες κόμβου. Είναι ενα. Η βιβλιοθήκη axios, η οποία επιτρέπει συγχρονισμό αιτημάτων ιστού.

npm axios

Εικόνα
Εικόνα

Επίσης, ας δημιουργήσουμε έναν κατάλογο πόρων και κατεβάστε την υπέροχη δοκιμαστική εικόνα μας. Αχ, δεσποινίς Χέπμπορν!

Βεβαιωθείτε ότι βρίσκεστε στο

google-vis/πόροι

κατάλογο έργου κατά τη λήψη της εικόνας.

mkdir πόρους

cd πόροι wget

Βήμα 9:

Δημιουργήστε ένα αρχείο στο

go-vis

καλείται κατάλογος

app.js

nano app.js

Στη συνέχεια, επικολλήστε τον παρακάτω κώδικα και αποθηκεύστε το αρχείο πληκτρολογώντας CTRL+O και κλείνοντας χρησιμοποιώντας CTRL+X.

//

const const axios = απαιτώ («axios») · const fs = απαιτούν ('fs');

const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY

εάν (! API_KEY) {

console.log ("Δεν παρέχεται κλειδί API")}

συνάρτηση base64_encode (αρχείο) {

// διαβάστε δυαδικά δεδομένα var bitmap = fs.readFileSync (αρχείο); // μετατροπή δυαδικών δεδομένων σε κωδικοποιημένη συμβολοσειρά base64 επιστροφή νέου Buffer (bitmap).toString ('base64'); } var base64str = base64_encode ('./ resources/audrey.jpg');

const apiCall = `https://vision.googleapis.com/v1/images:annotate?key=$ {API_KEY}`;

const reqObj = {

αιτήματα: [{"image": {"content": base64str}, "features": [{"type": "LABEL_DETECTION", "maxResults": 5}, {"type": "FACE_DETECTION", "maxResults": 5}, {"type": "IMAGE_PROPERTIES", "maxResults": 5}]}]}

axios.post (apiCall, reqObj).then ((απάντηση) => {

console.log (απάντηση); console.log (JSON.stringify (respond.data.responses, απροσδιόριστο, 4)); }). catch ((e) => {console.log (e.response);});

Αυτός ο κώδικας αρπάζει τη μεταβλητή περιβάλλοντος κλειδιού API και δημιουργεί μια σταθερά προγράμματος από αυτήν.

const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY

Έτσι αποφεύγουμε την κωδικοποίηση του κλειδιού API.

Βήμα 10:

Ας τρέξουμε το πρόγραμμα.

κόμβος app.js

Εάν όλα πήγαν καλά, θα πρέπει να έχετε παρόμοια έξοδο με το παρακάτω

δεδομένα: {respondes:

Βήμα 11: Και πολύ περισσότερα…

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

  • ραψικάμη
  • πι-κάμερα

Μη διστάσετε να κάνετε οποιεσδήποτε ερωτήσεις σχετικά με τον τρόπο χρήσης της εξόδου.

Υπάρχουν και άλλα αιτήματα εντοπισμού χαρακτηριστικών.

Google Vision API - Άλλες λειτουργίες

Ωστόσο, θα τελειώσω το άρθρο και θα προχωρήσω στην κύλιση των συστημάτων ανίχνευσης όρασης. Μόλις καταλάβω στοχαστική κλίση κατάβασης.

Συνιστάται: