- Wprowadzenie do ESP32-CAM
- Wymagane składniki
- Schemat obwodu
- Zainstaluj płytkę ESP32 na Arduino IDE
- Kod serwera internetowego kamery ESP32
Istnieje wiele systemów identyfikacji ludzi, które wykorzystują podpisy, odciski palców, głos, geometrię dłoni, rozpoznawanie twarzy itp. Do identyfikacji osób, ale żaden z nich nie może wykryć i rozpoznać osób w miejscach publicznych, takich jak lotniska, sklepy detaliczne i stacje kolejowe, z wyjątkiem System rozpoznawania twarzy.
Systemy rozpoznawania twarzy mogą być wykorzystywane nie tylko do celów bezpieczeństwa do rozpoznawania osób w miejscach publicznych, ale mogą być również wykorzystywane do celów obecności w biurach i szkołach.
W ramach tego projektu zamierzamy zbudować System Rozpoznawania Twarzy wykorzystujący ESP32-CAM, który będzie działał również jako system ESP32-CAM Security rozpoznając twarze osób niepowołanych. ESP32-CAM to bardzo mały moduł kamery z układem ESP32-S. Korzystając z modułu ESP32-CAM możemy zbudować system rozpoznawania twarzy bez stosowania skomplikowanego programowania i żadnych dodatkowych komponentów. Rozpoznawanie twarzy można również wykonać za pomocą Raspberry Pi i kamery Pi przy użyciu OpenCV.
Wprowadzenie do ESP32-CAM
Moduł AI-Thinker ESP32-CAM jest wyposażony w układ ESP32-S, bardzo małą kamerę OV2640 i gniazdo na kartę micro SD. Gniazdo karty Micro SD może służyć do przechowywania zdjęć wykonanych z aparatu lub do przechowywania plików. Ten moduł ESP32-CAM może być szeroko stosowany w różnych aplikacjach IoT. Może być używany jako system wykrywania twarzy w biurach, szkołach i innych obszarach prywatnych, a także może być używany jako bezprzewodowy monitoring, bezprzewodowa identyfikacja QR i wiele innych aplikacji IoT.
Moduł ESP32-CAM można programować za pomocą ESP-IDF lub Arduino IDE. Moduł ESP32-CAM posiada również kilka pinów GPIO do podłączenia zewnętrznego sprzętu. ESP32-CAM nie posiada złącza USB, więc do zaprogramowania modułu potrzebna jest płytka FTDI.
Funkcje:
- Najmniejszy moduł SoC 802.11b / g / n Wi-Fi BT
- 32-bitowy procesor o małej mocy, może również obsługiwać procesor aplikacyjny
- Taktowanie do 160 MHz, sumaryczna moc obliczeniowa do 600 DMIPS
- Wbudowana pamięć SRAM 520 KB, zewnętrzna pamięć 4MPSRAM
- Obsługuje UART / SPI / I2C / PWM / ADC / DAC
- Obsługa kamer OV2640 i OV7670, wbudowana lampa błyskowa
- Wsparcie przesyłania obrazu przez Wi-Fi
- Obsługa karty TF
- Obsługuje wiele trybów uśpienia
- Wbudowany Lwip i FreeRTOS
- Obsługuje tryb pracy STA / AP / STA + AP
- Obsługa technologii Smart Config / AirKiss
- Obsługa lokalnych i zdalnych aktualizacji oprogramowania układowego portu szeregowego (FOTA)
Specyfikacje:
- SPI Flash: Domyślnie 32Mbit
- RAM: 520KB SRAM + 4M PSRAM
- Obsługa karty TF: maks. 4G
- Interfejs wsparcia: UART, SPI, I2C, PWM
- Format wyjściowy obrazu: JPEG, BMP, GRAYSCALE
- Port IO: 9
- Zakres zasilania: 5 V.
Wymagane składniki
- ESP32-CAM
- Programator FTDI
Schemat obwodu
Aby zbudować kamerę bezpieczeństwa ESP32 CAM, potrzebujemy tylko modułu kamery ESP32 i programatora FTDI do jej zaprogramowania.
ESP32-CAM nie ma złącza USB, więc do przesłania kodu do ESP32-CAM potrzebny jest programator FTDI, jak pokazano na powyższym rysunku. Pin Vcc i GND ESP32 jest połączony z pinami Vcc i GND płytki FTDI. Tx of i Rx z ESP32 jest połączony z Rx i Tx na płycie FTDI.
Uwaga: przed wgraniem kodu podłącz IO0 do masy. IO0 określa, czy ESP32 jest w trybie migania, czy nie. Kiedy GPIO 0 jest podłączony do GND, ESP32 jest w trybie migania.
ESP32-CAM |
Płyta FTDI |
3,3 V. |
VCC |
GND |
GND |
UOR |
TX |
UOT |
RX |
Po zaprogramowaniu ESP32 wyjąłem płytkę FTDI i podłączyłem moduł do zasilania 3,3V za pomocą regulatora napięcia 7805. Oto jak wygląda konfiguracja przesyłania strumieniowego wideo z kamery ESP32:
Zainstaluj płytkę ESP32 na Arduino IDE
Tutaj ESP32-CAM jest programowany za pomocą Arduino IDE. W tym celu musimy zainstalować dodatek ESP32 na Arduino IDE.
Aby zainstalować kartę ESP32 w swoim Arduino IDE, przejdź do Plik> Preferencje
Teraz skopiuj poniższy link i wklej go w polu „ Dodatkowe adresy URL menedżera tablicy ”, jak pokazano na poniższym rysunku. Następnie kliknij przycisk „OK”:
https://dl.espressif.com/dl/package_esp32_index.json
Teraz przejdź do Narzędzia> Tablica> Menedżer tablic
W programie Board Manager wyszukaj ESP32 i zainstaluj „ESP32 firmy Espressif Systems”.
Kod serwera internetowego kamery ESP32
Mamy już przykładowy kod z przesyłania strumieniowego wideo z kamery ESP32 i rozpoznawania twarzy. Otwórz przykład ESP32, używając opcji Plik> Przykłady> ESP32> Kamera i otwórz przykład CameraWebServer.
Przed przesłaniem kodu musisz wprowadzić swoją nazwę Wi-Fi i hasło.
const char * ssid = "Nazwa Wi-Fi"; const char * password = "Hasło";
Następnie zdefiniuj moduł kamery ESP. W kodzie zdefiniowali 5 modułów kamer, więc odkomentuj „CAMERA_MODEL_AI_THINKER” i skomentuj resztę modułów.
Aby przesłać kod, podłącz płytkę FDTI do laptopa i wybierz „ ESP32 Wrover Module ” jako swoją płytkę. Zmień także inne ustawienia zgodnie z tym obrazkiem:
Przed wgraniem kodu naciśnij przycisk resetowania ESP32, a następnie kliknij przycisk przesyłania.
Uwaga: Jeśli podczas przesyłania kodu pojawiają się błędy, sprawdź, czy IO0 jest podłączone do GND i czy wybrałeś właściwe ustawienia w menu Narzędzia.
Po wgraniu kodu odłącz piny IO0 i GND. Następnie otwórz monitor szeregowy i zmień prędkość transmisji na 115200. Po wciśnięciu przycisku resetowania ESP32 wydrukuje on adres IP ESP i numer portu na monitorze szeregowym, jak pokazano poniżej.
Teraz, aby uzyskać dostęp do przesyłania strumieniowego z kamery, przejdź do przeglądarki i wprowadź adres IP ESP. Zabierze Cię do strony przesyłania strumieniowego. Aby rozpocząć strumieniowe przesyłanie wideo z kamery ESP32, kliknij przycisk „Rozpocznij transmisję” u dołu strony
Możesz zmienić jakość przesyłania strumieniowego, zmieniając „ Rozdzielczość ” na stronie przesyłania strumieniowego. Możesz także kliknąć zdjęcia, klikając przycisk „ Get Still” , ale ten kod nie umożliwia zapisania zdjęć.
Po przetestowaniu przesyłania strumieniowego wideo przetestujemy teraz funkcje wykrywania i rozpoznawania twarzy kamery ESP32. W tym celu włącz funkcje rozpoznawania i wykrywania twarzy w ustawieniach:
Aby rozpocząć rozpoznawanie twarzy, musisz najpierw zarejestrować twarz. Możesz zarejestrować nową twarz, klikając opcję „ Zarejestruj twarz”. Uratowanie twarzy wymaga kilku prób. Po zapisaniu twarzy wykrywa ją jako obiekt 0, a teraz może być używany jako system bezpieczeństwa poprzez rozpoznawanie twarzy.
W ten sposób można łatwo skonfigurować moduł kamery ESP do przesyłania strumieniowego wideo i rozpoznawania twarzy. Sprawdź poniżej mały materiał wideo nagrany kamerą ESP32.
Pełny kod znajduje się poniżej i można go również pobrać stąd.