一、前言
在物联网的诸多场景中,除了传感器是AIoT设备中的重要组成外,摄像头作为视觉输入的关键设备,在一些AI应用场景或者监控场景也是必不可少的,本文将带大家一起来给HaaS100开发板装上千里眼,并输出到屏幕显示,充分挖掘HaaS100的硬件能力,帮助你实现更多视觉业务场景应用。监控老板,监控xxx等等,充分发挥你的想象力吧!
二、方案简介
2.1 方案组成
整个方案由HaaS100、WiFi摄像头、LCD组成。LCD与HaaS100通过SPI连接,HaaS100通过Http请求获取到JPEG数据最终显示到LCD上。
2.2 WiFi摄像头选型
市面上的WiFi摄像头比较多,在本例中WiFi摄像头采用ESP官方的ESP32-EYE进行适配,ESP32-CAM是ESP32第三方厂商开发的一款低成本方案,应用也比较广泛,开发者也可以选择它作为方案之一,万能的淘宝上有很多卖家,商家也会提供相应的资料,购买链接如下:
ESP32-EYE: 天猫tmall.com--理想生活上天猫
ESP32-CAM: 天猫tmall.com--理想生活上天猫
2.3 数据处理流程
HaaS100通过http请求到JPEG数据后,通过jpeg解码为RGB888数据,因为SPI LCD是RGB565格式,在送显前就需要将RGB888的数据通过格式转换模块转为RGB565格式。
三、方案实践
3.1 LCD适配
LCD的驱动适配请参考《HaaS100复古机来了》。
购买链接淘宝网 - 淘!我喜欢
3.2 ESP32-EYE开发配置
3.2.1 环境搭建
代码下载
$git clone --recursive https://github.com/espressif/esp-who.git
Python环境创建
这一个步骤不是必须的,不过如果你有多个python环境的需求,也安装过conda可以使用该步骤为esp32的开发创建一个独立的python开发环境,避免不同开发环境的相互影响。
$conda create -n esp32 python=3.8
ESP-IDF安装
不同的操作系统安装的步骤也有所差异,请参考官网文档进行安装:
<