Files
MastersThesis/README.md
2025-10-11 17:25:29 +02:00

50 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Sistema OCR multimotor con IA para PDFs escaneados en español
**Trabajo Fin de Máster (TFM) Tipo 2: Desarrollo de Software**
**Líneas:** Percepción computacional · Aprendizaje automático
**Autor:** Sergio Jiménez Jiménez · **UNIR** · **Año:** 2025
> Extracción **robusta** de texto desde **PDFs escaneados** en **español** usando **modelos neuronales** (EasyOCR · PaddleOCR/PPOCR · TrOCR · *opcionales*: DocTR/MMOCR).
> Enfoque **solo IA**: **no** se incluyen motores clásicos (p. ej., Tesseract) ni propietarios (p. ej., ABBYY).
---
## 🧭 Objetivo
Desarrollar y evaluar un **sistema OCR multimotor** basado **exclusivamente** en IA que:
- Procese PDFs escaneados extremo a extremo (**PDF → Imagen → Preproc → OCR → Fusión → Post-proc**).
- **Mejore ≥15% el CER** frente a una **línea base neuronal** (p. ej., EasyOCR por defecto) en un conjunto de prueba en español.
- Mantenga **tiempos por página** prácticos y un **pipeline reproducible**.
**Métricas principales:**
- **CER** (Character Error Rate)
- **WER** (Word Error Rate)
- **Latencia** por página
---
## 🧩 Alcance y decisiones de diseño
- **Idioma:** español (texto impreso; no manuscrito).
- **Documentos:** **PDFs escaneados** (calidad variable, skew, ruido, maquetación estándar).
- **Motores IA incluidos:**
- **EasyOCR** (baseline neuronal)
- **PaddleOCR (PPOCR)**
- **TrOCR** (VisionEncoderDecoder / Transformers)
- *Opcionales:* **DocTR** (pythondoctr), **MMOCR** (OpenMMLab)
- **Exclusiones:** Tesseract/ABBYY u otros motores clásicos/propietarios.
- **Evaluación:** CER/WER + tiempos. **Fusión** por votación/ confianza y **postprocesado** lingüístico (opcional).
---
## 🏗️ Arquitectura (visión general)
```text
PDF (escaneado)
└─► Conversión a imagen (PyMuPDF / pdf2image)
└─► Preprocesado (OpenCV): binarización · normalización · deskew · denoise
└─► OCR (IA): EasyOCR | PaddleOCR | TrOCR [ (+ DocTR/MMOCR opc.) ]
└─► Fusión: votación / selección por confianza
└─► Postprocesado: normalización · corrección ortográfica (opcional)
└─► Evaluación: CER · WER · latencia