Project

General

Profile

Wiki » History » Revision 36

Revision 35 (Anderson PHILLIP, 10/18/2025 02:36 AM) → Revision 36/49 (Anderson PHILLIP, 10/18/2025 02:54 AM)

h1(#Top). Multi-Projector System — Project Wiki 

 


 h2. Overview 
 

 Our goal is to build a two-projector two‑projector system that displays seamless still images on a flat screen, where the projected areas overlap and must be blended. Implementation is in Python (OpenCV). Prior to implementation, we document the problem and a viable solution approach. 

 Problem background (why blending matters)   
 
 Overlapped regions become over-illuminated; alpha-blending over‑illuminated; alpha‑blending with proper masks evens illumination across seams. (See [[Alpha-blending]].) 

 h2(#scope). (“What is [[Alpha‑blending]]?”)    

 h2. Scope & assumptions 
 * Start from a *planar* screen with **two** projectors; optical axes *perpendicular* to the screen. 
 * Work with **still images** first (not video). 
 * Expected overlapped area is approximately rectangular; target a *linear* drop of mask intensity from 1→0 across the overlap. 
 * Use Python + OpenCV; iterate from simple to refined. 
 (From the project brief and simplified requirements.) 

  

 h2(#objectives). Objectives 
 * Describe the problem and identify a potential solution before coding. 
 * Apply geometric reasoning (lines/planes in 3D; ray-plane/ray-cylinder ray‑plane/ray‑cylinder intersections) as needed. 
 * Prototype masking that yields smooth, artifact-free artifact‑free blending. 

 h2. 
 (From “Objective”, “Skills required”, and problem formulation.) 
  
 h2(#Key-Concepts). Key concepts & references 
 * [[Alpha-blending]] [[Alpha‑blending]] — concept and examples. 
 * Forward (screen→projector) and inverse (projector→screen) ray tracing for overlap detection and mask generation. 
 * “Smooth” masks prevent scratches along mask boundaries. 

 h2. 


 h2(#Team). Team & roles 
  
 |_. Roles |_. Members | 
 | Advisor    | [[Members/Great-Gilbert-Soco|Great Gilbert Soco]] | 
 | PL, Project Leader | [[Members/Koki-Hamamura|Koki Hamamura]] | 
 | PM, Project Manager | [[Members/Noah-Larson|Noah Larson]] | 
 | Redmine – supporter of PM | [[Members/Nonoka-Ohama|Nonoka Ohama]] | 
 | Developers | [[Members/Jiajun-Deng|Jiajun Deng]], [[Members/Jiajun-Deng|Deng]], [[Members/Great-Gilbert-Soco|Great Gilbert Soco]] | 
 | Doxygen Leader | [[Members/Amirul-Haziq-Bin-Airol-Hairrie|Amirul Haziq [[Members/Amirul-Haziq-Bin-Airol-Hairrie|Haziq Bin Airol Hairrie]] Hairrie Amirul]] | 
 | Doxygen, commenters | [[Members/Jordan-Keiwein-Lay|Jordan Keiwein Lay]], [[Members/Hnin-Ei-Shwe-Yee|Hnin Ei Shwe Yee]] | 
 | Wiki Leader | [[Members/Phillip-Anderson|Phillip Anderson]] | 
 | Wiki Developers | [[Members/Wing-Sum-Tang|Wing [[Members/Wing Sum Tang|Wing Sum Tang]], [[Members/Sota-Yatsugi|Sota Yatsugi]] | 
 | Jira Research Team | [[Members/Zhi-Jie-Yew|Zhi Jie Yew]], [[Members/Phillip-Anderson|Phillip Anderson]] | 

 h2. 

  

 h2(#Links). Project links 
 * Requirements & assumptions: this page — [[#scope|Scope page, sections [[Wiki#scope|Scope & assumptions]] Assumptions]] and [[#objectives|Objectives]]. 
 [[Wiki#objectives|Objectives]].   
 * Design notes & diagrams: [[Design-Notes]] 
  
 * Experiments log & photos: [[Experiments-Log]] 
   
 * Code repo / file list: (add link later) 

  

 p=. _Back to top:_ [[#Top|↑]]