matlab经纬度坐标与高斯坐标的转换(proj4)-5

北京54,西安80,wgs84坐标都是是大地坐标,也就是我们通常所说的经纬度坐标,但是它们基于的椭球体不同,我国当前的基本比例尺地形图都是基于北京54和西安80的,而GPS接受的定位数据是基于WGS84的。

UTM投影坐标

UTM是一种投影坐标,是将球面经纬度坐标经过投影算法转换成的平面坐标,即通常所说的XY坐标.

WGS-84坐标系

WGS-84坐标系(World Geodetic System)是一种国际上采用的地心坐标系。坐标原点为地球质心,其地心空间直角坐标系的Z轴指向国际时间局(BIH)1984.0定义的协议地极(CTP)方向,X轴指向BIH1984.0的协议子午面和CTP赤道的交点,Y轴与Z轴、X轴垂直构成右手坐标系,称为1984年世界大地坐标系。这是一个国际协议地球参考 系统 (ITRS),是目前国际上统一采用的大地坐标系。 GPS 广播星历是以WGS-84坐标系为根据的。
WGS84坐标系,长轴6378137.000m,短轴6356752.314,扁率1/298.257223563。

转换参数

由于采用的椭球基准不一样,并且由于投影的局限性,使的全国各地并不存在一至的转换参数。对于这种转换由于量较大,有条件的话,一般都采用GPS联测已知点,应用GPS 软件 自动完成坐标的转换。当然若条件不许可,且有足够的重合点,也可以进行人工解算。

 

利用Matlab进行地理坐标和直角坐标相互转换

Matlab版本:(R2017b)

这里需要用到的命令有:maps, defaultm, projfwd, projinv

1,  查看有哪些地图投影方式:

运行maps查看有哪些投影方式

>> maps

MapTools Projections

地图工具投影
类名ID字符串
圆柱形巴尔萨沙特圆柱壳
圆柱形贝尔曼圆柱贝尔曼
柱状大黄阿特拉斯MiRA*BSAM
柱面布劳恩透视圆柱*布劳恩
圆柱形卡西尼圆柱标准筒
圆柱形卡西尼圆柱卡西尼
圆柱形中心圆柱
圆柱形等面积圆柱壳
圆柱等距圆柱形EQDCILIN
圆柱形五边形等值线
圆柱形正投影GOORO
圆柱形全景立体图
圆柱形朗伯圆柱拉姆克林
圆柱墨卡托圆柱墨卡托
圆柱形铣床圆柱铣床
圆柱形板
圆柱横墨卡托
Cylindrical Trystan Edwards柱形三角形
圆柱形通用横向墨卡托(UTM)UTM
圆柱形润湿圆柱
假瓢虫
伪圆柱形夹心碰撞
假圆柱形岩纹抛物线岩
Pseudocylindrical Eckert I*ECKTT1
Pseudocylindrical Eckert II EcKTT2
伪圆柱埃克特Ⅲ*ECKTT3
伪圆柱埃克特ⅣECKTT4
伪圆柱埃克特V*ECKTT5
伪圆柱埃克特ⅥECKTT6
伪圆柱形平极抛物线扁钢
伪圆心平极四次平坦
伪圆柱平极极正弦平片
伪圆柱形富尼尔四倍体
假柱状古鳕
假圆柱哈塔诺对称等面积哈塔诺
伪圆柱形KavaRISKY V KAVRSky5
伪圆柱形KavaRISKY VI KAVRSky6
Pseudocylindrical Loximuthal *洛西姆
Pseudocylindrical Modified Sinusoidal(蒂索)*莫迪辛
Pseudocylindrical Mollweide莫尔维德
假柱状紫杉醇P5*PtTNS5
伪圆柱四次自反四次方
伪圆柱鲁滨孙*鲁滨孙
伪圆柱正弦正弦曲线
伪圆柱瓦格纳ⅣWAGELN4
Pseudocylindrical Winkel·I·温克尔
圆锥等面积圆锥(阿尔伯斯)-标准EQACONICSTD
圆锥等面积圆锥(阿尔伯斯)方程
圆锥等距圆锥标准EQDCONICSTD
圆锥等距圆锥曲线
圆锥-朗伯共形圆锥标准LabBurtSTD
圆锥型朗伯共形圆锥朗伯
圆锥默多克I圆锥
圆锥默多克Ⅲ最小误差二次曲线MurdoCH3
多圆锥多圆锥标准多面体
多圆锥多圆锥聚变
多圆锥Van Dr.GruttNⅠVGRIT1
假性圆锥骨
伪圆锥沃纳沃纳
方位共振谐波平均值
方位等面积方位角
方位等距方位角
方位地球仪
方位角
方位正投影仪

CLASS                 NAME                                ID STRING        

Cylindrical           Balthasart Cylindrical              balthsrt        

Cylindrical           Behrmann Cylindrical                behrmann        

Cylindrical           Bolshoi Sovietskii Atlas Mira*      bsam            

Cylindrical           Braun Perspective Cylindrical*      braun           

Cylindrical           Cassini Cylindrical-Standard        cassinistd      

Cylindrical           Cassini Cylindrical                 cassini         

Cylindrical           Central Cylindrical*                ccylin          

Cylindrical           Equal Area Cylindrical              eqacylin        

Cylindrical           Equidistant Cylindrical             eqdcylin        

Cylindrical           Gall Isographic                     giso            

Cylindrical           Gall Orthographic                   gortho          

Cylindrical           Gall Stereographic*                 gstereo         

Cylindrical           Lambert Cylindrical                 lambcyln        

Cylindrical           Mercator Cylindrical                mercator        

Cylindrical           Miller Cylindrical*                 miller          

Cylindrical           Plate Carree                        pcarree         

Cylindrical           Transverse Mercator                 tranmerc        

Cylindrical           Trystan Edwards Cylindrical         trystan         

Cylindrical           Universal Transverse Mercator (UTM)    utm             

Cylindrical           Wetch Cylindrical*                  wetch           

Pseudocylindrical     Apianus II*                         apianus         

Pseudocylindrical     Collignon                           collig          

Pseudocylindrical     Craster Parabolic                   craster         

Pseudocylindrical     Eckert I*                           eckert1         

Pseudocylindrical     Eckert II                           eckert2         

Pseudocylindrical     Eckert III*                         eckert3         

Pseudocylindrical     Eckert IV                           eckert4         

Pseudocylindrical     Eckert V*                           eckert5         

Pseudocylindrical     Eckert VI                           eckert6         

Pseudocylindrical     Flat-Polar Parabolic                flatplrp        

Pseudocylindrical     Flat-Polar Quartic                  flatplrq        

Pseudocylindrical     Flat-Polar Sinusoidal               flatplrs        

Pseudocylindrical     Fournier                            fournier         

Pseudocylindrical     Goode Homolosine                    goode           

Pseudocylindrical     Hatano Assymmetrical Equal Area     hatano          

Pseudocylindrical     Kavraisky V                         kavrsky5        

Pseudocylindrical     Kavraisky VI                        kavrsky6        

Pseudocylindrical     Loximuthal*                         loximuth        

Pseudocylindrical     Modified Sinusoidal (Tissot)*       modsine         

Pseudocylindrical     Mollweide                           mollweid        

Pseudocylindrical     Putnins P5*                         putnins5        

Pseudocylindrical     Quartic Authalic                    quartic         

Pseudocylindrical     Robinson*                           robinson        

Pseudocylindrical     Sinusoidal                          sinusoid        

Pseudocylindrical     Wagner IV                           wagner4         

Pseudocylindrical     Winkel I*                           winkel          

Conic                 Equal Area Conic (Albers)-Standard    eqaconicstd     

Conic                 Equal Area Conic (Albers)           eqaconic        

Conic                 Equidistant Conic-Standard          eqdconicstd     

Conic                 Equidistant Conic                   eqdconic        

Conic                 Lambert Conformal Conic-Standard    lambertstd      

Conic                 Lambert Conformal Conic             lambert         

Conic                 Murdoch I Conic*                    murdoch1        

Conic                 Murdoch III Minimum Error Conic*    murdoch3        

PolyConic             Polyconic-Standard                  polyconstd      

PolyConic             Polyconic                           polycon         

PolyConic             Van Der Grinten I*                  vgrint1         

PseudoConic           Bonne                               bonne           

PseudoConic           Werner                              werner          

Azimuthal             Breusing Harmonic Mean*             breusing        

Azimuthal             Equal Area Azimuthal (Lambert)      eqaazim         

Azimuthal             Equidistant Azimuthal*              eqdazim         

Azimuthal             Globe                               globe            

Azimuthal             Gnomonic*                           gnomonic        

Azimuthal             Orthographic*                       ortho           

Azimuthal             Stereographic                       stereo          

Azimuthal             Universal Polar Stereographic       ups             

Azimuthal             Vertical Perspective*               vperspec        

Pseudoazimuthal       Wiechel Equal Area*                 wiechel         

Modified Azimuthal    Aitoff*                             aitoff          

Modified Azimuthal    Briesemeister*                      bries           

Modified Azimuthal    Hammer*                             hammer         

* Denotes availability for sphere only

2,  定义投影结构

这里对mercator投影结构进行定义,然后对mstruct进行补全

>>mstruct=defaultm('mercator');

%定义椭球体长轴,椭率,坐标原点

>>mstruct.geoid=[ 6378137          ,0.0818191908426215];

>>mstruct.origin=[0,0,0];

>>mstruct=defaultm(mstruct);

3,  进行投影和数据转换

地理坐标投影到直角坐标:

>>[x,y] =projfwd(mstruct,lat,lon);

projfwd - Forward map projection using PROJ.4 map projection library

    This MATLAB function returns the x and y map coordinates from the forward
    projection transformation.

    [x,y] = projfwd(proj,lat,lon)

 

直角坐标投影到地理坐标:

>>[lat,lon]=projinv(mstruct,x,y);

projinv - Inverse map projection using PROJ.4 map projection library

    This MATLAB function returns the latitude and longitude values from the inverse
    projection transformation.

    [lat,lon] = projinv(proj,x,y)

 

projlist - Map projections supported by projfwd and projinv

    This MATLAB function displays a table of projection names, IDs, and
    availability.

    projlist(listmode)
    S = projlist(listmode)

 

GPS的输出一般为经纬度坐标,如:北纬(N)41度30分5秒, 东经(E)114度10分30秒。
UTM(Universal Transverse Mercator)坐标是一个投影坐标系,将地球分为60个区,单位为m。
二者的转换可以利用商业软件,如Global Mapper等。下面给出了经纬度转UTM的matlab程序。

    转换公式:(只针对北半球,中国地区计算方法)
matlab经纬度坐标与高斯坐标的转换(proj4)-5_第1张图片

    Matlab 程序:
    matlab经纬度坐标与高斯坐标的转换(proj4)-5_第2张图片

    运行结果:单位为km
    matlab经纬度坐标与高斯坐标的转换(proj4)-5_第3张图片

Global Mapper结果对比:
matlab经纬度坐标与高斯坐标的转换(proj4)-5_第4张图片
结果与商业软件在毫米位上保持一致,验证程序的有效性。

你可能感兴趣的:(GIS)