This project implements an image processing program using the Model-View-Controller (MVC) architecture.
To use the program:
- Run the
Programfile and follow the instructions provided.
- Implemented an Image interface to handle image data.
- Image class and Pixels class fully represent images with properties such as max value, height, and width.
- Pixel class defines individual pixel properties (red, green, blue).
- Utilized the Command design pattern to implement various behaviors.
- Commands are stored in the
commandfolder, each implementing specific image operations. - Added support for new functionalities like Downscale and Partial Image Manipulation.
Filefolder manages file operations (load and save) for different image formats.Loadclass loads images based on the specified format.Saveclass saves images in various formats.
- Introduced GUI components using Swing for a user-friendly interface.
- Followed a structured top-down design with panels for image display, histogram, command selection, and file operations.
- Updates image and histogram dynamically based on user actions.
- The image used in the
resfolder is sourced from Dreamstime. - This image is royalty-free and used for demonstration purposes.
- Implemented a
Histogramclass to compute color frequencies and display histograms.
To get started with the project:
- Clone the repository.
- Compile and run the
Programfile to launch the application.
This project is licensed under the MIT License.