Downsampled data exceeds the input data
显示 更早的评论
I have an input data sampled at 64 Hz and I want it converted to 60Hz. I tried using 'resample' function and 'downsample' function within matlab,but in both the cases the output data exceeds the input data at some sample points. For example, the input data contains angles in degrees which is under -180 deg to +180 deg, but the downsampled data contains 220 deg,which is wrong. how to avoid these?
In the attached picture, you can find all the input and output are overlayed. Can someone please help me?
2 个评论
Mathieu NOE
2022-11-18
hello
for the resampling task , use interp1 with a new time vector defined at rate = 60 Hz
to avoid data above / below +/- 180 ° use wrap
Chandramouli Jambunathan
2022-11-18
采纳的回答
更多回答(1 个)
Jan
2022-11-18
0 个投票
A linear interpolation avoids output points outside the range of input point. Use interp1 or the modern and faster griddedInterpolant .
A fast C-mex function for this job: https://www.mathworks.com/matlabcentral/fileexchange/25463-scaletime
3 个评论
Chandramouli Jambunathan
2022-11-18
Jan
2022-11-18
I do not understand the meaning of "Both 'interp1' and 'griddedInterpolant' function expects specific data points". But Mathieu has show already, how to use these interpolation methods.
Chandramouli Jambunathan
2022-11-18
类别
在 帮助中心 和 File Exchange 中查找有关 Multirate Signal Processing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
