IRONSOFTWAREHOME
UTILIZANDO O IRONOCR

Como realizar OCR em placas de veículos em C# (Tutorial)

Kannaopat Udonpant
Kannapat Udonpant
Updated: 18 de janeiro de 2026

O reconhecimento de placas de veículos tornou-se uma ferramenta essencial em muitos setores, desde o gerenciamento de tráfego e sistemas de estacionamento até a aplicação da lei e soluções de pedágio. Aproveitando a tecnologia de Reconhecimento Óptico de Caracteres (OCR), os desenvolvedores podem extrair texto de imagens de forma eficiente, automatizando o processo de identificação de placas de veículos. Neste tutorial, iremos demonstrar como usar o IronOCR, uma poderosa biblioteca C# de OCR, para ler com precisão placas de veículos em imagens. Com a sua integração perfeita com o código-fonte do OpenCV para tarefas de visão computacional, IronOCR oferece uma solução robusta para reconhecer texto mesmo a partir de fontes de imagem complexas ou ruidosas. Quer você esteja trabalhando com uma imagem de placa de licença limpa ou uma foto de veículo completo, este guia o guiará pelas etapas para construir um sistema confiável de reconhecimento de placas de licença usando técnicas modernas de OCR.

Como Usar Reconhecimento de Placas de Licença C#

  1. Instalar a Biblioteca C# para usar o reconhecimento de placas de licença
  2. Importe a imagem da placa para uma nova instância OcrImageInput.
  3. Aplicar filtros de imagem para melhorar a extração de texto em C#.
  4. Melhorar a velocidade de reconhecimento especificando a região da placa de licença na foto.
  5. Imprima o texto extraído usando uma instância OcrLicensePlateResult.

Começando com IronOCR

IronOCR é uma biblioteca de OCR em C# construída sobre o motor Tesseract OCR, projetada especificamente para trazer alta precisão e eficiência para projetos de reconhecimento de texto em aplicativos .NET. Ideal para lidar com imagens ruidosas ou de baixa qualidade, IronOCR inclui poderosas capacidades de pré-processamento de imagem, como redução automática de ruído e conversão em escala de cinza, que melhoram a clareza da extração de texto.

Algumas das características de destaque do IronOCR incluem:

  • Alta Precisão de OCR: Otimizado para vários idiomas e fontes, IronOCR se destaca em precisão mesmo ao trabalhar com texto complexo ou distorcido.
  • Suporte para Imagem e PDF: Pode ler texto de múltiplos formatos de imagem e arquivos PDF, tornando-o versátil para diferentes tipos de documentos.
  • Integração com OpenCV: Através do suporte ao OpenCV, IronOCR pode realizar tarefas de visão computacional, como detectar regiões de texto específicas dentro de uma imagem, o que é particularmente útil para reconhecimento de placas de licença.
  • Pré-processamento Avançado: Inclui filtros para conversão em escala de cinza, rotação, correção de inclinação e aprimoramento de contraste para melhorar a qualidade do reconhecimento.
  • Opções de Entrada Flexíveis: Suporta documentos de múltiplas páginas e regiões ajustáveis, permitindo que os desenvolvedores foquem o processamento de OCR em áreas selecionadas para resultados mais rápidos e direcionados.

Com essas capacidades, IronOCR é uma solução poderosa para construir aplicações de OCR que exigem precisão, flexibilidade e facilidade de integração com outras ferramentas de visão computacional.

Criar um projeto do Visual Studio

Comece abrindo o Visual Studio e selecionando "Criar um Novo Projeto". Isso o levará a uma página onde você pode selecionar o tipo de projeto que deseja construir (no nosso caso, faremos uma Aplicação de Console). Selecione o tipo de aplicação desejado e clique em "Próximo".

Tipo de Projeto do Visual Studio

Agora, dê um nome ao seu projeto e escolha o local onde será salvo.

Nome e Localização do Projeto

Finalmente, selecione o seu framework .NET alvo e clique no botão "Criar". Isso criará o projeto, como mostrado abaixo.

Projeto Criado

O próximo passo é instalar a biblioteca IronOCR para que possamos começar a processar placas de licença.

Instalando o IronOCR

Para começar com IronOCR em seu projeto C#, você precisará instalar o pacote IronOCR do NuGet. IronOCR é compatível com .NET Framework e .NET Core, tornando fácil de integrar em várias aplicações .NET.

Passo 1: Abra o Console do Gerenciador de Pacotes

No Visual Studio, navegue até Ferramentas > Gerenciador de Pacotes NuGet > Console do Gerenciador de Pacotes.

Passo 2: Instale o Pacote IronOCR

Digite o seguinte comando no Console do Gerenciador de Pacotes:

PM > Install-Package IronOcr

Este comando instala a biblioteca IronOCR, incluindo todas as dependências necessárias para executar funções de OCR em seu projeto. Como nossa aplicação requer recursos avançados, como detecção de placas de licença usando visão computacional, você também pode instalar o pacote opcional IronOcr.ComputerVision.Windows desta forma:

PM > Install-Package IronOcr.ComputerVision.Windows

Certifique-se de ter a extensão IronOcr.Extensions.AdvancedScan instalada para que você possa utilizar seu poderoso método ReadLicensePlate:

PM > Install-Package IronOcr.Extensions.AdvancedScan

Alternativamente, você pode instalar os pacotes usando Ferramentas > Gerenciador de Pacotes NuGet > Gerenciar Pacotes NuGet para a Solução e buscar os pacotes de que precisa:

Gerenciador de Pacotes NuGet

Configurando o Código

Finalmente, devemos adicionar os imports necessários e declarações de using no topo do nosso código:

using IronOcr;

Lendo Placas de Licença com Reconhecimento Óptico de Caracteres

Nesta seção, vamos criar um programa para ler placas de licença usando IronOCR, um Motor OCR Tesseract que se destaca em extrair texto de imagens. Para implementar a detecção de veículos, também podemos incorporar bibliotecas adicionais de aprendizado de máquina. Notavelmente, IronOCR se integra com OpenCV, uma biblioteca de visão computacional de código aberto líder, permitindo-nos realizar tarefas de detecção de objetos, como identificar veículos e placas de licença.

Exemplo de Imagem de Placa de Licença

Trabalharemos com a seguinte placa de licença:

Exemplo de Placa

Exemplo de Código para Realizar OCR em Placa de Licença

using IronOcr;

var ocr = new IronTesseract();

using (var input = new OcrImageInput("licensePlate.jpeg"))
{
    // Fixes digital noise and makes the image easier to read
    input.DeNoise();
    input.ToGrayScale();

    // Reads the license plate information and stores it for further use
    OcrLicensePlateResult result = ocr.ReadLicensePlate(input);

    // Saves the license plate text to a string variable
    string output = result.Text;

    // Outputs the license plate text to the console
    Console.WriteLine(output);
}

Saída OCR

Análise do código:

  • Inicialização: var ocr = new IronTesseract(); cria uma nova instância da classe IronTesseract, que fornece métodos para Reconhecimento Óptico de Caracteres (OCR).

  • Entrada de Imagem: A declaração using cria um novo objeto OcrImageInput com o arquivo de imagem especificado "licensePlate.jpeg". Este objeto é projetado para armazenar os dados da imagem para processamento OCR.

  • Pré-processamento de Imagem:

    • input.DeNoise(); aplica um filtro de redução de ruído digital para melhorar a qualidade da imagem, facilitando a leitura do texto pelo motor OCR.
    • input.ToGrayScale(); converte a imagem para tons de cinza, o que pode melhorar a precisão do reconhecimento e a velocidade de processamento.
  • Reconhecimento de Placas: A linha OcrLicensePlateResult result = ocr.ReadLicensePlate(input); usa o método ReadLicensePlate para analisar a imagem processada e extrair qualquer informação de placa que detectar, armazenando os resultados em um objeto OcrLicensePlateResult.

  • Armazenamento de Saída: O texto da placa é armazenado na variável de string output acessando result.Text, que contém o texto reconhecido da placa.

  • Saída de Console: Finalmente, Console.WriteLine(output); imprime o texto extraído da placa no console para verificação.

Escaneando Números de Placa de Licença de um Carro

Se tivermos uma imagem de um carro inteiro em vez de apenas a placa de licença, podemos especificar uma região retangular para focar na área da placa de licença. Podemos usar System.Drawing.Rectangle para definir esta área em pixels.

Imagem Original

Usaremos o seguinte arquivo de imagem para nosso exemplo:

Carro com Placa

Ao especificar a área de interesse, melhoramos a velocidade de processamento e evitamos extrair texto desnecessário.

Código de Implementação

using IronOcr;
using System.Drawing;

var ocr = new IronTesseract();

using (var input = new OcrInput())
{
    var contentArea = new Rectangle(x: 252, y: 282, width: 148, height: 47);
    input.LoadImage("CarPlate.jpeg", contentArea);
    OcrLicensePlateResult result = ocr.ReadLicensePlate(input);
    Console.WriteLine(result.Text);
}

Saída OCR Focada

Análise do código:

  • Inicialização: var ocr = new IronTesseract(); cria uma nova instância da classe IronTesseract, que é responsável por executar as operações OCR.
  • Entrada OCR: A declaração using (var input = new OcrInput()) cria um novo objeto OcrInput, que será usado para carregar e processar a imagem para OCR.
  • Definindo a Área de Interesse: var contentArea = new Rectangle(x: 252, y: 282, width: 148, height: 47); define uma área retangular (contentArea) dentro da imagem. Este retângulo especifica as coordenadas e dimensões (largura e altura) onde se espera que a placa de licença esteja localizada.
  • Carregando a Imagem: input.LoadImage("CarPlate.jpeg", contentArea); carrega o arquivo de imagem especificado ("CarPlate.jpeg") e focaliza o retângulo definido (contentArea) para limitar o processamento OCR a essa região específica.
  • Lendo a Placa: OcrLicensePlateResult result = ocr.ReadLicensePlate(input); invoca o método ReadLicensePlate, que analisa a imagem de entrada em busca de caracteres de placa e retorna um objeto OcrLicensePlateResult contendo o texto extraído.
  • Saída: Console.WriteLine(result.Text); imprime o texto reconhecido da placa no console.

Reconhecimento Automático de Números de Placa

O IronOCR aproveita o OpenCV para identificar regiões de texto dentro de imagens, empregando várias técnicas de processamento de imagem. Esta funcionalidade permite que programas detectem placas de licença localizando áreas de texto na imagem e, em seguida, utilizando o Tesseract para ler essas regiões.

Instalação

Para habilitar o modelo de detecção de placa de licença, instale o pacote necessário via o Console do Gerenciador de Pacotes:

Exemplo usando detecção automática de regiões para placas de licença:

var ocr = new IronTesseract();

using (var input = new OcrImageInput("CarPlate.jpeg"))
{
    input.FindTextRegion();
    OcrLicensePlateResult result = ocr.ReadLicensePlate(input);
    Console.WriteLine(result.Text);
}

Saída OCR Automática

Análise do código:

  • Inicialização: Uma instância da classe IronTesseract é criada, que será usada para reconhecimento óptico de caracteres (OCR) com o motor Tesseract.
  • Entrada de Imagem: Um novo objeto OcrImageInput é instanciado com o arquivo de imagem especificado ("CarPlate.jpeg"). Este objeto servirá como entrada para o processo OCR e está encapsulado em uma declaração using para garantir o gerenciamento adequado de recursos.
  • Detecção de Região de Texto: O método FindTextRegion() é chamado no objeto input. Este método emprega técnicas de visão computacional para identificar automaticamente áreas dentro da imagem que provavelmente contêm texto, especificamente direcionando a placa de licença.
  • Reconhecimento de Placas: O método ReadLicensePlate é invocado para analisar as regiões de texto detectadas e extrair o número da placa. O resultado é armazenado em um objeto OcrLicensePlateResult, que contém o texto reconhecido e quaisquer metadados associados.
  • Saída: O texto da placa de licença detectada é impresso no console, permitindo que o usuário veja o número da placa extraído.

Licenciamento IronOCR

Para aqueles que querem experimentar o IronOCR por conta própria, o IronOCR oferece uma versão de teste gratuita que lhe dá acesso à gama completa de ferramentas que ele tem a oferecer, permitindo que você as experimente em seus próprios projetos antes de comprar uma licença. Uma vez que seu teste gratuito termine, o licenciamento do IronOCR começa a partir de apenas $999 para a licença lite. Ele também fornece complementos opcionais por um custo adicional, como cobertura de redistribuição isenta de royalties e suporte contínuo e atualizações de produto.

Além disso, se você descobrir que precisa usar mais produtos da Iron Software além do IronOCR, como o IronPDF para suas tarefas relacionadas a PDFs ou o IronWord para trabalhar com documentos do Word, a Iron Software também oferece o Iron Suite, que é uma ótima maneira de ter acesso a toda a gama de ferramentas por um ótimo preço.

Conclusão

Neste guia, exploramos como construir um sistema confiável de reconhecimento de placa de licença em C# usando o IronOCR. Com suas poderosas capacidades de extração de texto e integração com o OpenCV, o IronOCR oferece uma solução eficiente e fácil de usar para aplicações que exigem reconhecimento preciso de texto a partir de imagens de veículos. Desde o pré-processamento da imagem até a configuração de regiões específicas de detecção, o IronOCR simplifica o processo OCR com ferramentas voltadas para imagens ruidosas ou complexas, como placas de licença em imagens de tráfego e vigilância.

Seja desenvolvendo para monitoramento de tráfego, aplicação de estacionamento, ou qualquer aplicação que exija reconhecimento automático de placa de licença, o IronOCR oferece uma biblioteca abrangente que se integra perfeitamente aos ambientes .NET. Seguindo estas etapas, você estará equipado para implantar soluções alimentadas por OCR que melhoram a eficiência e a precisão em vários cenários do mundo real. Com recursos adicionais, como seleção de regiões e redução de ruído, o IronOCR garante que suas tarefas de reconhecimento de placa de licença sejam otimizadas para os melhores resultados possíveis.

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.