A pixel wise segmentation of drivable path using Fully Convolutional Neural-Network (FCN).
Make sure you have the following is installed:
Download the Kitti Road dataset from here. Extract the dataset in the data
folder. This will create the folder data_road
with all the training a test images.
Run the following command to run the project:
python main.py
The network implemented in this project is based on this paper.
Ubuntu 16.04
Python 3.6+
Tensorflow 1.2+
GPU --> Nvidia Tesla M60 (8GB)
Training time : 40 mins (with following hyperparameters)
Learning rate : 0.001
Dropout (training keep prob) : 0.5
Epochs : 50
Batch size : 12
Kernel Regularizer : l2_regularizer(1e-3)
Some of the images obtained after training:
False positive sample:
False negative sample:
- Augment training images for better performance
- Use more datapoints (from other similar datasets; cityscape like)
- Increase classes (add pedestrians, vehicles, ...)
- All the unit test have passed.
- main.py runs without errors
- Newest inference images from
runs
folder included (all images from the most recent run)