blob: e7bb3b1c84ebd412f7c6943e39d7db6f54dcf44f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
include(opentrack-opencv)
set(host-spec "${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_PROCESSOR} ${CMAKE_SIZEOF_VOID_P}")
if(host-spec MATCHES "^Linux i[3-6]86 4$")
return()
endif()
find_package(OpenCV QUIET)
find_package(OpenMP QUIET) # Used to control number of onnx threads.
find_package(ONNXRuntime QUIET)
if(OpenCV_FOUND AND ONNXRuntime_FOUND AND OpenMP_FOUND)
if(MSVC)
add_compile_options(-EHsc)
add_definitions(-D_HAS_EXCEPTIONS=1)
endif()
otr_module(tracker-neuralnet)
target_link_libraries(${self}
opentrack-cv
onnxruntime::onnxruntime
opencv_calib3d
opencv_imgproc
opencv_imgcodecs
opencv_core
OpenMP::OpenMP_CXX
)
# OpenMP::OpenMP_CXX doesn't set up the -fopenmp linking option, so set it up ourselves.
if(NOT MSVC)
target_link_options(${self} PUBLIC ${OpenMP_CXX_FLAGS})
endif()
install(
FILES "models/head-localizer.onnx"
"models/head-pose.onnx"
"models/head-pose-0.2-big.onnx"
"models/head-pose-0.2-small.onnx"
DESTINATION "${opentrack-libexec}/models"
PERMISSIONS ${opentrack-perms-file}
)
if(WIN32)
otr_install_lib("${ONNXRuntime_RUNTIME}" ".")
endif()
if(MSVC)
otr_install_lib("redist/vcomp140.dll" "${opentrack-bin}")
endif()
endif()
|