Matrix ECEF到现场坐标的转换矩阵

Matrix ECEF到现场坐标的转换矩阵,matrix,geospatial,linear-algebra,Matrix,Geospatial,Linear Algebra,我获得了具有以下参数的现场坐标系统: 投影类型(通常为横向墨卡托) 椭球体/基准面(通常为GRS80/GDA94) 中央子午线 中心比例因子 假东距 伪北距 然后需要以编程方式将大量点从ECEF转换为场地坐标系,因此理想情况下我希望使用变换矩阵 Wikipedia给出了该变换矩阵的公式: 但是,如何根据我给出的站点地图参数计算该公式所需的参数?进行此转换的通常方法是首先将ECEF转换为大地坐标(纬度、经度、高度),然后将其转换为地图坐标(北距、东距、高度)。每个变换都是非线性的。但是,如果

我获得了具有以下参数的现场坐标系统:

  • 投影类型(通常为横向墨卡托)
  • 椭球体/基准面(通常为GRS80/GDA94)
  • 中央子午线
  • 中心比例因子
  • 假东距
  • 伪北距
然后需要以编程方式将大量点从ECEF转换为场地坐标系,因此理想情况下我希望使用变换矩阵

Wikipedia给出了该变换矩阵的公式:


但是,如何根据我给出的站点地图参数计算该公式所需的参数?

进行此转换的通常方法是首先将ECEF转换为大地坐标(纬度、经度、高度),然后将其转换为地图坐标(北距、东距、高度)。每个变换都是非线性的。但是,如果场地不太大且精度要求不太严格,则可以在场地周边的几十个(比如)点上执行上述变换,然后使用这些点和原始点找到一个仿射变换,该变换最接近ECEF坐标的地图坐标

我对此进行了一些研究,似乎可以获得相当准确的东距和北距(例如,在半径为10km的圆圈内,场地上方几厘米,场地上方20米的高度变化;但如果高度变化为200m,则准确度将降至2分米),在高度上不可能达到甚至相当的精度——在本例中,高度误差可能约为8米。这是不可避免的,因为场地坐标中的恒定高度线将接近圆弧,如果计算长度为20km的圆弧和半径为地球半径的圆的弦距圆弧的最大距离,则得到~16m