- 本课程为精品课,您可以登录eeworld继续观看:
- TI 甘为 AI 大脑的顺风耳.P2
- 登录
- 课程目录
- 相关资源
- 课程笔记
云处理 我们今天的Topic主要是指(包括TI)前端 前处理
因为后处理主要是一个AI的算法或者说是云端
所以说语音识别的应用上各有专长
因为它有这个专长的话
就随便找那个ARM或者说用云端吧
就不需要专门来说这个事情
就是这个应用技术的关键点或者说是瓶颈
其实是在前处理
这是大家来区分产品好坏的一个关键点
谁前处理做得好
谁的产品 比如说识别率 优化率这些指标就会更好
基本上是这么一个概念
前处理从TI能提供的芯片的device来说
我们有两个方向可以选择
一个是C5000的低功耗一个低功耗
一个是C6000高性能
C5000的低功耗呢
当然因为我们的主频限制50M或者到200MHz
目前我们的C5000是这么一个水平
所以说你要做很多Micro
或者说很多功能都加进去的话
可能不一定够
就是说你要去权衡你加进去的一些算法
以及Micro数啊做一个权衡
是选C5000够不够的这个问题需要进一步的确认
当然首先你低功耗要求比较苛刻的话
可能就只能在C5000里面来做选择
只能在基本的功能上做一些平衡
有些你想的很好的功能可能就不能搬进去了
C6000就是高性能 高性能呢
C5000和C6000虽然都是TI的DSP但他们之间是没有间隔性的
因为芯片的架构完全不一样则连接不一样
基本上从理论上
C6000 C5000有可能是一个同频4倍以上性能的提升
C6000目前我们主打的是
C6743 它其实在C6000里面也算是低功耗的产品
主频最高456M
片刻内存也还可以 有三百多K
它的I2S接口
就是说MCASP我们有16个脉
也就是说可以支持16个通道的I2S
其中的方向是灵活可配的
所以基本上对Micro数没有限制
TI基于C5000 C6000我们做了一个TI Designs
就是说仓口设计
就是硬件基本上一般是基于开发吧
这个设计主要是软件
大家如果有这个power板的话可以下载它的软件下来试一试
这里面的软件包括Voice Trigger也是TI的一个识别
但它指的是英文
回声消除
其实回声消除很多产品下大家都有这个需求
当然 因为它不是一个简单的概念
回声消除涉及到各种指标的一个需求
比如说你的延时长度
比如说回声你要消的是D级声还是单声道
这都不一样 所以它里面很多需要调整
所以说用EC的话大家需要有这方面的一个知识背景
当然
如果你有这个知识背景
再去看我们提供的算法用起来会方便一些
如果不懂这方面的话
用起来还是会有些你需要去研究的地方
前面是C5000的Voice Trigger一个简单的参考设计
这里讲的是基于我们的语音识别预处理的一个参考设计
算法不一样就把前处理这一块都换进去了
这是基于C6000K2G做的同样的一套前处理的一直到KWS
就是有关进制唤醒这一部分的软件
这个图 这个硬件中间是一个K2G的原板
左边圆形的是我们一个环形的麦克风阵电
这个都在我们的官网上可以直接订购
如果有兴趣需要拿来评估的话
因为其实做一个语音识别系统的话
这个麦克风阵电摆放的位置等等都是有讲究有要求的
我们的这个麦克风把
是一个7+1的环阵
中间一个 作为一个参考麦克风
作为17个
我们也会有一个4Micro的线阵
就是直的 线阵
然后很快也会放到网上来
然后这个环阵呢
可以跟我们的SK2GCDU74X以及C5517开发板
都可以连接我们提供的相应的TI Designs的软件包
就是直接可以在上面弄可以看到效果
可以去调整你的算法
可以加入你们的算法
左边这个黑色的4个Micro就是我们马上要推出的4个Micro的线阵
因为针对于不同的产品
有的比如说你的产品是放在桌子上的
那肯定需要一个环阵要360度去唤醒它
或者去跟它通讯交流
比如说挂在墙上的产品
比如说空调 电视机等等一般放在墙上的产品的话
它就不需要四格环阵不是360度是180度的 所以线阵就可以了
这样效果会更好
比如说现在你的beamforming的话
你拿到的比如说是4Micro的话
你只是4个Micro的beanforming的一个提升
环阵的话一般来说
你一个对角线这种的话
就是中间有一个你就是对角只有三个麦克风
拿到的信号的能量是不一样的
所以真正的线阵比环阵效果可能还要好一些
我们的这个demo里面
就是那个KWS 就是说唤醒那一块
唤醒那一块用的是第三方的这个唤醒用的是第三方的
因为它支持各种语言
sensory 它是一家专门做唤醒或者说语音识别的一家公司
它不做前处理 它只做识别这一块
目前很多这个语音识别的产品
里面用的其实很多都是sensory的
当然慢慢的也会有很多其他家也做得很好的
这里只是声明一下里面做的那个
因为后面假如用TI的平台用到这一块的话呢
因为后面识别的这一块还是要自己去跟sensory去谈的
因为不是TI的
这个图呢就比较清晰了
就是说这个从声音 信号进来的流程到一些算法的流程
左边是声音
比如说 1到8Mic的这种那个板是八个Mic
最终用户你可以 比如说4Mic比如说6Mic 都无所谓
声音信号进来之后
经过做beamforming算法
如果是说还要做AEC的话
有可能在beamforming之前就要做一个AEC的
因为每个麦克风都采集了你放出去的声音
如果你有本地扩音这种产品的话
在做AEC板的时候你有多出多少个麦克风通道
就要做多少的路的AEC
可以说这个处理量是非常大的
在beamforming
在做这个支持云降噪
看你是用哪种的算法
TI我们也有算法来做 你自己实现了
之后你可能得出一个相对比较干净的信号
然后再来从选择是哪一路
麦克风或者是哪一路方向的beamforming信号
作为最终输送去做识别引擎
这是sensory大家可以去它的网站上
去了解它基于哪些平台 或者是做的哪些语音识别方面的一些成功案例
大家现在在TI的平台上是做了C5000版本的移植
我们后面也在做C6000版本的移植
这是目前TI在TI Designs
在自己的平台上评估下来的一个性能需求
所以从这里可以看到我们的比如说C5535到C5517
各适合于做多少个麦克风 阵列 预处理
需要多少的处理能力
以及内存大小
不过这个表里面是没有包括AEC的算法进来
因为不是所有的产品都需要AEC
只有那种本地有回放的才需要AEC
如果加AEC的话 就还要考虑到几个通道AEC的处理能力
以及内存需求
这个表加上了KWS的唤醒
就语音识别的唤醒值
这部分的内存需求
那就是说如果选择TI的平台
那如何开始
TI的平台 就是C5000 C6000 K2G开发板
以及CNB麦克风硬件板
软件TI到底提供哪些东西
就预处理需要哪些
一般来说是包括哪些算法
TI的以及提供的情况如何
首先就是说
DSP库
DSP库就是那些ft ift以及fir等等这些录合器
这些都是在DSP库里面
不管C5000 C6000TI都做了不同版本的提供
可以在官网上直接免费下载
还有AEC
就是AEC以及AER 这里面包括
自动阵列控制
均衡等等动态范围压缩
声音降噪 都放到一起了
你可以在TI的官网上直接搜搜到它的链接
还有VoLIB
里面包括一些voice的检测
以及语音增强
这是做VIP的一个库
VIP的一个库
里面包括一些跟语音相关的VIP也是跟voice相关的
就是预处理它不是一个单一的概念
就是我们提供的前面这些
当然不仅仅是这些
可能你还有更多的自己的想法来实现一些其它的算法
来提高你的处理或者效果
因为它不像一个标准
比如说打个比方
比如说264264它就公式给你的
就是把一个low data转成264的文件
而预处理它不是这样
就包括video做图像
预处理也是一样的一个道理
它不是一个标注格式的东西
你可以加很多很多自己的算法进去也可以
TI提供的很多已经提供的大部分的通用的一些算法
用TI的平台可以有一个很好的开始
OPUS这是指你处理好的声音
你要是交给云端做一个打包
dm码打包交给云端去识别的一个格式
课程介绍
共计4课时,2小时6分10秒
猜你喜欢
换一换
推荐帖子
- C2000 实时控制 MCU
- 以最短的延迟感应反馈、处理响应以及驱动控制系统。 C2000 实时控制 MCU 采用专有的 32 位内核 (C28x CPU),可提供单周期操作和高达 300MIPS 的速度,外加经高度优化的外设和中断管理总线。这些实时单芯片控制解决方案具有强大的集成外设,专为各种控制应用而设计。 处理 更高的每 MHz 性能由针对控制数学运算进行优化的指...
- Aguilera 微控制器 MCU
- 为何刚申请到的FR5969无法烧录程序
- 本帖最后由 littleHi 于 2014-9-20 14:26 编辑 我是用的ccs来烧录的,在设备管理器中已有com口,但是还是下不进去。求大神的帮助。 ...
- littleHi 微控制器 MCU
- 为什么这个for循环跑不出来了
- 程序始终在这个for循环里跑,这个for循环之前的变量赋值的语句也跑不进去,后面的也跑不进去 就在这个循环里跑,这是怎么回事啊? Uint16 i; float uaa[20],ubb[20],ucc[20]; 前面的是他的变量定义。 for(i=0;i...
- 远比天高 DSP 与 ARM 处理器
- 【TI首届低功耗设计大赛】说一下MSP430FR5969.的FRAM分配
- 拿到金刚狼的板子好久了,作为第一批拿到的现在才分享一些经验有点儿对不住大家了,人在江湖身不由己啊,请大家见谅!MSP430FR5969最大的特点是超低功耗就不用说了,还有一点儿就是使用了铁电存储器作为程序空间和数据空间共用,使得用户可以灵活的分配数据空间和程序空间,方便了用户的使用。那么我们该如何分配数据空间和程序空间呢?接下来我发表一点儿自己的看法。 说到数据和程序,用过TICPU的应该都清楚...
- jishuaihu 微控制器 MCU