gpt4 book ai didi

android - 如何近似给定点之间的距离?

转载 作者:行者123 更新时间:2023-11-29 01:55:00 25 4
gpt4 key购买 nike

我的值 P1、P2、P3、P4 带有屏幕点 (x,y) 和经度、纬度。除此之外,我还有一个摄像头(带有纬度、经度)、摄像头高度(1.6 米(常数))和摄像头方向(方位角、俯仰角、横滚角)。我还有相机的水平视角和垂直视角:)

现在我想为 PX(lat,long) 计算显示器上的估计位置(如果它可见)。 Following Problem

对于给定的 PX(lat,long),如何获得 P(?,?)? (图中的紫色点)这似乎是可能的,因为我知道我的相机的角度并且我有所有四个顶点。但我不知道如何解决这个问题。

我需要一个基于这四个顶点的函数,它可以将 (lat,long) 转换为 (screenX, screenY)。

我有一个公式,可以将 (screenX, screenY) 转换为 (lat,long),但我无法反转此公式。所以,如果除了顶点之外还需要其他点,我可以计算它们(但我不能简单地对屏幕上的每个像素使用这个公式......那将是每 100 毫秒调用一百万次方法......)

最佳答案

所以我可能已经在您的其他主题的评论中回答了这个问题,但最简单的方法是:忽略屏幕边缘的 GPS 坐标 - 通常将所有内容转换为相机原点的坐标空间,并确定其他物体的位置使用短距离条件良好的方法获得 GPS 坐标之间的相对距离,像 Haversine 公式

获取投影中心与要显示的对象之间的相对方位。

您可以确定轴的视角。您可以确定虚拟对象与投影中心(相机指向的方向)在两个轴上的相对方位。你知道你的屏幕分辨率。

如果 Alpha 是您视角的一半(对于给定角度),而 Beta 是您的投影中心与您要在屏幕上找到的对象之间的相对方位角,则屏幕上的点大约为

tan(beta)/tan(alpha) *(该轴半个屏幕中的像素数)

显然,您需要添加逻辑来捕获屏幕外的投影,无论是投影中心的左侧还是右侧,以及您身后是否有物体(投影本身不考虑 z 距离)。

关于android - 如何近似给定点之间的距离?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15729688/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com