Giter Site home page Giter Site logo

hnjm / traffic-signs-classification Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alexliyang/traffic-signs-classification

0.0 2.0 0.0 24.7 MB

A deep neural network to classify traffic signs, using TensorFlow.

License: MIT License

Python 0.11% Jupyter Notebook 65.44% HTML 34.45%

traffic-signs-classification's Introduction

In this project, I have used what I've learned about deep neural networks and convolutional neural networks to classify german traffic signs using the TensorFlow framework. This project is submitted as partial fulfillment of Udacity's Self-Driving Car Engineer Nanodegree program.

Jupyter Notebook

  • Traffic_Sign_Classifier.ipynb

Generated HTML

  • report.html

PDF Writeup Ver2

  • WRITEUP_ver2.pdf

DATA


Recommendations for Improvements

  • To strengthen the predictions of this convolutional neural network, I think we should feed it more data. Some of the classes were represented far more than others. The lack of balance in the training data set results in a bias towards classes with more data points. We can generate "fake" data points for less represented classes by applying small but random translational and rotational shifts as well as shearing and warping to existing images in the training set.

  • Preprocessing the data can be made faster by using better localized histogram equalization techniques and also no longer normalizing the values to be floats within the range of 0 to 1. Using integers between 0, 255 might be sufficient.

  • Visualizing the network weights can also help in designing the architecture. Visualize them by plotting the weights filters of the convolutional layers as grayscale images.

  • Check the data points which are incorrectly predicted by the system and try to analyze this information.

  • Experiment with hyperparameters and other architectures.Try fiddling with the filter size of the convolutional layers as well like its output/output depth, you can also fiddle with the output size of the fully connected layers and the dropout probability.

  • Use L2 regulation or early stopping techniques to prevent overfitting.

  • Play around with different types of optimizer functions.


Miscellaneous

This convolutional neural network is a modified version of this code as presented in the lectures:

Data sets used is publicly available here:


Good Readings

traffic-signs-classification's People

Contributors

mithi avatar

Watchers

 avatar  avatar

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.