STEP 01
PDF Render
PyMuPDF renders each PDF page to high-resolution PNG at 150 DPI. pdfplumber extracts raw text and bounding coordinates in parallel.
STEP 02
YOLO Detection
YOLOv11 runs inference on rendered page images. Detects bounding boxes for text blocks, headers, tables, and columns at conf ≥ 0.45.
STEP 03
Region Extraction
Detected bounding boxes mapped back to raw text via coordinate overlap. Overlapping boxes merged via NMS. Each region gets its raw text content.
STEP 04
Semantic Embed
Each text region encoded via Sentence Transformers (all-MiniLM-L6-v2) into 384-dim vectors capturing semantic meaning.
STEP 05
SVM Classify
LightSVM classifies each embedding into document section type: header, experience, skills, education, summary, table, footer. Output as structured JSON.