Surface roughness and gaussian filtering
조회 수: 11 (최근 30일)
이전 댓글 표시
I'm trying to measure surface roughness from an image. I want to carry out gaussian filtering and according to literature, gaussian filtering gives the waviness profile and subtracting the waviness from the primary profile would give the roughness profile.
Does imgaussfilt work in the same way? I obtained a filtered image and then going on to subtract gives me a black image.
function gauss
I = imread('/Users/doyindav/Desktop/qualitymap.bmp');
sigma = 1;
%cutoff = 0.08;
h = imgaussfilt(I,'Filtersize',sigma);
new_image = imsubtract(I,h);
montage([I,new_image])
end
댓글 수: 0
채택된 답변
Image Analyst
2020년 6월 22일
Your blur wasn't big enough, plus your difference values were all zero because you didn't blur it enough. This works:
% grayImage = imread('/Users/doyindav/Desktop/qualitymap.bmp');
grayImage = imread('moon.tif'); % Demo image.
subplot(1, 3, 1);
imshow(grayImage);
[blurredImage, subtractedImage] = gauss(grayImage);
subplot(1, 3, 2);
imshow(blurredImage);
subplot(1, 3, 3);
imshow(subtractedImage, []);
function [blurredImage, new_image] = gauss(grayImage)
sigma = 15;
%cutoff = 0.08;
blurredImage = imgaussfilt(grayImage,'Filtersize', sigma);
new_image = imsubtract(grayImage, blurredImage);
end
댓글 수: 7
NGUEUKO Francis Darryl
2021년 8월 23일
@Image Analysti still need more help sir, thanks.
couldnot attach my m.file
Image Analyst
2021년 8월 23일
Why not? Did you use the paperclip icon? It should let you attach the m-file.
Why does the code appear in the command window also? Did you have "echo on" or did you paste it there?
How did you try to run demo.m? Did you click the green run triangle on the toolbar? That should run and have no errors.
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
