MATLAB Answers

problem using medfilt2

10 views (last 30 days)
Attached you can find the data. Please rename .csv to .dat, and just use:
load cond2a.dat
Ax=cond2a(:,1);
Ay=cond2a(:,2);
Az=cond2a(:,3);
Znew=medfilt2(Az);
The file contains xyz with z values around 169. But using medfilt2 at the four corners the data is 0. How can I prevend this?
Thanks a lot,
Harry

  0 Comments

Sign in to comment.

Accepted Answer

Subhadeep Koley
Subhadeep Koley on 10 Feb 2020
Your Az vector is mainly concentrated around 169, therefore normal median filtering destroys the sudden peaks. Using Padding option as 'symmetric' might help. Refer the code below.
load cond2a.dat
Ax = cond2a(:, 1);
Ay = cond2a(:, 2);
Az = cond2a(:, 3);
Znew = medfilt2(Az, 'symmetric');
figure; plot(Az);
hold on;
plot(Znew);
legend({'Original Data', 'Median filtered data'});
medfilteredData.png

  1 Comment

Harald von der Osten
Harald von der Osten on 10 Feb 2020
thanks a lot for your help, especially for pointing out the option 'symmetric'. Harry

Sign in to comment.

More Answers (0)


Translated by