Files » README.md
Multi-Projector Blending System
This project provides a software solution for blending images from two projectors to create a seamless wide-screen display. It includes tools for image splitting, edge blending (linear, quadratic, Gaussian), and a simulation for auto-calibration using feature detection.
Prerequisites
- Python 3.8 or higher
- A webcam (for calibration features)
- 2 Projectors
Installation
It is recommended to use a virtual environment to manage dependencies.
Create a Virtual Environment
python -m venv venvActivate the Virtual Environment
- **macOS/Linux:**
```bash
source venv/bin/activate
```
- **Windows:**
```bash
.\venv\Scripts\activate
```
Install Dependencies
pip install -r requirements.txt
Running the Application
Prepare Input Image
Ensure you have an image namedinput.pngin the project directory. This image will be used for splitting and blending.Start the UI
Run the main user interface script:python ui.pyUsing the Interface
- Overlap (px): Adjust the pixel width of the overlapping region between the two projectors.
- Blend Mode: Select the blending algorithm (
linear,quadratic, orgaussian). - Left/Right Fullscreen: Opens a fullscreen window for the respective projector. Drag these windows to the appropriate physical projector displays.
- Auto-Calibrate: Simulates an auto-calibration process to adjust the overlap based on camera feedback (requires a camera).
Configuration
The application uses a config.ini file to store settings. This file is automatically read on startup.
Documentation
The code is documented using Doxygen-compatible comments. You can generate documentation using Doxygen if needed.