Obsah:
- Krok 1: Získejte účet Google API
- Krok 2: Zadejte fakturační údaje
- Krok 3: Otevřete knihovnu API
- Krok 4: Vyhledejte Google Vision API
- Krok 5: Přejděte na Pověření
- Krok 6: Vytvořte klíč API Google Vision
- Krok 7: Boční nastavení Raspberry Pi
- Krok 8: Nastavení projektu
- Krok 9:
- Krok 10:
- Krok 11: A mnohem více…
Video: Google Vision API pomocí Raspberry Pi a Node: 11 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Toto je úvodní příručka k používání rozhraní Google Vision API. Používá následující
- Raspberry Pi Zero W
- Arch Linux
- NodeJS
- připojení k internetu
Neznáte Arch Linux? Nebo jak nastavit Raspberry Pi? Nebojte se, napsal jsem sérii článků, které to celkem rychle pokrývají. Nastavení je mnohem snazší, než si myslíte. Nenechte se tím odradit.
- Instalace Arch Linuxu na Raspberry Pi s okamžitým přístupem WiFi
- Nastavte i2c na Raspberry Pi Zero W pomocí Arch Linuxu
- Nastavte NodeJS Project Space na Raspberry Pi Zero W
- Přenos kódu ovladače motoru DRV8830 I2C do NodeJS
- Vzdálená úprava kódu Raspberry Pi z kódu Visual Studio
- Robot 1B1
Titulní fotografie Andy Kelly na Unsplash
Krok 1: Získejte účet Google API
Je smutné, že Google Vision API není zcela bezplatná služba. V době psaní účtu API poskytuje 1000 bezplatných volání API Google Vision za měsíc. Pak je to 1,00 $ za každých 1 000 hovorů.
Vím, vím, není to tak špatné. Ale toto není komerční projekt. Chci to použít pro putting malého domácího robota. Pokud moje žena dostane účet za 40 dolarů, protože jsem se rozhodl streamovat obrázky do API, bude to mrtvý robot. Každopádně jsem si myslel, že tu službu ještě prozkoumám na hloupé a chichotání.
Chcete -li získat účet, navštivte
Google Console
A přihlaste se pomocí stávajícího účtu Google nebo si jej vytvořte.
Krok 2: Zadejte fakturační údaje
Tady je ta děsivá část, že než začnete, musíte zadat své fakturační údaje. Pamatujte si, že vám bude účtováno více než 1000 hovorů. Opět platí, že pokud překročíte 1 000 bezplatných hovorů, budou vám účtovány poplatky. (Co? Už jsem to řekl? Ach.)
Krok 3: Otevřete knihovnu API
Po nastavení fakturačních údajů ještě musíme povolit rozhraní Cloud Vision API. Jedná se o bezpečnostní funkci, v zásadě jsou všechna rozhraní Google API ve výchozím nastavení zakázána, takže pokud někdo omylem získá přístup, nerozpoutá všude peklo.
Krok 4: Vyhledejte Google Vision API
Nyní vyhledejte Vision a klikněte na tlačítko. Zde by mělo být do očí bijící tlačítko Povolit. Zmáčkni to.
Krok 5: Přejděte na Pověření
Poslední věc, kterou musíme udělat, je získat klíč API. To je třeba zahrnout do hlaviček volání API pro autentizaci.
Nedovolte nikomu získat váš klíč API. A nekódujte to ve svém kódu. Věř mi, tohle tě kousne. Pokud se to náhodou dostane na web, webový prohledávač to rychle najde a vy budete platit bajiliony dolarů.
Nechte se tímto článkem trochu vyděsit.
Vývojář nasazuje klíče AWS na Github
OK! Pojďme získat klíč API. Najděte sekci Pověření
Krok 6: Vytvořte klíč API Google Vision
Pravděpodobně neuvidíte žádná vytvořená pověření, protože jste je pravděpodobně ještě nevytvořili.
Pojďme vytvořit nový klíč API. Klíč bych pojmenoval něčím smysluplným a omezil bych jej pouze na Google Cloud API. Pokračujte a zkopírujte si klíč API, protože jej budeme potřebovat v dalším kroku.
Krok 7: Boční nastavení Raspberry Pi
Články uvedené v horní části tohoto článku vám pomohou nastavit Raspberry Pi pro tento krok. Pokud ale děláte věci jinak, většina z toho by vám stále měla fungovat. Když se však dostaneme k části proměnných prostředí, bude to jiné pro jiné varianty Linuxu.
Začněte tím, že se SSH dostanete do svého Pi.
A aktualizujte všechny balíčky
sudo pacman -Syu
Vytvoříme proměnnou prostředí pro Google Cloud Vision API. To má zabránit tomu, aby byl váš klíč API pevně zakódován do kódu dále dolů. To bude fungovat, ale vřele doporučuji, abyste zůstali se mnou a nastavili správce proměnných prostředí, který bude zpracovávat API.
Přepněte na uživatele root zadáním
su
Zadejte heslo.
Další věc, kterou uděláme, je přidat klíč Google Vision API jako proměnnou prostředí do souboru
/etc/profil
soubor, to by mělo způsobit jeho inicializaci při spuštění.
Zadejte, vyměňte
VAŠE_API_Klíč
s vaším skutečným klíčem API.
echo 'export GOOGLE_CLOUD_VISION_API_KEY = VAŠE_API_KEY' >> /etc /profile
Nyní restartujte Pi, aby se to projevilo.
sudo restart
Přihlaste se zpět. Zkontrolujeme, zda načítá klíč API.
echo $ GOOGLE_CLOUD_VISION_API_KEY
Pokud se váš klíč API odráží zpět, měli byste jít.
Krok 8: Nastavení projektu
Pojďme vytvořit adresář projektu.
mkdir google-vis
cd google-vis
Nyní pojďme inicializovat nový projekt Node.
npm init
Pokud chcete, můžete si podrobnosti balíčku přizpůsobit. Pokud jste líní jako já, stiskněte klávesu Enter, dokud se nevrátíte do příkazového řádku.
Přidejme potřebné knihovny uzlů. Je to jeden. Knihovna axios, která umožňuje asynchronní webové požadavky.
npm axios
Také vytvořme adresář zdrojů a stáhněte si náš krásný testovací obrázek. Ach, slečno Hepburnová!
Ujistěte se, že jste v
google-vis/zdroje
adresář projektu při stahování obrázku.
zdroje mkdir
cd resources wget
Krok 9:
Vytvořte soubor v souboru
jít-vis
volaný adresář
app.js
nano app.js
Poté vložte níže uvedený kód a uložte soubor zadáním CTRL+O a ukončením pomocí 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 API key provided')}
funkce base64_encode (soubor) {
// číst binární data var bitmapa = fs.readFileSync (soubor); // převod binárních dat na řetězec kódovaný base64 vrátí nový Buffer (bitmapa).toString ('base64'); } var base64str = base64_encode ('./ resources/audrey.jpg');
const apiCall = `https://vision.googleapis.com/v1/images:annotate?key=$ {API_KEY}`;
const reqObj = {
požadavky: [{"image": {"content": base64str}, "features": [{"type": "LABEL_DETECTION", "maxResults": 5}, {"type": "FACE_DETECTION", "maxResults": 5}, {"type": "IMAGE_PROPERTIES", "maxResults": 5}]}]}}
axios.post (apiCall, reqObj).then ((odpověď) => {
console.log (odpověď); console.log (JSON.stringify (response.data.responses, undefined, 4)); }). catch ((e) => {console.log (e.response);});
Tento kód uchopí proměnnou prostředí klíče API a vytvoří z ní programovou konstantu.
const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY
Takto se vyhneme hardcodingu klíče API.
Krok 10:
Spusťme program.
uzel app.js
Pokud vše proběhlo dobře, měli byste získat podobný výstup jako níže
data: {response:
Krok 11: A mnohem více…
Tento článek je krátký-skokový start. Zde je však velký potenciál. Například odesílání vlastních obrázků pomocí kamery Raspberry Pi
- raspicam
- pi-kamera
Neváhejte se zeptat na jakékoli otázky týkající se použití výstupu.
Existují další požadavky na detekci funkcí.
Google Vision API - další funkce
Nicméně ukončím článek a přejdu k převádění svých systémů na detekci zraku. Jakmile zjistím stochastický gradientový sestup.
Doporučuje:
Ovládejte domácí osvětlení pomocí Google Assistant pomocí Arduina: 7 kroků
Ovládejte světla domu pomocí Google Assistant pomocí Arduina: (Aktualizace od 22. srpna 2020: Tento návod je starý 2 roky a spoléhá na některé aplikace třetích stran. Jakákoli změna na jejich straně může způsobit, že tento projekt nebude fungovat. Může, ale také nemusí. nyní pracuje, ale můžete jej sledovat jako referenci a upravovat podle
Rozpoznávání řeči pomocí Google Speech API a Pythonu: 4 kroky
Rozpoznávání řeči pomocí Google Speech API a Pythonu: Rozpoznávání řeči Funkce rozpoznávání řeči je součástí zpracování přirozeného jazyka, které je podoborem umělé inteligence. Jednoduše řečeno, rozpoznávání řeči je schopnost počítačového softwaru identifikovat slova a fráze v mluveném jazyce
Odesílání dat o bezdrátových vibracích a teplotě do tabulek Google pomocí Node-RED: 37 kroků
Odesílání údajů o bezdrátových vibracích a teplotě do tabulek Google pomocí Node-RED: Představujeme průmyslový bezdrátový snímač vibrací a teploty IoT s dlouhým dosahem NCD, který se může pochlubit dosahem až 2 míle použitím struktury bezdrátové síťové sítě. Toto zařízení obsahuje přesný 16bitový snímač vibrací a teploty a
Ovládejte domácí zařízení pomocí Node MCU a Google Assistant - IOT - Blynk - IFTTT: 8 kroků
Ovládejte domácí zařízení pomocí Node MCU a Google Assistant | IOT | Blynk | IFTTT: Jednoduchý projekt pro ovládání spotřebičů pomocí Google Assistant: Varování: Manipulace se síťovou elektřinou může být nebezpečná. Zacházejte s maximální opatrností. Při práci s otevřenými obvody najměte profesionálního elektrikáře. Nepřevezmu odpovědnost za
Ovládání brány pomocí Google Assistent pomocí ESP8266 NodeMCU: 6 kroků
Ovládání brány pomocí Google Assistent pomocí ESP8266 NodeMCU: Toto je můj první projekt na instruktabile, takže pokud jsou možná vylepšení, komentujte níže. Cílem je použít asistenta Google k odeslání signálu na řídicí desku brány. Odesláním příkazu tedy dojde k relé, které uzavře