Mapa de Disparidade Denso
- mirella melo
- 17 de mar. de 2024
- 6 min de leitura
Em determinadas aplicações, a informação de profundidade da cena de forma densa é essencial, como na reconstrução detalhada de ambientes para simulações realistas, em mapas de elevação para planejamento urbano, na agricultura para otimização do uso de recursos e monitoramento detalhado de culturas, em realidade virtual para proporcionar imersão total, entre outros.
Considerando que o nosso sensor para reconstruir tridimensionalmente uma cena seja uma câmera estéreo, é preciso calcular um valor de profundidade para cada pixel da imagem, resultando no chamado mapa de disparidade denso. Como mostrado na Figura 4, este cálculo pode ser realizado a partir de métodos locais, globais ou semi-globais.
Métodos locais avaliam a similaridade entre pixels através de informação pontual ou dos arredores do pixel. Usualmente são alternativas mais rápidas, porém mais susceptíveis à resultados ruidosos e imprecisos. Por outro lado, os de métodos globais atribuem os valores de disparidade considerando a informação de toda a imagem. Seus resultados são mais precisos, no entanto, dependem de diversas iterações, aumentando sua complexidade computacional e consumo de tempo, podendo levar de segundos a minutos [1]. Essas duas abordagens podem ser associadas para formar algoritmos de método semi-global, onde existe tanto uma etapa com estratégia local como global. A tabela abaixo sumariza as principais características mencionadas acima.
Método | Descrição | Vantagens | Desvantagens |
Locais | Avaliam a similaridade entre pixels usando informações pontuais ou dos arredores do pixel. | Rápidos e eficientes em termos de processamento. | Mais suscetíveis a ruídos e imprecisões, especialmente em áreas de textura uniforme ou bordas. |
Globais | Consideram a informação de toda a imagem para atribuir valores de disparidade. | Resultados mais precisos devido à consideração da cena como um todo. | Alta complexidade computacional e maior tempo de processamento. |
Semi-Globais | Combinam aspectos dos métodos locais e globais. | Bom equilíbrio entre precisão e eficiência. | Complexidade intermediária; pode não ser tão rápido quanto métodos locais. |
Tabela 1: principais vantagens e desvantagens de cada um dos métodos. Fonte: Autora.
Etapas da correspondência estéreo
Para entender melhor o processo de correspondência estéreo, tomaremos como base a taxonomia proposta por Scharstein e Szeliski [2], que classifica as etapas de um algoritmo de correspondência estéreo, seja ele local, global ou semi-global. É importante ressaltar que as etapas não são parte obrigatórias de todas as técnicas propostas. São elas:
Cálculo de custos de correspondência;
Agregação dos custos;
Cálculo da disparidade;
Aperfeiçoamento da disparidade.
Para uma melhor compreensão, uma técnica de aquisição do mapa de disparidade, a soma da diferença absoluta (Sum of Absolute Differences (SAD)) , será ilustrada juntamente com a descrição de cada classificação.
1. Cálculo de Custos de Correspondência
O custo indica quão semelhante ou diferente são dois pixels entre si. Seus valores provêm da chamada função de custo, onde numa função de assimilaridade, quanto menor o seu valor, maior o indicativo de semelhança. Seguindo com o exemplo da técnica SAD, esta utiliza como critério de semelhança a intensidade do pixel (representada em escala de cinza na Figura 1). A Equação 1 ilustra a função de custo conhecida como diferença absoluta (AD), onde 𝐼 representa o valor da intensidade do pixel em questão. Esta equação, em conjunto com a Figura 1, mostra que determinado pixel 𝑝(𝑖, 𝑗) na imagem-base 𝐵(𝑖, 𝑗) é comparado com outros 𝑁𝑑 pixels da imagem-correspondente 𝑀 (𝑖, 𝑗), onde 𝑁𝑑 representa a faixa de disparidade da busca, que neste caso, é igual à cinco. Repetindo esse processo para cada 𝑁𝑑 pixels de 𝐵(𝑖, 𝑗), é gerada uma matriz tridimensional de custos 𝐶(𝑖, 𝑗, 𝑑), com dimensões de altura e comprimento da imagem, e o valor da faixa de disparidade.

Figura 1: Par de imagens esquerda e direita; A matriz de custo tridimensional é preenchida a partir da função de custo adotada e da comparação de 𝑁𝑑 pixels. Fonte: autora [3]

(1)
2. Agregação dos Custos
Após a obtenção de uma primeira matriz de custo 𝐶(𝑖, 𝑗, 𝑑), a etapa de agregação
representa a forma com que esses custos vão ser interpretados e transformados em novos
dados. A Figura 2 ilustra como a técnica SAD faz esse processo, onde o cálculo de uma
iteração é mostrado. A agregação é feita somando os custos dentro de janelas de tamanho
fixo (exemplificadas pelos quadrados com borda em vermelho), repetindo o processo em cada camada de 𝑑 da matriz 𝐶. Com a repetição desse processo para cada valor de custo da matriz 𝐶(𝑖, 𝑗, 𝑑) uma nova matriz, a de agregação de custos 𝐴(𝑖, 𝑗, 𝑑), é formada.

Figura 2: Ilustração de como a matriz de agregação é formada considerando a técnica SAD. Fonte: autora [3].
É importante ressaltar que algoritmos de abordagens globais usualmente não apresentam
esta etapa, substituindo-a por um procedimento de minimização de custo global, detalhada
na Seção 1.5.3, que leva em consideração todo o mapa de disparidade.
3. Cálculo da Disparidade
A etapa do cálculo de disparidade, no que diz respeito às estratégias locais, são executa-
das tomando a disparidade associada ao valor mínimo (ou máximo para função de similaridade) do vetor 𝐴(𝑖, 𝑗, 𝑘) 𝑘=1,2...𝑁𝑑 . Dessa forma, apenas o valor 𝑘 de disparidade é variado, como representado na Equação 2.

(2)
A Figura 3 traz uma representação visual dessa etapa, e é importante observar que a
matriz de custo envolvida nesse processo depende da técnica adotada, podendo ser a matriz inicial ou de agregação. Considerando a técnica SAD, a ilustração refere-se a matriz de agregação de custos 𝐴(𝑖, 𝑗, 𝑑). O resultado é uma imagem 2D em escala de cinza, isto é, o mapa de disparidade. Nele, quanto maior o valor de disparidade, mais escuro é o pixel.

Figura 3: Ilustração de como o mapa de disparidade é formado a partir da matriz de custos
inicial ou de agregação e de uma função de assimilaridade. Fonte: autora [3].
Abordagens de métodos globais executam essa etapa através de diversas iterações em
busca de uma minimização da função de custo global que leva em conta toda a imagem.
Tal função possui um termo de energia dos dados e outro de suavidade, como apresentado
na Equação 3, onde 𝜆 é um parâmetro de entrada que equilibra a influência dos fatores e
define o grau de suavização do mapa de forma que quanto menor este valor, mais suavizado
é o resultado. Esta Equação 3 é iterada até o momento em que se encontra o menor valor da função de energia global.

(3)
O fator de energia de dados, apresentada na Equação 4, mede quão bem está a
atribuição das disparidades. Quanto menor seu valor, melhor. 𝐼𝐵 denota todos os pixels da
imagem-base e 𝐶(𝑝, 𝑝' ) é a função de custo que relaciona um pixel 𝑝(𝑖, 𝑗) da imagem-base
e 𝑝'(𝑖, 𝑗 − 𝑑) 𝑑=0,1...𝑁𝑑 −1 da imagem-correspondente. Esse cálculo, por exemplo, poderia ser realizado pela função AD, de diferença absoluta dos valores de intensidade.

(4)
O fator de energia de suavização parte do pressuposto que uma superfície não apresenta
descontinuidades bruscas, de forma que a equação relacionada ao fator 𝐸𝑠𝑢𝑎𝑣𝑖𝑑𝑎𝑑𝑒(𝑑) penaliza disparidades abruptas entre os pixels vizinhos, denominados por 𝑝 e 𝑞 na Equação 5; 𝑁 denota todos os pares de pixels vizinhos na imagem-base. A função 𝑠() atribui uma penalidade se a disparidade de 𝑝 for (muito ou pouco) diferente daquela de 𝑞. Dessa forma, a penalidade resulta no aumento de energia de suavidade.

(5)
A influência da energia de dados e de suavidade pode ser observada pela Figura 4.
Os mapas de disparidade são resultados de diferentes configurações de 𝜆 na Equação 3.
É possível pontuar que, se definirmos 𝜆 = 0, ou seja, desconsiderar o termo de suavidade, o
resultado do método global se resume a um método puramente local.

Figure 4: Resultado do mapa de disparidade para valores crescentes do termo 𝜆 da Equação 3. Fonte: [4].
4. Aperfeiçoamento da Disparidade
A etapa de aperfeiçoamento do mapa de disparidade (Disparity refinement) é adotada
como forma me melhorar o resultado preliminar. A maioria dos métodos de refinamento segue o esquema de detecção das possíveis falhas, e seu respectivo preenchimento, seguido por uma etapa de filtragem [5]. Existe uma vasta gama de trabalhos que contemplam e exploram esta etapa, como exemplificado em [6].
As falhas são causadas por situações que dificultam a correta associação dos pixels, por
exemplo, a diferença de iluminação entre os frames, chamada de diferenças radiométricas. Isto porque mesmo câmeras do mesmo modelo apresentam diferenças sutis, desde a lente até os sensores sensíveis a luz. O trabalho [7] traz uma avaliação detalhada de como esse fator pode impactar os resultados. Outro desafio é causado por regiões de baixa textura, dessa forma, a correspondência sofre com a ambiguidade. A lista de desafios também inclui estruturas repetidas, isto é, a repetição de um padrão; objetos translúcidos ou transparentes; regiões de oclusão, ou seja, quando uma parte da cena é visualizada por uma imagem e não é pela outra; e descontinuidades abruptas e profundas. A Figura 5 mostra o mapa de disparidade gerado a partir da técnica local SAD com janela de tamanho 3×3. Nela é possível visualizar os resultados ruidosos devido à baixa textura, da descontinuidade abrupta, e da repetição de padrão.

Figure 5: Imagem esquerda seguida do mapa de disparidade o qual é resultante da técnica
SAD com janela de tamanho 3×3. Dificuldades encontradas, como baixa textura,
são destacadas no mapa. Fonte: [4].
Referências
[1] Lazaros, Nalpantidis, Georgios Christou Sirakoulis, and Antonios Gasteratos. "Review of stereo vision algorithms: from software to hardware." International Journal of Optomechatronics 2.4 (2008): 435-462.
[2] Scharstein, Daniel, and Richard Szeliski. "A taxonomy and evaluation of dense two-frame stereo correspondence algorithms." International journal of computer vision 47 (2002): 7-42.
[3] MELO, Mirella Santos Pessoa de. Mapeamento de região navegável a partir de um sistema SLAM e segmentação de imagem. MS thesis. Universidade Federal de Pernambuco, 2021.
[4] Bleyer, Michael, and Christian Breiteneder. "Stereo matching—State-of-the-art and research challenges." Advanced topics in computer vision (2013): 143-179.
[5] Yan, Tingman, et al. "Segment-based disparity refinement with occlusion handling for stereo matching." IEEE Transactions on Image Processing 28.8 (2019): 3885-3897.
[6] Hamzah, Rostam Affendi, and Haidi Ibrahim. "Literature survey on stereo vision disparity map algorithms." Journal of Sensors 2016.1 (2016): 8742920.
[7] Hirschmuller, Heiko, and Daniel Scharstein. "Evaluation of stereo matching costs on images with radiometric differences." IEEE transactions on pattern analysis and machine intelligence 31.9 (2008): 1582-1599.
Comments