任何人都知道如何使用图片创建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 *'
答案 0 :(得分:1)
这可能会解决您的问题:
int val[9]={0,1,0,1,1,1,0,1,0};
答案 1 :(得分:0)
使用Python 2.7和OpenCV 2.3.0运行相同的指令并没有给我带来错误。它按预期返回了一个IplConvKernel。
我假设您正在使用较旧版本的OpenCV,因为您的函数使用旧的命名约定(即cvCreateStructureElementEx与CreateStructureElementEx)。过去,OpenCV在这里和Python包装器中都有一些错误 - 这可能就是其中之一。
您的环境是否可以将OpenCV更新为2.3.x?如果是这样,请确保您还使用Python 2.6或2.7 - 据我所知,这些是目前支持的唯一版本。
编辑: Hrm。刚看到这个日期。没意识到我回到那么远!哦,好吧,希望对某人有用。