Ir para o conteúdo do rodapé
FERRAMENTAS DE OCR
Como usar o Tesseract OCR for .NET no Windows

Tesseract OCR no Windows (Tutorial com Exemplo de Código)

O que é Tesseract OCR?

Tesseract é um mecanismo de reconhecimento óptico de caracteres que pode ser usado em uma variedade de sistemas operacionais. É um software livre, lançado sob a Licença Apache. Neste guia, mostrarei os passos que segui para instalar o Tesseract em minha máquina com Windows 10. A versão principal 5 é a versão estável atual e começou com o lançamento 5.0.0 em 30 de novembro de 2021.


Passo 1: Instale o Tesseract OCR no Windows 10 usando Arquivo .exe:

Para instalar os dados de idioma: sudo port install tesseract -<langcode> Uma lista de códigos de idioma pode ser encontrada na página do MacPorts Tesseract Homebrew. O primeiro passo para instalar o Tesseract OCR para Windows é baixar o instalador .exe que corresponde ao sistema operacional de sua máquina.

Passo 2: Configurar Instalação

Em seguida, precisaremos configurar a instalação do Tesseract. Se você se sentir confiante e só quiser executar o Tesseract OCR para Windows com o idioma padrão configurado para inglês, passar pelas telas de instalação com todas as opções padrão selecionadas deve funcionar.

Idioma do Instalador

Este é apenas o idioma para as caixas de diálogo e informações de ajuda. Se quisermos, podemos executar o Tesseract OCR para Windows em vários idiomas:

Tesseract Ocr Windows 1 related to Idioma do Instalador

Idioma do instalador para o Tesseract OCR para Windows

Configuração do Tesseract OCR

A tela de configuração recomenda que todos os outros aplicativos sejam fechados antes de continuar com a instalação.

Tesseract Ocr Windows 2 related to Configuração do Tesseract OCR

A tela de instalação do Tesseract OCR para Windows.

Escolher Local de Instalação

Em seguida, escolheremos o local de instalação. Antes de prosseguir para a próxima etapa, certifique-se de copiar o local de instalação para um arquivo .txt. Precisaremos adicionar o local de instalação às variáveis de ambiente de nossa máquina uma vez que a instalação estiver completa.

Tesseract Ocr Windows 3 related to Escolher Local de Instalação

Escolha o local de instalação.

Escolher Componentes

Por padrão, ScrollView, Ferramentas de Treinamento, Criação de Atalhos e Dados de Idioma são todos selecionados. A menos que você tenha um motivo específico para não instalar estes, manteremos todos estes selecionados.

Tesseract Ocr Windows 4 related to Escolher Componentes

Componentes de instalação padrão do Tesseract OCR para Windows.

Se rolarmos para baixo e expandirmos os 'Dados de script adicionais', veremos que temos a opção de baixar e instalar dados de script adicionais. Isso pode ser útil para melhorar a precisão da extração de texto de certos idiomas scriptados. Depende de você se deseja instalar esses dados.

Tesseract Ocr Windows 5 related to Escolher Componentes

Componentes opcionais de instalação de script.

Escolher a Pasta do Menu Iniciar

Na última etapa da instalação, seremos solicitados a escolher a pasta do menu iniciar para os atalhos do Tesseract OCR para Windows. Deixei o meu configurado com o nome padrão: 'Tesseract-OCR'.

Tesseract Ocr Windows 6 related to Escolher a Pasta do Menu Iniciar

Escolha a pasta do menu iniciar para os atalhos do Tesseract OCR para Windows.

Após clicarmos em instalar, o Tesseract OCR para Windows começará a instalação. Nosso próximo passo é adicionar o caminho de instalação às variáveis de ambiente de nossa máquina.

Passo 3: Adicionar Caminho de Instalação às Variáveis de Ambiente

Painel de Controle

Para adicionar o local de instalação às nossas variáveis de ambiente, vá ao menu Iniciar e procure por 'variáveis de ambiente'. Você deve ver um resultado para editar as variáveis de ambiente do sistema. Se não aparecer, você sempre pode usar as etapas a seguir: Menu Iniciar > Painel de Controle > Editar as variáveis de ambiente do sistema.

Tesseract Ocr Windows 7 related to Painel de Controle

Procurando por 'variáveis de ambiente'

Propriedades do Sistema

Ao se deparar com a caixa de diálogo 'Propriedades do Sistema', certifique-se de que a guia Avançado esteja selecionada e clique no botão Variáveis de Ambiente no canto inferior direito da tela.

Tesseract Ocr Windows 8 related to Propriedades do Sistema

Variáveis ​​de ambiente

Em variáveis do sistema, clique no botão Editar.

Tesseract Ocr Windows 9 related to Variáveis ​​de ambiente

Quando se deparar com a tela "Editar variável de ambiente", clique no botão Novo e cole o caminho de instalação do Tesseract OCR que copiamos anteriormente na Etapa 2. Depois de fazer isso, clique no botão 'OK'.

Adicionar Diretório de Instalação do Tesseract OCR para Windows às Variáveis de Ambiente

Tesseract Ocr Windows 10 related to Adicionar Diretório de Instalação do Tesseract OCR para Windows às Variáveis de...

É isso! Agora que executamos o instalador .exe e adicionamos a localização de instalação do Tesseract OCR para Windows às nossas variáveis de ambiente, podemos testar se nossa instalação está funcionando executando o Tesseract em uma imagem de teste.

Etapa 4: Execute o Tesseract OCR para Windows em uma Imagem de Teste

Para testar se o Tesseract OCR para Windows foi instalado com sucesso, abra o prompt de comando na sua máquina e execute o comando Tesseract. Você deve ver uma saída com uma breve explicação das opções de uso do Tesseract.

Tesseract Ocr Windows 11 related to Etapa 4: Execute o Tesseract OCR para Windows em uma Imagem de Teste

Verificando a instalação bem-sucedida do Tesseract OCR para Windows

Parabéns! Você instalou com sucesso o Tesseract OCR para Windows na sua máquina.


Vantagens de usar o IronOCR para fazer OCR:

IronOCR provides Tesseract OCR on Mac, Windows, Linux, Azure and Docker for:

  • .NET Framework 4.0 +
  • .NET Standard 2.0 +
  • .NET Core 2.0 +
  • .NET 5
  • Mono para macOS e Linux
  • Xamarin para macOS

IronOCR lê texto, códigos de barras e códigos QR de todos os principais formatos de imagem e PDF usando o mais recente motor Tesseract 5. Esta biblioteca adiciona funcionalidade OCR a aplicativos Desktop, Console e Web em minutos. Ele suporta mais de 125 idiomas internacionais. Licenses start from $799.

Etapa 1: Instale a versão mais recente do IronOCR

Instalar DLL

Download the IronOcr DLL directly to your machine.

Instalar NuGet

Alternativamente, você pode instalá-lo através do NuGet com o seguinte comando:

Install-Package IronOcr

Passo 2: Aplique sua chave de licença

Defina sua chave de licença do IronOCR usando o código

Adicione este código ao início do seu aplicativo antes de usar o IronOCR.

IronOcr.Installation.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01";
IronOcr.Installation.LicenseKey = "IRONOCR-MYLICENSE-KEY-1EF01";
$vbLabelText   $csharpLabel

Etapa 3: Teste sua Chave

Teste se sua chave foi instalada corretamente.

bool isValidLicense = IronOcr.License.IsValidLicense("IRONOCR-MYLICENSE-KEY-1EF01");
bool isValidLicense = IronOcr.License.IsValidLicense("IRONOCR-MYLICENSE-KEY-1EF01");
$vbLabelText   $csharpLabel

Comece com o projeto

// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
$vbLabelText   $csharpLabel

Como Usar o Tesseract OCR em C# for .NET?

  • Instale Google Tesseract e IronOCR for .NET no Visual Studio
  • Verifique as compilações mais recentes em C#
  • Revise a precisão e a compatibilidade de imagem
  • Teste o desempenho e a função da API
  • Considere o Suporte a Múltiplos Idiomas

Code Example for .NET OCR Usage — Extract Text from Images in C#

Utilize o Gerenciador de Pacotes NuGet para instalar o pacote NuGet IronOCR em sua solução do Visual Studio.

// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
// PM > Install-Package IronOcr
// using IronOcr;

var Ocr = new IronTesseract();

// Set the recognition language to English
Ocr.Language = OcrLanguage.English;

using (var Input = new OcrInput())
{
    // Add an example image to the OCR input
    Input.Add(@"img\example.tiff");

    // Optional: Clean the image before processing
    // Input.DeNoise();
    // Input.Deskew();

    // Read the text from the image
    IronOcr.OcrResult result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);

    // Explore the OcrResult using IntelliSense
}
$vbLabelText   $csharpLabel

IronOCR Tesseract for C#

Com o IronOCR, toda a instalação do Tesseract acontece inteiramente usando o Gerenciador de Pacotes NuGet.

Install-Package IronOcr

API Tesseract 5 no IronOCR Tesseract

Até o momento, IronTesseract é a única implementação conhecida do Tesseract 5 for .NET Framework ou Core.

// using IronOcr;

var Ocr = new IronTesseract(); // nothing to configure

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
// using IronOcr;

var Ocr = new IronTesseract(); // nothing to configure

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
$vbLabelText   $csharpLabel

API Tesseract 4 no IronOCR Tesseract

// using IronOcr;

var Ocr = new IronTesseract();

// Specify the version of Tesseract
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract4;

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
// using IronOcr;

var Ocr = new IronTesseract();

// Specify the version of Tesseract
Ocr.Configuration.TesseractVersion = TesseractVersion.Tesseract4;

using (var Input = new OcrInput(@"images\image.png"))
{
    var result = Ocr.Read(Input);

    // Output the recognized text
    Console.WriteLine(result.Text);
}
$vbLabelText   $csharpLabel

Por que o IronOCR é Melhor que o Tesseract:

PRECISÃO

TESSERACT:

Se o Tesseract encontrar uma imagem que esteja rotacionada, inclinada, com baixa DPI, digitalizada ou com ruído de fundo, torna-se quase impossível para o Tesseract obter dados dessa imagem. Além disso, o Tesseract também levará muito tempo para processar esse documento antes de fornecer informações sem sentido.

IRONOCR:

IronOCR tira essa dor de cabeça. Os usuários frequentemente alcançam 99,8-100% de precisão com configuração mínima.

COMPATIBILIDADE DE IMAGEM

TESSERACT:

Aceita apenas o formato de imagem Leptonica PIX, que é um objeto IntPtr C++ em C#. Os objetos PIX não são gerenciados pela memória — e o não manuseio cuidadoso deles em C# resulta em vazamentos de memória.

IRONOCR:

As imagens são gerenciadas pela memória. PDF & Tiff suportados. System.Drawing, Stream, e Byte Array são incluídos para cada formato de arquivo.

Suporte amplo a imagens:

  • Documentos PDF
  • Páginas PDF
  • Arquivos TIFF multi-quadro
  • JPEG & JPEG2000
  • GIF
  • PNG
  • System.Drawing.Image
  • Dados de imagem binários (byte [])
  • E muitos mais...

DESEMPENHO

TESSERACT:

O Google Tesseract pode oferecer resultados rápidos e precisos se devidamente ajustado e as imagens de entrada forem pré-processadas usando Photoshop ou ImageMagick.

IRONOCR:

O IronOcr .NET Tesseract DLL funciona com precisão e rapidez para a maioria das imagens diretamente. Implementamos multithreading para utilizar os processadores multicore que a maioria das máquinas agora utiliza. Mesmo imagens de baixa resolução geralmente funcionam com um alto grau de precisão no seu programa. Photoshop não é necessário.

API

TESSERACT:

Temos duas escolhas gratuitas:

  • Trabalhar com camadas de Interop — muitas encontradas no GitHub estão desatualizadas, possuem tickets não resolvidos, vazamentos de memória, e avisos de Console. Pode não suportar .NET Core ou Standard.
  • Trabalhar com a linha de comando EXE — difícil de implantar e constantemente interrompido por scanners de vírus e políticas de segurança.

IRONOCR:

Uma biblioteca .NET gerenciada e testada para Tesseract chamada IronTesseract.

Totalmente documentada com suporte ao IntelliSense.

IDIOMA

TESSERACT:

Suporta apenas 100 idiomas.

IRONOCR:

Suporta mais de 125 idiomas.


Conclusão

O Tesseract é um excelente recurso para desenvolvedores C++, mas não é uma biblioteca OCR completa for .NET. Imagens escaneadas ou fotografadas precisam ser processadas para estarem ortogonais, padronizadas, em alta resolução, e livres de ruído digital antes que o Tesseract possa trabalhar precisamente com elas.

Em contraste, o IronOCR consegue fazer isso e muito mais, com apenas uma única linha de código. It is true that IronOCR uses Tesseract for its internal OCR engine, a very finely-tuned Tesseract, built for C#, with a lot of performance improvements and features added as standard.

Kannaopat Udonpant
Engenheiro de Software
Antes de se tornar Engenheiro de Software, Kannapat concluiu um doutorado em Recursos Ambientais pela Universidade de Hokkaido, no Japão. Durante o doutorado, Kannapat também integrou o Laboratório de Robótica Veicular, que faz parte do Departamento de Engenharia de Bioprodução. Em 2022, ele utilizou suas habilidades ...
Leia mais

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me