فهرست مطالب:

Abellcadabra (سیستم قفل درب تشخیص چهره): 9 مرحله
Abellcadabra (سیستم قفل درب تشخیص چهره): 9 مرحله

تصویری: Abellcadabra (سیستم قفل درب تشخیص چهره): 9 مرحله

تصویری: Abellcadabra (سیستم قفل درب تشخیص چهره): 9 مرحله
تصویری: Part 4 - Triplanetary Audiobook by E. E. Smith (Chs 13-17) 2024, نوامبر
Anonim
Abellcadabra (سیستم قفل درب تشخیص چهره)
Abellcadabra (سیستم قفل درب تشخیص چهره)

در حین قرنطینه ، سعی کردم با ساختن تشخیص چهره درب خانه راهی برای از بین بردن زمان پیدا کنم. من نام آن را Abellcadabra گذاشتم - که ترکیبی از Abracadabra است ، یک عبارت جادویی با زنگ در که فقط زنگ را بر می دارم. LOL

به هر حال ، این سیستم با استفاده از Amazon Rekognition هنگام زنگ زدن کاربر ، چهره را تشخیص می دهد. Rekognition تصویر گرفته شده را با مجموعه ای از تصاویر در Amazon S3 مقایسه می کند. اگر تشخیص موفقیت آمیز باشد ، در باز می شود. در صورت عدم موفقیت ، زنگ صدا به صدا در می آید و کاربر می تواند گزینه ای برای باز کردن قفل با استفاده از توکن RFID داشته باشد. همچنین یک دکمه در داخل خانه وجود دارد که صاحب خانه می تواند با فشار آن در را باز کند.

همه شناسایی و باز کردن قفل انجام شده در Amazon DynamoDB ذخیره می شود. من سعی می کنم مرحله به مرحله برای ساختن کل سیستم توضیح دهم. من از موادی که در حال حاضر دارم استفاده می کنم زیرا زمان زیادی طول کشید تا چیزهای دیگر را بدست آورم ، بنابراین این همان است.

مرحله 1: مواد و ابزارها

مواد:

  • تمشک پای
  • دوربین پی
  • سروو RC (به عنوان قفل درب عمل می کند)
  • تغییر دکمه 2 برابر
  • وزوز
  • سوئیچ مغناطیسی
  • RC-522 RFID خوان و برچسب
  • سیم های تخته نان MF ، MM ، FF
  • جعبه یخ پلی استرن - هر اندازه ای مناسب است زیرا این درب ما خواهد بود.
  • لولا 1.5 اینچی 2 برابر
  • پیچ 2.5 میلی متری 4 برابر

ابزارها

  • پیچ گوشتی
  • نوار دو طرفه

مرحله 2: راه اندازی خدمات وب آمازون

راه اندازی خدمات وب آمازون
راه اندازی خدمات وب آمازون

استفاده از خدمات وب آمازون آسان است و تا زمانی که به 5000 تماس API در ماه برسید رایگان است. در اینجا می توانید برای حساب AWS ثبت نام کنید. شما باید برای یک حساب رایگان تشخیص سطح amazon ثبت نام کنید. سطح رایگان باید بیش از حد کافی برای این پروژه باشد.

پس از موفقیت در ثبت نام ، روی Services> IAM کلیک کنید. از اینجا ، ما یک کاربر ایجاد می کنیم که دارای مجوز استفاده از Raspberry Pi خواهد بود.

  1. روی کاربران> افزودن کاربر جدید کلیک کنید
  2. نام را به کاربر ایجاد شده بدهید. برای نوع دسترسی کادر دسترسی برنامه ای را علامت بزنید.
  3. Next را کلیک کنید.
  4. روی پیوست خط مشی های موجود مستقیماً کلیک کنید. خط مشی های زیر را بررسی کنید:
  • AWSLambdaFullAccess
  • AmazonS3FullAccess
  • AmazonDynamoDBFullAccess
  • AmazonRekognitionFullAccess
  • AdministratorAccess
  1. Next و Next را دوباره کلیک کنید زیرا نیازی به افزودن برچسب نداریم.
  2. بررسی کنید که آیا خط مشی های انتخاب شده مشابه موارد ذکر شده است یا خیر ، روی ایجاد کاربر کلیک کنید.

فایل CSV را که حاوی شناسه کلید دسترسی و کلید دسترسی مخفی است بارگیری کنید که در مرحله بعدی مورد استفاده قرار می گیرد. روی Close کلیک کنید.

مرحله 3: Amazon S3 و Amazon DynamoDB را پیکربندی کنید

در AWS Console ، روی Services> S3 کلیک کنید

S3 درست مانند Google Drive کار می کند که در آن می توانید اسناد و تصاویر را ذخیره کنید. برای این پروژه ، ما به دو سطل نیاز داریم که یکی از آنها ذخیره مجموعه ای از تصاویر است که توسط Amazon Rekognition مورد استفاده قرار می گیرد (و دومی برای ذخیره تصویر گرفته شده است.

  1. روی ایجاد سطل کلیک کنید.
  2. نام سطل را وارد کنید و دوباره روی Next و Next کلیک کنید.
  3. تیک "مسدود کردن همه دسترسی های عمومی" را بردارید.
  4. و کادر "من تصدیق می کنم که تنظیمات فعلی ممکن است منجر به این سطل و اشیاء عمومی شود" را علامت بزنید.
  5. روی Next کلیک کنید و Create Bucket را ایجاد کنید.
  6. مرحله را برای سطل دوم تکرار کنید.
  7. روی خدمات> DynamoDB کلیک کنید

Amazon DynamoDB در این پروژه برای ذخیره تشخیص و باز کردن جزئیات مورد استفاده قرار می گیرد. جزئیاتی که ذخیره می شود پیوند به تصویر گرفته شده است ، نام تصویر شناخته شده یا در صورت عدم شناسایی نام به عنوان "ناشناخته" ذخیره می شود ، تاریخ و زمان تشخیص و وضعیت موفقیت آمیز بودن آن ، عدم مطابقت چهره ، بدون چهره شناسایی ، باز کردن قفل RFID یا باز شدن از داخل.

  1. روی افزودن جدول جدید کلیک کنید.
  2. هر نام جدول را وارد کنید.
  3. برای کلید اصلی ، "rid" را به عنوان کلید اصلی وارد کنید.
  4. روی ایجاد کلیک کنید.

مرحله 4: AWS را روی Raspberry Pi پیکربندی کنید

اولین قدم این است که اعتبار AWS خود را وارد کنید. برای انجام این کار در کنسول رزبری پای:

aws را پیکربندی کنید

سپس اعتبارنامه AWS IAM خود را که ایجاد کرده اید وارد کنید و مطمئن شوید که "us-west-2" را به عنوان منطقه خود (یا منطقه مربوطه که برای بازشناسی AWS تنظیم کرده اید) وارد کنید. قالب خروجی پیش فرض را خالی بگذارید.

مرحله 5: موارد را به Raspberry Pi متصل کنید

بنابراین اتصالات موارد به شرح زیر است.

  • RC Servo - 1 ، 11 ، Ground
  • سوئیچ مغناطیسی - 8 ، زمین
  • Buzzer - 32 ، Ground
  • دکمه بیرونی - 16 ، Ground
  • دکمه داخلی - 18 ، زمین
  • پین SDA در RFID Reader - 24
  • پین SCK روی RFID Reader - 23
  • پین MOSI در RFID Reader - 19
  • پین MISO در RFID Reader - 21
  • پین GND در RFID Reader - Ground
  • پین RST در RFID Reader - 22
  • پین 3.3 ولت روی RFID Reader - 17

لطفاً به نزدیکترین زمین متصل شوید.

مرحله 6: کدها

می توانید تمام کد لازم را در مخزن Git من پیدا کنید.

برای مراحل نحوه افزودن چهره و استفاده از Index Faces.py لطفاً این ویدیو را بررسی کنید.

مرحله 7: ساخت نمونه اولیه

ساخت نمونه اولیه
ساخت نمونه اولیه
ساخت نمونه اولیه
ساخت نمونه اولیه

همانطور که در طول ساختن خود هیچ عکسی نگرفتم ، فقط تصویر نمونه اولیه خود را می گذارم.

نمونه اولیه برای به تصویر کشیدن یک در ساخته شده است. منظره از نمای خانه نمای بیرونی خانه را نشان می دهد. دوربین Pi در ارتفاع متوسط خط چشم انسان نصب شده است تا اطمینان حاصل شود که تصویر گرفته شده دارای چهره برای تشخیص است. دکمه زنگ در که دوربین Pi را برای گرفتن تصویر فعال می کند در زیر دوربین Pi قرار دارد. RFID Reader نیز بر روی درب قرار می گیرد تا کاربر درب را باز کند تا در صورت عدم تشخیص ، در را با استفاده از برچسب RFID باز کند.

دکمه قرمز دکمه داخلی است که برای باز کردن قفل درب از داخل خانه استفاده می شود. رزبری پای در داخل خانه قرار داده شده است تا افراد بیرون نتوانند آن را دستکاری کنند. RC Servo در سمت راست درب به عنوان قفل درب قرار می گیرد. زنگ در داخل خانه قرار داده شده است تا اطمینان حاصل شود که صدای زنگ از افراد داخل خانه به هنگام زنگ شنیده می شود. سوئیچ مغناطیسی بین در و چهارچوب قرار گرفته است.

مرحله 8: آزمایش نمونه اولیه

آزمایش نمونه اولیه
آزمایش نمونه اولیه

کد را روی ترمینال اجرا کنید

sudo python3 filename.py

فقط دکمه زرد را در بیرون خانه فشار دهید و این عکس گرفته شده است.

DynamoDB آمازون خود را بررسی کنید تا جدول به روز شده و سطل S3 برای مشاهده ذخیره شدن تصویر ضبط شده بررسی کنید.

مرحله 9: بستن

اگر تصمیم دارید خودتان این پروژه را بسازید ، در نظرات به من اطلاع دهید (:

ممنون که خواندید.

توصیه شده: