【ESP32-Korvo测评】三:智能语音助手ESP-Skainet
本帖最后由 数码小叶 于 2021-1-31 20:36 编辑<p><span style="font-size:20px;">ESP-Skainet 是乐鑫开发的智能语音助手,可支持唤醒词引擎(WakeNet),离线语音命令识别引擎(MultiNet)和前端声学算法。其具有轻便、安全、低延迟、唤醒词定制、自定义控制命令等特点。主要的应用场景有智能家居、智慧办公、陪伴设备等。ESP-Skainet的功能框图如下</span></p>
<p><span style="font-size:20px;">发现其实它的输入音频不仅可以来自麦克风,还可以是wav/pcm等格式的音频文件。</span></p>
<p><span style="font-size:20px;">AEC(Acoustic Echo Cancellation回声消除),AGC(automatic_gain_control自动增益调节),NS(Noise Suppression噪声抑制 ), VAD(Voice Activity Detection语音活动检测),Mic Array Speech Enhancement(麦克风阵列算法)是目前 ESP-Skainet 集成的算法功能。</span></p>
<p><span style="font-size:20px;">WakeNet唤醒词模型,目前乐鑫开放的唤醒词有乐鑫免费开放“Hi,乐鑫”, “你好小智”, “你好小鑫”, “hi,Jeson”唤醒词,其他则需要定制了,而且需要一定广的样本数据。</span></p>
<p><span style="font-size:20px;">MultiNet命令词模型,这个可以根据需求自定义语音命令,无需重新训练模型。</span></p>
<p><span style="font-size:20px;">最后一部分TTS是语音合成,应用场景等。</span></p>
<p> </p>
<pre>
<code>git clone --recursive https://github.com/espressif/esp-skainet.git </code></pre>
<p><span style="font-size:20px;">先克隆下整个过程,下载过程真是遥远而漫长,速度巨慢</span></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">下载完成后,查看下载的内容,发现Skainet提供了6个例程“chinese_tts”、“garbage_classification”、“get_started”、“mic_array_speech_enhancement”、“noise_suppression”、“wake_word_detection”,看着“get_started”比较适合作为第一个例程,那就复制一份“get_started”</span></p>
<p></p>
<p><span style="font-size:20px;">尝试编译,但是编译未通过,报错。只能查看CMakeOutput.log文件,寻找原因,也没任何提示,只显示通过了的项目。。。</span><img height="50" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/wanwan57.gif" width="49" /></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">只能慢慢测试,最后发现了问题所在</span></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">因此,这个get_started项目不能毫无修改的复制啊,那就先备份一份,去原路径编译吧,编译OK</span></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">烧写到板子上,测试,get_started自带了20个语音命令</span></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">然而测试结果并不理想,不但识别率低,而且反馈回来的都是错误的命令,比如说0,识别成5,说7识别成8.<img height="28" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/dizzy-face_1f635.png" width="28" /><img height="28" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/dizzy-face_1f635.png" width="28" />,于是尝试了各种更改参数,结果问题并未解决,偶然一次在下载时发现flash的大小不正确,于是修改了正确的flash大小后,问题解决</span><img height="28" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/smiling-face-with-open-mouth-and-cold-sweat_1f605.png" width="28" /></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">终于是可以正确识别了,但是就是识别率低</span></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">又看了一下配置参数,将speech commands recognition mode after wake up改了下</span></p>
<p></p>
<p> </p>
<p><span style="font-size:20px;">改为单次识别后,识别到的语音几乎全正确</span></p>
<p></p>
<p><span style="font-size:20px;">识别率几乎和自带的demo例程没有什么区别了,</span><span style="font-size:20px;">最后一点,在众多唤醒词中,还是觉得“你好,小鑫”这个最顺口</span><img height="52" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/wanwan70.gif" width="57" /><img height="52" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/wanwan70.gif" width="57" /></p>
<p></p>
<p> </p>
<p> </p>
<p>大佬厉害了,给大佬点个赞!</p>
w494143467 发表于 2021-2-2 20:09
大佬厉害了,给大佬点个赞!
<p><img height="50" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/wanwan57.gif" width="49" /><img height="50" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/wanwan57.gif" width="49" /><img height="50" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/wanwan57.gif" width="49" />别逗,一个还在 摸索ing 的菜鸟</p>
<p>大佬可以发一份吗,下载不了啊</p><br/><p></p><br/> <p>下载好了,你是用什么开发环境的</p><br/> <p>点赞点赞</p>
页:
[1]