https://randomnerdtutorials.com/esp32-cam-video-streaming-face-recognition-arduino-ide/node
下圖顯示了ESP32-CAM引腳排列(AI-Thinker模塊)。linux
有三個GND引腳和兩個引腳用於電源:3.3V或5V。git
GPIO 1和GPIO 3是串行引腳。您須要這些引腳才能將代碼上傳到您的電路板。此外,GPIO 0也起着重要做用,由於它肯定ESP32是否處於閃爍模式。當GPIO 0鏈接到GND時,ESP32處於閃爍模式。github
如下引腳內部鏈接到microSD卡讀卡器:web
按照如下步驟使用您能夠在本地網絡上訪問的ESP32-CAM構建視頻流式Web服務器。 編程
在本例中,咱們使用Arduino IDE對ESP32-CAM板進行編程。所以,您須要安裝Arduino IDE以及ESP32插件。若是您尚未安裝ESP32插件,請按照下一個教程之一進行操做:windows
在Arduino IDE中,轉到文件 > 示例 > ESP32 > 相機,而後打開CameraWebServer示例。瀏覽器
應加載如下代碼。服務器
若是在Arduino IDE中找不到代碼,能夠從咱們的GitHub存儲庫下載。下載後,解壓縮該文件夾,而後打開CameraWebServer.ino文件。網絡
在上載代碼以前,您須要在如下變量中插入網絡憑據:
const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD";
而後,確保選擇正確的相機模塊。在這種狀況下,咱們使用AI-THINKER模型。
因此,評論全部其餘模型並取消註釋:
#define CAMERA_MODEL_AI_THINKER
如今,代碼已準備好上傳到您的ESP32
使用FTDI編程器將ESP32-CAM板鏈接到計算機。按照下一個原理圖:
重要提示: GPIO 0須要鏈接到GND,以便您可以上傳代碼。
要上傳代碼,請執行如下步驟:
重要提示:若是沒法上傳代碼,請仔細檢查GPIO 0是否已鏈接到GND,並在「 工具」菜單中選擇了正確的設置。您還應該按下板載重置按鈕以在閃爍模式下從新啓動ESP32。
上傳代碼後,斷開GPIO 0與GND的鏈接。
以波特率115200打開串行監視器。按ESP32-CAM板載復位按鈕。
ESP32 IP地址應打印在串行監視器中。
如今,您能夠在本地網絡上訪問您的相機流媒體服務器。打開瀏覽器並鍵入ESP32-CAM IP地址。按Start Streaming按鈕開始視頻流。
您還能夠經過單擊「 獲取靜止」按鈕來拍攝照片。不幸的是,此示例不保存照片,但您能夠修改它以使用板載microSD卡存儲拍攝的照片。
您還可使用多種相機設置來調整圖像設置。
最後,您能夠進行人臉識別和檢測。
首先,您須要註冊一張新面孔。它將屢次嘗試挽救面部。在註冊新用戶以後,它應該稍後檢測到面部(主題0)。
就是這樣。如今,您可使用圖庫中的示例啓動並運行帶有面部檢測和識別功能的視頻流式Web服務器。
若是您遇到如下任何錯誤,請閱讀咱們的 ESP32-CAM故障排除指南:修復了最多見的問題
ESP32-CAM提供了一種廉價的方式來構建更先進的家庭自動化項目,包括視頻,拍照和人臉識別。
在本教程中,咱們測試了CameraWebServer示例以測試攝像頭功能。如今,咱們的想法是修改示例或編寫一個全新的代碼來構建其餘項目。例如,在檢測到動做時拍照並將其保存到microSD卡,在家庭自動化平臺(如Node-RED或Home Assistant)中集成視頻流等等。
咱們但願您發現本教程頗有用。若是你尚未ESP32-CAM,你能夠在這裏抓住它。
若是您喜歡這個項目,您可能也喜歡其餘有關相機的項目: