我正在使用OpenCV和WXLibrary来创建一个用于图像处理的Rect对象。
这是我们的代码 等高线轮廓:
#print cv2.boundingRect(contour)
#rec = Rect(a)
a= cv2.boundingRect(contour)
rec = wx.Rect(a)
我们的错误是:
traceback (most recent call last):
File "/home/pi/Desktop/OpenCV(c++).py", line 149, in <module>
processImage()
File "/home/pi/Desktop/OpenCV(c++).py", line 101, in processImage
rec = wx.Rect(a)
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 1145, in __init__
_core_.Rect_swiginit(self,_core_.new_Rect(*args, **kwargs))
TypeError: in method 'new_Rect', expected argument 1 of type 'int'
语法方面,看起来很好。有什么问题?
答案 0 :(得分:1)
wx.Rect的构造函数不直接接受OpenCV的输出。尝试单独传递每个参数。
x, y, w, h = cv2.boundingRect(contour)
rect = wx.Rect(x, y, w, h)