sleep_404@home:~$

Final Report

Introduction

DetectionSuite is a tool which can not only be used to test/deploy object detection models but also to generate large datasets required to train them .The main aim of the project project was to add new features to DetectionSuite which would enhance the user experience , to allow users label large amounts of data and to create a ROS Node of the tool to expand it’s reach.

Work Done

Task Status Timeline Code Docs Video
Playback Functionalities DONE Phase-1 Pause+Playback rates are implemented; yet to add trackbar feature ; Added trackbar functionality;Finished Integration with the suite Playback options for DetectionSuite DetectionSuite with playback functionalities
Enhance the user experience DONE Phase-1 week2;week_3_pre : Added GUI to select weights + updated docs; Added the correct AppConfig of week 3 The Unexpected Week;Forgot creating an AppConfig file, not a problem !! Improvised GUI to select config files;Improvised GUI to select required parameters
Shift to official darknet NOT DONE , So implemented a GUI to select missing parameters in config file Phase-1 Week4:Added gui to select missing parameters , the code is broken tho..;Fixed minor issues;messed up code;GUI was broken earlier, now fixed;boxes variable was getting incremented , didn’t check that So you like compiling ?;You can miss a few parameters in the config file Missing parameters in config file Week 5
Adjustable bounding boxes DONE Phase-2 Half way through;Finished half of other half XD;Done with Adjustable bounding boxes Adjustable bounding boxes Adjustable Bounding boxes
Change Class Names DONE Phase-2 Added support to change class while inferencing; Yet to fix the Segme… ; can change the class names of wrongly detected objects Labeling Functionality Change class while inferencing
Add Detetions DONE Phase-2 Done with adding Labeling functionality , atleast think so :);Fixed probability issue and also Updated the Docs Labeling Functionality Adding bounding boxes
ROS NODE DONE Phase-3 Created a ROS node of DetectionSuite(Deployer); Created a class object of the node;Removed unnecessary lines ;Publishing detections;Fixed a minor issue Creating a ROS Node rosnode
Debian Package NOT DONE Phase-3 Last week’s work , while working on debian package Creating a debian package N/A
Documentation & Videos Done Phase-3 N/A Gsoc Blog My Channel;New features in DetectionSuite !!;Rosnode of DetectionSuite(deployer)

Improvements & Suggestions

  1. Add support to Darknet
  2. Succesfully create a debian package
  3. Add support to store the labeled data in many other standard formats , currently being stored in a JSON string.
  4. Create a GUI application for labeling functionality (currently using deployer’s interface ) where the users can select the dataset format.

My Experience with JDE

It obviously was a wonderful experience to work with JDE organization. I got to learn many things like how GUI interfaces are made using Qt, how different components of the code are brought together using CMake, how debian packages work and how they are built ,gained experience using ROS,and hell lot about different errors. This is the first time I got to use C++ as the developing language in this large a project and it was awesome. Earlier I had no clue about the OOPs concepts of C++ have used it javascript only till then , but thanks to community bonding period I successfully got away with the basics and bigger thanks to the coding period where I got to test those concepts in real world projects. Yeah, there would have been a next level of satisfaction had I built a debain package of this tool , it was the cherry on top of the cake. But no worries , I got to learn how things are done under the hood. And GSoC is finished so what …. I can still contribute to the organization and will definitely finish building the debian package soon. Forgot to mention , this semester I am working on my undergrad project and guess what…. I will get to use the tool that I contributed to, to generate training data for drones and to add object tracking feature to the tool to further ease the process of labeling data. In short this project not only helped me learn getting better when I was participating in GSoC , but also after it , and it was great experience working with JDE robotics :)

Acknowledgements

I have no words that can describe how grateful I am to my mentors - Vinay and Sergio, for all their support, for being extremely helpful and listen with patience to every one of my problems. Without them this project would have been a lot more harder to work on.
I am also thankful to Jose Maria Sir and JDE Organisation for the opportunity to work on this project, which helped me learn a lot in such a short period.