From 49a2d7a4f63f54bdba639e4ab6c916442ed059ba Mon Sep 17 00:00:00 2001 From: Nicolas Pope <nwpope@utu.fi> Date: Fri, 7 Feb 2020 19:23:26 +0200 Subject: [PATCH] Specify opencv components --- CMakeLists.txt | 2 +- components/common/cpp/src/timer.cpp | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c3c25a477..53dc9b883 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/") include(Findglog) -find_package( OpenCV REQUIRED ) +find_package( OpenCV REQUIRED COMPONENTS core imgproc highgui cudaimgproc calib3d imgcodecs videoio aruco cudaarithm cudastereo cudaoptflow face tracking quality) find_package( Threads REQUIRED ) find_package( URIParser REQUIRED ) find_package( MsgPack REQUIRED ) diff --git a/components/common/cpp/src/timer.cpp b/components/common/cpp/src/timer.cpp index 842a1e7ee..79fb8720b 100644 --- a/components/common/cpp/src/timer.cpp +++ b/components/common/cpp/src/timer.cpp @@ -92,9 +92,9 @@ static void waitTimePoint() { if (hprec_) { // Spin loop until exact grab time - //LOG(INFO) << "Spin Delay: " << (now / 40) << " = " << (40 - (now%40)); - + // Accurate to around 4 micro seconds. if (sincelast != mspf) { + // TODO: Try using sleep_for for msdelay-1 target = now / mspf; while ((now/mspf) == target) { _mm_pause(); // SSE2 nano pause intrinsic @@ -102,6 +102,7 @@ static void waitTimePoint() { }; } } else { + // Accurate to just under 1 millisecond usually if (sincelast != mspf) sleep_for(milliseconds(msdelay)); now = get_time(); } -- GitLab