Sipeed Maix Dock K210实现人脸识别(从SD卡中加载模型)

K210是个啥

K210是由一家叫做嘉楠的曾经做挖矿芯片的公司推出的一款MCU,其特色在于芯片架构中包含了一个自研的神经网络硬件加速器KPU,可以高性能地进行卷积神经网络运算。值得注意的是,在AI计算方面,K210的算力是相当可观的,根据嘉楠官方的描述,K210的KPU算力有0.8TOPS 。下图列出了芯片一些具体参数。

Sipeed Maix Dock K210实现人脸识别(从SD卡中加载模型)_第1张图片

关于Sipeed和MaixPy

Sipeed就是之前做荔枝派的那家公司了,MaixPy 项目的启动,契机是 K210 芯片流片完成。于是大家想着做一套让更多人在嵌入式使用的 AI 开发的易使用的软件套件, 因为Micropython的易用性,而且 k210 有 6+2MiB 内存,主频 400MHz,完全能够驾驭Micropython, 故选择了Micropython作为编程语法。有关MaixPy的使用以及能做的事情请点这里

从SD中运行人脸识别模型

Sipeed官方对于人脸识别的模型和脚本可访问这里MaixPy实现人脸识别。下面详细介绍怎样把模型放在SD卡中加载,节约内部SRAM空间。建议大家后续的使用模型存放SD卡中
官方是将模型和MaixPy固件打包成一个kfpkg包,其实.kfpkg就是一个.zip压缩包,按照官方教程下载后修直接修改后缀名为.zip,解压后得到模型和固件,如下图:
Sipeed Maix Dock K210实现人脸识别(从SD卡中加载模型)_第2张图片
我们复制其中三个.smodel模型文件到SD中(文件名可修改,但一定要是通过自己的机器码下载的模型,因为.smodel是加密模型),开发板中烧录的固件最好是仅支持IDE的最小MaixPy固件,我这里使用的是maixpy_v0.5.1_128_g43d665c05_minimum_with_ide_support.bin。使用kpu.load()从SD卡中读取模型文件即可使用,例如:

import KPU as kpu
task_fd = kpu.load("/sd/FD_face.smodel") # 加载人脸检测模型
task_ld = kpu.load("/sd/KP_face.smodel") # 加载人脸五点关键点检测模型
task_fe = kpu.load("/sd/FE_face.smodel") # 加载人脸196维特征值模型

你可能感兴趣的:(神经网络,人脸识别,python)