A serverless image processing service that converts color images to grayscale using AWS infrastructure.
This project implements an image conversion service deployed on AWS, leveraging serverless architecture for scalability and cost-efficiency.
- AWS Lambda: Hosts the grayscale conversion function
- Amazon S3: Stores input and output images
- API Gateway: Provides HTTP endpoint for image upload
- Additional AWS Services: IAM for permissions, CloudWatch for monitoring
- Convert color images to grayscale (PNG format)
- Serverless architecture for automatic scaling
- Load testing with Locust for performance validation
grayscale_converter.py- Core image conversion logic using PILlocust_grayscale_benchtest.py- Load testing script
Upload an image to the API endpoint:
POST /convert-to-grayscale
Content-Type: multipart/form-dataThe service returns a grayscale version of the uploaded image.
- Python 3.x
- PIL/Pillow
- Locust (for testing)
Deployed as an AWS Lambda function with S3 integration for image storage and API Gateway for HTTP access.