Kuidas Ruby abil pildisisu tuvastada rakenduse Amazon Rekognition abil

Rekognition on uus Amazoni veebiteenus, mis „hõlbustab piltide analüüsi lisamist oma rakendustele.” See suudab tuvastada nägusid ja objekte ning isegi võimaldab teil tulevikus nägude raamatukogusid talletada.

Kui olete kunagi kasutanud Ruby AWS-i teenust, on mõne lihtsa pildi tuvastamise teostamine lihtne.

Looge AWS-i mandaatidega .env-fail

AWS_REGION = us-ida-1
AWS_ACCESS_KEY_ID = [pane see võti siia]
AWS_SECRET_ACCESS_KEY = [ja teine ​​siin]

Hankige mandaadid AWS-ilt nagu mis tahes muu teenuse puhul. (Täiendava turvalisuse tagamiseks kasutage IAM-i, et luua volituste andmeid ainult teadmiseks.) Pange tähele, et see on praegu saadaval ainult USA läänes, USA idas ja Iirimaa EL-i piirkondades.

Lihtsa projekti käivitamiseks looge Gemfile

allikas 'https://rubygems.org'
kalliskivi "dotenv"
pärl 'aws-sdk'

Punkt dotenv tõmbab teie programmi keskkonnamuutujatena .env-faili. Aws-sdk pärl on Amazoni ametlik AWS-i Ruby SDK.

Amazon Rekognitioni pärimiseks kirjutage Ruby-programm

nõuda 'dotenv'
Dotenv.load
nõuda 'aws-sdk'
klient = Aws :: äratundmine :: Client.new
resp = client.detect_labels (
         pilt: {bytes: File.read (ARGV.first)}
       )
resp.labels.each do | silt |
  paneb "# {label.name} - # {label.confidence.to_i}"
lõpp

Esiteks laadime oma raamatukogud ja keskkonnamuutujaid .env-st. AWS SDK kasutab teie mandaate automaatselt.

Järgmisena loome kliendiobjekti ja kutsume selle tuvastamise tunnusmeetodi (tõesti Rekognition's DetectLabels meetodi) faili, mille nimi sisestatakse esimese käsuridade argumendi kaudu (ARGV.first), töötlemata andmetega. Lõpuks prindime välja sildid ja tagastatud usaldusnivoo.

Tehke mõni tuvastamine

Kui ülaltoodud faili nimeks oleks näiteks tuvastamine.rb, võite käivitada järgmise:

ruby detect.rb myimage.jpg

Ütleme nii, et myimage.jpg nägi välja selline:

Ülaltoodud Ruby-skript annaks:

Kiirtee-64
Tee-64
Mustusetee-63
Kruus-63
Asfalt-56
Tarmac-56
Ristmik-55

Tuvastatud sildid on vasakul, paremal on tuvastamisalgoritmi protsentuaalne usaldusnumber.

Lõbutsege ja pidage meeles, et Amazon võtab teilt 1000 töötletud pildi eest 1 dollarit, kui te pole vaba taset.

Juhuslikud kohutavad ideed selle kraami jaoks, kui teil on igav

  • Skaneerige piltide jaoks Twitter / Instagram, leidke nende seast fotod, seejärel automatiseerige vastuseid tuvastatud siltide abil, näiteks „Ma armastan [silti]!” Või „Oh vau, teie [silt] on [ülivõrre]!” Ja tehke Twitter / Instagram isegi hullemad kui nad juba on. Kuid saate rohkem jälgijaid ..
  • Indekseerige kõik fotoallikad ja vali välja kõik need, millel on nii kasside kui ka pizza suhtes kindel usaldus. Seejärel looge Facebooki konto või e-posti infoleht, mis postitab ainult pilte kassidest, kes on pitsa lähedal.
  • Meetod "avastada sildid" tagastab, kas tuvastamise tegemiseks tuli pildi suunda korrigeerida, nii et saaksite seda kasutada kalli pildi orientatsiooni detektorina.
  • Skaneerige oma kasutajate üleslaaditud avatarid ja ärge lubage kängurusid ega smokkides koeri teie rakendust kasutada. Neil on raske raha teenida.
  • Kasutage veebikaamera ja digitaalset ukselukku ning avage uks automaatselt, kui nukk näeb teie lapsi. OK, see võib osa ajast ebaõnnestuda, kuid teie lapsed leiavad, et õues magamine on tore seiklus!
  • Tehke näo tuvastamise ja äratundmise asjadega kurja asju, mida ma ei jõudnud ülalpool käsitleda. Olen kindel, et nägin, kuidas Amazon soovitab seda tehnoloogiat kasutada „digitaalsetes stendides”, et tuvastada minevikus jalutavate inimeste demograafilisi andmeid või midagi sellist - sellistel asjadel on kindlasti ainult positiivsed tulemused.
  • Mul on nüüd igav, minge ja kuulake Poppy'i, temast saab suur staar.