安信可ESP32-CAM摄像头开发demo--局域网拍照、实时视频、人脸识别
ESP32-CAM内嵌网页局域网通信
- 目录
- 一、前言
- 二、环境搭建及编译
- 2.1 Linux环境安装
- 2.2 代码获取
- 2.3 编译工程
- 三、建立局域网
- 3.1 station 模式
- 3.2 AP模式
- 四、拍照,视频流,人脸识别
- 4.1 拍照,视频流
- 4.2 人脸检测、人脸识别
目录
一、前言
ESP32-CAM是安信可发布小尺寸的摄像头模组。该模块可以作为最小系统独立工作,尺寸仅为2740.54.5mm。 ESP32-CAM可广泛应用于各种物联网场合,适用于家庭智能设备、工业无线控制、无线监控、人脸识别以及其它物联网应用,是物联网应用的理想解决方案。 ESP32-CAM采用DIP封装,直接插上底板即可使用,实现产品的快速生产,为客户提供高可靠性的连接方式,方便应用于各种物联网硬件终端场合
准备工作
- ESP_CAM模块开发板 链接
- 串口模块(USB-TTL)
- 杜邦线
- PC串口调试助手
- 硬件接线
- 请保证模块输入电源至少5V 2A,否则图片会有几率出现水纹。
二、环境搭建及编译
2.1 Linux环境安装
本文开发环境基于Linux,环境搭建步骤如下:
- 下载安装 VM 虚拟机,点我下载
和谐码:FC7D0-D1YDL-M8DXZ-CYPZE-P2AY6(仅学习使用) - 下载镜像,这里选择ubuntu桌面版18.04.4版本,点我下载。
- 安装Ubuntu ,安装教程参考
我们还需要安装几个常用的软件 :
sudo apt-get purge vim-common
sudo apt-get install vim
sudo apt install git
然后安装一堆依赖环境
sudo apt-get install git wget flex bison gperf python python-pip python-setuptools python-serial python-click python-cryptography python-future python-pyparsing python-pyelftools cmake ninja-build ccache libffi-dev libssl-dev
2.2 代码获取
git clone --recurse-submodules https://github.com/Ai-Thinker-Open/Ai-Thinker-Open_ESP32-CAMERA_LAN.git
网络没翻墙的情况下克隆失败,用以下命令克隆:
git clone --recurse-submodules https://github.com.cnpmjs.org/Ai-Thinker-Open/Ai-Thinker-Open_ESP32-CAMERA_LAN.git
子模块拉取完后我们可以看见Ai-Thinker-Open_ESP32-CAMERA_LAN里面有个esp-idf,此版本为v4.0。
设置 IDF_PATH 路径
以我的环境为例:
export IDF_PATH=/mnt/hgfs/share/Ai-Thinker-Open_ESP32-CAMERA_LAN/esp-idf
之后按下 i 表示嵌入代码: vim ~/.bashrc
任意一处添加 表示嵌入上面代码!
按下esc 再 :wq 表示写入保存: source ~/.bashrc
IDF_PATH 路径测试是否设置成功: echo $IDF_PATH
除了 ESP-IDF 本身,您还需要安装 ESP-IDF 使用的各种工具,比如编译器、调试器、Python 包等!
cd /mnt/hgfs/share/Ai-Thinker-Open_ESP32-CAMERA_LAN/esp-idf //以我的路径为例
./install.sh
出现这个 , 表示 安装成功
此时,您刚刚安装的工具尚未添加至 PATH 环境变量,无法通过“命令窗口”使用这些工具。因此,必须设置一些环境变量,这可以通过 ESP-IDF 提供的另一个脚本完成。
在esp-idf目录下运行下面命令,注意下面命令2个小数点中间有一个空格!
. ./export.sh
注意:每次打开终端进入sdk都要执行一次此命令
成功后,便这样提示:
2.3 编译工程
- 进入示例工程 esp_cam\examples\single_chip\camera_web_server
cd esp_cam\examples\single_chip\camera_web_server
- 设置menuconfig
make menuconfig
进入Serial flasher config设置如下
进入Camera Web Server —>Camera Pins —> Select Camera Pinout —> 选择ESP32-CAM by AI-Thinker
设置WIFI模式(station/ AP模式二选一即可)
- station模式
进入camera_web> Camera Web Server > WiFi Settings,设置WIFI名字和密码
或者使用Smartconfig 配网 ,进入board config > smart config ,输入Y使能
2. AP模式
进入Camera Web Server > WiFi Settings,输入AP SSID、AP password、AP Channel、AP IP Address等
如果需要人脸识别功能,进入 Camera Web Server,选择ESP-WHO Face Detection,输入Y ,进入Detection Model,选择MTMN
如果需要LED灯补光,进入 Camera Web Server > LED Illuminator,选择LED Illuminator Enabled 输入Y使能
保存退出,编译下载
make //编译
make flash //下载
make monitor //串口打印
三、建立局域网
station模式和AP模式建立局域网的步骤有所不同,根据自己配置的WIFI模式选择
3.1 station 模式
- 如果没有使能smartconfig,并且写入了WiFi的名字和密码,那么上电之后能自动连接WiFi
- 如果使能了smartconfig,则可以使用EspTouch进行smartconfig配网 ,EspTouch配网APP点我下载
- 配好网后,可以在串口打印中看到模组分配到的IP地址,如上图,电脑或手机连接到同一个WiFi,在浏览器中输入模组的IP地址
3.2 AP模式
电脑或手机连接模组的热点,在浏览器中输设置好的IP地址即可
四、拍照,视频流,人脸识别
4.1 拍照,视频流
电脑与模组建立局域网后,点击Get Still拍照,点击Start Stream拍视频,效果如下图:
点击右上角save可保存当前照片,点击Resolution设置分辨率,LED Intensity设置LED灯亮度
4.2 人脸检测、人脸识别
人脸检测和人脸识别会占用大量内存,不能使用大分辨率,需把分辨率设置为320x240
打开Face Detection即可实现人脸检测,打开Face Recognition实现人脸识别,点击Enroll Face采集人脸,采集成功显示如下图
当识别出采集过的人脸时,显示如下图
安信可ESP32-CAM摄像头开发demo--局域网拍照、实时视频、人脸识别相关推荐
- 安信可ESP32 LVGL_V8 最快移植攻略
安信可ESP32 LVGL_V8 最快移植攻略 文章目录: 安信可ESP32 LVGL_V8 最快移植攻略 软件环境 硬件环境 ESP-S3-12K开发板介绍 开发板的参数 ESP32S3的SPI L ...
- 【BW16 应用篇】安信可BW16模组/开发板AT指令实现MQTT通讯
文章目录 前言 1 固件烧录 2 EMQ服务器搭建 2.1 软件获取 2.2 启动EMQ服务 3 设备端联网配置 3.1 AT指令配置 3.2 信息交互 联系我们 前言 本文主要介绍安信可BW16模组 ...
- 安信可 ESP8266机智云开发板:编译与烧录
安信可 ESP8266机智云开发板:编译与烧录 编译:1.SDK 开发环境搭建见 安信可ESP系列一体化开发环境搭建 下载地址:http://pan.ba ...
- 开发基于深度学习的人脸识别【考勤/签到】系统
开发基于深度学习的人脸识别[考勤/签到]系统 人脸识别介绍 平台环境需求 技术点 系统流程 细节设计 人脸检测 人脸关键点定位 人脸特征提取 模型的训练 模型的部署 MySQL数据库的使用 MFC工程 ...
- JAVA 调用摄像头 拍照 实现人脸识别
JAVA 调用摄像头 拍照 实现人脸识别 今天想试试百度的api 实现一下近年的热点,人脸识别,虽然咱不会,百度会呀,还免费给我无限用呀. 注册百度云账号等:略. Java中调用摄像头,网上搜到两种方 ...
- 【安信可ESP32语音开发板专题①】ESP32-A1S音频开发板之离线语音识别控制LED灯
---------- 本博客学习由 安信可开源团队 潜心编写,做ESP32-A1S离线语音初步入门技术交流分享.如有不完善之处,请留言,本团队及时更改. 文章目录 一.前言 二.离线语音框架 2.1 ...
- esp32录音功能开发_【安信可ESP32语音开发板专题①】ESP32-A1S音频开发板之离线语音识别控制LED灯...
本博客学习由 一.前言 离线语音,顾名思义:在不连网络的状态下,产品能识别语音指令并执行相应的控制输出. 安信可基于乐鑫ESP32芯片开发的ESP32-A1S开发板智能语音助手,可支持唤醒词引擎(Wa ...
- 【安信可ESP32语音开发板专题②】ESP32-Audio-Kit 开发板适配百度dueros例程实现在线语音功能,与开发板对话聊天。
文章目录 前言 一.准备工作 1.硬件准备 2.软件准备 二.验证ESP-ADF是否正常 1. 代码简单修改 2.播放MP3测试 三.dueros 例程适配 1.替换连接文件 2.内存卡准备 3. 代 ...
- 【离线语音专题④】安信可VC离线语音开发板二次开发语音控制LED灯
系列文章目录 [离线语音专题①]安信可最新离线语音模组VC系列出厂固件使用教程--SDK开源? [离线语音专题②]安信可语音开放平台的使用--VC系列SDK的获取 [离线语音专题③]安信可VC系列离线 ...
- 虹软java接摄像头_java基于虹软sdk实现人脸识别(demo)
开发环境准备: 开发使用到的软件和工具: Jdk8. mysql 5.7.libarcsoft_face.dll(so).libarcsoft_face_engine.dll(so).libarcso ...
最新文章
- WCF Security基本概念(转载)
- vs2012编译使用lua 5.2静态库
- yeoman生成react基本架构
- HTML5 Web Storage事件
- 人工智能(1)---从0开始搭建产品经理的AI认知体系
- sql还原数据库备份数据库_有关数据库备份,还原和恢复SQL面试问题–第一部分
- MFC DLL 导出函数的定义方式
- 相对布局父类属性_Unity3D RectTransform使用详解:布局、属性、方法
- win11系统txt文件怎么加密 windows11txt文件加密的解决方法
- set获取元素_C++与STL入门(4):关联容器:集合set
- 115网盘 最好的网盘 雨林木风出品 强烈推荐
- IT人:如何预防久坐伤身?
- 挖一挖那些让公司网站瘫痪的SQL“终结者”
- quickpcb添加pcb库_QuickPcb元件库下载
- 【实习之T100开发(1),韩顺平Java视频教程百度云盘
- 一封谷歌账号辅助邮箱变更的广告邮件
- C++~STL容器实例——三国武将阵营管理系统
- 家用 NAS 服务器搭建 | 前篇
- 随记:普遍性验证、数学思维、代数基本定理及其它
- DNS协议 : RFC1035 中文