Extrae texto de imágenes con Vision AI
El OCR cambió por completo entre 2024 y 2026
El OCR tradicional (Tesseract, desde 1985) funciona en 2 pasos:
1. Detección: encuentra las regiones de la imagen que contienen texto
2. Reconocimiento: clasifica cada letra de forma individual
Funciona bien en documentos impresos limpios, con fuentes comunes, en inglés. En cualquier otro escenario (manuscritos, carteles curvos, texto en fotos, idiomas poco comunes, layouts complejos) la precisión cae al 60-70%.
Los vision-language models modernos (Claude Sonnet, GPT-5, Gemini 3 Pro) revolucionaron el OCR. En lugar de clasificar letra por letra, interpretan la imagen como un todo — reconocen el contexto, corrigen errores basándose en el significado y manejan layouts arbitrarios.

Cuándo usar cada herramienta
Tesseract (open source, CPU local):
- Documentos impresos estandarizados (facturas, PDFs escaneados)
- Alto volumen (10k+ páginas/día) donde la latencia importa
- Casos donde la privacidad impide enviar datos a la nube
- Costo: prácticamente cero
Vision-LLM (vía API):
- Texto manuscrito
- Carteles, letreros, fotos de calle
- Textos en objetos 3D (latas, etiquetas curvas)
- Documentos con layout complejo (tablas, múltiples columnas, notas al pie)
- Idiomas con pocos recursos (árabe, chino, hebreo)
- Costo: entre $0,005 y $0,05 por imagen
Whisper-OCR (modelo especializado):
- Documentos con muchas tablas
- Ecuaciones matemáticas
- Layouts científicos (papers)
Cómo hacer un buen request
Para que el vision-LLM funcione mejor, estructura el prompt así:
Mal:
> "OCR this"
Bien:
> "Extrae todo el texto visible en esta imagen, preservando la estructura jerárquica (título, subtítulos, párrafos). Si hay una tabla, fórmateala en markdown. Si el texto es ilegible en alguna región, indica [ilegible]. Si hay texto en varios idiomas, sepáralos."
La diferencia de calidad es dramática. El LLM usa su "comprensión" de la estructura para organizar el output.
Casos de uso prácticos
- Digitalización de archivos históricos: cartas manuscritas, actas antiguas
- Recetas médicas: convertir una receta escrita a mano en texto estructurado
- Carteles en fotos turísticas: "¿qué dice este cartel?"
- Tarjetas de visita: extraer nombre, email y teléfono de una foto
- Whiteboards: foto de una lluvia de ideas en reunión → texto digital
- Facturas fotográficas: factura procesada rápidamente en la app
- Inspección industrial: lectura de etiquetas en equipos a partir de fotos de campo
Errores técnicos comunes
- Resolución: los vision-LLMs necesitan al menos 512×512. Las fotos de smartphones modernos son ideales; las imágenes de baja resolución fallan.
- Orientación: una imagen rotada 90° funciona, pero con precisión reducida — rótalas antes de enviarlas
- El alto contraste ayuda: negro sobre blanco > gris claro sobre blanco > gris sobre gris
- Foco: una imagen desenfocada degrada drásticamente los resultados; captura bien o usa una cámara profesional
- Reflejos: foto de pantalla con reflejo o sombra = problema. Prefiere captura directa o prints (screenshots)
Integración vía API
`python
import httpx, base64
with open("foto.jpg", "rb") as f:
img_b64 = base64.b64encode(f.read()).decode()
r = httpx.post(
"https://api.brainiall.com/v1/chat/completions",
json={
"model": "claude-sonnet-4-6",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "Extrae el texto de esta imagen en markdown, preservando la estructura."},
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img_b64}"}}
]
}]
},
headers={"Authorization": "Bearer brnl-xxx"}
)
print(r.json()["choices"][0]["message"]["content"])`
Pruébalo ahora mismo
En el chat de Brainiall, haz clic en el clip para adjuntar archivos, envía una imagen con texto y escribe "extrae el texto de esta imagen". Resultado en 2-5 segundos. El plan Pro incluye 100 análisis/mes; el plan Business desbloquea el procesamiento en batch.