Skip to content
Notifications You must be signed in to change notification settings

DanielC8/ImageEnhancer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

3c342eb · · Sep 28, 2025

History

7 Commits
Sep 18, 2025
Sep 18, 2025
Sep 27, 2025
Sep 18, 2025
Sep 18, 2025
Sep 18, 2025
Sep 18, 2025
Sep 27, 2025
Sep 18, 2025
Sep 18, 2025
Sep 27, 2025
Sep 27, 2025
Sep 27, 2025
Sep 18, 2025
Sep 27, 2025
Sep 18, 2025
Sep 18, 2025
Sep 28, 2025
Sep 28, 2025
Sep 28, 2025
Sep 18, 2025
Sep 27, 2025
Sep 27, 2025
Sep 18, 2025
Sep 27, 2025
Sep 18, 2025
Sep 18, 2025
Sep 27, 2025
Sep 18, 2025
Sep 18, 2025
Sep 28, 2025
Sep 27, 2025
Sep 18, 2025

Repository files navigation

🎨 AI Image Enhancement

A powerful web-based AI image enhancement tool that runs entirely in your browser. Upload blurry or low-quality images and watch our AI enhance them instantly!

🎨 AI Image Enhancement - Updated 2025-09-27

Recently updated with newly trained model!

🚀 Latest Updates

  • ✅ Model trained on 2025-09-27
  • ✅ Improved image enhancement quality
  • ✅ Optimized for GitHub Pages deployment

🎯 Try it now: Live Demo

🚀 Live Demo

Try it now: https://DanielC8.github.io/ImageEnhancer

✨ Features

  • 🤖 AI-Powered Enhancement - Uses a trained neural network to improve image quality
  • 🌐 Browser-Based - No server required, runs entirely client-side
  • 📱 Responsive Design - Works on desktop, tablet, and mobile
  • 🎭 Multiple Modes:
    • Demo Mode - Instant brightness enhancement (works immediately)
    • Full AI Model - Complete neural network via Hugging Face
    • Local Model - Git LFS version for development
  • 📥 Easy Download - Save enhanced images with one click
  • 🔒 Privacy First - Images never leave your browser

🛠️ Technology Stack

  • Frontend: HTML5, CSS3, JavaScript (ES6+)
  • AI Runtime: ONNX Runtime Web
  • Model Hosting: Hugging Face Hub
  • Deployment: GitHub Pages
  • Model Format: ONNX (Open Neural Network Exchange)

🧠 AI Model Details

  • Architecture: Custom image enhancement neural network
  • Input: 256x256 RGB images
  • Output: Enhanced 256x256 RGB images
  • Training: Trained on image quality improvement tasks
  • Format: ONNX for cross-platform compatibility
  • Size: ~118MB

🎯 How It Works

  1. Upload Image - Drag & drop or click to selectlect
  2. Choose Model - Pick from Demo Mode or Full AI Model
  3. AI Processing - Neural network enhances your image
  4. Download Result - Get your improved image instantly

🔧 Development Setup

Prerequisites

  • Python 3.7+
  • Node.js (for local development server)
  • Git with LFS support

Local Development

# Clone the repository
git clone https://github.com/DanielC8/ImageEnhancer.git

cd ImageEnhancer


# Install dependencies (for model training/conversion)
pip install -r requirements.txt



# Start local server
python serve.py

# or
npx http-server



# Open http://localhost:8000

Model Training

# Train the model (if you want to retrain)
python train_model.py



# Convert to ONNX format
python convert_model.pyy

📁 Project Structure

ImageEnhancer/
├── index.html              # Main web application
├── index-github.html       # GitHub Pages optimized version
├── train_model.py          # Model training script
├── convert_model.py        # PyTorch to ONNX conversion
├── serve.py               # Local development server
├── upload_to_huggingface.py # Hugging Face upload utility
├── requirements.txt        # Python dependencies
├── image_enhancement_model.onnx # Trained ONNX model (Git LFS)
└── README.md              # This file
his file

🌐 Deployment

GitHub Pages

The project is automatically deployed to GitHub Pages:

Model Hosting

  • Primary: Hugging Face Hub for reliable CDN delivery
  • Fallback: Git LFS for local development
  • Demo: Client-side brightness enhancement

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📊 Performance

  • Model Load Time: ~5-10 seconds (first time)
  • Processing Time: ~1-3 seconds per image
  • Supported Formats: JPG, PNG, WebP, GIF
  • Max File Size: 50MB (browser limitation)
  • Browser Support: Modern browsers with WebAssembly

🐛 Troubleshooting

Common Issues

"Failed to load AI model"

  • Try Demo Mode first (always works)
  • Check internet connection for Hugging Face model
  • Ensure browser supports WebAssembly

"Image too large"

  • Resize image to under 50MB
  • Use compressed formats (JPG vs PNG)

"Processing failed"

  • Try a different image format
  • Refresh page and try again
  • Use Demo Mode as fallback

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • ONNX Runtime - For browser-based AI inference
  • Hugging Face - For free model hosting
  • GitHub Pages - For free web hosting
  • PyTorch - For model training framework

📞 Contact


Star this repo if you found it helpful!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published