首页 > 解决方案 > Onnx 模型输入大小与 Opencv 帧大小不同

问题描述

如何将 OpenCV 框架转换为适合我的 ONNX 模型接受的尺寸?目前,我的 ONNX 模型输入形状是 [32, 3, 256, 224] 但是当我使用 OPENCV 调整大小并打印 img 形状时,它是 (224,256, 3)。

标签: pythonnumpyopencvonnx

解决方案


分离通道,转置图像尺寸并将通道放在一起。您可以使用这一行代码:

np.array([np.transpose(img[:, :, 0]), np.transpose(img[:, :, 1]), np.transpose(img[:, :, 2])])

例子:

a = np.zeros((224,256, 3))
b = np.array([np.transpose(a[:, :, 0]), np.transpose(a[:, :, 1]), np.transpose(a[:, :, 2])])
b.shape #returns (3, 256, 224)

推荐阅读