Como extrair texto de imagens com OCR
O OCR (reconhecimento óptico de caracteres) transforma as letras de uma foto, captura de tela ou digitalização em texto que você pode copiar e editar. Este guia explica o que afeta o resultado e como obter um texto mais limpo.
Como o OCR funciona
Um mecanismo de OCR primeiro converte a imagem em preto e branco para que as letras se destaquem do fundo. Depois, analisa o layout e encontra blocos de texto, linhas e palavras. Por fim, um modelo de reconhecimento estima quais caracteres cada palavra mostra.
A ferramenta do LeedyBox usa o Tesseract, um mecanismo de OCR de código aberto, por meio do Tesseract.js. Seu modelo de reconhecimento é uma rede neural treinada com texto impresso, com dados separados para cada idioma. O mecanismo também informa um valor de confiança para cada palavra, e a ferramenta mostra a média desses valores para cada imagem.
Como escolher o idioma
A configuração de idioma diz ao mecanismo quais caracteres e palavras esperar. Ler um texto em coreano, japonês ou russo com o modelo de inglês produz um texto sem sentido, formado por letras latinas parecidas, e, em idiomas que compartilham o mesmo alfabeto, o modelo certo lida melhor com acentos e palavras comuns.
Se uma imagem mistura dois idiomas, por exemplo um documento em coreano com nomes de produtos em inglês, escolha os dois. Adicione um segundo idioma apenas quando o texto precisar: cada idioma extra deixa o reconhecimento mais lento e dá ao mecanismo mais caracteres para confundir.
| Imagem | Idioma | Layout do texto |
|---|---|---|
| Página de documento ou artigo em um único idioma | Esse idioma | Automático |
| Cardápio, slide ou etiqueta com texto local e palavras em inglês | Idioma local + inglês | Automático |
| Parágrafo recortado cujas linhas saem na ordem errada | Esse idioma | Um único bloco de texto |
| Uma única linha, como um título, um número de série ou uma placa | Esse idioma | Uma única linha de texto |
Dicas de qualidade de imagem
- Resolução: texto pequeno em uma imagem de baixa resolução é a causa mais comum de erros. Ampliar ajuda um pouco, e é por isso que a ferramenta do LeedyBox pode ler imagens pequenas de novo com o dobro do tamanho, mas isso não restaura detalhes que a imagem não contém. Letras muito grandes também podem ser lidas com menos confiabilidade.
- Contraste: texto escuro sobre um fundo claro e liso funciona melhor. Impressão fraca, texto cinza, fundos coloridos e sombras dificultam a separação das letras. A opção de tons de cinza e contraste pode ajudar com texto fraco, mas compare os resultados, porque ela também pode piorar uma imagem limpa.
- Texto reto: texto inclinado, curvo ou distorcido pela perspectiva, como em um livro fotografado em ângulo, gera linhas mescladas e caracteres errados. Gire a imagem ou tire outra foto se o texto estiver claramente torto.
- Recorte: recorte a imagem deixando só o texto de que você precisa. Logotipos, fotos, bordas e colunas vizinhas podem ser confundidos com caracteres e atrapalhar a ordem de leitura.
- Compressão: uma compressão JPG forte borra as letras com artefatos. Salve capturas de tela como PNG sempre que puder; veja JPG, PNG, WebP e AVIF.
Capturas de tela vs fotos
Capturas de tela são nítidas e retas, então costumam dar bons resultados. O principal ponto fraco delas é o tamanho: o texto de interfaces muitas vezes tem só alguns pixels de altura. Aumente o zoom da página ou do app antes de fazer a captura e não reduza a captura depois. Você pode colar uma captura de tela diretamente na ferramenta com Ctrl+V (⌘+V no Mac).
Fotos acrescentam iluminação irregular, reflexos, desfoque, perspectiva e páginas curvas. Segure a câmera paralela à página, preencha o quadro com o texto, use uma iluminação uniforme sem reflexo do flash e toque na tela para focar. A orientação registrada pela câmera é aplicada antes da leitura, então uma foto tirada com o celular de lado é lida na posição correta.
Para arquivos PDF, use a ferramenta PDF para texto em vez de converter as páginas em imagens: ela lê a camada de texto existente e executa o OCR apenas nas páginas que não têm uma. O guia Extrair texto de PDF: camadas de texto e OCR trata de PDFs digitalizados.
Escrita à mão e fontes estilizadas
Os modelos usados aqui são treinados com texto impresso, então a escrita à mão geralmente é mal reconhecida. Letras de forma maiúsculas, bem traçadas e separadas têm mais chance; letra cursiva e assinaturas raramente dão um resultado aproveitável. Fontes decorativas, manuscritas ou muito condensadas, texto sobre fundos estampados e texto vertical causam problemas parecidos.
Como verificar e corrigir o resultado
Trate o resultado do OCR como um rascunho. Os erros típicos incluem confundir 0 e O, 1, l e I, ou "rn" e "m"; acentos e pontuação omitidos ou errados; palavras unidas ou separadas no fim das linhas; e linhas de colunas vizinhas misturadas. Tabelas e layouts com várias colunas não são preservados: o resultado é texto simples.
Compare o texto com a imagem, prestando atenção especial a números, nomes, datas, valores e endereços, em que um único caractere errado faz diferença. Um valor de confiança alto não prova que o texto está correto. Você pode editar o texto na ferramenta antes de copiá-lo ou baixá-lo.
Privacidade: o que fica no seu dispositivo
A ferramenta do LeedyBox executa o mecanismo de OCR no seu navegador: suas imagens são lidas no seu dispositivo e não são enviadas ao LeedyBox. O navegador baixa a biblioteca Tesseract.js, o mecanismo em WebAssembly e os dados de cada idioma escolhido a partir do próprio leedybox.com. São downloads comuns de arquivos que não incluem suas imagens. O Tesseract.js guarda os dados de idioma no armazenamento do navegador (IndexedDB) para que não precisem ser baixados de novo; limpar os dados do site no navegador os remove.
Perguntas frequentes
Por que a primeira imagem demora?
Na primeira vez que você usa um idioma, o mecanismo de OCR e os dados do idioma (vários megabytes) são baixados. As imagens seguintes os reutilizam, e os dados do idioma ficam guardados no armazenamento do navegador para visitas futuras.
O OCR consegue manter o layout de um documento?
A ferramenta extrai texto simples com quebras de linha. Colunas, tabelas, fontes e formatação precisam ser refeitas manualmente no seu editor.
Por que a ferramenta não encontrou nenhum texto?
Geralmente o texto é pequeno ou fraco demais, ou o idioma está errado. Recorte a imagem deixando só o texto, confira o idioma ou tente outra opção de layout do texto.