A web application for applying various image processing filters using Python, Flask, and PIL.
Repository: https://github.com/eduumach/image-filter
- Upload and process images (JPG, PNG)
- Multiple filter options:
- Negative
- Median
- Gaussian Blur
- Custom Edge Detection
- Sobel Edge Detection
- Prewitt Edge Detection
- Threshold
- Real-time histogram visualization
- Download processed images
- Responsive design
- Python 3.7+
- Flask
- Pillow (PIL)
- NumPy
- Matplotlib
- Clone the repository:
git clone git@github.com:eduumach/image-filter.git
cd image-filter- Create and activate a virtual environment (recommended):
python -m venv venv
source venv/bin/activate # Linux/Mac
# or
venv\Scripts\activate # Windows- Install the required packages:
pip install -r requirements.txt- Start the Flask application:
python app.py- Open your web browser and navigate to:
http://localhost:5000
- Use the application:
- Upload an image using the file input
- Select a filter from the dropdown menu
- Click "Process Image" to apply the filter
- View the original and processed images side by side
- Compare the histograms of both images
- Download the processed image using the download button
image-filter/
├── app.py # Main Flask application
├── filters.py # Image processing functions
├── requirements.txt # Project dependencies
├── templates/
│ └── index.html # HTML template
└── static/
├── css/
│ └── style.css # Custom styles
├── uploads/ # Uploaded images
└── processed/ # Processed images
Feel free to submit issues and enhancement requests.