MATLAB: How to subtract small window from an image by shifting pixel by pixel

convolutionimage enhancementmaskMATLABsubtraction

I want to take small window from image and subtract that small window from whole image by shifting pixels by pixels. like for example I have 10×10 pixel image and I select a 3×3 pixels window from that image and subtract that 3×3 pixels image from whole 10×10 pixel image by shifting that mask window on whole image. Screenshot_1.jpg

Best Answer

Hi,
inp_img = double(imread('cameraman.tif'));
figure
subplot(1,2,1);
imshow(inp_img,[]);
sub_mask_window = [14 25 16; 6 32 24; 35 13 44]; % creating mask window
for i = 1 : 2 : size(inp_img,1) - 2
for j = 1 : 2 : size(inp_img,2) - 2
subtract_img(i : i + 2, j : j + 2) = inp_img(i : i + 2, j : j + 2)...
- sub_mask_window; % subtracting mask window with image
end
end
subplot(1,2,2);
imshow(subtract_img)