Tutorial Completo:Projeção de Cinza no Halcon com Análise dos Modos ‘Simple’ e ‘Rectangle’

Projeção de Cinza no Halcon:Fundamentos e Comparação entre Modos

Na detecção industrial por visão computacional, a técnica de projeção de cinza atua como uma ferramenta crucial para extrair características relevantes de imagens complexas. Ela permite localizar elementos em placas de circuito, reconhecer códigos ou identificar defeitos em superfícies. Neste artigo, exploramos o operador projecoes_cinza no Halcon, focando nos modos ‘simple’ e ‘rectangle’, e analisamos suas aplicações e desempenho.

1. Princípios Básicos da Projeção de Cinza

A projeção de cinza reduz informações de imagem 2D para um vetor 1D, calculando estatísticas de pixels em uma região. Isso diminui o custo computacional enquanto preserva características estruturais. A projeção horizontal, por exemplo, média os valores de cinza por linha, enquanto a vertical faz o mesmo por coluna. Este método suporta diversas aplicações, como posicionamento de objetos, segmentação de caracteres e detecção rápida de defeitos. No Halcon, o operador projecoes_cinza encapsula esses cálculos em dois modos, adaptando-se a diferentes cenários.

Exemplo em Pseudocódigo:Cálculo de Projeção Horizontal

# Implementação alternativa da projeção horizontal
def gerar_perfil_horizontal(dados_imagem):
    perfil = []
    for cada_linha in dados_imagem:
        soma_pixels = sum(cada_linha)
        qtd_pixels = len(cada_linha)
        media_cinza = soma_pixels / qtd_pixels
        perfil.append(media_cinza)
    return perfil

2. Modo ‘Simple’:Uso e Características

O modo ‘simple’ calcula projeções diretamente ao longo dos eixos X e Y da imagem. É eficiente para regiões alinhadas com as coordenadas do sistema, como em inspeções de PCBs posicionadas retangularmente. Internamente, o operador recorta a região especificada e aplica estatísticas linha a linha ou coluna a coluna, resultando em vetores fixos para cada direção.

Exemplo de Código Halcon:Aplicação Básica do Modo Simple

* Configuração e execução da projeção no modo simple
carregar_imagem (IMG, 'pcb_sample.png')
definir_regiao_retangular (AREA, 150, 80, 350, 420)
obter_projecoes (AREA, IMG, 'simple', Perfil_H, Perfil_V)

Comparação de Desempenho entre Modos

Aspecto Modo ‘simple’ Modo ‘rectengle’
Velocidade de Cálculo Alta (processamento direto) Moderada (requer transformação)
Uso de Memória Baixo Intermediário
Adaptação a Rotação Somente regiões alinhadas Qualquer ângulo
Dimensões de Saída Fixas (eixos X/Y) Variáveis com a região

Técnicas Práticas para o Modo Simple

  • Pré-processamento: Aplicar equalização de histograma para melhorar a qualidade do perfil de projeção.
  • Seleção de Região: Incluir uma margem extra ao redor do alvo para minimizar distorções de borda.
  • Pós-processamento: Usar cálculos de derivada para localizar bordas com precisão, aprimorando a detecção.

Tags: Halcon projecoes_cinza modo_simple modo_rectangle visao_industrial

Publicado em 7-14 12:33