Files

68 lines
2.4 KiB
Markdown

# Photo Judgers
Judge and shortlist 4000+ photos — primarily wedding photos, with other photo types included.
## Overview
This project designs the workflow for curating, judging, and shortlisting large batches of photos. The main use case is wedding photography, but the system should be flexible enough to handle other photo categories too.
**Key constraint:** This is a workflow design project. The actual execution runs on more capable hardware. This machine is underpowered for the workload.
## Goals
- Design a scoring pipeline to judge photos on aesthetic quality
- Support category/tagging later (initial phase focuses on scoring only)
- Shortlist the best photos from 4000+ batches
- Keep track of decisions and reasoning
## Architecture: Phase 1 — LAION Aesthetic Predictor
Based on research, Phase 1 implements the **LAION Aesthetic Predictor V2** as the first-pass scorer.
### Why LAION V2 First?
- **Simplest starting point** — one-line Python API via HuggingFace transformers
- **MIT license** — fully permissive
- **~2 GB VRAM** — lightweight, fits on consumer GPUs
- **Fast inference** — ~5-10 minutes for 4000 images on GPU
- **Good general aesthetic ranking** — trained on diverse datasets (AI-generated + professional photos)
### Limitations (to address later)
- No technical quality detection (blur, exposure, noise)
- Biased toward AI-generated aesthetic patterns
- Western/art-historical bias — may underrate candid moments and cultural shots
- No context understanding (can't distinguish emotional moments from empty frames)
### Future: Combined Approach
After LAION V2 is working, the full pipeline will combine:
- **LAION V2** — aesthetic scoring (0-10 scale)
- **BRISQUE** — technical quality (blur/noise detection, CPU-only)
- **MUSIQ** (optional) — combined aesthetic + technical scoring
A photo would be kept only if it passes both aesthetic and technical thresholds.
## Structure
```
photo_judgers/
├── test/ # Test folder
├── docs/ # Documentation
├── .pi/ # Pi config (gitignored)
├── README.md # This file
└── .gitignore
```
## Status
**Phase 1: LAION V2 implementation** — In progress.
Next steps:
- Set up Python project (or decide on language)
- Implement LAION V2 scoring pipeline
- Define scoring thresholds for shortlisting
- Build output format (CSV/JSON with scores and file paths)