4a6f9c5c98e958831b655743d4bef77876cf223a
Closes the three concrete splice blockers codex round-8 surfaced in the post-round-2 drafts, plus the binary-collapse terminology residue. No empirical changes. - Abstract trimmed 261 -> 247 words (3 under IEEE Access <=250 target). Cut "technically trivial and visually invisible," (S1 motivational redundancy) and the within-firm-rate parenthetical "(Firm A 98.8%; Firms B/C/D 76.7-83.7%)" plus "between" connector; preserved the corrected 77-99% any-pair headline so the M3 substance survives. - §IV-J Table XV sample-size footnote (line 177) corrected: round-2 misclassified §IV-M.5 as descriptor-complete n=150,442; Script 44 / Tables XXIV-XXV actually use vector-complete n=150,453, same as §IV-M.2 Table XXI (Script 40b) and §IV-M.3 Table XXII (Script 43). New footnote distinguishes descriptor-complete (§IV-D through §IV-J) from vector/pair-recomputed (§IV-M.2/M.3/M.5; Scripts 40b/43/44). - §IV-I (line 161) stale cross-reference: "§IV-M Table XVI" was the K=3 firm cross-tab (descriptive), not the v4-new ICCR calibration. Replaced with "§IV-M Tables XXI-XXVI" — the full ICCR calibration block. Pre-existing error exposed by the round-2 cascade. - §III line 131 + §IV Table XI line 104 binary-collapse label: "replicated vs not-replicated" -> "replication-dominated vs less-replication-dominated" for consistency with the K=3 descriptor-position framing. "Replicated class" preserved where it refers to byte-identical positive-anchor ground truth (§III-K.4, §IV-H lines 143/153/155). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
PDF Signature Extraction System
Automated extraction of handwritten Chinese signatures from PDF documents using hybrid VLM + Computer Vision approach.
Quick Start
Step 1: Extract Pages from CSV
cd /Volumes/NV2/pdf_recognize
source venv/bin/activate
python extract_pages_from_csv.py
Step 2: Extract Signatures
python extract_signatures_hybrid.py
Documentation
- PROJECT_DOCUMENTATION.md - Complete project history, all approaches tested, detailed results
- README_page_extraction.md - Page extraction documentation
- README_hybrid_extraction.md - Hybrid signature extraction documentation
Current Performance
Test Dataset: 5 PDF pages
- Signatures expected: 10
- Signatures found: 7
- Precision: 100% (no false positives)
- Recall: 70%
Key Features
✅ Hybrid Approach: VLM name extraction + CV detection + VLM verification
✅ Name-Based: Signatures saved as signature_周寶蓮.png
✅ No False Positives: Name-specific verification filters out dates, text, stamps
✅ Duplicate Prevention: Only one signature per person
✅ Handles Both: PDFs with/without text layer
File Structure
extract_pages_from_csv.py # Step 1: Extract pages
extract_signatures_hybrid.py # Step 2: Extract signatures (CURRENT)
README.md # This file
PROJECT_DOCUMENTATION.md # Complete documentation
README_page_extraction.md # Page extraction guide
README_hybrid_extraction.md # Signature extraction guide
Requirements
- Python 3.9+
- PyMuPDF, OpenCV, NumPy, Requests
- Ollama with qwen2.5vl:32b model
- Ollama instance: http://192.168.30.36:11434
Data
- Input:
/Volumes/NV2/PDF-Processing/master_signatures.csv(86,073 rows) - PDFs:
/Volumes/NV2/PDF-Processing/total-pdf/batch_*/ - Output:
/Volumes/NV2/PDF-Processing/signature-image-output/
Status
✅ Page extraction: Tested with 100 files, working ✅ Signature extraction: Tested with 5 files, 70% recall, 100% precision ⏳ Large-scale testing: Pending ⏳ Full dataset (86K files): Pending
See PROJECT_DOCUMENTATION.md for complete details.
Description
Automated extraction of handwritten Chinese signatures from PDF documents using hybrid VLM + Computer Vision approach. 70% recall, 100% precision.
Languages
Python
100%