【新手基础教程】图像处理

2021-03-243333
AI 快速预览详细 收起
本文介绍了如何使用YOLO V2模型进行人脸检测。首先需要下载face_model_at_0x300000.kfpkg模型文件,并使用kflash_gui将其下载到Flash或放到SD卡中。然后通过kpu.load加载模型,并使用kpu.init_yolo2初始化模型。最后输入图片数据,运行kpu.run_yolo2获取结果。完整例程可以在GitHub上查看。

图像处理

人脸检测

在一张图片中找出人脸, 并且框出人脸,即知道脸的位置和大小

使用了YOLO V2模型对人脸进行检测

1. 使用方法:

  • 下载模型: 到这里  下载  face_model_at_0x300000.kfpkg  这个模型文件
  • 用 kflash_gui 下载模型到 Flash, 或者放到 SD 卡中
  • 加载模型

    task = kpu.load(0x300000)
    # task = kpu.load("/sd/face.kmodel")
    anchor = (1.889, 2.5245, 2.9465, 3.94056, 3.99987, 5.3658, 5.155437, 6.92275, 6.718375, 9.01025)
    kpu.init_yolo2(task, 0.5, 0.3, 5, anchor)

    因为使用了YOLO V2这个模型, 它有专用的函数接口, 使用init_yolo2来初始化模型

参数分别为:

  • kpu_net: kpu 网络对象, 即加载的模型对象,  KPU.load()的返回值
  • threshold: 概率阈值, 只有是这个物体的概率大于这个值才会输出结果, 取值范围:[0, 1]
  • nms_value: box_iou 门限, 为了防止同一个物体被框出多个框,当在同一个物体上框出了两个框,这两个框的交叉区域占两个框总占用面积的比例 如果小于这个值时, 就取其中概率最大的一个框
  • anchor_num: anchor 的锚点数, 这里固定为  len(anchors)//2
  • anchor: 锚点参数与模型参数一致,同一个模型这个参数是固定的,和模型绑定的(训练模型时即确定了), 不能改成其它值。

然后输入图片数据,运行模型

code = kpu.run_yolo2(task, img)

得到结果, 完整例程看这里

API 文档看  Maix.KPU

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -