我得到了一个我希望调整到一定大小的图像列表。
我想使用scipy的imresize函数来获取以下代码,但这些代码没有按预期工作:
imgs = get_imgs()
for img in imgs:
img = imresize(img, (82, 100))
如果我打印出imgs数组的形状,它仍然是原始大小(178,218)。有人可以解释为什么这不起作用吗?
不幸的是,我没有发现使用此功能调整图像列表大小的任何其他问题。
答案 0 :(得分:1)
img
变量仅在for
循环中有效。
所以imresize
函数的结果在循环之后就会丢失。
你必须建立一个包含结果的新列表。
imgs = get_imgs()
res = []
for img in imgs:
res.append(imresize(img, (82, 100)))
pytonic方法是使用map:
res = map(lambda img : imresize(img, (82, 100), get_imgs())