Photo Processing

Suppose we wish to write a simple Instagram-like program that will apply up to three filters (i.e., "photo effects") to an image of the user's choice. The three filters that we wish to apply include making the image grayscale; creating an image negative; and blurring the image (the effects of which are shown on the masks of Guy Fawkes below).

Use the code in PhotoProcessor.startercode to get started with this task. Note, code has already been provided to allow the user to load an image from a file, and handles the user's filter selections. Add the appropriate code to the three methods makeGrayscale, makeNegative, and makeBlurred to complete the PhotoProcessor class. You can examine the video below to see what this program should look like when successfully executed...

Note, both the argument and output of the three methods you must write are GImage objects. You may wish to read about the GImage class in the ACM 2.0 libraries documentation. You may also wish to read about Images, Pixels, and the ACM Package as you attempt to complete the PhotoProcessor class.