How to find the maximal and minimal derivatives of noisy signals?
Hello!
I'm currently using MATLAB for simple signal processing. I need to find the maximal and minimal derivatives (or slopes) of noisy signals. Actually I need the value of the derivative and the index at where it occurs so that I can draw a line representing the slope at that index. The picture below illustrates what I'm trying to do. The problem is that the signals are pretty noisy which will result in a very large derivative that doesn't represent the actual behavior of the signal. With some luck I managed to find the correct derivatives by constructing an averaged version of the original signal and calculating the average derivative over 10 samples at every index of the averaged signal. I'm sure there is a better way to accomplish this. Any help would be greatly appreciated.
![](http://gatesofacademe.files.wordpress.com/2008/08/258px-exp_derivative_at_0svg.png)
0 个评论
采纳的回答
更多回答(2 个)
Differentiator filter should satisfy your needs.
You can use it in your mfile - Differentiator filter specification object .
You could also interactively design a filter using fdatool ( doc here) - response type should be choosed as Differentiator .
![](http://www.mathworks.com/products/demos/fullsize.html?src=/products/demos/shipping/signal/ifdadesignfir.png)
0 个评论
另请参阅
类别
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!