• 请不要在回答技术问题时复制粘贴 AI 生成的内容
just1
V2EX  ›  程序员

求三点定位算法或者库

  •  
  •   just1 · Nov 28, 2015 via Android · 4893 views
    This topic created in 3825 days ago, the information mentioned may be changed or developed.

    已知三个经纬点及点至目标点的距离,求目标点的经纬度。有这样的算法或者库吗库的话最好要 python

    26 replies    2015-11-28 18:15:18 +08:00
    line
        1
    line  
       Nov 28, 2015
    不就是 GPS 吗?
    zjengjie
        2
    zjengjie  
       Nov 28, 2015
    一个坐标点和半径可以写出一个圆方程,两个圆方程可以解出两个点,判断哪个点到第三个坐标的距离正确就可以了。
    linhua
        3
    linhua  
       Nov 28, 2015
    球面的,还是平面的?经纬点和目标点都在球面上?
    just1
        4
    just1  
    OP
       Nov 28, 2015 via Android
    @linhua 球面,是的
    just1
        5
    just1  
    OP
       Nov 28, 2015 via Android
    @line
    just1
        6
    just1  
    OP
       Nov 28, 2015 via Android
    @zjengjie 感谢,不过有曲面解决办法吗
    firefox12
        7
    firefox12  
       Nov 28, 2015 via iPad
    ..... 2 个圆相交不是 2 个点好吗?
    joshz
        8
    joshz  
       Nov 28, 2015
    没有闭合解是最麻烦的,需要在空间中搜索次优解,很多论文用最大似然法
    cdlxkill
        9
    cdlxkill  
       Nov 28, 2015
    一般都没有闭合解 直接 ls 估计吧
    nevin47
        10
    nevin47  
       Nov 28, 2015
    前段时间做一个比赛的时候写了类似的,不过是两点带速度求相遇的。
    我的处理方法是直接列方程,然后 python 调用 scipy.optimize 求解,初始值设置方向正确的话可以求到解的

    不过球面的话不知道需要多考虑什么问题了
    realpg
        11
    realpg  
    PRO
       Nov 28, 2015
    @just1 已知的那个距离是曲面距离么?
    just1
        12
    just1  
    OP
       Nov 28, 2015 via Android
    @realpg 是的
    shakespaces
        13
    shakespaces  
       Nov 28, 2015
    如果把地球近似看成正球体还是很好算的,就是完全按真实情况的话,地球是椭球就不是那么直观了
    just1
        14
    just1  
    OP
       Nov 28, 2015 via Android
    @shakespaces 正圆就可以,不要求太精确,😍求算法
    shakespaces
        15
    shakespaces  
       Nov 28, 2015
    @just1 我只是说了一下,手头并没有现成的算法。。。
    linhua
        16
    linhua  
       Nov 28, 2015
    经纬度和球坐标系的相互转换比较容易,建议使用球坐标系列方程求解。手算嫌麻烦,可使用 mathematica 软件求解。
    https://zh.wikipedia.org/wiki/%E5%9D%90%E6%A8%99%E7%B3%BB
    realpg
        17
    realpg  
    PRO
       Nov 28, 2015
    @just1
    如果把地球当做正球体,那没太大难度啊
    基本的球坐标系问题
    有一些列基础方程的 可以套
    just1
        18
    just1  
    OP
       Nov 28, 2015 via Android
    @realpg 能给一下相关链接吗 TAT 我学识浅薄 TAT 高一
    just1
        19
    just1  
    OP
       Nov 28, 2015 via Android
    @linhua 能给一下相关链接吗 TAT 我学识浅薄 TAT 高一
    realpg
        20
    realpg  
    PRO
       Nov 28, 2015
    @just1
    高一你研究这玩意干嘛……老老实实上课去……
    just1
        21
    just1  
    OP
       Nov 28, 2015 via Android
    @realpg 高一不会很累,没事就折腾
    imn1
        22
    imn1  
       Nov 28, 2015
    @just1
    先学解析几何再折腾
    just1
        23
    just1  
    OP
       Nov 28, 2015 via Android
    @imn1 估计学完我就没时间折腾了😣
    linhua
        24
    linhua  
       Nov 28, 2015   ❤️ 2
    @just1
    数学专业方面的问题推荐在 Mathematics Stack Exchange 中提问,比较专业,不过你的问题要描述清楚。这个 GPS 定位算法很复杂的。而且通常并不是用软件实现的,而是在 GPS 芯片内部实现的。只是研究者可以通过用算法实现来模拟,像 Software-defined Radio(SDR)(软件定义无线电)一样,这种叫 Software-Defined GNSS Receivers
    可参考:
    https://www.wolfram.com/mathematica/
    http://math.stackexchange.com/
    http://www.cnblogs.com/magicboy110/archive/2010/12/09/1901669.html
    http://gpsworld.com/innovation-python-gnss-receiver/
    https://en.wikipedia.org/wiki/Global_Positioning_System
    http://ocw.mit.edu/courses/earth-atmospheric-and-planetary-sciences/12-540-principles-of-the-global-positioning-system-spring-2012/lecture-notes/
    http://gpsworld.com/software-gnss-receiver-an-answer-for-precise-positioning-research/
    http://gage.upc.edu/forum/gps-data-processing-code-and-phase-algorithms-techniques-and-recipes
    https://en.wikipedia.org/wiki/GNSS_applications
    just1
        26
    just1  
    OP
       Nov 28, 2015 via Android
    @linhua 非常感谢
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1233 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 59ms · UTC 17:38 · PVG 01:38 · LAX 10:38 · JFK 13:38
    ♥ Do have faith in what you're doing.