johpetsc / traffic-sign-recognition

Detection and recognition of traffic signs.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Traffic sign recognition

Detection and recognition of traffic signs.
The recognition model was trained using fastai and the GTSRB dataset, with the best result of 99.99% accuracy for Resnet-50.
The detection model was trained based on the GTSDB and a pre-trained object detection model from Tensorflow's Detection Model Zoo.

The detection model is trained to recognize more general features, such as the sign shape and color, while the recognition model is the one in charge of differentiating the signs based on more specific features.

Example

Requirements

To run it locally, it's recommended to have at least 16GB of RAM and a GPU with 6GB of VRAM. If your computer does not meet the requirements, you can adapt the code for a Google Colab notebook.

Execute

Convert the detection dataset to TFRecords:

    $ python src/create_tfrecord.py

Train the recognition model:

    $ python src/recognition.py

Train the detection model:

    $ python src/train_detection.py --model_dir=models/faster_rcnn --pipeline_config_path=models/faster_rcnn/pipeline.config

Export the detection model after training:

    $ python src/export_model.py --input_type image_tensor --pipeline_config_path .\models\faster_rcnn\pipeline.config --trained_checkpoint_dir .\models\faster_rcnn\ --output_directory .\models\detection

Detect and recognize traffic signs on test images:

    $ python src/detection.py

Tutorials

Dataset

About

Detection and recognition of traffic signs.

License:MIT License


Languages

Language:Python 100.0%