1- # ----------------------------------------------------------------------------
2- # минимальная версия CMake, способная переварить этот файл
3- # ----------------------------------------------------------------------------
41cmake_minimum_required (VERSION 2.8 )
5- project (MultitargetTracker)
2+
3+ project (MultitargetTracking)
64
75unset (CMAKE_CXX_FLAGS CACHE )
86
@@ -25,225 +23,8 @@ set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/build)
2523set (EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR} )
2624set (LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR} )
2725
28- # ----------------------------------------------------------------------------
29- # Предполагаем, что FindOpenCV.cmake расположен по адресу CMAKE_MODULE_PATH.
30- # ----------------------------------------------------------------------------
31- FIND_PACKAGE (OpenCV )
32- # ----------------------------------------------------------------------------
33- # ищем все .cpp и .h файлы и добавляем их в наш проект
34- # ----------------------------------------------------------------------------
35- set (folder_source
36- main.cpp
37- VideoExample.cpp
38-
39- Detector/BaseDetector.cpp
40- Detector/MotionDetector.cpp
41- Detector/BackgroundSubtract.cpp
42- Detector/vibe_src/vibe.cpp
43- Detector/Subsense/BackgroundSubtractorLBSP.cpp
44- Detector/Subsense/BackgroundSubtractorLOBSTER.cpp
45- Detector/Subsense/BackgroundSubtractorSuBSENSE.cpp
46- Detector/Subsense/LBSP.cpp
47- Detector/FaceDetector.cpp
48- Detector/PedestrianDetector.cpp
49- Detector/pedestrians/c4-pedestrian-detector.cpp
50- Detector/SSDMobileNetDetector.cpp
51- Detector/YoloDetector.cpp
52-
53- Tracker/Ctracker.cpp
54- Tracker/track.cpp
55- Tracker/HungarianAlg/HungarianAlg.cpp
56- Tracker/LocalTracker.cpp
57- Tracker/Kalman.cpp
58- )
59-
60- set (folder_headers
61- MouseExample.h
62- VideoExample.h
63- nms.h
64- defines.h
65-
66- Detector/BaseDetector.h
67- Detector/MotionDetector.h
68- Detector/BackgroundSubtract.h
69- Detector/vibe_src/vibe.hpp
70- Detector/Subsense/BackgroundSubtractorLBSP.h
71- Detector/Subsense/BackgroundSubtractorLOBSTER.h
72- Detector/Subsense/BackgroundSubtractorSuBSENSE.h
73- Detector/Subsense/DistanceUtils.h
74- Detector/Subsense/LBSP.h
75- Detector/Subsense/RandUtils.h
76- Detector/FaceDetector.h
77- Detector/PedestrianDetector.h
78- Detector/pedestrians/c4-pedestrian-detector.h
79- Detector/SSDMobileNetDetector.h
80- Detector/YoloDetector.h
81-
82- Tracker/Ctracker.h
83- Tracker/track.h
84- Tracker/HungarianAlg/HungarianAlg.h
85- Tracker/LocalTracker.h
86- Tracker/Kalman.h
87- )
88-
89- set (graph_source
90- Tracker/graph/tokenise.cpp
91- # Tracker/graph/script.cpp
92- # Tracker/graph/rings.cpp
93- Tracker/graph/mytree.cpp
94- Tracker/graph/mygraph.cpp
95- Tracker/graph/mwbmatching.cpp
96- Tracker/graph/mincut.cpp
97- Tracker/graph/gport.cpp
98- # Tracker/graph/gml2nestedsql.cpp
99- # Tracker/graph/gml2dot.cpp
100- # Tracker/graph/components.cpp
101- Tracker/graph/fheap.c
102- )
103-
104- set (graph_header
105- Tracker/graph/tokenise.h
106- Tracker/graph/mytree.h
107- Tracker/graph/mygraph.h
108- Tracker/graph/mwbmatching.h
109- Tracker/graph/mincut.h
110- Tracker/graph/gport.h
111- Tracker/graph/gdefs.h
112- Tracker/graph/fheap.h
113- )
114-
115- set (gtl_source
116- Tracker/graph/GTL/src/bellman_ford.cpp
117- Tracker/graph/GTL/src/bfs.cpp
118- Tracker/graph/GTL/src/biconnectivity.cpp
119- Tracker/graph/GTL/src/bid_dijkstra.cpp
120- Tracker/graph/GTL/src/components.cpp
121- Tracker/graph/GTL/src/debug.cpp
122- Tracker/graph/GTL/src/dfs.cpp
123- Tracker/graph/GTL/src/dijkstra.cpp
124- Tracker/graph/GTL/src/edge.cpp
125- Tracker/graph/GTL/src/embedding.cpp
126- Tracker/graph/GTL/src/fm_partition.cpp
127- Tracker/graph/GTL/src/gml_parser.cpp
128- Tracker/graph/GTL/src/gml_scanner.cpp
129- Tracker/graph/GTL/src/graph.cpp
130- Tracker/graph/GTL/src/maxflow_ff.cpp
131- Tracker/graph/GTL/src/maxflow_pp.cpp
132- Tracker/graph/GTL/src/maxflow_sap.cpp
133- Tracker/graph/GTL/src/min_tree.cpp
134- Tracker/graph/GTL/src/node.cpp
135- Tracker/graph/GTL/src/planarity.cpp
136- Tracker/graph/GTL/src/pq_node.cpp
137- Tracker/graph/GTL/src/pq_tree.cpp
138- Tracker/graph/GTL/src/ratio_cut_partition.cpp
139- Tracker/graph/GTL/src/st_number.cpp
140- Tracker/graph/GTL/src/topsort.cpp
141- )
142-
143- set (gtl_header
144- Tracker/graph/GTL/include/GTL/algorithm.h
145- Tracker/graph/GTL/include/GTL/bellman_ford.h
146- Tracker/graph/GTL/include/GTL/bfs.h
147- Tracker/graph/GTL/include/GTL/biconnectivity.h
148- Tracker/graph/GTL/include/GTL/bid_dijkstra.h
149- Tracker/graph/GTL/include/GTL/bin_heap.h
150- Tracker/graph/GTL/include/GTL/components.h
151- Tracker/graph/GTL/include/GTL/debug.h
152- Tracker/graph/GTL/include/GTL/dfs.h
153- Tracker/graph/GTL/include/GTL/dijkstra.h
154- Tracker/graph/GTL/include/GTL/edge.h
155- Tracker/graph/GTL/include/GTL/edge_data.h
156- Tracker/graph/GTL/include/GTL/edge_map.h
157- Tracker/graph/GTL/include/GTL/embedding.h
158- Tracker/graph/GTL/include/GTL/fm_partition.h
159- Tracker/graph/GTL/include/GTL/gml_parser.h
160- Tracker/graph/GTL/include/GTL/gml_scanner.h
161- Tracker/graph/GTL/include/GTL/graph.h
162- Tracker/graph/GTL/include/GTL/maxflow_ff.h
163- Tracker/graph/GTL/include/GTL/maxflow_pp.h
164- Tracker/graph/GTL/include/GTL/maxflow_sap.h
165- Tracker/graph/GTL/include/GTL/min_tree.h
166- Tracker/graph/GTL/include/GTL/ne_map.h
167- Tracker/graph/GTL/include/GTL/node.h
168- Tracker/graph/GTL/include/GTL/node_data.h
169- Tracker/graph/GTL/include/GTL/node_map.h
170- Tracker/graph/GTL/include/GTL/planarity.h
171- Tracker/graph/GTL/include/GTL/pq_node.h
172- Tracker/graph/GTL/include/GTL/pq_tree.h
173- Tracker/graph/GTL/include/GTL/ratio_cut_partition.h
174- Tracker/graph/GTL/include/GTL/st_number.h
175- Tracker/graph/GTL/include/GTL/symlist.h
176- Tracker/graph/GTL/include/GTL/topsort.h
177- Tracker/graph/GTL/include/GTL/version.h
178- Tracker/graph/GTL/include/GTL/GTL.h
179- )
180-
181- SOURCE_GROUP ("Source Files" FILES ${folder_source} )
182- SOURCE_GROUP ("Header Files" FILES ${folder_headers} )
183-
184- SOURCE_GROUP ("graph" FILES ${graph_source} ${graph_header} )
185- SOURCE_GROUP ("GTL" FILES ${gtl_source} ${gtl_header} )
26+ FIND_PACKAGE (OpenCV )
18627
187- include (CheckIncludeFileCXX )
188- check_include_file_cxx (opencv2/bgsegm.hpp HAVE_OPENCV_CONTRIB )
189- if (HAVE_OPENCV_CONTRIB)
190- add_definitions (-DHAVE_OPENCV_CONTRIB )
28+ add_subdirectory (src )
29+ add_subdirectory (example )
19130
192- option (USE_OCV_BGFG "Should use the bgfg algorithms from opencv_contrib?" ON )
193- option (USE_OCV_KCF "Should use the KCF tracker from opencv_contrib for collisions resolving?" ON )
194- option (USE_OCV_UKF "Should use the Unscented Kalman Filterr from opencv_contrib?" ON )
195-
196- else (HAVE_OPENCV_CONTRIB )
197-
198- option (USE_OCV_BGFG "Should use the bgfg algorithms from opencv_contrib?" OFF )
199- option (USE_OCV_KCF "Should use the KCF tracker from opencv_contrib for collisions resolving?" OFF )
200- option (USE_OCV_UKF "Should use the Unscented Kalman Filterr from opencv_contrib?" OFF )
201- endif (HAVE_OPENCV_CONTRIB )
202-
203- if (USE_OCV_UKF)
204- add_definitions (-DUSE_OCV_UKF )
205- endif (USE_OCV_UKF )
206-
207- if (USE_OCV_KCF)
208- add_definitions (-DUSE_OCV_KCF )
209- endif (USE_OCV_KCF )
210-
211- if (USE_OCV_BGFG)
212- add_definitions (-DUSE_OCV_BGFG )
213- endif (USE_OCV_BGFG )
214-
215- # ----------------------------------------------------------------------------
216- # создаем проект
217- # ----------------------------------------------------------------------------
218- ADD_EXECUTABLE (MultitargetTracker ${folder_source} ${folder_headers} ${graph_source} ${graph_header} ${gtl_source} ${gtl_header} )
219- # ----------------------------------------------------------------------------
220- # добавляем include директории
221- # ----------------------------------------------------------------------------
222- INCLUDE_DIRECTORIES (
223- ${PROJECT_SOURCE_DIR} /Detector
224- ${PROJECT_SOURCE_DIR} /Detector/vibe_src
225- ${PROJECT_SOURCE_DIR} /Detector/Subsense
226- ${PROJECT_SOURCE_DIR} /Tracker
227- ${PROJECT_SOURCE_DIR} /Tracker/HungarianAlg
228- ${PROJECT_SOURCE_DIR} /Tracker/graph
229- ${PROJECT_SOURCE_DIR} /Tracker/graph/GTL/include )
230-
231- INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR} )
232- INCLUDE_DIRECTORIES (${OpenCV_INCLUDE_DIRS} )
233-
234- # ----------------------------------------------------------------------------
235- # и Lib-ы opencv
236- # ----------------------------------------------------------------------------
237-
238-
239- if (CMAKE_COMPILER_IS_GNUCXX)
240- set (LIBS
241- ${OpenCV_LIBS}
242- # iconv
243- )
244- else (CMAKE_COMPILER_IS_GNUCXX )
245- set (LIBS
246- ${OpenCV_LIBS}
247- )
248- endif ()
249- TARGET_LINK_LIBRARIES (${PROJECT_NAME} ${LIBS} )
0 commit comments