Mysterious face appears after applying filter

1 回表示 (過去 30 日間)
Yu Ang Tan
Yu Ang Tan 2011 年 2 月 7 日
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

採用された回答

Walter Roberson
Walter Roberson 2011 年 2 月 7 日
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.
  1 件のコメント
Jiro Doke
Jiro Doke 2011 年 2 月 7 日
Here's a blog post about it (and more):
http://blogs.mathworks.com/steve/2006/10/17/the-story-behind-the-matlab-default-image/

サインインしてコメントする。

その他の回答 (1 件)

Yu Ang Tan
Yu Ang Tan 2011 年 2 月 7 日
Thank you very much.
This code is originally part of a function, which takes in a parameter 'image'. I was careless for not noticing that 'image' is an built-in function.

カテゴリ

Help Center および File ExchangeImages についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by