代码之家  ›  专栏  ›  技术社区  ›  Shaunak

谷歌街景中地面像素的高度/高程

  •  7
  • Shaunak  · 技术社区  · 8 年前

    我想在谷歌街景中找到每个像素离地面的高度。

    enter image description here

    我知道可以计算的两件事是:

    1. Pitch of a pixel

    2. Depth map of every pixel from camera

      有一个 javascript library 也要获取深度贴图。

    enter image description here

    有没有可能把这两个因素放在一起计算出一个像素离地面的实际高度?

    1 回复  |  直到 8 年前
        1
  •  4
  •   ted    6 年前

    如果我们知道相机的高度,那么这就变成了一个简单的三角学问题。

    tan(angle) = height-above-camera / depth
    

    所以

    height-above-camera = depth * tan(angle)
    

    如果已知相机离地8英尺,那么我们可以得到像素的实际高度

    height = 8ft + depth * tan(angle)
    

    整个计算取决于深度图的质量。

    您可以利用的另一个方法是假设深度贴图中的块结束于地面。然后对图像执行边缘检测。

    canny edge detection

    在这里,我使用了一个在线 Canny Edge detection 这是在右手边挑出方块的底部。稍微扳动一下就可以得到高度。

    如果允许交互式使用,请让用户单击对象的底部和顶部,这比使用图像处理更好。知道底部点的间距可以计算距离。