You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OpenCV 4.7.0 and 4.8.0 compiled from source
Operating system: various Linux versions
Compiler: gcc5, gcc7 and gcc11
Detailed description
Took me a whole week to investigate #23982 and found a very bizzare behaviour that nobody will easily expect.
When infering DNNs everything is ok, as long as I infere the same model several times (I tried up to 3). However, the problem start when infering different models. With standard logging, still, everything works fine.
However, when cv::utils::logging::setLogLevel(cv::utils::logging::LOG_LEVEL_VERBOSE); is used (I use that to ensure my build of OpenCV is actually multi-threading on various platforms), the third inference stops working reproducibly . The provided code as 4 net and commenting inferences shows that the concrete model does not seem to matter.
OpenCV(4.8.0) Error: Requested object was not found (Required argument "operation" not found into dictionary) in get, file /build/uk/source/4.8.0_trial/source/lib/modules/dnn/include/opencv2/dnn/dnn.inl.hpp, line 350
[DEBUG:0@3.570] global system.cpp:2881 restoreFPDenormalsState core: restore FP mxcsr flags = 0x00001fa0
ERROR: caught an exception
Your are not testing the problem: According to the documentation cv::utils::logging::setLogLevel(cv::utils::logging::LOG_LEVEL_VERBOSE); cannot be used in release mode. It is not documented what will happen if you use it anyway.
You have to build a debug version to see the effect.
System Information
OpenCV 4.7.0 and 4.8.0 compiled from source
Operating system: various Linux versions
Compiler: gcc5, gcc7 and gcc11
Detailed description
Took me a whole week to investigate #23982 and found a very bizzare behaviour that nobody will easily expect.
When infering DNNs everything is ok, as long as I infere the same model several times (I tried up to 3). However, the problem start when infering different models. With standard logging, still, everything works fine.
However, when
cv::utils::logging::setLogLevel(cv::utils::logging::LOG_LEVEL_VERBOSE);
is used (I use that to ensure my build of OpenCV is actually multi-threading on various platforms), the third inference stops working reproducibly . The provided code as 4 net and commenting inferences shows that the concrete model does not seem to matter.Steps to reproduce
The problem is reproducible and enforceable.
The code used:
Error message:
I used the following files for the nets:
Issue submission checklist
The text was updated successfully, but these errors were encountered: