İçindekiler:

Raspberry Pi ve Node Kullanan Google Vision API: 11 Adım
Raspberry Pi ve Node Kullanan Google Vision API: 11 Adım

Video: Raspberry Pi ve Node Kullanan Google Vision API: 11 Adım

Video: Raspberry Pi ve Node Kullanan Google Vision API: 11 Adım
Video: Object Detection in Any Raspberry Pi using Google Vision API with Python 2024, Kasım
Anonim
Raspberry Pi ve Node Kullanan Google Vision API
Raspberry Pi ve Node Kullanan Google Vision API

Bu, Google Vision API'yi kullanmaya yönelik bir başlangıç kılavuzudur. Aşağıdakileri kullanır

  • Ahududu Pi Sıfır W
  • Arch Linux
  • DüğümJS
  • internet bağlantısı

Arch Linux'u bilmiyor musunuz? Veya Raspberry Pi nasıl kurulur? Endişelenmeyin, oldukça hızlı bir şekilde kapsayan bir dizi makale yazdım. Kurulumu düşündüğünüzden çok daha kolay. Bu yüzden sizi caydırmasına izin vermeyin.

  • Anında WiFi Erişimi ile Raspberry Pi'ye Arch Linux Kurulumu
  • Arch Linux kullanarak Raspberry Pi Zero W üzerinde i2c kurulumu
  • Raspberry Pi Zero W Üzerinde NodeJS Proje Alanı Kurulumu
  • DRV8830 I2C Motor Sürücü Kodunu NodeJS'ye Taşıma
  • Raspberry Pi Kodunu Visual Studio Kodundan Uzaktan Düzenleme
  • 1B1 Robotu

Kapak Fotoğrafı, Andy Kelly tarafından Unsplash'ta

1. Adım: Bir Google API Hesabı Alın

Ne yazık ki, Google Vision API tamamen ücretsiz bir hizmet değildir. Bir API hesabı yazarken, ayda 1000 ücretsiz Google Vision API çağrısı sağlar. Ardından, her 1000 arama için 1,00 ABD dolarıdır.

Biliyorum, biliyorum, çok kötü değil. Ama bu ticari bir proje değil. Küçük bir ev botu için kullanmak istiyorum. Görüntüleri API'ye aktarmaya karar verdiğim için karım 40 dolarlık bir fatura alırsa, bu ölü bir bot olur. Her neyse, yine de kaka ve kıkırdama servisini araştırayım dedim.

Hesap ziyareti almak için

Google Konsolu

Ve mevcut bir Google hesabıyla oturum açın veya bir tane oluşturun.

2. Adım: Fatura Bilgilerini Girin

Fatura Bilgilerini Girin
Fatura Bilgilerini Girin

Şimdi, işte korkutucu kısım, gitmeden önce fatura bilgilerinizi girmelisiniz. 1000 aramayı geçerseniz ücretlendirileceğinizi unutmayın. Yine, 1.000 ücretsiz aramanızı aşarsanız ücretlendirilirsiniz. (Ne? Bunu zaten söyledim mi? Oh.)

3. Adım: API Kitaplığını Açın

API Kitaplığını Açın
API Kitaplığını Açın

Fatura bilgilerini ayarladıktan sonra Cloud Vision API'yi etkinleştirmemiz gerekiyor. Bu bir güvenlik özelliğidir, esasen, tüm Google API'leri varsayılan olarak devre dışıdır, bu nedenle birisi yanlışlıkla erişirse her yerde cehennemi serbest bırakmazlar.

4. Adım: Google Vision API'yi arayın

Google Vision API'yi arayın
Google Vision API'yi arayın

Şimdi Vision'ı arayın ve düğmesine tıklayın. Burada göze batan bir Etkinleştir düğmesi olmalıdır. Basın.

Adım 5: Kimlik Bilgileri'ne gidin

Kimlik Bilgileri'ne gidin
Kimlik Bilgileri'ne gidin

Yapmamız gereken son şey API anahtarını almak. Bunun, kimlik doğrulama için API çağrı başlıklarına dahil edilmesi gerekir.

API anahtarınızı kimsenin almasına izin vermeyin. Ve kodunuzda sabit kodlamayın. İnan bana, bu seni ısıracak. Bu yanlışlıkla web'e gönderilirse, bir web tarayıcısı onu çabucak bulur ve milyarlarca dolar ödersiniz.

Bu yazı sizi biraz korkutsun.

Geliştirici AWS Anahtarlarını Github'a Koyar

Tamam! API Anahtarınızı alalım. Kimlik Bilgileri bölümünü bulun

6. Adım: Google Vision API Anahtarı Oluşturun

Google Vision API Anahtarı Oluşturun
Google Vision API Anahtarı Oluşturun
Google Vision API Anahtarı Oluşturun
Google Vision API Anahtarı Oluşturun

Muhtemelen henüz oluşturmadığınız için, oluşturulmuş herhangi bir kimlik bilgisi görmeyeceksiniz.

Yeni bir API Anahtarı oluşturalım. Anahtara anlamlı bir ad verir ve onu yalnızca Google Cloud API ile sınırlardım. Devam edin ve bir sonraki adımda ihtiyaç duyacağımız için API anahtarınızı kopyalayın.

Adım 7: Raspberry Pi Tarafı Kurulumu

Bunun başında listelenen makaleler, bu adım için Raspberry Pi'yi kurmanıza yardımcı olacaktır. Ancak farklı şeyler yapıyorsanız, bunların çoğu yine de işinize yarayacaktır. Ancak, ortam değişkenleri kısmına geldiğimizde, bu diğer Linux çeşitleri için farklı olacaktır.

Pi'nize SSH'ing yaparak başlayın.

Ve tüm paketleri güncelle

sudo pacman-Syu

Google Cloud Vision API için bir ortam değişkeni oluşturacağız. Bu, API anahtarınızı daha aşağıdaki koda kodlamaktan kaçınmak içindir. Bu işe yarayacak, ancak bana bağlı kalmanızı ve API'yi işlemek için bir ortam değişkeni yöneticisi kurmanızı şiddetle tavsiye ederim.

Yazarak kök kullanıcıya geçin

su

Şifrenizi girin.

Bir sonraki yapacağımız şey, Google Vision API Anahtarınızı ortam değişkeni olarak eklemektir.

/etc/profil

dosya, bu, önyükleme sırasında başlatılmasına neden olmalıdır.

Tür, değiştirme

YOUR_API_KEY

gerçek API Anahtarınızla.

echo 'GOOGLE_CLOUD_VISION_API_KEY'i dışa aktar=YOUR_API_KEY' >> /etc/profile

Şimdi Pi'yi yeniden başlatın, böylece etkili olur.

sudo yeniden başlatma

Tekrar oturum açın. API anahtarını yüklediğinden emin olmak için kontrol edelim.

echo $GOOGLE_CLOUD_VISION_API_KEY

API anahtarınız geri yankılanırsa, gitmeniz iyi olur.

Adım 8: Proje Kurulumu

Proje Kurulumu
Proje Kurulumu

Bir proje dizini oluşturalım.

mkdir google-vis

cd google-vis

Şimdi yeni bir Node projesi başlatalım.

npm başlangıç

İsterseniz paket ayrıntılarını özelleştirmekten çekinmeyin. Benim gibi tembelseniz, komut istemine dönene kadar enter tuşuna basın.

Gerekli Node kitaplıklarını ekleyelim. O tek. Zaman uyumsuz web isteklerini sağlayan axios kitaplığı.

npm aksiyoları

resim
resim

Ayrıca bir kaynak dizini oluşturalım ve güzel test imajımızı indirelim. Ah, Bayan Hepburn!

içinde olduğunuzdan emin olun.

google-vis/kaynaklar

görüntüyü indirirken proje dizini.

mkdir kaynakları

cd kaynakları wget

9. Adım:

içinde bir dosya oluşturun

gitmek

denilen dizin

app.js

nano uygulama.js

Ardından aşağıdaki kodu yapıştırın ve CTRL+O yazıp CTRL+X ile çıkın ve dosyayı kaydedin.

//

const const aksiyolar = zorunlu('aksios'); const fs = gerektirir('fs');

const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY

eğer (!API_KEY) {

konsol.log('API anahtarı sağlanmadı') }

function base64_encode(dosya) {

// ikili verileri oku var bitmap = fs.readFileSync(dosya); // ikili verileri base64 ile kodlanmış dizgeye çevir yeni 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 = {

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

axios.post(apiCall, reqObj).then((yanıt) => {

konsol.log(yanıt); konsol.log(JSON.stringify(response.data.responses, tanımsız, 4)); }).catch((e) => { console.log(e.response); });

Bu kod, API anahtarı ortam değişkenini alır ve ondan bir program sabiti oluşturur.

const API_KEY = process.env. GOOGLE_CLOUD_VISION_API_KEY

API anahtarının sabit kodlanmasından bu şekilde kaçınıyoruz.

Adım 10:

Programı çalıştıralım.

düğüm uygulaması.js

Her şey yolunda giderse, aşağıdakine benzer bir çıktı almalısınız

data: { answer:

11. Adım: Ve Çok Daha Fazlası…

Bu makale kısadır - hızlı bir başlangıç. Ancak burada çok fazla potansiyel var. Örneğin, Raspberry Pi Kamerayı kullanarak kendi resimlerinizi göndermek

  • ahududu
  • pi-kamera

Lütfen çıktının nasıl kullanılacağıyla ilgili herhangi bir soru sormaktan çekinmeyin.

Başka özellik algılama istekleri var.

Google Vision API -- Diğer Özellikler

Ancak, makaleyi sonlandıracağım ve görsel algılama sistemlerimi kullanmaya devam edeceğim. Stokastik gradyan inişini anladığım anda.

Önerilen: