Project

General

Profile

About Project » History » Revision 14

Revision 13 (Pratama Kwee BRANDON, 11/06/2025 12:26 AM) → Revision 14/30 (Pratama Kwee BRANDON, 11/06/2025 12:56 AM)

h1. 💡 About Project 

 --- 

 h2. I. Project Overview 

 Our project focuses on developing a *high-quality image composition system* that seamlessly merges two or more projected images into a single, visually consistent display.   

 Using **Python** and **OpenCV**, we employ advanced image processing techniques such as *gamma correction*, *alpha blending*, and *intensity modification* to eliminate brightness and color mismatches between overlapping regions.   

 The project is organized into sub-teams responsible for software development, UML design, testing, and wiki management. Each member plays a key role in ensuring collaborative progress and well-structured documentation.   

 By integrating **Doxygen** for code documentation and **Redmine** for project tracking, we aim to produce a well-documented, scalable, and reproducible system for real-time image correction and blending. 

 --- 

 h2. II. Motivation & Problem Statement 

 When using multiple projectors to display a single image, visible seams or brightness inconsistencies often occur in overlapping regions. These inconsistencies degrade image quality and make the final projection appear uneven.   

 Manual calibration methods are time-consuming and prone to human error.   

 Our motivation is to develop a software-based approach that automates the alignment and blending process, ensuring seamless image projection.   

 By leveraging the **OpenCV** library, the system can detect overlapping areas, apply brightness corrections, and blend images smoothly — eliminating the need for costly hardware-based calibration systems. 

 --- 

 h2. III. Objectives 

 * To develop an automated image blending system capable of merging two or more projections into a single seamless image.   
 * To apply *gamma correction* and *intensity modification* techniques to balance color and brightness across overlapping regions.   
 * To implement *alpha blending* for smooth transitions between images.   
 * To design and visualize the system architecture using **UML diagrams**.   
 * To document the entire project using **Doxygen** and manage tasks via **Redmine**. 

 --- 

 h2. IV. Key Features 

 *1. Automated Image Blending* 
 Uses OpenCV and user-defined parameters to automatically blend two projected images, ensuring accurate overlap and alignment. 

 *2. Gamma Correction and Intensity Adjustment* 
 Employs advanced color and brightness correction algorithms to maintain consistent luminance across blended areas, effectively removing visible seams and mismatches. 

 *3. Video Blending* 
 Leverages GPU acceleration through PyTorch to calculate per-pixel brightness for video streams, enabling real-time blending and correction. 

 *4. User-Friendly Graphical Interface* 
 Provides an intuitive GUI that allows users to select interpolation modes, specify overlap pixels, and control blending parameters easily. 

 *5. Modular System Architecture* 
 Designed using UML-based class structures that divide the project into smaller, manageable components, improving scalability and ease of feature expansion. 

 *6. Comprehensive Documentation and Project Management* 
 Integrates Doxygen for automated code documentation and Redmine for task tracking, ensuring transparent collaboration and efficient workflow management. 

 --- 

 h2. V. Algorithm and Theoretical Framework 
 _(Add later)_ 

 --- 

 h2. VI. System Architecture 
 _(Add later)_ 

 --- 

 h2. VII. Requirement Analysis 

 This defines the functional requirement of the project Methodology and outlining what the system needs to accomplish  

 *- Image Input and Processing* Development Process 
 -The system must accept image files and video files as input. _(Add later)_ 
 -The system must split a given image into two sub-images (left and right) with a specific overlap region a. Requirement analysis 
 -The system must allow users to choose a one out of the three blending mode (linear, quadratic, or gaussian). 
 -The system must apply blending algorithms using OpenCV b. Testing and PyTorch for GPU-accelerated computation for videos. 
 -The system must save the blended images (left.png, right.png) locally after processing. 

 *- Video Frame Blending* 
 -The system must be able to process individual video frames sequentially for real-time blending. 
 -The system must output a smooth blended video stream without visible seams. 

 *- Graphical User Interface (GUI)* 
 -The system must let the user select the overlap pixel value from the GUI. 
 -The system must let the user choose the blending algorithm from the GUI. 
 -The system must be able to run both image and video blending modes in the GUI. 
 -The system must let the user view the original, left, and right images in real-time in the GUI. 
 -The system must be able display the blended outputs in fullscreen mode from the GUI. 

 *- Error Handling and Feedback* 
 -The system must handle missing files and display warnings or error messages appropriately. 
 -The GUI must handle invalid user input without crashing the program. Validation 

 --- 

 h2. VIII. Technology Stack 

 * *Python (OpenCV, NumPy)*   
 * *Doxygen*   
 * *Redmine*   
 * *Astah*   

 --- 

 h2. IX. Application & Impact 
 _(Add later)_ 

 --- 

 h2. X. Limitation & Future Enhancements 
 _(Add later)_ 

 --- 

 !https://media.tenor.com/Q14Y3rSxX5wAAAAM/plan-roadmap.gif!