Processe imagem estereoscópica para converter de 3D para 2D

7

Gostaria de saber se é possível tirar uma imagem estereoscópica e resumi-la de tal maneira que a torne uma imagem monoscópica, com o ponto de vista resultante no centro de onde os dois pontos de vista estão realmente.

Por exemplo, se eu tivesse duas câmeras separadas por um metro e meio, cada uma tiraria uma imagem de um sujeito a um metro e meio de distância ao mesmo tempo, poderia tirar as imagens resultantes, processá-las e fazer com que a imagem resultante aparecesse como se estivesse tirada de uma terceira câmera colocada no centro das duas externas?

Existem ferramentas para esse tipo de interpolação? Lembro-me de algumas cenas na filmagem de Matrix, onde eles conversaram sobre o preenchimento de quadros de rotação, e foram necessárias apenas 4 ou 5 câmeras para lidar com as filmagens. (Para ser justo, também me lembro da parte em que eles tinham uma série de câmeras, cada uma fotografando uma imagem.)

Isso é possível? Se sim, quais ferramentas você usaria para fazer isso?

Brad
fonte
Parece no tópico para mim. Tomei a liberdade de remover a autodepreciação. Bem-vindo ao photo.SE!
Reid

Respostas:

9

Provavelmente, na maioria dos casos, é possível reconstruir uma imagem que pareça convincente, mas não é possível recriar o que é realmente visto de um ponto entre os pontos de vista.

Tomemos, por exemplo, uma imagem que é tirada bem na frente de uma cerca de madeira, onde os dois pontos de vista estão no meio de um painel para que ambos vejam apenas o painel. Um ponto de vista intermediário veria entre os painéis:

    ^
    |
--- | ---
 o  x  o

Obviamente, não é possível recriar o que é visto entre os painéis nas duas imagens do painel.

Na maioria das fotos, haveria certos ângulos que não eram vistos de nenhum ponto de vista, mas teriam sido vistos de um ponto de vista no meio. Uma ferramenta que criaria uma imagem monoscópica teria que adivinhar o que poderia ter sido visto.

Guffa
fonte
4

Confira Piku Piku .

Até onde eu sei, eles usam algo como fluxo óptico para encontrar pixels correspondentes nas duas imagens, depois usam as informações de profundidade para fazer uma exibição interpolada, com uma simples estimativa do vizinho mais próximo dos pixels ausentes. Ele funciona muito bem em imagens estereoscópicas com as quais eu tentei e fornece um efeito aprimorado sobre a estereoscopia de manobra . Você pode ver os pixels preenchidos e alguns erros neste exemplo .

Em geral, isso é chamado de interpolação de exibição .

tim_hutton
fonte
+1 para fluxo óptico. Outra possibilidade é o excelente plugin Foundry Kronos para o After Effects. A licença custa menos de US $ 1 por dia para alugar.
precisa
1

Em muitos desses casos, como na cerca de madeira de Guffa, é impossível. Em alguns outros casos, como um foco infinitamente distante, é trivial. Para tudo, é realmente muito difícil. Existem peças de software para fazer isso, incluindo o firmware no Kinect. O truque é que você precisa capturar as duas vistas e usá-las para produzir um modelo 3d do mundo na frente da câmera e depois produzir uma visão desse mundo a partir do ponto desejado.

Com alguns dos projetos atuais do Kinect, você pode mover o ponto de vista virtual arbitrariamente, olhando a cena de cima ou de lado. Quanto mais você se afastar das câmeras, mais informações não estarão disponíveis e, portanto, haverá mais lacunas na imagem resultante.

Sparr
fonte
Muito interessante. Eu não tinha ideia de que o Kinect poderia fazer isso. Fiquei com a impressão de que, ao gravar imagens ou vídeos, ele simplesmente usaria uma câmera e que o uso das duas câmeras era estritamente para o cálculo dos aspectos 3D. Muito interessante ...
Brad
Você só consegue vídeo de uma câmera por vez, mas pode alternar entre elas. Então você obtém dois modelos diferentes do mundo, quase em concordância, nos quais basear sua projeção final.
Sparr
Eu me pergunto se eles usam as tecnologias desenvolvidas pela Microsoft Research para Photosynth para isso ...
Rowland Shaw