Skip to content

Commit 72016c6

Browse files
committed
Cars counting works as part of examples
1 parent d1be3d0 commit 72016c6

5 files changed

Lines changed: 16 additions & 8 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454

5555
3.4. Simple [Abandoned detector](https://github.com/Smorodov/Multitarget-tracker/blob/master/src/Tracker/Ctracker.h)
5656

57-
3.5. [Line intersection](https://github.com/Smorodov/Multitarget-tracker/blob/master/cars_counting/CarsCounting.cpp) counting
57+
3.5. [Line intersection](https://github.com/Smorodov/Multitarget-tracker/blob/master/src/CarsCounting.cpp) counting
5858

5959
#### 4. [Advanced visual search](https://github.com/Smorodov/Multitarget-tracker/blob/master/src/Tracker/Ctracker.h) for objects if they have not been detected:
6060

@@ -149,7 +149,7 @@ How to run cmake on Windows for Visual Studio 15 2017 Win64: [example](https://g
149149

150150
Params:
151151
1. Movie file, for example ../data/atrium.avi
152-
2. [Optional] Number of example: 0 - MouseTracking, 1 - MotionDetector, 2 - FaceDetector, 3 - PedestrianDetector, 4 - OpenCV dnn objects detector, 5 - Yolo Darknet detector, 6 - YOLO TensorRT Detector
152+
2. [Optional] Number of example: 0 - MouseTracking, 1 - MotionDetector, 2 - FaceDetector, 3 - PedestrianDetector, 4 - OpenCV dnn objects detector, 5 - Yolo Darknet detector, 6 - YOLO TensorRT Detector, Cars counting
153153
-e=0 or --example=1
154154
3. [Optional] Frame number to start a video from this position
155155
-sf=0 or --start_frame==1500

example/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,11 @@ if (BUILD_YOLO_TENSORRT)
5858
add_definitions(-DBUILD_YOLO_TENSORRT)
5959
endif(BUILD_YOLO_TENSORRT)
6060

61+
if (BUILD_CARS_COUNTING)
62+
add_definitions(-DBUILD_CARS_COUNTING)
63+
endif(BUILD_CARS_COUNTING)
64+
65+
6166
ADD_EXECUTABLE(${PROJECT_NAME} ${SOURCES} ${HEADERS})
6267

6368
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${LIBS})

example/CarsCounting.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ void CarsCounting::DrawTrack(cv::Mat frame, const TrackingObject& track, bool dr
5050
{
5151
cv::Rect brect = track.m_rrect.boundingRect();
5252

53-
m_resultsLog.AddTrack(framesCounter, track.m_ID, brect, track.m_type, track.m_confidence);
53+
m_resultsLog.AddTrack(framesCounter, track.m_ID, brect, track.m_type, track.m_confidence);
5454
m_resultsLog.AddRobustTrack(track.m_ID);
5555

5656
if (track.m_isStatic)

example/main.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ static void Help()
2424
const char* keys =
2525
{
2626
"{ @1 |../data/atrium.avi | movie file | }"
27-
"{ e example |1 | number of example 0 - MouseTracking, 1 - MotionDetector, 2 - FaceDetector, 3 - PedestrianDetector, 4 - OpenCV dnn objects detector, 5 - YOLO Darknet detector, 6 - YOLO TensorRT Detector | }"
27+
"{ e example |1 | number of example 0 - MouseTracking, 1 - MotionDetector, 2 - FaceDetector, 3 - PedestrianDetector, 4 - OpenCV dnn objects detector, 5 - YOLO Darknet detector, 6 - YOLO TensorRT Detector, 7 - Cars counting | }"
2828
"{ sf start_frame |0 | Start a video from this position | }"
2929
"{ ef end_frame |0 | Play a video to this position (if 0 then played to the end of file) | }"
3030
"{ ed end_delay |0 | Delay in milliseconds after video ending | }"
@@ -96,10 +96,13 @@ int main(int argc, char** argv)
9696

9797
#ifdef BUILD_CARS_COUNTING
9898
case 7:
99-
detector = std::make_unique<CarsCounting>(parser);
100-
detector->AddLine(RoadLine(cv::Point2f(0.1f, 0.7f), cv::Point2f(0.47f, 0.7f), 0));
101-
detector->AddLine(RoadLine(cv::Point2f(0.52f, 0.6f), cv::Point2f(0.8f, 0.6f), 1));
99+
{
100+
auto carsCounting = new CarsCounting(parser);
101+
carsCounting->AddLine(RoadLine(cv::Point2f(0.1f, 0.7f), cv::Point2f(0.47f, 0.7f), 0));
102+
carsCounting->AddLine(RoadLine(cv::Point2f(0.52f, 0.6f), cv::Point2f(0.8f, 0.6f), 1));
103+
detector = std::unique_ptr<CarsCounting>(carsCounting);
102104
break;
105+
}
103106
#endif
104107

105108
default:

src/Tracker/Ctracker.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ void CTracker::UpdateTrackingState(const regions_t& regions,
240240
if (assignment[i] != -1) // If we have assigned detect, then update using its coordinates,
241241
{
242242
m_tracks[i]->SkippedFrames() = 0;
243-
std::cout << "Update track " << i << " for " << assignment[i] << " region, regionEmbeddings.size = " << regionEmbeddings.size() << std::endl;
243+
//std::cout << "Update track " << i << " for " << assignment[i] << " region, regionEmbeddings.size = " << regionEmbeddings.size() << std::endl;
244244
if (regionEmbeddings.empty())
245245
m_tracks[i]->Update(regions[assignment[i]],
246246
true, m_settings.m_maxTraceLength,

0 commit comments

Comments
 (0)