【问题标题】:How to get a white image using numpy?如何使用 numpy 获得白色图像?
【发布时间】:2020-11-07 04:32:26
【问题描述】:

我尝试制作一张 64 像素的白色图像,顶部有一个黑条。黑条刚出来就好了。白色部分搞砸了。

from IPython.display import Image as im
from PIL import Image
import numpy as np

a = np.zeros(shape=(64,4))
b = 255*np.ones(64)
c = 255*np.ones(shape=(64,3))
d = np.column_stack((c,b))
for i in range (63):
  a = np.block([[[a]],[[d]]])
print(a.shape)

image = Image.fromarray(a, "RGB")
image.save("white.png", "PNG")
display(im('white.png'))

输出是这样的

预期的图像与此完全相反。只是白色和黑色部分交换位置。上黑下白。

【问题讨论】:

  • 你能显示“预期输出”吗?
  • @amzon-ex,第二个链接被添加到与预期输出完全相反的问题中。所需的确切输出类似于image。我的意思只是照片。请忽略论坛中的问题。

标签: python image numpy


【解决方案1】:

如果您提供了体面的预期和实际输入/输出图像和代码,回答您会简单得多。如果你想让人们帮助你,让他们轻松一点通常是个好主意 ?

作为回答,我怀疑您的图片中的 dtype 不正确。尝试检查:

print(a.dtype)

尝试通过在实例化时指定dtype 来纠正:

a = np.zeros((64,64), dtype=np.uint8)

【讨论】:

    猜你喜欢
    • 2018-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 1970-01-01
    • 2017-08-04
    • 1970-01-01
    相关资源
    最近更新 更多