Kuinka havaita kuvasisältö Rubyn avulla Amazon Rekognition -sovelluksella

Rekognition on uusi Amazon-verkkopalvelu, jonka avulla "on helppo lisätä kuva-analyysi sovellukseesi." Se voi tunnistaa kasvot ja esineet ja jopa antaa sinun tallentaa kasvojen kirjastot tulevaa tunnistamista varten.

Jos olet aiemmin käyttänyt Rubyn AWS-palvelua, on yksinkertaista suorittaa yksinkertainen kuvan tunnistus (sic).

Luo .env-tiedosto AWS-käyttöoikeustiedoillasi

AWS_REGION = us-itä-1
AWS_ACCESS_KEY_ID = [laita avain tähän]
AWS_SECRET_ACCESS_KEY = [ja toinen täällä]

Hanki käyttöoikeustiedot AWS: ltä, kuten mitä tahansa muuta palvelua varten. (Ylimääräisen turvallisuuden vuoksi käytä IAM: ää luomustietojen luomiseen yksinomaan tunnistukseen.) Huomaa, että se on tällä hetkellä saatavana vain Yhdysvaltojen länsi-, itä- ja EU-Irlannin alueilla.

Luo Gemfile saadaksesi yksinkertaisen projektin eteenpäin

lähde "https://rubygems.org"
helmi 'dotenv'
helmi 'aws-sdk'

Dotenv-helmi vetää .env-tiedoston ohjelman ympäristömuuttujina. Aws-sdk-helmi on Amazonin virallinen Ruby SDK AWS: lle.

Kirjoita Ruby-ohjelma kyselyyn Amazon Rekognition

vaatia 'dotenv'
Dotenv.load
vaatia 'aws-sdk'
asiakas = Aws :: Tunnistaminen :: Client.new
resp = client.detect_labels (
         kuva: {tavut: File.read (ARGV.first)}
       )
resp.labels.each do | etiketti |
  asettaa "# {label.name} - # {label.confidence.to_i}"
pää

Ensinnäkin, lataamme kirjastomme ja lataamme ympäristömuuttujiin .env-tiedostosta. AWS SDK käyttää kirjautumistietojasi automaattisesti.

Seuraavaksi luomme asiakasobjektin ja kutsumme sen havaitsemismenetelmää (todellakin Rekognition's DetectLabels -menetelmää) tiedostoon, jonka nimi välitetään ensimmäisen komentoriviargumentin (ARGV.first) raa'illa tiedoilla. Lopuksi tulostamme tarrat ja luottamustasot palasivat.

Tee joitain havaitsemista

Jos yllä olevaa tiedostoa kutsutaan esimerkiksi tuvasta.rb, voit suorittaa tämän:

ruby detect.rb myimage.jpg

Oletetaan, että myimage.jpg näytti tältä:

Yllä oleva Ruby-skripti tuottaa:

Moottoritie-64
Road-64
Dirt Road-63
Sora-63
Asfaltti-56
Asfaltti-56
Risteys-55

Vasemmalla puolella havaitut tunnisteet ovat oikealla puolella ilmaisualgoritmin prosentuaalisen luotettavuuden kanssa.

Pidä hauskaa ja muista, että Amazon laskuttaa sinulta 1 dollaria 1 000 käsiteltyä kuvaa kohti, ellet ole ilmaisella tasolla.

Satunnaisia ​​kauheita ideoita tälle aineelle, jos olet kyllästynyt

  • Skannaa Twitteristä / Instagramista kuvia, havaitse niiden sisältö ja automatisoi sitten vastaukset havaittujen tarrojen, kuten “Rakastan [etiketti]!” Tai “Voi vau, [etikettisi] on [ylivoimainen]!” Avulla, ja tee Twitteristä / Instagramista jopa pahempaa kuin he jo ovat. Mutta saat lisää seuraajia ..
  • Indeksoi kaikki valokuvalähteet ja valitse kaikki sellaiset, joiden luotettavuus vastaa hyvin sekä kissoja että pizzaa. Luo sitten Facebook-tili tai sähköpostiuutiskirje, joka lähettää vain kuvia kissoista, jotka ovat lähellä pizzaa.
  • Asennusmerkintämenetelmä palauttaa sen, onko kuvan orientaatio korjattu havaitsemisen suorittamiseksi, joten voit käyttää sitä kallista kuvan suunnan ilmaisimena.
  • Skannaa avatarit, joiden käyttäjät lataavat, äläkä salli kengurut tai smokkeissa olevat koirat käyttää sovellustasi. Heillä on vaikea ansaita rahaa.
  • Käytä verkkokameraa ja digitaalista ovenlukkoa ja avaa ovi automaattisesti, kun nokka näkee lapsesi. Ok, se saattaa epäonnistua joskus, mutta lapsesi pitävät ulkona nukkumisesta hienoa seikkailua!
  • Tee pahoja juttuja kasvojentunnistus- ja tunnistusasioilla, joita en ole päässyt peittämään yllä. Olen varma, että näin Amazonin ehdottavan tämän tekniikan käyttöä "digitaalisissa mainostauluissa" havaitakseen menneiden ihmisten demografisia asioita tai jotain - sellaisilla tavaroilla on varmasti vain myönteisiä tuloksia.
  • Minulla on kyllästynyt, mene kuuntelemaan Poppya, hänestä tulee iso tähti.