Apply Average Filter on Image with just next-before 5 columns

1 view (last 30 days)
Muaz Kartal
Muaz Kartal on 18 May 2022
Answered: DGM on 19 May 2022
I need to apply average filter but i should take just the average of next and before 5 columns and insert to center one.
I tried this but it doesn't look like worked:
a = imread("bridge.bmp");
j = mat2gray(a,[0 255]);
h = fspecial("average",[5 1]);
filtered = imfilter(j,h);
imshow(filtered);

Accepted Answer

DGM
DGM on 19 May 2022
Consider the example:
% a simple test image with a single white pixel in the center
inpict = zeros(13);
inpict(7,7) = 1;
% generate kernel such that target pixel is centered
fk = [1 1 1 1 1 1 1 0 0 0 0];
% ^ this is the target pixel
fk = fk/sum(fk(:)); % sum-normalize
% apply filter
outpict = imfilter(inpict,fk,'replicate');
imshow(outpict)

More Answers (0)

Community Treasure Hunt

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

Start Hunting!