找回密码
 FreeOZ用户注册
查看: 1746|回复: 6
打印 上一主题 下一主题

[新技术交流] 一张无法正确缩放的诡异图片

[复制链接]
跳转到指定楼层
1#
发表于 26-2-2010 23:10:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
FROM:http://www.matrix67.com/blog/archives/2866
    给大家看一个好玩儿的东西。在不同的显示器上,下面这张图片的显示效果可能大不相同。如果你用的是 TFT 屏幕,上下移动你的脑袋,调整你的视角,你也会看到不同的色彩。从低处往上看,你会看到一个白色的 MM 站在蓝色背景中;从高处往低看,你会看到一个黑色的 MM 站在黄色背景中。
   

                               
登录/注册后可看大图

    现在,把上面这幅图片保存下来,用你最爱的图象处理软件打开,然后缩放到原图的 50% 。左图是图片缩小后理应得到的结果,但你会发现,你得到的结果是右边的这个图——一片灰色。
   

                               
登录/注册后可看大图
      

                               
登录/注册后可看大图



    今天从 reddit 上看到了这个网页。根据它的解释,目前的绝大多数图象处理软件,包括 Photoshop 和 GIMP ,它们的图象缩放算法都有问题,错误的根源乃是对 gamma 值的错误假设。左图就是采用正确的图象缩放算法得到的图片,但几乎所有图象处理软件都会得到右边的这张图。该问题也普遍存在于图象查看程序里,甚至就在你用浏览器阅读这篇文章的时候,按几下 Ctrl + 减号 后你也会看到同样的错误。另外,由于同样的原因,缩放到其它尺寸、图片的旋转、使用某些滤镜也会出现各种奇怪的问题。具体的原理和更多学术讨论可以在上面那个网页中看到。原文中的图片很不和谐,因此我才根据其原理自己重做了一张。
回复  

使用道具 举报

2#
发表于 26-2-2010 23:20:31 | 只看该作者
我按几下 Ctrl + 减,还能看到图,但是颜色有变化
回复  

使用道具 举报

3#
发表于 27-2-2010 02:49:50 | 只看该作者
我的google浏览器貌似正常!
回复  

使用道具 举报

4#
发表于 27-2-2010 03:29:59 | 只看该作者
这个应该是一种速度优化的结果把,刚好是50%的大小,就不用做插值了,直接挑隔行显示
回复  

使用道具 举报

5#
发表于 27-2-2010 09:08:35 | 只看该作者
给大家看一个好玩儿的东西。在不同的显示器上,下面这张图片的显示效果可能大不相同。如果你用的是 TFT 屏幕,上下移动你的脑袋,调整你的视角,你也会看到不同的色彩。从低处往上看,你会看到一个白色的 MM 站在蓝色背景中;从高处往低看,你会看到一个黑色的 MM 站在黄色背景中

这是视觉心理学的一个问题。类似的典型问题还有两个同样大小的圆,在不同背景条件下,你会硬是认为其中一个比另一个大,而且大得多; 一个明明存在的圆,你就是看不到。

现在,把上面这幅图片保存下来,用你最爱的图象处理软件打开,然后缩放到原图的 50% 。左图是图片缩小后理应得到的结果,但你会发现,你得到的结果是右边的这个图——一片灰色。

这是数字图像缩放时采用的取值算法的产生的结果。
图像缩放,我们一般会认为图像除了一些特别的边缘之外,大部分内容是连续、渐变的。
这是图像缩放算法的前提。典型的缩放算法比如平方均值等,可以很好比保留原有的边缘信息。
然而,如果你原来的图像有特殊的边缘,或者象素分布本身就很奇怪,在缩放时周围的点取均值得到的结果就是一个灰度值,
那就不能“正确”地“缩放”了。但一般图像处理软件都会有多种缩放算法,你选另一种算法应该就可以了。

今天从 reddit 上看到了这个网页。根据它的解释,目前的绝大多数图象处理软件,包括 Photoshop 和 GIMP ,它们的图象缩放算法都有问题,错误的根源乃是对 gamma 值的错误假设。

这不是bug。

左图就是采用正确的图象缩放算法得到的图片,但几乎所有图象处理软件都会得到右边的这张图。

左图也不正确,把所有的边缘信息都去掉了。

另外,由于同样的原因,缩放到其它尺寸、图片的旋转、使用某些滤镜也会出现各种奇怪的问题

基本上都是数学问题。

评分

参与人数 1威望 +5 收起 理由
薛定谔猫 + 5 你太有才了!

查看全部评分

回复  

使用道具 举报

6#
发表于 27-2-2010 11:35:54 | 只看该作者

和缩放的算法有关

GIMP下的四种缩放算法,结果如下:

None

评分

参与人数 1威望 +5 收起 理由
薛定谔猫 + 5 你太有才了!

查看全部评分

回复  

使用道具 举报

7#
发表于 27-2-2010 16:01:02 | 只看该作者
还可以把图打印出来,再扫描进去,然后再做处理。

原帖由 yuba 于 27-2-2010 11:35 发表
GIMP下的四种缩放算法,结果如下:

None
104567

Linear
104568

Cubic
104569

Sinc
104570
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 1-2-2025 09:00 , Processed in 0.045023 second(s), 28 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表