Removing noise peaks on 3D surface reconstruction
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Tblt Mglt
am 21 Jun. 2023
Beantwortet: Star Strider
am 22 Jun. 2023
Hi, I'm a fluid mechanics student, and I would like to reconstruct a 3D water surface using a scanner and post-processing with Matlab.
Unfortunately, the device is not perfect, and there is noise due to reflexion of the scanner on the water surface.
I would like to know if there is a way to remove all major peaks due to the noise. You'll see attached an example with the peaks I'm talking about.
Thanks !
Ps: My code is using a refernce image and a deformed image. I try to replace the "wrong" values by NaN then interpolate with a spline, before substracting the reference image to it.
image_def(image_def==0)=NaN;
F = fillmissing(image_def,'spline',2,'EndValues','nearest');

0 Kommentare
Akzeptierte Antwort
Star Strider
am 22 Jun. 2023
See if the filloutliers function (introduced in R2017b) will do what you want. The documentation indicates that it will work on matrices or multidimendional arrays, and your data are likely oone of those.
0 Kommentare
Weitere Antworten (1)
Nitya Patel
am 22 Jun. 2023
One possible way to do this is to use 3D Median Filtering using medfilt3. This will remove all the outliers too far from the median in the neighborhood you specify.
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!