Azzera filtri
Azzera filtri

Reduce time with this

2 visualizzazioni (ultimi 30 giorni)
Matlabbey
Matlabbey il 19 Ago 2012
hi all!
i've a filter that is used on the data, but there is lots of data! i am hoping to resample the data(ia take every 2nd point), and than filter it. the problem is that i only have half as many data points. how can i use spline on the filtered data to make it back to the original.
for example, say theres 1000 data points. i resample every other data point to have 500. i feed that data into filter, and have newdata. how can i use spline to fit back to 1000 data points? i tried resampling every 1/2 but that is no good.
any suggestions will be helpful
thank you!!
  1 Commento
Azzi Abdelmalek
Azzi Abdelmalek il 19 Ago 2012
Modificato: Azzi Abdelmalek il 19 Ago 2012
  1. why filter before resampling?
  2. what kind of filter are u using?
if you are using a filter to just remove eventual noise; and don't affect considerably your initial signal; then you have just to interpolate your 500 data. just respect Shanon theorem for sampling

Accedi per commentare.

Risposte (3)

Azzi Abdelmalek
Azzi Abdelmalek il 19 Ago 2012
Modificato: Azzi Abdelmalek il 19 Ago 2012
example
x=0.2:0.02:10;y=sin(x) %signal with 500 points % sig
xi=0.01:0.01:10; % 1000 points
yi=interp1(x,y,xi,'spline') % interpolated signal yi for points xi

Matlabbey
Matlabbey il 19 Ago 2012
Modificato: Matlabbey il 19 Ago 2012
It doesnt seem to work. is it because i simply have data and not a function? im hoping that yi will look similar to original data series but filtered. it does something kind of weird. heres what i have for example;
x = [ 1 2 3 4 5 6];
xR = x(1:2:end);
y = filter(xR);
xi = y(1:1/2:end);
yi - interp1(x,y,xi,'spline');

Jan
Jan il 19 Ago 2012
It is a bad idea to omit half of the data before filtering, because the re-creation of these points by using a spline interpolation creates(!) noise again. In addition the interpolation and will take much more time than filtering the signal in its original rate. If the filtering needs too much time for you, try the faster C-Mex FEX: FilterM.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by