1. 图像处理中的dithering技术
它是一种欺骗你眼睛,使用有限的色彩让你看到比实际图象更多色彩的显示方式。通过在相邻像素间随机的加入不同的颜色来修饰图象,通常这种方式被用于颜色较少的情况下。
2. 错误扩散(Error diffusion)
将当前像素点的误差传递到附近的像素点
3. Floyd–Steinberg dithering
如图:*表示当前的像素点,错误的扩散方向为向右和向下,图中的分数分别表示错误扩散所分配的比例。
for each y from top to bottom
for each x from left to right
oldpixel := pixel[x][y]
newpixel := find_closest_palette_color(oldpixel)
pixel[x][y] := newpixel
quant_error := oldpixel - newpixel
pixel[x+1][y ] := pixel[x+1][y ] + quant_error * 7/16
pixel[x-1][y+1] := pixel[x-1][y+1] + quant_error * 3/16
pixel[x ][y+1] := pixel[x ][y+1] + quant_error * 5/16
pixel[x+1][y+1] := pixel[x+1][y+1] + quant_error * 1/16
上面为 Floyd–Steinberg错误扩散的计算方式。
————————————————
版权声明:本文为CSDN博主「等我下班」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wang_kun888/article/details/51734759