您的当前位置:首页正文

基于LabVIEW的变声器设计

2021-07-18 来源:爱站旅游
导读基于LabVIEW的变声器设计


基于LabVIEW的变声器设计

摘 要:数字信号处理技术在语音信号的处理中具有十分重要的意义,是语音

变换的处理方法之一。基于在语音变换时的技术要求,本文介绍了一种在基音同步叠加(PSOLA)算法的前提下,结合重采样技术实现语音变调不变速的方法,在分析变换理论及具体算法的基础上,利用LabVIEW编程实现语音的多种频率变换以及男∕女声变换。

关键词:基音同步叠加(PSOLA)算法; 重采样; 频谱搬移; 语音转换

LabVIEW-based variable sound design

Abstract: Digital signal processing technology is of great significance in speech

signal processing, is one of the processing method of voice transformation. Based on the technical requirements in the voice change, this paper describes a synchronous overlap in pitch (PSOLA) algorithm premise resampling technique combining voice tone does not shift method, based on the analysis of specific algorithms transform theory and on the use of LabVIEW programming a variety of voice frequency conversion and male / female transformation.

Keyword: PSOLA; resampling; spectrum shifting; Voice conversion

0 引言

在音频信号处理中,将源说话人语音中的个性特征转换成目标说话人语音的个性特征的语音信号处理技术,称为语音变换技术。人的语音说话特征分为音段特性与超音段特性以及语言特性,音段特征包括谱包络,谱激励;超音段特性包括基频,时长,幅度[1]。

近几年来,语音信号处理技术在

实用化方面取得了很多突破性进展,例如,随着在对声学语音学统计模型的深入研究,像语音识别,基于语音段的建模方法等逐渐成为研究热点。在语音合成方面,基于基音同步叠加(PSOLA)算法的波形编辑和拼接技术得到广泛应用[2],PSOLA算法的优势在于能在不改变语音音段的音质的基础上,能改变体现语音自然度的韵律特征的变化,进而获得更高的清晰度。

语音技术的研究难在语音合成,基音同步叠加(PSOLA)就是最具有代表性的一种方法,它既能保持语音的音段特性,又能在拼接时调整它的基频,利用频谱变换函数处理这个频谱分布,得到变换频谱,最后利用傅立叶反变换将信号从频域转换到时域,就 能得到变速不变调的语音。本设计就强度和时长等超音段特性。本设计通过LabVIEW设计一个变声仪器,利用PSOLA算法与重采样技术结合,实现音频的变调不变速,以及多种频段变调。

1 变声原理

变声即实现音频的变调,进行频谱搬移,改变音频的频率[3]。为了实现变调不变速,可以先对信号进行变速不变调处理,再进行重采样,由于重采样能够同时改变语音的语速和音调,只要变调因子取值合适,就能使语速恢复正常,只有音调改变,即达到变调不变速的目的。为此,变声的首要过程就是对信号的变速不变调的处理。要实现语音的变速不变调有两种方法:一个是, 用窗口函数截取语音信号样本,用傅里叶变换将时域信号转换到频域,然后将信号的频率往低频段压缩,再用傅里叶反变换从频域转换到时域,最后进行重采样(主要是抽点),就可达到语音的变速不变调目的;另一个是,用傅里叶变换实现语音的压扩,即用傅里叶变换处理语音信号得到对应的频谱分布,然后

是利用第二个方法最终实现变声目的。实现变声的流程框图如图1所示:

语音信号X(n) 傅里叶变换 频谱分布 频谱变换函数处理 处理后的频谱 傅立叶逆变换 变速后的信号 重采样 变声语音信号

图1 变声流程图 2 基音同步叠加(PSOLA)算法

PSOLA算法是利用短时傅里叶变

换重构信号的叠接相加法,分为三个部分:基音同步分析,基音同步修改和基音同步合成[4]。

2.1 基音同步分析

设采集的音频信号为X(n),选择合适的时窗分析窗口hm(n)对原始合成单元做加窗处理,得到一组短时信号xm(n)

xm(n)hm(tmn)X(n) (1)

式(1)中,tm为基音标注点,hm(n)一般采用Hamming窗,窗长大于原始信号的一个基音周期,因此窗间有重叠,窗长一般取原始信号基音周期的2~4倍,于是有,

hm(n)h(n)(np) (2)

式(2)中,h(n)为归一化窗长,为窗

覆盖基音周期数的比例系数,p为基

音周期。通常情况下,取2,能够使合成简化。若要提高基频,令p取为原始分析基音周期;若要降低基频,令p取为合成基音周期,这样能够使 得合成简化。

2.2 基音同步修改

基音同步修改分为两个方向,一个是在频域内对信号进行音高的修改,另一个是在时域内对原始拼接单

元进行时长的修改。具体地说,对语音基频的修改是通过对合成单元标记间隔的增加,减少进行的;对语音时长的修改是通过合成单元同步标记的插入,删除进行的。

首先,进行语音基频的修改:对短时分析信号xm(n)进行傅里叶变换,得到短时分析傅里叶变换Xm(n),即

N1Xm(n)Xm(ej2nN)xm(n)ej2nN (3)

n0其中 (0nN1) 又有公式:

Xm(n)E(n)V(n) (4)

其中,E(n)为分析音段激励源信号频谱;V(n)为频谱的谱包络部分。然后,按照音高调整系数对音段激励源信号频谱E(n)进行拉伸或压缩,得到合成

激励源频谱E'(n).将E'(n)与原始频谱

的谱包络V(n)相乘得到短时合成傅立

叶频谱X'm(n):

X'm(n)E'(n)V(n) (5)

最后,进行语音时长的修改:首先对短时合成傅立叶频谱X'm(n)进行傅立叶逆变换,得到中间短时合成信号x'm(n)。然后对原始拼接单元时长进行修改,得到新的中间短时合成信号

x'p(n),这样,新的基音标注tp就取代

了前面中间短时合成信号的基音标注

tm,当时长调整系数为时,选择合适

的tm使之与tp最接近,则

x''p(n)xm(n).因此,合成轴的长度变为分析轴的倍,在保持基频不变的基础上,短时信号间的间隔不变,因而,短时信号的数量相应的改变为原来的倍。当时长调整系数<1时,则加快语音,需要去掉一些短时信号;当时长调整系数>1时,则放慢语速,需要重复一些短时信号。这样就可以得到与新合成信号基音标记同步的短时合成信号序列。

2.3 基音同步合成

采用合成信号谱与原始信号谱差异最小的最小平方叠加合成法,合成的信号为:

x(n)a2pxp(n)hp(tpn)/hp(tpn)pp (6) 其中,分母是时变单位化因子,hp(n)是合成窗序列,是窗之间时变叠加的能量补偿,aq是音强调整系数,是用来调整合成语音信号的强度,上式也可简化为:

x(n)a'pxp(n)/hp(tpn) (7)

pp式中的分母是时变的单位化因子,用来补偿相邻窗口叠加部分的能量损失。该因子在宽带条件下,当合成窗

长为合成基音周期的两倍时,该因子也为常数;在窄带条件下接近于常数。故上式可进一步简化为:

x(n)a'pxp(n) (8)

p3 重采样

音频信号X(n)的采样率为Fs,长度为m个采样点,对信号进行采样因子为P/Q倍的重采样后,信号的样本数就增大或减小了,对该采样过程分为以下三个步骤:

(1).在上采样过程中,对原信号相邻两点内插p1个零点,创建一个采样点为P(M1)1的信号Xu(n),当

n=1,2,...m时,

Xu(P(n1)1)X(n) 否则,X(n)=0.

(2).插值:Xu(n)和一个低通插值滤波

h(n)作卷积

Xj(n)Xu(n)h(n) . (3).在下采样过程中,对原信号每隔

Q1个点抽取一个点,创建一个有

Q点的信号Xq(n),当n1,2,...Q时,Xq(n)Xj(1Q(n1)),那么重采样

信号y(n)Xq(n).在插值算法中,通常采用线性插值。在重采样的过程中通常会用到窗函数来减少频谱泄

漏[5],加窗前后的频谱图如图2,3所示:

图2 加窗前的频谱图

图3 加窗后的频谱图

4 变声器设计

以LabVIEW为平台,对音频数据进行采集,在基因同步叠加算法的理论基础上,以加窗重采样为核心实现变声。变声器设计如图4,5所示:

图4 变声器设计前面板

图5 变声器设计程序框图

采样数据时,采样率为22050S/s,通道数为2,每采样比特数为16,采样数为10000,得到原始音频和变声后的时域波形图如图6,7所示:

图6 原始信号波形

图7 变声后的波形图

在本设计中加了对语音信号的滤波处理[6],滤波前后的波形图如图8,9所示:

[2] 黎子芬,谢晓方,林丽娜,刘剑锋.

基于TD-PSOLA算法的语音合成方法研究[J].海军航空工程学院学报,2008,1:101-104.

[3] 彭柏,许刚.利用频谱搬移控制语音

转换中的共振峰[J].语音技术,图8 滤波前的波形图

图9 滤波后的波形图

5 总结

本设计利用PSOLA算法和重采样技术,基于LabVIEW设计一个多频段的变声器,实现了音频信号的多频段的变声处理,改善了音频的清晰度,并实现了语速的同步,但仍然存在一些问题有待完善,比如声音的仿人程度不逼真,随着语音变换技术的深入研究和发展,基因同步叠加技术与重采样在LabVIEW平台上必将得到更加广泛的应用。

参 考 文 献:

[1] 罗小冬,裘雪红,刘凯.语音信号的基音标注算法[J].计算机与现代化,2003,1:3-5.

2007,31(1):39-43.

[4] 涂相华,蔡莲红.用于语音合成的

PSOLA算法简介[J].微型计算机,1996,16(4):5-9.

[5] 邓淼,王磊等编著.LabVIEW7.1测

试技术与仪器应用[M].北京:机械

工业出版社,2004,7:248-250. [6] 陈栋,崔秀华.虚拟仪器应用设计

[M].西安:西安电子科技大学出版社,2009,12:51-54.

因篇幅问题不能全部显示,请点此查看更多更全内容