Smoothing data with Filtering
2 次查看(过去 30 天)
显示 更早的评论
Hi, Please check the attached image. So, I was trying to smoothing the data with filtering. But, in some cases, the value doesn't go up to mark (black circles). Please let me know, how can I fix this problem?
Here is the code I am using now:
FOrd = 400;
fitleredData = filter(ones(1,FOrd)/FOrd,1,inputData);
0 个评论
回答(2 个)
Image Analyst
2017-2-9
Obviously if you smooth the data, the smoothed data will never get as high as the peak - otherwise it wouldn't be smoothed now, would it?
Your FOrd should be an odd number, or else you will get a lateral shift in your array, as you are seeing.
2 个评论
Image Analyst
2017-2-10
编辑:Image Analyst
2017-2-10
You can detect the peaks and save their values. Then smooth the whole array. Then replace only the peak locations with the peak values, leaving everything else as it is (smoothed).
Also, can you put back your graph to help people understand what we're talking about?
John D'Errico
2017-2-9
A characteristic of virtually any smoothing scheme is it will tend to round over the peaks and valleys. So what do you expect?
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!