Giter Site home page Giter Site logo

traffic_sign_interiit's Introduction

DETEKTOR

Link to the project website.

Link to README of DL code.

INSTRUCTIONS TO RUN THE UI

Python version: 3.7.10

Open a terminal in the root directory of the project

python -m pip install -r requirements.txt
python app.py

The UI can be accessed at localhost:5000 on any commonly used browser.

FEATURES

  • Add Images
  • Add Augmentations
  • Create Validation Set
  • View Dataset Statistics
  • Visualise Model
  • Train and Test Model
  • View Results

FEATURE DESCRIPTIONS

1. Add Images

Using the Add/Delete Custom Classes section in this tab, new custom classes can be added to our class set. Then using the Upload Images section, we can add images for these newly added custom classes.

We can also add new images to existing classes of the GTSRB dataset.

Preview of images of the GTSRB classes and customly added classes can also be viewed on this page.

Usage:

  • Upload Images:
    1. Choose the set to which data is to be added. (Train or Test)
    2. Select the Class for which the data is to be added. (Includes Original + New classes)
    3. Select image(s) to be uploaded and click Upload.
  • Add/Delete Custom Classes:
    1. Type name of new class and click Add Class button

    2. To delete new classes select them and click Delete Class button

      NOTE Along with the new class, all data added for it will also be deleted

2. Add Augmentations

This page provides the functionality to:

  1. Test and Preview augmentations on sample images.
  2. Apply the selected augmentations to the dataset.

Usage:

  1. Select an image to test augmentations on either from the existing samples or by uploading an image of your choice using the Upload Image button.
  2. To add any augmentation, first of all select the class whose augmentation needs to be applied followed by selecting the appropriate augmentation. Set the relevant parameters and click on the Add augmentation button. It will now be visible under the Applied Augmentations column.
  3. Clicking on the Preview button will apply the augmentations to the selected image and the new image will be shown.
  4. Once the augmentations are finalised we can apply them to the dataset. Click on the Apply Augmentations button, a popup window will appear. The user can select the classes to which the augmentations should be applied to along with the probability which determines the percentage of total images on which the augmentation will be applied.
  5. Clicking on Save changes will apply the augmentations to the dataset.

3. Create Validation Set

This page provides the functionality to:

  1. Add validation images for any class
  2. Split training into training and validation based on a specific split ratio

4. View Dataset Statistics :

In this tab we can see all the dataset statistics of our GTSRB dataset and the new data added using Add Images tab and augmented using Add Augmentations tab.

Structure:

  • On top there are two cards showing total labels and total data respectively.
  • Then, there is a Pie chart showing the data distribution among Train, Validation and Test set.
  • Then there are three stacked bar charts showing the individual distribution of each set into GTSRB data, augmented data and data of newly added classes.

5. Visualise Model :

This tab is dedicated to get a visual view of our model. An open source program called “Netron” is used to achieve this.

Usage:

  1. Select a model from the dropdown list and click the Visualise Model button.

6. Train and Test Model :

This page has two functionalities:

  1. Training a new model: Users can train a new model on specific additional classes and change the hyperparameters.
  2. Testing a pre-trained model: Users can test their pre-trained models on the classes they trained it on and see the accuracy results.

Usage:

  • Training a new model:
    1. In the Train Model section, select the additional classes you want to train the model on from Select Classes textboxes. If none are selected, the model will train on the pure GTSRB dataset.
    2. Select the hyperparameters: Batch Size, Epochs from the drop down and enter the Learning Rate.
    3. Click on the Train Model button to start training.
  • Testing a pre-trained model:
    1. In the Test Model section, select a pre-trained model from the drop-down list and click on the Test Model button.

7. View Results :

We can view obtained results in this tab.

  • Structure:
    1. Option to select the model the user wants to see results for.
    2. Then, there is a table having the classification accuracy and other metrics of that model for each class.
    3. A See confusion matrix button will show a popup showing the confusion matrix which will be a better visual for the classification accomplishment.
    4. Rise maps of some correctly and incorrectly classified traffic signs.

traffic_sign_interiit's People

Contributors

arvindjha114 avatar gaumo62 avatar hr1799 avatar jatin-47 avatar kalimali555 avatar karan-uppal3 avatar nisarg1631 avatar rajanant49 avatar shreyas-kowshik avatar shubheshanand avatar victorvini08 avatar yash12khandelwal avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

traffic_sign_interiit's Issues

Replace argparser with config file

It would be very difficult to add so many command-line arguments while running code.
Instead of that, it would be better if we could make a config file and parse that to set the arguments.

Idea: A template config file could be made. For every experiment just copy that config file and just change the parameters to be changed and run the experiment. Now will just have to give input the name of the config file to run the code.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.