Taula de continguts:

API de Google Vision amb Raspberry Pi i Node: 11 passos
API de Google Vision amb Raspberry Pi i Node: 11 passos

Vídeo: API de Google Vision amb Raspberry Pi i Node: 11 passos

Vídeo: API de Google Vision amb Raspberry Pi i Node: 11 passos
Vídeo: Testing Stable Diffusion inpainting on video footage #shorts 2024, Desembre
Anonim
API de Google Vision mitjançant Raspberry Pi i Node
API de Google Vision mitjançant Raspberry Pi i Node

Aquesta és una guia inicial per utilitzar l'API de Google Vision. Utilitza el següent

  • Raspberry Pi Zero W
  • Arch Linux
  • NodeJS
  • connexió a Internet

No coneixeu Arch Linux? O com configurar un Raspberry Pi? No us preocupeu, he escrit una sèrie d’articles que ho tracten amb força rapidesa. És molt més fàcil de configurar del que creieu. Així que no deixeu que us dissuadeixi.

  • Instal·lació d’Arch Linux a Raspberry Pi amb accés WiFi immediat
  • Configureu i2c a Raspberry Pi Zero W mitjançant Arch Linux
  • Configureu l'espai del projecte NodeJS a Raspberry Pi Zero W
  • Portant el codi del controlador del motor DRV8830 I2C a NodeJS
  • Edició del codi Raspberry Pi de forma remota des del codi Visual Studio
  • Robot 1B1

Foto de portada d’Andy Kelly a Unsplash

Pas 1: obteniu un compte de l'API de Google

Malauradament, l'API de Google Vision no és un servei completament gratuït. En el moment d’escriure un compte d’API, proporciona 1.000 trucades gratuïtes a l’API de Google Vision al mes. Llavors, és d’1,00 USD per cada 1.000 trucades.

Ho sé, ho sé, no està gens malament. Però aquest no és un projecte comercial. Estic desitjant utilitzar-lo per a un bot petit de casa. Si la meva dona rep una factura de 40 dòlars perquè he decidit transmetre imatges a l'API, bé, serà un robot mort. De totes maneres, vaig pensar que encara exploraria el servei per fer poo-i-rialles.

Per obtenir una visita al compte

Consola de Google

I inicieu la sessió amb un compte de Google existent o creeu-ne un.

Pas 2: introduïu la informació de facturació

Introduïu la informació de facturació
Introduïu la informació de facturació

Ara, aquí teniu la part que fa por, heu d’introduir la informació de facturació abans de començar. Recordeu que se us cobrarà si supereu les 1000 trucades. Una vegada més, si supereu les 1.000 trucades gratuïtes, se us cobrarà. (Què? Ja ho he dit? Ah.)

Pas 3: obriu la biblioteca API

Obriu la biblioteca API
Obriu la biblioteca API

Després de configurar la informació de facturació, encara hem d’habilitar l’API de Cloud Vision. Aquesta és una característica de seguretat, essencialment, totes les API de Google estan desactivades de manera predeterminada, de manera que si algú accedeix accidentalment no desencadena l'infern arreu.

Pas 4: cerqueu l'API de Google Vision

Cerqueu l'API de Google Vision
Cerqueu l'API de Google Vision

Ara cerqueu Vision i feu clic al botó. Aquí hi hauria d’haver un botó d’activació flagrant. Premeu-lo.

Pas 5: aneu a les credencials

Aneu a les credencials
Aneu a les credencials

L’últim que hem de fer és obtenir la clau API. Cal incloure-ho a les capçaleres de trucades de l'API per a l'autenticació.

No permeteu que ningú obtingui la vostra clau d'API. I no el codifiqueu al vostre codi. Confieu en mi, això us mossegarà. Si s'accedeix accidentalment al web, un rastrejador web el trobarà ràpidament i pagareu milions de dòlars.

Deixeu que aquest article us espanti una mica.

El desenvolupador posa claus AWS a Github

D'acord! Anem a buscar la vostra clau API. Cerqueu la secció de credencials

Pas 6: creeu la clau de l'API de Google Vision

Creeu la clau de l'API de Google Vision
Creeu la clau de l'API de Google Vision
Creeu la clau de l'API de Google Vision
Creeu la clau de l'API de Google Vision

Probablement no veureu les credencials creades, ja que probablement encara no les heu creat.

Creem una clau API nova. Jo anomenaria la clau quelcom significatiu i la limitaria només a l’API de Google Cloud. Seguiu endavant i copieu la vostra clau API, ja que la necessitarem al següent pas.

Pas 7: Configuració lateral de Raspberry Pi

Els articles que apareixen a la part superior d’aquest l’ajudaran a configurar Raspberry Pi per a aquest pas. Però si esteu fent coses diferents, la majoria d’això encara us hauria de funcionar. Tanmateix, quan arribem a la part de variables d'entorn, això serà diferent per a altres versions de Linux.

Comenceu per SSH'ing al vostre Pi.

I actualitzeu tots els paquets

sudo pacman -Syu

Crearem una variable d'entorn per a l'API de Google Cloud Vision. Això és per evitar la codificació de la vostra clau API al codi més avall. Això funcionarà, però us recomano que us quedeu amb mi i configureu un gestor de variables d'entorn per gestionar l'API.

Per canviar a l'usuari root, escriviu

su

Fica la teva contrasenya.

El següent que fem és afegir la vostra clau API de Google Vision com a variable d'entorn a

/ etc / profile

fitxer, això hauria de provocar que s’inicialitzi a l’arrencada.

Escriviu, substituint

YOUR_API_KEY

amb la vostra clau API real.

echo 'export GOOGLE_CLOUD_VISION_API_KEY = YOUR_API_KEY' >> / etc / profile

Ara reinicieu el Pi perquè tingui efecte.

sudo reiniciar

Torneu a iniciar la sessió. Comproveu que estigui carregant la clau API.

ressò de $ GOOGLE_CLOUD_VISION_API_KEY

Si es fa ressò de la vostra clau API, hauríeu d’anar-hi bé.

Pas 8: Configuració del projecte

Configuració del projecte
Configuració del projecte

Creem un directori de projectes.

mkdir google-vis

cd google-vis

Ara inicialitzem un nou projecte de Node.

npm init

Si voleu, personalitzeu els detalls del paquet. Si sou mandrós com jo, premeu Intro fins que torneu a l'indicador d'ordres.

Afegim les biblioteques Node necessàries. És un. La biblioteca axios, que permet les sol·licituds web asíncrones.

npm axios

Imatge
Imatge

A més, creem un directori de recursos i descarreguem la nostra preciosa imatge de prova. Ah, senyoreta Hepburn!

Assegureu-vos que esteu al

google-vis / recursos

directori del projecte en descarregar la imatge.

recursos mkdir

recursos cd wget

Pas 9:

Creeu un fitxer a

go-vis

directori anomenat

app.js

nano app.js

A continuació, enganxeu el codi següent i deseu el fitxer escrivint CTRL + O i sortint amb 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 ("No s'ha proporcionat cap clau d'API")}

funció base64_encode (fitxer) {

// llegir dades binàries var bitmap = fs.readFileSync (fitxer); // convertir dades binàries a cadena codificada base64 retorna un nou buffer (mapa de bits).toString ('base64'); } var base64str = base64_encode ('./ resources / audrey.jpg');

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

const reqObj = {

peticions: [{"image": {"content": base64str}, "features": [{"type": "LABEL_DETECTION", "maxResults": 5}, {"type": "FACE_DETECTION", "maxResults": 5}, {"type": "IMAGE_PROPERTIES", "maxResults": 5}]}]}

axios.post (apiCall, reqObj).then ((response) => {

console.log (resposta); console.log (JSON.stringify (response.data.responses, indefinit, 4)); }). catch ((e) => {console.log (e.response);});

Aquest codi agafa la variable d'entorn de la clau API i crea una constant de programa a partir d'ella.

const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY

Així evitem la codificació de la clau API.

Pas 10:

Executem el programa.

node app.js

Si tot va bé, hauríeu d'obtenir una sortida similar a la següent

dades: {respostes:

Pas 11: I molt més …

Aquest article és breu: comença de sobte. No obstant això, aquí hi ha molt potencial. Per exemple, enviar les vostres pròpies imatges mitjançant la càmera Raspberry Pi

  • raspicam
  • pi-camera

No dubteu a fer qualsevol pregunta sobre com utilitzar la sortida.

Hi ha altres sol·licituds de detecció de funcions.

API de Google Vision: altres funcions

Tanmateix, acabaré l'article i passaré als sistemes de detecció de visió. Tan aviat com esbrino el descens del gradient estocàstic.

Recomanat: