Em robôs exploradores de Marte (como o Perseverance), a detecção de obstáculos é realizada em tempo real por câmeras estereoscópicas. O operador de Sobel calcula o gradiente direcional da cena e é utilizado no algoritmo de detecção de bordas para identificar rochas, fissuras e desníveis do terreno que possam comprometer a navegação.
🧭 Simulador EP03_08: Gradiente de Sobel (Gx e Gy)|∇f| = √(Gx² + Gy²)
Analise a decomposição horizontal (Gx) e vertical (Gy) do operador de Sobel e passe o mouse sobre os pixels da magnitude para inspecionar a vizinhança 3×3.
Kernels de Sobel:
−1
0
+1
−2
0
+2
−1
0
+1
Gx
−1
−2
−1
0
0
0
+1
+2
+1
Gy
Imagem Original fMatriz 5×5 pixels
Magnitude |∇f|√(Gx² + Gy²)
Gx — Gradiente HorizontalAzul = Negativo · Branco = Zero · Azul Vivo = Positivo
Gy — Gradiente VerticalÂmbar = Negativo · Branco = Zero · Âmbar Vivo = Positivo
Legenda:
Vizinhança 3×3 Inspecionada
Pixel Central
Borda (Forçada a 0)
Passe o mouse sobre um pixel interno da magnitude para ver a decomposição Gx e Gy.
Figura 3.33: Simulador EP03_08: Gradiente de Sobel (Gx e Gy)
%%writefile EP03_08.cpp// sua solução
Overwriting EP03_08.cpp
TestSuite("EP03_08.cpp").run()
✔️ EP03_08.cases já existe em casos/
📋 5 caso(s) carregado(s) de casos/EP03_08.cases
🔍 Testando C++: EP03_08.cpp
⚠️ EP03_08.cpp: Arquivo sem conteúdo (menos de 3 linhas). Testes ignorados.