最近使用python在做一个目标识别的项目,需要死循环载入图片,识别后再输出结果,如下:

while 1:
    frame = cv2.imread("pic.jpg")
    ...

但由于使用cv2.imread重复的载入图片,会看到内存在不断飙升,直到内存泄露为止。

主要原因是:无法跳出while 1死循环,导致每次重复创建的frame变量无法销毁,程序运行一段时间后,就会内存不足。

解决方法很简单:

frame  = ""
while 1:
    frame = cv2.imread("pic.jpg")
    ...

 只需要在while循环外创建一个frame全局变量,让每次cv2.imread读入的图片都存在全局变量中即可。

相关文章:

  • 2022-12-23
  • 2021-07-14
  • 2022-12-23
  • 2022-02-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-23
  • 2022-12-23
  • 2021-10-07
  • 2022-01-08
  • 2022-01-19
  • 2022-12-23
  • 2021-09-05
相关资源
相似解决方案