产品沉思录 产品沉思录 产品沉思录 产品沉思录
在限制中设计,而不是绕开它

在限制中设计,而不是绕开它

fonter

比尔·阿特金森的抖动算法通过简单的黑白点组合,创造出视觉上的灰度效果,展现了在限制中设计的优雅。他的算法高效且适合早期计算机,利用人眼的错觉而非复杂计算,赋予图像丰富的层次感和设计感,体现了技术对感知的服务。

01#新知:在限制中设计,而不是绕开它

编辑:Apple 传奇程序员 Bill Atkinson 于美国时间 2025/06/05 在家中因胰腺癌过世,享年 74 岁。

Bill Atkinson:用抖动算法绘制的黑白图
Bill Atkinson:用抖动算法绘制的黑白图

在限制中设计,而不是绕开它

Atkinson 的成就中最优雅的是 Atkinson Dithering 算法,他用一种极简而聪明的方式,把美感装进了有限像素里。

在 1980 年代初的 Macintosh 上,屏幕只有黑白两种像素。没有灰色。要表示“灰色”怎么办?

他发明了一种办法,让计算机「假装自己能显示灰色」。

不是去画灰色,而是:用一堆黑白小点,骗你的眼睛,让它自己“看出”灰色来。

他用的方法,叫“抖动”(Dithering),简单说就是这样:

其实这种“抖动”算法有很多种。

别人做法是:每画一个点,会算一下“误差”,然后把误差按比例,分配给附近的像素,让图像整体看起来平滑。

但 Atkinson 并没有搞这么复杂,他的做法是:

Step 0:中间像素是灰色(150) Step 1:把中间像素改成白色(255),但这就多出了亮度(误差)Step 2~7:把这个“误差”一点一点分给周围的 6 个像素,每个拿走 1/8,让后面处理的时候更准确
Step 0:中间像素是灰色(150) Step 1:把中间像素改成白色(255),但这就多出了亮度(误差)Step 2~7:把这个“误差”一点一点分给周围的 6 个像素,每个拿走 1/8,让后面处理的时候更准确

结果就是:

为什么说这个算法“优雅”?

因为它不靠硬算,而是靠“顺着人眼的错觉”来达成目标。

它不追求“还原真实”,而是:只用最简单的计算、最少的颜色,创造最大程度的视觉层次感。

这就像在限制里跳舞。你只有两个音符,却谱出丰富的旋律。

在当年那个只有黑白像素的小屏幕上,Atkinson 用这个算法,让图像变得柔和、有灰度、有过渡、有节奏。

他没有创造灰色,但他让人“相信”自己看到了灰色。

这,就是优雅。

参考