فهرست مطالب:
- مرحله 1: موارد مورد نیاز
- مرحله 2: کد پایتون با مجموعه داده های پیش بینی شکل چشم (نسخه رایانه شخصی)
- مرحله 3: نسخه Raspberry Pi
![سیستم هشدار خواب آلودگی: 3 مرحله سیستم هشدار خواب آلودگی: 3 مرحله](https://i.howwhatproduce.com/images/005/image-14195-j.webp)
تصویری: سیستم هشدار خواب آلودگی: 3 مرحله
![تصویری: سیستم هشدار خواب آلودگی: 3 مرحله تصویری: سیستم هشدار خواب آلودگی: 3 مرحله](https://i.ytimg.com/vi/A1JNJrpTx1o/hqdefault.jpg)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
![سیستم هشدار خواب آلودگی سیستم هشدار خواب آلودگی](https://i.howwhatproduce.com/images/005/image-14195-1-j.webp)
سالانه افراد زیادی بر اثر تصادفات جاده ای مرگبار در سراسر جهان جان خود را از دست می دهند و خواب آلودگی یکی از عوامل اصلی تصادفات جاده ای و مرگ و میر است. خستگی و خواب کم هنگام کنترل رانندگی اغلب علت اصلی تصادفات جدی است. با این حال ، علائم اولیه خستگی را می توان قبل از بروز یک موقعیت بحرانی تشخیص داد و بنابراین ، تشخیص خستگی راننده و نشان دادن آن موضوع تحقیق مداوم است. اکثر روشهای سنتی برای تشخیص خواب آلودگی بر جنبه های رفتاری استوار است در حالی که برخی مزاحم هستند و ممکن است حواس رانندگان را پرت کنند ، در حالی که برخی دیگر به سنسورهای گران قیمت نیاز دارند. بنابراین ، در این مقاله ، یک سیستم تشخیص خواب آلودگی سبک وزن و زمان واقعی راننده توسعه یافته و بر روی برنامه Android اجرا شده است. این سیستم فیلم ها را ضبط می کند و با استفاده از تکنیک های پردازش تصویر ، چهره راننده را در هر فریم تشخیص می دهد. این سیستم قادر است نقاط برجسته صورت را تشخیص دهد ، نسبت ابعاد چشم (EAR) و نسبت بستن چشم (ECR) را برای تشخیص خواب آلودگی راننده بر اساس آستانه تطبیقی محاسبه می کند. از الگوریتم های یادگیری ماشین برای آزمایش اثربخشی روش پیشنهادی استفاده شده است. نتایج تجربی نشان می دهد که مدل پیشنهادی قادر است با استفاده از طبقه بندی کننده جنگل تصادفی به دقت 84 درصد برسد.
مرحله 1: موارد مورد نیاز
1. PI رزبری
2. WEBCAM (C270 HD WEB CAM برای نتایج بهتر)
نسخه رایانه ممکن است نیاز به تغییراتی در کد داشته باشد
مرحله 2: کد پایتون با مجموعه داده های پیش بینی شکل چشم (نسخه رایانه شخصی)
برای تشخیص چشمها به طور مtثر در یک ویدیو زمان واقعی ، می توانیم از این فایل.dat زیر استفاده کنیم.
drive.google.com/open؟id=1UiSHe72L4TeN14VK…
فایل.dat را از لینک بالا بارگیری کرده و کد پایتون زیر را اجرا کنید
کد پایتون
از scipy.spatial import distancefrom imutils import face_utils import imutils import dlib import cv2
def eye_aspect_ratio (چشم):
A = فاصله. اقلیدسی (چشم [1] ، چشم [5]) B = فاصله. اقلیدسی (چشم [2] ، چشم [4]) C = فاصله. اقلیدسی (چشم [0] ، چشم [3]) گوش = (A + B) / (2.0 * C) thresh ear thresh = 0.25 frame_check = 20 detect = dlib.get_frontal_face_detector () predict = dlib.shape_predictor (". / shape_predictor_68_face_landmarks.dat")# فایل Dat محور اصلی کد است
(lStart ، lEnd) = face_utils. FACIAL_LANDMARKS_68_IDXS ["چپ_چشم"]
(rStart، rEnd) = face_utils. FACIAL_LANDMARKS_68_IDXS ["right_eye"] cap = cv2. VideoCapture (0) flag = 0 while True: ret، frame = cap.read () frame = imutils.resize (قاب ، عرض = 450) خاکستری = cv2.cvtColor (قاب ، cv2. COLOR_BGR2GRAY) موضوعات = تشخیص (خاکستری ، 0) برای موضوع در موضوعات: شکل = پیش بینی (خاکستری ، موضوع) شکل = face_utils.shape_to_np (شکل)#تبدیل به NumPy Array leftEye = shape [lStart: lEnd] rightEye = shape [rStart: rEnd] leftEAR = eye_aspect_ratio (leftEye) rightEAR = eye_aspect_ratio (rightEye) ear = (leftEAR + rightEAR) / 2.0 leftEyeHull = cv2.convexHull (leftEye) rightEyeHull = cv2.convexHull drawContours (قاب ، [leftEyeHull] ، -1 ، (0 ، 255 ، 0) ، 1) cv2.drawContours (قاب ، [rightEyeHull] ، -1 ، (0 ، 255 ، 0) ، 1) اگر گوش = frame_check: cv2.putText (قاب ، "**************** ALERT! ****************" ، (10 ، 30) ، cv2. FONT_HERSHEY_SIMPLEX ، 0.7 ، (0 ، 0 ، 255) ، 2) cv2.putText (قاب ، "**************** هشدار! *********** ***** "، (10 ، 325) ، cv2. FONT_HERSHEY_SIMPLEX ، 0.7 ، (0 ، 0 ، 255) ، 2) #چاپ (" Dro wsy ") else: flag = 0 cv2.imshow (" Frame "، frame) key = cv2.waitKey (1) & 0xFF if key == ord (" q "): break cv2.destroyAllWindows () cap.stop ()
مرحله 3: نسخه Raspberry Pi
![نسخه رزبری پای نسخه رزبری پای](https://i.howwhatproduce.com/images/005/image-14195-2-j.webp)
![نسخه رزبری پای نسخه رزبری پای](https://i.howwhatproduce.com/images/005/image-14195-3-j.webp)
وقتی افراد چشمان خود را می بندند ، تمشک پی به شما هشدار می دهد
زنگ را به پین 23 وصل کنید (تصویر را ببینید)
از فاصله واردات scipy.spatial
RPi. GPIO را به عنوان GPIO وارد کنید
از زمان وارد کردن خواب
GPIO.setwarnings (False)
GPIO.setmode (GPIO. BCM)
از imutils face_utils را وارد کنید
import imutils import dlib import cv2
زنگ = 23
GPIO.setup (زنگ ، GPIO. OUT)
def eye_aspect_ratio (چشم):
A = فاصله. اقلیدسی (چشم [1] ، چشم [5]) B = فاصله. اقلیدسی (چشم [2] ، چشم [4]) C = فاصله. اقلیدسی (چشم [0] ، چشم [3]) گوش = (A + B) / (2.0 * C) thresh ear thresh = 0.25 frame_check = 20 detect = dlib.get_frontal_face_detector () predict = dlib.shape_predictor (". / shape_predictor_68_face_landmarks.dat")# فایل Dat محور اصلی کد است
(lStart ، lEnd) = face_utils. FACIAL_LANDMARKS_68_IDXS ["چپ_چشم"]
(rStart، rEnd) = face_utils. FACIAL_LANDMARKS_68_IDXS ["right_eye"] cap = cv2. VideoCapture (0) flag = 0 while True: ret، frame = cap.read () frame = imutils.resize (قاب ، عرض = 450) خاکستری = cv2.cvtColor (قاب ، cv2. COLOR_BGR2GRAY) موضوعات = تشخیص (خاکستری ، 0) برای موضوع در موضوعات: شکل = پیش بینی (خاکستری ، موضوع) شکل = face_utils.shape_to_np (شکل)#تبدیل به NumPy Array leftEye = shape [lStart: lEnd] rightEye = shape [rStart: rEnd] leftEAR = eye_aspect_ratio (leftEye) rightEAR = eye_aspect_ratio (rightEye) ear = (leftEAR + rightEAR) / 2.0 leftEyeHull = cv2.convexHull (leftEye) rightEyeHull = cv2.convexHull drawContours (قاب ، [leftEyeHull] ، -1 ، (0 ، 255 ، 0) ، 1) cv2.drawContours (قاب ، [rightEyeHull] ، -1 ، (0 ، 255 ، 0) ، 1) اگر گوش = frame_check: cv2.putText (قاب ، "**************** ALERT! ****************" ، (10 ، 30) ، cv2. FONT_HERSHEY_SIMPLEX ، 0.7 ، (0 ، 0 ، 255) ، 2) cv2.putText (قاب ، "**************** هشدار! *********** ***** "، (10 ، 325) ، cv2. FONT_HERSHEY_SIMPLEX ، 0.7 ، (0 ، 0 ، 255) ، 2) #چاپ (" Dro عاقل ")
GPIO.output (زنگ ، GPIO. HIGH)
else: flag = 0
GPIO.output (زنگ ، GPIO. LOW)
cv2.imshow ("Frame"، frame) key = cv2.waitKey (1) & 0xFF if key == ord ("q"): break cv2.destroyAllWindows () cap.stop ()
توصیه شده:
زنگ هشدار برای اتاق خواب با نور و صدا!: 6 مرحله
![زنگ هشدار برای اتاق خواب با نور و صدا!: 6 مرحله زنگ هشدار برای اتاق خواب با نور و صدا!: 6 مرحله](https://i.howwhatproduce.com/images/002/image-4934-14-j.webp)
زنگ هشدار برای اتاق خواب با چراغ و صدا!: سلام ، امروز من به شما نشان خواهم داد که چگونه می توانید با Arduino UNO زنگ خطر را برای درب اتاق خواب خود ایجاد کنید
سیستم نظارت بر کیفیت هوا برای آلودگی ذرات معلق: 4 مرحله
![سیستم نظارت بر کیفیت هوا برای آلودگی ذرات معلق: 4 مرحله سیستم نظارت بر کیفیت هوا برای آلودگی ذرات معلق: 4 مرحله](https://i.howwhatproduce.com/images/010/image-29646-j.webp)
سیستم نظارت بر کیفیت هوا برای آلودگی ذرات معلق: مقدمه: 1 در این پروژه نحوه ساخت آشکارساز ذرات با نمایش داده ها ، پشتیبان گیری داده ها بر روی کارت SD و IOT را نشان می دهم. از نظر بصری یک صفحه نمایش حلقه ای نئوپیکسلی کیفیت هوا را نشان می دهد. 2 کیفیت هوا یک نگرانی فزاینده مهم است
موسیقی هوشمند در اتاق خواب و حمام با تمشک پای - ادغام Multiroom ، زنگ هشدار ، کنترل دکمه و اتوماسیون خانگی: 7 مرحله
![موسیقی هوشمند در اتاق خواب و حمام با تمشک پای - ادغام Multiroom ، زنگ هشدار ، کنترل دکمه و اتوماسیون خانگی: 7 مرحله موسیقی هوشمند در اتاق خواب و حمام با تمشک پای - ادغام Multiroom ، زنگ هشدار ، کنترل دکمه و اتوماسیون خانگی: 7 مرحله](https://i.howwhatproduce.com/images/001/image-2917-63-j.webp)
موسیقی هوشمند در اتاق خواب و حمام با Raspberry Pi - ادغام Multiroom ، Alarm ، Button Control و Automation Home: امروز ما می خواهیم دو مثال در مورد نحوه استفاده از Raspberry Pi با نرم افزار Max2Play ما برای اتوماسیون خانه به شما ارائه دهیم: در حمام و اتاق خواب به هر دو پروژه از این نظر شبیه هستند که موسیقی با وفاداری بالا از منابع مختلف می تواند از طریق
هشدار خشک کن ماشین لباسشویی آردوینو - هشدار به تلفن با بلینک: 5 مرحله (همراه با تصاویر)
![هشدار خشک کن ماشین لباسشویی آردوینو - هشدار به تلفن با بلینک: 5 مرحله (همراه با تصاویر) هشدار خشک کن ماشین لباسشویی آردوینو - هشدار به تلفن با بلینک: 5 مرحله (همراه با تصاویر)](https://i.howwhatproduce.com/images/002/image-5862-69-j.webp)
هشدار خشک کن ماشین لباسشویی آردوینو - هشدار به تلفن با بلینک: ماشین لباسشویی ما در گاراژ است و نمی توان صدای بوق را شنید که نشان می دهد شستشو کامل است. من می خواستم راهی پیدا کنم که در هر کجا که در خانه هستیم ، وقتی چرخه به پایان رسید ، مطلع شوم. من مشغول کار با آردوینو ، ESP8266 WiFi هستم
چراغ خواب شب خواب: 6 مرحله (همراه با تصاویر)
![چراغ خواب شب خواب: 6 مرحله (همراه با تصاویر) چراغ خواب شب خواب: 6 مرحله (همراه با تصاویر)](https://i.howwhatproduce.com/images/001/image-589-74-j.webp)
چراغ های شب تخت خواب فانتزی: این سیستم نور تختخواب آینده است! وقتی در نیمه شب از رختخواب بیرون می آیید روشن می شوند و وقتی به ماشین رویایی راحت خود می روید خاموش می شوند. بنابراین دیگر از تصادفات شبانه و شکستن انگشتان پا خودداری کنید! این را می توان بسیار آسان خرید