基音周期估计
- 格式:doc
- 大小:235.00 KB
- 文档页数:5
基于随机共振的基音周期估计方法
何朝霞;刘凯
【期刊名称】《电脑知识与技术》
【年(卷),期】2011(007)013
【摘要】基音周期估计是语音处理和分析的最基本步骤.无论是做语音信号处理,语音压缩,还是语音识别,都要用到基音周期这一重要参数.文章基于随机共振的理论,提出了一种新的估计基音周期的方法.
【总页数】2页(P3140-3141)
【作者】何朝霞;刘凯
【作者单位】长江大学工程技术学院,湖北荆州,434023;长江大学工程技术学院,湖北荆州,434023
【正文语种】中文
【中图分类】TP334
【相关文献】
1.基于FFT-ACF和候选值估计的基音周期提取方法 [J], 徐明;陈知困;黄云森
2.基于随机共振的微弱OFDM子载波数估计改进算法 [J], 张政;马金全;王学成
3.一种随机共振联合小波变换的符号速率估计方法 [J], 张政; 马金全
4.基于随机共振的基音周期估计方法 [J], 何朝霞; 刘凯
5.基于多普勒-随机共振技术的高精度阵形估计系统研究 [J], 王世闯;王晓林;庞玉红
因版权原因,仅展示原文概要,查看原文内容请购买。
本科毕业论文题目语音基音周期检测算法比较学院管理科学与工程学院专业电子信息工程班级 081信工(1)班学号 *********姓名周刚指导老师段凯宇讲师二〇一二年六月语音基音周期检测算法比较摘要基音周期作为语音信号处理中描述激励源的重要参数之一,广泛的应用于语音合成、语音编码和语音识别等语音信号处理等技术领域。
准确可靠的对基音周期进行检测将直接影响整个语音处理系统的性能。
常用的基音检测算法对于纯净语音信号都能达到较好的检测效果。
然而,实际当中的语音信号不可避免的会受到外界背景噪音的影响,使得这些检测算法的检测效果都不是很理想,为此本文用两种基本算法对语音信号滤波前后进行基音周期检测,在进行比较。
论文首先介绍了语音基音检测算法的研究背景极其重要意义。
其次对现有的基音检测算法进行了归纳和总结,并详细的介绍本文将用的两种基本基音检测算法的基本原理及实现。
最后在Matlab上对语音信号进行基音周期检测。
论文还完成了算法的程序设计,在Matlab7.0仿真环境下,对上诉算法进行仿真验证,并且在滤波前后做了对比实验。
实验结果表明,经过滤波的语音信号基音周期检测的更加准确。
关键词:基音检测;自相关函数法;平均幅度差函数法;基音轨迹AbstractPitch as in speech signal processing is one of the important parameters to describe the excitation source, widely used in speech synthesis, speech coding and speech recognition speech signal processing technology. Accurate pitch period detection will directly affect the performance of the speech processing system.Commonly used algorithm for pitch detection for clean speech signal to achieve good detection effect. However, the actual speech signal will be inevitably influenced by external effects of background noise, so the detection algorithm to detect the effect is not very ideal, the paper use two basic algorithms before and after filtering the speech signal pitch detection, in comparison.The thesis first introduces the research background of speech pitch detection algorithm is very important. Next to the existing algorithm for pitch detection are summarized, and a detailed introduction to this article will use the two kinds of basic pitch detection algorithm is the basic principle and realization. Finally in Matlab on speech signal pitch period detection.The paper also finished programming algorithm, in the Matlab7.0 simulation environment, the algorithm is validated by simulation, and the contrast experiments were done before and after filtering. The experimental results show that, after the filtering of the speech signal pitch period detection is more accurate.Keywords: pitch detection; autocorrelation function; the average magnitude difference function method; pitch contrail目录第1章绪论 (1)1.1 引言 (1)1.2 基音检测的定义和意义 (1)1.3 基音检测的研究现状 (2)1.4 论文的结构安排 (3)第2章基音检测的常用算法 (4)2.1 引言 (4)2.1常用的基音检测算法及原理 (4)2.2.1 自相关函数法 (4)2.2.2 平均幅度差函数法 (6)2.3本章小结 (7)第3章基于Matlab基因周期的检测 (9)3.1 语音文件的录制与读入 (9)3.2 语音信号的采样与分帧 (9)3.3 语音信号基音周期的检测 (11)3.3.1 短时自相关函数法检测基音周期 (11)3.3.2 短时平均幅度差函数法检测基音周期 (12)3.4 基音周期检测的后处理 (14)3.5 滤波后的基音周期检测 (15)3.6 本章小结 (18)第4章总结与展望 (19)参考文献 (20)致谢 (21)附录 (22)第1章绪论1.1引言语音是语言的声学表现是人类相互之间进行信息交流时所用的重要载体和基本手段,随着现代信息科学技术的飞速发展,尤其是计算机网络技术的日益普及和完善,是的语音信号处理技术发挥着越来越重要的作用。
专业班级组别成员实验内容:编程求解出各自声音信号的基音周期。
1 程序代码(或者软件流程图等)(1)function zhouqi=jiyinzhouqi(filename)%帧长和帧位移是重要的参数,位移是帧长的0~1/2%短时自相关分析%filename语音文件*.wav%zhouqi基音周期,以毫秒为单位表示[signal,fs]=wavread(filename); %用于得到声音文件的数据和采样率shift=0.02; %每次移动20毫秒shift=round(fs*shift); %帧移n1=fix(fs*0.01)+1; %分析起点0.01ms,帧长20msn2=fix(fs*0.03)+1;shift_count=fix((length(signal)-n1)/shift);value =zeros(1,shift_count); %存放每次移位后的帧的基音周期for ii=1:shift_count %分析次数if n2<length(signal) %防止溢出data=signal(n1:n2); %加窗,提取一帧数据N=n2-n1+1; %每一帧的长度R=zeros(1,N); %创建一个一行N列的矩阵for k=1:N-1 %求自相关序列for jj=1:N-kR(k)=R(k)+data(jj)*data(jj+k); %矩阵用于储存每次自相关的结果; endendvalue(ii)=find_maxn(R); %调用基音周期分析函数,求最大值所对应的位置,即基音周期n1=n1+shift; %移动帧,计算下一帧的基音周期n2=n2+shift;endendfigure(1)stem(value); %画出基因周期走势图axis([0 length(value) 0 1000])aver=mean(value); %基音周期的平均值,未去除野点value=value(logical(abs(value-aver)<=aver/5));%找出偏移均值超出均值的1/5的基音周期,将其去除len= length(value); %去除大野点后剩余的基音点数for jj=1:3:len/3 %中值平滑,滑动窗口宽度3,精度为中值1/4(剔除野点)average=(value(jj)+value(jj+1)+value(jj+2))/3;for kk=1:3if abs((value(jj-1+kk))-average)>average/4value(jj-1+kk)=0; %将野点置零,同时数组长度减一endendendvalue=value(( value~=0)); %出去所有野点后的基音周期数组len= length(value); %去除野点以后的基音点数figure(2)stem(value);axis([0 length(value) 0 max(value)])zhouqi=1000*sum(value)/len/fs; %求平均的基音周期,单位是毫秒(2) function nmax=find_maxn(r) %寻找峰值最大的n值及基音周期%r,自相关序列%maxn,为峰值最大的nzer=find(r==0); %找第一个零点如果存在jiaocha=0; %找第一近零点ii=1;while (jiaocha<=0)if(r(ii)>0 && r(ii+1)<0 && (ii+1)<length(r))jiaocha=ii;endii=ii+1;if ii==length(r) %没有找到符合要求的点jiaocha=1;endendif length(zer)>0 %检查是否存在零点if zer(1)<jiaocha %存在,则和jiaocha比较大小,用于祛除前点的对基音周期的查找带来的影响jiaocha=zer(1);endendr(1:jiaocha)=0; %祛除影响maxn=max(r); %找最大值temp=find(r==maxn); %返回第一个最大值nmax=temp(1);(3) function zhouqi=get_frq_frame(filename)%帧长和帧位移是重要的参数,位移是帧长的0~1/2%短时自相关分析%filename语音文件*.wav%zhouqi基音周期,以毫秒为单位表示[signal,fs]=wavread(filename);%用于得到声音文件的数据和采样率shift=0.02; %每次移动20毫秒shift=round(fs*shift); %帧移n1=fix(fs*0.01)+1; %分析起点0.01ms,帧长20msn2=fix(fs*0.03)+1;shift_count=fix((length(signal)-n1)/shift);value = zeros(1,shift_count); %存放每次移位后的帧的基音周期zhouqi = zeros(1,shift_count); %存放每次移位后的帧的基音周期for ii=1:shift_count %分析次数if n2<length(signal) %防止溢出data=signal(n1:n2); %加窗,提取一帧数据N=n2-n1+1; %每一帧的长度R=zeros(1,N);for k=1:N-1 %求自相关序列for jj=1:N-kR(k)=R(k)+data(jj)*data(jj+k);endendvalue(ii)=find_maxn(R); %调用基音周期分析函数,求最大值所对应的位置,即基音周期n1=n1+shift; %移动帧,计算下一帧的基音周期n2=n2+shift;zhouqi(ii) = 8000/value(ii);endendfor ii=1:length(zhouqi)if zhouqi(ii)==0zhouqi(ii) = [];endendplot(zhouqi);2 程序使用说明(1) function zhouqi=jiyinzhouqi(filename)① 函数基音周期是计算所采样的声音的平均基音周期的函数,函数使用加窗计算自相关函数的办法,通过帧移得到不同位置加窗信号的相关性,然后用矩阵R储存相对应的n2-n1+1个自相关值。
一种语音信号基音周期时域估计算法作者:吴树兴来源:《电脑知识与技术》2019年第22期摘要:在语音识别和语音合成中,基频周期的准确估计是一项重要的语音处理环节。
自相关函数法是一种适用于低信噪比下的非常有效的基音周期估计算法,这种算法需要对信号相关后的峰值位置进行准确估计。
本文提出了一种峰值点位置判别方法,它可以对时域语音信号相关后的峰值点位置进行准确判断,从而比较准确地估计出语音信号的基频周期,并且复杂性不高,易于实现。
关键词:语音合成;基频周期;时域;自相关函数法;峰值估计中图分类号:TP247; ; ;文献标识码:A文章编号:1009-3044(2019)22-0214-03开放科学(资源服务)标识码(OSID): <E:\知网文件\电脑\电脑22-24\22\6xs201922\Image\image1_2.jpeg>A Time Domain Estimation Algorithm for Speech Signal Pitch PeriodWU Shu-xing(Beijing Information Technology College, Beijing 100015, China)Abstract: In speech recognition and speech synthesis, accurate estimation of the fundamental frequency period is an important part of speech processing. The autocorrelation function method is a very effective pitch period estimation algorithm suitable for low SNR. This algorithm needs to accurately estimate the peak position after signal correlation. In this paper, a method for judging the peak position is proposed, which can accurately judge the position of the peak point after the correlation of the time domain speech signal, so as to estimate the fundamental frequency period of the speech signal more accurately, and the complexity is not high and easy to implement.Key words: speech synthesis; fundamental frequency; period time domain; autocorrelation function method; peak estimation在語音信号处理技术中,基频周期的估计是一个非常重要的环节[1-2]。
语音是语言的声学表现,语言是人类交流信息最自然、最有效、最方便的手段。
在高度信息化的今天,用现代手段研究语音处理技术,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。
语音处理的研究目标多种多样,所涉及的学科门类也是丰富多彩的,其中包括了语音和语言学、声学、心理学、认知科学、计算机、数理统计、信号处理、人工智能和模式识别等等,并且它始终与当前信息科学中最活跃的前沿学科,如神经网络理论、小波变换理论、模糊集理论、时频分布理论和混沌与分形理论等保持密切联系并共同发展着。
语音处理研究者常常从这些领域的进展中找到突破口,使语音处理技术研究取得突破性的进展,其研究成果具有重要的学术及应用价值。
语音信号处理主要包括语音识别、语音合成、语音压缩编码和语音增强等分支[1]。
语音识别技术是指计算机系统能够根据输入的语音识别出其代表的具体意义,进而完成相应的功能。
一般的方法是事先让用户朗读有一定数量文字、符号的文档,通过录音装置输入、存储到计算机,作为声音样本。
以后,当用户通过语音识别系统操作计算机时,用户的声音通过转换装置进入计算机内部,语音识别技术便将用户输入的声音与事先存储好的声音样本进行对比。
系统根据对比结果,输入一个它认为最“象”的声音样本序号,就可以知道用户刚才念的声音是什么意义,进而执行此命令。
因此通过语音识别技术,计算机可以“听”懂人类的语言。
语音合成是人机语声的一个重要组成部分,语音合成技术赋予机器“人工嘴巴”的功能,即解决让机器说话问题。
是将计算机自己产生的或外部输入的文字信息,比如文本文件内容、WORD文件内容等文字信息,按语音处理规则转换成语音信号输出,即使计算机流利地读出文字信息,使人们通过“听”就可以明白信息的内容。
也就是说,使计算机具有了“说”的能力,能够将信息“读”给人类听。
这种将文字转换成语音的技术称之为文语转换技术,简称TTS( Text to Speech)技术,也称为语音合成技术。
基音周期是语音压缩、合成以及识别中的重要参数,是语音信号处理中重要的一项,基音周期估计也因此成为大多数语音信号处理系统的重要组成部分。
基音估计(Pitch Es -timation )又称基音检测(Pitch Detection ),它在有调语音辨意、低速率语音编码、说话人识别等方面具有关键作用,基音检测的最终目标是找出和声带振动频率完全一致的基音周期变化轨迹曲线,若不可能,则找出尽量相吻合的轨迹曲线[1]。
基音周期估计一直是语音信号研究的重要课题,然而对此所提出的很多方法[2]都有其局限性。
由于语音信号是非平稳的时变信号,只有其中的浊音部分能够看作是准周期的,所以语音信号处理中通常采取短时处理技术。
本文首先分析一些传统基音检测函数的特性,并比较其优缺点,在此基础上,提出一种新的基音估计算法,该算法不仅可减小倍频和半频的误判,而且能大大提高计算速度。
1传统基音估计算法及其优缺点1.1自相关法(ACF )[3]语音信号经加窗后的信号为S n (n ),S n (n )的短时自相关函数为:R n (m )=N-m -1n =0ΣS n (n +m )S n (n )由于浊音是准周期信号,其最大值会周期性地出现,因此自相关函数实际上放大了其峰值。
对于大多数浊音,语音信号的自相关函数都会有一些周期出现的局部最大值,第1个局部最大值与起点之间的距离即为基音周期[4]。
清音的自相关函数则没有明显的峰值出现。
因此通过检测是否有峰值就可判断是清音还是浊音。
自相关法是检测基音周期的有效方法,但因为求取自相关函数需要进行大量乘法运算,因此计算时间长,不适合实时应用。
1.2平均幅度差法(AMDF )平均幅度差函数AMDF (Average Magnitude DifferenceFunction )的原理与ACF 法相似,都是将周期性出现的点放大,所不同的是AMDF 法求取的基音周期是第1个局部最小值与起点之间的距离。
一种基音周期估计方法
陈洪立
【期刊名称】《江西通信科技》
【年(卷),期】2004(000)002
【摘要】基音是语音信号中一个极为重要的参数.基音周期的估计在语音编码、语音合成和语音识别中有着广泛的应用,本文介绍了一种极为重要的SIFT(Simplified inverse filter tracking简化逆滤波跟踪)基音周期估计算法,并对该算法进行了仿真,仿真结果表明,SIFT基因周期估计算法具有较好的估计性能.
【总页数】3页(P31-33)
【作者】陈洪立
【作者单位】中国铁通萍乡分公司,江西,萍乡,337000
【正文语种】中文
【中图分类】TN9
【相关文献】
1.一种基于基音周期估计的音频水印算法 [J], 付永庆;孙滢
2.一种高性能汉语语音基音周期估计方法 [J], 李祖鹏;姚佩阳
3.一种改进的混合激励线性预测的基音周期估计算法 [J], 吕声;王炳锡
4.一种新的鲁棒基音周期估计算法 [J], 高戈;胡瑞敏;艾浩军;李德仁
5.一种语音信号基音周期时域估计算法 [J], 吴树兴
因版权原因,仅展示原文概要,查看原文内容请购买。
第34卷第l2期 2007年l2月 应 用 科 技
Applied Science and Technology Vo1.34.No.12
Dec.2O07
文章编号:1009—671X(2007)12—0004—04
一种基于基音周期估计的音频水印算法 付永庆,孙滢 (哈尔滨工程大学信息与通信工程学院,黑龙江哈尔滨150001) 摘要:提出了一种水印信号与载体信号均为语音的数字音频水印算法.主要由用混沌序列对音频水印加密, 基于载体信号基音周期估计确定水印嵌入位置和根据量化步长△确定水印嵌入强度等关键步骤所组成.仿真 结果表明.该算法不仅具有较好的透明性,而且也对叠加噪声、低通滤波、重新采样等攻击具有较好的鲁棒性. 关键词:音频水印;混沌加密;基音周期估计 中图分类号:TP37 文献标识码:A
An audio watermark algorithm based on pitch estimation FU Yong-qing,SUN Ying (College of Information and Communication Engineering,Harbin Engineering University,Harbin 150001,China)
Abstract:A digital audio watermarking algorithm is presented in which both watermarking signal and original signal are audio.In the method,the audio watermarking is encrypted using chaotic sequences,the embedding position is determined in accordance with pitch estimation of the speech signals,and the embedded watermarking intensity is determined according to the quantization step size.Simulation results show that the proposed watermarking scheme possesses perfect transparency and good robustness against general signal・・processing operations such as noise addi—- tion,low pass filtering,and re-sampling. Keywords:audio watermarking;chaotic encryption;pitch estimation
语音信号处理实验报告
实验二:语音信号的基音周期估计
学院:电子与信息学院
专业:信息工程
姓名
学号:
提交日期:2014.4.29
实验二:语音信号基音周期估计
1、 实验内容
从一段语音信号中估计出其基音周期。基音是指法浊音是声带振动所引起的
周期性,而基因周期是指声带振动频率的倒数。
2、 实验方法
尽管基音检测有许多困难,但因为它的重要性,基音的检测提取一直是一个
研究的课题,为此提出了各种各样的基音检测算法,如自相关函数(ACF)法、峰
值提取算法(PPA)、平均幅度差函数(AMDF)法、并行处理技术、倒谱法、SIFT、
谱图法、小波法等等。
2.1、短时自相关法
对于离散的语音信号x(n),它的自相关函数定义为:R(k)=Σx(n)x(n-k),
如果信号x(n))具有周期性,那么它的自相关函数也具有周期性,而且周期
与信号x(n)的周期性相同。自相关函数提供了一种获取周期信号周期的方法。
在周期信号周期的整数倍上,它的自相关函数可以达到最大值,因此可以不考虑
起始时间,而从自相关函数的第一个最大值的位置估计出信号的基音周期,这使
自相关函数成为信号基音周期估计的一种工具。
语音信号是非平稳的信号,所以对信号的处理都使用短时自相关函数。短时
自相关函数是在信号的第N个样本点附近用短时窗截取一段信号,做自相关计
算。短时自相关运算定义为下式:
10()()()NknnnmRkSmSmk
2.2、平均幅度差函数法
语音信号的短时平均幅度差函数Fn(k)定义为
10()|()()|NknnnmFkSmkSm
与短时自相关函数一样,对周期性的浊音一样,Fn(k)也呈现与浊音语音周期
一致的周期特性,不过不同的是Fn(k)在周期的各个整数倍点上具有是谷值特
性而不是峰值特性,因而通过Fn(k)的计算同样可以确定基音周期。
线性加权短时平均幅度差(W-AMDF)的定义:
101()|()()|1NknwnnmFkSmkSmNk
2.3、实验过程
2.3.1自相关法(ACF)
1、录取一段录音,采样率8K,单声道
2、用MATLAB的wavread函数把录音都进来并进行归一化处理
3、对语音信号进行预加重
4、对语音信号进行截止频率为1000Hz的低通滤波,然后进行分帧处理
5、对每帧语音进行三电平削波处理
6、对每帧分别计算短时自相关运算,去除每帧前十个点后再求最大值
7、利用最大值对应的序号N来确定基音的周期
2.3.2短时平均幅度差法(W-ADMF)
1、录取一段录音,采样率8K,单声道
2、用MATLAB的wavread函数把录音都进来并进行归一化处理
3、对语音信号进行预加重
4、对语音信号进行截止频率为1000Hz的低通滤波,然后进行分帧处理
5、对每帧语音进行三电平削波处理
6、对每帧分别计算线性加权短时平均幅度差运算,去除每帧前、后5个点后再
求最小值M1和第二最小值M2
7、利用abs(M2-M1)来确定基音的周期
3、实验结果
短时自相关法
(W-ADMF)短时平均幅度差法
4、实验分析
4.1结果分析
根据自相关法和平均幅度差两种方法的结果对比,提取出来的基音周期大小
有点差异,但是基本都相同。由此可知,用这两种方法估计基音周期还是可以的。
4.2实验感想
这次的基音周期估计实验感觉挺难的,首先上网找不到一些很成熟的方法来
计算基音周期。其次由于所录的语音周期性不强,基本看不出有周期性。语音经
过低通滤波后稍微有一点周期性,而且自相关值R(k)和短时平均幅度差F(k)
的周期性也不好,由此很难求出基音的周期。不过经过这次实验,自己解决问题
的能力提高很多。