-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Replication code:
import cv2 as cv
from cv2_hardware_init import *
import gc
camera.open()
last_mem_free = gc.mem_free()
while True:
mem_free = gc.mem_free()
memory_used = last_mem_free - mem_free
last_mem_free = mem_free
print("Memory free: %d KiB" % (mem_free // 1024), end='\t')
print("Memory consumed: %d KiB" % (memory_used // 1024), end='\n')
key = cv.waitKey(1)
if key != -1:
break
camera.release()
Running after a soft reset prints:
Memory free: 7650 KiB Memory consumed: 0 KiB
Memory free: 7611 KiB Memory consumed: 38 KiB
Memory free: 7543 KiB Memory consumed: 67 KiB
Memory free: 7476 KiB Memory consumed: 67 KiB
Memory free: 7409 KiB Memory consumed: 67 KiB
Memory free: 7343 KiB Memory consumed: 65 KiB
Memory free: 7276 KiB Memory consumed: 67 KiB
Memory free: 7208 KiB Memory consumed: 67 KiB
Commenting out camera.open()
:
Memory free: 7649 KiB Memory consumed: 0 KiB
Memory free: 7649 KiB Memory consumed: 0 KiB
Memory free: 7649 KiB Memory consumed: 0 KiB
Memory free: 7649 KiB Memory consumed: 0 KiB
Memory free: 7649 KiB Memory consumed: 0 KiB
Memory free: 7648 KiB Memory consumed: 0 KiB
There shouldn't be any memory consumption here, because the driver is written to simply fill the buffer
array, not allocate new arrays. So what would be causing the memory consumption?
Metadata
Metadata
Assignees
Labels
No labels