支持脸部识别的固件要求
sipeed 的 MaixCam 的固件升级到 4.1.4以上是支持脸部识别的。
MaixPy 官方提供了两种人脸检测模型,分别来自开源项目 face detector 1MB with landmark 和 Retinafate。
步骤
本实例以face detector为模型实际操作一下,把步骤罗列如下:
1,升级MaixCam 的固件到4.1.4,点击液晶屏settings -->更新MaixPy,国内源选择ustc。为了充足供电请使用大功率的手机充电器。
2,MaixHub下载官方编译好的模型文件
MaixCAM人脸检测+ 5关键点检测,zip包提供了多种输入分辨率选项。分辨率越高,检测越准确,但它也需要更长的运行时间和使用更多的内存。请根据您的需要选择合适的型号。
3,face_detector.cvimodel和face_detector.mud上传到/root/models文件夹里面
4,程序如下
from maix import camera, display, image, nn, app
import math
detector = nn.FaceDetector(model="/root/models/face_detector.mud")
cam = camera.Camera(detector.input_width(), detector.input_height(), detector.input_format())
dis = display.Display()
while not app.need_exit():
img = cam.read()
objs = detector.detect(img, conf_th = 0.4, iou_th = 0.45)
for obj in objs:
img.draw_rect(obj.x, obj.y, obj.w, obj.h, color = image.COLOR_RED)
radius = math.ceil(obj.w / 10)
img.draw_keypoints(obj.points, image.COLOR_RED, size = radius if radius < 5 else 4)
dis.show(img)
5,对人脸实际效果
这里提供的人脸检测不光可以检测到人脸,还能检测到 5 个关键点,包括两个眼睛,一个鼻子,一张嘴巴的两个嘴角。