fbpx
Sigmoidal
  • Home
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
Sem Resultado
Ver Todos Resultados
  • English
  • Home
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
Sem Resultado
Ver Todos Resultados
Sigmoidal
Sem Resultado
Ver Todos Resultados

Depth Anything: Como Criar Mapas de Profundidade

Carlos Melo por Carlos Melo
fevereiro 21, 2024
em Deep Learning, Python, Tutoriais, Visão Computacional
0
78
COMPARTILHAMENTOS
2.6k
VIEWS
Publicar no LinkedInCompartilhar no FacebookCompartilhar no Whatsapp

Estimativa de profundidade monocular é uma tarefa da Visão Computacional, que consiste em prever as informações de profundidade de uma cena, ou seja, a distância relativa à câmera de cada pixel, dada uma única imagem RGB.

Esta tarefa desafiadora é um pré-requisito chave para determinar o entendimento da cena para aplicações como a reconstrução de cena 3D, robótica, Computação Espacial (Apple Vision Pro e Quest 3) e navegação autônoma.

 

Depth Anything - Estimativa de Profundidade Monocular
Exemplo de mapa de profundidade que gerei usando o Depth Anything.

Enquanto várias abordagens foram desenvolvidas para a estimativa de profundidade, Depth Anything representa hoje um avanço significativo no campo da percepção de profundidade monocular.

Neste artigo nós exploraremos algumas das bases teóricas da percepção de profundidade monocular, e clonaremos o repositório Depth Anything para fazermos nossos próprios testes em um ambiente de desenvolvimento local.

💻

Código do Artigo

Acesse o código-fonte deste artigo gratuitamente.

Informe seu email para acessar o código:

✓ Seu código está pronto!

Abrir no Google Colab →

Percepção de Profundidade Monocular

A percepção de profundidade é o que nos permite interpretar o mundo tridimensional a partir de imagens bidimensionais projetadas em nossas retinas. Essa habilidade evoluiu como um aspecto crucial para a sobrevivência, possibilitando aos humanos navegar pelo ambiente, evitar predadores e localizar recursos.

O cérebro humano realiza essa façanha por meio de uma série de interpretações das informações visuais, onde a sobreposição do campo visual binocular fornece uma rica percepção de profundidade.

Além da visão binocular, essa percepção é enriquecida por várias pistas monoculares (depth cues), elementos no ambiente que permitem ao observador único inferir a profundidade mesmo com um olho fechado. Entre essas pistas estão occlusão, tamanho relativo, sombras projetadas, e perspectiva linear.

Esses mesmos princípios e mecanismos de percepção encontram um paralelo na Visão Computacional, onde a essência da estimativa também reside em capturar a estrutura espacial de uma cena para representar com precisão seus aspectos tridimensionais.

Depth Anything para Estimativa de Profundidade

O modelo Depth Anything, introduzido no trabalho “Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data”, representa um avanço significativo em estimativa de profundidade monocular. Baseado na arquitetura DPT (Dense Prediction Transformer), foi treinado em um vasto conjunto de dados com mais de 62 milhões de imagens não rotuladas.

YANG, Lihe et al. Depth anything: Unleashing the power of large-scale unlabeled data. 2024.

O sucesso desta abordagem é atribuído a duas estratégias principais.

  1. A utilização de ferramentas de data augmentation para estabelecer um target de otimização mais desafiador.
  2. Uso de supervisão auxiliar para assegurar a herança de priores semânticos a partir de codificadores pré-treinados.

A capacidade de generalização do Depth Anything, testada em seis conjuntos de dados públicos e em fotografias capturadas aleatoriamente, superou algumas métricas de modelos existentes, como MiDaS v3.1 e ZoeDepth.

Caso você queria se aprofundar mais nos materiais e métodos utilizados na pesquisa, acesse o artigo original neste link.

Depth anything: Unleashing the power of large-scale unlabeled data
Framework do Depth Anything, onde foi adotado um pipeline padrão para aumentar o poder do modelo em cima de imagens não rotuladas.

Configuração do Ambiente para “Depth Anything”

Para começar a usar o Depth Anything para estimativa de profundidade monocular, é necessário preparar seu ambiente de desenvolvimento seguindo alguns passos simples. Certifique-se de que você tem o Poetry instalado.

Para clonar o repositório e instalar as dependências, siga o passo a passo descrito abaixo:

1. Clone o Repositório: Primeiramente, clone o repositório do projeto utilizando o comando no terminal:

git clone https://github.com/LiheYoung/Depth-Anything.git

2. Acesse o Diretório do Projeto: Em seguida, acesse o diretório do projeto:

cd Depth-Anything

3. Inicialize o Ambiente com Poetry: Se for a primeira vez usando Poetry neste projeto, inicialize o ambiente:

poetry init

4. Ative o Ambiente Virtual: Ative o ambiente virtual criado pelo Poetry:

poetry shell

5. Instale as Dependências: Instale as dependências necessárias, incluindo Gradio, PyTorch, torchvision, opencv-python e huggingface_hub:

poetry add gradio==4.14.0 torch torchvision opencv-python huggingface_hub

6. Execute o Aplicativo: Execute o aplicativo usando Streamlit com o comando:

python app.py

Com o app Streamlit rodando, você pode carregar suas fotos diretamente pela UI. Caso você tenha alguma dificuldade ao instalar as dependências no seu computador, você também consegue testar o Depth Anything nesta demo oficial.

Mas se você quiser acessar o passo a passo em vídeo, eu disponibilizei uma aula completa no meu curso de Visão Computacional.

O app funciona apenas para imagens estáticas. Para gerar mapas de profundidade a partir de vídeos, execute o comando abaixo no seu Terminal. Como esse processo é custoso em termos de processamento, eu recomendo que você inicie seus testes com vídeos curtos, entre 3 e 10 segundos.

python run_video.py --encoder vitl --video-path /caminho/para/seu/video.mov --outdir /caminho/para/salvar

Takeaways

  • Essência da Percepção de Profundidade Monocular: A estimativa de profundidade monocular é fundamental para compreender a estrutura espacial de uma cena a partir de uma única imagem, permitindo aplicações como reconstrução 3D de cenas.
  • Avanços com Depth Anything: Representando um salto significativo na percepção de profundidade monocular, o modelo Depth Anything utiliza a arquitetura DPT e foi treinado em um conjunto de dados extenso, mostrando excelente capacidade de generalização.
  • Configuração do Ambiente: Um guia passo a passo para configurar o ambiente de desenvolvimento para utilizar o Depth Anything, incluindo a instalação de dependências e a execução de aplicativos para testes práticos.
  • Aplicação Prática: O artigo fornece instruções detalhadas para testar a estimativa de profundidade com imagens e vídeos, facilitando a experimentação prática e a visualização dos resultados do modelo Depth Anything.
Compartilhar5Compartilhar31Enviar
Post Anterior

Sora: A Revolução dos Vídeos Gerados por IA

Próximo Post

Sora e a Indústria de Entretenimento: Ameaça ou Aliado?

Carlos Melo

Carlos Melo

Engenheiro de Visão Computacional graduado em Ciências Aeronáuticas pela Academia da Força Aérea (AFA) e Mestre em Engenharia Aeroespacial pelo Instituto Tecnológico de Aeronáutica (ITA).

Relacionado Artigos

Artigos

Faster R-CNN: O Paper Que Mudou a Detecção de Objetos

por Carlos Melo
março 26, 2026
Transfer Learning com PyTorch na Prática
Deep Learning

Transfer Learning com PyTorch na Prática

por Carlos Melo
março 24, 2026
Deep Learning

Grad-CAM: Visualizando o que uma Rede Neural Enxerga

por Carlos Melo
março 22, 2026
ViT Visual Transformer
Artigos

Vision Transformer (ViT): Implementação com Python

por Carlos Melo
março 18, 2026
Artigos

Visual Search: Como Projetar um Sistema de Busca por Imagens

por Carlos Melo
fevereiro 19, 2026
Próximo Post
Sora e a Indústria de Entretenimento: Ameaça ou Aliado?

Sora e a Indústria de Entretenimento: Ameaça ou Aliado?

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Mais Populares

  • ORB-SLAM 3: Tutorial Completo para Mapeamento 3D e Localização em Tempo Real

    458 compartilhamentos
    Compartilhar 183 Tweet 115
  • Vision Transformer (ViT): Implementação com Python

    5 compartilhamentos
    Compartilhar 2 Tweet 1
  • Introdução ao MediaPipe e Pose Estimation

    550 compartilhamentos
    Compartilhar 220 Tweet 138
  • O Que é Amostragem e Quantização no Processamento de Imagens

    46 compartilhamentos
    Compartilhar 18 Tweet 12
  • Grad-CAM: Visualizando o que uma Rede Neural Enxerga

    3 compartilhamentos
    Compartilhar 1 Tweet 1
  • Em Alta
  • Comentários
  • Mais Recente
Como Tratar Dados Ausentes com Pandas

Como Tratar Dados Ausentes com Pandas

agosto 13, 2019
Como usar o DALL-E 2 para gerar imagens a partir de textos

Como usar o DALL-E 2 para gerar imagens a partir de textos

dezembro 25, 2022
Introdução ao MediaPipe e Pose Estimation

Introdução ao MediaPipe e Pose Estimation

julho 15, 2023

ORB-SLAM 3: Tutorial Completo para Mapeamento 3D e Localização em Tempo Real

abril 10, 2023
Como Analisar Ações da Bolsa com Python

Como Analisar Ações da Bolsa com Python

15
Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

13
Como Aprender Data Science?

Como Aprender Data Science?

9
Qual o Cenário de Data Science no Brasil hoje?

Qual o Cenário de Data Science no Brasil hoje?

8

Faster R-CNN: O Paper Que Mudou a Detecção de Objetos

março 26, 2026
Transfer Learning com PyTorch na Prática

Transfer Learning com PyTorch na Prática

março 24, 2026

Grad-CAM: Visualizando o que uma Rede Neural Enxerga

março 22, 2026
ViT Visual Transformer

Vision Transformer (ViT): Implementação com Python

março 18, 2026
Instagram Youtube LinkedIn Twitter
Sigmoidal

O melhor conteúdo técnico de Data Science, com projetos práticos e exemplos do mundo real.

Seguir no Instagram

Categorias

  • Aeroespacial
  • Artigos
  • Blog
  • Carreira
  • Cursos
  • Data Science
  • Deep Learning
  • Destaques
  • Entrevistas
  • IA Generativa
  • Livros
  • Machine Learning
  • Notícias
  • Python
  • Teoria
  • Tutoriais
  • Visão Computacional
  • Youtube

Navegar por Tags

camera calibration carreira chatgpt cientista de dados cnn computer vision Cursos dados desbalanceados data science data science na prática decision tree deep learning deploy detecção de objetos gpt-3 IA generativa image formation inteligência artificial jupyter kaggle keras machine learning matplotlib mnist nft openai opencv overfitting pandas profissão python pytorch redes neurais redes neurais convolucionais regressão linear regressão logística salário sklearn tensorflow titanic tutorial visão computacional vídeo youtube árvore de decisão

© 2024 Sigmoidal - Aprenda Data Science, Visão Computacional e Python na prática.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

Sem Resultado
Ver Todos Resultados
  • Home
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
  • English

© 2024 Sigmoidal - Aprenda Data Science, Visão Computacional e Python na prática.