img[0].shape与img.shape的区别

本文详细介绍了在Python中处理图像时,img.shape与img[0].shape的区别。当图像维度为[155, 240, 240],img.shape返回的是包含所有图片的维度,而img[0].shape仅返回单张图片的高度和宽度。错误地使用img.shape进行赋值会导致ValueError,正确做法是使用_忽略多余维度或使用img[0].shape获取单个图像的尺寸。
摘要由CSDN通过智能技术生成

img[0].shape与img.shape的区别

假设图像为[155, 240, 240],其中155代表155张图片,240, 240 分别代表图像的高和宽,则:

height, width = img[0].shape
print(height, width)
输出:
240,240

如用下种方法,则会有error,是因为img本身有3个参数,但我们只给了2个变量

height, width = img.shape
print(height, width)
输出:
ValueError: too many values to unpack (expected 2)

可以换为:

_, height, width = img.shape
print(height, width)
输出:
240,240

或:

height, width = img[0].shape
print(height, width)
输出:
240,240
这个意思就是 代表取第1维数组里的元素。
例:
a= np.array([[1,2,3], [4,5,6], [7,8,9]])
如果求 a.shape 其结果为:
(3, 3)

如果求a[0].shape,其结果为
(3,) 
即其求的值为 [1,2,3]的尺寸。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值