This project implements a serverless image-processing pipeline using AWS Lambda, S3, and CloudWatch. When a coloured image is uploaded to an S3 bucket, a Lambda function automatically converts it into a greyscale image and stores the result in another bucket.
S3 Input Bucket → Upload colour image
S3 Event Trigger → Invokes Lambda
Lambda + Pillow Layer → Greyscales image
S3 Output Bucket → Stores processed image
CloudWatch Logs → Execution monitoring
No new IAM roles were created. A predefined role (LabRole) was reused.
AWS Lambda (Python 3.11)
AWS S3
Lambda Layers
Pillow (PIL)
CloudWatch
IAM
Uses: ImageOps.colorize()
to map color → greyscale.
Serverless architecture S3 event triggers Lambda Layers Cloud debugging CloudWatch monitoring Python image processing
User-selectable color styles API Gateway → upload from UI Error handling/log metrics CI/CD deployment