唐 伟 张二华 张丽娜
(南京理工大学计算机科学与工程学院 南京 210094)
在某些多于一人说话的单声道混合语音分离场景,仅依靠将单人的语音信号从背景噪声中分离出来的技术是不能满足现实需求的,还需要研究准确将单人语音从多人说话的混合语音中提取出来的方法,本文尝试利用单人纯净语音各次谐波的频率采样点位置从双人语音的频谱中分离单人语音,为之后研究从单声道双人语音中分离清晰单人语音的方式提供分离效果对比的标准。
将单人语音从单声道的含噪语音中分离出来,主要依靠语音信号的特征是随时间变化的,但在一段较短的时间间隔内,语音信号保持平稳:在浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。由于浊音具有显著的谐波结构,同时在汉语中,仅依靠浊音就能辨别大多数汉语语音的语义,故本文只研究浊音的分离。
如何进行准确的单声道语音分离[1]是一个相当复杂的问题,在嘈杂的环境中,人能够有效地倾听感兴趣的声音,甚至只用一只耳朵也能很好地辨别并专注于某个人的声音,排除噪声的干扰[2]。1953年,英国科学家E.Cherry将该现象称为“鸡尾酒会”问题[3]。尽管目前人们对鸡尾酒会问题的机理还没有完全了解清楚,但通过一些听觉实验[4],揭示了听觉感知的一些线索。1990年,加拿大麦吉尔大学的Bregman提出了听觉场景分析(auditory scene analysis,ASA)理论[5],ASA理论将听觉感知声音的过程分为两个阶段,第一阶段是分段,将混合语音分解为一系列的听觉片段,每个听觉片段来自于同一个声源,每一个听觉片段都代表了一个重要的听觉事件。第二阶段是组合,通过组合把来自同一声源的各个听觉片段组合在一起,形成听觉感知流,人对声音的感知过程是对声音分量的组合过程。
该理论沿用了视觉场景分析的概念,并对听觉场景分析的一系列准则进行了归纳,ASA理论组合原则如图1所示。
图1 语音段的同时组合和时序组合示意图
ASA组合原则主要包括两点:时序组合原则与同时组合原则。
时序组合是指将来自同一个声源在不同时间产生的听觉片段按时间的先后顺序组合到一个声音流中,表现为图1中的A与B两组信号应该属于同一声源,其依据为
1)在时频平面上,距离越近的听觉片段越可能被组合为同一声源;
2)能够形成连续或平滑时间轨迹的成分倾向于组合成同一声源。
同时组合是将同一个声源在同一时间产生的不同频率的声音分量组合在一起,表现为图1中的B与C两组信号应该属于同一声源,其依据为
1)一组具有谐波关系的声音成分倾向于被组合在一起;
2)“同步开始”的频率成分倾向于组合在一起,“同步结束”的频率成分也被看作来自同一声源。
2006年美国俄亥俄州立大学的DeLiang Wang提出基于计算听觉场景分析(Computational Auditory Scene Analysis,CASA)[6~8]的语音分离已成为该领域的主流方法。
通常,分离单人语音信号主要依据为根据语音信号的短时平稳性,可将语音信号划分为一系列的时窗进行分析,在一个短时窗内语音信号是平稳的,一个时窗称为一帧。将语音信号采样序列划分为一系列长度为10ms~32ms的帧,分帧提取语音信号的短时特征。为了使帧与帧之间平滑过渡,保持其连续性,相邻帧之间需重合一部分,帧移即前一帧与后一帧的交叠部分。
与Hu和Wang检测基音的方法不同[9],考虑到语音的浊音部分具有准周期性,其频谱分布有规律,体现在倒谱域存在明显的峰值,本文利用倒谱域的峰值信息获取基音周期,再通过基音周期获取基音频率,之后依据浊音信号的谐波频率为基音频率的整数倍这一规律进行谐波拾取。重构时,对所得的频率信息进行反傅里叶变换,由于帧移的存在,还将同一基音周期轨迹段内的所有帧按语音帧的起始位置对齐后进行叠加,并按参与叠加的语音帧个数取均值,其重构过程如图2所示,最后所得信号即是要分离的单人语音信号。
图2 第k帧、第k+1帧等语音重构过程示意图
为了更好地研究语音分离技术,本文尝试绘制语音的语谱图与基音周期谱图,考虑到帧移越大,绘制效果越好,但计算量也越大,故进行绘制时,对采样率16000Hz的语音,统一以帧长512个采样点,帧移487个采样点的标准进行语谱图与基音周期谱图的绘制,确保一句完整的语音能显示在一幅屏幕范围内的同时,拥有最佳的绘制效果。
语谱图的绘制取语音信号进行单帧傅里叶变换后,将所得的振幅谱数据映射到灰度值0~255之间。
对第m帧语音信号x(n)进行短时傅里叶变换,得到短时频谱,其中N为帧长,如式(1)所示:
单帧振幅谱数据如下,其中*表示复共轭运算,如式(2)所示:
将单帧振幅谱数据垂直绘制(低频在下,高频在上),每帧相距25个采样点即可。
基音周期谱图的绘制则是取单帧的倒谱振幅谱数据进行映射,倒谱计算过程如式(3)所示:
基音周期谱图的绘制方法与语谱图相同。
女生语音“我不满六周岁”与男生语音“那年正月新春”语谱图与基音周期谱图如图3、图4所示,混合语音的语谱图与基音周期谱图如图5所示。
图3 女生语音“我不满六周岁”语谱图与基音周期谱图
图4 男生语音“那年正月新春”语谱图与基音周期谱图
图5 男女生混合语音语谱图与基音周期谱图
分析图3、图4可知,在单个说话人情况下,真实的基音周期轨迹同一时刻只会出现一条,故在图5所显示的双人混合语音中,应该会出现两个人完整的基音周期轨迹。
但图5显示,在某些时间段,部分单人的基音周期轨迹发生了消失,这将导致借助倒谱提取相应基音频率存在难度,再考虑到双人语音分离还涉及多个基音周期轨迹段之间分离语音的说话人匹配问题,故本文利用从单人语音信号中提取的基音频率及其谐波信息,到双人混合语音中分离重构对应的单人语音,以此作为双人语音分离后,语音重构效果的评判标准。
经由传统方法重构后发现,当某一帧处出现两者谐波频率点重合,此时若不对该频率成分幅值进行预处理,直接将该幅值作为两个声源的频率成分,会导致恢复后的单人语音中混杂着另一人的声音,即窜音现象。
窜音现象具体表现在:根据线性叠加原则,图5理论上会包含图3、图4大部分的谐波,而在进行谐波提取时,如果某个谐波位置的功率频谱值同时包含了两个人的谐波振幅信息,而进行语音重构时直接将此值带入计算,就会导致重构语音不清晰,不能完全将单人声音从双人语音中分离出来。
前人的消除窜音现象的方法是调整谐波的异常幅值,对混合语音进行傅里叶变换时,若将出现异常幅值的谐波进行振幅上的调整,再进行处理,会极大地消除窜音。
本文对此方法进行了实验,具体过程为:分别找到声源一与声源二的基音频率及其谐波成分,进行单人语音分离时使用混合语音的频谱数据,但当两个声源的基音频率及其谐波位置出现重合时,选取需要分离的声源的频谱数据作为此位置的频谱数据,之后直接对处理后的单帧数据进行逆傅里叶变换后,再按照图2所示过程进行重构,发现窜音现象得到抑制。
以图3中的女生“我不满六周岁”与图4中的男生“那年正月新春”的混合语音中分离男生语音的效果为例,语谱图与基音周期轨迹图如图6所示。
图6 调幅消除窜音法从双人语音中分离重构后的男生语音“那年正月新春”的语谱图与基音周期谱图
该方法消除窜音效果好,重构后的语音也较清晰,但修改幅值需要依靠异常幅值周围的正常幅值,实现上存在难度。实验证明,人耳对声音频率的初始相位不敏感,但对于不同时序上的相位连续性非常敏感,故本文尝试通过分离双人混合语音的频谱数据后,从相位角度进行语音重构。
现有的传统方法重构分离语音时,未考虑振幅和相位的分离、分配,即使考虑了振幅的平滑、分配,但相位难以分离。当两人混合语音中谐波的频率点重合时,混合相位主要反映振幅较强的语音的相位,可以采用另一种方法避开相位分离。
根据已知的单人谐波位置从采样率为16000HZ的双人混合语音中提取的数据帧长为N个采样点,帧移为N-T个采样点的振幅谱数据,先对单帧振幅谱数据按如下公式进行处理,其中第i帧用于实部变换的数值如式(4)所示:
用于虚部变换的数值如式(5)所示:
随后将实部与虚部进行反傅里叶变换并将同一基音周期轨迹内的所有帧按起始位置对齐后进行叠加,按图2所示方法进行重构。
本文进行了多组实验,以图3中的女生“我不满六周岁”与图4中的男生“那年正月新春”从混合语音中分离重构后的单人语音为例,对比两种方法分离重构的效果。
图7 传统方法从双人语音中分离重构后的女生语音“我不满六周岁”语谱图与基音周期谱图
可以从重构后的语谱图,基音周期谱图两个角度对比两种方法下的分离语音质量,首先对比语谱图发现,传统方法与新方法重构的单人语音的语谱图大体相同,考虑到新方法是对频谱的相位进行了调整,未改动频谱幅值,故语谱图相似存在合理性。
其次对比基音周期谱图,无论传统方法还是新方法,分离重构的单人语音都基本保留了原本单人语音的基音轨迹信息,反映在分离重构后的语音的基音轨迹与原本的基音轨迹基本一致。
图8 新方法从双人语音中分离重构后的女生语音“我不满六周岁”语谱图与基音周期谱图
图9 传统方法从双人语音中分离重构后的男生语音“那年正月新春”语谱图与基音周期谱图
但是两种方法的结果反映,男生声源的分离效果不如女生,且在分离男女生说的同一句话时,分离效果较差,以男生“我不满六周岁”与女生“我不满六周岁”从混合语音中分离重构的效果为例。
图10 新方法从双人语音中分离重构后的男生语音“那年正月新春”语谱图与基音周期谱图
图11 男生语音“我不满六周岁”语谱图与基音周期谱图
对比图12与图13,当一对男女说话人同时说一句话时,考虑到两段语音的的基音周期轨迹趋势大致相同,导致通过基音周期寻找的基音频率及其谐波存在着大量的重合。根据parseval定理[10~11],因为男生的基音频率较低,导致其基音频率及其相应谐波的提取间隔更短,相应地每条谐波的能量也更低;女生则正好相反,最终会因为频率掩蔽效应[12~13],导致女生声音的重构效果比男生声音的好。
图12 新方法从双人语音中分离重构后的男生语音“我不满六周岁”基音周期谱图
图13 新方法从双人语音中分离重构后的女生语音“我不满六周岁”基音周期谱图
其二为主观标准平均意见分方法,平均意见分(mean opinion scores,MOS)方法[14~15]是最常用的语音质量评估法,MOS评分标准如表1所示,实验参评人数为40且测评环境完全相同,尝试分别对两种方法重构后的分离语音进行打分,语音格式为“声源信息_语音段”,例如,“M001_XX”代表001号男生语音,内容为“XX”,将语音编号,其关系如表2所示。
表1 MOS评分标准
表2 语音段与编号的对应关系
重构语音的MOS评分表如表3所示,从MOS评分这一主观角度看,听觉实验结果理想,新方法重构后的单人语音保证了语音的语义[16],同时,从窜音消除的角度来讲,新方法优势明显,基本做到了窜音消除这一实验目标,最后,新方法恢复的语音存在着些许脉冲波,但基本不影响音质。
表3 分离的单人语音分离结果MOS评分
CASA研究在双人乃至多人说话场景下的语音分离研究还不足以达到实际应用的程度。本文尝试利用单人语音模板分离双人语音,为之后的单声道双人语音分离提供分离效果对比的标准。同时利用语谱图、基音周期谱图的绘制效果观察传统重构方式与新方法的异同,最后利用MOS评分对两种重构方法得到的语音进行打分,得出新方法比传统方法更有效消除窜音,并得到清晰的单人分离语音这一结论。但是若想做到不依靠先验的单人基音频率及谐波信息,还需解决双人混合语音中的某一声源的倒谱峰值信息被压制的问题,同时需要寻找新方法分离的语音中残留脉冲波这一问题的解决方案。