从四维Numpy数组中获取图像作为四维Numpy数组

2024-04-19 16:38:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚刚开始学习Python。我在用Numpy,这是我不明白的事情之一

我有一个形状为(9602002001)的Numpy数组。我用它来存储大小为200x200x1(200高x 200宽x 1通道)的图像。所以,我想这意味着我有960张图片

现在,我必须得到一张图片来测试我的CNN网络,要做到这一点,我做到了:

D = ... # My Dataset with shape (960, 2, 200, 200, 1)

features = D[:,0,:] # Shape (960, 200, 200, 1)
labels = D[:,1,:] # Shape (960, 200, 200, 1)

print("D shape: ", D.shape)
print("Features shape: ", features.shape)
print("Labels shape: ", labels.shape)

print(features[0, :].shape) # Shape (200, 200, 1)
print(labels[0,:].shape) # Shape (200, 200, 1)

此代码输出:

D shape:  (960, 2, 200, 200, 1)
Features shape:  (960, 200, 200, 1)
Labels shape:  (960, 200, 200, 1)
(200, 200, 1)
(200, 200, 1)

我想从功能和标签中获得一个图像。我已经尝试了这两个命令,使用相同的形状获取和图像(200, 200, 1)

features[0, :]
features[0]

但是我需要得到一个形状为(1, 200, 200, 1)的图像

我怎样才能得到这样一个形状的图像

也许创建一个4维Numpy数组,然后添加图像


Tags: 图像网络numpylabels图片数组事情cnn
1条回答
网友
1楼 · 发布于 2024-04-19 16:38:19
A = np.random.random((200,200,3))
A.shape

给予

(200, 200, 3)

你可以用

B = np.expand_dims(A,0)

然后

B.shape

(1, 200, 200, 3)

相关问题 更多 >