Onde posso encontrar um algoritmo para criar anaglyphs 3D usando uma imagem de mapa de profundidade?

8

Estou procurando um algoritmo genérico para calcular um anáglifo vermelho / ciano a partir da imagem original e seu mapa de profundidade em preto e branco, como neste exemplo ?

Esse algoritmo é usado, por exemplo, no Photoshop, mas não consigo encontrar uma explicação legível para reproduzi-lo.

O inesperado
fonte

Respostas:

1

Este documento pode ser útil. Concentra-se em cenas ao ar livre / paisagens. A seguir, um trecho do resumo do artigo:

Este artigo apresenta uma nova técnica não supervisionada com o objetivo de gerar vistas estereoscópicas estimando informações de profundidade a partir de uma única imagem de entrada. Usando uma única imagem de entrada, os pontos / linhas de fuga são extraídos usando algumas heurísticas para gerar um mapa de profundidade aproximado. O mapa de profundidade é então usado para gerar pares estéreo.

Dario Hamidi
fonte
Bem-vindo ao Stack Exchange! Você poderia fornecer um pouco mais do que apenas um link? Em que página está o algoritmo e sua explicação? O PDF também parece bastante pesado (não acessível a todos os usuários visitantes) e não há garantia de que estará disponível em um futuro próximo.
Tamara Wijsman
1
É certo que eu não sei muito sobre o assunto, mas decidiu tentar o Google. O artigo que encontrei parecia chegar bem perto de uma resposta, então compartilhá-lo parecia uma boa ideia #
Dario Hamidi
1

Aqui está uma explicação da mordaça do Photoshop: http://www.threadless.com/profile/433934/elleevee/blog/493381/Threadless

Basicamente, eles estão usando o filtro de deslocamento para empurrar apenas o canal vermelho ou os canais azul + verde de uma imagem para a esquerda ou para a direita. O mapa de altura apenas atenua a distância em que você desloca cada pixel. Eu acredito que o filtro de deslocamento interpola os valores entre os valores, ou seja, se o pixel em (10,0) foi deslocado para a esquerda por 3 pixels e o pixel (11,0) foi deslocado para a esquerda por apenas 1, então os dois pixels em entre os pixels de destino seria interpolado dos dois valores originais em 66% e 33%.

Essa interpolação efetivamente cobre os dados ausentes: se você realmente tivesse dois pontos de vista de sua cena, esses pixels representariam informações ocultas na visualização única. Posso imaginar uma atualização para o método descrito acima, em que algoritmos de reconstrução semelhantes ao preenchimento com reconhecimento de conteúdo do Photoshop poderiam ter uma facada melhor no preenchimento das informações ausentes.

Chris Subagio
fonte