Skip to content

aadi1011/Advanced-Image-Processor

Repository files navigation

Advanced Image Processor 🖼️

1mainpage

Overview

Welcome to the Advanced Image Processor! This web application is built using OpenCV, NumPy, and Streamlit, providing a user-friendly interface for various image processing techniques, including Fourier Domain Transformation, Edge Detection, Image Segmentation, and Region-Based Methods to any image of your choice. This provides an effective way to edit your images, apply various image processing based filters on them and also study more about these techniques.

Features

  • Fourier Domain Transformation: Apply Fourier analysis using Butterworth and Gaussian filters for frequency domain manipulation.
    • Low Pass Filter
    • High Pass Filter
    • Blur Image
    • Sharpen Image
    • Gaussian Noise
    • Salt and Pepper Noise
  • Edge Detection: Utilize edge detection methods such as Sobel, Prewitt, Roberts, and Canny for enhanced object boundary identification.
    • Sobel Filter
    • Prewitt Filter
    • Roberts Filter
    • Canny Edge Filter
  • Image Segmentation: Explore various segmentation methods, including binary, truncated, to zero, Otsu's, and adaptive thresholding.
    • Binary Thresholding
    • Inverse Binary Thresholding
    • Truncated Thresholding
    • To Zero Thresholding
    • Otsu Thresholding
    • Gaussian Thresholding
    • Mean Adaptive Thresholding
    • Gaussian Adaptive Thresholding
  • Region-Based Methods: Delve into region growing, splitting, and merging algorithms for comprehensive segmentation strategies.
    • Region Growing Technique
    • Region Splitting Technique

Getting Started

The app is deployed using Streamlit and can be accessed by going to the following link in your web-browser:

🔗 advanced-image-processing.streamlit.app

Usage

  1. Upload an image using the file uploader.
  2. Select the image processing method and techniques from the dropdown menu that props up.
  3. Adjust parameters if required (e.g., frequencies, order, intensity).
  4. Explore the transformed image and related metrics.

To get an understanding of how these image processing techniques work, visit the About and Techniques page in the application.

2aboutpage

Developer

This web app is developed by Aadith Sukumar.
Connect with me on LinkedIn: LinkedIn Profile.

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details. While reuse and distribution of this software, it would be great if you could give the developer the rightful credits as well. Let's keep the community growing!

Updates

Upcoming Ideas:

  • Automating best threshold values

More updates are lined up for this project. If you have any suggestions, feel free to create a new issue