【发布时间】:2014-07-08 11:10:51
【问题描述】:
祝大家今天好!
我正在编写一个 matlab 程序,其中我在 Tx 的每一列和过滤器 h 之间进行卷积(我希望逐列过滤:第一列使用过滤器 h,第二列使用过滤器 h,.. ..等等)
Tx = complex(randn(165,12), randn(165,12));
h=[0.1 -0.05 0.2 -0.5 0.3 0.02];
- 如何继续使用过滤器 h 过滤整个 Tx 矩阵?
我的 Matlab 代码:
Tx = complex(randn(165,12), randn(165,12));
h=[0.1 -0.05 0.2 -0.5 0.3 0.02];
[r c]=size(Tx);
for i=1:c
Rx=conv(h,Tx(:,i).');
end
- 我想保存整个结果 Rx 矩阵?
【问题讨论】:
-
你看过
conv2吗? -
@Dan : 谢谢你,你能举一个 conv2 的例子吗?她是如何工作的?
-
她的工作方式与
conv完全一样……例如,试试conv2(h', Tx)。只需阅读文档并尝试一下。 -
您通常将矩阵作为第一个参数,将过滤器作为第二个参数。如果您使用“相同”并用于内部 matlab 优化,这一点很重要。此外,转置小滤波器要快得多,而不是转置矩阵(很大)。
标签: algorithm matlab signal-processing telecommunication