Human detection and tracking module writtern in C++. The module is based on YOLO for object detection and multi-object tracking algorithm to continously track humans in the frame. The co-ordinates of the detections are received in the robot reference frame from the module.
- Nitesh Jha (UID - 117525366)
- Tanuj Thakkar (UID - 117817539)
Real-time obstacle detection is necessary for robot motion in dynamic environments so that the robot has enough time to actively avoid the obstacle. We propose a module that can detect humans and track their movement, in robot reference frame, over time for this purpose. For the detection, we adopt a deep learning approach and use the YOLOv5 architecture, which is able to detect humans in real time and with high accuracy. Our module can be extended to detect and track any number of classes, although for our application, we only detect the "person" class. The input to the detection module is from a monocular camera.
The detections are used by the tracking module which distinguishes between entities being tracked using unique identifiers. This module is based on a multi-object tracking algorithm. Tracking is also essential so as to make the overall module reliable in cases when the detection intermittently fails.
The tracked objects are then transformed to obtain their positions with respect to the world. This information can be used by the robot to avoid obstacles or to execute tasks in their vicinity.
sh requirements.sh
sh build.sh
./build/app/app
./build/test/cpp-test
sh cpplint.sh
sh cppcheck.sh
cd docs
doxygen Doxygen
- Agile Iterative Process (AIP)
- Test Driven Development (TDD)
- Phase 1
- Driver: Nitesh Jha
- Navigator: Tanuj Thakkar
- Phase 2
- Driver: Tanuj Thakkar
- Navigator: Nitesh Jha