numpy.AxisError: axis 2 is out of bounds for array of dimension2

在利用训练好的模型进行物体识别时,输入的图像进行数据转换时遇到问题:
在这里插入图片描述
接下来讲的是np.expand_dims函数的作用和用法,是用来调整数组维度的。
比如有一个二维数组data(1,2),但是你需要输入3维数组,然后你就需要把数据再加一维。但是需要选择加在哪一维。二维数组就有三个位置(0, 1,2)。注意axis的值是从0开始的
代码:

import numpy as np

a = np.array([[[1,2,3],[4,5,6]]])
print(a.shape)
print('------------------------------------------------')
# np.expand_dims(a, axis=0)表示在0位置添加数据
b = np.expand_dims(a,axis=0)
print(b.shape)
print('------------------------------------------------')
# np.expand_dims(a, axis=1)表示在1位置添加数据
c = np.expand_dims(a,axis=1)
print(c.shape)
print('------------------------------------------------')
# np.expand_dims(a, axis=2)表示在2位置添加数据
d = np.expand_dims(a,axis=2)
print(d.shape)
print('------------------------------------------------')
# np.expand_dims(a, axis=3)表示在3位置添加数据
e = np.expand_dims(a,axis=3)
print(e.shape)
print('------------------------------------------------')

运行结果:

(1, 2, 3)
------------------------------------------------
(1, 1, 2, 3)
------------------------------------------------
(1, 1, 2, 3)
------------------------------------------------
(1, 2, 1, 3)
------------------------------------------------
(1, 2, 3, 1)
------------------------------------------------

猜你喜欢

转载自blog.csdn.net/lingchuxiao/article/details/107773663