Image Analyzer & Curation Assistant

AI can help users objectively evaluate photo quality. A multi-agent system for photo quality scoring and curation recommendations.

Tech Stack
  • Python
  • Streamlit
  • OpenCV
  • Pillow
  • NumPy
  • ImageHash
  • Google Gemini API
Image Analyzer and Curation Assistant

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.

The Hypothesis

I hypothesized that AI could help users objectively evaluate photo quality by combining computer vision (for technical metrics like sharpness and exposure) with generative AI (for contextual understanding and curation recommendations). A multi-agent architecture could tackle this complex, multi-step task better than a single-prompt solution.

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.

PM Skill Gained

AI Tool Building & Multi-Agent Design: This project taught me how to architect AI systems that combine specialized components—computer vision for precision, generative AI for reasoning, and human control for trust. It reinforced that the best AI products often aren't single models, but orchestrated systems where each component does what it does best.