Python 如何将数组传递给OpenCV dnn

Python 如何将数组传递给OpenCV dnn,python,opencv,openvino,Python,Opencv,Openvino,我正在使用OpenVino预先训练的模型进行动作驱动程序动作检测 驱动程序动作检测管道由编码器和解码器两部分组成,可与openCV dnn类一起使用。 编码器获取形状的图像(1,3224224)并生成形状的特征向量(1512,1,1),然后解码器获取16帧形状的输入(1,16512),并生成表示每类概率的一个热向量 我的问题是如何将形状数组(1,16512)馈送到解码器网络。。。 当我使用cv2.dnn.blobFromImage()时,它抛出一个异常 blob=cv.dnn.blobFromI

我正在使用OpenVino预先训练的模型进行动作驱动程序动作检测

驱动程序动作检测管道由编码器和解码器两部分组成,可与openCV dnn类一起使用。 编码器获取形状的图像(1,3224224)并生成形状的特征向量(1512,1,1),然后解码器获取16帧形状的输入(1,16512),并生成表示每类概率的一个热向量

我的问题是如何将形状数组(1,16512)馈送到解码器网络。。。 当我使用
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

有人能帮忙吗。

你能分享一段代码吗?在这里你构造了
向量
变量?我猜你做这件事的方式有问题。顺便说一句,解码器网络需要3-d输入([BxTxC]),因此至少您需要修复
size=(16512)
=>
size=(1,16512)
有一个动作识别Python演示,您可以参考它进行解码器预处理。或者,您是否愿意与编码器后处理和解码器预处理步骤共享您的代码,以便我们对此进行研究?这里是演示的链接:你能分享一段代码吗?在这里你构造了
向量
变量?我猜你做这件事的方式有问题。顺便说一句,解码器网络需要3-d输入([BxTxC]),因此至少您需要修复
size=(16512)
=>
size=(1,16512)
有一个动作识别Python演示,您可以参考它进行解码器预处理。或者,您是否愿意与编码器后处理和解码器预处理步骤共享您的代码,以便我们对此进行研究?以下是演示的链接: