how i can implement lowpass filter on image using matlab

조회 수: 97 (최근 30일)
wissa amer
wissa amer 2013년 5월 15일
답변: David Young 2014년 9월 16일
how i can implement lowpass filter on image using matlab when we implement the fractal image compressin we need to do that ,how i can do it plz help me

답변 (3개)

Image Analyst
Image Analyst 2013년 5월 21일
One way is to just convolve with a kernel that has all positive weights, like a box filter:
boxKernel = ones(21,21); % Or whatever size window you want.
blurredImage = conv2(grayImage, boxKernel, 'same');
imfilter() does a similar (though not exact) thing. The more pointed the filter is in the middle, the less filtering it will do, and the bigger the window size, the more blurring it will do. For example, a Gaussian filter does less blurring (filtering) than a box filter of the same window size. A bigger box (e.g. 31 x 31) will blur more than a smaller one (e.g. 3 x 3).
You can do other, non-linear filters in the spatial domain. You can do linear filtering in the Fourier domain if you want to and have reason to, like you have known frequencies you want to remove, or you have a periodic structure you want to get rid of.
  댓글 수: 3
ramin bba
ramin bba 2014년 9월 16일
Dear Image Analyst,
Could you please upload your Fourier filtering demo?
tnx

댓글을 달려면 로그인하십시오.


David Young
David Young 2014년 9월 16일
If you want to smooth with a Gaussian kernel, as already suggested, you might find gsmooth2, available here, helpful. It only does the equivalent of calling fspecial and imfilter, but it handles some of the details for you, which can be convenient.

Amith Kamath
Amith Kamath 2013년 5월 20일
I am assuming you need to smooth (low pass) an image. These two functions are what you need to use:
and
specifically, the 'gaussian' filter.

Community Treasure Hunt

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

Start Hunting!

Translated by