语音质量评价方法之MOS

引言

在语音通信、语音增强、语音合成、语音转换、声音转换、语音克隆、语音修复等等领域,常常要对输出的语音进行评价。对语音的质量评价一般关注两个方面,即主观评价和客观评价。主观评价就是人凭借听觉感受对语音进行打分,客观评价比较广泛,有的是通过计算输出语音与目标语音之间的声学参数之间的差异来衡量输出语音的质量;有的是依靠仪器测试响度、频率响应、灵敏度等指标;有的依靠模型和算法,模拟人工打分。

  • 主观评价方法:MOS、CMOS、ABX(XAB)、Mushar、PESQ…
  • 客观评价方法:MCD、MSD 、MEL loss、F0 MSE、F0RMSE、F0 CC、E MSE、 DurMSE…

注:
1.这些评价方法并不都是相互独立的,如:F0 MSE、F0RMSE是计算最小均方误差和最小均方根误差。有一定的相似性。

2.这些评价方法在不同的领域评价又有一定的区别。评估的目的不同,所用的评估方法也不同。

3.同一个评价方法,在不同的领域也会演化出不同特色的评价,如MOS,在不同领域的侧重点不一样,,在MOS的基础上,又会演化出不同的MOS。

4.客观评价还可以分为有参考和无参考质量评估,这两者的主要判别依据在于该方法是否需要标准信号。有参考评估方法除了待评测信号,还需要一个音质优异的,可以认为没有损伤的参考信号。常见的有参考质量评估主要有ITU-T P.861 (MNB)、ITU-T P.862 (PESQ)、ITU-T P.863 (POLQA)、STOI和BSSEval。无参考评估方法则不需要参考信号,直接根据待评估信号,给出质量评分,无参考评估方法还可以分为基于信号、基于参数以及基于深度学习的质量评估方法。常见的基于信号的无参考质量评估包括ITU-T P.563和ANIQUE+,基于参数的方法有ITU-T G.107(E-Model)。近年来,深度学习也逐步应用到无参考质量评估中,如:AutoMOS、QualityNet、NISQA和MOSNet。

平均意见得分MOS

早期语音质量的评价方式是凭主观的,人们在打通电话之后通过人耳来感知语音质量的好坏。1996年国际ITU组织在ITU-T P.800(电话传输系统语音质量主观评价)和P.830(电话宽带和宽带数字语音编解码器主观评价方法)建议书开始制订相关的评测标准,即MOS(Mean Opinion Score)测试。

平均主观值MOS是广泛认同的语音质量标准。因此,无论采用何种方法,所有测量方法所得到的结果都必须对应到最终的平均主观值MOS。

官网:MOS terminology

MOS原理:
1.选择评价人:MOS评测需要选择一组评价人,且他们对语音质量有一定的专业知识和经验。
2.语音样本:根据评测需要,选择一组语音样本提供给评价者使用,这些样本通常是从真实通信中提取的,并覆盖各个不同的语音场景和内容。
3.评分过程:评价者听取每个语音样本,并给其打分(通常在1-5分之间),分数越高,表示语音质量越好。
4.MOS计算:对于每个语音样本,将所有人的评级进行平均,得到一个平均意见分数(Mean Opinion Score),作为语音质量的综合评价。

实验要求:
获取多样化且数量足够大的音频样本,以确保结果在统计上的显著,测评在具有特定声学特性的设备上进行,控制每个被试遵循同样的评估标准,并且确保每个被试的实验环境保持一致。

实验方法:
为了达到实验要求,可以通过两种方法获得足够精确的测评结果。
第一种是实验室方式,该方式让被试在实验室环境中进行测评,在试听过程中环境噪音必须低于35dB,测试语音数量至少保持30个以上,且覆盖该语种所有音素和音素组合,参与评测的被试应尽可能熟练掌握待测合成语音的语种,最好以合成语音的语种为母语。该方法的优点是测试要素容易控制,能够稳定保证实验环境达到测评要求;缺点则主要是需要被试在固定场所完成试听,人力成本高。
第二种是众包,也就是将任务发布到网络上,让具有条件的被试在任何地方进行测评。该方法主要优点是易于获得较为有效的评估结果;而缺点则体现在无法确保试听条件。

MOS的优点是能够从人的主观感受评价语音质量,这些主观评价能够反映出真实通信中的各种问题,然而,MOS评测受评价者个体差异和主观因素的影响较大,结果会在一定程度的主观性和不确定性。因此,在实际应用中,好需要结合客观评测方法来进行综合评价。

语音通信中的MOS

它是一种主观测试方法,将用户接听和感知语音质量的行为进行调研和量化,由不同的调查用户分别对原始标准语音和经过无线网传播后的衰退声音进行主观感受对比,评出MOS分值。国际电信联盟(International Telecommunication Union,ITU)将MOS评测规范化为ITU-T P.800,其中绝对等级评分(Absolute Category Rating,ACR)应用最为广泛,ACR的详细评估标准如下表所示。
在这里插入图片描述

与评测的人员对语音整体质量进行打分,分值范围为1-5分,分数越大表示语音质量最好。

一般MOS应为4或者更高,这可以被认为是比较好的语音质量,若MOS低于3,则表示大部分被测不太满意这个语音质量。

MOS测试一般要求:

  • 足够多样化的样本(即试听者和句子数量)以确保结果在统计上的显著;
  • 控制每个试听者的实验环境和设备保持一致;
  • 每个试听者遵循同样的评估标准。

评价规则
标准中的测试规则主要定义几点:

  1. 参考的标准音频和被测试音频间隔测试,连续重复4次;
  2. 音频源采用15~20s;
  3. 一次完整的测试时间不应超过15~20min;
  4. 测试成员:专家成员最少10人,非专家20人。(语音合成需至少40人)
  5. 如果预先定义评分值,则不需要对单个评分值做归一化,否则需要归一化处理。
  6. 评分可以采用5分或者7分制,也有嫌它不够精细的,用10分20分的。
  7. 所测语音材料要足够丰富,测试环境要尽量保持相同。

语音合成中的MOS

对于语音合成(文语转换TTS)系统,评估的工作有三个方面的任务和目的:

  • 对比不同的合成系统或算法,排出位次;
  • 对某个系统或算法进行诊断,指出其不足之处和问题所在;
  • 应用评价,确定某系统是否适应某种应用。

对于语音合成系统,评估的内容也包含三个方面,即合成语音的清晰度,可懂度,自然度:

  • 清晰度:针对语音中词以下的语音单元(音素、声母、韵母等)的清晰度;
  • 可懂度:针对语音中词以上的语言单元(如字、单词和句子等)的可懂程度;
  • 自然度:指的是更高一层的内容,如短语、句子、篇章等方面的整体自然水平。

合成语音质量的评估,不但与语音学、语言学相关、而且与心理学也有着密切的联系。

MOS不仅用于语音编码、通信设备的性能测试上,也可用于语音合成系统的整体评估,1994年国际ITU组织在ITU-T P.85(语音输出设备质量的主观性能评测方法),根据该建议草案,选择10-30句语音测试材料,从8个方面用5分制MOS进行打分。

  • 整体印象:整体感觉如何
  • 可接受度:你认为这种声音是否可以在某个应用领域上做信息服务?
  • 收听效果、注意力:需要多大的专心或注意力程度才能听懂语音
  • 理解难度:句子的意思是不是说清楚了?是否有些词不好理解
  • 清晰度:声音是不是清晰可辨?
  • 发音:发音中的规则让人不舒服的程度
  • 声音的悦耳程度:声音好听吗?
  • 讲话速度:速度快,慢,还是正常?

在P.85中虽然没有给出整体印象的5个等级的具体定义,但其他7个方面都给出了5个等级的具体说明。可以用计权平均的方法得到总体的满意度评价,也可以综合这几个方面给出一个主观的评价得分。

目前常见的语音合成MOS:语音合成MOS

附语音合成论文中计算MOS的脚本,其不仅强调MOS值,并且要求95%的置信区间内的分数:

# -*- coding: utf-8 -*-
# @FileName: caculate_MOS.py

import math
import numpy as np
import pandas as pd
from scipy.linalg import solve
from scipy.stats import t


def calc_mos(data_path: str):
    '''
    计算MOS,数据格式:MxN,M个句子,N个试听人,data_path为MOS得分文件,内容都是数字,为每个试听的得分
    :param data_path:
    :return:
    '''
    data = pd.read_csv(data_path)
    mu = np.mean(data.values)
    var_uw = (data.std(axis=1) ** 2).mean()
    var_su = (data.std(axis=0) ** 2).mean()
    mos_data = np.asarray([x for x in data.values.flatten() if not math.isnan(x)])
    var_swu = mos_data.std() ** 2

    x = np.asarray([[0, 1, 1], [1, 0, 1], [1, 1, 1]])
    y = np.asarray([var_uw, var_su, var_swu])
    [var_s, var_w, var_u] = solve(x, y)
    M = min(data.count(axis=0))
    N = min(data.count(axis=1))
    var_mu = var_s / M + var_w / N + var_u / (M * N)
    df = min(M, N) - 1  # 可以不减1
    t_interval = t.ppf(0.975, df, loc=0, scale=1)  # t分布的97.5%置信区间临界值
    interval = t_interval * np.sqrt(var_mu)
    print('{} 的MOS95%的置信区间为:{} +—{} '.format(data_path, round(float(mu), 3), round(interval, 3)))


if __name__ == '__main__':
    data_path = ''
    calc_mos(data_path)

语音增强中的MOS

在知网找了几篇语音增强的论文,看看其中的MOS评价方法。
大多数只选择客观的评价方法,主观的有不同的评价方法,选用MOS的有以下为例:

[1]王景润,郭海燕,王婷婷,等.基于可学习图比率掩码估计的图频域语音增强方法[J/OL].信号处理,1-12[2024-06-22].http://kns.cnki.net/kcms/detail/11.2406.TN.20240126.1647.010.html.

选用三个平均意见得分MOS,包括以下三个指标:反映语音清晰度的CSIG,较高的CSIG值表示较低的语音失真程度;用于评估背景噪声水平的CBAK,较高的CBAK值表示背景噪声较少;表示整体听觉体验质量的COVL,较高的COVL值表示更好的整体听觉体验。

[2]曹洁,王宸章,梁浩鹏,王乔,李晓旭. 基于双分支注意力U-Net的语音增强方法[J]. 计算机应用研究,2024,41(04):1112-1116.

本文采用的主观测试指标包含预测语音信号失真的复合度量(composite measure for predicting signal rating, CSIG)[23],即语音信号的平均意见分;预测背景噪声影响的复合度量(composite measure for predicting background noise, CBAK)[23],即背景噪声影响的平均意见分;预测整体语音质量的复合度量(composite measure for predicting overall processed speech quality, COVL)[23],即整体语音质量的平均意见分。上述指标均是数值越大,代表语音增强效果越好。

在正常语音增强用的是这些MOS评价指标,但在病理语音增强上,如电子喉语音增强领域,又会演变出新的MOS评价方法,为语音可接受度MOS。

语音转换中的MOS

同样,在知网找了几篇语音转换的论文,看看其中的MOS评价方法,一些只选择客观的评价方法,主观的有不同的评价方法,选用MOS的有以下为例:

[1]陈乐乐,张雄伟,孙蒙,等.融合梅尔谱增强与特征解耦的噪声鲁棒语音转换[J].声学学报,2023,48(05):1070-1080.

在这里插入图片描述

主观评价指标 MOS 评分检测是让测试人员对转换后的语音进行评分。通常采用五分制 (5 分: 优秀, 4 分: 良好, 3 分: 一般, 2 分: 差, 1 分: 很差), 分数越高表明转换方法性能越好, 转换语音与目标说话人的语音更为接近。
MOS 测试共有 20 名听众参与,其中 10 名听众学习过语音信号处理相关知识, 另外10 名听众则为随机选取。在每个测试场景中, 抽取2 名男性说话人和 2 名女说话人进行随机转换, 每人生成 10 条转换语音。20 名听众采用 MOS 评分对各个转换方法得出的转换语音与目标说话人语音的自然度及相似度进行评价。

这篇文章用MOS评估自然度和相似度。当然,有的文章自然度用MOS,相似度用ABX,,如:
[2]简志华,章子旭.采用表示分离自编码器的任意说话人语音转换[J].通信学报,2024,45(02):162-172.

MOS:
对于主观评价,实验分别选用反映语音质量的平均意见分(MOS, mean opinion score)[27]和反映个性相似度的 ABX 值对目标语音和转换后语音进行测试。MOS 意见分将语音质量分为 5 个等级,分别为1(很差)、2(差)、3(一般)、4(好)、5(很好),然后让测试者在实验环境下对转换语音进行打分,从而判断转换后语音的质量。本文在 F2F、F2M、M2M、M2F 这 4 种情形下进行 MOS 评测,每种情况随机挑选 30 条目标语音和相应的 30 条转换后语音,20 名受试者对这些语音进行打分,MOS 值越高,代表语音质量(自然度)越好,结果如图 7 所示。
在这里插入图片描述
从图 7 中 2 种算法的 MOS 值对比来看,在 4 种不同情形的语音转换下,RSAE-VC 的转换语音相较于 AGAIN-VC 的转换语音在流畅度、自然度等方面都要好。由于同性语音之间的特征参数具有更小的差异,AGAIN-VC 与 RSAE-VC 在进行同性别之间语音转换时,语音质量都要优于跨性别之间语音转换。

ABX:
实验选用 ABX 评测[28]方法对转换语音与目标语音的相似度进行测试。测试者对听到的语音做出判断,若接近目标语音则积 1 分,若接近源语音则积 0 分,最后将积分除以总的测试语音 数 目 计 算 出 ABX 测 试 分 值 。 本 节 分 别 对AGAIN-VC 与 RSAE-VC 在 4 种不同情况下转换的语音做了 ABX 测试,随机挑选每种情况下 30条目标语音和相应的 30 条转换后语音,让 20 名受试者打分,ABX 分值越高,代表语音相似度越高,结果如图 8 所示。
在这里插入图片描述
从图 8 的 ABX 相似度测试结果可以看出,RSAE-VC 转 换 语 音 与 目 标 语 音 的 相 似 度 比AGAIN-VC 好。由于跨性别之间的语音的特征参数差异更大,转换的程度更高,因此在跨性别转换时更加明显。而在同性之间的语音转换相似度上,RSAE-VC 也有较好的性能,说明 RSAE-VC 在低频到低频、高频到高频的语音转换上效果明显,即同频转换时表现更加优秀。

在子领域,如情感语音,又演化出不同的MOS标准。如:
[3]鲁超峰,陶冶,文连庆,等.融合大语言模型和预训练模型的少量语料说话人-情感语音转换方法[J/OL].计算机应用,1-10[2024-06-22].

MOS选择情感相似度MOS(EMOS),说话人相似度MOS(SMOS)
在这里插入图片描述

随机给 15 名听众每种感情的20 条转换语音,使用具有 95%置信区间。

  • 26
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# MOS-PESQ The project is a tool that can get MOS(PESQ) score for the voice. PESQ measure: ------------- Usage of the PESQ objective measure is as follows: [pesq_mos]=pesq(cleanfile.wav,enhanced.wav) where 'cleanfile.wav' contains the clean speech file and 'enhanced.wav' contains the enhanced file. Example: To run the PESQ objective measure with the example files provided, type in MATLAB: >> pesq('sp09.wav','enhanced_logmmse.wav') ans = 2.2557 Source code for the PESQ implementation is available from a CD-ROM included in the following book: Loizou, P. (2007) "Speech enhancement: Theory and Practice", CRC Press. COMPOSITE MEASURE: ----------------- Usage: [Csig,Cbak,Covl]=composite(cleanfile.wav,enhanced.wav) where 'Csig' is the predicted rating of speech distortion 'Cbak' is the predicted rating of background distortion 'Covl' is the predicted rating of overall quality. You may run example files included in the zip file. In MATLAB, type: >> [c,b,o]=composite('sp09.wav','enhanced_logmmse.wav') LLR=0.681368 SNRseg=3.991727 WSS=49.671978 PESQ=2.255732 c = 3.3050 b = 2.6160 o = 2.7133 where 'sp09.wav' is the clean file and 'enhanced_logmmse.wav' is the enhanced file. The predicted ratings for overall quality was 2.7133, for background was 2.61 and for signal distortion it was 3.3050. Operating steps: ----------------- >> ./matlab-PESQ/readme.txt Thank: ----------------- Any questions, please E_mail: kinglongbest@163.com/245051943@qq.com 操作步骤 1.将所录序列加载如当前工作路径,也可以按自己工作路径自行加载; 2.在read.m中修改参考序列,默认为ref.wav,16KHz采样; 3.利用wavdivide.m对所录多组序列文件进行拆分(支持多种采样频率),并按序保证至当前路径; 4.运行tongji.m计算PESQ_MOS得分并通过excel/txt输出至指定路径; NOTE: 对于步骤4,每次执行记得修改excel中输出列位置,如cellnames2=['B',num2str(k+1),':B',num2str(k+1)];, 指定写入B列,下次执行改为C列,以此类推; 其中ref_8k.wav为8KHz采样测试序列,ref.wav为16KHz,ref_3s.wav只是为方便测试在ref.wav语音前加3s静音;

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值