Სარჩევი:

Face Aware OSD ფოტო ჩარჩო: 11 ნაბიჯი (სურათებით)
Face Aware OSD ფოტო ჩარჩო: 11 ნაბიჯი (სურათებით)

ვიდეო: Face Aware OSD ფოტო ჩარჩო: 11 ნაბიჯი (სურათებით)

ვიდეო: Face Aware OSD ფოტო ჩარჩო: 11 ნაბიჯი (სურათებით)
ვიდეო: The Mindful Millionaire Timeless Lessons on Wealth Greed and Happiness in the Psychology of Money 2024, ნოემბერი
Anonim
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო
Face Aware OSD ფოტო ჩარჩო

ეს ინსტრუქცია გვიჩვენებს, თუ როგორ უნდა გავაკეთოთ ფოტო ჩარჩო სახეზე გაცნობიერებული ეკრანზე (OSD).

OSD– ს შეუძლია აჩვენოს დრო, ამინდი ან სხვა თქვენთვის სასურველი ინტერნეტ ინფორმაცია.

ნაბიჯი 1: რატომ OSD ფოტო ჩარჩო?

რატომ OSD ფოტო ჩარჩო?
რატომ OSD ფოტო ჩარჩო?
რატომ OSD ფოტო ჩარჩო?
რატომ OSD ფოტო ჩარჩო?

Instructables– ში მაქვს ორი ფოტო საათის პროექტი:

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

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

ორივემ ყოველ წუთში ამოიღეთ ფოტო ლამაზმანებით და დროის დაფა ინტერნეტიდან და აჩვენეთ LCD– ზე.

ლამაზმანების ჩვენება კარგია, მაგრამ ისინი ყველა ჩემთვის უცხოა. რას იტყვით პირადი საყვარელი ფოტოების გამოყენებაზე და მასზე მიმდინარე დროის და დამატებითი ინფორმაციის დამატებაზე?

ეს პროექტი იკვლევს, თუ როგორ უნდა მოხდეს იგი.

ნაბიჯი 2: რატომ გაცნობიერებული სახე?

რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?
რატომ გაცნობიერებული სახე?

მოდით შევამოწმოთ როგორ დავამატოთ მყისიერი ინფორმაცია OSD ფოტოზე ჯერ:

  1. შემთხვევით შეარჩიეთ ფოტო კონკრეტული საქაღალდიდან
  2. მიიღეთ დრო
  3. მიიღეთ მყისიერი ინფორმაცია ინტერნეტიდან
  4. დახაზეთ დრო და მყისიერი ინფორმაცია ფოტოზე

ნაბიჯი 1-3 პირდაპირ წინ არის; ნაბიჯი 4 ასევე გამოიყურება მარტივი, მაგრამ იმის განსაზღვრა, თუ სად უნდა დახატოთ ტექსტი არც ისე ადვილია.

თუ ტექსტის ზომა ძალიან მცირეა, ძნელია წაკითხვა გონივრულ მანძილზე; თუ ტექსტის ზომა ძალიან დიდია, ის სავარაუდოდ მოიცავს ფოტო ობიექტებს. განსაკუთრებით თუ ეს პორტრეტული ფოტოა, სახეებით დაფარული ტექსტი არ არის სასურველი.

ვინაიდან თითოეული ფოტოს სახეების პოზიცია არ არის ერთი და იგივე, OSD– ით დაფარული სახეების თავიდან ასაცილებლად ჩვენ გვჭირდება სახის გამოვლენის პროცესი. შემდეგ ჩვენ შეგვიძლია ვიპოვოთ არა სახის ფართობი ტექსტის დახატვისთვის.

ნაბიჯი 3: დიზაინი 2 დონის

2 დონის დიზაინი
2 დონის დიზაინი

სახის გამოვლენის პროცესი მოითხოვს გარკვეულ დამუშავებას, პირიქით, ფოტო ჩარჩო შეიძლება იყოს ძალიან მსუბუქი. ასე რომ, მე გავყავი იგი ორ იარუსზე:

სერვერი

სახეზე გათვლილი ფოტო ძრავა არის Node.js აპლიკაციის სერვერი. თითოეული HTTP მოთხოვნისათვის ის იქნება:

  1. აირჩიეთ ფოტო საქაღალდედან შემთხვევით
  2. Სახის ამოცნობა
  3. არ განისაზღვროს სახის ან სულ მცირე სახის არე
  4. იმავდროულად, ამოიღეთ ამინდი ან სხვა სასარგებლო მყისიერი ინფორმაცია ინტერნეტიდან ყოველ კონკრეტულ პერიოდში
  5. დახაზეთ დრო და მყისიერი ინფორმაცია ფოტოზე
  6. დააბრუნეთ ფოტო OSD– ით JPEG ფორმატში, როგორც HTTP პასუხი

კლიენტი

კლიენტი შეიძლება იყოს ვებ ბრაუზერი, აპლეტი ან IoT მოწყობილობა.

Მაგალითად. ESP32 dev boasrd 2-4 დიუმიანი LCD ძალიან შესაფერისია დესკტოპზე დასაყენებლად, როგორც პატარა ფოტო ჩარჩო.

ნაბიჯი 4: დააყენეთ ფოტო სერვერის ვარიანტი 1: დოკერის სურათი

ფოტო სერვერის დაყენება ვარიანტი 1: დოკერის სურათი
ფოტო სერვერის დაყენება ვარიანტი 1: დოკერის სურათი
დააყენეთ ფოტო სერვერის ვარიანტი 1: დოკერის სურათი
დააყენეთ ფოტო სერვერის ვარიანტი 1: დოკერის სურათი

მოხერხებულობისთვის, მე წინასწარ შევქმენი დოკერის სურათი სახისათვის ცნობილი ფოტო OSD Node.js პროგრამის სერვერისთვის.

თუ თქვენ ჯერ არ გაქვთ დაყენებული Docker, მიჰყევით Docker– ის დაწყების გზამკვლევს:

www.docker.com/get-started

შემდეგ გაუშვით შემდეგი ბრძანება: (შეცვალეთ/path/to/photo თქვენს ფოტო ბილიკზე)

docker run -p 8080: 8080 -v/path/to/photo:/app/photo moononournation/face-aware-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 -aware -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 -aware -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-aware-photo-osd/app.js: /app/app.js moononournation/face-aware-photo-osd: 1.0. 1

შეცვალეთ update.osd () ფუნქცია app.js– ში თქვენი საკუთარი OSD ინფორმაციის მორგებისთვის. განვითარების შემდეგ, უბრალოდ ამოიღეთ DEBUG = Y გარემო დოკერის ბრძანებიდან.

ნაბიჯი 5: დააყენეთ ფოტო სერვერის ვარიანტი 2: შექმენით წყაროდან

თუ თქვენ იცნობთ Node.js- ს, შეგიძლიათ ააწყოთ პროგრამის სერვერი წყაროდან.

მიიღეთ წყარო:

git კლონი

დააინსტალირეთ პაკეტები:

cd face-aware-photo-osd

npm ინსტალაცია

შექმენით ფოტო საქაღალდე და დააკოპირეთ თქვენი საკუთარი ფოტოები საქაღალდეში.

პროგრამის სერვერის გაშვება:

კვანძის აპლიკაცია. 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 გამგეობა და LCD.

აქ არის საჭირო აპარატურა:

ESP32 Dev დაფა

ნებისმიერი ESP32 dev დაფა უნდა იყოს კარგი, ამ დროს მე ვიყენებ დაფას სახელწოდებით MH-ET LIVE.

LCD ეკრანი

ნებისმიერი Arduino_GFX მხარდაჭერილი LCD, შეგიძლიათ ნახოთ ამჟამად მხარდაჭერილი ჩვენება GitHub readme– ში:

github.com/moononournation/Arduino_GFX

Jumper Wire

ზოგიერთი Jumper Wires, დამოკიდებულია dev დაფაზე და LCD ქინძისთავების განლაგებაზე. უმეტეს შემთხვევაში 6-9 მდედრობითი მდედრობითი მხტუნავი საკმარისია.

LCD სტენდი

ზოგიერთი მხარდაჭერა ეხმარება LCD პირდაპირ დგას, ამჯერად მე ვიყენებ ბარათის დამჭერის სტენდს.

ნაბიჯი 8: ESP32 + LCD ასამბლეა

ESP32 + LCD ასამბლეა
ESP32 + LCD ასამბლეა
ESP32 + LCD ასამბლეა
ESP32 + LCD ასამბლეა
ESP32 + LCD ასამბლეა
ESP32 + LCD ასამბლეა

სასურველია ESP32, რომელზეც განთავსებულია სათაური ზედა ნაწილში. თუ ქვედა ნაწილში არის სათაური, უბრალოდ დაფა თავდაყირა დააყენეთ;>

შეაერთეთ ESP32 და LCD ჯუმბერის მავთულხლართებით, შემდეგ კი მიამაგრეთ იგი სადგამზე.

აქ მოცემულია კავშირის მოკლე შინაარსი:

ESP32 -> LCD

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 პროგრამული უზრუნველყოფა

Arduino IDE

ჩამოტვირთეთ და დააინსტალირეთ Arduino IDE, თუ ეს ჯერ არ გააკეთეთ:

www.arduino.cc/en/main/software

ESP32 მხარდაჭერა

მიჰყევით ინსტალაციის ინსტრუქციას ESP32 მხარდაჭერის დასამატებლად, თუ ეს ჯერ არ გააკეთეთ:

github.com/espressif/arduino-esp32

Arduino_GFX ბიბლიოთეკა

ჩამოტვირთეთ Arduino_GFX უახლესი ბიბლიოთეკები: (დააჭირეთ ღილაკს "კლონირება ან ჩამოტვირთვა" -> "ჩამოტვირთეთ ZIP")

github.com/moononournation/Arduino_GFX

ბიბლიოთეკების იმპორტი Arduino IDE– ში. (Arduino IDE "ესკიზი" მენიუ -> "ბიბლიოთეკის ჩართვა" -> "დამატება. ZIP ბიბლიოთეკა" -> გადმოწერილი ZIP ფაილის არჩევა)

შედგენა და ატვირთვა

  1. გახსენით Arduino IDE
  2. გახსენით ESP32PhotoFrame ნიმუშის კოდი ("ფაილი" -> "მაგალითი" -> "GFX ბიბლიოთეკა არდუინოსთვის" -> "WiFiPhotoFrame")
  3. შეავსეთ თქვენი WiFi AP პარამეტრები SSID_NAME და SSID_PASSWORD
  4. შეცვალეთ თქვენი სერვერის მასპინძლის სახელი ან IP და პორტი HTTP_HOST და
  5. დააჭირეთ Arduino IDE ღილაკს "ატვირთვა"
  6. თუ თქვენთვის ორიენტაცია არასწორია, შეცვალეთ "ბრუნვის" მნიშვნელობა (0-3) ახალი კლასის კოდში

ნაბიჯი 10: ისიამოვნეთ ფოტოთი

ისიამოვნეთ ფოტოთი!
ისიამოვნეთ ფოტოთი!

დროა განათავსოთ IoT ფოტო ჩარჩო თქვენს სამუშაო მაგიდაზე და ისიამოვნეთ!

ნაბიჯი 11: რა არის შემდეგი?

  • დაამატეთ თქვენი მყისიერი ინფორმაცია
  • დაარეგულირეთ წყაროს ფოტოს ზომა სახის გამოვლენის უკეთესი სიზუსტისთვის
  • სერვერის ფოტო საქაღალდეში უახლესი ფოტოების ჩასმის ავტომატური ამოცანა
  • გადაიღეთ მეტი ფოტო;>

გირჩევთ: