如何调用需要自我参数的函数

时间:2019-05-10 07:49:09

标签: python function parameters self

我正在尝试测试一个返回CLD功能的功能。 它仅需要使用numpy库。我正在对其进行测试,但它始终表示需要一个self参数。我不知道为什么会这样,因为该功能仅接收我正在用opencv加载的一张图像。

这是我要使用的课程: colorlayoutdescriptor.py

import numpy as np

class ColorLayoutDescriptor:
    def __init__(self):
        self.rows = 8
        self.cols = 8
        self.prefix = "CLD"

    def compute(self, img):
        averages = np.zeros((self.rows,self.cols,3))

我希望将一张图像发送到名为compute的方法并获得一个特征向量,现在我遇到了这个问题:

image = cv2.imread("test.jpg")
vector = ColorLayoutDescriptor.compute(image)
  

TypeError:compute()缺少1个必需的位置参数:'img'

非常感谢。

1 个答案:

答案 0 :(得分:3)

ColorLayoutDescriptor是一个类,因此您首先必须创建该类的实例:

cld = ColorLayoutDescriptor()
cld.compute(image)