如何获得信号的多相分量

信息处理 matlab 数字滤波器
2022-02-10 15:52:04

我的问题是,信号的多糖成分是什么?信号的多相分量是什么意思?

这个例子是真的吗:

N = 100;
h = firls(N, [0 .2 .25 1], [1  1 0  0],[.001 .0001]);

% PolyPhase Componets
%First polypase component 

for i=1:length(h),
h0(i)=h(i);
end

%% Second polyphase component 

for i=1:length(h),
h1(i)=h(i)*exp((-j*2*pi*((i-1)))/4);
end

%% Third polyphase component: 

for i=1:length(h),
h2(i)=h(i)*exp((-j*2*pi*(2*(i-1)))/4);
end

 and so on .. 

谢谢

1个回答

不,这是不对的:

您的多相组件需要......好吧,您的信号的相位,因此,只需要每个N第一个组件。你做的是不同的事情。

说“这些是h",您需要定义您将拥有多少个组件。您正在混合不同的Ns 在你的代码中,但总的来说,你的代码只是混淆了——它从不选择N输入样本。

因此,您需要类似的东西

p04[n]=h[4n]p14[n]=h[4n+1]p24[n]=h[4n+2]p34[n]=h[4n+3]

为一个N=4相多相分解h(特定类型;“类型”指定您采用的顺序+0,+1,+2组件并将它们声明为p0,p1等等)。

感觉你需要一本更好的教科书才能开始!在英语中,经典的将是 Fred harris 的Multirate Signal Processing for Communication Systems它做了一个介绍,这些天我会以不同的方式解释,但我已经使用过一些这样的系统,我最初的理解是由那本书引导的,所以我认为它相对较好。