Image Manipulation and Fractals - Writeup
Phil Katz and Stephen St.Vincent
home   |   images
Lab description


Lab summary:

In this lab, we did two distinct graphics tasks. The first involved taking blue-screen photographs of ourselves and then inserting those photos into any other picture we chose. We chose to use an image of Zinedine Zidane walking past the 2006 World Cup Trophy, after being red-carded. We inserted an image of Phil pointing and laughing at Zidane, and then we created an image with Phil as the "angel and devil" on Zidane's shoulders.

For the second part, we created images of the Mandelbrot and Julia sets. We scaled the RGB values of each pixel based on the number of iterations that it took for the series to cross a threshold of 100 (which approximates divergence to infinity).

Questions:
  1. How big is the picture of yourself?
    1780x2140 (width x height)
  2. What is the origin of the image when you manipulate it in your code? How did you determine this?
    The origin is at the top-left (see image linked below). We determined this by drawing a white box from (0,0) to (50,100).
  3. Where is the origin of an image in XV?
    In XV, the origin is at the top-left. This is consistent with pixel (0,0) in manipulation.
  4. How did you replace the blue pixels in your picture? How well did your replacement method work?
    We used the "3-dimensional box-range method" wherein we found general limits on the RGB values of the blue screen pixels by random sampling. The method worked reasonably well, although the bluescreen was very inconsistent in color. There was a very small amount of blue-spill, mainly confined to one offending region (Phil's left arm). One way to do this more effectively would be to apply some principles from computational geometry so we could create a polygon outline of the person and know that all pixels inside said polygon would maintain their color whereas all pixels outside the polygon would be replaced.
  5. How did you creatively insert yourself in an image?
    We took the image of Phil, shrank, moved, and reversed it, and put the opposite-facing images on Zidane's shoulders.
  6. What regions of the Mandelbrot set did you find the most interesting?
    We found the region inside [-1,1],[-1,1] to be the most interesting.
  7. What colouring schemes did you experiment with and which did you like the best?
    We settled on picking two colors (R and B for the Mandelbrot set) and setting one (R) to be proportional to the number of iterations that the series took to reach a threshold (100) and setting the other color (B) to be 255-R. For the Julia set, we used G instead of R for the former and R instead of B for the latter.