O que é profundidade inversa (em odometria) e por que eu a usaria?

14

Lendo alguns artigos sobre odometria visual, muitos usam profundidade inversa. É apenas o inverso matemático da profundidade (significando 1 / d) ou representa outra coisa. E quais são as vantagens de usá-lo?

Mehdi
fonte

Respostas:

12

Recursos como o sol, as nuvens e outras coisas muito distantes teriam uma estimativa de distância de inf. Isso pode causar muitos problemas. Para contornar isso, o inverso da distância é estimado. Todos os infs se tornam zeros que tendem a causar menos problemas.

Holmeski
fonte
1
Não entendo muito bem, se estou usando um dispositivo kinect, os valores de saída para a área inválida são definidos internamente como 0 , por causa de muito perto ou muito longe ou reflexão ou disparidade. Isso tem sth. a ver com profundidade inversa?
Zhangxaochen
@zhangxaochen A parametrização inversa da profundidade é amplamente utilizada no SLAM monocular e ajuda a estimar a profundidade do ponto 3D. O Kinect fornece informações em 3D ou profundidade do ponto. Eu não acho que haverá grande necessidade de usar profundidade inversa no Kinect.
nbsrujan
8

A parametrização de profundidade inversa representa a distância de um ponto de referência, d, da câmera exatamente como diz, como proporcional a 1 / d dentro do algoritmo de estimativa. O racional por trás da abordagem é que, abordagens de filtragem como o filtro estendido de Kalman (EKF) assumem que o erro associado aos recursos é gaussiano.

Em uma configuração de odometria visual, a profundidade de um ponto de referência é estimada rastreando os recursos associados em algumas séries de quadros e, em seguida, usando a paralaxe induzida. No entanto, para recursos distantes (em relação ao deslocamento da câmera), a paralaxe resultante será pequena e, o mais importante é que a distribuição de erros associada à profundidade é altamente elevada perto da profundidade mínima com uma cauda longa (ou seja, não é bem modelada por meio de uma Distribuição gaussiana). Para ver um exemplo, consulte a Figura 7 no artigo de Civera et al. (Mencionado por @freakpatrol), ou a Figura 4 de Fallon et al. ICRA 2012 .

Ao representar a profundidade inversa (isto é, 1 / d), esse erro se torna gaussiano. Além disso, permite representar pontos muito distantes, por exemplo, pontos no infinito.

ρEu1/ρEu

johnmcd
fonte
O link do ICRA 2012 está quebrado.
T ....
3

O artigo de Davison, introduzindo o método, é fácil de entender:

Parametrização Inversa de Profundidade para SLAM Monocular por Javier Civera, Andrew J. Davison e JM Martınez Montiel DOI: 10.1109 / TRO.2008.2003276

freakpatrol
fonte
3
Certifique-se de adicionar algum tipo de resumo breve à sua resposta. Isso realmente não responde à pergunta do usuário, apenas vincula a um artigo, e esse artigo pode não estar disponível nesse link posteriormente!
Brian Lynch
Além disso, é uma boa idéia mencionar o título do artigo e, idealmente, um DOI, pois isso significa que será mais fácil encontrar no futuro, se esse URL específico morrer.
Mark Booth
0

Além das razões mencionadas em outras respostas sobre o condicionamento numérico da profundidade inversa, uma das principais razões para esse termo aparecer na literatura especificamente em odometria visual é a maneira como as profundidades são calculadas a partir da visão estéreo: a distância em X entre o ponto em que um ponto aparece nas imagens das duas câmeras.

Profundidade, Z, é então calculado a partir da disparidade, d, Como Z=fBd, Onde f e Bsão a distância focal (em pixels) e a linha de base da câmera (em metros), respectivamente. Portanto, trabalhar no espaço de profundidades inversas o coloca também no espaço de disparidades, sendo a quantidade estimada diretamente, e fica mais fácil trabalhar com distribuições ou erros nessa quantidade.

surtur
fonte