This web application offers advanced image processing tasks including:
- Pix2Pix Image Transformation
- Pan-Sharpening
- Histogram Specification
It provides a user-friendly interface built with React for the frontend and a robust backend powered by Flask. Users can securely interact with these features via JWT-based authentication, and data is stored using MongoDB.
- Pix2Pix Transformation: Transform satellite images into maps using AI-based image-to-image translation.
- Pan-Sharpening: Enhance spatial resolution of satellite images.
- Histogram Specification: Match the histogram of one image to another for contrast enhancement.
- User Authentication: Secure login and signup using JWT.
- Interactive UI: Responsive React-based interface.
- Dockerized: Simplified deployment with Docker.
- Node.js (v16+)
- Python (v3.8+)
- MongoDB (Local or Atlas)
- Docker (Optional for deployment)
make git clone cd image_processing_app
cd backend python -m venv venv source venv/bin/activate # For Windows: venv\Scripts\activate pip install -r requirements.txt python app.py
cd frontend npm install npm start
Open the application at http://localhost:3000. Sign up or log in. Choose a processing task (Pix2Pix, Pan-Sharpening, Histogram Specification). Upload images and view the processed results.
- Build and Start Containers docker-compose build docker-compose up
- Access Application Frontend: http://localhost:3000 Backend API: http://localhost:5000
Authentication POST /auth/signup - Create a new user. POST /auth/login - Log in and receive a JWT token. Image Processing POST /pix2pix - Process an image using Pix2Pix. POST /pansharpening - Perform pan-sharpening on uploaded images. POST /histogram - Match histogram between images.
Frontend: React, Axios Backend: Flask, PyMongo Database: MongoDB Authentication: JWT Image Processing: OpenCV, TensorFlow, PyWavelets Deployment: Docker, Docker Compose
This project is licensed under the MIT License. See the LICENSE file for details.