Image Segmentation using Deeplab v3+
Experimenting with Quantization of Tensorflow Models on various datasets with the DeepLab v3 Decoder architecture and MobileNet v2 Encoder architectureusing using a variety of techniques including
- Quantization aware training
- Quantization aware training with delay
- Post training Quantization
- Quantized Inference/Evalulation
@inproceedings{deeplabv3plus2018, title={Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation}, author={Liang-Chieh Chen and Yukun Zhu and George Papandreou and Florian Schroff and Hartwig Adam}, booktitle={ECCV}, year={2018} }
pip install all the following required packages.
- TensorFlow 1.15
- Jupyter Notebook
- Python 3.6
- Numpy
- Pillow
- matplotlib
- conda
Note: For a ready to use envirenment, a deeplearning ami on an EC2 instance would come with all the required packages needed to run this repo immediatly.
- clone the repo
- navigate to ImageSegmentationWithDeeplab (command: cd ImageSegmentationWithDeeplab)
- run the command "jupyter notebook"
- use the provided url (default: localhost:8888)
- open the "inference_deeplab.ipynb" notebook
- From drop down list Cell > Run All
- FLOAT32 Segmentation
- Post-Quantization UINT8 Segmentation (no fine-tuning)
- Post-Quantization UINT8 Segmentation (10K-iteration fine-tuning)
- Quantization-Aware-Training UNIT8 Segmentation
This page (code, report and presentation) is the group "E" submission for Final project for CS256: Selected Topics in Artificial Intelligence, Section 2. Leb by Instructor: Mashhour Solh, Ph.D.
The group members are:
- Sherif Elsaid
- Inhee Park
- Sagar Shahi
- Sriram Priyatham Siram
- Anand Vishwakarma
For questions on this project and code please reach out to:
"contact@sherifsabri.dev"
This project was conducted with free credits provided by AWS educate team.