使用UIFLOW完成一下人脸检测功能
在advanced的camera找到摄像头初始化配置,进行设置

只需要拖动出为摆放一下就已经完成相关初始化工作,非常快捷
ESP-DL里主要是深度学习的一些相关函数摆件,包括一些识别结果的处理

IMAGE里主要是对识别后的图片进行一些标记处理

用图形化操作主要还是需要有清晰的逻辑,可以参考官方的说明文档进行探索。
import os, sys, io
import M5
from M5 import *
import camera
import dl
import image
dual_button_0_blue = None
dual_button_0_red = None
img = None
detector = None
detection_result = None
res = None
kp = None
def setup():
global dual_button_0_blue, dual_button_0_red, img, detector, detection_result, kp
M5.begin()
Widgets.setRotation(1)
Widgets.fillScreen(0x222222)
camera.init(pixformat=camera.RGB565, framesize=camera.QVGA)
detector = dl.ObjectDetector(dl.model.HUMAN_FACE_DETECT)
def loop():
global dual_button_0_blue, dual_button_0_red, img, detector, detection_result, kp
M5.update()
img = camera.snapshot()
detection_result = detector.infer(img)
if detection_result:
for res in detection_result:
kp = res.keypoint()
img.draw_circle(kp[0], kp[1], 3, color=0x0000ff, thickness=1, fill=True)
img.draw_circle(kp[2], kp[3], 3, color=0x00ff00, thickness=1, fill=True)
img.draw_circle(kp[4], kp[5], 3, color=0xff0000, thickness=1, fill=True)
img.draw_circle(kp[6], kp[7], 3, color=0x0000ff, thickness=1, fill=True)
img.draw_circle(kp[8], kp[9], 3, color=0x00ff00, thickness=1, fill=True)
img.draw_rectangle(res.x(), res.y(), res.w(), res.h(), color=0x3366ff, thickness=3, fill=False)
M5.Lcd.show(img, 0, 0, 320, 240)
if __name__ == '__main__':
try:
setup()
while True:
loop()
except (Exception, KeyboardInterrupt) as e:
try:
from utility import print_error_msg
print_error_msg(e)
except ImportError:
print("please update to latest firmware")
烧录一下看看效果


完美流畅运行。还可以将程序通过文件管理上传至设备

这样就可以通过这UIFLOW的固件系统在设备端进行执行

我要赚赏金
