6

TinyML语音关键字唤醒 – 使用自己的模型(使用)

 3 years ago
source link: https://www.taterli.com/7852/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

TinyML语音关键字唤醒 – 使用自己的模型(使用)

上一回已经得到tflite文件,要挪到单片机上还需要一些功夫,.其中属于自己移植部分就这两种.

其中下面的文件夹是针对应用的,之前已经有说过,如果我们模型识别了新的词,那肯定希望他有新的应用,对于一个模型来说,关键修正几个变量.

  • kCategoryLabels => 我们训练了几个标签,这里就要几个.
  • g_model => 通过转换的tflite模型
  • g_model_len => 模型长度

最后需要改掉RespondToCommand,实现更多的功能,现在开始一步一步来.

第一步,修改model.cc的len,等于模型的大小,然后又修改模型的数组,因为数据很大,所以标const把他存Flash里.

第二部修改分类,刚才训练了哪些label都写下来.

到此,已经移植OK了,可以编译实际测试一下,明显发现FLOAT16模型反应很慢(在STM32F769 216MHz下大概要几秒才能反应),但是准确度高.如果是INT8模型,准确度和官方例子差不多,但是速度很快.特别是TF2状态下,目前模型转出来还是很大,如果不在意,可以继续使用TF1.15~


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK