|
|
|
|
5
|
![main2.png](images/main2.png)
|
5
|
![main2.png](images/main2.png)
|
6
|
![main3.png](images/main3.png)
|
6
|
![main3.png](images/main3.png)
|
7
|
|
7
|
|
|
|
8
|
+[Verano 2016 - Ive]
|
8
|
|
9
|
|
9
|
Arrays help us to store and work with groups of data of the same type. The data is stored in consecutive memory spaces which can be accessed by using the name of the array and indexes or subscripts that indicate the position where the data is stored. Repetition structures provide us a simple way of accessing the data within an array. In this laboratory experience, you will be using nested loops to process bi-dimensional arrays and implement the functionality of a green-screen.
|
10
|
Arrays help us to store and work with groups of data of the same type. The data is stored in consecutive memory spaces which can be accessed by using the name of the array and indexes or subscripts that indicate the position where the data is stored. Repetition structures provide us a simple way of accessing the data within an array. In this laboratory experience, you will be using nested loops to process bi-dimensional arrays and implement the functionality of a green-screen.
|
10
|
|
11
|
|
|
|
|
|
113
|
|
114
|
|
114
|
2. If the following `4 x 4` image of pixels represents the object `originalImage`,
|
115
|
2. If the following `4 x 4` image of pixels represents the object `originalImage`,
|
115
|
|
116
|
|
116
|
- ![ejemplo.png](images/ejemplo.png)
|
|
|
|
|
117
|
+ ![ejemplo.png](images/ejemplo.png)
|
117
|
|
118
|
|
118
|
-then `originalImage.pixel(2,1)` returns the `rgb` value that represents the color blue ( `0x0000ff`).
|
|
|
|
|
119
|
+ then `originalImage.pixel(2,1)` returns the `rgb` value that represents the color blue ( `0x0000ff`).
|
119
|
|
120
|
|
120
|
3. The following instruction assigns the color red to the pixel in position `(2,3)` in the edited image:
|
121
|
3. The following instruction assigns the color red to the pixel in position `(2,3)` in the edited image:
|
121
|
|
122
|
|
122
|
-`editedImage.setPixel(2,3,qRgb(0xff,0x00,0x00));`.
|
|
|
|
|
123
|
+ `editedImage.setPixel(2,3,qRgb(0xff,0x00,0x00));`.
|
123
|
|
124
|
|
124
|
4. The following instruction assigns to `greenContent` the value of the green tone that is contained in the pixel `(1,1)` of `originalImage`:
|
125
|
4. The following instruction assigns to `greenContent` the value of the green tone that is contained in the pixel `(1,1)` of `originalImage`:
|
125
|
|
126
|
|
|
|
|
|
228
|
|
229
|
|
229
|
3. Click the *Select Image* button to load the image that contains the solid background, the click *Select Background Image* to load the image that contains the interesting background. The folders called `green_background` and `landscapes` contain some images that are suitable as the first and second images.
|
230
|
3. Click the *Select Image* button to load the image that contains the solid background, the click *Select Background Image* to load the image that contains the interesting background. The folders called `green_background` and `landscapes` contain some images that are suitable as the first and second images.
|
230
|
|
231
|
|
231
|
-
|
|
|
232
|
4. Your first task is to complete the function `MergeImages` in file `Filter.cpp`.`MergeImages` is the function that is called when the user presses the button captioned `Merge Images` or when he slides the slide bar. The function `MergeImages` receives the image with the solid background, the background image, a reference to the merged image, a threshold value, and the coordinates `(x,y)` of the pixel from which we will extract the sample *green* background color, and the coordinates `(offset_x, offset_y)` from the merged image.
|
232
|
4. Your first task is to complete the function `MergeImages` in file `Filter.cpp`.`MergeImages` is the function that is called when the user presses the button captioned `Merge Images` or when he slides the slide bar. The function `MergeImages` receives the image with the solid background, the background image, a reference to the merged image, a threshold value, and the coordinates `(x,y)` of the pixel from which we will extract the sample *green* background color, and the coordinates `(offset_x, offset_y)` from the merged image.
|
233
|
|
233
|
|
234
|
For this first exercise you can ignore the following parameters: ghost, x_offset, y_offset. Your implementation should place the `objectImage` into the `mergedImage` starting at position (0,0).
|
234
|
For this first exercise you can ignore the following parameters: ghost, x_offset, y_offset. Your implementation should place the `objectImage` into the `mergedImage` starting at position (0,0).
|
|
|
|
|
318
|
### Deliverables
|
318
|
### Deliverables
|
319
|
|
319
|
|
320
|
|
320
|
|
321
|
-Use "Deliverables" in Moodle to upload the `filter.cpp` file that contains the `MergeImages` function. Remember to use good programming techniques, include the names of the programmers involved, and to document your program.
|
|
|
|
|
321
|
+Use "Deliverable" in Moodle to upload the `filter.cpp` file that contains the `MergeImages` function. Remember to use good programming techniques, include the names of the programmers involved, and to document your program.
|
322
|
|
322
|
|
323
|
---
|
323
|
---
|
324
|
|
324
|
|