在图像上绘制网格线

14 浏览
0 Comments

在图像上绘制网格线

我正在遵循这个答案,但我并没有每10个步骤得到网格线:\n

import matplotlib.pyplot as plt
plt.figure()
img=ims[0].copy()
dx, dy = 10,10
# 自定义(rgb)网格颜色
grid_color = -1500
# 修改图像以包含网格
img[:,::dy] = grid_color
img[::dx,:] = grid_color
plt.imshow(img,'gray',interpolation='none',vmin=-1500,vmax=2258)

\n\"输入图像描述\"

0
0 Comments

在绘制图像时,为了确保图像中的每个像素都能够正确显示,需要确保绘制的图像中的一个像素在屏幕上大于或等于一个像素。

首先,我们看到一个示例,图像的dpi为100,高度为4.5英寸,每边有10%的边距,一张具有350像素的图像将正确显示。

然后,我们看到另一个示例,图像的dpi为100,高度为3.2英寸,每边有10%的边距,一张具有350像素的图像将无法显示每个像素,因此输出结果如图所示。

为了在后一种情况下获得一个网格,可以使用这个答案,通过创建一个网格并设置网格的线宽,使其始终为0.72个点(等于100dpi下的1个像素)。

下面是使用该方法的代码和输出结果。我们可以看到,图像被正确地分成了网格。

通过以上方法,我们可以在绘制图像时确保每个像素都能够正确显示,并且可以根据需要添加网格线。

0