gpt4 book ai didi

python - 数据类型错误

转载 作者:太空宇宙 更新时间:2023-11-03 19:02:41 24 4
gpt4 key购买 nike

当我运行此代码时,我得到输出:

TypeError: an integer is required

我不知道为什么会发生这种情况,因为我分别将两种数据类型设置为 uint8 和 uint64。显然我不太了解数据类型。

from PIL import Image

from numpy import random

N = 100

##open an image
im=Image.open('/Users/grahamwarner/Desktop/Experiment/gwarner/labeled_photos/masks/003030.png')

##create a random image
rand_matrix = random.randint(0, 255, (500, 500, 3)).astype('uint8')

rand_image = Image.fromarray(rand_matrix)

##select N random pixels
rand_pix = random.randint(0,499, (N,2)).astype('uint64')

##replace the random values at these pixels with the original values
for ii in range(N):

rand_image.putpixel(tuple(rand_pix[ii,:]), im.getpixel(tuple(rand_pix[ii,:])))

最佳答案

PIL 中的 getpixel 方法似乎对其输入非常挑剔,并且特别需要一个 int 元组(这与 Numpy 的 不同) uint64 类型)。以下对我有用:

for ii in range(N):
coordinate = tuple(map(int, rand_pix[ii,:]))
rand_image.putpixel(coordinate, im.getpixel(coordinate))

关于python - 数据类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15621691/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com