基于短时自相关函数法的基音周期检测

合集下载

语音信号的自相关基音周期检测

语音信号的自相关基音周期检测

语音信号的自相关基音周期检测语音信号是一种人类最基本的交流方式,它包含人声的频率、强度和时间三个方面的信息。

语音信号的自相关和基音周期是语音信号分析中的重要技术,对于语音信号分析、识别、合成等应用有着积极的作用。

一、语音信号的自相关语音信号的自相关是指语音信号的样本与样本之间的相关性。

在语音信号中,相邻的样本之间一般都具有相关性,该相关性可以通过计算信号的自相关函数获得。

自相关函数描述了语音信号在不同延迟情况下的相似程度,也就是说,自相关函数可以反映语音信号的周期特征和基音周期。

二、语音信号的基音周期检测语音信号的基音周期是指人语中相邻两个基音周期之间的时间长度。

基音周期检测是一项关键的语音信号分析技术,在音素识别、语音合成、语音编码等领域应用广泛。

基音周期检测方法主要有三种:自相关法、FFT法和LP法。

自相关法是指通过计算信号与自身在不同延迟下的相似度,判断语音信号的基音周期。

具体来说,自相关法首先将语音信号进行预加重和分帧处理,然后计算每一帧的自相关函数,最后采用模板匹配的方法找到最强的周期峰值,从而得到基音周期。

FFT法则是将分帧后的语音信号进行傅里叶变换,提取频谱信息,并通过在频域滑动一个窗口,检测周期性的能量最大值,确定基音周期数。

LP法是通过线性预测,将语音信号分解成具有不同频率的谐波分量,然后利用实验数据验证模型,得到基音周期。

总的来说,不同的基音周期检测方法有其各自的优缺点。

自相关法较为简单但在噪声环境下准确度不高,FFT法可以检测到非周期性的基音,但精度不如自相关法,LP法精度较高但计算复杂度较大。

作为一门复杂的反演问题,语音信号的自相关和基音周期检测一直是语音处理研究中的重要问题,目前的研究主要集中在解决语音信号分析和识别中的实际问题和应用,为提高语音合成、语音编码等方面的应用水平提供技术支持。

短时自相关函数法基音检测

短时自相关函数法基音检测
专业班级08级信息工程组别
成员
1、引言
人在发浊音时,气流通过声门使声带产生张弛振荡式振动,产生一股准周期脉冲气流,这一气流激励声道就产生浊音,又称有声语音,它携带着语音中的大部分能量。这种声带振动的频率称为基频,相应的周期就称为基音周期( Pitch) ,它由声带逐渐开启到面积最大(约占基音周期的50% )、逐渐关闭到完全闭合(约占基音周期的35% )、完全闭合(约占基音周期的15% )三部分组成。
xlabel('帧数(n)');ylabel('周期(ms)');title('各帧基音周期');
运行结果如下
图3
5、设计中遇到的问题与心得
(1)设计中遇到的问题:
由于每一帧做短时自相关时,Rm(k)开始的几个点的值比第一个周期的峰值还大,因此无法正常提取出第一个峰值对应的点。开始程序的运行结果如下:
图4
于是经过和同学讨论之后决定舍弃Rm开始几个值较大的点,于是运行结果就正常了
图5
(2)心得体验:
短时自相关函数法基音检测的主要原理是通过比较原始信号和它移位后的信号之间的类似性来确定基音周期,如果移位距离等于基音周期,那么两个信号具有最大类似性。基于自相关函数的算法是基音周期估计的常用方法,特别适用于噪声环境下的基音提取。自相关函数在基音周期处表现为峰值,相邻两个峰值之间的间隔即为一个基音周期。
但是短时自相关函数法也存在以下缺点:
倍频现象
通常情况下,基波分量往往不是最强的分量,丰富的谐波成分使语音信号的波形变得非常复杂,给基音检测带来了困难,经常发生基频估计结果为其实际基音频率的二次倍频或二次分频的情况。加之还有清浊混杂等情况,使基音检测成为一大难题。
如图5( a)是一帧语音信号,图4( b)是这帧语音信号的自相关函数,可以看出自相关函数在基音周期处表现为峰值,这些峰值点之间的间隔的平均值就是基音周期,如图6( b)所示可以看出自相关函数检测出的基音周期是原始信号基音周期的一半,这是由于谐波峰值点(箭头所示)的影响,这就是上述缺点中所说的倍频现象。

语音信号处理 实验报告用修正的短时自相关检测语音的基音周期

语音信号处理  实验报告用修正的短时自相关检测语音的基音周期

语音信号处理课程实验报告专业班级通信学号姓名指导教师实验名称 用修正的短时自相关检测语音的基音周期 同组人 专业班级通信 学号 姓名 成绩 一、实验目的 1.熟悉前一个实验程序以及中心削波的意义 2.用Matlab 实现用修正的短时自相关检测语音的基音周期。

3.分析修正的短时自相关在基音周期检测中的应用。

4.能够对程序进行重新编制。

二、实验原理 如果x(n)是一个周期为P 的信号,则其自相关函数也是周期为P 的信号,且在信号周期的整数倍处,自相关函数取最大值。

语音的浊音信号具有准周期性,其自相关函数在基音周期的整数倍处取最大值。

计算两相邻最大峰值间的距离,就可以估计出基音周期。

观察浊音信号的自相关函数图,其中真正反映基音周期的只是其中少数几个峰,而其余大多数峰都是由于声道的共振特性引起的。

因此为了突出反映基音周期的信息,同时压缩其他无关信息,减小运算量,有必要对语音信号进行适当预处理后再进行自相关计算以获得基音周期。

第一种方法是先对语音信号进行低通滤波,再进行自相关计算。

因为语音信号包含十分丰富的谐波分量,基音频率的范围分布在50~500Hz 左右,即使女高音升c 调最高也不会超过1kHz ,所以采用1kHz 的低通滤波器先对语音信号进行滤波,保留基音频率;再用2kHz 采样频率进行采样;最后用2~20ms 的滞后时间计算短时自相关,帧长取10~20ms ,即可估计出基音周期。

第二种方法是先对语音信号进行中心削波处理,再进行自相关计算。

本实验采用第二种方法。

且中心削波函数如式(3-1)所示: ……………………………………装………………………………………订…………………………………………线………………………………………()()0()()L L L L L L x x x x f x x x x x x x x ->⎧⎪=-≤≤⎨⎪+<⎩一般削波电平L x 取本帧语音最大幅度的60%~70%。

《语音信号处理》实验2-基音周期估计

《语音信号处理》实验2-基音周期估计

华南理工大学《语音信号处理》实验报告实验名称:基音周期估计姓名:学号:班级:10级电信5班日期:2013年5 月15日1.实验目的本次试验的目的是通过matlab编程,验证课本中基音周期估计的方法,本实验采用的方法是自相关法。

2. 实验原理1、基音周期基音是发浊音时声带震动所引起的周期性,而基音周期是指声带震动频率的倒数。

基音周期是语音信号的重要的参数之一,它描述语音激励源的一个重要特征,基音周期信息在多个领域有着广泛的应用,如语音识别、说话人识别、语音分析与综合以及低码率语音编码,发音系统疾病诊断、听觉残障者的语音指导等。

因为汉语是一种有调语言,基音的变化模式称为声调,它携带着非常重要的具有辨意作用的信息,有区别意义的功能,所以,基音的提取和估计对汉语更是一个十分重要的问题。

由于人的声道的易变性及其声道持征的因人而异,而基音周期的范围又很宽,而同—个人在不同情态下发音的基音周期也不同,加之基音周期还受到单词发音音调的影响,因而基音周期的精确检测实际上是一件比较困难的事情。

基音提取的主要困难反映在:①声门激励信号并不是一个完全周期的序列,在语音的头、尾部并不具有声带振动那样的周期性,有些清音和浊音的过渡帧是很难准确地判断是周期性还是非周期性的。

②声道共振峰有时会严重影响激励信号的谐波结构,所以,从语音信号中直接取出仅和声带振动有关的激励信号的信息并不容易。

③语音信号本身是准周期性的(即音调是有变化的),而且其波形的峰值点或过零点受共振峰的结构、噪声等的影响。

④基音周期变化范围大,从老年男性的50Hz到儿童和女性的450Hz,接近三个倍频程,给基音检测带来了一定的困难。

由于这些困难,所以迄今为止尚未找到一个完善的方法可以对于各类人群(包括男、女、儿童及不向语种)、各类应用领域和各种环境条件情况下都能获得满意的检测结果。

尽管基音检测有许多困难,但因为它的重要性,基音的检测提取一直是一个研究的课题,为此提出了各种各样的基音检测算法,如自相关函数(ACF)法、峰值提取算法(PPA)、平均幅度差函数(AMDF)法、并行处理技术、倒谱法、SIFT、谱图法、小波法等等。

基于短时自相关函数法的基音周期检测

基于短时自相关函数法的基音周期检测

项目总结报告—基音周期的检测1.项目整体框架1.1目标了解语音基音周期估计方法,掌握自相关法估计基音周期的原理。

1.2主要容本次基音周期的估算,我们选用的是短时自相关函数法,包括四个模块。

第一个模块为基音的端点检测,主要为了区分浊音和清音。

第二个模块为基音检测中的带通滤波器,主要为了减少共振峰的干扰。

第三个模块为短时自相关函数法做基音检测,主要为了计算出基音周期。

第四个模块为平滑处理,主要为了消除偏离值点。

2.模块一(端点检测)2.1主要负责工作利用能熵比法进行语音端点检测,区分语音帧的起点以与终点。

2.2具体实现方法2.2.1实验步骤1)取一段语音“tone4.wav”,该语音容是“妈妈,好吗,上马,骂人”,语音长度为3.5秒,采样率Fs=8000. 进行简单的去除直流分量,然后幅值归一化,时域波形如图1所示。

2)设置好分帧参数,帧长wlen=320,帧移inc=80,调用函数y=enframe(x,wlen,inc)';对语音信号x分帧处理。

最后帧数Fn=337。

3)设置端点检测门限值T1=0.05,使用能熵比法进行端点检测。

对分帧后的语音y 每一帧进行FFT运算,然后计算每一帧的能熵比值。

从而计算出语音y中的语音端点。

结果如图2所示。

2.2.2能熵比法设语音信号时域波形为,加窗分帧处理后得到的第i帧语音信号为,则FFT后表示为,其中下标i表示为第i帧,而k表示为第k条谱线。

该语音帧在频域中的短时能量为式中,N为FFT的长度,只去正频率部分。

而对于某一谱线k的能量谱为,则每个频率分量的归一化谱概率密度函数定义为该语音帧的短时谱熵定义为其中,只取正频率部分的谱熵,对应的能熵比表示为2.2.3代码编写在主程序中,执行的是[voiceseg,vosl,SF,Ef]=pitch_vad1(y,fn,T1);而调用了以下函数function [voiceseg,vosl,SF,Ef]=pitch_vad1(y,fn,T1,miniL)if nargin<4, miniL=10; endif size(y,2)~=fn, y=y'; end % 把y转换为每列数据表示一帧语音信号wlen=size(y,1); % 取得帧长for i=1:fnSp = abs(fft(y(:,i))); % FFT取幅值(:表示所有y(:,1)表示第一列)Sp = Sp(1:wlen/2+1); % 只取正频率部分Esum(i) = sum(Sp.*Sp); % 计算能量值(能量放入Esum 里)prob = Sp/(sum(Sp)); % 计算概率H(i) = -sum(prob.*log(prob+eps)); % 求谱熵值(eps表示很小的数,避免为零)(谱熵放入H里)endhindex=find(H<0.1);%(find返回非零元素,hindex放入,即谱熵值小于0.1的索引)H(hindex)=max(H);%(除去元音)Ef=sqrt(1 + abs(Esum./H)); % 计算能熵比(将每一帧的能熵比放入Ef里)Ef=Ef/max(Ef); % 归一化zindex=find(Ef>=T1); % 寻找Ef于T1的部分zseg=findSegment(zindex); % 给出端点检测各段的信息zsl=length(zseg); % 给出段数j=0;SF=zeros(1,fn);for k=1 : zsl % 在大于T1中剔除小于miniL 的部分if zseg(k).duration>=miniLj=j+1;in1=zseg(k).begin;in2=zseg(k).end;voiceseg(j).begin=in1;voiceseg(j).end=in2;voiceseg(j).duration=zseg(k).duration;SF(in1:in2)=1; % 设置SF(有话段的SF帧为1)endendvosl=length(voiceseg); % 有话段的段数2.2.4实验结果图1 “妈妈,好吗,上马,骂人”语音的时域波形图2 图中实线代表语音起始点,虚线代表语音终点2.2.5结果分析基音周期是语音信号的重要参数之一,它描述了语音激励源的一个重要特征。

基于自相关法的语音基音周期估计

基于自相关法的语音基音周期估计

综合实验报告自相关法及其变种学院电子与信息学院专业信息与信号处理学生姓名学生学号提交日期2013年7月10日一、实验目标1.1 了解语音基音周期估计方法,掌握自相关法估计基音周期的原理,分析其变种。

二、实验基础知识2.1 基音与基音周期估计人在发音时,根据声带是否震动可以将语音信号分为清音跟浊音两种。

浊音又称有声语言,携带者语言中大部分的能量,浊音在时域上呈现出明显的周期性;而清音类似于白噪声,没有明显的周期性。

发浊音时,气流通过声门使声带产生张弛震荡式振动,产生准周期的激励脉冲串。

这种声带振动的频率称为基音频率,相应的周期就成为基音周期。

基音周期的估计称谓基音检测,基音检测的最终目的是为了找出和声带振动频率完全一致或尽可能相吻合的轨迹曲线。

基因周期作为语音信号处理中描述激励源的重要参数之一,在语音合成、语音压缩编码、语音识别和说话人确认等领域都有着广泛而重要的问题,尤其对汉语更是如此。

汉语是一种有调语言,而基因周期的变化称为声调,声调对于汉语语音的理解极为重要。

因为在汉语的相互交谈中,不但要凭借不同的元音、辅音来辨别这些字词的意义,还需要从不同的声调来区别它,也就是说声调具有辨义作用;另外,汉语中存在着多音字现象,同一个字的不同的语气或不同的词义下具有不同的声调。

因此准确可靠地进行基音检测对汉语语音信号的处理显得尤为重要。

2.2 基音周期估计的现有方法到目前为止,基音检测的方法大致上可以分为三类:1)时域估计法,直接由语音波形来估计基音周期,常见的有:自相关法、并行处理法、平均幅度差法、数据减少法等;2)变换法,它是一种将语音信号变换到频域或者时域来估计基音周期的方法,首先利用同态分析方法将声道的影响消除,得到属于激励部分的信息,然后求取基音周期,最常用的就是倒谱法,这种方法的缺点就是算法比较复杂,但是基音估计的效果却很好;3)混合法,先提取信号声道模型参数,然后利用它对信号进行滤波,得到音源序列,最后再利用自相关法或者平均幅度差法求得基因音周期。

语音修正的短时自相关的实践资料

语音修正的短时自相关的实践资料

太原理工大学现代科技学院语音信号处理课程实验报告专业班级学号姓名指导教师实验名称 语音修正的短时自相关的实践 同组人 专业班级 学号 姓名 成绩实验二 语音修正的短时自相关的实践 一、实验目的 1、熟悉语言修正自相关的意义。

2、充分理解取不同窗长时的语言的修正自相关的变化情况。

3、熟悉Matlab 编程语言在语言信号处理中的作用。

4、能够实现程序的重新编制。

二、实验原理 对于语音来说,采用短时分析方法,语音短时自相关函数为∑--=+'++'+=kN m n m k w k m n x m w m n x k R 10)]()()][()([)(但是,在计算短时自相关时,窗选语音段为有限长度N ,而求和上限为,因此当增加时可用于计算的数据就越来越少了,从而导致增加时自相关函数的幅度减小。

为了解决这个问题,提出了语音修正的短时自相关。

修正的短时自相关函数,其定义如下:∑+∞-∞=--+-=m n k m n w k m x m n w m x k R )()()()()(21若令m n m '+=,代入(2-2)中得到∑+∞-∞='-'-+'+'-'+=m nk m w k m n x m w m n x k R )()()()()(ˆ21定义)()(ˆ)()(ˆ2211m w m wm w m w-=-=则有∑+∞-∞=++++=m nk m w k m n x m wm n x k R )(ˆ)()(ˆ)()(ˆ21⎩⎨⎧-≤≤=其他0101)(ˆ1N n m w⎩⎨⎧+-≤≤=其他k101)(ˆ2N n m w式中,K 为k 的最大值,即。

由式(2-5)可知要使为非零值,必须使,考虑到,可得,故式(2-4)可以写成:……………………………………装………………………………………订…………………………………………线………………………………………∑-=+++=1)()()(ˆN m nk m n x m n x k R三、实验要求 1、实验前自己用Cool Edit 音频编辑软件录制声音,并把它保存为.txt 文件。

基于MATLAB的语音信号的基音周期检测

基于MATLAB的语音信号的基音周期检测

基于MATLAB的语音信号的基音周期检测摘要:MATLAB是一种科学计算软件,专门以矩阵的形式处理数据。

MATLAB将要性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛的应用于科学计算、控制系统和信息处理等领域的分析、仿真和设计工作。

MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。

由于信号与系统课程的许多内容都是基于公式演算,而MATLAB 借助符号数学工具箱提供的符号运算功能,基本满足设计需要。

例如:解微分方程、傅里叶正反变换、拉普拉斯正反变换和Z正反变换等。

MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应仿真分析、信号的时域分析、信号的频谱分析、系统的S域分析和零极点图绘制等内容。

本次课程设计为语音信号的基音周期检测,采集语音信号,对语音信号进行处理,区分清音浊音,并通过对采样值进行滤波、分帧、求短时自相关函数,得到浊音的基音周期。

关键字:清音、浊音、基音周期、基音检测、自相关函数目录1 概述 (1)2 AMDF算法原理及实现 (1)2.1 AMDF算法源程序 (2)3 ACF算法原理及实现 (4)3.1 用短时平均能量进行清/浊音的判断 (4)3.2 自相关函数基音检测的原理 (6)3.3 算法实现及相关程序 (6)3.3.1 带通滤波 (7)3.3.2 取样与分帧 (7)3.3.3 短时能量分析 (8)3.3.4 自相关函数分析 (11)4 总结与心得体会 (13)参考文献 (13)1 概述基音周期检测也称为基频检测(Pitch Detection) ,它的目标是找出和声带振动频率完全一致的基音周期变化轨迹曲线,或者是尽量相吻合的轨迹曲线。

基音周期检测在语音信号的各个处理领域中,如语音分析与合成、有调语音的辨意、低速率语音压缩编码、说话人识别等都是至关重要的,它的准确性及实时性对系统起着非常关键的作用,影响着整个系统的性能。

基于ACF的基音检测算法

基于ACF的基音检测算法

信号的处理中具有重要作用.
目前 常 用 的 基 音 频 率 检 测 方 法 大 致 分 为 3 类 , 即波形估 计法 、 关 处 理 法 和变 换 法 . 中波 相 其 形 估计 法实 现原 理简 单 , 是 往 往 会 引入 较 大 的误 但 差; 变换 法算 法较 为 复 杂 , 增 加 实 际运 算 的难 度 ; 会 相 关处 理法 算 法 实 现 简 单 、 测 精 度 高 , 此 成 为 检 因 常用 的基音 周 期 的 检 测 方 法 . 于 此 , 文 拟 采 用 鉴 本
表征 了浊 音激 励 的本 质 特 征 , 还包 含 了汉 语 音 节 的
收稿 日期 :0 1 0 2 1 — 6—1 4
种基音 检测 算法 .
1 相关处 理法的原理实现
由于 自相 关 函数 抗 噪性 能较 强 , 别 适 于 噪 声 特
作者简介 : 郭淑婷 ( 92 ) 女 , 18 一 , 河南省新 乡市人 , 州轻 工业学院助教 , 郑 硕士 , 主要研 究方向为信 号与信 息处理
第2 6卷 第 5期 21年 1 01 0月
郑 州 轻 工 业 学 院 学 报 (自 然 科 学 版 )
JU N L F H N Z O NV R IYO IH D S R N ta Si c ) O R A E G H UU IE S F G T N U T Y( a r c ne OZ T L I ul e
p th d tci n o o a te ctto pe c ina a e c mp ee fe t ey. ic ee t fs n n x iai n s e h sg lc n b o ltd efc i l o v Ke r s: t h dee to ACF; r — r c s i g; o tp o e sn y wo d pi t cin; c p e p o e sn p s— r c s i g

语音信号的自相关基音周期检测

语音信号的自相关基音周期检测
Z HAO P n ig
(colfC m u r n fr ai ni e n , hn hiU ir yo l tcPw r S aga 2O9 , hn ) Sho o o pt dI o t nE gn r g Sa ga nv s e r oe, hn hi OOO C i ea n m o ei e  ̄ fE c i a
E ce c ft e a g r h i lo i o tn x e t o h u l y o e sg a r c s .P t h p r d i f i n y o lo t m sa s h i mp r t c p rt e q ai f h in lp e s i e i a e f t t o c o o e d l s u d i o ti e r u h t e s o — me a tc re a in f n t n,a d p l r y c rea in ft u l o n s b an d t o g h h r t u o o r lt u c i h h t i o o n o a t o r l t i o a d p a au si t n a e u e o r ie t e e c e c n t e p o e s o e a tc r eai n n e k v le et ma i r s d t as f in y i r c s ft u o o r lt . o h i h h o Ke r s a t c rea in;p t h p r d;p l r y c rea in y wo d : u o o l t o i eo c i o a t o l t i o
基音周期的估计称为基音周期检测, 基音周 期检测的最终 目的是得到与声音振动频率吻合较

基于自相关函数的藏语语音基音周期检测

基于自相关函数的藏语语音基音周期检测
【 ) C£ 一 , >C £
y)C(】{ 0 J C (= I ) 【 , x : ( ≤
( ) £ <- +c , ) - ( C£
() 5
2 自相 关 函数 基 音 周 期检 测 的基 本 原 理 , 对 于离 散 信 号 ^ 自相 关 函数 定 义为
式 中 为 削 波 电平 。xn是 原 始 语音 信 号 ,( 是 削波 后 的语 音 ( ) yn ) 信 号 。 见 经 中心 削 波 处 理 后 , 可 由声 道谐 振 特 性 产 生 的 大部 分 阻 ) ) ) () 1 尼振 荡 已被 削 去 . 留下 来 的是 包 含 基音 周期 的信 息 。 保 进 一 步分 析 可 知 . 自相 关 函数 提 取 基 音 周 期 时 , 心 的是 用 关 R 表征 了将 信 号 延迟 后 与 它 本 身 的相 似 性 。 1 k是 自相 关 的 延 迟 时 间 。可 以 证 明 , 自相关 函数 具 有 如下 性 质 。 时 间 .也 就 是 自相 关 函数 峰 值 出 现 的 位 置 ,而 峰 值 本身 无 关 紧 () 1自相 关 函数 具 有 周 期保 持 性 。 果 xn 周期 信 号 , 其 要 。这 样 就 可 以采 用 三 电 平 削 波 法 , 输入 输 出关 系 为 如 () 是 则 其 自相 关 数也 具 有 周 期 性 , 两 者 的 周期 相 同 。 且 自相 关 函 数 提 供 了 f,Ⅲ C . £ (> 估 计 信 号 周期 值 的一 种 方 法 。 y ) C【 】 0In C ( = ’() ;{ ,( J £ x) () 6 I1( < C 一, ” 一 £ ) (1 号 延迟 后 其 自相 关 函数 保 持 不 变 。 即信 号 xn的 自相 2信 (1 关 函 数 与它 的延 迟 信 号 信 号 的 自相 关 函数 完 全相 同 。 经 三 电平 削 波后 , 自相关 函数 的计 算 极 为 简单 。用 y ) 削 波 ( 表示 n ( 白噪 声 的 自相 关 函数 具 有 原 点 集 中 性 。 自相 关 函数 用 于 器 的输 出 . 3 ) 则短 时 自相 关 函数 为 基 音 周 期检 测 时 具 有 一 定 的抗 噪性 尺() 】=∑ 【(+ )’ ) 玎 m+ )’ +} ,、 | } 玎 mw m】 (+ w m |】 1 ( 【 ( 】 ) 由语 音 信 号产 生 的数 字 模 型 可 知 .浊 音 是 由声 门处 形 成 的 脉 冲 串激 励 声 道 产 生 的 .浊音 等 于 脉 冲 串与 声 道 单 位 冲激 响 应 如果 短 时 窗 是矩 形 窗 . 上式 变 为 则 Ⅳ 一1 一k 的卷积。 由于 激 励 源 是 准 周期 性 的 . 因而 语 音 信 号 也 呈 现 准 周 期 尺 () ∑ yn m 玎 m+ ) | = 】 } ( + )( + k ,、 Q 性 , 重 复 频 率取 决 于 激 励 源 的频 率 ( 其 基音 频 率 ) 但 是 由 于受 到 。 声 道 阻 尼振 荡 的 影 响 。 音 信 号 的 波形 结 构 表 现 得极 为 复 杂 . 浊 为 式 中 yn myn m+ ) 取 值 只 有 一 , l三 种 情 况 , 而 不 用 作 (+ )(+ k的 lO, 因 基 音 周 期 的 自动 检 测 带 来 了极 大 的 困难 。 此 . 以利 用 自相 关 乘 法 运算 . 为 可 这就 可 以大 大 节省 计 算 时 间 。 函 数 的 周期 保 持 性 , 间接 地 来 估 计浊 音 信 号 的 基 音 周 期 。 周 4 藏语 语 音 的 基 音周 期 检 测 来 在 . 期 的 整数 倍 处 。 的 自相 关 函数 可 以达 到极 大 值 . 而从 自相 关 它 从 图1 是从藏语语音目 龟 目 1中 气 截取的一段浊 函 数 的第 一 个 峰 值 的 位 置 可 以 间 接地 估 计 出基 音 周 期 .这 就 是 音 信 号 。采 样 频 率 f lk 。 s O Hz = 用 自相 关 函数 进 行 基 音 周 期 检测 的基 本 原 理 语 音 信 号是 非 平 稳 的 随 机 过 程 , 特性 是 随 时 间 变 化 的 . 其 但

基于自相关的语音基音周期检测方法研究

基于自相关的语音基音周期检测方法研究
2用 短 时 平均 能量 进 行 清 , 音 的 判 断是 基 音 检 测 的 第一 步 . 浊
为信号 xn和 Y() () n的互相关函数 。如果 Y()x()则互相关 函 n = n, 数 变 成 了 自相 关 函数 :
R( Ⅱ m)
X() n m) nx(+
式 中 , 为 信 号 的延 迟 点 数 。 m 自相 关 函 数反 映 了信 号 xf 和 自身 n 1 作 了一 段 延 迟之 后 的 x( m) 似 程 度 。 n 的相 + 自相 关 函 数 具 有 以下 的 性 质 : 果 序 列 xn 具 有 周 期 N , 如 () 。 则 其 自相关 函数 也 是 同 周期 的周 期 函 数 。 : x 】 ( 即 若 ( =xn+N1 n n , 则 R =Rm + 。 ㈤ ( 清 音 信 号 没 有 周期 性 ,它 的 自相 关 函 数 也 没 有 周 期 , ㈤ R 会 随着 1 的增 大 迅 速 衰 减 。浊 音 信 号 具 有 准 周 期 性 . 的 自相 1 1 它 关 函数 R 具 有 与 xn 同 的周 期 。浊 音 信 号 的 自相 关 函数 在 ㈤ (1 相 基 音 周 期 的 整数 倍 位 置 上 出现 峰 值 .而 清 音 信 号 的 自相 关 函数 没 有 明显 的 峰值 。 自相 关法 基 音 检 测 就 是 利用 R m 的这 一 性 质 f) 对 语 音 信 号 进行 基 音 检 测 的 。 于 浊音 信 号 。 要检 测 到 N 的位 对 只 置 , 可 以估 计 语音 信 号 的基 音周 期 值 。 就




2 0 年 第 1 期 08 1
基 于 自相 关 的语 音 基 音 周 期检 测 方 法研 究

matlab 基频提取

matlab 基频提取

matlab 基频提取Matlab是一种强大的数学软件,被广泛应用于科学计算、数据分析等领域。

在信号处理领域,基频提取是一个重要的任务,它可以帮助我们分析音频信号中的基本频率成分。

本文将介绍基频提取在Matlab中的应用方法。

我们需要明确什么是基频。

在音频信号中,基频即为最低频率的成分,也是声音的主要音高。

基频提取的目标就是从音频信号中准确地找到基频值。

在Matlab中,有多种方法可以实现基频提取。

其中,最常用的方法是基于自相关函数的算法。

自相关函数可以描述信号与其自身延迟后的版本之间的相关性。

基于自相关函数的基频提取算法主要包括自相关法、差值自相关法和短时自相关法。

我们来介绍自相关法。

该方法的基本思想是计算音频信号与其自身延迟后的版本之间的相似度。

具体步骤如下:1. 首先,将音频信号进行分帧处理,将长时间的信号拆分成多个短时段的小片段。

2. 对每个小片段进行自相关计算,得到自相关函数。

3. 在自相关函数中,寻找第一个极大值点,其对应的延迟就是基频周期。

4. 计算基频值,即音频信号的采样率除以基频周期。

另一种常用的方法是差值自相关法。

该方法的基本思想是计算音频信号与其自身延迟后的版本之间的差异度。

具体步骤如下:1. 同样地,对音频信号进行分帧处理,得到多个小片段。

2. 对每个小片段进行差值自相关计算,得到差值自相关函数。

3. 在差值自相关函数中,寻找第一个零交叉点,其对应的延迟就是基频周期。

4. 计算基频值,即音频信号的采样率除以基频周期。

我们来介绍短时自相关法。

该方法的基本思想是将音频信号分成多个短时段,分别计算每个短时段的基频值,然后通过插值等方法得到整个音频信号的基频值。

具体步骤如下:1. 将音频信号进行分帧处理,得到多个小片段。

2. 对每个小片段进行自相关计算,得到短时自相关函数。

3. 在短时自相关函数中,寻找第一个极大值点,其对应的延迟就是该短时段的基频周期。

4. 根据短时段的基频周期,通过插值等方法得到整个音频信号的基频值。

基于MATLAB的基音检测分析

基于MATLAB的基音检测分析

基于MATLAB 的基音检测分析骆娇艳,孙祥娥(长江大学电子信息学院,湖北荆州434000)摘要:基音检测作为语音信号处理的重要手段,被广泛地应用于语音的合成、编码及识别等一系列语音信号处理技术问题。

基音检测的准确性对于要求极高的语音识别、合成、分析、压缩编码等等都有重要的意义。

该文用自相关函数法、平均幅度差函数法和倒谱法这三种常用的基音检测方法,运用MATLAB 编程实现,对语音信号的基音周期轨迹图进行了比较分析,并由此得出和倒谱法进行语音信号基音的检测更为精确。

关键词:基音检测;MATLAB;自相关函数法;平均幅度差函数法;倒谱法中图分类号:TP311文献标识码:A文章编号:1009-3044(2014)18-4293-031 概述语音是人类相互之间进行信息交流的基本手段和重要载体,随着现代通信科学技术的迅速发展,尤其是计算机的日趋普及,对语音信号的处理发挥着越来越重要的作用。

汉语中的声调对于语音的理解很重要,同时相同的汉语在不同的语气或词义下均有不同的声调[1]。

因此,基音检测的准确性对于汉语语音信号的识别极为重要。

根据声带的震动情况,我们一般将语音信号分为清音和浊音两种[2]。

清音和普通的白噪声相似,尚未发现明显的规律性;而浊音就是俗称的有声语言,携带着语音的大部分能量,并且具有明显的周期性。

当人们在发出浊音的时候,气流往往会通过声门迫使声带产生规律性的震动,我们称之为激励脉冲串。

通过声带震动产生的频率被定义为:基音频率,同样地,就有了基音周期[3]。

通常所指的基音检测实际上就是一种对基音周期的估计,结果是希望能够找出与声带的振动频率相一致或较为吻合的轨迹曲线。

语音信号的处理包括四大类,分别为:语音合成、语音识别、语音编码以及语音识别[2]。

其中,准确提取语言信号参数对于整个的语音信号处理是至关重要的。

只有当某些可以表示语音信号本质特征的参数被准确地提出,这些参数才可以被利用进行有效的语音合成,语音识别以及语音的压缩解码处理,其中语音周期提取的准确性会直接影响到语音合成的真实性,因此在众多参数中就会显得尤为重要[4]。

基音周期的一种检测方法

基音周期的一种检测方法
维普资讯
第 6卷
第1 7期
20 0 6年 9月







Vo . No 1 S p 0 6 16 .7 e .2 0
17 —85 2 0 )72 7 -4 6 111 (0 6 1 -7 40
S in eT c n lg n n ie r g ce c e h o o y a d E g n ei n
部分。对中心削波后 的语音信 号计算 自相关 函数 ,
图 4 三电平削波 函数
这样在基音周期位置呈 现大 而尖的峰值 , 而其余 的
L【 ’ J
/ / /
/ C—
图 1 中心削波 函数 图 5 原始输 入的语音信 号
维普资讯

3 中心 削波法
中心削波法实质上是对信号做非线性处理 , 它
图 2 原始输入后 的语言信号
消除语音 信号 的低幅值 部分 , 保 留高 振幅 的峰 而 值, 从而能有利于信号的基音周期估计 。中心削波
函数如图 1 所示 , 工作过Leabharlann 见图 2 图 3 、 。它的数学

时间

y凡 c =c 凡 c =
形 图像 。E m i le i 13 cm - al l ma @ 6 .o :j l
( |) ∑ ( ) m+} m+} = m ( |。 i ) i )
维普资讯
1 7期
刘丽娟 , : 音周 期的一种检测方法 等 基
式中, 表示窗函数是从第 几点开始加入 。 凡 无论是对 随机 的语音 信号还 是对离散 的信 号
进行处理 , 只要是使用 自相关 函数对信 号进行周期

语音信号的自相关基音周期检测

语音信号的自相关基音周期检测





2011 年
( 2 ) 取样模块 从频率为 8 000 Hz 的语音信 号中截取 Length( 样点数 ) 长的个样点值, 一般取 样点数设计成帧长度的整数倍; ( 3 ) 分帧模块 主要将语音去样点分割为若 干个语音帧, 语音信号属于短时平稳信号, 一般认 为在 10 ~ 30 ms 内语音特性基本上是不变的, 或 者变化缓慢, 因此可从中截取一段进行频谱分析 , 在范例中取一帧信号的长度为 30 ms, 即每帧为 240 点; ( 4 ) 短时能量分析 对分割好的语音帧信号 进行清浊音的判断, 知道浊音变清音的时刻, 提取 浊音段; ( 5 ) 自相关分析 计算浊音段信号的自相关 函数, 根据自相关函数的周期性计算语音信号的 基音周期.
本文利用信号的自相关运算实现了两个语音 信号的基音周期检测. 在检测过程中采用极性相 关和峰值估计法, 一方面可降低相关计算中乘法 的计算量, 另一方面也降低了进行自相关运算的 点数, 从而提高了基因周期检测的效率 . 这种极性
( 编辑
吴寿林)
檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿 . [2001 - 12 - 12] . http: / / proach for Webbased CRM [J / OL] ( 上接第 296 页) 函数截取结果.
基音周期的估计称为基音周期检测, 基音周 期检测的最终目的是得到与声音振动频率吻合较 好的基音周期变化轨迹曲线. 在语音信号的处理 中只有准确捕获语音信号参数, 才能高效地识别 语音. 而在这些语音信号参数中, 基音周期提取的 精确性和效率直接影响到合成语音能否真实快速 地再现原始语音信号. 本文在基音周期检测一般 方法的基础上, 对自相关运算过程加以修改, 并给 出使用该种方法对两段语音信号进行基音周期检 测的结果.

两种基音周期检测方法

两种基音周期检测方法

基音周期中两种算法常用的基音周期检测方法-自相关函数法、倒谱法、平均幅度差函数法都属于非基于事件基音检测方法,都先将语音信号分为长度一定的语音帧,然后对每一帧语音求平均基音周期,它们的优点是比较简单,主要应用于只需要平均基音周期作为参数的语音编解码,语音识别等。

自相关函数具有很好的抗噪性,但易受半频、倍频错误影响。

平均幅度差函数只需加法、减法和取绝对值等计算,算法简单;它们在无背景噪声情况下可以精确地提取的语音基音周期,但在语音环境较恶劣、信噪比较低时,检测的结果很差,难以让人满意。

2.1 基于短时自相关函数的方法能量有限的语音信号}{()s n 的短时自相关函数[10][11]定义为:10()[()()][()()]N n m R s n m w m s n m w m ττττ--==++++∑ (2.1)其中,τ为移位距离,()w m 是偶对称的窗函数。

短时自相关函数有以下重要性质:①如果}{()s n 是周期信号,周期是P ,则()R τ也是周期信号,且周期相同,即()()R R P ττ=+。

②当τ=0时,自相关函数具有最大值;当0,,2,3P P P τ=+++…处周期信号的自相关函数达到极大值。

③自相关函数是偶函数,即()()R R ττ=-。

短时自相关函数法基音检测的主要原理是利用短时自相关函数的第二条性质,通过比较原始信号和它移位后的信号之间的类似性来确定基音周期,如果移位距离等于基音周期,那么,两个信号具有最大类似性。

在实际采用短时自相关函数法进行基音检测时,使用一个窗函数,窗不动,语音信号移动,这是经典的短时自相关函数法。

窗口长度N 的选择至少要大于基音周期的两倍,N 越大,短时自相关函数波形的细节就越清楚,更有利于基音检测,但计算量较大,近年来由于高速数字信号处理器(DSP )的使用,从而使得这一算法简单有效,而不再采用结构复杂的快速傅里叶变换法、递归计算法等;N越小,误差越大,但计算量较小。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

项目总结报告—基音周期的检测1. 项目整体框架1.1目标了解语音基音周期估计方法,掌握自相关法估计基音周期的原理。

1.2主要内容本次基音周期的估算,我们选用的是短时自相关函数法,包括四个模块。

第一个模块为基音的端点检测,主要为了区分浊音和清音。

第二个模块为基音检测中的带通滤波器,主要为了减少共振峰的干扰。

第三个模块为短时自相关函数法做基音检测,主要为了计算出基音周期。

第四个模块为平滑处理,主要为了消除偏离值点。

2. 模块一(端点检测)2.1主要负责工作利用能熵比法进行语音端点检测,区分语音帧的起点以及终点。

2.2具体实现方法2.2.1实验步骤1)取一段语音“tone4.wav ”,该语音内容是“妈妈,好吗,上马,骂人”,语音长度为3.5秒,采样率Fs=8000. 进行简单的去除直流分量,然后幅值归一化,时域波形如图1所示。

2)设置好分帧参数,帧长wlen=320,帧移inc=80,调用函数y=enframe(x,wlen,inc)';对语音信号x 分帧处理。

最后帧数Fn=337。

3)设置端点检测门限值T1=0.05,使用能熵比法进行端点检测。

对分帧后的语音y 每一帧进行FFT 运算,然后计算每一帧的能熵比值。

从而计算出语音y 中的语音端点。

结果如图2所示。

2.2.2能熵比法设语音信号时域波形为X(n),加窗分帧处理后得到的第i 帧语音信号为Xi(m),则FFT 后表示为Xi(k),其中下标i 表示为第i 帧,而k 表示为第k 条谱线。

该语音帧在频域中的短时能量为Ei =∑Xi (k )∗n 2k=0Xi(k)式中,N 为FFT 的长度,只去正频率部分。

而对于某一谱线k的能量谱为Yi(k)=Xi(k)∗Xi(k),则每个频率分量的归一化谱概率密度函数定义为P i(k)=Y i(k)∑Y i(l)N/2l=0=Y i(k)E ik=0,1,…,N−1该语音帧的短时谱熵定义为H i=−∑P i(k)logP i(k)N/2k=0其中,只取正频率部分的谱熵,对应的能熵比表示为EEF i=√1+|E i/H i|2.2.3代码编写在主程序中,执行的是[voiceseg,vosl,SF,Ef]=pitch_vad1(y,fn,T1);而调用了以下函数function [voiceseg,vosl,SF,Ef]=pitch_vad1(y,fn,T1,miniL)if nargin<4, miniL=10; endif size(y,2)~=fn, y=y'; end % 把y转换为每列数据表示一帧语音信号wlen=size(y,1); % 取得帧长for i=1:fnSp = abs(fft(y(:,i))); % FFT取幅值(:表示所有y(:,1)表示第一列)Sp = Sp(1:wlen/2+1); % 只取正频率部分Esum(i) = sum(Sp.*Sp); % 计算能量值(能量放入Esum 里)prob = Sp/(sum(Sp)); % 计算概率H(i) = -sum(prob.*log(prob+eps)); % 求谱熵值(eps表示很小的数,避免为零)(谱熵放入H里)endhindex=find(H<0.1);%(find返回非零元素,hindex放入,即谱熵值小于0.1的索引)H(hindex)=max(H);%(除去元音)Ef=sqrt(1 + abs(Esum./H)); % 计算能熵比(将每一帧的能熵比放入Ef里)Ef=Ef/max(Ef); % 归一化zindex=find(Ef>=T1); % 寻找Ef中大于T1的部分zseg=findSegment(zindex); % 给出端点检测各段的信息zsl=length(zseg); % 给出段数j=0;SF=zeros(1,fn);for k=1 : zsl % 在大于T1中剔除小于miniL 的部分if zseg(k).duration>=miniLj=j+1;in1=zseg(k).begin;in2=zseg(k).end;voiceseg(j).begin=in1;voiceseg(j).end=in2;voiceseg(j).duration=zseg(k).duration;SF(in1:in2)=1; % 设置SF(有话段的SF帧为1)endendvosl=length(voiceseg); % 有话段的段数2.2.4实验结果图1 “妈妈,好吗,上马,骂人”语音的时域波形图2 图中实线代表语音起始点,虚线代表语音终点2.2.5结果分析基音周期是语音信号的重要参数之一,它描述了语音激励源的一个重要特征。

语音的头、尾部并不能具有声带振动那样的周期性,也就是检测不到相应的基音周期。

如果要进行基音周期的计算,首要的必然是检测语音端点,将有话段从整段语音中分离出来,才能开始对语音的基音周期进行计算.利用能熵比法检测语音端点后,该语音段可分为四段,每段的起点以及终点如图二所示.2.3总结语音的预处理是非常关键的一环,做好这个实验的关键在于理解matlab语句的作用,录入语音信号,设定好参数,进行分帧处理,并通过能熵值的大小标比较,确定好语音信号的端点。

通过这次的检测,我了解了Matlab函数库非常的多,理解起来需要查阅很多公式以及资料,非常的耗时。

做实验务必讲究认真专心,一步一个脚印的去做好每一个环节就可以了,与队友的配合以及沟通也是重要的一环,及时了解队友的情况,做好衔接。

3.模块二(基音检测中的带通滤波器)3.1主要负责工作用带通滤波器减少共振峰的干扰。

3.2具体实现方法3.2.1算法原理在使用相关法和AMDF法的基音检测之前常用到低通滤波器和带通滤波器,其主要目的是减少共振峰的干扰。

在文献中作者选用了500Hz作为滤波器的上限频率,并指出选择截止频率高不利于减少噪声和共振峰的影响。

所以在本书的基音检测中的预滤波器选择的带宽为60~500Hz,高频截止频率选择500Hz,是因为基频区间的高端就在这个区域中,低频截止频率选择60Hz是为了减少工频和低频噪声的干扰。

我们选用IIR滤波器中的椭圆滤波器,因为IIR滤波器的运算量比FIR少,当然IIR 滤波器会带来延迟,也就是相位的变化,但语音信号是对相位不敏感的信号;又选用椭圆滤波器,因为它在经典滤波器设计中相同过渡带和带宽条件下,需要的阶数比较小。

在阶数相同的条件下,椭圆滤波器相比于其他类型的滤波器,能获得更窄的过渡带宽和较小的阻带波动, 就这点而言, 椭圆滤波器是最优的。

滤波器的要求为采样频率8000Hz,通带是60~500Hz,通带波纹为1dB,阻带分别为30Hz和2000Hz,阻带衰减为40dB。

3.2.2代码编写%% pr8_1_1clear all; clc; close all;fs=8000; fs2=fs/2; % 采样频率Wp=[60 500]/fs2; % 滤波器通带Ws=[20 2000]/fs2; % 滤波器阻带Rp=1; Rs=40; % 通带的波纹和阻带的衰减[n,Wn]=ellipord(Wp,Ws,Rp,Rs); % 计算滤波器的阶数[b,a]=ellip(n,Rp,Rs,Wn); % 计算滤波器的系数fprintf('b=%5.6f %5.6f %5.6f %5.6f %5.6f %5.6f %5.6f\n',b)fprintf('a=%5.6f %5.6f %5.6f %5.6f %5.6f %5.6f %5.6f\n',a)[db, mag, pha, grd,w]=freqz_m(b,a); % 求取频率响应曲线plot(w/pi*fs/2,db,'k'); % 作图grid; ylim([-90 10]);xlabel('频率/Hz'); ylabel('幅值/dB');title('椭圆6阶带通滤波器频率响应曲线');3.2.3实验结果由程序计算出滤波器系数为:b=0.012280 -0.039508 0.042177 0.000000 -0.042177 0.039508 -0.012280a=1.000000 -5.527146 12.854342 -16.110307 11.479789 -4.4101790.713507实验结果图:图3 滤波前和后的语音信号3.2.4结果分析带通滤波器使原始信号变得更加平整,滤去了杂音,为基音检测减少干扰,使检测更加顺利进行。

3.3总结通过这次课程实践,我深刻体会到自己在课程理论方面的不足,MATLAB的应用也相当生疏。

在设计过程中,看不懂的东西很多,但是学会了通过上网搜查资料和自主从书本寻找知识。

实践中遇到许多问题,但是和同学分工合作与讨论让我学会了很多平常学不到的知识。

这次实践让我明白知识就像大海一样宽广,我们要像海绵吸水一样吸取有用的知识。

4.模块三(短时自相关函数法做基音检测)4.1主要负责工作在前面两个步骤之后用自相关函数法去实现基音周期的检测4.2具体实现方法4.2.1算法设语音信号的时间序列x(n),它的自相关函数定义为:R(k)=Σx(n)x(n-k),K是时间的延迟量。

短时自相关函数有以下重要性质:①如果信号x(n))具有周期性,周期是P,那么它的自相关函数R(k) 也具有周期性,而且周期与信号x(n)的周期性相同。

②当k=0时,短时自相关函数具有最大值,即在延迟量为0,±P,±2P,,,时,周期信号的自相关函数也达到最大值。

③短时自相关函数是偶函数,即R(k) =R(-k)。

短时自相关函数基因检测的主要原理大都是利用它的这些性质,通过比较原始信号和它的延迟后的信号之间的类似性质来确定基音周期。

如果延迟量等于基音周期,那么两个信号具有最大类似性,或是直接找出短时自相关函数的两个最大值间的距离,即为基音周期的初估值。

在用短时自相关函数检测基音是,常用归一化的短时自相关函数,表达式为 r(k)= R(k)/ R(0)以上性质②中已指出,k=0,R(0)为最大值。

所以r(k)的模值永远小于或等于1。

已知基音频率范围为60Hz~500Hz之间,采样率为fs时,则基音周期(样点值)范围在fs/500~fs/60之间,然后在这个范围之间寻找归一化相关函数的最大值,对应的延迟量就是基音周期。

4.2.2代码编写步骤①根据前面步骤所得分帧后的语音数组,对它进行处理,把它转换为每一列数据表示一阵语音信号,行数为总的帧长。

②对每一帧语音信号的基音周期进行初始化,让其为零保证清音段无基音周期。

相关文档
最新文档