0

我有一个 CNN,它需要输入图像的形状为 [通道、大小、大小],但是当我使用 imutils videostream 函数获取帧时,我得到的帧的形状为 [大小、大小、通道]。

使用 numpy reshape 重塑此框架使我的 CNN 无法识别框架中的内容,并且无法正确分类任何内容。

有什么方法可以指定我想要框架的形状吗?或者以我保留图像的方式重塑框架?

from imutils.video import VideoStream
import time
vs = VideoStream(src=1).start()
time.sleep(2.0)
frame = vs.read()
print(frame.shape)  # output: (480, 640, 3) -> I need (3, 480, 640)
4

1 回答 1

1

我认为您正在寻找的功能是转置。假设frame是一个 numpy 数组,您可以使用:

frame_cnn = frame.transpose([2,0,1])
于 2020-01-23T15:13:16.117 回答