Satura rādītājs:

Abellcadabra (sejas atpazīšanas durvju bloķēšanas sistēma): 9 soļi
Abellcadabra (sejas atpazīšanas durvju bloķēšanas sistēma): 9 soļi

Video: Abellcadabra (sejas atpazīšanas durvju bloķēšanas sistēma): 9 soļi

Video: Abellcadabra (sejas atpazīšanas durvju bloķēšanas sistēma): 9 soļi
Video: Самый передовой железнодорожный вокзал Японии | Билетные ворота с распознаванием лиц в работе 2024, Novembris
Anonim
Abellcadabra (sejas atpazīšanas durvju bloķēšanas sistēma)
Abellcadabra (sejas atpazīšanas durvju bloķēšanas sistēma)

Pārvietojoties karantīnas laikā, es mēģināju atrast veidu, kā nogalināt laiku, izveidojot sejas atpazīšanu mājas durvīm. Es to nosaucu par Abellkadabru - kas ir kombinācija starp Abrakadabru, burvju frāze ar durvju zvanu, kuru es ņemu tikai pie zvana. LOL

Jebkurā gadījumā šī sistēma veiks sejas atpazīšanu, izmantojot Amazon Rekognition, kad lietotājs nospiež durvju zvanu. Rekognition salīdzinās uzņemto attēlu ar Amazon S3 attēlu kolekciju. Ja atzīšana ir veiksmīga, durvis tiks atvērtas. Ja tas neizdodas, atskan skaņas signāls un lietotājs var izvēlēties atbloķēt, izmantojot RFID marķieri. Mājas iekšpusē ir arī poga, kur mājas īpašnieks var atslēgt durvis, to nospiežot.

Visa veiktā atpazīšana un atbloķēšana tiks saglabāta Amazon DynamoDB. Es mēģināšu paskaidrot soli pa solim, lai izveidotu visu sistēmu. Es izmantoju materiālus, kas man jau ir, jo bija vajadzīgs ilgs laiks, lai iegūtu kaut ko citu, tāpēc tas tā ir.

1. darbība: materiāli un rīki

Materiāls:

  • Raspberry Pi
  • Pi kamera
  • RC servo (darbosies kā durvju slēdzene)
  • Pārslēgšanas poga 2x
  • Signāls
  • Magnētiskais slēdzis
  • RC-522 RFID lasītājs un birka
  • MF, MM, FF rīvdēļa vadi
  • Polistirola ledus kaste - jebkura izmēra būtu labi, jo šīs būs mūsu durvis.
  • 1,5 collu eņģes 2x
  • 2,5 mm skrūve 4x

Rīki

  • Skrūvgriezis
  • Divpusēja lente

2. darbība. Amazon tīmekļa pakalpojumu iestatīšana

Amazon tīmekļa pakalpojumu iestatīšana
Amazon tīmekļa pakalpojumu iestatīšana

Amazon Web Services ir viegli lietojams un bez maksas, līdz sasniegsit 5000 API zvanus mēnesī. Jūs varat reģistrēties AWS kontam šeit. Jums būs jāreģistrējas bezmaksas līmeņa Amazon Rekognition kontam. Brīvajam līmenim vajadzētu būt vairāk nekā pietiekamam šim projektam.

Kad reģistrēšanās ir veiksmīga, noklikšķiniet uz Pakalpojumi> IAM. No šejienes mēs izveidosim lietotāju, kuram būs atļaujas izmantot Raspberry Pi.

  1. Noklikšķiniet uz Lietotāji> Pievienot jaunu lietotāju
  2. Piešķiriet lietotāja izveidotajam vārdu. Piekļuves veidam atzīmējiet izvēles rūtiņu Programmatiskā piekļuve.
  3. Noklikšķiniet uz Tālāk.
  4. Noklikšķiniet uz Pievienot esošās politikas tieši. Pārbaudiet tālāk norādītās politikas.
  • AWSLambdaFullAccess
  • AmazonS3FullAccess
  • AmazonDynamoDBFullAccess
  • AmazonRekognitionFullAccess
  • AdministratorAccess
  1. Noklikšķiniet uz Tālāk un Tālāk vēlreiz, jo mums nav jāpievieno tags.
  2. Pārbaudiet, vai izvēlētās politikas ir tādas pašas kā uzskaitītās, un pēc tam noklikšķiniet uz Izveidot lietotāju.

Lejupielādējiet CSV failu, kurā ir piekļuves atslēgas ID un slepenā piekļuves atslēga, kas tiks izmantota nākamajā darbībā. Noklikšķiniet uz Aizvērt.

3. darbība: konfigurējiet Amazon S3 un Amazon DynamoDB

AWS konsolē noklikšķiniet uz Pakalpojumi> S3

S3 darbojas tāpat kā Google disks, kurā varat glabāt dokumentus un attēlus. Šim projektam mums būs nepieciešami divi spaiņi, no kuriem viens ir Amazon Rekognition izmantojamo attēlu kolekcija (un otrs - uzņemtā attēla uzglabāšana).

  1. Noklikšķiniet uz Izveidot kopu.
  2. Ievadiet segmenta nosaukumu un vēlreiz noklikšķiniet uz Tālāk un Tālāk.
  3. Noņemiet atzīmi no izvēles rūtiņas “Bloķēt visu publisko piekļuvi”.
  4. Un atzīmējiet izvēles rūtiņu "Es apzinos, ka pašreizējo iestatījumu dēļ šī grupa un objekti var kļūt publiski pieejami".
  5. Noklikšķiniet uz Tālāk un Izveidot kopu.
  6. Atkārtojiet darbību otrajam spainim.
  7. noklikšķiniet uz Pakalpojumi> DynamoDB

Šajā projektā tiks izmantota Amazon DynamoDB, lai saglabātu atpazīšanu un atbloķētu informāciju. informācija, kas tiks saglabāta, ir saite uz uzņemto attēlu, atpazītais attēla nosaukums vai, ja tas netiek atpazīts, nosaukums tiks saglabāts kā “nezināms”, atpazīšanas datums un laiks, kā arī statuss, vai tas ir veiksmīgs, neviena seja nav saskaņota, sejas nav atklāts, RFID atbloķēts vai atbloķēts no iekšpuses.

  1. Noklikšķiniet uz Pievienot jaunu tabulu.
  2. Ievietojiet jebkuru tabulas nosaukumu.
  3. Primārajai atslēgai ievietojiet “rid” kā primāro atslēgu.
  4. Noklikšķiniet uz Izveidot.

4. darbība. Konfigurējiet AWS Raspberry Pi

Pirmais solis ir ievadīt AWS akreditācijas datus. Lai to izdarītu Raspberry Pi konsolē:

aws konfigurēt

Pēc tam ievadiet savus izveidotos AWS IAM akreditācijas datus, pārliecinoties, ka kā savu reģionu (vai attiecīgo reģionu, kurā esat iestatījis AWS atpazīšanu) ievadāt “us-west-2”. Noklusējuma izvades formātu atstājiet tukšu.

5. darbība: pievienojiet vienumus Raspberry Pi

Tātad vienumu savienojumi ir šādi.

  • RC Servo - 1, 11, Zeme
  • Magnētiskais slēdzis - 8, zemējums
  • Signāls - 32, Zeme
  • Ārējā poga - 16, Zeme
  • Pogas iekšpusē - 18, zeme
  • SDA tapa RFID lasītājā - 24
  • SCK tapa RFID lasītājā - 23
  • MOSI tapa RFID lasītājā - 19
  • RFID lasītāja MISO tapa - 21
  • GND tapa uz RFID lasītāja - zeme
  • RST tapa RFID lasītājā - 22
  • 3,3 V kontakts uz RFID lasītāja - 17

Lūdzu, izveidojiet savienojumu ar tuvāko zemi.

6. darbība: kodi

Visu nepieciešamo kodu varat atrast manā Git krātuvē.

Lai uzzinātu, kā pievienot sejas un izmantot Index Faces.py, lūdzu, skatiet šo videoklipu.

7. solis: prototipa izveide

Prototipa veidošana
Prototipa veidošana
Prototipa veidošana
Prototipa veidošana

Tā kā būvniecības laikā es neuzņēmu nevienu attēlu, es vienkārši atstāšu sava gatavā prototipa attēlu.

Prototips ir veidots, lai attēlotu durvis. Skats no mājas parāda durvju skatu no mājas ārpuses. Pi kamera tika uzstādīta vidējam cilvēka acu līnijas augstumam, lai nodrošinātu, ka uzņemtajā attēlā būs atpazīstama seja. Durvju zvana poga, kas aktivizēs Pi kameru, lai uzņemtu attēlu, ir novietota zem Pi kameras. RFID lasītājs ir novietots arī uz durvīm, lai lietotājs pie durvīm varētu atslēgt durvis, izmantojot RFID tagu, ja atpazīšana neizdodas.

Sarkanā poga ir iekšējā poga, kas tiks izmantota durvju atbloķēšanai no mājas iekšpuses. Raspberry Pi ir novietots mājas iekšpusē, lai cilvēki no ārpuses nevarētu to iejaukties. RC Servo ir novietots durvju labajā pusē kā durvju slēdzene. Signāls ir novietots mājas iekšpusē, lai nodrošinātu, ka skaņas signāls ir dzirdams no cilvēkiem mājā, kad tas atskanēja. Magnētiskais slēdzis ir novietots starp durvīm un rāmi.

8. darbība. Prototipa pārbaude

Prototipa pārbaude
Prototipa pārbaude

Palaidiet kodu terminālī

sudo python3 faila nosaukums.py

Vienkārši nospiediet dzelteno pogu mājas ārpusē, un šī fotogrāfija tiek uzņemta.

Pārbaudiet savu Amazon DynamoDB, lai pārbaudītu, vai tabula ir atjaunināta, un S3 spaiņus, lai redzētu, vai uzņemtais attēls ir saglabāts.

9. solis: slēgšana

Ja jūs nolemjat pats izveidot šo projektu, paziņojiet man komentāros (:

Paldies, ka izlasījāt.

Ieteicams: