Machine Vision
A visão de máquina usa câmeras, iluminação controlada e análise de imagens para inspecionar, medir, identificar e orientar peças em linhas de produção em tempo real.
A visão artificial (MV) é a utilização de câmaras, ótica, iluminação e análise de imagens na automação industrial para inspecionar produtos, medir peças, ler códigos e orientar máquinas, com cada resultado a desencadear uma ação, como rejeitar uma peça, separá-la ou orientar um robô. É a visão computacional integrada num ciclo de controlo: um sistema de visão numa linha de embalagem tem de concluir cada decisão dentro do tempo de ciclo da linha — dezenas de milissegundos por peça numa linha de engarrafamento rápida — e comunicá-la a um controlador lógico programável (PLC) através de E/S digitais ou de uma rede industrial. As suas tarefas costumam agrupar-se em quatro categorias: orientação (localização de peças para robôs), inspeção (deteção de defeitos e elementos em falta), medição (medição de dimensões) e identificação (leitura de códigos de barras, códigos Data Matrix e texto impresso com reconhecimento ótico de caracteres).
Visão artificial, visão computacional e processamento de imagem#
A visão artificial aplica o processamento de imagem, que transforma imagens ao filtrar ruído ou acentuar contornos, e a visão computacional, que extrai significado de imagens em qualquer contexto, a máquinas industriais. Define-se pelo hardware e pela integração: iluminação e ótica controladas, câmaras acionadas por sensores na linha, temporização determinística e saídas ligadas a atuadores. A diferença entre os três campos está sobretudo no âmbito, e os sistemas modernos de visão artificial executam os mesmos modelos de aprendizagem profunda que outras aplicações de visão computacional.
Componentes de um sistema de visão artificial#
- Iluminação: A iluminação determina o que a câmara consegue ver. A retroiluminação transforma peças em silhuetas para medir contornos com precisão, as luzes de cúpula difusas reduzem os reflexos em superfícies brilhantes, as luzes de campo escuro com ângulo baixo realçam riscos e caracteres em relevo, e as linhas laser projetadas revelam perfis de altura 3D.
- Ótica: As lentes telecêntricas mantêm a ampliação constante quando a distância até à peça varia, pelo que os resultados das medições não dependem da posição da peça.
- Câmaras: As câmaras de varrimento de área captam peças discretas numa única exposição, as câmaras de varrimento linear constroem imagens de materiais contínuos, como aço, papel e tecidos, uma linha de cada vez, e os sensores 3D usam triangulação laser, visão estéreo ou tempo de voo. Normas de interface como GigE Vision, USB3 Vision e GenICam permitem que o software controle câmaras de diferentes fabricantes.
- Processamento e E/S: Um sensor fotoelétrico ou codificador aciona cada captura, uma câmara inteligente ou um PC industrial executa a análise, e o resultado é enviado ao PLC, cada vez mais através de hardware de periferia com GPU ou NPU.
Ferramentas baseadas em regras e aprendizagem profunda#
O software clássico de visão artificial encadeia ferramentas determinísticas: limiarização, análise de blobs, deteção de contornos, correspondência de padrões e paquímetros que medem a distância entre contornos. Este exemplo executa uma análise de blobs numa fotografia de moedas, contando as peças e medindo o seu tamanho:
import numpy as np
from scipy import ndimage as ndi
from skimage import data, filters, measure, segmentation
# Grayscale photo of 24 Greek coins on a gray background, bundled with scikit-image
image = data.coins()
# Seed the background (dark) and the parts (bright), then grow both along edge strength
markers = np.zeros_like(image)
markers[image < 30] = 1
markers[image > 150] = 2
mask = ndi.binary_fill_holes(segmentation.watershed(filters.sobel(image), markers) == 2)
# Blob analysis: label each part, ignore specks, and gauge each diameter in pixels
parts = [r for r in measure.regionprops(measure.label(mask)) if r.area > 300]
diameters = [part.equivalent_diameter_area for part in parts]
print(f"{len(parts)} parts, diameters {min(diameters):.0f}-{max(diameters):.0f} px")Imprime 24 parts, diameters 37-63 px: cada moeda é detetada e medida, e um sistema de produção compararia cada diâmetro com uma tolerância e enviaria o resultado ao PLC. O fundo desta fotografia fica mais claro em direção ao canto superior esquerdo e tem níveis de cinzento semelhantes aos das moedas, pelo que um único limiar global de Otsu divide a imagem em 96 blobs, um problema que a iluminação controlada evita numa linha de produção.
As ferramentas baseadas em regras são rápidas, explicáveis e precisas para peças com geometria fixa, mas têm dificuldade com variações naturais, como veios da madeira, alimentos ou defeitos cosméticos de muitos formatos. Os modelos de detecção de objetos, segmentação de instâncias e detecção de anomalias aprendem esses casos com exemplos. Um modelo de segmentação YOLO26 treinado com imagens de defeitos delimita arranhões e rachaduras pixel a pixel, e o modo de exportação da Ultralytics o converte para TensorRT ou OpenVINO, permitindo que a inferência em tempo real se ajuste ao tempo de ciclo da linha em um PC industrial ou NVIDIA Jetson.
Aplicações no mundo real#
- Inspeção ótica automatizada: As linhas de produção eletrónica inspecionam placas de circuito impresso para detetar componentes em falta, deslocados ou invertidos e juntas de soldadura defeituosas, recorrendo muitas vezes à inspeção 3D da pasta de soldadura antes da colocação dos componentes.
- Inspeção farmacêutica e de embalagens: Os sistemas verificam os níveis de enchimento, as tampas e os rótulos, e o OCR lê o código do lote e a data de validade impressos em cada embalagem.
- Robótica guiada por visão: Os robôs localizam peças empilhadas aleatoriamente para as recolher de caixas, usando sensores 3D e estimativa de pose para escolher como as agarrar.
- Fabrico automóvel: Os sensores 3D medem a folga e o alinhamento entre painéis da carroçaria, e as câmaras verificam o acabamento da pintura e as juntas de soldadura antes de os veículos saírem da linha.










