Clear Filters
Clear Filters

averaging a column in a image matlab

1 view (last 30 days)
hasan alhussaini
hasan alhussaini on 8 Sep 2017
Answered: Image Analyst on 8 Sep 2017
i'm getting an artefact in my image its going down, is there away to get rid of it?
i was thinking maybe use the column on the left and right to average it out?

Answers (2)

KSSV on 8 Sep 2017
Edited: KSSV on 8 Sep 2017
As you know the eliminate that particular column from the image.
I(:,1366) = [] ;
And then use imshow on I.

Image Analyst
Image Analyst on 8 Sep 2017
Use a tophat filter, imtophat(). then threshold that and use it as a mask to replace it with the eroded image (local min). Something like (untested)
badPixels = imtophat(grayImage, ones(1, 3));
mask = badPixels > 4; % or whatever number works.
erodedImage = imerode(grayImage, ones(1,3)); % Get local min value.
grayImage(mask) = erodedImage(mask);


Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!