首页 > 解决方案 > 如何将复杂包的python类型提示指定为opencv或tensorflow?

问题描述

我正在构建一个 python 库,并编写了一个这样的函数:

def addimg(image) -> None:

现在我想将图像类型指定为 OpenCV 图像(例如,cv2.readimg() 的结果)。有没有一种优雅的方式来做到这一点?

PyTorch 或 TensorFlow 张量的相同问题。

否则,我的库以没有指定类型的第二个变量结束,我认为这看起来真的很难看。

非常感谢!最好的,伯恩哈德

标签: pythontensorflowopencvtypesopencv-python

解决方案


OpenCV 图像的类型是一个 Numpy 数组(名为ndarray):

>>> image = cv2.imread("my_image.png")
>>> type(image)
numpy.ndarray

所以你可以使用:

from numpy import ndarray

def addimg(image: ndarray) -> None:
    ...

推荐阅读