物联网开发实战
郭朝斌
小米生态链企业秒秒测 IoT 事业部总监,前诺基亚高级工程师
17380 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 36 讲
物联网开发实战
15
15
1.0x
00:00/00:00
登录|注册

20 | 智能语音:好玩的语音控制是怎么实现的?

你好,我是郭朝斌。
实战篇的前几讲,我们打造了联网智能电灯,并实现了跟光照传感器的场景联动。今天我们来玩一个更酷的,智能音箱。
智能音箱为我们提供了一种更加自然的交互方式,所以亚马逊的 Echo 产品一经问世,就迅速流行起来。与智能家居结合之后,它更是引起了行业巨头的注意,被认为是很有发展潜力的用户入口和平台级产品。
我们先不论智能音箱最终到底能不能发展成智能家居的平台级产品,至少这波热潮已经极大地推动了相关技术的发展,而且用户覆盖率也有了很大的提升。
这一讲我就为你介绍一下智能音箱的语音控制是怎么实现的,并且带你动手完成开发过程(如有需要,你可以根据这份文档自行采购相关硬件)。

智能音箱的技术架构

智能音箱主要涉及拾音前端信号处理语音识别自然语言处理语音合成等技术,现在一些产品甚至提供了声纹识别技术。
当然,智能音箱最重要的是提供各种功能,完成一些任务,比如控制电灯的开和关,这被称为技能
整体的技术架构如下图所示:
接下来,我会逐个讲解这些技术组成。

拾音

拾音,就是通过麦克风获取你的语音。
我们都用微信发送过语音消息,手机就是通过麦克风来获取你说的话的,这么说起来,拾音好像很简单。但是,智能音箱应对的环境要更复杂,因为用户可能在比较远的地方下达语音指令。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

智能音箱技术的发展成为科技领域的热点之一。文章介绍了智能音箱的技术架构和开发过程,为读者提供了深入了解智能音箱工作原理和开发方法的机会。 智能音箱的技术架构包括拾音、前端语音信号处理、语音识别、自然语言理解、技能、自然语言生成和语音合成等关键技术,构成了智能音箱的核心功能。 文章详细介绍了智能音箱的开发过程,以树莓派为例,讲解了麦克风阵列的配置和驱动程序的安装,以及软件安装源的修改和更新,对声音设置和音量调整的方法。 此外,文章还介绍了语音唤醒、语音识别和语音合成的具体实现方法,包括使用Mycroft Precise进行唤醒词模型训练、腾讯云提供的语音识别SDK以及腾讯云的语音合成服务。 总的来说,通过介绍智能音箱的技术架构和开发过程,为读者提供了全面了解智能音箱工作原理和开发方法的指南。读者可以通过本文了解智能音箱的基本原理和实际操作,为进一步深入学习和开发智能音箱奠定了基础。文章还提到了通过物联网平台提供的API接口来控制智能电灯的方法,以及留下了思考题,引发读者思考其他远程控制智能电灯的方法。 总的来说,本文对智能音箱技术的发展和应用进行了全面介绍,为读者提供了深入了解和学习的机会。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《物联网开发实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(11)

  • 最新
  • 精选
  • 信大捷安
    置顶
    腾讯镜像经常会出现同步失败的问题,如果出现不能正常下载安装的情况可以使用清华大学镜像源 # 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代: deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi # 编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代: deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

    作者回复: 👍

    2021-01-17
    5
  • 孙宇翔
    我想等把课程里的都实现后,试着在门框的两边装两个红外传感器,通过感知的先后顺序,来判断是进门或者出门,来控制灯的开关

    作者回复: 好,等分享

    2020-12-25
    4
    8
  • 牛哥哥
    arecord -l 发现没有设备,重装系统也不行

    作者回复: 需要再看看respeaker的驱动安装是否成功

    2021-01-09
    6
    3
  • 使用precise-convert geektime.net会出现一点问题,说是有些文件中的.decode('utf8')有AttributeError,估计是版本问题,看到最近有个报了的bug:https://github.com/MycroftAI/mycroft-precise/issues/197,暂时的解决办法,将报错中的.decode('utf8')删掉

    作者回复: 👍

    2021-01-03
    2
    3
  • 上面的kwsdemo.py的测试代码里这第6行"precise-engine/precise-engine"会导致找不到文件,需要替换到“.venv/bin/precise-engine“。参考github上的sample python program.

    作者回复: 记得执行时切换到precise的python虚拟环境

    2021-01-03
    2
  • Geek_e3bbee
    语言唤醒 部分能跑起来,但最终唤醒效果没有出现,不知道其他同学有没有碰到类似的问题

    作者回复: 可以关注负样本,增加训练模型的质量。

    2021-01-12
    4
    1
  • LDxy
    文中提到的智能音箱的技术架构中所用的的各种技术,是不是都已经有成熟的解决方案的?并且都已经能在产品中使用的?

    作者回复: 是的,都比较成熟了

    2020-12-25
    2
  • liuy1226
    mycroft-precise如何支持windows有完整的资料没,网上这方面材料较少
    2023-06-13归属地:浙江
  • 请教老师一下,这个问题困扰我很久了。 执行完指令precise-collect后,按空格键开始录音,此时会报错: ALSA lib dlmisc.c:287:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/arm-linux-gnueabihf/alsa-lib/libasound_module_rate_samplerate.so ((null): /usr/lib/arm-linux-gnueabihf/alsa-lib/libasound_module_rate_samplerate.so: cannot open shared object file: No such file or directory)
    2022-05-26
    1
  • z
    有没有可能我做一个拾音器前台,将语音(已经明确是指令了,无需再判断是否唤醒)通过蓝牙的形式传输给小爱音响或者手机的小爱同学APP进行语义分析并完成指令?
    2022-03-07
收起评论
显示
设置
留言
11
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部