我正在使用Python 2.6来对抗OpenCV 2.0。我已经启动了文件捕获和拉帧。我已经显示图像以确保它有效。当我调用这个例程时,python崩溃了:
def SmoothImage(self,SmoothingMaskSize=3):
temp=cv.CreateImage(cv.GetSize(self._lpImage),self._lpImage.depth,self._lpImage.nChannels)
cv.Smooth(self._lpImage,temp)
self._lpImage=temp
我也尝试使用cv.Smooth(self._lpImage,self._lpImage)将其平滑到位
我是Python的新手 - 我错过了一些明显的东西吗?
谢谢!
答案 0 :(得分:0)
OpenCV 2.0安装程序附带的绑定有问题;我有类似的问题,一些非常简单的操作触发崩溃。从源代码编译应该修复它。
答案 1 :(得分:0)
如果你不需要访问OpenCV的面向对象部分,你应该看一下ctypes-opencv,这是一组更好的python绑定。与OpenCV附带的SWIG生成的绑定相比,它是精心手工制作的,我从来没有发现任何错误。
答案 2 :(得分:0)
您可以通过删除类定义来隔离问题吗?我得到了这个工作:
planes = [cv.CreateImage(cv.GetSize(image), cv.IPL_DEPTH_32F, 1) for i in range(3)]
cv.Split(image, planes[0], planes[1], planes[2], None)
for plane in planes:
cv.Smooth(plane, plane, smoothtype=cv.CV_GAUSSIAN, param1=9, param2=0, param3=0, param4=0)