how to obtain smooth curve from the data stored in binary file?

3 次查看(过去 30 天)
I have a binary file with unsigned 2-bytes, little-endiness data stored in it (MATLAB does not allow Binary file to get uploaded here).
I see that my data is much noisy than actual. I'd like to obtain a smooth curve instead of noisy one. Is there any way to obtain it?
fileID = fopen('output_file.bin');
data1 = fread(fileID,Inf,'*uint16','ieee-le');
plot(data1,'-b');
Any help is appriciated.
Thanks in advance!

回答(1 个)

Walter Roberson
Walter Roberson 2023-11-21
You have the usual options, such as low-pass filter with lowpass or design a filter using designfilt or use a movmean or movmedian filter
There are also equivalent techniques such as taking fft(), zeroing high frequency components, and then inverse fft.
You might have reason to get into more specialized models such as ARX https://www.mathworks.com/help/ident/ref/arx.html

Community Treasure Hunt

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

Start Hunting!

Translated by