Onnx 模型输入大小不同于 Opencv 帧大小

Onnx model input size different from Opencv frame size

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

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

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)