1. 创立一个 800 * 800 的矩形图
img = np.zeros([800, 800], dtype=np.uint8)
灰度图的亮度值依照规定应该是 0~255 总计 256 个值,相当于把从黑到白分循序变动分为了 256 个阶段,我上面所做的操作就是显示这 256 个阶段,不同灰度值的图像。
2. 对 256 个区域赋予不同灰度值
for i in range(16):
for j in range(16):
x = i * 50
y = j * 50
s = j + i * 16
img[x : x + 47, y : y + 47] = s
失去了 256 个区域,按区域划分蕴含有 16 个行和 16 个列,每区域的像素大小为 50 × 50,其中 48 × 48 个像素区域赋予灰度值,灰度值同一行逐步加一,同一列逐步加 16,失去上面这张蕴含所有灰度值的图(0~255),共 256 个灰度:
冲破 255 的灰度可视化
for i in range(10):
for j in range(26):
x = i * 50
y = j * 50
s = j + i * 26
img[x: x + 47, y: y + 47] = s % 256
当灰度值超过 255 时能够通过取余,使得右下角灰度值应该为 256~259 的区域变为 0~4: