Visão Computacional — CNNs, Detecção, Segmentação e ViTs
Fundamentos de visão computacional: CNNs, detecção de objetos (YOLO), segmentação de imagens, Vision Transformers (ViT) e aplicações práticas.
Visão Computacional (Computer Vision — CV) é o campo da IA que dota máquinas da capacidade de interpretar e compreender imagens e vídeos. Tarefas que humanos realizam instantaneamente — reconhecer um rosto, detectar um tumor numa radiografia, ler uma placa de trânsito — exigem modelos sofisticados para serem automatizadas.
Papers de referência: arXiv cs.CV — Computer Vision and Pattern Recognition
Hierarquia de tarefas em visão
| Tarefa | Saída | Exemplo |
|---|---|---|
| Classificação | Classe da imagem inteira | "Esta imagem contém um gato" |
| Detecção de objetos | Bounding boxes + classes | "Há um carro em (x1,y1,x2,y2)" |
| Segmentação semântica | Classe por pixel | Cada pixel é: estrada, céu, pessoa... |
| Segmentação de instância | Máscara por objeto individual | Pessoa 1, Pessoa 2, Carro 1... |
| Estimação de pose | Keypoints do corpo/face | Articulações de um esqueleto humano |
| Reconhecimento facial | Identidade | "Este é João" |
| OCR | Texto em imagens | Leitura de documentos, placas |
CNNs — a base de visão computacional
Detalhes da arquitetura estão em Redes Neurais Profundas. O que importa especificamente para visão:
Por que convolução funciona para imagens?
- Localidade: features relevantes (bordas, texturas) são locais — um filtro 3×3 captura contexto local de cada pixel
- Invariância à translação: o mesmo padrão é detectado independente de onde apareça na imagem
- Hierarquia de features: camadas iniciais detectam bordas → camadas médias detectam formas → camadas finais detectam objetos completos
Evolução das arquiteturas de classificação
| Modelo | Ano | Inovação | ImageNet Top-5 |
|---|---|---|---|
| AlexNet | 2012 | ReLU, dropout, GPU training | 84.7% |
| VGG-16 | 2014 | Profundidade com filtros 3×3 | 92.7% |
| Inception (GoogLeNet) | 2014 | Inception modules (multi-escala) | 93.3% |
| ResNet-50 | 2015 | Skip connections | 95.3% |
| EfficientNet-B7 | 2019 | Compound scaling | 97.1% |
| ViT-H/14 | 2021 | Vision Transformer | 97.7% |
| CoAtNet | 2021 | CNN + Transformer híbrido | 98.7% |
Detecção de objetos
O problema
Classificação responde "o que há na imagem?" Detecção responde "o que há na imagem e onde está?"
Desafios:
- Múltiplos objetos de tamanhos e proporções variadas
- Sobreposição entre objetos
- Velocidade (aplicações em tempo real)
Two-stage detectors — R-CNN family
- Region Proposal Network (RPN): propõe regiões candidatas com objetos
- Classification head: classifica cada região proposta
Faster R-CNN (2015): altamente preciso, mas mais lento. Padrão em aplicações que priorizam acurácia.
One-stage detectors — YOLO family
YOLO (You Only Look Once) trata detecção como problema de regressão: divide a imagem em grade, cada célula prevê bounding boxes e classes simultaneamente em um único forward pass.
Vantagens: extremamente rápido (30-100+ FPS), adequado para tempo real.
| Versão | Ano | Inovação |
|---|---|---|
| YOLOv1 | 2016 | Conceito original |
| YOLOv3 | 2018 | Multi-escala, ancora boxes |
| YOLOv5 | 2020 | PyTorch, fácil deploy |
| YOLOv8 | 2023 | Ultralytics, anchor-free |
| YOLOv11 | 2024 | Estado da arte em velocidade/acurácia |
# YOLOv8 — detecção em 3 linhas
from ultralytics import YOLO
model = YOLO("yolov8n.pt") # nano (mais rápido)
results = model("imagem.jpg")
results[0].show() # exibe com bounding boxesSegmentação de imagens
Segmentação Semântica — U-Net
A arquitetura U-Net (2015) usa encoder-decoder com skip connections. Popular em imagens médicas e satélites.
Encoder (downsampling): extrai features, reduz resolução
Skip connections: preserva detalhes espaciais
Decoder (upsampling): reconstrói máscara na resolução originalSegment Anything Model (SAM)
Meta AI lançou o SAM em 2023 — modelo fundacional para segmentação que aceita pontos, bounding boxes ou texto como prompt e segmenta qualquer objeto em qualquer imagem.
SAM 2 (2024) estendeu para segmentação de vídeo em tempo real.
from sam2.sam2_image_predictor import SAM2ImagePredictor
predictor = SAM2ImagePredictor.from_pretrained("facebook/sam2-hiera-large")
predictor.set_image(imagem)
masks, scores, _ = predictor.predict(point_coords=[[500, 375]])Vision Transformers (ViT)
Publicado por Google Brain em 2020 (arXiv:2010.11929), o Vision Transformer aplicou a arquitetura Transformer diretamente a imagens:
- Divide a imagem em patches (tipicamente 16×16 pixels)
- Lineariza cada patch em um vetor
- Adiciona embeddings de posição
- Processa com Transformer encoder padrão
Por que isso é revolucionário: elimina o inductive bias das CNNs (localidade, invariância à translação). Com dados suficientes, o modelo aprende essas propriedades — e vai além.
Limitação: ViTs precisam de muito mais dados que CNNs para atingir o mesmo desempenho. Com pre-training em datasets massivos (JFT-300M, ImageNet-21k), superam CNNs.
Modelos ViT de ponta (2024-2025)
- DINOv2 (Meta): features visuais universais sem supervisão
- SigLIP (Google): alinhamento texto-imagem eficiente
- EVA-CLIP (Beijing Academy): escala enorme de ViT
Visão multimódal — texto + imagem
CLIP — Contrastive Language-Image Pre-training
OpenAI (2021): treina encoder de imagem e encoder de texto para que imagens e suas descrições fiquem próximas no espaço de embeddings.
Zero-shot classification: classifica imagens em qualquer categoria descrita em texto, sem fine-tuning.
Modelos generativos de imagem
| Modelo | Tipo | Uso |
|---|---|---|
| Stable Diffusion | Diffusion (latent) | Geração open-source |
| DALL-E 3 | Diffusion + LLM | Texto → imagem |
| Midjourney | Difusão proprietária | Criação artística |
| Imagen (Google) | Diffusion + T5 | Alta fidelidade |
Como diffusion models funcionam: adicionam ruído progressivamente a uma imagem (forward process), depois treinam um modelo para reverter esse processo (reverse process). Na geração, partem de ruído puro e removem o ruído condicionados ao prompt.
Aplicações práticas
| Setor | Aplicação |
|---|---|
| Saúde | Diagnóstico por imagem (radiologia, dermatologia, patologia) |
| Autonomia | Veículos autônomos (Tesla, Waymo), drones |
| Segurança | Reconhecimento facial, detecção de anomalias |
| Varejo | Caixas autônomas (Amazon Go), contagem de estoque |
| Agronegócio | Análise de lavouras via satélite/drone |
| Manufatura | Inspeção de qualidade automatizada |
| Finanças | OCR de documentos, análise de gráficos |
Conexões com outras seções
- Redes Neurais Profundas — CNNs e ViTs são arquiteturas de deep learning
- LLMs — modelos multimodais (GPT-4V, Gemini, Claude 3) combinam visão e linguagem
- Análise Técnica — visão computacional para leitura automatizada de gráficos
Aviso Legal: Conteúdo educativo. Não constitui recomendação de investimento.
Spec-Driven Design para Sistemas com IA
Como usar especificações, papéis e contratos para reduzir ambiguidade e alucinação em fluxos com LLMs e agentes.
Redes & Provedores de Internet (ISP)
Guias técnicos para provedores de internet: MikroTik, BGP, FTTH/GPON, Zabbix, CGNAT, IPv6 e segurança de redes. Conteúdo prático para ISPs de pequeno e médio porte.