Skip to content

A GUI-based image filtering app with custom filters like sepia, red-blue swap, and gradients built using 2D pixel manipulation.

Notifications You must be signed in to change notification settings

tylertmd/ImageProcessor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“Έ Image Processor App

The Image Processor App is a Java-based application that allows users to apply a variety of image filters and effects on digital images. With a simple GUI, users can manipulate images in real-time using filters such as sepia, red-blue swap, and blue-green gradient, making it a fun and educational tool for learning image processing concepts.


βš™οΈ Technologies Used

  • Java – Core programming language for the application
  • Swing – GUI framework for building the interactive interface
  • Java AWT – For image handling and pixel manipulation

πŸš€ Features

  • Load and display images
  • Apply built-in image filters:
    • Sepia
    • Red-Blue Swap
    • Blue-Green Gradient
  • Save the processed image
  • Real-time filter preview
  • Intuitive GUI for easy navigation

✨ Shortcuts / Controls

Action Shortcut / Button
Open Image File β†’ Open
Apply Sepia Filter Filter β†’ Sepia
Apply Red-Blue Swap Filter β†’ Red-Blue Swap
Apply Blue-Green Gradient Filter β†’ Blue-Green Gradient
Save Image File β†’ Save

πŸ“ The Process

  1. Planning: Determined which filters to implement and designed the GUI layout.
  2. Implementation: Wrote Java code to manipulate the 2D pixel array for each filter.
  3. Testing: Applied filters to various images to ensure accuracy and responsiveness.
  4. Debugging: Fixed edge cases, like handling transparency and large images.

πŸ“š What I Learned

  • How to manipulate images at the pixel level using Java
  • Working with Swing and AWT for GUI design and image handling
  • Translating mathematical filter algorithms into functional code
  • Debugging and optimizing real-time image processing

🌱 Overall Growth

Through this project, I strengthened my understanding of Java programming, GUI design, and image processing algorithms. I also developed problem-solving skills by translating abstract mathematical concepts into working software.


πŸ’­ How It Can Be Improved

  • Add more filters (e.g., grayscale, inversion, blur)
  • Implement undo/redo functionality
  • Support batch processing of images
  • Enhance GUI with drag-and-drop image loading
  • Optimize for very large images for better performance

🚦 Running the Project

  1. Clone or download the repository
  2. Copy files into your chosen IDE
  3. Run

▢️ Video Demonstration

Watch a short demo of the Image Processor App in action:

Image Processor Demo

Click the image to watch the video on YouTube.

About

A GUI-based image filtering app with custom filters like sepia, red-blue swap, and gradients built using 2D pixel manipulation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages