I am trying to run the NvOFTracker Sample provided with the NvOFT SDK.
I have installed the dependencies from the ReadMe and compiled the project using cmake following the instructions.
Cmake had no problem compiling, but when opening the project
Below is a screenshot of the errors I am getting when building the “INSTALL” project from the NVOFTSample in VS19.
With an example error here:
Severity Code Description Project File Line Suppression State
Error LNK2019 unresolved external symbol "void __cdecl cv::split(class cv::debug_build_guard::_InputArray const &,class cv::debug_build_guard::_OutputArray const &)" (?split@cv@@YAXAEBV_InputArray@debug_build_guard@1@AEBV_OutputArray@31@@Z) referenced in function "public: void __cdecl CROITracker::Track(class cv::Mat const &,class std::vector<struct LabeledInObject,class std::allocator<struct LabeledInObject> > &,class std::vector<struct LabeledOutObject,class std::allocator<struct LabeledOutObject> > &)" (?Track@CROITracker@@QEAAXAEBVMat@cv@@AEAV?$vector@ULabeledInObject@@V?$allocator@ULabeledInObject@@@std@@@std@@AEAV?$vector@ULabeledOutObject@@V?$allocator@ULabeledOutObject@@@std@@@5@@Z) nvoftracker C:\Coding\Optical_Flow_SDK_3.0.15\NvOFTracker\build\NvOFTracker\CROITracker.obj 1
From what I understand, it doesn’t find the OpenCV libraries. Which does not make sense to me as Cmake succeeds when compiling.
I have no idea how to procede from this point on. Guidance on how to solve these errors would be greatly appreciated.
Udate: By switching from Debugx64 to Releasex64 I have managed to reduce the errors down to these few:
Severity Code Description Project File Line Suppression State
Error C2694 'void Logger::log(nvinfer1::ILogger::Severity,const char *)': overriding virtual function has less restrictive exception specification than base class virtual member function 'void nvinfer1::ILogger::log(nvinfer1::ILogger::Severity,const nvinfer1::AsciiChar *) noexcept' NvOFTSample C:\Coding\Optical_Flow_SDK_3.0.15\NvOFTracker\NvOFTSample\detector\include\logging.h 221
Any idea what these are caused by?
Hello @Benutzer1631 !
The error messages seem to indicate a version mismatch in some of your dependent libraries. When using Debugx64 you are missing symbols, so switching to release looks like it addresses part of the problem. But there you have a mismatch in function signatures, which likely comes from a wrong library version. Which might be anything from a wrong driver or CUDA version to a mismatching CMake or Visual Studio version. If I would have to guess I would say the latter since there is an issue with using the logging function.
My recommendation would be to check out the system requirements and follow the installation instructions once more to make sure you have the exact same setup as is required there.
I hope that will help you get the sample app to run.
I got the sample app running by adding a noexcept
to the log function, I double checked my dependencies and couldn’t find anything missmatching.
That said, with the “noexcept” it builds and works fine.
I have one more question tho:
The boudning boxes the NVOFTracker draws on the videos - are those purely by YOLOV3 or are those already a combination of the Optical Flow + YoloV3.
Glad to hear you got the sample app running!
I checked with the experts and the bounding boxes are already the result of detection and tracking, so they are the combination.