Google街景:获取街景数据的其他方式

时间:2016-04-11 15:16:26

标签: google-street-view

我一直试图从谷歌街景中获取数据已有一段时间了。出于研究目的,我需要能够估计某个特定地图位置的天空区域。这就是我需要估算球形视图的原因,我认为使用谷歌街景是一个好主意。我真正需要的是一个3d方向,我应该能够分辨出这个方向上像素的颜色。

我提出的是以下内容。我正在使用Google Street View Image API下载6个图像以将它们用作立方体纹理(特别是我提交了6个带参数的查询:

(heading, pitch) = {(0, 0), (90, 0), (180, 0), (270, 0), (0, 90), (0, -90)}

当我将这6个图像映射到一个立方体时,我得到的是以下内容:

corner example

问题是似乎存在一些数值误差和角落不匹配。我知道如何解决它,但复杂性增长了很多。

我还查看了JavaScript API,但无法找到从那里访问数据的方法。在官方指南页面上提到了UV映射

enter image description here

但似乎这仅针对用户生成的内容。

我错过了什么吗?有没有其他方法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

基本上你想做谷歌已经在做的事情,但你需要它的3d表示。

使用以下方法(并不容易),您可以获得更好的结果但不完美。基本理论是:

  1. 获取图像列表(6个或更多,有些使用8; 6个用于水平视图,2个用于顶部和底部)。
  2. 使用优先方法拼接图像,您可以找到拼接图像的帮助here
  3. 缝合后,您将得到一张图片,这将是您的纹理
  4. 构造3D形状(球体,六边形或圆柱体)
  5. 将纹理应用于3D形状
  6. 继续尝试:a)图像下载。 b)拼接。 c)纹理映射。为了获得更好的结果
  7. 这是(可能)谷歌跟随的过程,以便您可以在他们的服务中看到360视图,并且您需要做同样的事情来获得代码中的3D表示,但它不会是完美的,因为它你得到的图像不是谷歌拍摄的原始图像(这使得拼接更难)。

    了解更多信息herehere