Python 扩展numpy阵列

Python 扩展numpy阵列,python,arrays,opencv,numpy,Python,Arrays,Opencv,Numpy,我对Python/numpy还不熟悉 我正在尝试扩展numpy.array,为它提供一些函数,使其能够很好地表示图像(例如转换为灰度等) 目前这给了我: File "o.py", line 6, in <module> class Frame(np.array): TypeError: Error when calling the metaclass bases cannot create 'builtin_function_or_method' instance

我对Python/numpy还不熟悉

我正在尝试扩展numpy.array,为它提供一些函数,使其能够很好地表示图像(例如转换为灰度等)

目前这给了我:

  File "o.py", line 6, in <module>
    class Frame(np.array):
TypeError: Error when calling the metaclass bases
    cannot create 'builtin_function_or_method' instances
文件“o.py”,第6行,在
类框架(np.array):
TypeError:调用元类基时出错
无法创建“内置函数”或“方法”实例

我不明白为什么这是Python的一个问题?

您希望子类化
np.ndarray
,而不是
np.array
,但是在您的示例中,这比简单地换出另一个要复杂一些。可能值得一看文档:

作为旁注,您应该查看:PIL Python Imaging Library。它具有这些功能,从ndarray到ndarray的转换非常简单,如果您打算使用PIL,您应该试试它的fork,这是一个更更新的版本,也与Python 3兼容。谢谢。最后,我对它进行了分类,而不是扩展,看起来更安全。
  File "o.py", line 6, in <module>
    class Frame(np.array):
TypeError: Error when calling the metaclass bases
    cannot create 'builtin_function_or_method' instances