Cortana 设备测试设置
- 音频杂谈
- 2016-08-11
- 14热度
- 0评论
Cortana 设备测试设置 - Windows 10 hardware dev
第 0 部分:文档
Disclaimer: 本文档按“原样”提供。本文档中表示的信息和视图(包括 URL 和其他 Internet 网站引用)如有更改,恕不另行通知。在商业发行之前会发生实质性修改的、与预发布产品相关的一些信息。Microsoft 不对此处提供的信息作任何明示或暗示的担保。你需自行承担使用本文档所带来的风险。
这里提供的一些示例仅供演示,而且是虚构的。与真实世界无实际关联,也不应以此作为推断。
本文档中的所有建议和标准仅作为近似准则,并不保证所有设备在实际条件下的语音识别性能。语音识别是复杂的计算机学习过程,本质上并不完美。即使满足所有高级建议,也不保证 Cortana 和语音识别在设备上的工作完美无缺。
定义
有关相关术语、参考 (ITU-p.10) 的完整列表,请访问:https://www.itu.int/rec/T-REC-P.10-200607-I/en
标题 | 定义 |
---|---|
ADC | 模拟数字转换器(简称 A/D) |
AEC | 回声消除器 |
AGC | 自动增益控制 |
ASR | 自动语音识别 |
BPF | 带通滤波 |
捕获(或发送) | 输入(近端)语音信号 |
dB SPL | 分贝声压级 = ![]() |
dBFS(或 dBov) | 满刻度分贝值 = ![]() 相对于其过载电平或最大电平的数字信号的信号电平由 dBov 指定。这通常也称为 dBFS(满刻度)。 例如,仅具有最大正数或最大负数的矩形函数电平为 0 dBov。对于最大刻度数字正弦信号,峰值电平是 0 dBov 并且 RMS 是 -3.01 dBov。(ITU-T G.100.1)。 |
DI | 指向性指数(有关详细信息,请参阅附录 A:计算)。 |
DRC | 动态范围压缩 |
DSP | 数字信号处理 |
DUT(或 DRP) | 测试中的设备(或设备参考点) |
FIR | 有限脉冲响应 |
HATS | 人头和躯干模拟器 - 在 ITU-T 建议 P.58 [15] 中介绍 |
IHV | 独立硬件供应商 |
IIR | 无限脉冲响应 |
MRP | 嘴参考点是仿真嘴的嘴唇平面前 25 毫米的点。这是在测量正常讲话、大声讲话和安静讲话之前校准语音级别的点 |
NG | 环境噪声增益(有关详细信息,请参阅附录 A:计算)。 |
NGA | A 加权环境噪声增益(有关详细信息,请参阅附录 A:计算。) |
正规带 | 标称通频带为 300-3400 Hz 的语音信号 (ITU-p.10 N-3) |
呈现(或接收) | 输出(远端)语音和/或其他呈现的音频信号 |
TCLw | 终端耦合损耗(加权) |
THD+N | 总谐波失真(包括噪声)= ((signal-f₀))⁄f₀¹ |
宽频带 | 标称通频带为 100-7000 Hz 的语音信号 (ITU-p.10 W-3) |
ƒ₀ | 基本频率 |
¹其中“—”通过陷波滤波完成
第 1 部分:摘要和大纲
语音平台用于增强 Windows 10 中的所有语音体验,例如 Cortana 和听写。本文档提供旨在用于 Microsoft 语音平台的音频输入设备设计和开发的测试设置指南及建议。
本文档中提供的测试和测试设置指南仅限于直接影响以下项的设计参数:1) 语音识别准确性 2) 基础语音处理算法的行为。本文档不是 Windows 认证计划的一部分,也不是设备认证所需的建议。建议仅用作设备设计的帮助指南和最佳做法。
第 2 部分:测试条件
测试条件定义在根据语音平台输入设备建议测量设备时应使用的环境参数和设备功能。
测试系统和环境应能够满足 ITU-T P.341 和 ITU-T P.58 定义的测量准确度标准。
测试设备建议
可以使用 Skype/Lync 建议的 Head Acoustics 设备或 Intel 语音认证测试设备。另外,下表是所需设备的示例。
项目 | 建议 | 示例 |
---|---|---|
人头和躯干模拟器 (HATS) 和/或嘴模拟器 | 符合 ITU-T P.58
符合 ITU-T P.51 |
B&K 4128C
或 |
扩音器(如果使用 HATS) | 与使用的 HATS 兼容 | B&K Nexus
或 B&K 2716C |
音频生成器/分析器 | 满足测试信号要求 | AP 585 |
室内扬声器 & 支架 | JBL LSR2325P & SMS-6000 | |
无基准声场麦克风 或声级计 | 100 Hz – 12 kHz, < 1% THD 94 dB SPL @ MRP, ±2 dB 轴响应 | DPA 4007
或 包含 M4260 的 NTi Xl2 |
PC 音频接口 | RME 9632 或 Roland Octa-Capture |
试验室建议
可以在 ETSI 普通房间内针对语音平台输入设备建议的 Device.SpeechRecognition 和 Device.Audio.DSPDevice.SpeechRecognition 测试设备。消声室可以支持 Device.Audio.Acoustics.Device.Audio.Acoustics 中的测试。如果消声室是唯一可用的试验室,建议在针对 Device.SpeechRecognition 和 Device.Audio.DSP.Device.SpeechRecognition 进行测试时使用声学反光面提高混响。另一种方法是根据混响和本底噪声将会议室转换为近似的 ETSI 普通房间。
ETSI EG 202 396-1(第 6 部分)中指定了 ETSI 普通房间配置,建议遵循 Skype 测试规范中的其他指南:5.8 混响测试环境。
摘要:
- • 试验室大小应在 2.7m X 3.7m 和 3.5m X 4.4m 范围之内。
- • 本底噪声目标应为 28 dBSPL(A) 并且必须 < 35 dBSPL(A)
- • 最大程度减少不自然声学混响。房间的混响时间应少于 0.7 秒,但多于 0.4 秒,频率范围在 100 hz 和 8 kHz 之间。
消声室或半消声室在 ITU-T P.341(第 4 部分)中指定。
测试信号、文件、软件建议
以下测试激励和软件应用于针对此规范进行测试。
激励 | 时长 | 电平 | 频率 | 其他参数 |
---|---|---|---|---|
输入扫频 | 3 秒 | 94 dB SPL @ MRP | 100 – 12000 Hz | 连续对数扫频 |
输出扫频 | 3 秒 | 20 dBV 或 -10 dBFS | 20 – 12000 Hz | 连续对数扫频 |
语音输入 | ~ 20 分钟 | 89 dB SPL @ MRP | 100 – 12000 Hz | LongCleanTalk-CortanaSubset_48k_24bit.wav |
音乐文件 | ~20 分钟 | >= 70 dBA SPL @LRP | 本地播放进行回声测试 | |
环境噪声 | ~20 分钟 | >= 57 dBA SPL @ DUT | ETSI ES 202 396-1 中的 咖啡馆、酒吧 | |
校准(嘴) | LongCleanTalk-Calibration.wav |
测试套件软件由 Microsoft 提供,并且音频文件由 Microsoft 提供或指定。
背景噪声文件位于 http://docbox.etsi.org/stq/Open/EG%20202%20396-1%20Background%20noise%20database/Binaural_Signals/。
测试位置
The DUT shall be placed relative to the MRP, during all tests, in what is deemed to be a typical (“normal”) scenario/use case. However the minimum distance for a typical tablet/laptop is to be 50cm.
IHV 拥有其设备的方案。此处的建议旨在为 IHV 提供指南,以便针对语音识别功能对其设备进行验证。
方案定义包括如下所示的注意事项:
- MRP 到麦克风的距离(阵列)
- MRP 到麦克风的方向(阵列)
- 耳机设备上吊杆的放置
- 耳机设备的耳模拟器上听筒的覆盖范围/压力
- 扬声器相对于麦克风和 HATS 的位置
- 设备放置环境,例如在桌上、在室外、在电视上、在 HATS 上
有关典型设备使用模式和测试设置的其他指南,请参考 Skype/Lync 音频规范中的第 5 部分。
下图显示典型测试位置设置以供参考。
试验室设置拓扑
针对典型笔记本电脑和平板电脑用例的房间和测试设置。
第 3 部分:测试步骤
以下部分包含根据本文档中的建议进行评估的测试步骤示例。具体步骤可能因测试人员可用的设备和设置而异。
在开始之前,若要获取参考设备、文件和设置图示列表,请参阅第 2 部分:测试条件。
初始设置和校准
在继续进行任何单独的测试之前,先完成以下常规步骤:
- 准备包含测试方案所需的所有对象(例如桌子、电视)的普通 ETSI 房间
- 根据制造商指南,校准参考麦克风敏感度
- 根据制造商指南,将 HATS(或嘴模拟器)校准到平坦幅度响应
- 校准 HATS 或嘴模拟器的语音级别
- 测量房间的背景本底噪声(目标 < 35 dBA SPL)
- 测量房间的 RT60(在语音频带中目标为 0.4s < RT60 < 0.7s )
聊天级别校准
目前提供两个嘴校准文件。这些文件派生自语音输入文件,并且已删除静音部分。Long Clean Talk 为幅度进行了标准化,并且是用于这些测试的官方文件。
将参考麦克风或噪音计放置在嘴参考点 (MRP),然后播放提供的相关校准文件:
聊天级别校准文件 | 清晰交谈语音输入文件 | |
Long Clean Talk | LongCleanTalk-Calibration.wav | LongCleanTalk-CortanaSubset_48k_24bit.wav |
Short Clean Talk | ShortCleanTalk-Calibration.wav | RawSpeech_Sheet-01_Mike_Bruce__ITU-R-BS.1770-2.wav |
平均整个文件的测量值,并且将目标级别设置为 89dB SPL。
环境噪声级别校准
需要针对 Device.SpeechRecognition.AmbientNoise 校准环境噪声级别。在 DUT 麦克风附近进行测量。
播放背景噪声文件并增加参考麦克风(或噪音计)上的平均时间,直至其稳定。然后,将背景噪声级别更改为 >= 57dB SPL。
研究粉红噪声文件的生成以便未来更易于校准。
回声噪声(音乐)级别校准
需要针对 Device.SpeechRecognition.EchoNoise 校准回声噪声级别。在侦听器参考点 (LRP) 处进行测量。
播放音乐文件并增加参考麦克风(或噪音计)上的平均时间,直至其稳定。然后,更改 DUT 上的播放级别,直到达到 > = 70dB SPL @ LRP(或达到 DUT 最大播放级别)。
Device.SpeechRecognition.Quiet | Test Steps
- Mouthsim 89 dB SPL @ MRP
- 启动测试套件并初始化语音输入文件的播放
Device.SpeechRecognition.AmbientNoise | Test Steps
- Mouthsim 89 dB SPL @ MRP
- 将环境噪声播放初始化为 >= 57 dBA SPL @ DUT
- 启动测试套件并初始化语音输入文件的播放
Device.SpeechRecognition.EchoNoise | Test Steps
- Mouthsim 89 dB SPL @ MRP
- 将音乐文件播放 2) 初始化为 >= 70 dBA SPL @ LRP
- 启动测试套件并初始化语音输入文件的播放
附录 A:计算
抖动和漂移
抖动
我们将抖动定义为关于标称样本(或时间戳)的观察样本(或报告时间戳)的绝对范围。
例如,在样本 t_i 关于标称样本 μ 的正态分布中,绝对抖动 T 定义如下
漂移
我们将漂移定义为经过足以观察漂移的一段时间内标称时钟频率与实际时钟频率之间的百分比差异。
环境噪声增益
给定频率的各向同性环境噪声增益是麦克风阵列波束的体积:
其中:
- V 是麦克风阵列工作体积,即所有坐标集合
(方向、仰角、距离)。
- B (ƒ, c) 是麦克风阵列波束指向性图案,即增益作为频率和入射角的函数。
总环境噪声增益 NG(以分贝为单位)由以下计算得出:
其中:
- NA(ƒ) 是噪声频谱。
- H (ƒ) 是前置放大器频率响应(在理想情况下均匀介于 200 和 7,000 Hz 之间,并且两端下降斜率分别在 80 和 7500 Hz 时下降为零)。
- FS 是采样速率(针对语音应用程序通常为 16 kHz)。
环境噪声增益提供关于麦克风阵列输出及全向麦克风输出的本底噪声 RMS 比例。值越小越好,而 0 dB 意味着麦克风阵列根本不用抑制环境噪声。
A 加权环境噪声增益
因为人类听到的不同频率都不同,因此许多声学参数都通过使用标准化的 A 权重函数进行加权。
A 加权总环境噪声增益 NGA(以分贝为单位)由以下计算得出:
其中:
- A(ƒ) 是标准的 A 权重函数;其他参数与上述相同。
A 加权的环境噪声增益提供关于麦克风阵列输出及全向麦克风输出的本底噪声比例,因为它们可以通过人工进行比较。在此情况下,–6 dB NGA 意味着人们会认为麦克风阵列输出上的噪声为全向麦克风输出的一半。
指向性指数
另一个描述波束形成器的参数为指向性指数 DI。
在考虑以下计算 DI 的公式时,请注意当定义 θ 在极点为 –π/2 和 π/2,且在赤道为 0 时才使用 cos θ。 这些限制匹配如何面向 Windows Vista 构建和使用麦克风阵列的附录 B 中 φ 和 θ的定义。并且这些限制也匹配内核流接口定义中 wHorizontalAngle (φ) 和 wVerticalAngle (θ) 的定义。
这是给定频率 ƒ 和方向 (φ, θ) 以及固定半径的功率函数:
这是所有方向(整个球体)上的平均功率:
这是“最佳”方向(称为主响应轴)中的功率:
“最佳”方向中的功率除以平均功率为特定频率提供了方向指示。将所有频率的该比率平均即得出指向性指数。
指向性指数表明麦克风阵列在抑制来自其他方向的声音(例如其他声源和混响)同时,检测 MRA 方向的声音的工作情况。以分贝为单位测量 DI,其中 0 dB 表示不存在指向性。较大的数字意味着更好的指向性。理想心脏形曲线麦克风的 DI 应为 4.8 dB,但实际心脏形曲线麦克风的 DI 低于 4.5 dB。
SLR
权重系数
下表描述了计算 SLR 时要使用的权重函数:
频带编号 (N) | 频率 (Hz) | Ws(SLR 宽带) |
---|---|---|
1 | 100 | 103.0 |
2 | 125 | 75.3 |
3 | 160 | 60.2 |
4 | 200 | 59.5 |
5 | 250 | 52.9 |
6 | 315 | 59.4 |
7 | 400 | 45.4 |
8 | 500 | 56.6 |
9 | 630 | 53.5 |
10 | 800 | 53.8 |
11 | 1000 | 55.9 |
12 | 1250 | 64.2 |
13 | 1600 | 60.6 |
14 | 2000 | 73.7 |
15 | 2500 | 70.4 |
16 | 3150 | 87.1 |
17 | 4000 | 68.2 |
18 | 5000 | 84.5 |
19 | 6300 | 86.5 |
20 | 8000 | 71.0 |
SLR 计算
下方等式描述了计算 SLR 时要使用的权重函数:
其中:
- Ni 是目标频带(仅为 SLR 评估频带 1-20,都不大于 8kHz)
- Si 是频带 N_i 内的平均敏感度,以 dBm0 表示。以 dBFS 为单位测量时,Si (dBm0) = dBFS + 3.1。以 dBV 为单位测量时,Si (dBm0) = dBFS + 3.1 = [dBV + 22] + 3.1
- WSi 为频带 Ni 的权重系数
扩散场 EQ
在扩散场侦听环境中,与参考麦克风同等的播放扬声器的测量响应并未测量在 HATS 上是否平坦,尽管最终用户认为它是平坦或中性的,因为在许多用户研究中都已得到确认。 在某种程度上,这是出于以下两个原因:
- HATS 耳无法完整地表现耳朵耳甲腔的显性共振 (~3 kHz)。
- 听觉刺激的心理声学补偿应用于生物听力过程,从而调整扩散场中频率响应的感知。
出于此原因,许多耳机制造商、扬声器设计人员以及电话听筒/手机生产商在使用 HATS 执行测量时都应用了扩散场均衡(请参阅标准 ITU-T P.58)。
HATS 制造商通常提供从 HATS 耳上测量的响应中减去的扩散场频率响应,而没有其他滤波/EQ 应用为“扩散场均衡”。 人们还可以测量/创建扩散场响应以便在自己的实验室中轻松创建 EQ。
Microsoft 已选择将此类均衡用于此规范中的任何耳测量。
扩散场频率响应示例
下图描述了 HATS 扩散场频率响应(1/3 倍频程)示例:
下表描述了将从 HATS 耳上测量的响应中减去的同一 HATS 扩散场频率响应(未应用任何其他 EQ/补偿):
频率 (Hz) | 响应 (dB) |
---|---|
20 | -0.47 |
25 | -0.54 |
31.5 | -0.50 |
50 | -0.69 |
63 | -0.59 |
80 | -0.40 |
100 | -0.32 |
125 | -0.43 |
160 | 0.03 |
200 | 0.19 |
250 | 0.10 |
315 | 0.56 |
400 | 0.54 |
500 | 1.35 |
630 | 1.66 |
800 | 2.61 |
1000 | 3.45 |
1250 | 4.29 |
1600 | 5.73 |
2000 | 7.93 |
2500 | 10.58 |
3150 | 14.17 |
4000 | 14.78 |
5000 | 13.92 |
6300 | 11.91 |
8000 | 9.80 |
10000 | 10.24 |
12500 | 11.89 |
16000 | 8.79 |
20000 | 9.23 |
回声衰减计算
回声衰减计算按照 Clause B.4 的 ITU-T G.122 执行。 由于麦克风输入的带宽以及要通过听筒播放的游戏声音/内容性质,此要求的测量值适用于 100-12000Hz。 请注意,标准通常仅为 TCLw 定义最高 6700 或 7000 Hz。
测量
回声衰减测量应首先按照以下步骤进行:
- 使用 -10 dBFS (-20 dBV) 连续扫频驱动听筒。
- 通过麦克风测量输入响应,并表示为 1/12 倍频程
- 以 dBFS 表示输入响应(即,如果测量 dBV,则 dBFS = dBV + 22)
- 计算输出到输入(二者都以 dBFS 为单位)与损失频率之比
计算
计算回声的公式如下:
其中:
- N 是已分析频带的数目
- Lab 是输出到输入 (dB) 之比,通过从每个频带的测试信号电平中减去输入响应计算得出(在上述测量中计算)
- Ai 是第 i 个频带(总共 N 个)的输出到输入的功率比,计算如下:
附录 B:参考
标题 | 链接 |
---|---|
有用的定义和指标 | http://www.rane.com/note145.html |
Windows 中的麦克风阵列支持 | http://msdn.microsoft.com/library/windows/hardware/dn613960.aspx |
ITU-p.10 参考术语 | https://www.itu.int/rec/T-REC-P.10-200607-I/en |
3GPP 终端声学特征 | http://www.3gpp.org/DynaReport/26131.htm |
ETSI UMTS 语音电话服务终端声学测试规范
(3GPP TS 26.132 版本 11.4.0,第 11 版) |
http://www.etsi.org/deliver/etsi_ts/126100_126199/126132/11.04.00_60/ts_126132v110400p.pdf |
ETSI EG 202 396-1 | http://www.etsi.org/deliver/etsi_eg/202300_202399/20239601/01.02.02_60/eg_20239601v010202p.pdf |