The Problem
We take thousands of photos, but most of them are unusable—duplicates, blurry shots, accidental captures, near-identical variations. Sorting through them wastes storage and makes finding good photos harder. Yet manually curating photos is tedious and subjective.
The problem isn't just clutter. It's that users lack objective criteria to evaluate photo quality. Is this photo sharp enough? Is this the best version among five similar shots? Should I keep this or delete it? These questions require analysis that goes beyond human intuition but feels too complex for simple rules-based systems.
Key Decisions
- Multi-agent architecture: Instead of one AI doing everything, I split the work—computer vision for technical analysis (blur detection, exposure, duplicate identification using perceptual hashing), and Gemini API for contextual understanding and recommendations.
- Quality scoring system: Combined quantitative metrics (sharpness scores, exposure values) with qualitative AI assessment to give users an objective quality rating.
- Curation recommendations, not automatic deletion: The tool suggests what to keep/delete but leaves the final decision to users. Humans should control what gets deleted.
- Streamlined workflow: Upload multiple photos, get analysis and recommendations in one pass. No complex configuration.
- Built with open-source CV libraries: OpenCV for image processing, Pillow for manipulation, ImageHash for duplicate detection—proven tools combined with AI.
What I Learned
Multi-agent AI tools can tackle complex, multi-step tasks that single-prompt solutions can't. Photo curation requires technical analysis (is this sharp?), comparison (which of these five is best?), and contextual judgment (is this photo worth keeping?). No single AI call can handle all of that well. Breaking the problem into specialized agents—each doing what it does best—produces better results.
Combining traditional computer vision with generative AI creates more powerful tools. OpenCV is fast and precise at measuring sharpness. ImageHash is excellent at finding duplicates. But neither can explain why one photo is better than another or recommend what to keep. Gemini can do that contextual reasoning. The combination is stronger than either alone.
Product decisions aren't just about what AI can do—they're about what users should control. I could have built automatic deletion, but that would be overstepping. Users need to trust the tool, and trust comes from transparency and control. Recommend, don't dictate.