dac-ocr
DacOCR
Estrae il testo da PDF, immagini e file Office usando modelli VLM, direttamente sul tuo PC.
DacOCR è un'app desktop OCR (Windows) basata su Electron: trascina i tuoi documenti, seleziona le pagine, avvia il riconoscimento e ottieni il testo in Markdown, pronto da esportare, copiare o confrontare con l'originale.
Caratteristiche
- 🔍 OCR da modelli VLM Hugging Face — GLM-OCR (funziona anche su CPU), Qwen2.5-VL-72B e DeepSeek-OCR, con verifica automatica della compatibilità con il tuo PC
- 📄 Molteplici formati — PDF, immagini (JPG, PNG, BMP, TIFF, WEBP, HEIC/HEIF…) e file Office (DOCX, XLSX, PPTX, ODT…) convertiti via LibreOffice
- ⚡ Coda batch multi-file — elabora più documenti con un solo clic, con selezione individuale delle pagine
- 👁 Confronto affiancato — risultato e originale sincronizzati con scroll identico
- 📤 Export completo — Markdown, Word (DOCX), PDF (tabelle, blocchi di codice, numeri di pagina) e testo
- 🛟 Auto-export — salva automaticamente ogni risultato in
Documenti/DacOCR/Esportazioni - 🗂 Cronologia — tutte le elaborazioni restano salvate e sono ripristinabili in un clic
- 🧠 Preprocessing smart — deskew, denoise e binarizzazione per documenti storti o con rumore
- 📊 Progressi in tempo reale — barra di avanzamento per OCR e download dei modelli (file per file)
- 🩺 Log consultabili — pannello log integrato per diagnosi rapide
Come funziona
- Carica i documenti (drag & drop)
- Scegli il modello e le pagine da riconoscere
- Avvia l'OCR e raccogli il testo in Markdown
- Esporta, copia o confronta il risultato
Tecnologie
| Strato | Tecnologia |
|---|---|
| Interfaccia | Angular (standalone components + signals) |
| Desktop | Electron |
| Backend | Python · FastAPI · PyTorch · Hugging Face Transformers |
| Image | Pillow · pillow-heif · OpenCV · PyMuPDF |
Requisiti
- Windows (macOS/Linux: avvio da sorgente)
- Python 3.13 (backend in
.venvdedicato) - LibreOffice (solo per i file Office)
- ~3 GB liberi su disco per il modello GLM-OCR
Sviluppo
npm install
backend/.venv/Scripts/python.exe -m pip install -r backend/requirements.txt
npm run build && npm run electron