如何使用DFRobot ESP32-S3 AI相机
扫描二维码
随时随地手机看文章
在本文中,我们将看到关于DFRobot ESP32-S3 AI相机模块
DFRobot ESP32-S3-AI- camera是一款基于强大的ESP32-S3芯片的高性能智能摄像头模块,专为高级AI、视频处理和语音交互应用而设计。它具有一个用于夜视的OV3660 300万广角红外摄像头,一个用于语音命令和音频输出的机载麦克风和扬声器,8MB PSRAM用于要求苛刻的AI模型和图像缓冲,并支持Wi-Fi和蓝牙5.0 (BLE)连接。该模块非常适合边缘AI应用,如图像识别(YOLO, edge Impulse, OpenCV),语音助手(甚至与ChatGPT集成),智能家居设备和先进的监控系统,在紧凑的外形中提供丰富的功能。
设备带有以下组件
ESP32-S3 AI Camera是一款基于高性能ESP32-S3芯片的尖端智能摄像头模块,旨在实现高效的视频处理、边缘AI和语音交互。它具有广角红外摄像头,板载麦克风和扬声器,非常适合电子窥视孔,婴儿监视器和车牌识别等应用。
人工智能助手
凭借强大的人工智能处理能力,它无缝集成到物联网生态系统中,通过Wi-Fi连接支持边缘图像识别和在线人工智能模型交互,使其成为物联网应用的重要组成部分,从安全监控到人工智能助手。
ESP32-S3 AI相机的主要特性
•处理器:Xtensa®双核32位LX7微处理器,240 MHz
•内置OV3660 300万像素摄像头。
•16mb闪存,8MB PSRAM平滑图像捕获
•机载麦克风和工具包配有扬声器
•USB: USB 2.0 OTG全速接口
•SD卡插槽
•ALS: lr -308环境光传感器
•4个LED用于IR:红外线照明
相机规格
ESP32-S3 AI camera上的广角红外摄像头,结合红外照明和光传感器,即使在低光或完全黑暗的情况下,也能确保出色的图像清晰度。无论白天还是夜晚,ESP32-S3 AI Camera都能保证监控画面的稳定性和清晰度,为安防和监控系统提供可靠的支持。
•传感器型号:OV3660
•像素:300万像素
•灵敏度:可见光,940nm红外线
•视野:160°
•焦距:0.95
•光圈:2.0
•失真:< 8%
这都是关于这个很棒的硬件。你可以在它的维基页面上了解更多。他们解释了详细的细节,功能,规格,引脚,入门指南等。
DFRobot ESP32-S3-AI-Camera vs AI Thinker ESP32-CAM
有几种基于ESP32的相机板可供选择。你可能已经使用了AI思考者ESP32-CAM模块。
那么DFRobot ESP32-S3-AI-Camera和AI Thinker ESP32-CAM有什么区别呢?让我们简单地比较一下这两个模块
我们可以看到,这些模块之间有几个不同点
与AI Thinker ESP32-CAM相比,DFRobot ESP32-S3-AI-CAM具有几个关键优势,使其更适合高级和用户友好的应用。
•它具有更强大的ESP32-S3芯片,内置用于AI加速的矢量指令,
•8 MB板载PSRAM和16 MB闪存,支持复杂的边缘计算任务。
•与AI思考者板不同,它包括一个具有红外功能的广角OV3660摄像头,用于夜视
•机载麦克风和扬声器用于音频交互,以及USB-C端口,无需外部FTDI即可轻松开发。即插即用包
•BLE 5.0
虽然DFRobot ESP32-S3-AI-CAM功能丰富,但我发现了一个可能影响某些项目类型的限制。
它缺乏标准的暴露GPIO头,这极大地限制了与外部传感器,继电器或定制硬件的接口能力-不像AI Thinker ESP32-CAM,它提供了多个可访问的GPIO垫。
如何开始使用DFRobot ESP32-S3-AI-CAM
开始使用DFRobot ESP32-S3-AI-CAM涉及几个关键步骤,主要侧重于设置开发环境,然后上传示例代码。最常见的编程方式是使用Arduino IDE,但MicroPython和ESP-IDF也是一种选择。
以下是对一般流程的简要概述:
安装Arduino IDE:如果您还没有安装,请从Arduino官方网站下载并安装最新版本的Arduino IDE。
添加ESP32板管理器URL:在Arduino IDE中,转到File > Preferences并将ESP32板管理器URL添加到“附加板管理器URL”字段。
安装ESP32- s3单板软件包:进入Tools > Board > Boards Manager目录,搜索“ESP32”,安装最新版本的“ESP32”软件包。该包包括对ESP32-S3的支持。
选择板:安装后,转到Tools > Board,导航到ESP32 Arduino部分,并选择“ESP32S3 Dev Module”(或类似的ESP32- s3板,具有8MB PSRAM,具体取决于特定的软件包版本和板的确切名称)。
配置板设置:至关重要的是,您需要在Tools下设置一些板选项:
USB CDC On Boot:如果您想使用USB Type-C端口进行串行通信(打印到串行监视器),请将此设置为Enabled。
分区方案:选择合适的分区方案,通常包括支持8MB PSRAM的分区方案(例如,“巨大的应用程序(3MB No OTA/1MB SPIFFS)”或类似的分区方案,具体取决于确切的固件和示例)。PSRAM配置至关重要,通常需要“OPI PSRAM”模式。您也可以将其保留为默认值。
PSRAM(伪静态RAM)通过在芯片有限的内部SRAM之外提供额外的高速内存,为基于esp32的应用程序提供了显著的优势。它可以处理高分辨率图像缓冲、视频流、运行机器学习模型以及实时处理大型音频或传感器数据等内存密集型任务。如果没有PSRAM,这些应用程序将由于内存短缺而崩溃或性能不佳。
在ESP32-S3-AI-Camera等板中,8 MB板载PSRAM允许顺利执行AI推理,来自相机的帧缓冲,以及使用复杂的库,如TensorFlow Lite或ESP-DSP,使其成为高级边缘计算和多媒体任务的必要条件。
我们选择的PSRAM设置为-“OPI PSRAM”
连接主板:使用USB Type-C电缆将DFRobot ESP32-S3-AI-Camera模块连接到计算机。确认您选择了正确的单板——ESP32-S3 Dev Module
选择端口:进入Tools > Port,选择ESP32-S3-AI-Camera对应的COM端口
示例代码-
该DFRobot ESP32- s3 - ai - cam板有一些特定的引脚定义和配置,因此我们需要修改ESP32内核中的CameraWebServer代码。
加载示例代码:从简单的示例开始,以确认一切正常。一个常见的起点是CameraWebServer示例,它允许您通过Wi-Fi从相机流式传输视频。
进入“File > Examples > ESP32 > Camera > CameraWebServer”目录。
一旦从Arduino IDE加载了CameraWebServer的示例。下面的附件部分给出了代码。复制该代码并替换为默认的CameraWebServer代码。您也可以转到我们的存储库。在那里,您将获得完整的项目源代码文件夹。
在代码中,你需要输入你的WiFi证书
一旦输入你的WiFI证书。然后点击“上传”按钮。(可选-如果代码没有上传或任何上传错误发生-在上传期间,您可能需要在连接/重置时按下板上的“BOOT”按钮,按照DFRobot的说明,将其置于闪烁模式。)
监视器串行输出:以115200的波特率(或示例代码中指定的波特率)打开串行监视器(Tools > Serial Monitor)。在代码上传和电路板重置之后,它应该打印IP地址,您可以使用该IP地址在web浏览器中访问摄像机流。
打开任何网页浏览器并进入上述IP地址。请注意,根据您的网络DHCP设置,IP可能会有所不同。您将在串行监视器上看到您的CameraWebServer IP地址。
DFRobot在其wiki页面上为ESP32-S3-AI-Camera提供了广泛的文档和示例代码,涵盖基本设置,相机流,音频功能和更高级的AI应用程序(Edge Impulse, YOLOv5, ChatGPT集成)。强烈建议您参考其官方wiki,以获取您的模块的最新和具体说明。
项目
我们也用这个ESP32-S3 AI Camera Module做了一个项目。这个项目是关于“使用DFRobot的ESP32-S3 AI Cam & Gemini API的AI- powered ANPR”。你也可以观看它的演示
本文编译自hackster.io