Traffic Sign Detector For Road Safety
Chris Barsolai
Unknown
- 0 Collaborators
This project features the development of a computer vision based automatic real-time traffic sign detection from continuous video frames, and subsequent classification into danger, information, obligation and prohibition classes (as per road sign regulations in the target country) and their recognition to provide a driver alert system via an audio format. ...learn more
Project status: Under Development
Groups
Student Developers for AI
Intel Technologies
AI DevCloud / Xeon,
Intel Opt ML/DL Framework,
Movidius NCS
Overview / Usage
Traffic sign recognition usually consists of two components: detection and classification. Traffic signs shall be detected by analyzing color information (mostly red and blue) and classification done according to their shape characteristics, as triangular, squared and circular shapes using deep convolution neural networks (CNN). A combination of these two results will enable the sign to be categorized into one of the classes: danger, information, obligation or prohibition.
In detection phase, a color-based segmentation method is used to scan the scene in order to quickly establish regions of interest. The detection module segments the input image in an RGB color space, and then it detects road signs by using the shape filtering method. The classification module present determines the type of detected road signs by using an artificial neural network (ANN). Traffic sign detection will be carried out under unpredictable complex scenes, and so one goal will be to maximize accuracy levels.
Translation of the road sign wordings into a different language shall be implemented using the Google Translate API. This will be extremely useful since some of the road signs are written in different languages (e.g in Kenya, some are written in Swahili), or road construction companies may extract signs in other languages, e.g Chinese.
The standard network that is used for pattern recognition, is a two-layer feedforward network, with a sigmoid transfer function in the hidden layer, and a softmax transfer function in the output layer. Real-time video frames go through this network.
Methodology / Approach
Software
The prediction model to be used for this project is a LeNet-5 deep neural network. Intel Optimized Tensorflow library will be used to implement the LeNet-5 neural network on the Intel AI DevCloud (running Xeon Phi processors), and efficiently run on the Movidius VPU once deployed.
Training images will be collected by acquiring appropriate frames from video sequences, which are intended to be captured on different roads and highways in the target country in a real-time environment. The images collected will be appropriately split into training, validation and test sets. These images shall be uploaded to Intel AI DevCloud where the neural network will run several epochs and data fed into the network in batches to reduce memory footprint. I plan to use the Adam optimizer because it’s been shown to converge faster than stochastic gradient descent. Choice of the Intel AI DevCloud was due to its robust compute architecture which meets the deep learning training and inference compute needs for this project.
I shall then use the validation set to calibrate the network’s hyperparameters.
Hardware
A raspberry pi3 will be used to run Tensorflow and any other libraries in use. A Raspberry Pi camera module/USB camera will take in continuous video from which detection will occur.
The Movidius Neural Compute Stick will be used for real-time fast detection by running on it the model used for inference. Real-timing systems require high accuracy, but vast quantities of data processing is a time-consuming task. Movidius NCS is will enable rapid prototyping, validation, and deployment of the deep neural networks by acting as a neural network accelerator.
Technologies Used
Raspberry Pi + Pi Camera
Movidius Neural Compute Stick
Intel Optimized Tensorflow
Google Cloud Translation API
Intel AI DevCloud