Indholdsfortegnelse:
- Trin 1: Få en Google API -konto
- Trin 2: Indtast faktureringsoplysninger
- Trin 3: Åbn API -biblioteket
- Trin 4: Søg efter Google Vision API
- Trin 5: Naviger til legitimationsoplysninger
- Trin 6: Opret Google Vision API -nøgle
- Trin 7: Raspberry Pi Side Setup
- Trin 8: Projektopsætning
- Trin 9:
- Trin 10:
- Trin 11: Og så meget mere …
Video: Google Vision API ved hjælp af Raspberry Pi og Node: 11 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Dette er en startguide til brug af Google Vision API. Det bruger følgende
- Raspberry Pi Zero W
- Arch Linux
- NodeJS
- internetforbindelse
Kender du ikke Arch Linux? Eller hvordan opsættes en Raspberry Pi? Bare rolig, jeg har skrevet en række artikler, der dækker det ret hurtigt. Det er meget lettere at opsætte, end du tror. Så lad det ikke afskrække dig.
- Installation af Arch Linux på Raspberry Pi med øjeblikkelig WiFi -adgang
- Opsæt i2c på Raspberry Pi Zero W ved hjælp af Arch Linux
- Konfigurer NodeJS Project Space på Raspberry Pi Zero W
- Portning af DRV8830 I2C -motordriverkode til NodeJS
- Redigering af Raspberry Pi -kode eksternt fra Visual Studio Code
- 1B1 Robot
Forsidefoto af Andy Kelly på Unsplash
Trin 1: Få en Google API -konto
Desværre er Google Vision API ikke en helt gratis service. I skrivende stund giver en API -konto 1000 gratis Google Vision API -opkald om måneden. Derefter er det $ 1,00 for hvert 1000 opkald.
Jeg ved, jeg ved, ikke så slemt. Men dette er ikke et kommercielt projekt. Jeg vil gerne bruge det til en puttering lille hus bot. Hvis min kone får en regning for $ 40, fordi jeg besluttede at streame billeder til API'en, ja, det vil være en død bot. Jeg troede alligevel, at jeg stadig ville undersøge tjenesten for poo-og-fnis.
For at få et kontobesøg
Google -konsol
Og log ind med en eksisterende Google-konto, eller opret en.
Trin 2: Indtast faktureringsoplysninger
Nu, her er den skræmmende del, du skal indtaste dine faktureringsoplysninger, før du går i gang. Husk, at du bliver opkrævet, hvis du går over 1000 opkald. Igen, hvis du overskrider dine 1.000 gratis opkald, bliver du debiteret. (Hvad? Jeg sagde det allerede? Åh.)
Trin 3: Åbn API -biblioteket
Efter konfigurering af faktureringsoplysninger har vi stadig brug for at aktivere Cloud Vision API. Dette er en sikkerhedsfunktion, hovedsageligt er alle Google API'er deaktiveret som standard, så hvis nogen ved et uheld får adgang, slipper de ikke helvede overalt.
Trin 4: Søg efter Google Vision API
Søg nu efter Vision og klik på knappen. Her skulle der være en lysende Aktiver -knap. Tryk på den.
Trin 5: Naviger til legitimationsoplysninger
Den sidste ting, vi skal gøre, er at hente API -nøglen. Dette skal inkluderes i API -opkaldshovederne for godkendelse.
Lad ikke nogen få din API -nøgle. Og ikke hardcode det i din kode. Tro mig, det vil bide dig. Hvis dette ved et uheld bliver skubbet til internettet, finder en webcrawler det hurtigt, og du betaler bajillions dollars.
Lad denne artikel skræmme dig lidt.
Udvikler sætter AWS -nøgler på Github
Okay! Lad os hente din API -nøgle. Find afsnittet Legitimationsoplysninger
Trin 6: Opret Google Vision API -nøgle
Du vil sandsynligvis ikke se nogen legitimationsoplysninger oprettet, da du sandsynligvis ikke har oprettet nogen endnu.
Lad os oprette en ny API -nøgle. Jeg vil navngive nøglen til noget meningsfuldt og begrænse det til kun Google Cloud API. Fortsæt med at kopiere din API -nøgle, da vi får brug for det i det næste trin.
Trin 7: Raspberry Pi Side Setup
Artiklerne i toppen af denne hjælper dig med at konfigurere Raspberry Pi til dette trin. Men hvis du gør tingene anderledes, bør det meste af dette stadig fungere for dig. Men når vi kommer til delen om miljøvariabler, vil det være anderledes for andre Linux -smag.
Start med at SSH'e ind i din Pi.
Og opdater alle pakker
sudo pacman -Syu
Vi skal oprette en miljøvariabel til Google Cloud Vision API. Dette er for at undgå at hardcoding din API -nøgle i koden længere nede. Det vil fungere, men jeg anbefaler stærkt, at du holder dig til mig og opretter en miljøvariabel manager til at håndtere API.
Skift til rodbrugeren ved at skrive
su
Skriv dit kodeord.
Den næste ting, vi gør, er at tilføje din Google Vision API -nøgle som en miljøvariabel til
/etc/profil
fil, bør dette få den til at blive initialiseret ved opstart.
Type, udskiftning
YOUR_API_KEY
med din egentlige API -nøgle.
ekko 'eksporter GOOGLE_CLOUD_VISION_API_KEY = YOUR_API_KEY' >> /etc /profile
Genstart nu Pi, så det får virkning.
sudo genstart
Log ind igen. Lad os kontrollere, om den indlæser API -nøglen.
ekko $ GOOGLE_CLOUD_VISION_API_KEY
Hvis din API -nøgle er ekko tilbage, skal du være god til at gå.
Trin 8: Projektopsætning
Lad os oprette et projektmappe.
mkdir google-vis
cd google-vis
Lad os nu initialisere et nyt Node -projekt.
npm init
Du er velkommen til at tilpasse pakkeoplysningerne, hvis du vil. Hvis du er doven som mig, skal du trykke på enter, indtil du er tilbage til kommandoprompten.
Lad os tilføje de nødvendige nodebiblioteker. Det er en. Axios -biblioteket, som muliggør asynkroniserede webanmodninger.
npm axios
Lad os også oprette et ressourcefortegnelse og downloade vores dejlige testbillede. Åh, savner Hepburn!
Sørg for, at du er i
google-vis/ressourcer
projektmappe, når billedet downloades.
mkdir ressourcer
cd -ressourcer wget
Trin 9:
Opret en fil i
gå-vis
mappe kaldet
app.js
nano app.js
Indsæt derefter koden herunder, og gem filen ved at skrive CTRL+O og afslutte med CTRL+X.
//
const const axios = require ('axios'); const fs = kræver ('fs');
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
hvis (! API_KEY) {
console.log ('Ingen API -nøgle leveret')}
function base64_encode (fil) {
// læse binære data var bitmap = fs.readFileSync (fil); // konvertere binære data til base64 kodet streng returnere ny 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 = {
anmodninger: [{"image": {"content": base64str}, "features": [{"type": "LABEL_DETECTION", "maxResults": 5}, {"type": "FACE_DETECTION", "maxResults": 5}, {"type": "IMAGE_PROPERTIES", "maxResults": 5}]}]}}
axios.post (apiCall, reqObj).then ((svar) => {
console.log (svar); console.log (JSON.stringify (response.data.responses, udefineret, 4)); }). catch ((e) => {console.log (e.response);});
Denne kode griber API -nøglemiljøvariablen og opretter en programkonstant fra den.
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
Sådan undgår vi hardcoding af API -nøglen.
Trin 10:
Lad os køre programmet.
node app.js
Hvis alt gik godt, skulle du få lignende output til nedenfor
data: {response:
Trin 11: Og så meget mere …
Denne artikel er kort-et spring i gang. Der er dog masser af potentiale her. For eksempel at sende dine egne billeder ved hjælp af Raspberry Pi -kameraet
- raspicam
- pi-kamera
Du er velkommen til at stille spørgsmål om, hvordan du bruger output.
Der er andre anmodninger om registrering af funktioner.
Google Vision API - Andre funktioner
Imidlertid vil jeg afslutte artiklen og gå videre til at rulle mine on vision detection -systemer. Så snart jeg finder ud af stokastisk gradient nedstigning.
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: 4 trin
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: Hej, jeg er Rithik. Vi kommer til at lave en internetstyret LED ved hjælp af din telefon. Vi kommer til at bruge software som Arduino IDE og Blynk.Det er enkelt, og hvis det lykkedes dig, kan du styre så mange elektroniske komponenter, du ønskerTing We Need: Hardware:
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores