CSS501: Image Class Project - Object-Oriented Programming and Design
VerifiedAdded on 2019/09/22
|2
|819
|278
Project
AI Summary
This assignment requires the creation of a C++ image class, emphasizing object-oriented programming principles such as data abstraction, information hiding, and modularity. The project involves implementing various functionalities for the image class, including constructors (from file and dimensions), a copy constructor, destructor, and the overloaded assignment operator. Accessor and mutator functions for individual pixels, output to file, and overloaded operators (==, !=, and <<) are also required. The assignment challenges the student to implement methods for creating a mirror image and a photonegative of an image, ensuring that the original image remains unchanged. The second part of the assignment involves using the created image class to perform operations like reading an image, outputting its dimensions, creating a mirror image, manipulating pixel values, writing the modified image, comparing images, and counting differences. The goal is to demonstrate the effectiveness of the image class in handling image data and operations while adhering to the principles of object-oriented design. Optional features include additional image manipulation methods like averaging neighboring pixels, scaling, computing the average of two images, combining images side-by-side, and creating a black and white image.
1 out of 2