Project

General

Profile

Wiki » History » Version 20

Anderson PHILLIP, 10/18/2025 01:58 AM

1 19 Anderson PHILLIP
{{anchor(Top)}}
2
h1. Multi‑Projector System — Project Wiki
3 1 Igor Goncharenko Admin
4 19 Anderson PHILLIP
h2. Overview
5 20 Anderson PHILLIP
Our goal is to build a 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.  [[#Scope]]  [[#Team]]
6 19 Anderson PHILLIP
7
h3. Problem background (why blending matters)
8
Overlapped regions become over‑illuminated; alpha‑blending with proper masks evens illumination across seams. (See slides: “What is alpha‑blending?”)  [[Alpha‑blending]]  
9
10
h2(#Scope). Scope & assumptions
11
* Start from a *planar* screen with **two** projectors; optical axes *perpendicular* to the screen.
12
* Work with **still images** first (not video).
13
* Expected overlapped area is approximately rectangular; target a *linear* drop of mask intensity from 1→0 across the overlap.
14
* Use Python + OpenCV; iterate from simple to refined.
15
(From project brief and simplified requirements.) 
16
17
h2(#Objectives). Objectives
18
* Describe the problem and identify a potential solution before coding.
19
* Apply geometric reasoning (lines/planes in 3D; ray‑plane/ray‑cylinder intersections) as needed.
20
* Prototype masking that yields smooth, artifact‑free blending.
21
(From “Objective”, “Skills required”, and problem formulation.)
22
  
23
h2(#Key-Concepts). Key concepts & references
24
* [[Alpha‑blending]] — concept and examples.
25
* Forward (screen→projector) and inverse (projector→screen) ray tracing for overlap detection and mask generation.
26
* “Smooth” masks prevent scratches along mask boundaries.
27
28
29 20 Anderson PHILLIP
h2(#Team). Team & roles 
30 19 Anderson PHILLIP
|_. Role |_. Amount |_. Who |
31
| Advisor | 1 | [[Members/Great-Gilbert-Soco|Great Gilbert Soco]] |
32
| PL, Project Leader | 1 | [[Members/Koki|Koki]] |
33
| PM, Project Manager | 1 | [[Members/Noah|Noah]] |
34
| Redmine – supporter of PM | 1 | [[Members/Nonoka|Nonoka]] |
35
| Developers | 2–3 | [[Members/Deng|Deng]], [[Members/Great-Gilbert-Soco|Gilbert]] |
36
| Doxygen Leader | 1 | [[Members/Amirul-Haziq-Bin-Airol-Hairrie|Hachiko (Haziq)]] |
37
| Doxygen, commenters | 2 | [[Members/Jordan|Jordan]], [[Members/Hazel|Hazel]], [[Members/Sota|Sota]] |
38
| Wiki Leader | 1 | [[Members/Great-Gilbert-Soco|Gilbert]] |
39
| Wiki Developers | 2 | [[Members/Zoya|Zoya]], [[Members/Phillip-Anderson|Phillip Anderson]] |
40
| Jira Research Team | 2 | [[Members/Zack|Zack]], [[Members/Phillip-Anderson|Phillip Anderson]] |
41
42
p=. _Tip:_ create each profile page the first time you click a name.  
43
p=. _Back to top:_ [[#Top|↑]]
44
45
h2(#Alpha-blending). Alpha‑blending (notes)
46
Overlapped areas without masks are brighter; masks weight each projector so the sum equals uniform brightness. Smooth masks eliminate boundary scratches; see examples in the slides.  
47
48
h2(#Links). Project links
49
* Requirements & assumptions: this page, sections [[#Scope]] and [[#Objectives]].  
50
* Design notes & diagrams: (create) [[Design-Notes]]  
51
* Experiments log & photos: (create) [[Experiments-Log]]  
52
* Code repo / file list: (link later)