在matlab

时间:2016-03-19 10:36:35

标签: matlab filter signal-processing speech synthesizer

我正在学习信号处理,目前我必须在Matlab中做一个语音合成器。为了模拟嘴的谐振器系统我有这个传递函数:

R(z)= 1 - z ^( - 1)

我可以在Matlab中使用过滤功能实现这个系统吗?我不知道如何提取系数“a”和“b”...

注意:y = filter(b,a,x),其中x是我们必须过滤的输入信号。

谢谢大家!

1 个答案:

答案 0 :(得分:2)

咨询filter的文档,您将传递函数表示为系数的有理函数,以便:

enter image description here

您想要的传递函数,Y(z) / X(z) = R(z)等于:

R(z) = 1 - z^{-1}

此处a(1)隐含地等于1.因此,b(1) = 1b(2) = -1指的是上述等式。除了a(1)等于1之外,分母中的所有系数都是0。

因此,a = 1; b = [1 -1];等过滤您的信号只是:

a = 1; b = [1 -1];
y = filter(b, a, x);

x是您要过滤的感兴趣信号。