扩展numpy数组



我是Python/numpy的新手。

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

import numpy as np
import cv2
from support import *
import matplotlib.pyplot as plt
class Frame(np.array):
    def __init__(self):
        print "new frame"

f = Frame()

目前这给了我:

  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

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

您想要子类化np.ndarray,而不是np.array,但在您的示例中,这比仅仅交换另一个要复杂一些。可能值得一看文档:http://docs.scipy.org/doc/numpy/user/basics.subclassing.html

相关内容

  • 没有找到相关文章

最新更新