派生自 Algorithm/baseDetector

sunty
2022-03-21 d0a24896f95b4e060011852f80048ebfb0bf5f55
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
50
51
52
53
54
55
56
57
58
59
60
61
cmake_minimum_required(VERSION 3.5)
project(baseDetector VERSION 1.0)
enable_language(CUDA)
 
set(CMAKE_CXX_COMPILIER "/usr/bin/g++")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O3 -Wno-write-strings")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath -Wl,$ORIGIN")
 
set(CUDA_Path /home/disk2/workspace/sunty/lib/cuda-11.1)
set(OPENCV_DIR /home/disk2/workspace/sunty/lib/opencv-4.5.2)
#find_package(OpenCV REQUIRED)
set(TensorRT_DIR /home/disk2/workspace/sunty/lib/TensorRT-7.2.3.4)
set(LOG_DIR /home/disk2/workspace/sunty/lib/log4cplus)
 
include_directories(${OPENCV_DIR}/include/opencv4)
link_directories(${OPENCV_DIR}/lib)
include_directories(${CUDA_Path}/include)
link_directories(${CUDA_Path}/lib64)
include_directories(${TensorRT_DIR}/include)
include_directories(${TensorRT_DIR}/samples/common)
link_directories(${TensorRT_DIR}/lib)
link_directories(${LOG_DIR}/lib)
include_directories(${LOG_DIR}/include)
 
file(GLOB_RECURSE sources src/* src/core/* src/utils/* src/detecter_tools/* ${TensorRT_DIR}/samples/common/*.h ${TensorRT_DIR}/samples/common/logger.cpp)
set(LIBS nvinfer nvparsers nvonnxparser nvinfer_plugin stdc++fs jsoncpp log4cplus)
 
if(NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
    set(CMAKE_CUDA_ARCHITECTURES 61 75 72 80)
endif(NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
 
 
#
find_package(CUDA REQUIRED)
if(CUDA_VERSION_MAJOR GREATER 9)
  message("-- CUDA ${CUDA_VERSION_MAJOR} detected")
  set(
          CUDA_NVCC_FLAGS
          ${CUDA_NVCC_FLAGS};
          -gencode arch=compute_61,code=sm_61 -std=c++14
          -gencode arch=compute_80,code=sm_80 -std=c++14
          -gencode arch=compute_72,code=sm_72 -std=c++14
          -gencode arch=compute_75,code=sm_75 -std=c++14
  )
  set(CUDA_NVCC_FLAGS_RELWITHDEBINFO "--device-debug;-lineinfo")
  #find_package(OpenCV REQUIRED) # 查找系统的默认opencv环境
  #message(${OpenCV_LIBS})
endif()
 
cuda_add_library(${PROJECT_NAME} SHARED ${sources})
target_include_directories(${PROJECT_NAME} PRIVATE ${OpenCV_INCLUDE_DIRS} src/ src/core src/utils/  src/tracker_tools/ src/Munkers_assign/ src/detecter_tools/ src/additional/)
#cuda_add_library(${PROJECT_NAME} SHARED ${sources})
target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBS} ${LIBS})
 
add_executable(demo demo.cpp)
target_include_directories(demo PRIVATE src/ src/core src/utils/ src/detecter_tools/ src/tracker_tools/ src/Munkers_assign/ src/additional/)
target_link_libraries(demo ${PROJECT_NAME})
 
# add_executable(demo demo.cpp ${sources})
# target_include_directories(demo PRIVATE ${OpenCV_INCLUDE_DIRS} src/ src/core src/utils/ src/detecter_tools/)
# target_link_libraries(demo ${OpenCV_LIBS} ${LIBS})