【问题标题】:Python OpenCV cvCreateStructuringElementEx from Image, with shape = CV_SHAPE_CUSTOM来自图像的 Python OpenCV cvCreateStructuringElementEx,形状 = CV_SHAPE_CUSTOM
【发布时间】:2011-08-09 02:17:05
【问题描述】:

有人知道如何使用图片创建cvCreateStructuringElementEx 吗? 我正在尝试使用opencv.cv.cvCreateStructuringElementEx(), 我的结构是 bmp 160x120,黑色,白色半椭圆。

im = Image.open("struture.jpeg", "r")
im = im.convert("1")
val = numpy.uint(im.getdata())
gim = opencv.cv.cvCreateStructuringElementEx(im.size[0], im.size[1], im.size[0]/2, im.size[1]/2, opencv.cv.CV_SHAPE_CUSTOM, val)

所以返回错误:

TypeError: in method 'cvCreateStructuringElementEx', argument 6 of type 'int *'

【问题讨论】:

    标签: python opencv


    【解决方案1】:

    这可能会解决您的问题:

    int val[9]={0,1,0,1,1,1,0,1,0};
    

    【讨论】:

      【解决方案2】:

      使用 Python 2.7 和 OpenCV 2.3.0 运行相同的指令并没有给我带来错误。正如预期的那样,它返回了一个 IplConvKernel。

      我假设您使用的是旧版本的 OpenCV,因为您使用的是旧版本的函数命名约定(即 cvCreateStructureElementEx 与 CreateStructureElementEx)。 OpenCV 过去在 Python 包装器中经常出现一些错误 - 这可能就是其中之一。

      是否可以在您的环境中将 OpenCV 更新到 2.3.x?如果是这样,请确保您还使用 Python 2.6 或 2.7 - 据我所知,这些是当前唯一支持的版本。

      编辑: Hrm。刚看到这个日期。没想到我回了那么远!哦,好吧,希望对某人有用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-23
        • 2023-03-20
        • 2018-12-02
        相关资源
        最近更新 更多