派生自 Algorithm/baseDetector

Scheaven
2021-01-05 6ae75cc17b2952c63a79ff2c86da841f0dbbf3c6
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
cmake_minimum_required(VERSION 3.5)
project(yolo_SDK)
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/./build)
set(CMAKE_CXX_STANDARD 11)
 
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DGPU -DCUDNN -DOPENMP -march=native -W -pthread")
 
add_compile_options(-fPIC -g -Wall  -Wshadow -Wno-sign-compare -w)
 
#set(TENSORFLOW_DIR /home/disk1/s_opt/tensorflow/tensorflow-1.14.0)
set(PYTORCH_DIR /home/disk1/s_opt/03_libtorch/libtorch)
set(OPENCV_DIR /home/disk1/s_opt/01_opencv/opencv2.4.13)
 
SET(SOURCES
 
        )
 
#cudaS
find_package(CUDA REQUIRED)
 
message("-- CUDA version:$(CUDA_VERSION)")
 
# 设置环境的模型查找,如果CUDA版本大于9,则执行CUDA环境的模型查找
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 # 不同GPU有不同的算力指数,可查看算力表
    )
    set(CUDA_NVCC_FLAGS_RELWITHDEBINFO "--device-debug;-lineinfo")
 
    #find_package(OpenCV REQUIRED) # 查找系统的默认opencv环境
    #message(${OpenCV_LIBS})
endif()
 
include_directories(/home/disk1/s_opt/04_protobuf/protobuf-3.10.0/01_protobuf/include)
link_directories(/home/disk1/s_opt/04_protobuf/protobuf-3.10.0/01_protobuf/lib)  #动态链接库目录/bazel-bin/tensorflow
 
link_directories(
        /usr/local/lib
        /usr/local/cuda-10.0/lib64
        #       /usr/lib/x86_64-linux-gnu/
        #           ${CMAKE_SOURCE_DIR}/opencv3.4.8/lib
        ${OPENCV_DIR}/lib
        ./
)
 
SET(LIBS
        yolo
        protobuf
        torch
        torch_cuda
        torch_cpu -Wl,--no-as-needed
        c10
        c10_cuda
        gomp
        nvToolsExt
        opencv_core
        opencv_highgui
        #opencv_imgcodecs
        opencv_imgproc
        #opencv_videoio
        opencv_video
 
        cublas
        stdc++fs  #设置-lstdc++fs 新链接器选项,防止std等gcc库调用不到
        curand
        cuda
        cudnn
        jsoncpp
        dl
        m
        )
 
include_directories(
        ${CMAKE_CURRENT_SOURCE_DIR}
        ${PYTORCH_DIR}/include/
        ${PYTORCH_DIR}/include/torch/csrc/api/include
        ${OPENCV_DIR}/include
        #/home/disk1/s_opt/opencv/opencv3.4.8/include
        ./
)
 
cuda_add_executable(${PROJECT_NAME}
        sdk.cpp
        main.cpp
        ${SOURCES}
        )
 
target_link_libraries(${PROJECT_NAME}
        ${LIBS}
        )