Stream video và nhận diện khuôn mặt với ESP32-CAM và Arduino IDE

Bài viết này hướng dẫn cách livestream video từ ESP32-CAM, đồng thời sử dụng tính năng web server của ESP32 tạo ra một trang web để có thể quan sát video sử dụng ESP32-CAM và Arduino IDE.

Stream Video

Nếu đây là lần đầu tiên bạn lập trình ESP32 với Arduino, hãy theo dõi hướng dẫn cài đặt Arduino IDE, thư viện và nạp chương trình cho ESP32-CAM tại đây.

Chương trìnhCameraWebServer

Trong Arduino IDE, vào File –> Examples –> ESP32 –> Camera và chọn CameraWebServer để mở chương trình.

Tìm tới đoạn chương trình khai báo tên và mật khẩu WiFi để cập nhật tên và mật khẩu WiFi bạn đang sử dụng:

const char* ssid = "REPLACE_WITH_YOUR_SSID";
const char* password = "REPLACE_WITH_YOUR_PASSWORD";

Module chúng ta sử dụng trong bài viết này là AI-THINKER:

Do vậy, trong phần khai báo model camera ta dùng

// Select camera model
//#define CAMERA_MODEL_WROVER_KIT
//#define CAMERA_MODEL_ESP_EYE
//#define CAMERA_MODEL_M5STACK_PSRAM
//#define CAMERA_MODEL_M5STACK_WIDE	
#define CAMERA_MODEL_AI_THINKER

Nếu không có model nào tương ứng với camera bạn đang sử dụng, bạn cần thêm phần gán pin cho board của mình trong file camera_pin.h.

Biên dịch và nạp chương trình

Kết nối ESP32-CAM với mạch nạp và máy tính rồi nạp chương trình

Lấy địa chỉ IP

Sau khi nạp chương trình xong, ngắt kết nối GPIO 0 với GND để ESP32 hoạt động bình thường. Mở Serial Monitor và chọn tốc độ baud 115200 sau đó nhấn nút reset trên ESP32-CAM và quan sát thông báo được in ra trên Serial Monitor. Địa chỉ IP sẽ được in ra.

Truy cập trang web

Truy cập trang web hiển thị video stream từ ESP32-CAM bằng địa chỉ IP vừa tìm được ở trên, nhấn nút Start Streaming để bắt đầu stream.

Bạn có thể điều chỉnh các thông số ảnh bằng cách bấm vào nút Get Still trên màn hình. Ví dụ này không lưu lại hình ảnh được chụp từ camera vào thẻ nhớ, tuy nhiên bạn có thể thay đổi chương trình của ESP32-CAM để lưu lại các hình ảnh chụp được sau khi điều chỉnh thông số ảnh theo ý mình.

Nhận diện khuôn mặt

Để sử dụng tính năng nhận diện khuôn mặt, đầu tiên nhấn Enroll Face để camera ghi nhớ khuôn mặt cần nhận diện:

Sau khi lưu lại khuôn mặt cần nhận diện thành công, camera sẽ nhận diện được khuôn mặt đó ở những lần tiếp theo (subject 0):

Như vậy là bạn đã có thể stream video từ ESP32 lên web server và có thể truy cập trang web để quan sát video và sử dụng tính năng nhận diện khuôn mặt.

Nhận xét

Mới hơn Cũ hơn