ECEF和ENU坐标之间的转换

转载:https://gssc.esa.int/navipedia/index.php/Transformations_between_ECEF_and_ENU_coordinates

0.Coordinate Systems坐标系

http://dirsig.cis.rit.edu/docs/new/coordinates.html

分类:

  • The Scene East-North-Up (Scene ENU) coordinate system
  • The Geodetic (Latitude/Longitude) coordinate system
  • The Universal Transverse Mercator (UTM) coordinate system
  • The Earth-Centered, Earth-Fixed (ECEF) coordinate system

Spherical coordinate system球坐标系(https://en.wikipedia.org/wiki/Spherical_coordinate_system
定义:在数学中,球坐标系是三维空间的坐标系,其中一点的位置由三个数字表示:该点到固定原点的径向距离;从固定的极轴或天顶方向测得的极角;它在经过原点且与固定轴正交的参考平面上的正交投影的方位角,从该平面上的另一个固定参考方向测量。当半径固定时,这两个角坐标在球体上形成一个坐标系。

径向距离也称为半径或径向坐标。极角可称为经度、天顶角、法线角或倾角。极坐标角通常用从参考平面到正Z轴的仰角来代替;俯角是仰角的负值。

在这里插入图片描述
球坐标(r, θ, φ)常用于数学:径向距离r,方位角θ,极角φ。

笛卡尔坐标系转换关系:
在ISO惯例中,点的球坐标(即物理:半径r,倾角θ,方位角φ)可以由其笛卡尔坐标(x, y, z)由公式获得:
在这里插入图片描述

1.定义

ENU coordinates: local East, North, Up coordinate system,在许多瞄准和跟踪应用中,当地的东、北、上(ENU)笛卡尔坐标系远比ECEF或大地坐标更直观和实用。局部ENU坐标是由固定在特定位置的地球表面的切线平面形成的,因此有时被称为“局部切线”或“局部大地”平面。
在这里插入图片描述
Relationships between Geodetic, ECEF and Scene ENU coordinate systems
图片来源:https://en.wikipedia.org/wiki/Local_tangent_plane_coordinates

ECEF coordinates:Earth Centred Earth Fixed coordinate system,以地球为中心、地球固定的坐标系(简称ECEF),也被称为地心坐标系统,是一种笛卡尔空间参考系统,表示地球附近的位置(包括其表面、内部、大气和周围的外层空间),从其质心测量X、Y和Z。它最常见的用途是跟踪卫星的轨道和用于测量地球表面位置的卫星导航系统,但它也用于跟踪地壳运动等应用(https://en.wikipedia.org/wiki/Earth-centered,_Earth-fixed_coordinate_system)。
在这里插入图片描述
图片来源:https://en.wikipedia.org/wiki/Earth-centered,_Earth-fixed_coordinate_system

2.转换

参考:https://gssc.esa.int/navipedia/index.php/Transformations_between_ECEF_and_ENU_coordinates

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ECEF(Earth Centered Earth Fixed)坐标系是基于地球中心和固定于地球自转轴的参考系,主要用于卫星定位、导航、地球物理等领域。ENU(East North Up)坐标系是基于某个参考点的东北地理方向和竖直向的坐标系,主要用于地面测量、车辆导航、机器人等领域。 在Matlab中,可以使用MATLAB toolbox中的函数进行ECEFENU坐标之间转换。常见的函数有ecef2enuenu2ecefecef2enu函数将ECEF坐标系中的点的坐标转换ENU坐标系中的点的坐标enu2ecef函数则将ENU坐标系中的点的坐标转换ECEF坐标系中的点的坐标。 使用ecef2enu函数进行ECEFENU坐标系的转换,需要提供参考点的经纬度信息以及待转换点在ECEF坐标系中的坐标。示例代码如下: lat_ref = 51.5007; %参考点纬度 lon_ref = -0.1246; %参考点经度 alt_ref = 0; %参考点高度 refECEF = lla2ecef([lat_ref, lon_ref, alt_ref]); %将参考点的经纬度和高度转换ECEF坐标系中的坐标 ecef_point = [4255051.2950,-823579.7800,4697553.6326]; %待转换点在ECEF坐标系中的坐标 [xEast,yNorth,zUp] = ecef2enu(ecef_point(1),ecef_point(2),ecef_point(3),lat_ref,lon_ref,alt_ref,wgs84Ellipsoid); %使用ecef2enu函数进行转换 disp([xEast,yNorth,zUp]); %输出转换后的ENU坐标系中的坐标 以上就是使用Matlab中的函数进行ECEF转换ENU的简单示例。需要注意的是,使用这些函数时需要提供正确的参考点信息以及地球椭球体的参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值