Imagem para Texto (OCR)

Extraia texto de uma foto ou imagem digitalizada diretamente no navegador usando reconhecimento óptico de caracteres — sem envio, funciona offline depois de carregado.

246 visualizações

Esta ferramenta é para fotos e imagens digitalizadas, não para um PDF que já possui uma camada de texto incorporada. Para um PDF com texto real dentro dele, use a ferramenta "Extrator de Texto de PDF".

Como um Navegador Consegue Realmente "Ler" uma Foto

O reconhecimento óptico de caracteres (OCR) é o processo de transformar pixels que visualmente se parecem com letras em texto Unicode real e selecionável, e tradicionalmente tem sido um trabalho do lado do servidor precisamente por ser computacionalmente pesado. Esta ferramenta executa o Tesseract — originalmente desenvolvido na HP Labs nos anos 1980, depois disponibilizado como código aberto e mantido pelo Google, amplamente considerado um dos motores de OCR de código aberto mais precisos disponíveis — compilado para WebAssembly, um formato de instruções binárias que permite que código C++ seja executado dentro do navegador a uma velocidade próxima da nativa. Essa etapa de compilação é o que torna isso possível sem um servidor: exatamente o mesmo motor de reconhecimento usado em muitos aplicativos de digitalização de desktop e móveis roda localmente no seu dispositivo.

O Tesseract moderno (versão 4 e posteriores) reconhece texto usando uma rede neural LSTM (Long Short-Term Memory, um tipo de rede neural recorrente bem adequada a dados sequenciais) em vez do antigo reconhecimento de padrões caractere por caractere usado no Tesseract 3 e versões anteriores. Em vez de tentar isolar e classificar uma letra de cada vez, o modelo LSTM lê uma linha inteira como uma sequência, usando o contexto ao redor para resolver formas ambíguas — é por isso que consegue distinguir corretamente um "l" de um "1" ou um "O" de um "0" de forma muito mais confiável que os motores mais antigos, já que na prática está prevendo "qual palavra faz sentido aqui", não apenas comparando formas isoladamente.

A qualidade do reconhecimento depende fortemente do modelo de idioma carregado: esta ferramenta baixa um arquivo de modelo treinado específico para o idioma selecionado (inglês ou turco) na primeira utilização, contendo os padrões estatísticos das formas de letras, sequências de letras comuns e dicionário desse idioma. Selecionar o idioma correto antes de digitalizar melhora significativamente a precisão, já que um modelo treinado em texto turco lida com caracteres específicos do turco (ç, ğ, ı, ö, ş, ü) muito melhor do que um modelo apenas em inglês.

Como o modelo de idioma representa um download considerável (vários megabytes), o navegador o armazena em cache após o primeiro uso, de modo que digitalizações subsequentes no mesmo idioma começam visivelmente mais rápido sem precisar baixá-lo novamente.

Obtendo Melhores Resultados

  • Fotos nítidas, bem iluminadas e com alto contraste funcionam muito melhor do que fotos borradas ou com pouca luz — a qualidade do OCR acompanha de perto a qualidade da imagem, já que a rede neural trabalha a partir dos mesmos pixels que um olho humano teria dificuldade em decifrar.
  • Uma foto reta e não rotacionada é reconhecida de forma mais confiável do que uma foto tirada em ângulo acentuado, mesmo que o motor aplique algum ajuste automático de inclinação.
  • A escrita à mão é fundamentalmente mais difícil do que o texto impresso para este motor - o Tesseract foi treinado principalmente com fontes impressas, e uma caligrafia cursiva ou muito estilizada produzirá uma precisão visivelmente menor.
  • Esta é uma ferramenta diferente da extração de texto de PDF deste site: esta realiza reconhecimento de caracteres de verdade sobre pixels, enquanto a ferramenta de PDF lê texto que já está incorporado como texto selecionável no arquivo - use o OCR apenas quando não houver uma camada de texto real para ler.

Perguntas Frequentes

Como o reconhecimento de texto funciona num navegador sem servidor?

O motor de OCR Tesseract, originalmente desenvolvido na HP Labs e agora mantido pelo Google, é compilado para WebAssembly - um formato binário que executa código C++ dentro do navegador a uma velocidade próxima da nativa. É isso que torna possível o reconhecimento óptico de caracteres completo inteiramente no seu dispositivo.

Por que selecionar o idioma correto importa?

Cada idioma baixa seu próprio arquivo de modelo treinado contendo os padrões estatísticos das formas de letras, sequências comuns e dicionário desse idioma. Um modelo treinado em turco reconhece caracteres específicos do turco, como ç, ğ, ı, ö, ş, ü, com muito mais precisão do que um modelo apenas em inglês.

Por que minha caligrafia é reconhecida pior do que o texto impresso?

A rede neural do Tesseract foi treinada principalmente com fontes impressas. Seu modelo LSTM lê o texto como uma sequência e usa o contexto para resolver formas ambíguas, o que funciona muito bem para formas de letras impressas consistentes, mas tem dificuldade com a alta variabilidade da escrita cursiva ou estilizada.

Minha imagem é enviada a um servidor?

Não. O reconhecimento é executado inteiramente dentro do seu navegador via WebAssembly - a imagem nunca é transmitida a lugar nenhum. Apenas o arquivo do modelo de idioma em si é baixado uma vez (e depois armazenado em cache) para que o motor tenha os dados treinados de que precisa.

Qual é a diferença entre esta ferramenta e a de extração de texto de PDF?

Esta ferramenta realiza reconhecimento óptico de caracteres de verdade sobre pixels - funciona em fotos e imagens digitalizadas sem texto subjacente. O extrator de texto de PDF, por outro lado, lê texto que já está armazenado como texto incorporado e selecionável dentro de um PDF, o que é uma operação completamente diferente (e muito mais rápida e precisa) quando essa camada de texto existe.

Comentários

Ainda não há comentários — seja o primeiro a escrever um!

Ferramentas Semelhantes