开发板官网(www.edevkit.com)
年龄声纹识别模型
数据来源
模型需要采集不同年龄段成人的声音,然后上一章声音关键词识别一样通过麦克风采集ADC数据,录制多组数据后上传并训练模型。
声音数据来源网址:
https://multi.ucass.edu.cn/resources/data/6/ava
资源收集了不同年龄段的声音,分为单字,两字,句子的语音。
这里我们选择两字语音,比如男声“工序”。
点击播放键就可以播放语言,为方便录制数据,采用手机靠近麦克风播放。
数据录制
录制语音ADC数据和第8章一样,8KHz频率录制一秒的数据。可以直接复制一份工程代码。
声音数据选取18-30,31-40,41-50,56-60,66-70五个年龄段,男声“工序”语言。分别录制15条数据。除了录制声音数据,还需要录制一组无声的数据,避免无声时识别错误。
录制数据还是通过断点调试手动控制数据传输,保证统一采集一秒的数据。
进入断点①表示采集完数据,进入断点②表示传输完成,在①处“Start new capture”开始录制,在②处“Stop capture”结束录制。
注意每次录制时“Class Name”是否是对应的,通过数据波形查看数据是否录制完整。除了录制声音,还需要录制一组无声的数据。一共90条数据。
录制完成,点击“Upload”上传数据。
模型训练
数据上传之前在“Reality AI Tools”新建工程,比如“age_voice”。上传完成之后进入“Data”->“Curate”查看文件是否完整,“Target Class”栏都显示类名。不显示类名需要点击右侧栏“Metadata”选择“Target Class”分类。
选择所有文件,点击“Add to Data Set”创建数据集。
进入“Data Set”页面,选择创建的数据集,
“Data Channels”CH1序号不勾选,不参与计算训练。右侧“Inference Target”显示数据占比。
点击“Create Sample List”创建“Single List”单个采样列表。
窗口值设置8000。
进入“AI Explore”->“Class”,选择创建的采样列表,点击下方的“Start exploring”开始训练模型。
等待训练完成,选择准确性高的模型,点击“Create Base Tool”创建生成代码工具。
进入“Deploy”->“Embedded”,选择创建的工具。
点击“+New Package”,配置Package,
点击“Generate Package”开始生成嵌入式代码。
等待生成完成。
模型使用
在工程里下载模型,放入到“src”。
打开“example.c”修改代码,使用输入ADC数据。
在读ADC数据时调用。
编译下载运行,打开串口助手。
按顺序播放语音,识别结果正确。