๐ Quick Start Guide
Get the Certificate Verification System running in 5 minutes!
โก Fastest Way to Run
Option 1: Demo Mode (No Setup Required)
# Clone repository
git clone https://github.com/YourUsername/certificate-verifier.git
cd certificate-verifier
# Install dependencies
pip install -r requirements.txt
# Run app
streamlit run main.py
That's it! App runs in demo mode - no API keys needed.
๐ง Full Setup (With OCR API)
1. Install Dependencies
pip install -r requirements.txt
2. Get Free OCR API Key
- Visit: https://ocr.space/ocrapi
- Sign up (free)
- Copy your API key
3. Configure Environment
Create .env file:
OCRSPACE_API_KEY=your_api_key_here
4. Initialize Database (Optional)
python init_db.py
5. Run Application
streamlit run main.py
6. Open Browser
http://localhost:8501
๐ฑ Usage
Basic Workflow:
- Upload certificate image (JPG/PNG)
- Click "Verify Certificate"
- View results with confidence scores
- Download verification report (JSON)
Demo Mode Testing:
- Enable "Demo Mode" in sidebar
- Upload any certificate image
- System uses sample OCR data
- See how verification works!
๐ฏ What Happens on First Run?
Automatic Downloads:
YOLOv8 Model (~6 MB)
- Downloads from Hugging Face
- Takes ~10 seconds
- Cached for future runs
ViT Model (~1 GB) (Only if seal verification enabled)
- Downloads from Hugging Face
- Takes ~5 minutes (depending on bandwidth)
- Cached for future runs
After first run: Everything loads instantly from cache!
โ Verification Steps
The system performs 3-layer verification:
Layer 1: OCR Text Verification
- Extracts text from certificate
- Finds registration number
- Matches against database
- Calculates confidence score
Layer 2: YOLOv8 Seal Detection
- Detects seals/stamps in image
- 99% detection accuracy
- Returns bounding boxes
Layer 3: ViT Seal Classification
- Classifies each seal as Real/Fake
- Uses Vision Transformer AI
- Provides confidence scores
Final Decision:
- Combines all layers
- Security-first logic
- High-confidence fake โ Rejection
๐ Test Certificates
The database includes sample certificates you can test:
Sample Registration Numbers:
ABC2023001- Saksham Sharma, DevLabs InstituteABC2022007- Prisha Verma, Global Tech University1BG19CS100- Vikram Verma, VTU (from demo mode)
๐ฎ Features to Try
In Sidebar:
โ Demo Mode - Test without API keys โ Seal Verification - Enable AI seal detection โ OCR Language - Select certificate language โ System Status - Check all components
After Verification:
โ Detailed Results - Step-by-step breakdown โ Confidence Scores - For each verification layer โ Download Report - JSON export โ Detected Seals - View cropped seal images
๐จ Troubleshooting
Issue: ModuleNotFoundError
pip install -r requirements.txt
Issue: OCR API Error
- Enable "Demo Mode" in sidebar, or
- Check API key in
.envfile
Issue: Models not downloading
- Check internet connection
- Models download automatically on first run
- Look for download progress in terminal
Issue: Database error
python init_db.py
๐ Next Steps
Deploy to Cloud:
See DEPLOYMENT.md for Streamlit Cloud deployment
Customize:
- Edit
certs.dbto add your certificates - Modify verification thresholds in
verifier.py - Add custom regex patterns for registration numbers
Integrate:
- Use as Python library
- Build REST API wrapper
- Integrate with existing systems
๐ค Need Help?
- Documentation: README.md
- Deployment: DEPLOYMENT.md
- Issues: Open on GitHub
- Questions: Contact maintainer
๐ You're Ready!
Start verifying certificates with AI-powered accuracy!
streamlit run main.py
Happy verifying! ๐โจ