由全志H618作为主控的异构系统,边缘视觉采集由嘉楠K230芯片结合摄像头进行采集,通过视频推流推送到Pc进行人脸识别,识别结果下发H618,H618发送控制命令给ESP32控制相应柜门开关。其中K230和H618采用了多任务架构,每个任务分配独立线程,数据交互有队列和回调函数。
1、整体架构和思路:
端侧用K230采集图像,推流到Pc机用opencv实现人脸识别,将识别结果下发H618,H618发送控制命令给ESP32控制相应柜门开关。K230主要有图像采集、推流线程。Pc端用python编写,利用flask框架构建局域网服务,用于图像转发和结果下发。H618分配了拉流任务和控制命令下发,并用Qt显示GUI界面。ESP32通过WiFi与H618建立连接,接收控制命令开关柜门。
2、用到的相关技术:
v4l2图像采集、socket通信、opencv人脸识别、esp32wifi连接和gpio控制
3、系统待优化的方面
由于这是我做的毕设,当时有些技术不是很成熟。该系统的后续优化可通过一下几点:
(1)如果需要实际部署,可通过配置云端服务实现opencv的图像处理功能,可实现最小改动的快速部署。
(2)性能优化:可通过K230的KPU和NPU实现人脸识别的端侧部署,减少数据传输的延迟和资源消耗