Android车载开发中语音时涉及到消噪、消回声和ECNR等相关概念,记录于此,方便自己查阅和学习。
正文
ECNR = 消回声 + 消噪。
就是把麦克风中录制的声音进行处理,可提高语音识别率或让电话对面的人听得更清晰。
下面依次介绍。
消噪
消噪(Noise Suppression,简称NS),把环境里的杂音压下去,让人声更清晰!
常见噪声有:
发动机、胎噪、风噪
空调风机
乘客聊天、小孩哭闹
车外交通声
不处理噪声的后果:
唤醒率低(叫不醒语音助手)
识别错误率高
消回声
消回声(Acoustic Echo Cancellation,简称AEC),把车机自己播放的声音从麦克风里“删掉”。
车机播放的声音有:
导航播报
听音乐、收音机等
蓝牙电话时,对方传来的声音
也就是所谓的参考音。
不处理回声的后果:
播导航时唤醒失败
电话里对方听到自己回声
ASR 把导航内容误当成指令
ECNR
ECNR(Echo Cancellation + Noise Reduction)
ECNR = 消回声 + 消噪
ECNR是一个统称,不是某一个算法。
它通常包含
AEC:消回声
NS:消噪声
AGC:把人声音量调到合适大小
多麦克风波束成形、去混响等
麦克风 ↓ ECNR 处理(DSP/专用芯片) ↓ 语音助手 / 电话
为什么车载必须做 ECNR?
| 场景 | 没 ECNR | 有 ECNR |
|---|---|---|
| 高速行驶 | 几乎唤不醒 | 正常唤醒 |
| 播导航时说话 | 识别失败 | 正常识别 |
| 蓝牙电话 | 回声严重 | 清晰通话 |
常见误解
| 概念 | 说明 |
|---|---|
| 消噪(NS) | 打环境噪声 |
| 消回声(AEC) | 打车机自己播放的声音 |
| ECNR | AEC + NS |
| ANC(主动降噪) | 只给人听,不影响麦克风 |
ANC 是为了驾驶员听得更安静,和语音识别无关。
小结
消噪:去除环境赢(把外面的环境音吵闹压下去)
消回声:把车机自己发出的声音删掉
ECNR:两者一起做,让语音助手听得清、听得准
参考文章
AI

