About the Project » History » Version 8
Ty Hikaru DAULTON, 10/17/2024 05:50 PM
1 | 6 | Ty Hikaru DAULTON | |
---|---|---|---|
2 | h1=. <pre> About the Project |
||
3 | </pre> |
||
4 | 1 | Ty Hikaru DAULTON | |
5 | |||
6 | |||
7 | 4 | Ty Hikaru DAULTON | Our project aims to deliver a final product that combines images from two separate projectors into a single seamless image. These two images are processed using advanced image processing techniques, including gamma correction, alpha blending, and modified intensity, to ensure the desired final appearance. Our team consists of a project manager, a leader, and sub-teams dedicated to **%{color: blue}doxygen%** generation, wiki management, coding, commenting, and **%{color: red}UML%** design. |
8 | 1 | Ty Hikaru DAULTON | |
9 | 2 | Ty Hikaru DAULTON | We primarily rely on **%{color: green}OpenCV%** and **%{color: purple}Python%** for our image processing. |
10 | |||
11 | 4 | Ty Hikaru DAULTON | h2. **Key Aspects of the Project:** |
12 | |||
13 | 1 | Ty Hikaru DAULTON | - **Image Processing with %{color: purple}Python% and %{color: green}OpenCV%**: We use %{color: purple}Python% in combination with **%{color: green}OpenCV%**, a comprehensive image processing library, to handle complex image analysis and processing tasks efficiently. |
14 | |||
15 | - **Structured Design with %{color: red}UML%**: We apply **%{color: red}Unified Modeling Language% (%{color: red}UML%)** to create a clear and structured design for our project. **%{color: red}UML%** allows us to visually represent the system's architecture and workflows, making the design easy to understand and follow. |
||
16 | |||
17 | - **Thorough Documentation with %{color: blue}Doxygen%**: Our code is meticulously documented using **%{color: blue}Doxygen%**, ensuring that it is clear, maintainable, and adaptable for future use. |
||
18 | |||
19 | - **Project Management with Redmine**: We use Redmine to manage and track project progress, coordinate tasks, and facilitate team collaboration. This tool helps keep the project organized and on schedule. |
||
20 | 4 | Ty Hikaru DAULTON | |
21 | |||
22 | |||
23 | Every aspect of the project, from image processing to project management, has been carefully combined to guarantee maximum efficiency and ease of use. |
||
24 | |||
25 | table{width: 100%}. |
||
26 | |={width: 30%; background-color: #aaf;}. **Synopsis of Technology** | |
||
27 | |||
28 | !2Projector1Image.png! |
||
29 | |||
30 | Our project's **objective** is to produce a single, large, and **distinct image** on a flat screen using **two projectors**. The setup involves a flat screen and **two laptops**, with the projectors directly aimed at the screen. To improve **image quality**, we utilize techniques such as **alpha blending** and **gamma correction**. |
||
31 | |||
32 | Assuming the screen width is **1280mm**, the two projectors are placed at a distance referred to as ' **d** ', which is less than the screen's width. To calculate the size of the **overlap area** between the images from both projectors, we use the formula ' **screen size - d = x** '. This formula helps clarify the relationship between the **screen size**, the **distance between the projectors**, and the size of the **overlapping area**. |
||
33 | 1 | Ty Hikaru DAULTON | |
34 | 8 | Ty Hikaru DAULTON | |
35 | |||
36 | table{width: 100%}. |
||
37 | |={width: 30%; background-color: #aaf;}. **Gamma Correction Method** | |
||
38 | |||
39 | !gamma_correction_example.png! |
||
40 | |||
41 | 4 | Ty Hikaru DAULTON | This method applies **gamma correction** to an image to adjust its **luminance**. Gamma correction is particularly useful for correcting the **brightness** of an image or adjusting its **contrast**. It is a **nonlinear adaptation** applied to each pixel value. In contrast to linear methods like adding, subtracting, or multiplying, which are applied uniformly across all pixels, gamma correction modifies the **saturation** of the image using nonlinear techniques. It's important to maintain a stable **gamma value**, avoiding values that are too small or too large. |
42 | 5 | Ty Hikaru DAULTON | |
43 | gamma_corrected = (image / 255.0)^gamma * 255 |
||
44 | 4 | Ty Hikaru DAULTON | |
45 | 5 | Ty Hikaru DAULTON | |
46 | 1 | Ty Hikaru DAULTON | Note: **gamma** is the provided gamma value. The original **image** is first **normalized** (divided by 255, since pixel values range from 0 to 255), raised to the power of gamma, and then rescaled to the **0-255 range**. |
47 | |||
48 | 5 | Ty Hikaru DAULTON | table{width: 100%}. |
49 | 8 | Ty Hikaru DAULTON | |={width: 30%; background-color: #aaf;}. **Alpha Blending Method** | |
50 | 7 | Ty Hikaru DAULTON | |
51 | 8 | Ty Hikaru DAULTON | !AlphaBlending.png! |