- 
                Notifications
    You must be signed in to change notification settings 
- Fork 1
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