🧠 模型推理

目标

使用 KPU 神经网络加速单元运行 MobileNet 模型,对摄像头图像进行分类推理。

硬件准备

代码示例

#include "kpu.h"
#include "model.h"  /* 包含模型数据 */

kpu_model_context_t task;

int main(void) {
    kpu_load_kmodel(&task, model_data);

    /* 设置输入(来自摄像头)*/
    kpu_run_kmodel(&task, img_buf,
        dmac_channel, kpu_done_cb, NULL);

    /* 等待推理完成 */
    /* 读取 softmax 输出 */
    float *output;
    size_t output_size;
    kpu_get_output(&task, 0, (uint8_t**)&output, &output_size);
    printf("Top class: %d\n", argmax(output, 1000));
    return 0;
}

步骤说明

  1. 准备 MobileNet kmodel 文件(可从 Kendryte 官方获取)。
  2. 将 kmodel 烧录到 Flash 指定地址。
  3. 烧录推理代码,摄像头对准物体。
  4. 串口输出分类结果。
提示: 遇到问题可查看 Q&A 页面,或在工蜂仓库提交 Issue。