Chinese OCR in C# and .NET

This article was translated from English: Does it need improvement?
Translated
View the article in English

Outras versões deste documento:

*简体中文版

O IronOCR é um componente de software C# que permite aos programadores .NET ler texto de imagens e documentos PDF em 126 idiomas, incluindo o chinês. O pacote de idioma chinês contém caracteres chineses simplificados e tradicionais.

Trata-se de uma versão avançada do Tesseract, criada exclusivamente para desenvolvedores .NET , e que supera regularmente outros mecanismos do Tesseract tanto em velocidade quanto em precisão. A biblioteca permite o reconhecimento de imagens e documentos de diferentes formatos em vários idiomas, incluindo o chinês. Suporta mais de 125 idiomas e oferece um alto nível de precisão de reconhecimento em comparação com a concorrência. A API do IronOCR foi projetada com foco em extensibilidade e personalização. Você pode ajudar o IronOCR a alcançar alto desempenho e precisão adicionando seus dados de ajuste ou recursos ao rastreador. O IronOCR utiliza diversas técnicas de reconhecimento óptico de caracteres. Podemos usá-lo em um PC com Windows, Linux, macOS e outras plataformas populares.

Conteúdo do IronOCR

Este pacote contém 352 idiomas OCR for .NET:

  • Chinês Simplificado
  • Chinês Simplificado Melhor
  • ChinêsSimplificadoRápido
  • Chinês Simplificado Vertical
  • ChinêsSimplificadoVerticalMelhor
  • ChinêsSimplificadoVerticalRápido
  • Tradicional Chinês
  • Tradicional Chinês Melhor
  • Tradicional Chinês Rápido
  • Tradicional Chinês Vertical
  • Tradicional Chinês Vertical Melhor
  • Tradicional Chinês Vertical Rápido

Baixar

Podemos baixar o Pacote de Idioma Chinês [中文 (Zhōngwén)] nos seguintes links:

Utilizando o IronOCR para o idioma chinês

Criar ou abrir um projeto C

Para começar a usar o IronOCR, precisamos criar um projeto C# .NET . Estamos utilizando o Visual Studio 2022 para essa finalidade. Você pode escolher uma versão de acordo com suas necessidades. Recomenda-se a versão mais recente do Visual Studio para uma experiência mais tranquila. Criaremos uma interface gráfica para selecionar a imagem. Também podemos usar o IronOCR em um aplicativo de console, fornecendo o caminho direto da imagem. Siga os passos abaixo para criar um projeto C# no Visual Studio 2022:

  • Abra o Visual Studio 2022.
  • Clique no botão "Criar um novo projeto".
Chinese Ocr 1 related to Criar ou abrir um projeto C

Digite "Windows" na barra de pesquisa, selecione o aplicativo "Windows Forms"* nos resultados da pesquisa e clique no botão "Avançar".

Chinese Ocr 2 related to Criar ou abrir um projeto C
  • Dê um nome ao projeto. Estou atribuindo o nome "ChineseOCR" ao projeto. Após o nome, clique no botão "Próximo".
Chinese Ocr 3 related to Criar ou abrir um projeto C

Selecione o .NET Framework* na próxima tela. Selecione o .NET Framework de acordo com as necessidades do seu projeto. Para este tutorial, selecionamos a versão .NET 5.0.

Chinese Ocr 4 related to Criar ou abrir um projeto C
  • Após selecionar, clique no botão "Criar". Isso criará facilmente o projeto C# Windows Form no Visual Studio.

O projeto foi criado e agora está pronto para uso na biblioteca IronOCR . Também podemos usar o projeto C# já existente. Abra o projeto e inicie a instalação da biblioteca IronOCR . A seção a seguir explorará os métodos para instalar a biblioteca IronOCR em projetos C#.

Instalação

Usando o Gerenciador de Pacotes NuGet

Para instalar a biblioteca IronOCR com o Gerenciador de Pacotes NuGet , precisamos abrir a interface do Gerenciador de Pacotes NuGet . Siga os passos abaixo para instalar a biblioteca IronOCR :

  • Clique em "Ferramentas" no menu principal, no menu suspenso, passe o cursor sobre "Gerenciador de Pacotes NuGet " e selecione "Gerenciar o Gerenciador de Pacotes NuGet para a Solução".
Chinese Ocr 5 related to Usando o Gerenciador de Pacotes NuGet
  • Isso abrirá a interface do Gerenciador de Pacotes NuGet . Acesse a aba de navegação e pesquise por IronOCR Chinês. Selecione o pacote correto nos resultados da pesquisa e clique no botão "Instalar" para instalá-lo.
Chinese Ocr 6 related to Usando o Gerenciador de Pacotes NuGet
  • A instalação da biblioteca será iniciada. Após a instalação, você poderá usar a biblioteca IronOCR em seu projeto.

Utilizando o Console do Gerenciador de Pacotes

Usar um console é sempre uma opção fácil. Também podemos instalar a biblioteca IronOCR usando o Console do Gerenciador de Pacotes. Siga os passos indicados para instalar a biblioteca IronOCR :

  • Abra o Console do Gerenciador de Pacotes no Visual Studio. Geralmente, ele está localizado na parte inferior do Visual Studio.
  • Digite o seguinte comando no console:

    Install-Package IronOcr.Languages.Chinese
  • Você poderá acompanhar o progresso da instalação da biblioteca no console. A biblioteca será instalada automaticamente. Após a instalação, nosso projeto estará pronto para a biblioteca IronOCR .

Exemplo de código: OCR para o idioma chinês

Agora, é hora de escrever o código para implementar a biblioteca IronOCR para o idioma chinês. Primeiro, precisamos desenvolver a interface para selecionar o arquivo de imagem. Vejamos como podemos fazer isso.

Desenvolvendo o Frontend

Usaremos os elementos da "Caixa de Ferramentas" para projetar a interface. Criaremos um botão, uma caixa de imagem, uma caixa de texto formatado e dois rótulos. Vamos arrastar e soltar esses elementos da Caixa de Ferramentas e colocá-los no formulário do Windows. Gerenciaremos esses elementos com estilo.

O botão será usado para selecionar o arquivo de imagem do computador. O Picture Box carregará o arquivo de imagem selecionado e o Rich Textbox exibirá o texto resultante. Você pode ajustar o tamanho de cada elemento de acordo com suas necessidades. O design final da interface ficará assim:

Chinese Ocr 7 related to Desenvolvendo o Frontend

Esta janela será exibida quando você executar o projeto. Definimos o alinhamento das janelas para que se formem no centro da tela. Então, esta tela aparecerá no centro.

Nosso frontend está pronto. Em seguida, é hora de adicionar a funcionalidade de backend do botão.

Código de backend para IronOCR

Primeiro, precisamos importar o namespace IronOCR para usá-lo em nosso código. Escreva a seguinte linha no início do arquivo:

using IronOCR;
using IronOCR;
$vbLabelText   $csharpLabel

Usaremos o botão "Selecionar imagem" para selecionar a imagem e carregá-la na Caixa de Imagens. O IronOCR processará a imagem do texto em chinês simplificado e exibirá o texto resultante na caixa de texto formatado. Vamos adicionar a funcionalidade do botão clicando duas vezes nele. Escreva as seguintes linhas de código para adicionar a funcionalidade descrita:

private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
$vbLabelText   $csharpLabel

Quando o usuário clicar no botão, uma caixa de diálogo aparecerá para selecionar a imagem. Quando o usuário selecionar a imagem, ela será carregada automaticamente na caixa de imagens. Usamos a função Bitmap() para imprimir imagens na caixa de imagem. Em seguida, o IronOCR converterá as imagens em texto chinês. Nós configuramos o OCR. Idioma para chinês tradicional: para reconhecer texto em chinês tradicional. Ocr. A função de leitura lerá o processo e armazenará o resultado do OCR na variável Resultado. Se precisar salvar o texto em formato PDF, texto simples ou HTML, você pode usar a função Salvar como para salvar o arquivo no formato de saída desejado — o IronOCR suporta diversos formatos de saída.

Execute o projeto

Agora é hora de executar o projeto. Clique no botão Executar no Visual Studio. Veremos essa tela em nosso monitor.

Chinese Ocr 8 related to Execute o projeto

Clique no botão "Selecionar imagem". Isso abrirá a caixa de diálogo Selecionar arquivos. Selecione um arquivo de imagem e pressione Enter.

Chinese Ocr 9 related to Execute o projeto

A imagem será carregada na caixa de imagem, digitalizada automaticamente e o resultado será exibido na caixa de texto.

Chinese Ocr 10 related to Execute o projeto

Este é o resultado da imagem que selecionamos. O IronOCR também suporta a leitura e digitalização de arquivos PDF. Podemos usar o formato editável de arquivos PDF para digitalizar e reconhecer texto usando o IronOCR. Isso também pode ser feito em diferentes idiomas. O IronOCR pode transformar um documento PDF existente em um PDF pesquisável. O IronOCR possui diversos filtros de imagem para tornar as imagens mais nítidas e fáceis de entender. Aqui estão os filtros:

  • Entrada.Binarizar()
  • Entrada.Contraste()
  • Input.Deskew()
  • Input.DeNoise()
  • Entrada.Dilatar()
  • Input.EnhanceResolution(300)

Todas essas funções aumentam a visibilidade dos caracteres. O IronOCR utiliza essas funções para limpar e tornar um PDF pesquisável. Vejamos como isso pode ser feito:

using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
$vbLabelText   $csharpLabel

Licenciamento

O IronOCR é gratuito para desenvolvimento. Você pode usar todas as suas funcionalidades gratuitamente. O IronOCR também oferece um período de teste gratuito para produção, sem necessidade de pagamento. A Iron Software também oferece atualmente uma promoção popular: um pacote com cinco softwares pelo preço de apenas dois. Basta pagar a taxa de dois softwares uma única vez e você terá acesso aos cinco produtos, incluindo o IronPDF e o IronXL. Você pode encontrar mais informações sobre licenciamento neste link .