OCR de qualquer PNM

Arraste e solte uma foto, digitalização ou PDF (até 2.5GB). Extraímos o texto diretamente no seu navegador — gratuito, ilimitado e seus arquivos nunca saem do seu dispositivo.

Privado e seguro

Tudo acontece no seu navegador. Seus arquivos nunca tocam nossos servidores.

Incrivelmente rápido

Sem upload, sem espera. Converta no momento em que você solta um arquivo.

Realmente grátis

Nenhuma conta necessária. Sem custos ocultos. Sem truques de tamanho de arquivo.

O Reconhecimento Ótico de Caracteres (OCR) transforma imagens de texto—digitalizações, fotos de smartphone, PDFs—em strings legíveis por máquina e, cada vez mais, em dados estruturados. O OCR moderno é um pipeline que limpa uma imagem, encontra texto, lê e exporta metadados ricos para que os sistemas downstream possam pesquisar, indexar ou extrair campos. Dois padrões de saída amplamente utilizados são hOCR, um microformato HTML para texto e layout, e ALTO XML, um esquema orientado para bibliotecas/arquivos; ambos preservam posições, ordem de leitura e outras dicas de layout e são suportados por motores populares como Tesseract.

Um rápido tour pelo pipeline

Pré-processamento. A qualidade do OCR começa com a limpeza da imagem: conversão para tons de cinza, remoção de ruído, limiarização (binarização) e correção de inclinação. Tutoriais canônicos do OpenCV cobrem limiarização global, adaptativa e Otsu —itens básicos para documentos com iluminação não uniforme ou histogramas bimodais. Quando a iluminação varia dentro de uma página (pense em fotos de celular), os métodos adaptativos geralmente superam um único limiar global; Otsu escolhe automaticamente um limiar analisando o histograma. A correção da inclinação é igualmente importante: a correção de inclinação baseada em Hough (Transformada de Linha de Hough) combinada com a binarização de Otsu é uma receita comum e eficaz em pipelines de pré-processamento de produção.

Detecção vs. reconhecimento. O OCR é normalmente dividido em detecção de texto (onde está o texto?) e reconhecimento de texto (o que ele diz?). Em cenas naturais e muitas digitalizações, detectores totalmente convolucionais como EAST preveem eficientemente quadriláteros no nível de palavra ou linha sem estágios de proposta pesados e são implementados em kits de ferramentas comuns (por exemplo, tutorial de detecção de texto do OpenCV). Em páginas complexas (jornais, formulários, livros), a segmentação de linhas/regiões e a inferência da ordem de leitura são importantes:Kraken implementa a segmentação tradicional de zona/linha e a segmentação neural de linha de base, com suporte explícito para diferentes scripts e direções (LTR/RTL/vertical).

Modelos de reconhecimento. O clássico cavalo de batalha de código aberto Tesseract (de código aberto pelo Google, com raízes na HP) evoluiu de um classificador de caracteres para um reconhecedor de sequência baseado em LSTM e pode emitir PDFs pesquisáveis, saídas amigáveis para hOCR/ALTO, e mais a partir da CLI. Os reconhecedores modernos dependem da modelagem de sequência sem caracteres pré-segmentados. Classificação Temporal Conexionista (CTC) permanece fundamental, aprendendo alinhamentos entre sequências de características de entrada e strings de rótulo de saída; é amplamente utilizado em pipelines de caligrafia e texto de cena.

Nos últimos anos, os Transformers remodelaram o OCR. TrOCR usa um codificador Vision Transformer mais um decodificador Text Transformer, treinado em grandes corpora sintéticos e, em seguida, ajustado em dados reais, com forte desempenho em benchmarks de texto impresso, manuscrito e de cena (veja também documentação do Hugging Face). Em paralelo, alguns sistemas contornam o OCR para compreensão downstream: Donut (Document Understanding Transformer) é um codificador-decodificador livre de OCR que produz diretamente respostas estruturadas (como JSON de chave-valor) a partir de imagens de documentos (repositório, cartão do modelo), evitando o acúmulo de erros quando uma etapa separada de OCR alimenta um sistema de IE.

Mecanismos e bibliotecas

Se você quer leitura de texto completa em vários scripts, EasyOCR oferece uma API simples com mais de 80 modelos de linguagem, retornando caixas, texto e confianças — útil para protótipos e scripts não latinos. Para documentos históricos, Kraken brilha com segmentação de linha de base e ordem de leitura consciente do script; para treinamento flexível no nível da linha, Calamari se baseia na linhagem Ocropy (Ocropy) com reconhecedores (multi-)LSTM+CTC e uma CLI para ajuste fino de modelos personalizados.

Conjuntos de dados e benchmarks

A generalização depende dos dados. Para caligrafia, o Banco de Dados de Caligrafia IAM fornece frases em inglês de diversos escritores para treinamento e avaliação; é um conjunto de referência de longa data para reconhecimento de linha e palavra. Para texto de cena, COCO-Text sobrepôs anotações extensas sobre o MS-COCO, com rótulos para impresso/manuscrito, legível/ilegível, script e transcrições completas (veja também a página original do projeto). O campo também depende muito do pré-treinamento sintético: SynthText in the Wild renderiza texto em fotografias com geometria e iluminação realistas, fornecendo enormes volumes de dados para pré-treinar detectores e reconhecedores (referência código e dados).

As competições sob a égide do Robust Reading do ICDAR mantêm a avaliação fundamentada. As tarefas recentes enfatizam a detecção/leitura de ponta a ponta e incluem a ligação de palavras em frases, com o código oficial relatando precisão/recall/F-score, interseção sobre união (IoU) e métricas de distância de edição no nível do caractere — espelhando o que os praticantes devem rastrear.

Formatos de saída e uso downstream

O OCR raramente termina em texto simples. Arquivos e bibliotecas digitais preferem ALTO XML porque ele codifica o layout físico (blocos/linhas/palavras com coordenadas) juntamente com o conteúdo, e combina bem com o empacotamento METS. O microformato hOCR , por outro lado, incorpora a mesma ideia em HTML/CSS usando classes como ocr_line e ocrx_word, tornando mais fácil exibir, editar и transformar com ferramentas da web. O Tesseract expõe ambos — por exemplo, gerando hOCR ou PDFs pesquisáveis diretamente da CLI (guia de saída de PDF); wrappers de Python como pytesseract adicionam conveniência. Existem conversores para traduzir entre hOCR e ALTO quando os repositórios têm padrões de ingestão fixos — veja esta lista com curadoria de ferramentas de formato de arquivo OCR.

Orientação prática

  • Comece com dados e limpeza. Se suas imagens são fotos de celular ou digitalizações de qualidade mista, invista em limiarização (adaptativa e Otsu) e correção de inclinação (Hough) antes de qualquer ajuste de modelo. Muitas vezes, você ganhará mais com uma receita robusta de pré-processamento do que trocando de reconhecedores.
  • Escolha o detector certo. Para páginas digitalizadas com colunas regulares, um segmentador de página (zonas → linhas) pode ser suficiente; para imagens naturais, detectores de um único tiro como EAST são linhas de base fortes e se conectam a muitos kits de ferramentas (exemplo do OpenCV).
  • Escolha um reconhecedor que corresponda ao seu texto. Para latim impresso, Tesseract (LSTM/OEM) é robusto e rápido; para vários scripts ou protótipos rápidos, EasyOCR é produtivo; para caligrafia ou tipos de letra históricos, considere Kraken ou Calamari e planeje o ajuste fino. Se você precisar de um acoplamento rígido com a compreensão de documentos (extração de chave-valor, VQA), avalie TrOCR (OCR) versus Donut (livre de OCR) em seu esquema — o Donut pode remover uma etapa inteira de integração.
  • Meça o que importa. Para sistemas de ponta a ponta, relate a detecção F-score e o reconhecimento CER/WER (ambos baseados na distância de edição de Levenshtein ; veja CTC); para tarefas com muito layout, acompanhe a IoU/aperto e a distância de edição normalizada no nível do caractere, como nos kits de avaliação do ICDAR RRC .
  • Exporte saídas ricas. Prefira hOCR /ALTO (ou ambos) para manter as coordenadas e a ordem de leitura — vital para destacar resultados de pesquisa, extração de tabela/campo e proveniência. A CLI do Tesseract e o pytesseract tornam isso uma tarefa de uma linha.

Olhando para o futuro

A tendência mais forte é a convergência: detecção, reconhecimento, modelagem de linguagem e até mesmo decodificação específica da tarefa estão se fundindo em pilhas unificadas de Transformer. O pré-treinamento em grandes corpora sintéticos continua sendo um multiplicador de força. Os modelos livres de OCR competirão agressivamente onde quer que o alvo seja saídas estruturadas em vez de transcrições literais. Espere também implantações híbridas: um detector leve mais um reconhecedor no estilo TrOCR para texto longo e um modelo no estilo Donut para formulários e recibos.

Leitura adicional e ferramentas

Tesseract (GitHub) · Documentação do Tesseract · Especificação hOCR · Fundo ALTO · Detector EAST · Detecção de texto do OpenCV · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · Caligrafia IAM · Ferramentas de formato de arquivo OCR · EasyOCR

Perguntas frequentes

O que é OCR?

Reconhecimento óptico de caracteres (OCR) é uma tecnologia usada para converter diferentes tipos de documentos, como documentos de papel digitalizados, arquivos PDF ou imagens capturadas por uma câmera digital, em dados editáveis e pesquisáveis.

Como o OCR funciona?

O OCR digitaliza a imagem ou documento de entrada, decompõe a imagem em caracteres individuais e, em seguida, compara cada caractere com um banco de dados de formas de caracteres usando o reconhecimento de padrões ou recursos.

Quais são as aplicações práticas do OCR?

O OCR é usado em várias indústrias e aplicações, incluindo a digitalização de documentos impressos, aproveitando serviços de texto para fala, automatizando o processo de entrada de dados e ajudando usuários com deficiência visual a interagir com o texto de maneira mais eficaz.

O OCR é sempre 100% preciso?

Apesar de as tecnologias OCR terem melhorado significativamente, elas não são infalíveis. A precisão pode variar dependendo da qualidade do documento original e das características específicas do software OCR usado.

O OCR pode reconhecer a escrita à mão?

Embora o OCR seja projetado principalmente para reconhecer texto impresso, alguns sistemas OCR avançados também podem reconhecer a escrita à mão legível. No entanto, o reconhecimento da escrita à mão é geralmente menos preciso, devido à variabilidade dos estilos de escrita individuais.

O OCR pode processar vários idiomas?

Sim, muitos softwares OCR podem reconhecer vários idiomas. No entanto, você deve garantir que o idioma que você precisa está suportado no software que está usando.

Qual é a diferença entre OCR e ICR?

OCR é a sigla de Optical Character Recognition (Reconhecimento Óptico de Caracteres), que é usado para reconhecer o texto impresso, enquanto o ICR, ou Intelligent Character Recognition (Reconhecimento Inteligente de Caracteres), é uma tecnologia mais avançada utilizada para reconhecer a escrita à mão.

O OCR pode processar todas as fontes e tamanhos de texto?

O OCR é mais eficiente ao processar fontes claras e legíveis e tamanhos de texto padrão. Embora seja capaz de reconhecer variações de fontes e tamanhos, a sua precisão pode diminuir ao processar fontes não convencionais ou tamanhos de texto muito pequenos.

Quais são as limitações da tecnologia OCR?

O OCR pode ter problemas em processar documentos de baixa resolução, fontes complexas, texto de má qualidade de impressão, texto manuscrito ou documentos onde o texto se confunde com o fundo. Além disso, embora o OCR possa reconhecer muitos idiomas, pode não ser capaz de cobrir todos os idiomas de forma perfeita.

O OCR pode escanear texto colorido ou fundo colorido?

Sim, o OCR pode escanear texto e fundos coloridos, mas é mais eficaz com combinações de cores de alto contraste, como texto preto sobre fundo branco. Se o contraste entre a cor do texto e do fundo não for suficiente, a precisão pode diminuir.

O que é o formato PNM?

Portable anymap

O PlayStation 2 (PS2) usa um formato de imagem proprietário otimizado para sua arquitetura de hardware exclusiva. O formato aproveita o Graphics Synthesizer e as Vector Units do PS2 para permitir armazenamento e renderização eficientes de gráficos 2D. As imagens são armazenadas usando diferentes modos de cor, técnicas de compressão e layouts de dados para equilibrar a qualidade visual e o uso da memória.

Os principais modos de cor usados para imagens PS2 são RGBA de 32 bits, RGB de 24 bits, RGB de 16 bits (565 ou 5551) e cor indexada de 4 ou 8 bits com uma CLUT (Color Look-Up Table). RGBA de 32 bits oferece a mais alta qualidade com um canal alfa para transparência, enquanto o indexado de 4 bits sacrifica a qualidade por um tamanho de arquivo menor. Os modos RGB de 16 bits atingem um meio-termo. O modo de cor escolhido impacta o uso da memória e o máximo de detalhes e profundidade de cor possíveis dos gráficos.

Os gráficos PS2 podem opcionalmente usar paletas para modos de cores indexadas. Uma paleta ou CLUT é uma tabela que mapeia valores de índice de 4 ou 8 bits para cores RGB de 16 ou 24 bits. O uso de paletas permite gráficos visualmente mais ricos com uma pegada de memória menor em comparação com os modos de cores diretas, mas com a desvantagem de ser limitado a apenas 16 ou 256 cores únicas por imagem. As paletas são mais adequadas para gráficos mais simples, como sprites 2D, texto e elementos de IU.

Várias técnicas são usadas para compactar dados de imagem PS2 para conservar memória limitada. O mais simples é o Run-Length Encoding (RLE), que substitui sequências repetidas de valores idênticos por uma contagem e o próprio valor. Por exemplo, "AAAAAAABBCCCCCC" seria compactado para "7A2B6C". Este algoritmo sem perdas é rápido e eficaz na compactação de imagens com muitas execuções contíguas da mesma cor.

Métodos de compactação de imagem PS2 mais avançados exploram propriedades do sistema visual humano para descartar informações imperceptíveis. Esses algoritmos com perdas analisam blocos de imagem e descartam seletivamente dados de frequência mais alta e precisão de cor aos quais o olho é menos sensível. O hardware PS2 suporta nativamente uma forma de quantização vetorial e codificação de truncamento de bloco adaptada às suas Vector Units. Ao emparelhar dados de imagem compactados com paletas CLUT, gráficos detalhados podem ser armazenados e renderizados com eficiência.

O pipeline gráfico PS2 é baseado no desenho de triângulos texturizados. As imagens destinadas a serem mapeadas em superfícies 3D são armazenadas como texturas 2D. Para controlar como as texturas são amostradas, filtradas e aplicadas às superfícies, as texturas PS2 incluem mipmaps. Estas são versões pré-calculadas e reduzidas da textura em tamanho real que reduzem artefatos quando uma superfície texturizada é visualizada em ângulos oblíquos ou à distância. Uma única textura PS2 consiste na imagem em tamanho real seguida por uma sequência de mipmaps reduzidos sucessivamente.

Os dados gráficos PS2 são dispostos na memória de maneiras exclusivas para permitir que seu hardware acesse pixels de imagem com eficiência. Os dados de cor podem ser divididos em bitplanes separados ou armazenados em padrões trocados na VRAM. É necessária uma consideração cuidadosa de como os dados são organizados para maximizar o desempenho da renderização. O Graphics Synthesizer é otimizado para renderizar imagens e texturas que seguem essas convenções especializadas de layout de dados.

Além dos próprios dados da imagem, os gráficos PS2 frequentemente dependem de metadados que os acompanham. Para sprites, isso inclui propriedades como posição, escala, rotação e modo de mesclagem alfa. Para texturas 3D, os metadados especificam detalhes como dimensões, modo de cor, compactação, número de níveis de mipmap, regras de empacotamento e fixação de textura e modo de filtragem de textura. Esses metadados instruem o PS2 sobre como processar e aplicar imagens.

Formatos suportados

AAI.aai

Imagem AAI Dune

AI.ai

Adobe Illustrator CS2

AVIF.avif

Formato de arquivo de imagem AV1

BAYER.bayer

Imagem Bayer bruta

BMP.bmp

Imagem bitmap do Microsoft Windows

CIN.cin

Arquivo de imagem Cineon

CLIP.clip

Máscara de clip de imagem

CMYK.cmyk

Amostras brutas de ciano, magenta, amarelo e preto

CUR.cur

Ícone do Microsoft

DCX.dcx

Paintbrush multi-página IBM PC da ZSoft

DDS.dds

Superfície Direta do Microsoft DirectDraw

DPX.dpx

Imagem SMTPE 268M-2003 (DPX 2.0)

DXT1.dxt1

Superfície Direta do Microsoft DirectDraw

EPDF.epdf

Formato Portátil de Documento Encapsulado

EPI.epi

Formato de Intercâmbio PostScript Encapsulado da Adobe

EPS.eps

PostScript Encapsulado da Adobe

EPSF.epsf

PostScript Encapsulado da Adobe

EPSI.epsi

Formato de Intercâmbio PostScript Encapsulado da Adobe

EPT.ept

PostScript Encapsulado com pré-visualização TIFF

EPT2.ept2

PostScript Nível II Encapsulado com pré-visualização TIFF

EXR.exr

Imagem de alto alcance dinâmico (HDR)

FF.ff

Farbfeld

FITS.fits

Sistema de Transporte de Imagem Flexível

GIF.gif

Formato de intercâmbio de gráficos CompuServe

HDR.hdr

Imagem de alta faixa dinâmica

HEIC.heic

Container de imagem de alta eficiência

HRZ.hrz

Televisão de varredura lenta

ICO.ico

Ícone Microsoft

ICON.icon

Ícone Microsoft

J2C.j2c

Fluxo JPEG-2000

J2K.j2k

Fluxo JPEG-2000

JNG.jng

Gráficos de Rede JPEG

JP2.jp2

Sintaxe de Formato de Arquivo JPEG-2000

JPE.jpe

Formato JFIF do Grupo JPEG de Especialistas Fotográficos

JPEG.jpeg

Formato JFIF do Grupo JPEG de Especialistas Fotográficos

JPG.jpg

Formato JFIF do Grupo JPEG de Especialistas Fotográficos

JPM.jpm

Sintaxe de Formato de Arquivo JPEG-2000

JPS.jps

Formato JPS do Grupo JPEG de Especialistas Fotográficos

JPT.jpt

Sintaxe de Formato de Arquivo JPEG-2000

JXL.jxl

Imagem JPEG XL

MAP.map

Banco de dados de imagem contínua multi-resolução (MrSID)

MAT.mat

Formato de imagem MATLAB nível 5

PAL.pal

Palm pixmap

PALM.palm

Palm pixmap

PAM.pam

Formato bitmap 2D comum

PBM.pbm

Formato de bitmap portátil (preto e branco)

PCD.pcd

Photo CD

PCT.pct

Apple Macintosh QuickDraw/PICT

PCX.pcx

ZSoft IBM PC Paintbrush

PDB.pdb

Formato Palm Database ImageViewer

PDF.pdf

Formato de Documento Portátil

PDFA.pdfa

Formato de Arquivo de Documento Portátil

PFM.pfm

Formato flutuante portátil

PGM.pgm

Formato portable graymap (escala de cinza)

PGX.pgx

Formato JPEG 2000 não compactado

PICT.pict

Apple Macintosh QuickDraw/PICT

PJPEG.pjpeg

Formato JFIF do Grupo JPEG de Especialistas Fotográficos

PNG.png

Portable Network Graphics

PNG00.png00

PNG herdando profundidade de bits, tipo de cor da imagem original

PNG24.png24

24 bits RGB (zlib 1.2.11) opaco ou transparente binário

PNG32.png32

32 bits RGBA opaco ou transparente binário

PNG48.png48

48 bits RGB opaco ou transparente binário

PNG64.png64

64 bits RGBA opaco ou transparente binário

PNG8.png8

8 bits indexado opaco ou transparente binário

PNM.pnm

Portable anymap

PPM.ppm

Formato pixmap portátil (cor)

PS.ps

Arquivo PostScript da Adobe

PSB.psb

Formato de Documento Grande da Adobe

PSD.psd

Bitmap do Photoshop da Adobe

RGB.rgb

Amostras brutas de vermelho, verde e azul

RGBA.rgba

Amostras brutas de vermelho, verde, azul e alfa

RGBO.rgbo

Amostras brutas de vermelho, verde, azul e opacidade

SIX.six

Formato Gráfico SIXEL DEC

SUN.sun

Sun Rasterfile

SVG.svg

Gráficos Vetoriais Escaláveis

TIFF.tiff

Formato de Arquivo de Imagem Etiquetada

VDA.vda

Imagem Truevision Targa

VIPS.vips

Imagem VIPS

WBMP.wbmp

Imagem sem fio Bitmap (nível 0)

WEBP.webp

Formato de imagem WebP

YUV.yuv

CCIR 601 4:1:1 ou 4:2:2

Perguntas frequentes

Como isso funciona?

Este conversor é executado inteiramente no seu navegador. Ao selecionar um arquivo, ele é carregado na memória e convertido para o formato selecionado. Você pode baixar o arquivo convertido.

Quanto tempo leva para converter um arquivo?

As conversões começam instantaneamente e a maioria dos arquivos são convertidos em menos de um segundo. Arquivos maiores podem levar mais tempo.

O que acontece com meus arquivos?

Seus arquivos nunca são enviados para nossos servidores. Eles são convertidos no seu navegador e o arquivo convertido é baixado. Nunca vemos seus arquivos.

Quais tipos de arquivo posso converter?

Suportamos a conversão entre todos os formatos de imagem, incluindo JPEG, PNG, GIF, WebP, SVG, BMP, TIFF e muito mais.

Quanto isso custa?

Este conversor é completamente gratuito e sempre será gratuito. Como ele é executado no seu navegador, não precisamos pagar por servidores, então não precisamos cobrar de você.

Posso converter vários arquivos de uma vez?

Sim! Você pode converter quantos arquivos quiser de uma vez. Basta selecionar vários arquivos ao adicioná-los.