Python 如何在CNN中将OpenCV函数中的一维数组与展平向量连接起来

Python 如何在CNN中将OpenCV函数中的一维数组与展平向量连接起来,python,opencv,tensorflow,keras,conv-neural-network,Python,Opencv,Tensorflow,Keras,Conv Neural Network,我试图通过在训练阶段使用OpenCV函数计算一些动态值(如图像的Hu矩)来提高CNN(卷积神经网络)的准确性,然后将它们用展平向量馈送到完全连接的层,如我的模型图像所示: 我想使用数据集中的OPENCV计算每个图像的Hu矩,然后在展平操作之后,我想将Hu矩的值与fatten向量连接起来,并将其馈送到完全连接的层 这是我正在使用的模型(Tensorflow Keras): 但我仍然有这个错误 TypeError: in converted code: <ipython-input-1-d

我试图通过在训练阶段使用OpenCV函数计算一些动态值(如图像的Hu矩)来提高CNN(卷积神经网络)的准确性,然后将它们用展平向量馈送到完全连接的层,如我的模型图像所示:

我想使用数据集中的OPENCV计算每个图像的Hu矩,然后在展平操作之后,我想将Hu矩的值与fatten向量连接起来,并将其馈送到完全连接的层

这是我正在使用的模型(Tensorflow Keras):

但我仍然有这个错误

TypeError: in converted code:

<ipython-input-1-dd21806afc67>:155 call  *
    return calc_hu(inputs)
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/eager/def_function.py:449 __call__
    self._initialize(args, kwds, add_initializers_to=initializer_map)
<ipython-input-1-dd21806afc67>:143 calc_hu  *
    moments = cv2.UMat(cv2.moments(imagex))
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/autograph/impl/api.py:396 converted_call
    return py_builtins.overload_of(f)(*args)

TypeError: Expected Ptr<cv::UMat> for argument '%s'
TypeError:在转换的代码中:
:155电话*
返回计算(输入)
/usr/local/lib/python3.6/dist packages/tensorflow_core/python/eager/def_function.py:449_调用__
self.\u initialize(args、kwds、add\u initializer\u to=initializer\u map)
:143 calc_hu*
力矩=cv2.UMat(cv2.moments(imagex))
/usr/local/lib/python3.6/dist-packages/tensorflow\u-core/python/autograph/impl/api.py:396转换的调用
返回py_内置。重载(f)(*args)
TypeError:参数“%s”应为Ptr
HuLayer预计将获得大小为28X28的图像,并返回七个值的Hu矩,因此它们可以与展平向量连接

我使用的数据集是MNIST手写数字

TypeError: in converted code:

<ipython-input-1-dd21806afc67>:155 call  *
    return calc_hu(inputs)
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/eager/def_function.py:449 __call__
    self._initialize(args, kwds, add_initializers_to=initializer_map)
<ipython-input-1-dd21806afc67>:143 calc_hu  *
    moments = cv2.UMat(cv2.moments(imagex))
/usr/local/lib/python3.6/dist-packages/tensorflow_core/python/autograph/impl/api.py:396 converted_call
    return py_builtins.overload_of(f)(*args)

TypeError: Expected Ptr<cv::UMat> for argument '%s'