Sommario:
- Passaggio 1: ottieni un account API di Google
- Passaggio 2: inserisci i dati di fatturazione
- Passaggio 3: aprire la libreria API
- Passaggio 4: cerca l'API di Google Vision
- Passaggio 5: passare a Credenziali
- Passaggio 6: crea la chiave API di Google Vision
- Passaggio 7: installazione laterale Raspberry Pi
- Passaggio 8: configurazione del progetto
- Passaggio 9:
- Passaggio 10:
- Passaggio 11: e molto altro ancora…
Video: API di Google Vision con Raspberry Pi e Node: 11 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Questa è una guida introduttiva all'utilizzo dell'API di Google Vision. Utilizza quanto segue
- Raspberry Pi Zero W
- Arch Linux
- NodoJS
- connessione internet
Non conosci Arch Linux? O come configurare un Raspberry Pi? Nessun problema, ho scritto una serie di articoli che lo trattano abbastanza rapidamente. È molto più facile da configurare di quanto pensi. Quindi non lasciarti dissuadere.
- Installazione di Arch Linux su Raspberry Pi con accesso WiFi immediato
- Configura i2c su Raspberry Pi Zero W usando Arch Linux
- Imposta lo spazio del progetto NodeJS su Raspberry Pi Zero W
- Porting del codice driver motore I2C DRV8830 su NodeJS
- Modifica del codice Raspberry Pi in remoto dal codice di Visual Studio
- 1B1 Robot
Foto di copertina di Andy Kelly su Unsplash
Passaggio 1: ottieni un account API di Google
Purtroppo, Google Vision API non è un servizio completamente gratuito. Al momento della scrittura, un account API fornisce 1000 chiamate API di Google Vision gratuite al mese. Quindi, è $ 1,00 per ogni 1000 chiamate.
Lo so, lo so, non troppo male. Ma questo non è un progetto commerciale. Voglio usarlo per un piccolo bot casalingo. Se mia moglie riceve una fattura di $ 40 perché ho deciso di trasmettere immagini in streaming all'API, beh, sarà un bot morto. Ad ogni modo, ho pensato di esplorare ancora il servizio per la cacca e le risatine.
Per ottenere un account visita
Google Console
E accedi con un account Google esistente o creane uno.
Passaggio 2: inserisci i dati di fatturazione
Ora, ecco la parte spaventosa, devi inserire i tuoi dati di fatturazione prima di iniziare. Ricorda, ti verrà addebitato l'importo se superi le 1000 chiamate. Anche in questo caso, se superi le 1.000 chiamate gratuite ti verrà addebitato. (Cosa? L'ho già detto? Oh.)
Passaggio 3: aprire la libreria API
Dopo aver impostato le informazioni di fatturazione, dobbiamo ancora abilitare l'API Cloud Vision. Questa è una funzione di sicurezza, in sostanza, tutte le API di Google sono disabilitate per impostazione predefinita, quindi se qualcuno accede accidentalmente non scatena l'inferno ovunque.
Passaggio 4: cerca l'API di Google Vision
Ora cerca Vision e fai clic sul pulsante. Qui dovrebbe esserci un vistoso pulsante Abilita. Premilo.
Passaggio 5: passare a Credenziali
L'ultima cosa che dobbiamo fare è ottenere la chiave API. Questo deve essere incluso nelle intestazioni delle chiamate API per l'autenticazione.
Non permettere a nessuno di ottenere la tua chiave API. E non codificarlo nel tuo codice. Credimi, questo ti morderà. Se questo viene accidentalmente inserito nel Web, un web crawler lo troverà rapidamente e pagherai miliardi di dollari.
Lascia che questo articolo ti spaventi un po'.
Lo sviluppatore mette le chiavi AWS su Github
Ok! Andiamo a prendere la tua chiave API. Trova la sezione Credenziali
Passaggio 6: crea la chiave API di Google Vision
Probabilmente non vedrai le credenziali create, poiché probabilmente non ne hai ancora create.
Creiamo una nuova chiave API. Definirei la chiave qualcosa di significativo e la limiterei solo all'API di Google Cloud. Vai avanti e copia la tua chiave API, poiché ne avremo bisogno nel passaggio successivo.
Passaggio 7: installazione laterale Raspberry Pi
Gli articoli elencati nella parte superiore di questo ti aiuteranno a configurare il Raspberry Pi per questo passaggio. Ma se stai facendo le cose in modo diverso, la maggior parte di questo dovrebbe comunque funzionare per te. Tuttavia, quando arriviamo alla parte delle variabili d'ambiente, sarà diverso per altre versioni di Linux.
Inizia con SSH nel tuo Pi.
E aggiorna tutti i pacchetti
sudo pacman -Syu
Creeremo una variabile di ambiente per l'API Google Cloud Vision. Questo per evitare l'hardcoding della tua chiave API nel codice più in basso. Funzionerà, ma ti consiglio vivamente di restare con me e configurare un gestore di variabili d'ambiente per gestire l'API.
Passa all'utente root digitando
su
Inserisci la tua password.
La prossima cosa che facciamo è aggiungere la tua chiave API di Google Vision come variabile di ambiente al
/etc/profilo
file, questo dovrebbe causare l'inizializzazione all'avvio.
Tipo, sostituzione
LA TUA_API_KEY
con la tua chiave API effettiva.
echo 'esporta GOOGLE_CLOUD_VISION_API_KEY=YOUR_API_KEY' >> /etc/profile
Ora riavvia il Pi in modo che abbia effetto.
sudo reboot
Accedi di nuovo. Controlliamo che stia caricando la chiave API.
echo $GOOGLE_CLOUD_VISION_API_KEY
Se la tua chiave API viene restituita, dovresti essere a posto.
Passaggio 8: configurazione del progetto
Creiamo una directory di progetto.
mkdir google-vis
cd google-vis
Ora inizializziamo un nuovo progetto Node.
npm init
Sentiti libero di personalizzare i dettagli del pacchetto, se lo desideri. Se sei pigro come me, premi invio finché non torni al prompt dei comandi.
Aggiungiamo le librerie Node necessarie. È uno. La libreria axios, che abilita le richieste web asincrone.
npm assio
Inoltre, creiamo una directory di risorse e scarichiamo la nostra adorabile immagine di prova. Ah, signorina Hepburn!
Assicurati di essere nel
google-vis/risorse
directory del progetto durante il download dell'immagine.
risorse mkdir
risorse cd wget
Passaggio 9:
Crea un file nel
andare a vedere
directory chiamata
app.js
nano app.js
Quindi incolla il codice qui sotto e salva il file digitando CTRL+O ed uscendo usando CTRL+X.
//
const const axios = require('axios'); const fs = require('fs');
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
if (!API_KEY) {
console.log('Nessuna chiave API fornita') }
funzione base64_encode(file) {
// legge i dati binari var bitmap = fs.readFileSync(file); // converte i dati binari in una stringa codificata in base64 return new 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 = {
richieste:[{ "image":{ "content": base64str }, "features":[{ "type":"LABEL_DETECTION", "maxResults":5 }, { "type":"FACE_DETECTION", "maxResults": 5 }, { "type": "IMAGE_PROPERTIES", "maxResults":5 }] }] }
axios.post(apiCall, reqObj).then((risposta) => {
console.log(risposta); console.log(JSON.stringify(response.data.responses, undefined, 4)); }).catch((e) => { console.log(e.response); });
Questo codice acquisisce la variabile di ambiente della chiave API e crea una costante di programma da essa.
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
Questo è il modo in cui evitiamo l'hardcoding della chiave API.
Passaggio 10:
Eseguiamo il programma.
nodo app.js
Se tutto è andato bene dovresti ottenere un output simile a quello sotto
data: { responses:
Passaggio 11: e molto altro ancora…
Questo articolo è breve: un inizio di salto. Tuttavia, c'è un sacco di potenziale qui. Ad esempio, inviando le tue immagini utilizzando la fotocamera Raspberry Pi
- raspicam
- pi-camera
Non esitate a porre qualsiasi domanda su come utilizzare l'output.
Ci sono altre richieste di rilevamento delle funzionalità.
API di Google Vision -- Altre funzioni
Tuttavia, finirò l'articolo e passerò al mio passaggio ai sistemi di rilevamento della vista. Non appena capisco la discesa del gradiente stocastico.
Consigliato:
Lavorare con l'API URL in Node-RED: 10 passaggi
Lavorare con l'API URL in Node-RED: questa istruzione ti insegnerà come utilizzare l'API URL (http get) in node-RED. È volutamente semplice. E se sei relativamente nuovo a node-RED, questo esempio è giusto per te. Ti insegnerò come usare l'ambiente node-RED e cos'è, e h
Riconoscimento vocale utilizzando l'API Google Speech e Python: 4 passaggi
Riconoscimento vocale utilizzando l'API vocale di Google e Python: riconoscimento vocale Il riconoscimento vocale fa parte dell'elaborazione del linguaggio naturale, che è un sottocampo dell'intelligenza artificiale. Per dirla semplicemente, il riconoscimento vocale è la capacità di un software per computer di identificare parole e frasi nella lingua parlata
Collegamento di Twitter a un progetto Eclipse con l'API Twitter4J: 5 passaggi
Collegamento di Twitter a un progetto Eclipse con l'API Twitter4J: questa istruzione spiega come collegare il tuo account Twitter con il tuo progetto Eclipse e come importare l'interfaccia del programma applicativo (API) di Twitter4J per utilizzare le sue funzioni per automatizzare la lettura e la scrittura su Twitter . Questo istruibile
Crea una dashboard meteo utilizzando l'API Dark Sky: 5 passaggi (con immagini)
Crea una dashboard meteo utilizzando l'API Dark Sky: Dark Sky è specializzato in previsioni e visualizzazioni meteorologiche. L'aspetto più interessante di Dark Sky è la loro API meteo che possiamo utilizzare per recuperare i dati meteorologici da quasi qualsiasi parte del mondo. Non è solo il tempo è piovoso o soleggiato, ma la temperatura
Come connettere l'applicazione Android con AWS IOT e comprendere l'API di riconoscimento vocale: 3 passaggi
Come connettere l'applicazione Android con AWS IOT e comprendere l'API di riconoscimento vocale: questo tutorial insegna all'utente come connettere l'applicazione Android al server AWS IOT e comprendere l'API di riconoscimento vocale che controlla una macchina da caffè. L'applicazione controlla la macchina da caffè tramite Alexa Voice Service, il c