How to smoothing a image by image rows and columns based ?

Réponses (2)

Kushagr Gupta
Kushagr Gupta le 18 Août 2017
From the limited amount of information provided in the question I am assuming you want to know how to filter (eg. smoothen) images.
Have a look at the functions ' imfilter ' and ' fspecial ' in the Image Processing Toolbox within MATLAB that can be used for performing smoothing.
Smoothing in general is a low pass operation and hence using a 'Gaussian' filter is a good way to start doing so. Play around with the kernel sizes and different types of filter to come up with something that suits your requirements.
Here's one way, with a moving mean "box" filter
windowWidth = 31; % Whatever. Bigger number for smoother images.
kernel = ones(windowWidth) / windowWidth^2;
blurredImage = conv2(double(grayImage), kernel, 'same');
imshow(blurredImage, []);
Or you could use imfilter(), gaussfilt(), nlfilter(), etc.

Community Treasure Hunt

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

Start Hunting!

Translated by