function outputPixelValue = median_filter(input_image,window)
image_size=size(input_image);
image_size_x=image_size(1);
image_size_y=image_size(2);
outputPixelValue=input_image;
window_size_x=window(1);
window_size_y=window(2);
edgex=floor(window_size_x/2);
edgey=floor(window_size_y/2);
sum=0;
for x=edgex+1:image_size_x - edgex
for y=edgey+1:image_size_y - edgey
i=1;
for fx=1:window_size_x
for fy=1:window_size_y
window_temp(i) = input_image(x + fx - edgex-1, y + fy - edgey-1);
i = i + 1;
end
end
j=sort(window_temp);
outputPixelValue(x,y) = j(ceil(window_size_x * window_size_y/ 2));
end
end
end