抖动
☞ 全程在你的浏览器中运行 —— 不会上传任何图片将图片拖放到此处
或点击浏览 —— JPG、PNG、WebP
抖动预览
抖动
用 Floyd–Steinberg 误差扩散把照片压成纯黑白 —— 早期屏幕和激光打印的那种 1 位质感。
或点击浏览 —— JPG、PNG、WebP
抖动预览
只有两种颜色,舍入误差往下传
把每个像素各自就近舍入成黑或白,得到的是一团斑驳:整片整片地倒向同一边,中间调整个消失。Floyd–Steinberg 的解法是**不把舍入误差丢掉**。每个像素舍入之后,它原本的值与舍入结果之差,会被交给还没定下来的邻居 —— 右边拿十六分之七,其余的分给下面一行。误差在一小片区域里互相抵消,于是虽然每一个像素都只有两种取值,平均亮度却保住了。
这个图案得看得见才有意义。一张 4000 像素宽的照片逐像素抖出来,一旦按屏幕宽度显示,就被重新平均回一片平坦的灰 —— 看上去和原图几乎一样。所以误差扩散跑在一张格子上,格子大小随图的尺寸走,每个定下来的格子按块涂出去。文件仍是原尺寸,而质感留住了。
三步
JPG、PNG 或 WebP 都行。明暗层次丰富的照片最能看出误差扩散的图案。
格子大小是按图算的,没有可设的参数 —— 预览就是最终结果。
存成 PNG。两色图正是 PNG 压得最好的那一类,而 JPG 会把它糊成一片灰。
快速解答
1976 年提出的误差扩散算法。每个像素被舍入到最接近的可用颜色,剩下的那点差值被推给还没定下来的邻居像素,于是误差被平均掉,而不是越攒越多。
半调用固定的格子,改变每个点的**大小**;抖动保持点的大小不变,改变**一片区域里落下多少个点**。半调看起来像报纸,抖动看起来像早期的单色屏幕。
这是刻意的。大图上像素级的抖动,一旦缩到屏幕宽度就看不见了 —— 显示器会把它重新平均回灰色。格子随图的尺寸走,质感才经得起被看。
这里不行,这个滤镜刻意就是 1 位的。想要一份精简但仍有颜色的调色板,可以用 GIF 那几个工具,它们会量化到你指定的颜色数。
存成 PNG 通常会,而且往往小很多,因为只有两种取值要存。存成 JPG 反而可能变大 —— JPG 是为平滑渐变设计的,而抖动图案恰恰相反。
保不住。图先降成灰度,再压到黑白两色 —— 这正是「1 位图像」的含义。
不会。解码和转换都在你的浏览器里完成,下载的文件也是在这台机器上生成的。这个工具根本没有一台服务器可以接收图片。
免费,没有水印,也不用注册。