for my thesis I need to point out the distinctive deltas of my measurements for further use.

The jumps can occur with different heights over different time slots. And the absolute base values can also slowly but not only marginally increase or decrease between ups and downs, caused by other means.

I would love to be able extract these values on the fly on the ARM Cortex M0 that gathers them.. of course delayed, so there are enough measurement values in the pipe to denoise them/calculate medians.. Matlab could also be used (even though I have no experiences in it)..

I thought of something like: Save line when delta is higher than threshold and then sum up everything in between till another delta was undercut (multiple times). Maybe I should also add the "multiple times" argument to the higher than threshold to catch these jumps that consists of multiple small step?

Best, just have a look at this picture: enter image description here

At the moment I am playing around with the following and get ok values, but it could be better..:

delta > small_threshold? -> start summation. deltasummation > large_threshold after at least x additions? -> wait till delta was < small_threshold for y times -> Result. Its like a low pass + FIR I guess?

I played around with the "small_threshold", "large_threshold", "x", "y" values till I got the overall best result.. But I think there is room for improvements...

Example Data.csv

  • $\begingroup$ How about applying the Total Variation Denoising? $\endgroup$ – jojek Aug 3 '15 at 16:35
  • $\begingroup$ This would smoothen the signal, what surely would be a good thing, but doesn't solve the core problem - or am I missing something? $\endgroup$ – muhkuhdsp Aug 3 '15 at 16:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.