STARAIGHT之 MulticueF0v14
创始人
2025-06-01 02:29:46
0

基频提取算法MulticueF0v14

STRAIGHT中提出的一种新的使用多个F0线索的基频提取算法。
Nearly Defect-free F0 Trajectory Extraction for Expressive Speech Modifications based on STRAIGHT

文章发表在2005InterSpeech上
在这里插入图片描述
新的F0提取器在处理表达性语音时特别有效,其中不规则的声带振动模式更容易被检测到。

使用方法

代码:

f0raw = MulticueF0v14(x,fs);
ap = exstraightAPind(x,fs,f0raw);n3sgram=exstraightspec(x,f0raw,fs);
sy = exstraightsynth(f0raw,n3sgram,ap,fs);

和STRAIGH里的原始的基频提取算法有什么区别?

提取的语音F0如图1所示。红线显示了由默认提取器提取的F0轨迹。蓝线显示了新的F0提取器提取的F0轨迹。新的F0提取器提供非零轨迹,即使在清音段或静音段。浊音/清音区分信息以二进制值vuv给出。检测到的浊音段在图1中用黑色框表示。默认的F0轨迹有几个小故障在发声部分。这些故障在新的F0轨迹中消失了。特别是在缺省方法下,800毫秒左右的故障会产生明显的语音再合成缺陷。下图显示了800ms左右的波形。从上到下依次显示了缺省再合成波形、新的再合成波形和原始波形。
在这里插入图片描述
对应代码:

[x,fs]=wavread(’../Sample/em001c1013a.wav’);% 新提取器
[f0raw,vuv,auxouts,prmouts]=MulticueF0v14(x,fs);
[ap,analysisParams]=exstraightAPind(x,fs,f0raw);
[n3sgram,prmP]=exstraightspec(x,f0raw.*vuv,fs);%默认提取器
[f0rawFixp,apFixp,analysisParams]=exstraightsource(x,fs);
[n3sgramFixp,prmP]=exstraightspec(x,f0rawFixp,fs);% 新,需vuv掩蔽
[sy,prmS] = exstraightsynth(f0raw.*vuv,n3sgram,ap,fs);%默认
[syFixp,prmS] = exstraightsynth(f0rawFixp,n3sgramFixp,apFixp,fs);

新的提取器默认参数:

F0searchLowerBound: 40
F0searchUpperBound: 800
F0frameUpdateInterval: 1
NofChannelsInOctave: 24
IFWindowStretch: 1.2000
DisplayPlots: 0
IFsmoothingLengthRelToFc: 1
IFminimumSmoothingLength: 5
IFexponentForNonlinearSum: 0.5000
IFnumberOfHarmonicForInitialEstimate: 1
TimeConstantForPowerCalculation: 10
ACtimeWindowLength: 60
ACnumberOfFrequencySegments: 8
ACfrequencyDomainWindowWidth: 2200
ACpowerExponentForNonlinearity: 0.5000
ACamplitudeCompensationInShortLag: 1.6000
ACexponentForACdistance: 4
AClagSmoothingLength: 1.0000e-04
ACtemporalSmoothingLength: 20
ThresholdForSilence: 3
ThresholdForVUV: 0.6000
WeightForAutocorrelationMap: 1
WeightForInstantaneousFqMap: 1
VUVthresholdOfAC1: -0.1000
SDforNormalizeMixingDistance: 0.3000
SDforTrackingNormalization: 0.2000
MaxumumPermissibleOctaveJump: 0.4000
ThresholdToStartSearch: 0.3000
ThresholdToQuitSearch: 0.3500
ThresholdForReliableRegion: 0.2500
WhoAmI: ’MulticueF0v14’

默认的提取器默认参数:
在Matlab命令窗口中输入prmF0并返回,显示如下信息。这些表示Matlab结构变量prmF0的字段名及其用于源信息提取的预设值。字段名被设计为自描述的。(字段名称中的IF表示瞬时频率。)

F0searchLowerBound: 40
F0searchUpperBound: 800
F0defaultWindowLength: 40
F0frameUpdateInterval: 1
NofChannelsInOctave: 24
IFWindowStretch: 1.2000
DisplayPlots: 0
IFsmoothingLengthRelToFc: 1
IFminimumSmoothingLength: 5
IFexponentForNonlinearSum: 0.5000
IFnumberOfHarmonicForInitialEstimate: 1
refineFftLength: 1024
refineTimeStretchingFactor: 1.1000
refineNumberofHarmonicComponent: 3
periodicityFrameUpdateInterval: 5
note: ’ ’

也可以使用其他F0提取器
有时,F0提取会失败。这种失败会导致重新合成的语音出现明显的退化。由于直谱分析的基音同步特性,在频谱估计中也引入了误差。为了缓解这个问题,您可以手动编辑F0信息,或者使用其他F0提取器。一旦固定的F0信息准备好并存储在一个变量中,例如在f0fix中,您可以使用以下函数计算非周期性指数。

ap=exstraightAPind(x,fs,f0fix);

相关内容

热门资讯

嘉兴男子与妻争吵,突然将行李箱... 近日,浙江嘉兴一对夫妻因琐事发生争吵,丈夫突然将装满衣物的行李箱从6楼扔到楼下,引发关注。11月22...
三地107家律所齐聚丰台,京津... 11月22日,京津冀律师驿站举办“党建业务深度融合 促进行业规范发展”主题活动,发布“百千万行动计划...
家装预付资金安全困局如何破解,... 家装预付资金安全困局如何破解 专家提出:建立“先验收后付款”装修资金存管制度 预交数万元甚至数十万元...
工行安康解放路支行积极开展《反... 为深入贯彻落实《国家金融监督管理总局安康监管分局办公室关于开展<反有组织犯罪法>宣传活动的通知》要求...
重庆公布育儿补贴制度实施方案 原标题:每孩每年3600元 重庆公布育儿补贴制度实施方案 11月21日,记者了解到,市卫生健康委、市...
十五运会组委会在深总结本届赛事... 深圳新闻网2025年11月22日讯(深圳报业集团记者 林炜航)11月21日,十五运会组委会在深圳市民...
中国军视网:日本妄言击沉福建舰... 本文转自【中国军视网】; 日本首相高市早苗发表涉台错误言论,公然挑战一个中国原则,甚至还有日本无知政...
重磅!东莞长安50万㎡产城发布... 在当下竞争激烈的市场环境中,中小企业如何突破成本压力,找到一片既能扎根成长又能眺望未来的理想栖息地?...
毕马威:政策、资本等多维着力 ... 由毕马威联合长三角G60科创走廊创新研究中心主办的“长三角高端装备新质领袖榜单发布仪式”于11月21...