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,你能够在这里抓住它。
若是您喜欢这个项目,您可能也喜欢其余有关相机的项目: