punimtag/docs/DEMO.md
tanyar09 d300eb1122 chore: Add configuration and documentation files for project structure and guidelines
This commit introduces several new files to enhance project organization and developer onboarding. The `.cursorignore` and `.cursorrules` files provide guidelines for Cursor AI, while `CONTRIBUTING.md` outlines contribution procedures. Additionally, `IMPORT_FIX_SUMMARY.md`, `RESTRUCTURE_SUMMARY.md`, and `STATUS.md` summarize recent changes and project status. The `README.md` has been updated to reflect the new project focus and structure, ensuring clarity for contributors and users. These additions aim to improve maintainability and facilitate collaboration within the PunimTag project.
2025-10-15 14:43:18 -04:00

4.4 KiB

🎬 PunimTag Complete Demo Guide

🎯 Quick Client Demo (10 minutes)

Perfect for: Client presentations, showcasing enhanced face recognition features


🚀 Setup (2 minutes)

1. Prerequisites

cd /home/beast/Code/punimtag
source venv/bin/activate  # Always activate first!
sudo apt install feh      # Image viewer (one-time setup)

2. Prepare Demo

# Clean start
rm -f demo.db

# Check demo photos (should have 6+ photos with faces)
find demo_photos/ -name "*.jpg" -o -name "*.png" | wc -l

🎭 Client Demo Script (8 minutes)

Opening (30 seconds)

"I'll show you PunimTag - an enhanced face recognition tool that runs entirely on your local machine. It features visual face identification and intelligent cross-photo matching."

Step 1: Scan & Process (2 minutes)

# Scan photos
python3 photo_tagger.py scan demo_photos --recursive --db demo.db -v

# Process for faces  
python3 photo_tagger.py process --db demo.db -v

# Show results
python3 photo_tagger.py stats --db demo.db

Say: "Perfect! It found X photos and detected Y faces automatically."

Step 2: Visual Face Identification (3 minutes)

python3 photo_tagger.py identify --show-faces --batch 3 --db demo.db

**Key points to mention:**s

  • "Notice how it shows individual face crops - no guessing!"
  • "Each face opens automatically in the image viewer"
  • "You see exactly which person you're identifying"

Step 3: Smart Auto-Matching (3 minutes)

python3 photo_tagger.py auto-match --show-faces --db demo.db

Key points to mention:

  • "Watch how it finds the same people across different photos"
  • "Side-by-side comparison with confidence scoring"
  • "Only suggests logical cross-photo matches"
  • "Color-coded confidence: Green=High, Yellow=Medium, Red=Low"

Step 4: Search & Results (1 minute)

# Search for identified person
python3 photo_tagger.py search "Alice" --db demo.db

# Final statistics
python3 photo_tagger.py stats --db demo.db

Say: "Now you can instantly find all photos containing any person."


🎯 Key Demo Points for Clients

Privacy-First: Everything runs locally, no cloud services
Visual Interface: See actual faces, not coordinates
Intelligent Matching: Cross-photo recognition with confidence scores
Professional Quality: Color-coded confidence, automatic cleanup
Easy to Use: Simple commands, clear visual feedback
Fast & Efficient: Batch processing, smart suggestions


🔧 Advanced Features (Optional)

Confidence Control

# Strict matching (high confidence only)
python3 photo_tagger.py auto-match --tolerance 0.3 --show-faces --db demo.db

# Automatic high-confidence identification
python3 photo_tagger.py auto-match --auto --show-faces --db demo.db

Twins Detection

# Include same-photo matching (for twins)
python3 photo_tagger.py auto-match --include-twins --show-faces --db demo.db

📊 Confidence Guide

Level Color Description Recommendation
80%+ 🟢 Very High - Almost Certain Accept confidently
70%+ 🟡 High - Likely Match Probably correct
60%+ 🟠 Medium - Possible Review carefully
50%+ 🔴 Low - Questionable Likely incorrect
<50% Very Low - Unlikely Filtered out

🚨 Demo Troubleshooting

If no faces display:

  • Check feh installation: sudo apt install feh
  • Manually open: feh /tmp/face_*_crop.jpg

If no auto-matches:

  • Ensure same people appear in multiple photos
  • Lower tolerance: --tolerance 0.7

If confidence seems low:

  • 60-70% is normal for different lighting/angles
  • 80%+ indicates excellent matches

🎪 Complete Demo Commands

# Full demo workflow
source venv/bin/activate
rm -f demo.db
python3 photo_tagger.py scan demo_photos --recursive --db demo.db -v
python3 photo_tagger.py process --db demo.db -v
python3 photo_tagger.py stats --db demo.db
python3 photo_tagger.py identify --show-faces --batch 3 --db demo.db
python3 photo_tagger.py auto-match --show-faces --db demo.db
python3 photo_tagger.py search "Alice" --db demo.db
python3 photo_tagger.py stats --db demo.db

Or use the interactive script:

./demo.sh

🎉 Demo Complete! Clients will see a professional-grade face recognition system with visual interfaces and intelligent matching capabilities.