Ir para o conteúdo do rodapé
UTILIZANDO O IRONOCR

Como ler documentos de identidade usando OCR em C#

A tecnologia de Reconhecimento Óptico de Caracteres (OCR) tornou-se uma ferramenta inestimável para automatizar a extração de texto de imagens, permitindo uma recuperação e análise de dados eficiente e evitando erros humanos. Esta tecnologia pode ser usada para ler carteiras de motorista, passaportes, documentos oficiais de instituições, carteiras de identidade, cartões de permissão de residência e documentos de viagem em vários idiomas e de diferentes países até a data de vencimento exata, nacionalidade, data de nascimento, etc. Todos os dados extraídos podem ser alimentados a produtos de software de aprendizado de máquina e inteligência artificial.

Neste artigo, exploraremos como aproveitar o IronOCR, uma poderosa biblioteca OCR em C# da Iron Software, para ler e extrair informações de documentos de identidade. IronOCR oferece uma solução simples e flexível de OCR na forma de APIs para tarefas de OCR, tornando-se uma escolha excelente para desenvolvedores que buscam integrar capacidades de software OCR em suas aplicações.

IronOCR permite que computadores reconheçam e extraiam texto de imagens, escaneiem documentos existentes ou qualquer outra representação visual de texto. Para extrair dados, envolve uma série de processos complexos que imitam a forma como os humanos percebem e interpretam visualmente o texto. Este processo envolve Pré-processamento de Imagem, Detecção de Texto, Segmentação de Caracteres, Extração de Recursos, Reconhecimento de Caracteres e Pós-processamento para corrigir erros.

Como Ler Documentos de Identidade Usando OCR em C#

  1. Crie um novo projeto C# no Visual Studio
  2. Instale a biblioteca IronOCR .NET e adicione ao seu projeto.
  3. Leia as imagens de documentos de identidade usando a biblioteca IronOCR.
  4. Leia os documentos de identidade a partir de PDFs.

IronOCR, criado e mantido pela Iron Software, serve como uma poderosa biblioteca para engenheiros de software C#, facilitando OCR, Digitalização de Código de Barras e Extração de Texto em projetos .NET.

Principais Recursos do IronOCR

Versatilidade de Leitura de Texto

Capaz de ler dados relevantes de vários formatos, incluindo imagens (JPEG, PNG, GIFF, TIFF, BMP), Streams e PDFs.

Melhoria da Imagem

Corrige digitalizações e fotos de baixa qualidade através de uma série de filtros como Desinclinar, Reduzir Ruído, Binarizar, Melhorar Resolução, Dilatar e mais.

Reconhecimento de Código de Barras

Suporta a leitura de códigos de barras de uma ampla gama de formatos, abrangendo mais de 20 tipos de códigos de barras, com reconhecimento adicional de código QR.

Integração de Tesseract OCR

Utiliza a versão mais recente do Tesseract OCR, ajustada para desempenho ideal na extração de texto de imagens.

Opções de Saída Flexíveis

Permite a exportação de PDFs pesquisáveis, HTML e conteúdo de texto a partir de arquivos de imagem, oferecendo flexibilidade na gestão das informações extraídas.

Agora, vamos nos aprofundar no desenvolvimento de uma aplicação de demonstração que utiliza o IronOCR para ler documentos de identidade.

Pré-requisitos

  1. Visual Studio: Certifique-se de que você tenha o Visual Studio ou qualquer outro ambiente de desenvolvimento C# instalado.
  2. NuGet Package Manager: Certifique-se de que você pode usar o NuGet para gerenciar pacotes em seu projeto.

Passo 1: Crie um Novo Projeto C# no Visual Studio

Comece criando uma nova aplicação console C# no Visual Studio, ou alternativamente, utilize um projeto existente. Selecione "Adicionar Novo Projeto" no Menu, em seguida, selecione aplicação console nos templates abaixo.

Como Ler Documentos de Identidade Usando OCR em C#: Figura 1

Forneça um nome e localização para o projeto nas janelas abaixo.

Como Ler Documentos de Identidade Usando OCR em C#: Figura 2

Selecione a versão .NET necessária.

Como Ler Documentos de Identidade Usando OCR em C#: Figura 3

Clique no botão Criar para criar o novo projeto.

Passo 2: Instale a biblioteca IronOCR e adicione-a ao seu projeto.

IronOCR pode ser encontrada no gerenciador de pacotes NuGet e pode ser instalada usando o console do gerenciador de pacotes com o seguinte comando:

Install-Package IronOcr

IronOCR também pode ser instalado usando o Visual Studio. Abra o Gerenciador de Pacotes NuGet, pesquise por IronOCR como abaixo e clique em instalar.

Como Ler Documentos de Identidade Usando OCR em C#: Figura 5

Uma vez instalado, o aplicativo está pronto para utilizar o IronOCR para ler qualquer documento de identidade para extração de dados e verificação de identidade, reduzindo o trabalho manual de entrada de dados.

Passo 3: Leia Imagens de Documentos de Identidade usando a biblioteca IronOCR

Usar OCR para processar documentos de identificação envolve muitas etapas, que estão detalhadas abaixo.

Pré-processamento de Imagem

O processamento de documentos de identificação por OCR começa com a obtenção de uma imagem contendo texto. Essa imagem pode ser digitalizações de documentos de identidade, uma fotografia de carteiras de identidade ou qualquer outra representação visual de texto. As etapas de pré-processamento de carteiras de identidade podem incluir redimensionamento, redução de ruído e melhoria para melhorar a qualidade e a clareza da imagem.

Detecção de Texto

Algoritmos OCR precisam localizar as áreas de dados específicas dentro da imagem onde o texto está presente. Esta etapa envolve identificar regiões de texto ou caixas delimitadoras.

Segmentação de Caracteres

Uma vez que as regiões de texto ou campos de dados são identificados, a imagem é analisada mais profundamente para segmentar caracteres individuais. Esta etapa é crucial para idiomas que utilizam caracteres distintos, como o inglês ou o chinês.

Extração de Características

Algoritmos de OCR analisam os caracteres segmentados para extrair características que ajudam a diferenciar entre caracteres diferentes. Essas características podem incluir padrões de traços, forma e relações espaciais entre elementos.

Reconhecimento de Caracteres

Com base nas características extraídas, os algoritmos de OCR classificam cada caractere segmentado e atribuem uma representação textual correspondente. Modelos de aprendizado de máquina, como redes neurais, são frequentemente empregados nesta etapa.

Pós-processamento

Os caracteres reconhecidos podem passar por pós-processamento para corrigir erros ou aumentar a precisão. Esta etapa pode envolver correções baseadas em dicionários, análise de contexto ou modelagem de linguagem.

A biblioteca IronOCR cuida de todas as etapas acima e nos permite realizar OCR usando apenas algumas linhas de código, economizando tarefas tediosas e demoradas.

using IronOcr;

class Program
{
    public static void Main()
    {
        // Configure IronTesseract with language and other settings
        var ocrTesseract = new IronTesseract()
        {
            Language = OcrLanguage.EnglishBest,
            Configuration = new TesseractConfiguration()
            {
                ReadBarCodes = false, // Disable reading of barcodes
                BlackListCharacters = "`ë|^", // Blacklist specific characters
                PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd, // Set page segmentation mode
            }
        };

        // Define the OCR input image
        using var ocrInput = new OcrInput("id1.png");

        // Perform OCR on the input image
        var ocrResult = ocrTesseract.Read(ocrInput);

        // Display the extracted text
        Console.WriteLine(ocrResult.Text);
    }
}
using IronOcr;

class Program
{
    public static void Main()
    {
        // Configure IronTesseract with language and other settings
        var ocrTesseract = new IronTesseract()
        {
            Language = OcrLanguage.EnglishBest,
            Configuration = new TesseractConfiguration()
            {
                ReadBarCodes = false, // Disable reading of barcodes
                BlackListCharacters = "`ë|^", // Blacklist specific characters
                PageSegmentationMode = TesseractPageSegmentationMode.AutoOsd, // Set page segmentation mode
            }
        };

        // Define the OCR input image
        using var ocrInput = new OcrInput("id1.png");

        // Perform OCR on the input image
        var ocrResult = ocrTesseract.Read(ocrInput);

        // Display the extracted text
        Console.WriteLine(ocrResult.Text);
    }
}
$vbLabelText   $csharpLabel

Imagem de entrada

Abaixo está uma imagem de amostra usada como entrada para o programa.

Como Ler Documentos de Identidade Usando OCR em C#: Figura 6

Saída

Como Ler Documentos de Identidade Usando OCR em C#: Figura 7

Explicação do código

O código acima usa a biblioteca IronOCR para ler todos os campos de texto do documento de identidade. Usamos a classe IronTesseract da biblioteca IronOCR e configuramos para usar o idioma inglês e alguns caracteres em lista negra. Em seguida, declaramos a entrada de OCR usando a classe OcrInput e lemos o texto da imagem. Os campos de texto extraídos podem ser vistos na saída do console.

Etapa 4: Ler Documentos de Identidade de PDFs.

Também podemos ler de documentos PDF. Para isso, podemos usar a biblioteca IronPDF da IronSoftware. Primeiro, instale a biblioteca como abaixo:

Install-Package IronOcr
using IronOcr;
using IronPdf;

class Program
{
    public static void Main()
    {
        // Load the PDF document
        var pdfReader = new PdfDocument("id1.pdf");

        // Initialize IronTesseract for OCR
        var ocrTesseract = new IronTesseract();

        // Create OCR input from the PDF stream
        using var ocrInput = new OcrInput();
        ocrInput.AddPdf(pdfReader.Stream);

        // Perform OCR on the PDF input
        var ocrResult = ocrTesseract.Read(ocrInput);

        // Display the extracted text
        Console.WriteLine(ocrResult.Text);
    }
}
using IronOcr;
using IronPdf;

class Program
{
    public static void Main()
    {
        // Load the PDF document
        var pdfReader = new PdfDocument("id1.pdf");

        // Initialize IronTesseract for OCR
        var ocrTesseract = new IronTesseract();

        // Create OCR input from the PDF stream
        using var ocrInput = new OcrInput();
        ocrInput.AddPdf(pdfReader.Stream);

        // Perform OCR on the PDF input
        var ocrResult = ocrTesseract.Read(ocrInput);

        // Display the extracted text
        Console.WriteLine(ocrResult.Text);
    }
}
$vbLabelText   $csharpLabel

O código acima usa IronPDF para carregar o documento id1.pdf, e o PDF é passado como um fluxo para OcrInput e ocrTesseract.

Saída

Como Ler Documentos de Identidade Usando OCR em C#: Figura 9

Licenciamento (Teste Gratuito Disponível)

Para usar o IronOCR, você precisará de uma chave de licença. Essa chave precisa ser colocada no appsettings.json.

{
    "IRONOCR-LICENSE-KEY": "your license key"
}

Forneça um ID de email do usuário para obter uma licença de teste.

Como Ler Documentos de Identidade Usando OCR em C#: Figura 10

Casos de Uso

1. Verificação de Identidade em Serviços Financeiros:

  • Uso: Bancos e instituições financeiras utilizam OCR para ler documentos de identidade, como passaportes, carteiras de motorista e cartões de identidade durante o processo de cadastramento de clientes e KYC.
  • Benefícios: Garante verificação de identidade precisa e eficiente para criação de contas, solicitações de empréstimos e outras transações financeiras.

2. Controle de Fronteiras e Imigração:

  • Uso: Autoridades de imigração empregam tecnologia OCR para ler e autenticar informações de passaportes e vistos em pontos de controle de fronteira.
  • Benefícios: Agiliza o processo de imigração, melhora a segurança e reduz erros de entrada manual de dados.

3. Controle de Acesso e Segurança:

  • Uso: OCR é usado em sistemas de controle de acesso para ler informações de cartões de identidade, crachás de funcionários ou escaneamentos de reconhecimento facial para entrada segura em prédios ou áreas restritas.
  • Benefícios: Melhora a segurança garantindo que apenas indivíduos autorizados tenham acesso e fornece um registro digital de entradas.

4. Serviços de Governo Eletrônico:

  • Uso: Agências governamentais usam OCR para processar e verificar documentos de identidade enviados online para serviços como renovação de carteiras de motorista, declarações fiscais e solicitações de licenças.
  • Benefícios: Melhora a eficiência, reduz a papelada e melhora a experiência geral do cidadão.

5. Verificação de Identidade na Saúde:

  • Uso: Fornecedores de saúde usam OCR para ler informações de cartões de identificação de pacientes, cartões de seguro e outros documentos de identidade para manutenção precisa de registros de pacientes.
  • Benefícios: Facilita a identificação precisa de pacientes, garante a gestão adequada de registros médicos e apoia os processos de faturamento.

6. Check-in Automatizado em Hotéis:

  • Uso: Hotéis implementam OCR para processos automatizados de check-in escaneando documentos de identidade de hóspedes, simplificando o processo de registro.
  • Benefícios: Melhora a experiência do hóspede, reduz o tempo de check-in e minimiza erros na captura de informações dos hóspedes.

7. Cidades Inteligentes e Serviços Públicos:

  • Caso de Uso: OCR é aplicado em iniciativas de cidades inteligentes para ler documentos de identidade para serviços como acesso ao transporte público, associações em bibliotecas e inscrições em eventos da cidade.
  • Benefícios: Melhora a eficiência dos serviços públicos, facilita o acesso contínuo e melhora as experiências de vida urbana.

8. Administração Educacional:

  • Caso de Uso: Instituições de ensino usam OCR para processar e verificar documentos de identificação durante admissões de alunos, exames e emissão de credenciais acadêmicas.
  • Benefícios: Garante registros precisos de alunos, reduz a carga administrativa e melhora a integridade dos processos acadêmicos.

Conclusão

Integrar a tecnologia OCR em seu aplicativo C# usando IronOCR permite que você extraia informações de documentos de identidade de forma eficiente. Este guia abrangente fornece as etapas necessárias para configurar seu projeto e usar IronOCR para ler e processar imagens de documentos de identidade. Experimente os exemplos de código para adaptar o processo de extração às suas necessidades específicas, fornecendo uma solução automatizada e contínua para lidar com dados de documentos de identidade.

Perguntas frequentes

Como posso extrair texto de documentos de identidade usando C#?

Utilizando o IronOCR, uma biblioteca OCR especializada da IronSoftware, você pode extrair texto de diversos documentos de identidade, como passaportes, carteiras de identidade e carteiras de habilitação. Você pode instalar o IronOCR através do Gerenciador de Pacotes NuGet no Visual Studio e usar seus métodos para ler texto de imagens e PDFs.

Quais são os benefícios de usar OCR para documentos de identidade?

A tecnologia OCR, como o IronOCR da IronSoftware, automatiza a extração de texto de documentos de identidade, reduzindo erros humanos e melhorando a eficiência da recuperação de dados. Ela suporta vários idiomas e formatos de documentos, sendo ideal para aplicações nas áreas de finanças, saúde e controle de fronteiras.

Quais são os passos envolvidos na configuração de OCR em um projeto C#?

Para configurar o OCR em um projeto C#, você precisa criar um novo projeto no Visual Studio, instalar o IronOCR por meio do Gerenciador de Pacotes NuGet e utilizar sua API para ler o texto dos documentos. O IronOCR fornece documentação e exemplos abrangentes para ajudar você a integrar os recursos de OCR.

Como posso melhorar a qualidade da imagem para obter melhores resultados de OCR?

O IronOCR inclui recursos como correção de inclinação, redução de ruído, binarização, aprimoramento de resolução e dilatação para melhorar a qualidade da imagem. Esses filtros melhoram a precisão do reconhecimento de texto em imagens de baixa qualidade, garantindo uma extração de dados confiável.

A tecnologia OCR consegue ler códigos de barras em documentos de identidade?

Sim, o IronOCR suporta o reconhecimento de códigos de barras em documentos de identidade. Ele consegue ler mais de 20 tipos de códigos de barras, incluindo códigos QR, o que é útil para aplicações que exigem a extração de dados tanto de texto quanto de código de barras.

Existem casos de uso específicos para OCR na verificação de identidade?

O OCR é amplamente utilizado na verificação de identidade em aplicações como check-ins automatizados, controle de acesso e serviços de governo eletrônico. O IronOCR fornece as ferramentas necessárias para extrair e verificar texto de documentos de identidade, aprimorando a segurança e otimizando os processos.

Como posso lidar com a extração de texto multilíngue usando OCR?

O IronOCR oferece suporte multilíngue, permitindo extrair texto de documentos em vários idiomas. Esse recurso é particularmente útil para aplicações internacionais, onde documentos em diferentes idiomas precisam ser processados com eficiência.

Existe alguma versão de avaliação disponível para bibliotecas OCR?

O IronOCR da Iron Software oferece uma versão de avaliação gratuita. Você pode obter uma chave de licença de avaliação fornecendo um endereço de e-mail, o que lhe permitirá explorar os recursos da biblioteca antes de efetuar a compra.

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