Skip to content

Y-R-A-V-R-5/resomap

Repository files navigation

ResoMap — GPU-Enhanced Resolution & Explainability Study

Overview

ResoMap is a deep learning experimentation framework for analyzing how input image resolution affects CNN performance, computational efficiency, inference latency, and memory usage across multiple architectures.

The project was designed for large-scale resolution sensitivity experiments using GPU acceleration, adaptive pooling, experiment tracking, and automated result aggregation.

This study focuses on understanding the trade-offs between:

  • Accuracy
  • Inference Speed
  • GPU Memory Usage
  • Model Complexity
  • Resolution Scaling Behavior

Project Timeline

Started: November 2025 Completed: February 2026 Training Duration: 2 days continuous experimentation (Feb 1–3, 2026)


Key Features

  • GPU-accelerated training with AMP (Mixed Precision)
  • Variable-resolution training support (224px–512px)
  • Modular CNN architecture framework
  • Automatic experiment tracking with DagsHub + MLflow
  • Resolution-aware benchmarking
  • Automated JSON → CSV aggregation pipeline
  • GPU profiling and inference benchmarking
  • Adaptive pooling for arbitrary image resolutions
  • Resume training from checkpoints

Architectures Implemented

Trained Models

  • simple_cnn
  • tiny_cnn

Additional Supported Architectures

  • VGG11 / VGG13 / VGG16
  • ResNet18 / ResNet34 / ResNet50
  • MobileNetV2 / MobileNetV3

All architectures are implemented in:

src/models.py

Experimental Setup

Parameter Value
Framework PyTorch 2.2+
Tracking MLflow + DagsHub
Device GPU Accelerated
Resolutions 224, 256, 320, 384, 512
Experiments 10
Training Duration 48 Hours

Training Results

simple_cnn Results

Resolution Accuracy Inference GPU Memory
224px 77.25% 40.1 ms 458 MB
256px 81.19% 47.8 ms 583 MB
320px 81.69% 67.4 ms 885 MB
384px 69.72% 94.5 ms 1254 MB
512px 72.65% 147.8 ms 2192 MB

Best Configuration

  • Model: simple_cnn
  • Resolution: 320px
  • Accuracy: 81.69%

tiny_cnn Results

Resolution Accuracy Inference GPU Memory
224px 67.18% 23.6 ms 233 MB
256px 67.81% 25.4 ms 298 MB
320px 66.14% 35.7 ms 457 MB
384px 65.34% 44.1 ms 649 MB
512px 64.80% 67.9 ms 1139 MB

Best Configuration

  • Model: tiny_cnn
  • Resolution: 256px
  • Accuracy: 67.81%

Key Findings

Resolution Sweet Spot Exists

Higher image resolution does not always improve accuracy.

  • simple_cnn performed best at 320px
  • tiny_cnn performed best at 256px

This demonstrates non-linear resolution sensitivity across architectures.


Memory Growth Is Significant

Increasing image resolution caused major GPU memory scaling:

  • 224px → 512px increased memory usage by ~5x
  • Higher resolutions significantly reduced throughput

Architecture Size Influences Resolution Preference

  • Larger models benefited from moderate-high resolutions
  • Smaller lightweight models performed better at lower resolutions

Best Deployment Recommendations

Mobile / Edge Devices

tiny_cnn @ 224px–256px

Accuracy-Oriented Systems

simple_cnn @ 320px

Real-Time Inference

tiny_cnn @ 224px

Project Structure

ResoMap/
│
├── configs/
├── src/
├── scripts/
├── checkpoints/
├── results/
├── analysis/
└── README.md

Core Modules

File Purpose
models.py CNN architectures
trainer.py GPU training pipeline
profiler.py Inference benchmarking
experiment.py Experiment orchestration
results.py Metrics aggregation
explainability.py Grad-CAM & saliency

Experiment Tracking

All experiments were tracked using DagsHub + MLflow.

🔗 Experiments: https://dagshub.com/Y-R-A-V-R-5/ResoMap/experiments


Technologies Used

  • Python
  • PyTorch
  • CUDA
  • MLflow
  • DagsHub
  • OpenCV
  • NumPy
  • Pandas
  • Matplotlib

Future Work

Potential future extensions include:

  • Full VGG / ResNet benchmark sweeps
  • Explainability analysis with Grad-CAM
  • FLOPs vs latency correlation studies
  • MobileNet edge-device optimization
  • Automated Pareto frontier generation
  • Distributed multi-GPU scaling

Author

Y. R. A. V. R Hyderabad, India


License

This project is intended for educational and research purposes.

About

Maps resolution sensitivity to detect when higher visual detail actually improves performance. Evaluates trade-offs between AP_small vs AP_medium, memory, latency, and interactions with capacity. Focuses on production-aware, cost-effective input signals.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages