Sisällysluettelo:

Abellcadabra (kasvojentunnistuksen oven lukitusjärjestelmä): 9 vaihetta
Abellcadabra (kasvojentunnistuksen oven lukitusjärjestelmä): 9 vaihetta
Anonim
Abellcadabra (kasvojentunnistuksen oven lukitusjärjestelmä)
Abellcadabra (kasvojentunnistuksen oven lukitusjärjestelmä)

Asuessani karanteenin aikana yritin löytää tavan tappaa aika rakentamalla talon oven kasvojentunnistuksen. Nimesin sen Abellcadabraksi - joka on yhdistelmä Abracadabran välillä, maaginen lause ovikellolla, jonka otan vain kellon. LOL

Joka tapauksessa tämä järjestelmä suorittaa kasvojentunnistuksen Amazon Rekognitionin avulla, kun käyttäjä painaa ovikelloa. Rekognition vertaa otettua kuvaa Amazon S3: n kuvakokoelmaan. Jos tunnistus onnistuu, ovi avataan. Jos se ei onnistu, summeri soi ja käyttäjä voi halutessaan avata lukituksen RFID -tunnuksen avulla. Talon sisällä on myös painike, jolla talon omistaja voi avata oven lukituksen painamalla sitä.

Kaikki tunnistukset ja lukituksen avaus tallennetaan Amazon DynamoDB: hen. Yritän selittää askel askeleelta koko järjestelmän rakentamiseksi. Käytän jo olemassa olevia materiaaleja, koska kaiken muun hankkiminen kesti kauan, joten tämä on se.

Vaihe 1: Materiaalit ja työkalut

Materiaali:

  • Raspberry Pi
  • Pi -kamera
  • RC -servo (toimii oven lukituksena)
  • Kytkinpainike 2x
  • Summeri
  • Magneettinen kytkin
  • RC-522 RFID-lukija ja -tunniste
  • MF, MM, FF leipälevyn johdot
  • Polystrene Ice Box - mikä tahansa koko olisi ok, koska tämä on ovemme.
  • 1,5 tuuman sarana 2x
  • 2,5 mm ruuvi 4x

Työkalut

  • Ruuvimeisseli
  • Kaksipuolinen teippi

Vaihe 2: Asenna Amazon Web Services

Amazon Web Services -palvelun asentaminen
Amazon Web Services -palvelun asentaminen

Amazon Web Services on helppokäyttöinen ja ilmainen, kunnes saavutat 5000 sovellusliittymäpuhelua kuukaudessa. Voit rekisteröityä AWS -tilille täällä. Sinun on rekisteröidyttävä ilmaisen tason amazon Rekognition -tilille. Vapaan tason pitäisi olla enemmän kuin riittävä tähän projektiin.

Kun rekisteröinti on onnistunut, valitse Palvelut> IAM. Tästä lähtien luomme käyttäjän, jolla on Raspberry Pi: n käyttöoikeudet.

  1. Napsauta Käyttäjät> Lisää uusi käyttäjä
  2. Anna käyttäjän luoma nimi. Valitse Käyttöoikeustyyppi -valintaruutu Ohjelmallinen käyttö.
  3. Napsauta Seuraava.
  4. Napsauta Liitä nykyiset käytännöt suoraan. Tarkista seuraavat käytännöt:
  • AWSLambdaFullAccess
  • AmazonS3FullAccess
  • AmazonDynamoDBFullAccess
  • AmazonRekognitionFullAccess
  • AdministratorAccess
  1. Napsauta Seuraava ja Seuraava uudelleen, koska meidän ei tarvitse lisätä tunnistetta.
  2. Tarkista, ovatko valitut käytännöt samat kuin luettelossa, ja napsauta sitten Luo käyttäjä.

Lataa CSV -tiedosto, joka sisältää käyttöavaimen tunnuksen ja salaisen pääsyavaimen, joita käytetään seuraavassa vaiheessa. Napsauta Sulje.

Vaihe 3: Määritä Amazon S3 ja Amazon DynamoDB

Napsauta AWS -konsolissa Palvelut> S3

S3 toimii aivan kuten Google Drive, jossa voit tallentaa asiakirjoja ja kuvia. Tätä projektia varten tarvitsemme kaksi kauhaa, joista toinen on Amazon Rekognitionin käyttämä kuvakokoelma (ja toinen on tallennetun kuvan tallentaminen.

  1. Napsauta Luo säilö.
  2. Kirjoita kauhan nimi ja napsauta Seuraava ja Seuraava uudelleen.
  3. Poista valinta Estä kaikki julkiset käyttöoikeudet -ruudusta.
  4. Ja valitse "Hyväksyn, että nykyiset asetukset voivat johtaa tähän ryhmään ja kohteisiin julkisuuteen".
  5. Napsauta Seuraava ja Luo ämpäri.
  6. Toista vaihe toisen säiliön kohdalla.
  7. valitse Palvelut> DynamoDB

Amazon DynamoDB: tä käytetään tässä projektissa tunnistuksen tallentamiseen ja tietojen avaamiseen. tallennettavat tiedot ovat linkki otettuun kuvaan, kuvan nimi tunnistettu tai jos sitä ei tunnisteta, nimi tallennetaan tuntemattomana, tunnistuspäivämäärä ja -aika sekä tila, onko se onnistunut, ei kasvoja, ei kasvoja havaittu, RFID -lukituksen avaaminen tai lukituksen avaaminen sisältä.

  1. Napsauta Lisää uusi taulukko.
  2. Lisää taulukolle mikä tahansa nimi.
  3. Lisää ensisijaiselle avaimelle ensisijainen avain 'rid'.
  4. Napsauta Luo.

Vaihe 4: Määritä AWS Raspberry Pi: lle

Ensimmäinen askel on syöttää AWS -kirjautumistietosi. Voit tehdä tämän tyypin Raspberry Pi -konsolissa:

aws konfiguroida

Kirjoita sitten luomasi AWS IAM -tiedot ja varmista, että kirjoitat alueeksesi "us-west-2" (tai asianomaisen alueen, jonka olet määrittänyt AWS Rekognitionille). Jätä oletustulostusmuoto tyhjäksi.

Vaihe 5: Yhdistä kohteet Raspberry Pi: hen

Joten kohteiden liitännät ovat alla.

  • RC Servo - 1, 11, maa
  • Magneettikytkin - 8, maa
  • Summeri - 32, maa
  • Ulkopainike - 16, Maa
  • Sisäpainike - 18, maa
  • SDA -nasta RFID -lukijalla - 24
  • SCK -nasta RFID -lukijalla - 23
  • MOSI -nasta RFID -lukijalla - 19
  • RFID -lukijan MISO -nasta - 21
  • GND -nasta RFID -lukijalla - Ground
  • RST -nasta RFID -lukijalla - 22
  • 3,3 V: n nasta RFID -lukijalla - 17

Muodosta yhteys lähimpään maahan.

Vaihe 6: Koodit

Löydät kaiken tarvittavan koodin Git -arkistostani.

Katso tästä videosta vaiheet kasvojen lisäämiseksi ja Index Faces.py: n käyttämiseksi.

Vaihe 7: Prototyypin rakentaminen

Prototyypin rakentaminen
Prototyypin rakentaminen
Prototyypin rakentaminen
Prototyypin rakentaminen

Koska en ottanut kuvaa rakentamiseni aikana, jätän vain kuvan valmiista prototyypistäni.

Prototyyppi on rakennettu kuvaamaan ovea. Näkymä näyttää oven näkymän talon ulkopuolelta. Pi -kamera asennettiin ihmisen silmän keskimääräiseen korkeuteen, jotta varmistetaan, että otettu kuva sisältää tunnistettavat kasvot. Ovikello -painike, joka aktivoi Pi -kameran kuvan ottamiseksi, on sijoitettu Pi -kameran alle. RFID -lukija on myös sijoitettu ovelle, jotta käyttäjä ovella voi avata oven lukituksen RFID -tunnisteella, jos tunnistus epäonnistuu.

Punainen painike on sisäpainike, jota käytetään oven lukituksen avaamiseen talon sisältä. Raspberry Pi on sijoitettu talon sisäpuolelle, joten ulkopuoliset ihmiset eivät voi käsitellä sitä. RC Servo on sijoitettu oven oikealle puolelle oven lukkoksi. Summeri on sijoitettu talon sisäpuolelle sen varmistamiseksi, että summerin ääni kuuluu talon sisällä olevista ihmisistä sen soidessa. Magneettikytkin on sijoitettu oven ja kehyksen väliin.

Vaihe 8: Prototyypin testaaminen

Prototyypin testaus
Prototyypin testaus

Suorita koodi päätelaitteessa

sudo python3 tiedostonimi.py

Paina vain talon ulkopuolella olevaa keltaista painiketta ja tämä kuva on otettu.

Tarkista Amazon DynamoDB -laitteestasi, että taulukko on päivitetty, ja S3 -kauhat nähdäksesi, että otettu kuva on tallennettu.

Vaihe 9: Sulkeminen

Jos päätät tehdä tämän projektin itse, kerro siitä kommenteissa (:

Kiitos lukemisesta.

Suositeltava: