Indholdsfortegnelse:

Abellcadabra (låsesystem til ansigtsgenkendelse): 9 trin
Abellcadabra (låsesystem til ansigtsgenkendelse): 9 trin

Video: Abellcadabra (låsesystem til ansigtsgenkendelse): 9 trin

Video: Abellcadabra (låsesystem til ansigtsgenkendelse): 9 trin
Video: Такого ты еще не видел! Шикарная идея для мастерской и гаража! 2024, November
Anonim
Abellcadabra (låsesystem til ansigtsgenkendelse)
Abellcadabra (låsesystem til ansigtsgenkendelse)

Læggende rundt under karantænen forsøgte jeg at finde en måde at dræbe tiden på ved at bygge ansigtsgenkendelse til husdøren. Jeg kaldte det Abellcadabra - som er en kombination mellem Abracadabra, en magisk sætning med dørklokke, som jeg kun tager klokken. LOL

Anyway, dette system vil udføre ansigtsgenkendelse ved hjælp af Amazon Rekognition, når brugeren trykker på dørklokken. Anerkendelse vil sammenligne billedet taget med en samling billeder i Amazon S3. Hvis genkendelsen lykkes, åbnes døren. Hvis det ikke lykkes, lyder summeren, og brugeren kan få mulighed for at låse op ved hjælp af RFID -token. Der er også en knap på indersiden af huset, hvor husejeren kan låse døren op ved at trykke på den.

Alle genkendelser og låst udført gemmes i Amazon DynamoDB. Jeg vil prøve at forklare trin for trin at bygge hele systemet. Jeg bruger de materialer, jeg allerede har, fordi det tog lang tid at få noget andet, så det er det.

Trin 1: Materialer og værktøjer

Materiale:

  • Hindbær Pi
  • Pi kamera
  • RC servo (fungerer som dørlås)
  • Skift knap 2x
  • Summer
  • Magnetisk kontakt
  • RC-522 RFID-læser og mærke
  • MF, MM, FF brødbrætstråde
  • Polystrene Ice Box - enhver størrelse ville være ok, fordi dette vil være vores dør.
  • 1,5 tommer hængsel 2x
  • 2,5 mm skrue 4x

Værktøjer

  • Skruetrækker
  • Dobbeltsidet tape

Trin 2: Opsætning af Amazon Web Services

Opsætning af Amazon Web Services
Opsætning af Amazon Web Services

Amazon Web Services er let at bruge og er gratis, indtil du når 5000 API -opkald om måneden. Du kan tilmelde dig AWS -konto her. Du bliver nødt til at tilmelde dig en gratis tier amazon Rekognition -konto. Det gratis niveau bør være mere end tilstrækkeligt til dette projekt.

Når tilmeldingen er vellykket, skal du klikke på Services> IAM. Herfra opretter vi en bruger, der har tilladelser til at blive brugt af Raspberry Pi.

  1. Klik på Brugere> Tilføj ny bruger
  2. Giv brugeren oprettet navn. For adgangstype skal du markere boksen Programmatisk adgang.
  3. Klik på Næste.
  4. Klik på Vedhæft eksisterende politikker direkte. Kontroller følgende politikker:
  • AWSLambdaFullAccess
  • AmazonS3FullAccess
  • AmazonDynamoDBFullAccess
  • AmazonRekognitionFullAccess
  • Administrator Adgang
  1. Klik på Næste og Næste igen, fordi vi ikke behøver at tilføje tag.
  2. Kontroller, om de valgte politikker er de samme som angivet, og klik derefter på Opret bruger.

Download CSV -filen, der indeholder adgangsnøgle -id og hemmelig adgangsnøgle, som vil blive brugt i det kommende trin. Klik på Luk.

Trin 3: Konfigurer Amazon S3 og Amazon DynamoDB

Klik på Services> S3 i AWS -konsollen

S3 fungerer ligesom Google Drive, hvor du kan gemme dokumenter og billeder. Til dette projekt har vi brug for to spande, hvor den ene skal gemme en samling billeder, der skal bruges af Amazon Rekognition (og den anden er at gemme det fangede billede.

  1. Klik på Opret spand.
  2. Indtast skovlnavn, og klik på Næste og Næste igen.
  3. Fjern markeringen i feltet "Bloker al offentlig adgang".
  4. Og marker "Jeg erkender, at de aktuelle indstillinger kan resultere i, at denne spand og objekterne bliver offentlige".
  5. Klik på Næste og Opret spand.
  6. Gentag trinnet for den anden spand.
  7. klik på Services> DynamoDB

Amazon DynamoDB vil blive brugt i dette projekt til at gemme genkendelsen og låse op for detaljer. detaljerne, der vil blive gemt, er link til billede taget, billedets navn genkendt eller hvis det ikke genkendes, gemmes navnet som 'ukendt', dato og klokkeslæt for genkendelse og status om det er vellykket, ingen ansigter matchet, ingen ansigter registreret, RFID -oplåsning eller ulåst indefra.

  1. Klik på Tilføj ny tabel.
  2. Indsæt et hvilket som helst navn til tabellen.
  3. For primær nøgle skal du indsætte 'rid' som primær nøgle.
  4. Klik på Opret.

Trin 4: Konfigurer AWS på Raspberry Pi

Det første trin er at indtaste dine AWS -legitimationsoplysninger. For at gøre denne type i konsollen af Raspberry Pi:

aws konfigurere

Indtast derefter dine AWS IAM-legitimationsoplysninger, som du har oprettet, og sørg for at indtaste "us-west-2" som din region (eller den relevante region, du har konfigureret til AWS Rekognition). Lad standardoutputformatet være tomt.

Trin 5: Tilslut emnerne til Raspberry Pi

Så forbindelserne mellem emnerne er som nedenfor.

  • RC Servo - 1, 11, Ground
  • Magnetisk kontakt - 8, jord
  • Summer - 32, jord
  • Udvendig knap - 16, jorden
  • Indvendig knap - 18, jord
  • SDA -pin på RFID -læser - 24
  • SCK -pin på RFID -læser - 23
  • MOSI -pin på RFID -læser - 19
  • MISO -pin på RFID -læser - 21
  • GND -pin på RFID -læser - Jordet
  • RST -pin på RFID -læser - 22
  • 3,3 V -ben på RFID -læser - 17

Tilslut venligst til den nærmeste jord.

Trin 6: Koder

Du kan finde al den nødvendige kode i mit Git -lager.

For trin om hvordan du tilføjer ansigter og bruger Index Faces.py, kan du tjekke denne video.

Trin 7: Opbygning af prototypen

Bygger prototypen
Bygger prototypen
Bygger prototypen
Bygger prototypen

Da jeg ikke tog noget billede under min konstruktion, forlader jeg bare billedet af min færdige prototype.

Prototypen er bygget til at skildre en dør. Udsigten fra viser udsigten til døren fra husets yderside. Pi -kamera blev installeret til den gennemsnitlige menneskelige øjenlinjehøjde for at sikre, at det optagne billede vil indeholde ansigt, der skal genkendes. Dørklokkeknappen, der aktiverer Pi -kameraet til at tage billede, er placeret under Pi -kameraet. RFID -læser er også placeret på døren, så brugeren ved døren kan låse døren op ved hjælp af RFID -tag, hvis genkendelsen mislykkedes.

Den røde knap er den indvendige knap, der bruges til at låse døren op inde fra huset. Hindbær Pi er placeret på indersiden af huset, så folk udefra ikke kan manipulere med det. RC Servo er placeret på højre side af døren som lås på døren. Buzzer er placeret på indersiden af huset for at sikre, at lyden af summer kan høres fra folk inde i huset, når det ringede. Magnetisk kontakt placeres mellem døren og karmen.

Trin 8: Test af prototypen

Test af prototypen
Test af prototypen

Kør koden på terminalen

sudo python3 filnavn.py

Bare tryk på den gule knap på ydersiden af huset, og dette foto er taget.

Kontroller din Amazon DynamoDB for at kontrollere, at tabellen er opdateret, og S3 -spande for at se, at det fangede billede er gemt.

Trin 9: Lukning

Hvis du beslutter dig for at lave dette projekt selv, så lad mig vide det i kommentarerne (:

Tak fordi du læste.

Anbefalede: