Hi, I’m facing an odd situation where after processing a few frames, the net.forward() pass will start returning the same exact results despite that I’m feeding it different blobs every time. I haven’t been able to find the root of this yet, but at least I’ve found out that net.forward() is the one causing the problem. Some side notes:
-
it only happens when using cuda enabled version of cv compiled from source with CUDA and CUDNN enabled. CUDA version is 11.2 and CUDNN version 8.1.0. I picked these versions because I have the very same version of the software running in an identical machine somewhere else, and I’m not seeing the problem there.
-
this odd behavior does NOT happen when using python-opencv installed via pip … it will always work as expected.
-
the net has been loaded with cv2.dnn.readFromDarknet and works fine for a second or two, then net.forward starts returning always the same values.
It would seem as if the net.setInput(blob) failed … that could probably explain why I’m getting always the same outputs for the net.forward. Now, is this even possible? For the net.setInput() call to fail? Out of mem or something? Just thinking out loud, I’m not even sure that’s what’s really happening.
Do you have any other possible explanation as to why net.forward would start behaving like this? (to always give the same result?)
I will keep digging nonetheless, but any help will be very much appreciated.
Thank you.
Best regards.