首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >重采样因素太大了

重采样因素太大了
EN

Stack Overflow用户
提问于 2014-11-03 19:27:25
回答 2查看 1.7K关注 0票数 3

我有一个大矢量的记录数据,我需要重采样。我遇到的问题是,当使用resample时,我会得到以下错误:

???在82处使用==> upfirdn的误差,下采样因子q和上采样因子P的乘积必须小于2^31。

现在,我明白为什么会发生这种情况--我的两个抽样率非常接近,所以整数因子需要相当大(大约是73999/74000)。不幸的是,这意味着MATLAB无法创建适当的过滤器。我也尝试过重采样,但没有足够的内存来处理100万个数据样本(我的内存是9300万)。

我还能用什么其他方法来正确地重新整理这些数据呢?

EN

回答 2

Stack Overflow用户

发布于 2014-11-03 23:56:59

一个插值的多相FIR滤波器可以用于只插值新的样本点集,而不需要使用upsampling+downsampling过程。

但是,如果性能完全不重要,下面是一个Basic中的快速和肮脏窗口-Sinc插值

票数 0
EN

Stack Overflow用户

发布于 2022-09-22 12:12:57

这是我的代码,希望它能帮上忙:

代码语言:javascript
复制
function resig = resamplee(sig,upsample,downsample)
if upsample*downsample<2^31
    resig = resample(sig,upsample,downsample);
else
    
    sig1half=sig(1:floor(length(sig)/2));
    sig2half=sig(floor(length(sig)/2):end);
    resig1half=resamplee(sig1half,floor(upsample/2),length(sig1half));
    resig2half=resamplee(sig2half,upsample-floor(upsample/2),length(sig2half));
    resig=[resig1half;resig2half];

end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26721557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档