2012-03-28 12 views
5

Dada una esfera como esta de google streetview. enter image description hereCómo crear vistas desde un panorama de 360 ​​grados. (como Street View)

si quería crear 4 puntos de vista, vista frontal, vista desde la izquierda, la visión correcta y ver su espalda, ¿cómo puedo hacer las transformaciones necesarias para estrecharán la imagen hacia fuera como si yo estaba viendo en Google Streetview. Observe que la línea verde que dibujé, en la imagen cruda está doblada, pero en la vista de la calle es su estrecho. ¿Cómo puedo hacer esto?

enter image description here

+0

Debe dibujar un diagrama de arriba hacia abajo de la relación entre una línea recta en el mundo real y el campo de visión del panorama. Una geometría relativamente simple te dará esto en forma matemática. –

+0

También podría estar interesado en examinar [costuras de imagen] (http://stackoverflow.com/a/9035758/176769). – karlphillip

+0

No necesito cosido de imagen? Ya tengo el panorama completo. @OliCharlesworth ¿estás diciendo que no puedo hacer esto de forma automática? ¿Cómo lo hace streetview entonces? En cuanto a los datos solicitados de google, obtiene algo que llaman un pano_map y un depth_map. –

Respuesta

3

La imagen streetview es un mapa esférica. La manera en que streetview y Google Earth trabajan es representando la escena como si estuvieras parado en el centro de una esfera gigante. Esta esfera está texturizada con una imagen como en tu pregunta. La longitud en la esfera corresponde a la coordenada x en la textura y la latitud con la coordenada y. Una forma de crear las imágenes que necesita sería renderizar la textura como una esfera como Google Earth y luego tomar una captura de pantalla de todos los lados. Una forma de hacerlo puramente matemático es imaginarse en el centro de un cubo y una esfera al mismo tiempo. Las imágenes que buscas son los lados del cubo. Si desea saber cómo un píxel específico en el mapa del cubo se relaciona con un píxel en el mapa esférico, haga un vector que apunte desde el centro del cubo a ese píxel, y luego vea hacia dónde apunta ese mismo vector en la esfera (latitud & longitud). Estoy seguro de que si busca en la web una conversión de mapa de cubo esférico, podrá encontrar más ejemplos e implementaciones. ¡Buena suerte!

+0

Gracias Paul, supongo que has visto mi correo :) –

+0

¿Tiene sentido sin saber nada sobre la profundidad de la escena? ¿Necesitaría saber el tamaño de la esfera para mapear los datos correctamente? –

+0

No se necesita información detallada, puede usar cualquier tamaño distinto de cero para el cubo y la esfera. Lo único que importa es que la "cámara" está en el centro exacto de ella. Google Earth lo demuestra muy bien. Desde afuera, puedes ver la esfera en la que se proyecta la imagen de la calle. –

Cuestiones relacionadas