首页 > 解决方案 > 如何将数组传递给 OpenCV dnn

问题描述

我正在使用 OpenVino 预训练模型进行动作驱动动作检测......

驾驶员动作检测管道由编码器和解码器两部分组成,可与 openCV dnn 类一起使用。编码器获取形状为 (1,3,224,224) 的图像并生成形状为 (1,512,1,1) 的特征向量,然后解码器获取 16 帧形状 (1,16,512) 的输入并生成表示每个类别的概率。

我的问题是如何将形状数组(1,16,512)提供给解码器网络......当我使用cv2.dnn.blobFromImage()它时会引发异常

blob=cv.dnn.blobFromImage(vectors,size=(16,512))
cv2.error: OpenCV(4.3.0-openvino) ../opencv/modules/core/src/arithm.cpp:669: error: (-209:Sizes of input arguments do not match) The operation is neither 'array op array' (where arrays have the same size and the same number of channels), nor 'array op scalar', nor 'scalar op array' in function 'arithm_op

有人可以帮忙吗?

标签: pythonopencvopenvino

解决方案


推荐阅读