本发明的目的如开始段所提出的是提供一种传输系统,其中准周 期信号对于可靠的音调检测无需是恒定的。
为此,本发明的特征在于音调检测器包括用于选择代表准周期信 号的辅助信号的音调周期部分的选择装置,用于通过对所述音调周 期部分和辅助信号施加一个相关函数来得到一个互相关值来搜索辅 助信号的至少其它音调周期的其它部分的搜索装置,以及,用于在 产生音调周期部分和在互相关值中具有一个峰值的其它音调周期的 其它部分的瞬间产生音调信息的装置。
本发明另一个优点是无需计算线性推算参数,从而使本发明的音 调检测器比
现有技术的音调检测器更简单。又一个优点是避免了在 一个音调周期中存在两个激励脉冲时发生的错误的音调检测。在这 方面,会出现在语音信号的一个音调周期中有规则地产生两个激励 瞬间的情况。在这种情况下,现有技术的用于搜索激励瞬间的音调 检测器会错误计算音调周期。由于本发明的音调检测器不搜索激励 瞬间,而是使特征辅助信号部分重复出现,所以,不会发生音调周 期的这种错误计算。
本发明的一个
实施例的特征在于特征辅助信号部分包括一个在 单位时间段上具有最大
能量的信号部分。
一种合适的特征辅助信号部分是在单位时间段上能量最大的辅 助信号部分。通过搜索最大工作能量函数值就可以简单发现这样一 种信号部分。通过对辅助信号进行由偶函数表述其运算的非线性运 算,并对这种运算的结果关于单位时间间隔进行积分,就可以计算 出工作能量函数值。合适的偶函数是f(x)=x2和f(x)=|x|。寻找特 征辅助信号部分的另一种方法是在单位时间段中搜索辅助信号的最 大值。总之,具有最大强度的辅助信号部分适合用作特征辅助信号 部分。
本发明另一个实施例的特征在于特征辅助信号部分的时间期限 小于或等于所出现的最简短的音调周期。
一种合适的特征辅助信号部分是一个音调周期或其有效部分。通 过取得长度最简短的音调周期的特征辅助信号部分,在绝大多数情 况下都能够发现一种合适的特征辅助信号部分。可以根据产生的音 调周期选择辅助信号部分的长度,以获得自适应系统。
本发明又一个实施例的特征在于搜索装置包括用于计算特征辅 助信号部分和辅助信号之间相关性,和用在相关函数中峰值的
位置 表示音调信息的相关装置。
一种搜索与特征辅助信号部分相对应的其它辅助信号部分的简 单方法是计算特征辅助信号部分和辅助信号之间的互相关函数。然 后,用互相关函数的最大值的位置表示音调信息。可以从互相关函 数的两个相邻最大值之间的时间差计算出音调周期。
本发明另一个实施例的特征在于音调检测器包括用于计算互相 关函数中波峰表面的装置,设置音调检测器用于从互相关函数与时 间的关系曲线的波峰表面获得音调信息。
实验表明特征辅助信号部分和辅助信号的互相关函数不仅具有 所需要的波峰,而且还具有宽度小于所需要波峰的不希望的副峰。 通过用具有和自相关函数中相对应的波峰表面成比例的幅值的脉冲 表示音调信息,在需要和不需要的波峰之间进行
鉴别就会变得更简 单了。通过用扩展表面值代替表面可以进一步简化鉴别。获得扩展 表面值的一种合适方法是用波峰表面乘以对应波峰的最大值。
可以看出,本发明不限于语言信号的音调检测,而是还可以用于 确定两个或更多信号分量之间的延迟。这类例子是多个源的分离, 这种情况可能发生在象在雷达系统中用于抑制背景噪声和形成射束 这样的系统中。在这种应用中,可能会发生准周期信号不会具有超 过两个周期的情况。
通过参照后面描述的实施例的说明,本发明的这些和其它方面会 是很清楚的。
附图说明
在附图中:
图1表示的是一种采用本发明的传输系统;
图2表示的是本发明的音调检测器的一个实施例;
图3表示的是各种可能会在图2所示的音调检测器中发生的信号
波形;和
图4表示的是用于根据本发明确定音调的可编程处理器的程序
流程图。
在图1所示的传输系统中,向发射器2施加一个数字语音信号S′ 〔n〕。在这个发射器2中,将语音信号S′〔n〕施加给编码器,其 中将语言信号S′〔n〕施加给音调检测器12和音调同步编码装置10。 将音调检测器12上以音调信息作为
输出信号的一个输出端与多路复 用处理器14的一个输入端和音调同步编码装置10的第一输入端相 连。音调同步编码装置10的一个输出端与多路复用处理器14的第 二输入端相连。多路复用处理器14的输出端与发射器2的输出端相 耦合。
发射器2的输出端通过通路4与接收器6的输入端相连。接收器 6的输入端与
信号分离器16的输入端相连。信号分离器的第一输出 端与音调同步
解码器18的第一输入端相连。信号分离器16上将音 调信息作为其输出
信号传输的第二输出端与音调同步解码器18的第 二输入端相连。音调同步解码器18上将再建语音信号作为其输出信 号传输的一个输出端与接收器6的输出端相连。
在图1所示的传输系统中,用音调检测器12从准周期语言信号 中获得音调信息。音调同步解码器10使用音调信息以减少编码信号 所必须的传输容量。音调同步解码器10的例子记录在由P.Hedelin 发表在Proceedings of the lnternational Conference of the IEEE, ASSP’84,San Diego,1984上的文章“A glottal LPC-vocoder”和 由W.B.Kleyn发表在IEEE Transactions on Speech and Audio processing,Val.1,No.4,October 1993上的文章“Encoding Speech Using Prototype Waveforms”中。
由多路复用处理器14将编码语音信号和音调信息组合成一个单 独的编码输出信号。这个编码输出信号由传输通路4传送给接收器 6。
在接收器6中,接收的信号被检测并被变换成
数字信号。这个数 字信号由信号分离器16分离成一个编码信号和一个代表音调信息的 信号。音调同步解码器18从编码信号和音调信息中得到再建语音信 号。这种再建语音信号在接收器6的输出端输出。
在图2所示的音调检测器中,将准周期信号S′〔n〕施加给低通
滤波器20。
低通滤波器20上将辅助信号S〔n〕作为其输出信号输 出的输出端与能量测量装置22的输入端、选择装置24的第一输入 端和包络
检波器30的输入端相连。
能量测量装置22上传输输出信号E〔n〕的输出端与选择装置24 的第二输入端相连。选择装置24上将特征辅助信号部分f〔n〕作为 其输出信号的输出端与此处由相关器28形成的搜索装置的第一输入 端相连。可控
放大器26上传输输出信号Sec〔n〕的输出端与相关器 28的第二输入端相连。包络检波器30上传输
控制信号ec〔n〕的输 出端与可控放大器26的控制端相连。可控放大器26和包络检波器 30一起形成幅度控制装置。
相关器28上传输输出信号Rf〔n〕的输出端与积分器32相连。 积分器32上传输输出信号A〔n〕的输出端与展开装置34的输入端 相连,同时,展开装置34上传输输出信号P〔n〕的输出端与检测器 36的输入端相连。在检测器36的输出端具有信号P′〔n〕形式的音 调信息。
为除去信号中
频率较高和对音调检测会有干扰的信号成分,用低 通滤波器20对由信号S′〔n〕数字表示的语音信号进行滤波。选择 低通滤波器20的截止频率,以使其超过可能的最高音调频率。在实 际中能够使用的已经得出的数值是600Hz。
对于N个取样长度的段,能量测量装置22计算取样长度为M的 辅助信号部分的工作能量函数。已证明,合适期限段是例如为40ms, 而对于工作能量函数,2ms的期间是合适的。采用8KHz的
采样频率, N等于320,M等于16。对于信号E〔n〕,可以写成:
特征辅助信号部分现在是工作能量函数E〔n〕最大的辅助信号部分。 如果假设对n=nm,E〔n〕最大,则特征辅助信号部分f〔n〕等于:
通过选择装置24并采用从E〔n〕计算出的值nm能够从信号S〔n〕 中得到这个辅助信号部分f〔n〕。相关器2 8计算出现在可控放大器 26输出端的幅度控制信号Sec〔n〕的互相函数Rsf〔n〕。对于这个 互相关函数Rsf〔n〕,下式成立:
(3)还可以写成:
在(3)和(4)中采用MAX函数以避免出现负值的Rsf〔n〕。当 搜索与特征辅助信号部分相对应的信号部分的时候,这些负的互相 关值一点也不重要。
由积分器32得到一个信号A〔n〕,信号A〔n〕是对属于互相关 函数Rsf〔n〕中各n值的波峰表面的度量。在互相关函数中的第K个 波峰可以表述为:
bk和ek表示自相关函数的第K个波峰的开始和结束。对于第K 个波峰的表面AK,下式成立:
属于ak的nk值是属于波峰Lk〔n〕的最大值mk的n值。这样,对于mk 下述成立:
mk=MAX{Lk[n]} (7)
用ak的最大值来度量表面A,以使数值A〔n〕小于或等于一。这样, 对于函数A〔n〕可用下式表示:
在(8)中,q是信号段中波峰的个数。将函数Rsf〔n〕变换成函数A 〔n〕会导致函数Rsf〔n〕不需要的副峰相对衰减,这是由于这些不 需要的脉冲不仅低,而且宽度还窄,所以使副波峰的表面显著小于 所需波峰的表面。
为进一步扩大所需波峰与不需要的副峰之间的差,展开装置34 进行非线性运算,其中A〔n〕的大值被放大超过A〔n〕的小值。这 可以通过例如用函数A〔n〕乘以mk的相应值来实现。这样对于展开 装置的输出信号P〔n〕,下式成立:
可以用对A〔n〕进行不同的非线性运算来代替(9)。
检测器36从信号P〔n〕中去除不需要的副脉冲。前一种选择可 以是去除彼此间隔小于2ms的最小的脉冲P〔n〕。基于音调周期小 于2ms的事实,这种方法是非常不可能的。后一种选择是通过去除 幅度小于前一个脉冲幅度的一定比例的脉冲来实现的。音调信息可 以用信号P′〔n〕来表示,而对于n的值,当产生音调脉冲时,信号 P′〔n〕具有第一逻辑值(“1”),而对于n的其它值,信号P′〔n〕 具有第二逻辑值(“0”)。
在图3中,曲线38表示的是准周期语言信号S′〔n〕与n的关系 曲线。曲线38清楚地表示了语音信号的(准)周期特性。曲线40 表示的是辅助信号S〔n〕与时间的关系曲线。这个信号除去了干扰 音调检测的高频分量。曲线42表示的是工作能量函数E〔n〕与n的 关系曲线的值。对于nmax,E〔n〕的值最大。在曲线44中,表示的 是特征辅助信号部分f〔n〕。这个特征辅助信号部分f〔n〕是在n=nmax 附近从S〔n〕中选取的。
曲线46表示的是互相关函数信号Rsf〔n〕与n的关系曲线。在 这个曲线中,所需的波峰和不需要的副峰都存在。在曲线48中,画 有表面测量A〔n〕与n的关系曲线。曲线48更加清楚地表示了所需 波峰与不需要波峰之间的区别。
在曲线50中,表示的是经信号A〔n〕的非线性运算获得的信号 P〔n〕与n的关系曲线。这里,所需脉冲与不需要脉冲之间的区别 更大。最后,曲线52表示了逻辑信号形式的音调信息,逻辑信号在 产生所需脉冲时的n值处的值为“1”。如上所述已去掉了不需要的 脉冲。
在图4所示的流程中,这些方框具有以下含义。
标号 名称 含义
60 START 程序开始。
62 INIT 所用变量初始化。
64 TAKE SEGM{S〔n〕} 存贮辅助信号的取样段。
66 VOI CED 检测辅助信号是否仍为浊
音。
68 CALCE〔n〕 计算存贮段的工作能量函
数。
70 EXTR f〔n〕 从辅助信号中选取特征辅助
信号部分。
72 CORR ENV. 从辅助信号中得出幅度控制
辅助信号。
74 CALC Rsf〔n〕 计算互相关函数Rsf〔n〕。
76 CALC A〔n〕 计算Rsf〔n〕中波峰的表面。
78 EXPAND 通过非线性运算由A〔n〕计算
信号P〔n〕。
80 DEL PEAKS 消除不需要的副峰。
82 CALCn1,n2 计算段中头两个音调脉冲的
位置n1和n2。
84 FIRST VOICED SEGMENT 检查相应的段是否是一部分
语音信号中的第一浊音段。
86 PITCHMARK ATn1,n2 对于n=n1和n=n2,使P〔n〕
的逻辑值等于“1”。
88 LPM:=n2 存贮最后标准的音调标记的
位置。
90 LPM:=LPM+n2-n1 计算和存贮新音调标记的位
置。
92 PITCHMARK AT LPM 对于n=LPM,使P′〔n〕的逻
辑值等于“1”。
94 TAKE SEGM{S〔n〕+n2-n1}取辅助信号的下一个取样
段。
在方框60和62中,如果有浊音语音信号程序就开始启动,而且 将所使用的变量设置为一个所需的初始值。在方框64中,存贮信号 S〔n〕的一个段。该段的长度值可以为20-40ms。
在方框66中,检查S〔n〕的段是否仍为浊音。如果信号不是浊 音,则在方框96停止程序。由程序产生语音信号是否浊音的信息(没 有示出)。
在方框68中,计算工作能量函数E〔n〕。这可以根据(1)来 实现。然后,在方框70中,选取特征辅助信号部分,这可以根据(2) 来实现。在步骤72中,计算幅度控制辅助信号Sec〔n〕。为此,先 计算辅助信号包络的范围Se〔n〕。这可以根据下式来实现:
在(10)中,i是工作变量,L是响应由(10)模拟的
过滤器的脉冲 的长度,h〔i〕是响应由(10)模拟的过滤器的脉冲。已证明适合 于由(10)模拟的过滤器的截止频率值是25Hz。L的一个合适值是 121。
根据下式由信号Se〔n〕计算幅度修正信号1c〔n〕:
借助(11),根据下式得出幅度控制辅助信号Sec〔n〕:
Sec[n]= S[n]·ec[n] (12) 应注意到,万一辅助信号幅度较低,幅值修正会以这样的方式放大 不需要的副峰,即,这些副峰会被作为需要的波峰来检测。为避免 这种情况,如果辅助信号的(平均)幅值下降到一个特定
阈值之下, 可以停止幅值修正。
在方框74中,计算相关函数Rsf〔n〕。这根据(3)或(4)来 实现。,然后,在方框76中,根据(8)计算信号A〔n〕,在方框 78中,根据(9)通过进行非线性运算计算信号P〔n〕。
在方框80中,从信号A〔n〕中去掉不需要的副脉冲。这可以用 已经描述过的方式来实现。
在方框82中,计算当前段的信号P〔n〕的头两个脉冲的位置n1 和n2。然后,在方框84中,检查当前段是否是有浊音语音的第一段。 如果是,在方框86,将音调标记插入在与n1和n2相对应的位置上的 信号P′〔n〕中。在方框88,将最后插入信号P′〔n〕的音调标记存 贮在可变的LPM以便以后使用。
如果当前段不是包含浊音语音的第一段,则在方框90,通过向 LPM的旧值加入值n2-n1而计算最后的音调标记的位置。然后,在方 框92中,将音调标记设置在信号P′〔n〕中的位置LPM上。
在方框94中,取下一个段。这个段与前面段不相邻,而是有重 叠。下一个段的开始移动r2-n1个取样。其理由是在两个相邻段转变 的情况下,即使在改变的特征信号部分,也会在已建立的音调值中 发生不连续的改变。通过加大段的重叠,才会大大避免这种情况。
在方框94之后,返回方框66以处理新段。