size-anything / README.md
Zitti123's picture
πŸ”§ Fix HuggingFace configuration: Add proper YAML frontmatter
8380820
---
title: Smart Object Size Estimator
emoji: πŸ“
colorFrom: blue
colorTo: green
sdk: gradio
sdk_version: "4.44.0"
app_file: app.py
pinned: false
license: mit
---
# πŸ“ Smart Object Size Estimator
An AI-powered web application that estimates real-world sizes of objects in images using depth estimation and segmentation.
## πŸš€ Features
- **AI-Powered Detection**: Uses Depth Anything V2 for depth estimation and SAM for object segmentation
- **Reference Object System**: Click on any detected object and specify its known size to calibrate measurements
- **Camera Presets**: Pre-configured settings for common smartphones (iPhone, Samsung, Google Pixel)
- **Real-time Processing**: Interactive interface with immediate feedback
- **Robust Scaling**: Works with images of any size and format
## πŸ› οΈ How to Use
1. **Upload an Image**: Choose any photo containing objects you want to measure
2. **Select Camera Type**: Pick your device from presets or use custom focal length values
3. **Process Image**: Click "Process Image" to detect objects (they'll be numbered and colored)
4. **Set Reference**: Select an object you know the size of and enter its dimensions
5. **Calculate Sizes**: Get measurements of all detected objects!
## πŸ“· Camera Settings
The app includes presets for:
- iPhone 12/13/14 (Main & Ultra Wide cameras)
- Samsung Galaxy S21/S22
- Google Pixel 6/7
- Generic Smartphone
- Custom (manual focal length input)
## οΏ½οΏ½ Tips for Best Results
- Use good lighting and avoid harsh shadows
- Ensure objects are clearly visible and well-separated
- Choose a reference object with a known precise dimension
- Take photos perpendicular to objects when possible
- For best accuracy, use camera-specific presets
## πŸ”§ Technical Details
- **Depth Model**: Depth Anything V2 (ViT-Small)
- **Segmentation**: Segment Anything Model (SAM)
- **Interface**: Gradio web interface
- **Processing**: Automatic image scaling and robust preprocessing
## πŸ“š Dependencies
All required packages are listed in `requirements.txt`. Key dependencies:
- Gradio for web interface
- PyTorch for model inference
- OpenCV for image processing
- Matplotlib for visualizations
## πŸš€ Deployment
This app is designed to run on Hugging Face Spaces. Simply:
1. Upload all files to a new HF Space
2. Ensure the model weights are properly downloaded
3. The app will auto-launch with Gradio
## 🎯 Use Cases
- **E-commerce**: Product dimension verification
- **Interior Design**: Furniture and room measurements
- **Manufacturing**: Quality control and inspection
- **Education**: Physics and measurement exercises
- **Daily Life**: Measuring objects without a ruler
## ⚠️ Limitations
- Accuracy depends on camera calibration
- Works best with well-lit, clear images
- Small or very thin objects may not segment well
- Depth estimation quality affects final measurements