Pular para o conteúdo principal

Tesseract OCR — Motor de Reconhecimento Óptico de Caracteres Open Source

O Tesseract OCR é um motor baseado em deep learning projetado para extrair texto de imagens e arquivos PDF. Utilize esta documentação técnica para dominar a instalação no Windows, Linux e macOS, configurar os modos neurais e integrar o OCR em seus softwares e pipelines de dados.

Nota: O núcleo do Tesseract é um executável de linha de comando e uma biblioteca C++.
Demo Instantânea no Navegador: Não quer configurar binários locais agora? Teste o reconhecimento de imagens de forma 100% privada com nossa Ferramenta de OCR Web Online.

O que é o Tesseract?

O Tesseract é um motor que converte pixels brutos em dados de texto estruturados e pesquisáveis. Nascido nos laboratórios da Hewlett-Packard em 1985, atualmente é mantido pela comunidade global de código aberto e oferece suporte nativo a mais de 100 idiomas através de redes neurais LSTM (Long Short-Term Memory).


Guias para desenvolvedores

Além desta referência, publicamos guias completos e testados para cada tarefa de desenvolvimento com o Tesseract:

Instalação

Por ser uma biblioteca em C++ otimizada, a maneira mais simples de instalar o Tesseract é utilizando o gerenciador de pacotes do seu sistema operacional.

macOS

O Homebrew é o método oficialmente recomendado para macOS (chips Apple Silicon e Intel).

Terminal
brew install tesseract
brew install tesseract-lang

Ubuntu / Debian

Os repositórios oficiais apt contêm versões estáveis do Tesseract.

Terminal
sudo apt install tesseract-ocr
sudo apt install tesseract-ocr-por tesseract-ocr-all

Windows

Instaladores pré-compilados são disponibilizados pelo projeto UB Mannheim. Gerenciadores como scoop ou winget também suportam o Tesseract nativamente.

PowerShell
scoop install tesseract
scoop install tesseract-languages

Início Rápido e Comandos CLI Básicos

O Tesseract opera primariamente por linha de comando. Extrair texto de uma imagem requer apenas uma linha.

Terminal
tesseract nome_imagem base_saida [-l idioma] [-psm modoseg] [arquivo_config...]

Exemplo: Extrair Texto em Português

Para extrair texto de fatura.png e salvá-lo em resultado.txt:

Terminal
tesseract fatura.png resultado -l por
Nota: Omita a extensão .txt no nome de saída. O Tesseract a adiciona automaticamente ao salvar texto comum.

Modos de Segmentação de Página (PSM)

Os Modos de Segmentação de Página (PSM) definem como o Tesseract divide o layout visual da imagem para encontrar blocos de texto. Por padrão, o Tesseract espera uma página completa (PSM 3). Se a sua entrada for uma única linha, texto esparso ou uma coluna, use a flag --psm correspondente.

Regra Rápida: Use PSM 3 (Auto) para documentos em geral, PSM 6 (Bloco único) para parágrafos uniformes e PSM 7 (Linha única) para rótulos e códigos de barras.
  • 0: Apenas detecção de orientação e escrita (OSD).
  • 1: Segmentação automática com OSD.
  • 3: Segmentação automática completa, sem OSD. *(Padrão)*
  • 4: Assume uma coluna única de texto com tamanhos variáveis.
  • 6: Assume um único bloco uniforme de texto.
  • 7: Trata a imagem como uma única linha de texto.
  • 11: Texto esparso. Localiza o máximo de texto possível sem ordem fixa.
  • 13: Linha pura. Processa como linha única ignorando heurísticas internas.

Para forçar o processamento como linha individual:

Terminal
tesseract codigo_barras.png stdout --psm 7

Modos do Motor de OCR (OEM)

Os Modos do Motor (OEM) permitem alternar entre o algoritmo legado de correspondência de padrões e a moderna rede neural LSTM. Você pode alternar os modos através da flag --oem para calibrar velocidade e precisão.

Recomendação: OEM 1 (LSTM) é o padrão no Tesseract 5 e entrega a maior precisão. OEM 0 (Legado) é recomendado apenas para fontes históricas específicas.
  • 0: Apenas motor clássico legado. (Visão computacional tradicional).
  • 1: Apenas motor de rede neural LSTM. (Rápido e de altíssima precisão).
  • 2: Motores legado e LSTM combinados.
  • 3: Padrão, de acordo com o modelo .traineddata carregado.

Formatos de Saída

Além de emitir texto simples no terminal ou em arquivos .txt, o Tesseract é um analisador de documentos completo capaz de gerar PDFs pesquisáveis e geometrias de layout.

PDFs com Texto Pesquisável

Para converter uma imagem digitalizada em um arquivo PDF pesquisável com texto invisível perfeitamente alinhado:

Terminal
tesseract documento.tif saida_pdf pdf

PDF Apenas de Texto Invisível

Útil para sobrepor texto a PDFs já existentes em um pipeline de automação:

Terminal
tesseract digitalizacao.png saida textonly_pdf

hOCR / TSV / ALTO

Para obter coordenadas exatas em pixels de cada palavra e seus respectivos níveis de confiança:

Terminal
tesseract imagem.png saida hocr
tesseract imagem.png saida tsv

→ Guia completo de PDF com Tesseract OCR — PDFs pesquisáveis, OCRmyPDF, Python e solução de problemas.


Bibliotecas e Wrappers de Programação

Deseja integrar o Tesseract em um aplicativo web, script ou microsserviço? A comunidade desenvolveu bibliotecas para quase todas as linguagens modernas.

Python (pytesseract)

Instale o motor e depois pip install pytesseract pillow. O guia completo cobre image_to_string, pré-processamento, PDF, confiança, configuração PSM/OEM e solução de problemas.

→ Guia completo do Tesseract OCR em Python

Node.js JavaScript (tesseract.js)

Use o tesseract.js no navegador ou Node via WebAssembly. Ele reconhece imagens e não suporta PDF. Veja a referência de bibliotecas para todos os wrappers e trade-offs.

→ Bibliotecas e wrappers do Tesseract OCR


Treinamento de Modelos OCR Customizados

O Tesseract 5 ajusta e treina modelos LSTM com o projeto tesstrain. O treinamento não está disponível nos instaladores binários: você precisa compilar a partir do código-fonte (ou WSL2), além de make, geração de ground truth e o repositório tesstrain.

→ Guia completo de treinamento do Tesseract (tesstrain, ajuste fino, implantação)


Ferramentas e Motores Relacionados

Embora o Tesseract seja a referência de código aberto consolidada, soluções modernas costumam combiná-lo com bibliotecas complementares:

  • PaddleOCR: Motor baseado em deep learning avançado (PP-OCR) com excelente capacidade de reconhecimento de tabelas e texto curvilíneo. (guia)
  • Docling: Analisador de documentos para IA generativa e RAG que converte PDFs, imagens e arquivos do Office em Markdown e JSON estruturados. (guia)
  • Python Pillow: Biblioteca padrão para tratamento e pré-processamento de imagens (ajuste de brilho, limiarização e corte) antes do OCR.

Fim da Documentação Principal do Tesseract.

Aviso Legal: TesseractOCR.org é um projeto de documentação independente criado pela comunidade e não é afiliado, endossado ou conectado formalmente com o projeto oficial Tesseract OCR nem seus mantenedores.