- Adverse weather-related fatalities constituted about 16 % of total fatalities. This model if implemented with a hardware device and equipped within a vehicle will help mitigating these accidents.
- When integrated within a car, a warning message can be generated if a vehicle is detected.
- Self Drive Cars which are capable of cue assisstance during Taffic Jams, Collision Avoidance, etc. fail during conditions like heavy fog, rain, snow and sandstorms.
- It can be used with CCTV cameras which are unable to work perfectly during adverse weather conditions.
- Principle: Utilized DAWN2020 dataset to check the efficiency of the already built object detection models to detect vehicles in adverse weather conditions.
- Tech used: Image Augmentation (creating data from existing data) and Transfer Learning Techniques (storing knowledge gained while solving one problem and applying it to a different but related problem). The model for object detection with no adverse conditions was trained on ImageNet dataset. This is fine tuned using various ML algorithms to train it in adverse conditions as well (adaptive learning rate).
- ML models: Various models like YOLO V4, SSD (Resnet 50 FPN), Faster RCNN (Resnet 50 FPN) and were used to get the results, Faster RCNN (Resnet 50 FPN) giving the best results.
- DAWN dataset (1027 images of both vehicles(major) and humans)
- 6 types of vehicles(Bicycle, Bus, Car, MotorCycle, Train, Truck).
- 300 images of fog, 200 of rain, 323 of sand and 204 images of snow
- The dataset was originally numbered as 1,2,3 and so on. LabelMe helped to identify the numbers 1,2,3..and then we manually fix the number with a type of vehicle. We passed it along with a pipeline.config file which has metadata in it. Via python script, the pipeline.config file runs and the model gets trained.
- Data Augmentation (via ImageDataGenerator Class): rotation, shearing, Zooming, cropping, flipping and changing the brightness level. Also, neglecting the Humans' image
- Data Preprocessing: the actual image size was large thus the images are scaled into 640*640*3 (RGB) so that computation can be reduced
- Dividing the dataset into train, validation and test
- Choosing the model
- Training and then Evaluating the model
- Make Predictions
- Feature Extraction
- Feature Aggregation
- Bounding Box Prediction
- Used CentOS Linux Distribution to train the model and nvidia GTX 1080 Ti GPU
- Studied various papers related to Object Detection and according to that tried different models one by one
- Performance is evaluated on the basis of mean Average Precision (mAP) value of the different models. The same is shown with help of the graph, table and the sample test image below
- The GitHub link from which the models' zip file was extracted and some of the research papers studied link is in the refernces below
SSD ResNet
Faster RCNN
SSD ResNet 50
Faster RCNN
YOLO V4
- Different Dataset
- Hyperparameter tuning such as taking different initial learning rate, variation in learning rate, backpropagation process, number of layers, etc.
- Choosing different models
- Data collection
- High computational cost
- Difficulty in the initial phases due to pandemic
- DAWN Dataset Citation: KENK, Mourad (2020), “DAWN”, Mendeley Data, V3, doi: 10.17632/766ygrbt8y.3
- https://arxiv.org/pdf/2004.10934.pdf
- https://proceedings.neurips.cc/paper/2015/file/14bfa6bb14875e45bba028a21ed38046-Paper.pdf
- https://arxiv.org/pdf/1912.06319.pdf
- https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.md