Experience the future of computer vision with AI models
🚀 View on Streamlit. [📚 API Reference]• [⚡ Performance]
🚀 View the Web Interface https://reaishma.github.io/IntelliVision-master/
Experience AI-powered computer vision running entirely in your browser on streamlit https://intellivision-master-jvcdkjhexppvam3zrpwbts.streamlit.app/
This project is a comprehensive computer vision platform application built with Streamlit that provides comprehensive computer vision capabilities that offers a wide range of tools and techniques for image analysis, object detection, image segmentation, and more. The platform leverages state-of-the-art deep learning models, including MobileNet, COCO-SSD, YOLO, DeepLab, and others, to provide accurate and efficient computer vision capabilities.
Computer Vision Hub is a cutting-edge browser-based AI platform that runs entirely in your web browser and streamlit version using state-of-the-art TensorFlow.js models everything processes with lightning-fast performance.
- Image Classification: Using MobileNet for classifying images into different categories.
- Object Detection: Utilizing COCO-SSD and YOLO for detecting objects in images.
- Image Segmentation: Employing DeepLab for pixel-level image understanding.
-
CNN Architecture: Visualizing convolutional neural network layers.
-
Transfer Learning: Adapting pre-trained models for new tasks.

-
Attention Mechanisms: Visualizing where the model focuses.
-
Variational Autoencoder (VAE): Encoding and decoding image representations.
-
Generative Adversarial Network (GAN): Generating synthetic images.
-
Feature Detection: Extracting features using SIFT, SURF, and HOG.
- Image Enhancement: Blurring, sharpening, edge detection, and more.
- Image Filtering: Applying filters like vintage, grayscale, and more.
-
Image Statistics: Providing detailed image properties and statistics.
-
CNN Layer Visualization: Visualizing feature maps and convolutional layers.
-
Attention Visualization: Showing where the model focuses.
-
Image Analysis: Providing comprehensive analysis, including image dimensions, color depth, and more.
- Framework: Streamlit web application framework
- Layout: Wide layout with expandable sidebar for controls
- Caching Strategy: Uses Streamlit's
@st.cache_resourceand@st.cache_datadecorators for model and utility caching - Session Management: Streamlit session state for managing uploaded images and model loading status
- Core Framework: Python-based with modular utility classes
- Model Management: Centralized ModelManager class for loading and managing ML models
- Image Processing: Dedicated ImageProcessor class for applying various filters and transformations
- Visualization: Separate Visualizer class for rendering computer vision results
The application follows a clean separation of concerns with three main utility modules:
utils/model_utils.py: ML model loading and inferenceutils/image_processing.py: Image filtering and processing operationsutils/visualization.py: Result visualization and rendering
- Purpose: Manages loading and inference of multiple ML models
- Models Supported:
- MobileNetV2 for image classification (ImageNet pretrained)
- Placeholder architecture for object detection and segmentation models
- Preprocessing: Handles image preprocessing for different model requirements
- Output: Structured prediction results with confidence scores
- Purpose: Applies various image filters and enhancements
- Supported Filters: Blur, Gaussian blur, sharpen, edge detection, emboss, brightness, contrast, saturation
- Architecture: Filter registry pattern with modular filter functions
- Error Handling: Graceful degradation when filters fail
- Purpose: Renders computer vision results with visual overlays
- Capabilities: Bounding box drawing, label rendering, confidence score display
- Color Management: Predefined color palette for consistent visualization
- Format Handling: Converts between PIL and OpenCV image formats
- Image Input: User uploads image through Streamlit file uploader
- Session Storage: Image stored in Streamlit session state
- Model Inference: Selected models process the image through ModelManager
- Result Processing: Raw predictions converted to structured results
- Visualization: Results rendered with bounding boxes/labels via Visualizer
- Display: Processed images and results displayed in Streamlit interface
| Model | Dataset | Classes | Accuracy | FPS (WebGL) | Memory |
|---|---|---|---|---|---|
| MobileNetV2 | ImageNet | 1,000 | 71.3% top-1 | 60+ | 14MB |
| COCO-SSD | MS COCO | 80 | mAP 22% | 30+ | 27MB |
| DeepLab v3 | Pascal VOC | 21 | mIoU 89% | 15+ | 42MB |
// WebGL Backend (Recommended)
await tf.setBackend('webgl');
console.log(`Using backend: ${tf.getBackend()}`);
// CPU Fallback
await tf.setBackend('cpu');
// Performance monitoring
tf.env().set('DEBUG', true);// Preload models for instant access
const modelPromises = Promise.all([
mobilenet.load(),
cocoSsd.load(),
deeplab.load()
]);
// Progressive loading with status updates
const models = await modelPromises;
console.log('All AI models loaded successfully!');// Tensor disposal for memory efficiency
tf.tidy(() => {
const prediction = model.predict(inputTensor);
return prediction.dataSync();
});
// Monitor memory usage
console.log(`Memory: ${tf.memory().numBytes} bytes`);| Category | Formats |
|---|---|
| Input Images | PNG, JPG, JPEG, BMP, TIFF |
| Output Formats | PNG, JPG (downloadable) |
| Max File Size | 200MB per image |
| Recommended Size | 1024x1024 pixels |
- Memory: 4GB RAM minimum, 8GB recommended
- Storage: 2GB free space for models
- CPU: Modern multi-core processor
- GPU: Optional (CUDA support for faster processing)
- TensorFlow.js Guide - Official ML framework docs
- WebGL Reference - GPU acceleration guide
- MDN Canvas API - Browser graphics reference
// Web Workers for heavy computation
const worker = new Worker('vision-worker.js');
worker.postMessage({imageData, modelConfig});
// WebAssembly integration
const wasmModule = await WebAssembly.instantiateStreaming(
fetch('opencv.wasm')
);
// Service Worker for offline functionality
self.addEventListener('fetch', event => {
if (event.request.url.includes('/models/')) {
event.respondWith(caches.match(event.request));
}
});| Feature | Initial Load | Inference Speed | Memory Usage |
|---|---|---|---|
| Model Download | ~2-5 seconds | - | 80MB total |
| Classification | Instant | 50-100ms | ~50MB |
| Detection | Instant | 100-200ms | ~100MB |
| Segmentation | Instant | 500-1000ms | ~150MB |
Reaishma N
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License - Feel free to use, modify, and distribute
Copyright (c) 2024 Computer Vision Hub
- Streamlit: Web application framework
- TensorFlow/Keras: Deep learning framework and pretrained models
- OpenCV: Computer vision and image processing
- PIL (Pillow): Image manipulation and format handling
- NumPy: Numerical computations and array operations
- Matplotlib: Plotting and visualization utilities
- MobileNetV2: ImageNet classification (loaded via Keras Applications)
- TensorFlow Hub: Potential source for additional pretrained models
- TensorFlow.js Models: Browser-based inference capabilities (referenced in HTML file)
- CDN Dependencies: External JavaScript libraries for web interface enhancement
- Platform: Designed for Streamlit deployment
- Caching: Leverages Streamlit's built-in caching for model persistence
- Resource Management: Models loaded once and cached across sessions
- Model Loading: Heavy models cached to avoid repeated loading
- Memory Management: Session state used efficiently for user data
- Error Handling: Graceful degradation when models fail to load
- Streamlit Cloud: Direct deployment with automatic dependency management
- Docker: Containerized deployment for custom environments
- Local Development: Direct Python execution for development and testing
# Static hosting (GitHub Pages, Netlify, Vercel)
npm run build && npm run deploy
# Local development server
python -m http.server 8080
# CDN deployment (instant global access)
# Just upload the HTML file - works everywhere!// Add new AI models
const customModel = await tf.loadLayersModel('path/to/your/model.json');
// Customize UI colors
:root {
--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
--accent-color: #28a745;
--background: #f8f9fa;
}
// Add new computer vision features
class CustomVisionProcessor {
async processImage(imageData) {
// Your custom algorithm here
return results;
}
}| Browser | Version | Performance | WebGL Support |
|---|---|---|---|
| Chrome | 88+ | ⭐⭐⭐⭐⭐ | Excellent |
| Firefox | 85+ | ⭐⭐⭐⭐ | Very Good |
| Safari | 14+ | ⭐⭐⭐⭐ | Good |
| Edge | 88+ | ⭐⭐⭐⭐⭐ | Excellent |
- MobileNetV2 Choice: Balanced accuracy vs. speed tradeoff suitable for web deployment
- Modular Design: Separate model classes allow easy addition of new models
- Preprocessing Pipeline: Standardized image preprocessing for consistent model input
- Caching Strategy: Critical for model loading and utility initialization
- Lazy Loading: Models loaded only when accessed
- Memory Efficiency: Session state used judiciously to avoid memory bloat
Built with passion for AI democratization
Making advanced computer vision accessible to everyone, everywhere
- Developers and researchers working on computer vision projects
- Enthusiasts interested in exploring computer vision techniques
- Industries that rely on image analysis, such as healthcare, security, and autonomous vehicles
- Provide a user-friendly platform for computer vision tasks
- Offer a wide range of tools and techniques for image analysis and processing
- Enable users to leverage state-of-the-art deep learning models for computer vision applications
- Image recognition and classification
- Object detection and tracking
- Image segmentation and analysis
- Generative image modeling
- Artistic image transformations
Overall,this project offers a powerful platform for computer vision tasks, making it an excellent resource for developers, researchers, and enthusiasts.









