Pular para o conteúdo principal
PulsarKit

Converter imagem para texto

Extraia o texto impresso de uma foto, captura de tela ou digitalização e baixe como arquivo .txt ou como JSON, com a posição e a confiança de cada bloco.

Solte seus arquivos aqui

.jpg, .jpeg, .png, .webp, .bmp, .gif, .avif · até 100 MB

Mais configurações

Como Extrair texto

  1. 1

    Adicione sua imagem

    JPG, PNG, WebP, BMP, GIF ou AVIF, até 20 arquivos. O formato é lido no conteúdo do próprio arquivo, então mesmo uma extensão errada vai parar no decodificador certo.

  2. 2

    Escolha o idioma do texto

    Um idioma basta para a maioria das digitalizações; acrescente um segundo ou um terceiro quando a página realmente misturar idiomas. Cada idioma a mais custa um download e um pouco de precisão.

  3. 3

    Clique em Extrair texto e baixe o .txt

    Você recebe o texto reconhecido, o número de caracteres e a confiança média. Mude a saída para JSON quando também precisar das coordenadas.

O que o OCR no navegador consegue ler e o que não consegue

O mecanismo aqui é o Tesseract, o mesmo por trás da maior parte do OCR de código aberto, compilado para WebAssembly e executado dentro da sua aba. Ele vai bem com texto impresso: páginas de livro, capturas de tela, faturas, placas, formulários, qualquer coisa composta em uma fonte comum e em tamanho razoável. Vai mal com escrita à mão, com fontes decorativas muito estilizadas, com texto sobre fotos cheias de detalhes e com qualquer coisa fotografada em ângulo. A resolução importa mais que o tamanho do arquivo: uma captura de tela nítida de um parágrafo, com 1.500 pixels de largura, é lida melhor que uma foto de celular de dez megapixels do mesmo parágrafo tirada do outro lado da sala. Se a confiança média ficar abaixo de 30, a ferramenta avisa que não encontrou nada legível, em vez de entregar uma página de texto sem sentido que só parece plausível.

A opção de pré-processamento e quando ela ajuda

Com o pré-processamento ligado, a imagem é convertida para escala de cinza e depois binarizada pelo método de Otsu, que escolhe o ponto de corte entre preto e branco a partir do histograma da própria imagem, e não de um número fixo. Isso ajuda muito em páginas fotografadas com iluminação irregular, em recibos desbotados e em digitalizações acinzentadas, porque remove o sombreamento que, sem isso, o reconhecedor tentaria interpretar. Atrapalha em texto que já está limpo, em capturas de tela com letras claras sobre fundo escuro e em qualquer coisa com texto colorido sobre fundo colorido, em que um limiar rígido pode apagar as letras por completo. Use essa opção quando o resultado normal decepcionar, e não antes.

Só o texto ou o texto com coordenadas

A saída padrão é um .txt simples, com as mesmas quebras de linha que o mecanismo viu. A opção JSON entrega um array de blocos, cada um com o texto reconhecido, a confiança e uma caixa delimitadora em quatro números: x, y, largura e altura, em pixels da imagem que foi de fato reconhecida. É disso que você precisa para destacar os resultados sobre o original, extrair um único campo de um formulário ou ver qual parte da página puxou a confiança média para baixo.

Nem a imagem nem o texto são enviados

O mecanismo de reconhecimento e os dados de idioma são baixados uma vez e ficam no cache do navegador. Depois disso, tudo roda localmente: a imagem é decodificada na aba, reconhecida na aba, e o arquivo de texto é montado na aba. Nada do conteúdo é enviado para lugar nenhum, o que faz diferença quando o que você está lendo é um contrato, um holerite ou um documento de identidade.

Perguntas frequentes

Quais idiomas a ferramenta reconhece?

Inglês, russo, alemão, francês, espanhol, chinês simplificado, árabe e japonês. É possível combinar até três de uma vez em páginas que realmente misturam idiomas, mas um único idioma certo quase sempre é mais preciso do que dois.

Minha imagem é enviada para um servidor?

Não. O mecanismo de OCR é WebAssembly rodando dentro do seu navegador. O único tráfego de rede é o download, feito uma única vez, do mecanismo e dos dados do idioma escolhido; a imagem e o texto reconhecido ficam no seu dispositivo.

Por que a primeira execução é tão mais lenta?

Porque na primeira execução são baixados o mecanismo, de cerca de 3 MB, e os dados do seu idioma, entre 0,7 e 3 MB, conforme o idioma. O navegador guarda os dois em cache, então a segunda execução começa a reconhecer imediatamente.

Funciona com texto escrito à mão?

Não de forma confiável. Os modelos usados aqui foram treinados com texto impresso, e a escrita à mão volta errada ou abaixo do limite de confiança. Letras de forma maiúsculas muito caprichadas às vezes funcionam; a letra cursiva comum, não. Trate qualquer resultado manuscrito como um rascunho a conferir, nunca como uma transcrição.

O que fazer quando nenhum texto é encontrado?

Primeiro, ative a opção de pré-processamento e tente de novo; isso resolve a maioria dos casos de iluminação irregular. Se não adiantar, a causa costuma ser a resolução: digitalize ou fotografe de novo de modo que as letras tenham pelo menos vinte pixels de altura. Recortar a imagem só até o texto e escolher o idioma certo também ajudam mais do que se imagina.

Qual resolução a imagem precisa ter para um bom resultado?

O ideal são letras com cerca de 20 a 40 pixels de altura, o que equivale a uns 300 DPI em uma digitalização comum de documento. Abaixo disso, as letras começam a se fundir e a precisão cai bruscamente. Acima disso, você paga principalmente em tempo: uma imagem não fica mais legível por ter 10.000 pixels de largura, e, de todo modo, qualquer imagem com mais de 12.000 pixels de lado é reduzida antes do reconhecimento.

Posso obter a posição de cada palavra?

Você obtém a posição de cada bloco, que é a unidade que o mecanismo informa: o texto, a confiança e a caixa delimitadora em pixels. Escolha a saída JSON em vez de texto simples, e o download passa a ser esse array, e não um arquivo de texto corrido.

Funciona no celular?

Sim, com duas ressalvas. A primeira execução precisa baixar vários megabytes pela conexão que você estiver usando, e o reconhecimento no celular leva cerca de três vezes mais tempo do que em um notebook, então a digitalização de uma página inteira pode levar meio minuto. Mesmo assim, tudo roda localmente.

Ferramentas relacionadas