Neural Nework - 人脸识别

材料准备

范例说明

介绍

在这个例子中,我们将使用 Ameba Pro2 开发板来识别检测到的人脸。

流程

打开人脸识别实例 “File” -> “Example” -> “AmebaNN” -> “RTSPFaceRecognition”。

1

在标记的代码片段中,将您的 WiFi 网络 SSID 填入“ssid”,将网络密码填入“pass”。

1

使用以黄色标记的 modelSelect() 函式选择Neural Network (NN) 工作和模型。该函式有 4 个参数:Neural Network工作、物体侦测模型、人脸侦测模型和人脸辨识模型。如果您选择的Neural Network工作不需要它们,请替换为“NA_MODEL”。请注意,必须在调用 begin() 之前调用 modelSelect()。
有效的Neural Network工作: OBJECT_DETECTION, FACE_DETECTION, FACE_RECOGNITION
有效的物体侦测模型:
YOLOv3 model: DEFAULT_YOLOV3TINY, CUSTOMIZED_YOLOV3TINY
YOLOv4 model: DEFAULT_YOLOV4TINY, CUSTOMIZED_YOLOV4TINY
YOLOv7 model: DEFAULT_YOLOV7TINY, CUSTOMIZED_YOLOV7TINY
有效的人脸侦测模型: DEFAULT_SCRFD, CUSTOMIZED_SCRFD
有效的人脸辨识模型: DEFAULT_MOBILEFACENET, CUSTOMIZED_MOBILEFACENET

如果您想使用自己的 NN 模型,请选择自定义选项(例如,CUSTOMIZED_YOLOV4TINY/ CUSTOMIZED_SCRFD/ CUSTOMIZED_MOBILEFACENET)。要了解转换 AI 模型的过程,请参阅此处。此外,请参阅此处以了解如何安装和使用转换后的模型。

1

编译代码并将其上传到 Ameba。按下Reset键后,等待Ameba Pro 2开发板连上WiFi网络。用于 RTSP 的开发板 IP 地址和网络端口号将显示在串行监视器中。
可以使用 VLC 验证人脸识别的结果。您可以从连结下载 VLC 媒体播放器 (这里)
软件安装完成后,打开VLC media player,进入 “Media” -> “Open Network Stream”。

1

确保您的 PC 连接到与 Ameba Pro2 开发板相同的网络以进行串流式传输。由于RTSP 被用作串流媒体协议,在VLC 媒体播放器中键入“rtsp://{IPaddress}:{port}”作为网络URL,将{IPaddress} 替换为您的Ameba Pro2 开发板的IP 地址,以及{port } 使用串行监视器中显示的RTSP 端口(例如,“rtsp://192.168.1.154:554”)。默认的 RTSP 端口号是 554。
接下来,点击“播放”开始RTSP 串流式传输以查看结果。来自摄像机的视频串流将显示在 VLC 媒体播放器中。

1

人脸识别神经网络模型检测到的人脸最初被标记为“未知”,人脸需要先注册姓名才能被识别。

1

将相机对准脸部并在串行监视器中输入以下命令。

注册人脸:

注意:可以注册多个面孔。但是,注册人脸时,请确保画面中只有一张人脸。
要注册人脸,请将相机对准目标人脸并输入 “REG={Name}” 为目标人脸命名。例如,“REG=SAM”。

1

1

删除特定的已注册面孔:

输入命令“DEL={Name}”即可删除某个已注册的人脸。例如,“DEL=SAM”。

重置所有已注册的人脸:

输入命令 “RESET” 以忘记所有以前注册的面孔。所有先前分配的面孔和名称都将被删除。您可以进入人脸注册模式重新注册人脸。

在闪存中备份和恢复已注册的人脸:

输入命令 “BACKUP” 将已注册面孔的副本保存到闪存中。如果存在备份,请输入命令 “RESTORE” 以从闪存中加载已注册的人脸。

程式码说明

可以根据您的 WiFi 网络质量调整视频bitrate,方法是取消注解下面标示的程式码。

1

请先确认已安装QQ通讯软体