OpenCV';3.0.0-dev';使用Python:While循环cv2.imread()和cv2.VideoCapture.read()函数时内存泄漏

OpenCV';3.0.0-dev';使用Python:While循环cv2.imread()和cv2.VideoCapture.read()函数时内存泄漏,python,opencv,memory-leaks,Python,Opencv,Memory Leaks,我最近将OpenCV从2.4.9更新到了3.0.0-dev,以便在python接口中使用一些新函数,该函数在OpenCV上与官方网站上的python教程一起使用 我用这个来预建安装 但我在相机拍摄和图像读取方面遇到了问题。 比如说 import cv2 cap = cv2.VideoCapture(0) num = 0 while True: ret,frame = cap.read() cv2.imshow('video',frame) k = cv2.waitKe

我最近将OpenCV从2.4.9更新到了3.0.0-dev,以便在python接口中使用一些新函数,该函数在OpenCV上与官方网站上的python教程一起使用

我用这个来预建安装

但我在相机拍摄和图像读取方面遇到了问题。 比如说

import cv2

cap = cv2.VideoCapture(0)

num = 0
while True:
    ret,frame = cap.read()
    cv2.imshow('video',frame)
    k = cv2.waitKey(1)
    if k == ord('q'):
        break
    elif k == ord('c'):
        cv2.imwrite('photo'+str(num)+'.jpg',frame)
        num += 1

cap.release()
cv2.destroyAllWindows()
如果我用cv2.imread()更改cap.read(),也可以

python.exe使用的内存会随着时间的推移而增加,直到内存满为止


我的OpenCV安装程序是否已经过时,我必须从最新的源代码编译OpenCV?
或者还有其他解决方案吗?

“我的OpenCV安装程序过时了吗”-第3.0条更多的是“来自未来”,但它是最前沿的。2.4.9也有同样的问题吗?没有,我的2.4.9可以很好地工作。我之所以升级它,是因为有些函数在Python中没有接口。我的“过时”意味着这个bug是否在Github的当前主提交中得到了修复,因为安装程序是在2014年2月发布的。啊,很高兴知道。你什么时候下载的?可能患有(固定于2014年2月3日)耶!,可能是这个问题。我昨天刚下载了我的安装程序,但Sourceforge说从2月1日起就没有更新过。现在我尝试从主分支构建OpenCV 3,但还是失败了,哈哈。我做得很差。是的,同样的src。难怪。从github更新代码,或者应用。未更新的安装程序值得在imho中提出问题。
import cv2

num = 0
while True:
    frame = cv2.imread('D:/Boat/work/hga_counter/test_photo/photo0.jpg')
    cv2.imshow('video',frame)
    k = cv2.waitKey(0)
    if k == ord('q'):
        break
    elif k == ord('c'):
        cv2.imwrite('photo'+str(num)+'.jpg',frame)
        num += 1
cv2.destroyAllWindows()