gpt4 book ai didi

python - 在 Python 中使用 astype ('float32' ) 时出错

转载 作者:行者123 更新时间:2023-12-01 01:33:14 25 4
gpt4 key购买 nike

我是 python 新手,正在使用以下代码:

for index, person in enumerate(people):
print(index)
dir_path = 'train/' + person
for img_path in os.listdir(dir_path):
name, ext = os.path.splitext(img_path)
if ext.lower() not in valid_images:
continue

img_data = cv2.imread(dir_path + '/' + img_path)
# convert image to gray
img_data=cv2.cvtColor(img_data, cv2.COLOR_BGR2GRAY)
img_data_list.append(img_data)
labels.append(index)

img_data = np.array(img_data_list)
img_data = img_data.astype('float32')

但是运行时出现错误:

img_data = img_data.astype('float32')
ValueError:使用序列设置数组元素。

谁能帮我解决这个问题吗?

最佳答案

迭代您的列表:

在代码末尾,您似乎试图更改存储在列表中的图像的dtype。使用 OpenCV 读取的图像自然是 numpy 数组。

以下示例应该有所帮助:

# create a test image list
img = np.ones((60,60), dtype=np.uint8)
img_list = [img] * 4

# use a list comp to run through the images and change dtype
changed_img_list = [img.astype(np.float32) for i in img_list]

关于python - 在 Python 中使用 astype ('float32' ) 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52619297/

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