جدول المحتويات:

إطار صور OSD مدرك للوجه: 11 خطوة (مع صور)
إطار صور OSD مدرك للوجه: 11 خطوة (مع صور)

فيديو: إطار صور OSD مدرك للوجه: 11 خطوة (مع صور)

فيديو: إطار صور OSD مدرك للوجه: 11 خطوة (مع صور)
فيديو: 4 Photo Frame Diy Ideas | Handmade Picture Frame Making At Home 2024, يوليو
Anonim
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame
Face Aware OSD Photo Frame

يوضح هذا Instructables كيفية إنشاء إطار الصورة مع إدراك الوجه على شاشة العرض (OSD).

يمكن أن تعرض OSD الوقت أو الطقس أو معلومات الإنترنت الأخرى التي تريدها.

الخطوة 1: لماذا OSD Photo Frame؟

لماذا OSD Photo Frame؟
لماذا OSD Photo Frame؟
لماذا OSD Photo Frame؟
لماذا OSD Photo Frame؟

لدي مشروعان على مدار الساعة للصور في Instructables من قبل:

www.instructables.com/id/ESP32-Photo-Clock…

www.instructables.com/id/Arduino-BiJin-ToK…

كلاهما يسترجع صورة مع الجمال ولوحة الوقت من الإنترنت كل دقيقة ويعرضان على شاشة LCD.

عرض الجمال أمر جيد ، لكنهم جميعًا غرباء عني. ماذا عن استخدام الصور الشخصية المفضلة وإضافة الوقت الحالي والمزيد من المعلومات الفورية عنها؟

هذا المشروع يستكشف كيفية صنعه.

الخطوة 2: لماذا يدرك الوجه؟

لماذا يدرك الوجه؟
لماذا يدرك الوجه؟
لماذا يدرك الوجه؟
لماذا يدرك الوجه؟
لماذا يدرك الوجه؟
لماذا يدرك الوجه؟
لماذا يدرك الوجه؟
لماذا يدرك الوجه؟

دعنا نتحقق من كيفية إضافة المعلومات الفورية على الشاشة إلى صورة أولاً:

  1. اختر صورة عشوائية من مجلد معين
  2. استرجاع الوقت
  3. استرجاع المعلومات الفورية من الإنترنت
  4. ارسم الوقت والمعلومات الفورية على الصورة

الخطوة 1-3 مباشرة للأمام ؛ تبدو الخطوة 4 بسيطة أيضًا ، لكن تحديد مكان رسم النص ليس بهذه السهولة.

إذا كان حجم النص صغيرًا جدًا ، فمن الصعب قراءته من مسافة معقولة ؛ إذا كان حجم النص كبيرًا جدًا ، فمن المرجح أنه يغطي كائنات الصورة. خاصة إذا كانت صورة شخصية ، فلا يفضل النص المغطى بالوجوه.

نظرًا لأن موضع الوجوه لكل صورة ليس هو نفسه ، لتجنب الوجوه المغطاة OSD ، نحتاج إلى عملية اكتشاف الوجه أولاً. ثم يمكننا العثور على منطقة عدم وجود وجه لرسم النص.

الخطوة 3: تصميم من مستويين

2-تصميم الطبقات
2-تصميم الطبقات

تتطلب عملية اكتشاف الوجه بعض قوة المعالجة ، وعلى النقيض من ذلك ، يمكن أن يكون إطار الصورة خفيف الوزن للغاية. لذلك قسمته إلى مستويين:

الخادم

محرك الصور المدرك للوجه هو خادم تطبيقات Node.js. لكل طلب HTTP ، سوف:

  1. حدد صورة من مجلد الصور بشكل عشوائي
  2. الكشف عن الوجه
  3. تحديد عدم وجود وجه أو أقل منطقة وجوه
  4. في غضون ذلك ، يمكنك استرداد الطقس أو أي معلومات فورية أخرى مفيدة من الإنترنت كل فترة معينة
  5. ارسم الوقت والمعلومات الفورية على الصورة
  6. قم بإعادة الصورة مع OSD بتنسيق JPEG كاستجابة

عميل

يمكن أن يكون العميل مستعرض ويب أو برنامجًا صغيرًا أو جهاز إنترنت الأشياء.

على سبيل المثال يعد جهاز ESP32 dev boasrd المزود بشاشة LCD مقاس 2-4 بوصات مناسبًا جدًا لوضعه على سطح المكتب كإطار صور صغير.

الخطوة 4: إعداد خيار خادم الصور 1: صورة Docker

إعداد خيار خادم الصور 1: صورة عامل الإرساء
إعداد خيار خادم الصور 1: صورة عامل الإرساء
إعداد خيار خادم الصور 1: صورة عامل الإرساء
إعداد خيار خادم الصور 1: صورة عامل الإرساء

للراحة ، لقد قمت مسبقًا بإنشاء صورة Docker لخادم تطبيقات OSD Node.js الذي يدرك الوجه.

في حال لم تكن قد قمت بإعداد Docker بعد ، يرجى اتباع دليل Docker Get Started:

www.docker.com/get-started

ثم قم بتشغيل الأمر التالي: (استبدل / path / to / photo بمسار الصورة الخاص بك)

docker run -p 8080: 8080 -v / path / to / photo: / app / photo moononournation / face -ركة-photo-osd: 1.0.1

اختبرها من خلال تصفح https:// localhost: 8080 /

قد تجد أن وقت العرض ليس في منطقتك الزمنية:

docker run -p 8080: 8080 -e TZ = Asia / Hong_Kong -v / path / to / photo: / app / photo moononournation / face -ركة-photo-osd: 1.0.1

إذا كنت تعيش في هونغ كونغ مثلي ، فيمكنك إضافة معلومات الطقس في هونغ كونغ:

docker run -p 8080: 8080 -e TZ = Asia / Hong_Kong -e OSD = HK_Weather -v / path / to / photo: / app / photo moononournation / face -ركة-photo-osd: 1.0.1

إذا كنت ترغب في تطوير معلومات OSD الخاصة بك:

mkdir -p ~ / git

cd ~ / git git clone https://github.com/moononournation/face-aware-photo-osd.git docker run -it -p 8080: 8080 -e TZ = Asia / Hong_Kong -e OSD = HK_Weather -e DEBUG = Y -v / path / to / photo: / app / photo -v ~ / git / face -areness-photo-osd / app.js: /app/app.js moononournation / face -ركة-photo-osd: 1.0.2 1

قم بتعديل وظيفة update_osd () في app.js لتخصيص معلومات OSD الخاصة بك. بعد التطوير ، قم ببساطة بإزالة بيئة DEBUG = Y من أمر عامل الإرساء.

الخطوة 5: إعداد خيار خادم الصور 2: الإنشاء من المصدر

إذا كنت معتادًا على Node.js ، فيمكنك إنشاء خادم التطبيق من المصدر.

احصل على المصدر:

استنساخ بوابة

تثبيت الحزم:

قرص مدرك للوجه بالصور osd

تثبيت npm

قم بإنشاء مجلد صور وانسخ الصور الخاصة بك إلى المجلد.

تشغيل خادم التطبيق:

العقدة app.js

الخطوة 6: خيار العميل 1: متصفح الويب

خيار العميل 1: مستعرض الويب
خيار العميل 1: مستعرض الويب

ببساطة متصفح إلى https:// localhost: 8080 /

يتم كتابة الصفحة تلقائيًا وتحميل صورة بحجم صفحة مناسبة كل دقيقة.

ملاحظة. إذا كنت تتصفح من جهاز آخر لا يقوم بتشغيل خادم التطبيق ، فتذكر تغيير المضيف المحلي إلى اسم مضيف خادم التطبيق أو عنوان IP.

الخطوة 7: خيار العميل 2: ESP32 + LCD

خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD
خيار العميل 2: ESP32 + LCD

يمكن أن يكون عميل إطار الصورة بسيطًا مثل لوحة ESP32 dev وشاشة LCD.

هنا الأجهزة المطلوبة:

مجلس تطوير ESP32

يجب أن تكون أي لوحة مطورة لـ ESP32 على ما يرام ، هذه المرة أستخدم لوحة تسمى MH-ET LIVE.

عرض شاشات الكريستال السائل

أي شاشة LCD مدعومة من Arduino_GFX ، قد تجد شاشة عرض مدعومة حاليًا على GitHub readme:

github.com/moononournation/Arduino_GFX

سلك الطائر

تعتمد بعض أسلاك التوصيل على لوحة التطوير وتخطيط دبابيس LCD. في معظم الحالات ، تكون أسلاك التوصيل من 6 إلى 9 أنثى كافية.

حامل LCD

بعض الدعم يساعد شاشة LCD في الوقوف بشكل مستقيم ، هذه المرة أستخدم حامل بطاقة.

الخطوة 8: تجميع ESP32 + LCD

مجموعة ESP32 + LCD
مجموعة ESP32 + LCD
مجموعة ESP32 + LCD
مجموعة ESP32 + LCD
مجموعة ESP32 + LCD
مجموعة ESP32 + LCD

يفضل ESP32 مع رأس الدبوس في الجانب العلوي. إذا كان رأس الدبوس في الجانب السفلي ، فما عليك سوى وضع اللوحة رأسًا على عقب ؛>

قم بتوصيل ESP32 و LCD بأسلاك توصيل ، ثم قم بتثبيته في الحامل.

فيما يلي ملخص نموذج الاتصال:

ESP32 -> شاشات الكريستال السائل

Vcc -> Vcc GND -> GND GPIO 5 -> CS GPIO 27 -> DC (إن وجد) GPIO 33 -> RST GPIO 18 -> SCK GPIO 19 -> MISO (اختياري) GPIO 22 -> LED (إن وجد) GPIO 23-> MOSI / SDA

الخطوة 9: برنامج ESP32 + LCD

برنامج ESP32 + LCD
برنامج ESP32 + LCD

اردوينو IDE

قم بتنزيل وتثبيت Arduino IDE إذا لم تقم بذلك بعد:

www.arduino.cc/en/main/software

دعم ESP32

اتبع تعليمات التثبيت لإضافة دعم ESP32 إذا لم تقم بذلك بعد:

github.com/espressif/arduino-esp32

مكتبة Arduino_GFX

تنزيل أحدث مكتبات Arduino_GFX: (اضغط على "Clone or Download" -> "Download ZIP")

github.com/moononournation/Arduino_GFX

مكتبات الاستيراد في Arduino IDE. (قائمة Arduino IDE "Sketch" -> "Include Library" -> "Add. ZIP Library" -> حدد ملف ZIP الذي تم تنزيله)

ترجمة وتحميل

  1. افتح Arduino IDE
  2. افتح رمز عينة ESP32PhotoFrame ("ملف" -> "مثال" -> "مكتبة GFX لـ Arduino" -> "WiFiPhotoFrame")
  3. املأ إعدادات WiFi AP في SSID_NAME و SSID_PASSWORD
  4. استبدل اسم مضيف الخادم أو IP والمنفذ في HTTP_HOST و
  5. اضغط على زر Arduino IDE "تحميل"
  6. إذا وجدت أن الاتجاه غير صحيح ، فقم بتغيير قيمة "الدوران" (0-3) في كود الفصل الجديد

الخطوة 10: استمتع بالصور

استمتع بالصور!
استمتع بالصور!

حان الوقت لوضع إطار صور إنترنت الأشياء على سطح المكتب والاستمتاع!

الخطوة 11: ماذا بعد؟

  • أضف معلوماتك الفورية
  • اضبط حجم صورة المصدر بدقة للحصول على دقة أفضل في اكتشاف الوجه
  • مهمة تلقائية لوضع أحدث الصور في مجلد صور الخادم
  • التقاط المزيد من الصور ؛>

موصى به: