Deep Learning Project

About the Deep Learning Project

Motivation: Deep learning has revolutionized image processing, enabling advanced classification and segmentation capabilities. This project aimed to leverage CNNs for CIFAR100 image classification and semantic segmentation using FCN models.

Technical Approach

Part 1: Image Classification with VGG16

  • Model: Pre-trained VGG16 with the final layer modified for CIFAR100 classification.
  • Training: 10 epochs, SGD optimizer with learning rate scheduling, cross-entropy loss.
  • Results: Achieved ~85% accuracy.

Part 2: Custom CNN

  • Architecture: Three convolutional layers, ReLU activations, max-pooling, and fully connected layers.
  • Training: 30 epochs, SGD optimizer, cross-entropy loss.
  • Results: Achieved ~78% accuracy.

Part 3: Semantic Segmentation

  • Model: Pre-trained FCN-ResNet101 for semantic segmentation.
  • Process: Generated class-based segmentation maps using real-world images.
  • Results: High visual clarity in segmentation outputs.

Challenges and Solutions

  • High Variance in Dataset: Normalized data and applied augmentations like horizontal flips.
  • Training Stability: Used learning rate schedulers for steady convergence.
  • Segmentation Clarity: Adjusted input sizes and post-processed segmentation maps.

Technologies Used

  • Frameworks: PyTorch, Torchvision.
  • Models: VGG16, Custom CNN, FCN-ResNet101.
  • Datasets: CIFAR100, real-world images.
  • Programming Language: Python.

Results

  • Image classification achieved ~85% accuracy with VGG16.
  • Custom CNN attained ~78% accuracy for CIFAR100 classification.
  • Semantic segmentation delivered precise and visually clear outputs.

Future Scope

  • Advanced Architectures: Exploring EfficientNet and Vision Transformers for higher accuracy.
  • Real-Time Segmentation: Implementing semantic segmentation in real-world robotic applications.
  • Improved CNN Designs: Deeper layers for enhanced generalization and better performance.

GitHub Repository

Explore more about this project on GitHub: Deep Learning Project Repository