Project

General

Profile

Regarding Our Project » History » Version 66

Ayato KOTSUGI , 01/18/2024 01:29 PM

1 29 Satya Sai Abhiram OGGU
2 50 Satya Sai Abhiram OGGU
h1=. <pre>
3
Our Project</pre>
4 38 Seongjoon BYEON
5 11 Satya Sai Abhiram OGGU
---
6 16 Satya Sai Abhiram OGGU
7 51 Satya Sai Abhiram OGGU
*[[Wiki]]*   |  *[[About Us]]*  |  *[[Regarding Our Project]]* |
8 38 Seongjoon BYEON
9
---
10
11 61 Satya Sai Abhiram OGGU
h2. *%{color:black}Overview%*
12 1 Seongjoon BYEON
13 61 Satya Sai Abhiram OGGU
Our project is responsible for delivering an end-product that creates a single span of an image that is made by overlapping images from two projects. The two component images have been processed using image processing techniques (which includes gamma correction, alpha blending, and modified intensity) to appropriate the look of the final image. Our team is divided into the project manager, leader, oxygen generator, and sub-teams dealing with wiki management, coding, commenting, and UML designing. 
14
15
We primarily focus on utilizing *%{color:blue}OpenCV%* for advanced image processing, supported by *%{color:green}Python%*. 
16 49 Seongjoon BYEON
This project utilizes *%{color:purple}Unified Modeling Language (UML)%* for clear, structured design and Python for efficient coding, enhanced with OpenCV libraries for advanced image processing. Our code is thoroughly documented with Doxygen for clarity and maintenance, while project management and monitoring are streamlined using *%{color:red}Redmine%*.
17 1 Seongjoon BYEON
18 48 Seongjoon BYEON
 # Image Processing with *%{color:green}Python%* and  *%{color:blue}OpenCV%*: We use *%{color:green}Python%*, a flexible programming language, together with *%{color:blue}OpenCV%*, a detailed library for image processing. This pair helps us effectively carry out complex image analysis and processing tasks.
19 45 Seongjoon BYEON
 # Structured Design with UML: We utilize *%{color:purple}Unified Modeling Language (UML)%* to create a clear and organized design. *%{color:purple}UML%* helps in visually representing the system's architecture and workflows, making it more accessible and easier to understand.
20 48 Seongjoon BYEON
 # Documentation with *Doxygen*: Our code is thoroughly documented using *Doxygen*. This approach ensures clarity and ease of maintenance, enhancing the long-term usability and adaptability of our project.
21 1 Seongjoon BYEON
 # Project Management with *%{color:red}Redmine%*: For effective tracking and management, we use *%{color:red}Redmine%*. This tool aids in monitoring project progress, task management, and team collaboration, keeping our project well organized and on schedule.
22 40 Seongjoon BYEON
23 1 Seongjoon BYEON
24 61 Satya Sai Abhiram OGGU
h2. *%{color:black}Image-Processing Technique%*
25 62 Seongjoon BYEON
 
26 63 Seongjoon BYEON
Each component of the project, from image processing to project management, has been thoughtfully integrated to ensure optimal efficiency and usability.
27
28
29
30 64 Seongjoon BYEON
*Brief explanation of technology*
31 63 Seongjoon BYEON
32 61 Satya Sai Abhiram OGGU
h2=. !Project.jpg!
33 1 Seongjoon BYEON
34 62 Seongjoon BYEON
35 63 Seongjoon BYEON
Our project's goal is to create one large, distinct image on a flat screen by using two projectors. We use a flat screen and two laptops, and the projectors aim directly at the screen. To enhance the image quality, we apply techniques like alpha blending and gamma correction in our process.
36 1 Seongjoon BYEON
Assuming the screen size is 1280mm wide, the two projectors are positioned at a distance we call 'd', which is less than the width of the screen. To determine the size of the area where the images from both projectors overlap, we use the formula 'screen size - d = x'. This calculation helps us understand the relationship between the screen size, the distance between the projectors, and the size of the overlap area.
37 63 Seongjoon BYEON
38
39
40 1 Seongjoon BYEON
41 56 Ayato KOTSUGI
*Gamma Correction Method*:
42 61 Satya Sai Abhiram OGGU
It applies gamma correction to a corresponding image. Its correction is used to adjust the luminance of an image. This particularly useful in correcting the brightness of an image or adjusting its contrast. It is a nonlinear adaptation that is applied to each value of the pixel.  In general, linear methods such as adding, subtracting, and multiplying are applied to all parts of pixels. Gamma correction is responsible for remodeling the saturation of the image by performing nonlinear methods on the input image's pixels. It is also necessary to maintain a stable gamma value, between too small or large. 
43 56 Ayato KOTSUGI
44
\text{gamma_corrected} = ( \text{image} / 255.0 )^\gamma \times 255
45
46
*Note*: gamma is the gamma value provided to the method. The original image (__image) is first normalized (divided by 255, as pixel values range from 0 to 255), then raised to the power of gamma, and finally rescaled back to the 0-255 range.
47 1 Seongjoon BYEON
48 66 Ayato KOTSUGI
|={width: 100%; background-color: orange;}. *The Process of Gamma Correction* |
49
|\2. !gamma.jpg!|
50
51 60 Ayato KOTSUGI
*Alpha Blending Method*:
52 57 Ayato KOTSUGI
53
It is a technique used when computer graphics are laid on top of both layers and single or multiple objects contain some level of transparency portion. It ensures that the visible pixels of the graphic that are underneath a transparent area and their color or brightness are adjusted based on the transparency degree on the upper object. An alpha channel is a form of the mask that manages the amount of information to display from lower-lying graphics. 
54 56 Ayato KOTSUGI
55
It performs alpha blending on the edges of an image. It is a process of combining an image with a background, which is to create the appearance of transparency in a range of partial or full: typically used to blend two images. The method applies this blending in different way depending on the value of image_side:
56
57
*If image_side is 1, 
58
** blends the left edge of the image.
59
*If image_side is 0, 
60
** blends the right edge of the image.
61
62
The blending is done by mixing two types of images:  the gamma_corrected image and the current result_image using an alpha value (alpha) that varies along the mask width (__mask). 
63
This creates a significant change or transition between these images.
64 66 Ayato KOTSUGI
65
|={width: 100%; background-color: orange;}. *The Process of Alpha Blending* |
66
|\2. !alpha.jpg!|
67
68 56 Ayato KOTSUGI
69 60 Ayato KOTSUGI
*Modify Intensity Method*:
70 56 Ayato KOTSUGI
This method adjusts the intensity of the edges of an image. Like in alphaBlending, the operation varies depending on image_side:
71
72
If image_side is 1, it reduces the intensity towards the left edge.
73
If image_side is 0, it reduces the intensity towards the right edge.
74
The intensity factor is calculated such that it decreases linearly towards the edge of the mask; This creates a fading effect on the edges of the image, where the edge gradually fades either into the background or into another image.
75
76 40 Seongjoon BYEON
77 30 Satya Sai Abhiram OGGU
h2. *%{color:black}IMAGES%*
78
79 32 Seongjoon BYEON
table{width: 100%}.
80
|={width: 100%; background-color: #aaf;}. *Original Image* |
81 23 Satya Sai Abhiram OGGU
82 32 Seongjoon BYEON
83
84 1 Seongjoon BYEON
|!ImageLeft0.png!|!ImageRight0.png!|
85 32 Seongjoon BYEON
|={width: 50%; background-color: #aaf;}. *Original Left Image* |={width: 50%;background-color: #aaf;}.*Original Right Image* |
86
87
88 34 Seongjoon BYEON
  
89
90
91
92
93
94
95
96
97
98
99
100
101 32 Seongjoon BYEON
table{width: 100%}.
102
|={width: 100%; background-color: #adff2f;}. *Final Image* |
103 36 Seongjoon BYEON
104 1 Seongjoon BYEON
|!correctedleft.png!|!correctedright.png!|
105 32 Seongjoon BYEON
|={width: 50%; background-color: #adff2f;}. *Final Left Image* |={width: 50%;background-color: #adff2f;}.*Final Right Image* |
106 33 Seongjoon BYEON
107 65 Satya Sai Abhiram OGGU
|={width: 100%; background-color: #90ee90;}. *Objective Goal* |
108 1 Seongjoon BYEON
|\2. !Whole.jpg!|
109 65 Satya Sai Abhiram OGGU
110
|={width: 100%; background-color: #90ee90;}. *Our Results* |
111
|\2. !final_image_processed.png!|