MATLAB: Mysterious face appears after applying filter

facefilterimageImage Processing Toolboxmystery

I am applying a median filter to a noisy image and them subplot them for comparison. It works fine, except that there's a dark block on the top left corner of my image. When I zoom in further, I see a face of a boy.
Here's an uploaded screenshot and the zoomed image:
Is this some Halloween prank? Has anyone encountered this? How can I remove it?
Here's my code:
dirty = importdata('dirtytabur.jpg');
if size(dirty,3) == 3
dirty = rgb2gray(dirty);
end
filtered = medfilt2(dirty);
% display image
scrsz = get(0, 'ScreenSize');
figure('Position', [1 1 scrsz(3) scrsz(4)]);
subplot(1,2,1);
imshow(dirty);title('Before Processing'); axis equal;axis tight;
subplot(1,2,2);
imshow(filtered);title('After Processing'); axis equal;axis tight;
% figure(filtered);
imwrite(image,[filename '.jpg'], 'jpg');
Thanks, Yu Ang

Best Answer

imwrite(filtered, [filename '.jpg'], 'jpg');
You used image instead of filtered, and image is the name of a function to display an image; when not told what array of data to display as an image, the default for image() is the face of a boy.
Related Question