这就是我的代码现在的样子
b=load('filenamehere');
b=b(46:285,51:170);
x=1:size(b,1);
y=1:size(b,2);
xq=1:size(b,1)/4;
yq=1:size(b,2)/4;
B=interp2(x,y,b,xq,yq);
b是240x120矩阵,我试图让它成为60x30矩阵,这样我的计算机就可以处理我必须进行的后续计算。不知道我要做些什么来使它工作,我也尝试使用[X,Y]=meshgrid(x,y)
和xq,yq相同。任何帮助表示赞赏。
答案 0 :(得分:0)
我在你的代码中看到了几个问题。
b=load('filenamehere');
将返回结构,而不是矩阵。我们现在暂时忽略它,并假设您的矩阵 b 的大小为240x120。
您的 xq 和 yq 占据 b 的前1/4。我想你想从每四个中拿一分。如果是这样,你可以做
B = b(1:4:end, 1:4:end);
如果您有信号处理工具箱,请使用下采样:
B = downsample(b, 4);
如果你真的需要插值,xq和yq,如果它们是矢量,应该有不同的方向:
B = interp2(b, 1:4:120, (1:4:240).');