Inspiration
A photo can arrive successfully and still be too dark, blurry, cropped, or reflective to review. I wanted to make capture quality visible before a person has to inspect a card.
What it does
Yosumi OCR is a demo for fictional Japanese training cards only. OpenCV detects and rectifies the card, measures blur, glare, brightness, and clipping, and gives a short retake hint when an image fails. When it passes, fixed template regions are read with Tesseract and the app returns a preview with the portrait and number regions masked.
How it was built
The browser resizes images before upload. CloudFront serves the static site from private S3 and signs API requests to an AWS Lambda container running OpenCV and Tesseract. Images are processed in memory; source images are not stored and OCR text is not logged. Terraform manages the deployment.
Challenges and what I learned
Capture quality and OCR accuracy are separate problems: a photo can pass the quality gate and still contain OCR errors. The five public examples are fictional synthetic cards, not evidence of real-world accuracy. The mask coverage value checks fixed regions in the returned preview; it does not guarantee that every sensitive detail was found. The UI asks users to review the result.
Limitations
This demo does not verify identity, detect document authenticity, or match faces. Do not upload real identity documents.
Built With
- amazon-web-services
- cloudfront
- lambda
- opencv
- python
- terraform
- tesseract

Log in or sign up for Devpost to join the conversation.