织田裕二 只能爱老人:ENVI里自定义高斯投影(北京 54 坐标与西安80坐标)
来源:百度文库 编辑:偶看新闻 时间:2024/04/26 21:51:18
ENVI里自定义高斯投影(北京 54 坐标与西安80坐标)
地理投影的基本原理
常用到的地图坐标系有2种,即地理坐标系和投影坐标系。
地理坐标系是以经纬度为单位的地球坐标系统,地理坐标系中有2个重要部分,即地球椭球体(spheroid)和大地基准面(datum)。由于地球表面的不规则性,它不能用数学公式来表达,也就无法实施运算,所以必须找一个形状和大小都很接近地球的椭球体来代替地球,这个椭球体被称为地球椭球体,我国常用的椭球体如下:
椭球体名称
年代
长半轴(米)
短半轴(米)
扁率
WGS84
1984
6378137.0
6356752.3
1:298.257
克拉索夫斯基(Krasovsky)
1940
6378245.0
6356863.0
1:298.3
IAG-75
1975
6378140.0
6356755.3
1:298.257
表1 我国常用椭球体
大地基准面指目前参考椭球与WGS84参考椭球间的相对位置关系(3个平移,3个旋转,1个缩放),可以用其中3个、4个或者7个参数来描述它们之间的关系,每个椭球体都对应一个或多个大地基准面。
投影坐标系是利用一定的数学法则把地球表面上的经纬线网表示到平面上,属于平面坐标系。数学法则指的是投影类型,目前我国普遍采用的是高斯——克吕格投影,在英美国家称为横轴墨卡托投影(Transverse Mercator)。高斯克吕格投影的中央经线和赤道为互相垂直,分带标准分为3度带和6度带。美国编制世界各地军用地图和地球资源卫星像片所采用的全球横轴墨卡托投影(UTM)是横轴墨卡托投影的一种变型。高斯克吕格投影的中央经线长度比等于1,UTM投影规定中央经线长度比为0.9996。
我国规定1:1万、1:2.5万、1:5万、1:10万、1:25万、1:50万比例尺地形图,均采用高斯克吕格投影。1:2.5至1:50万比例尺地形图采用经差6度分带,1:1和1:2.5万比例尺地形图采用经差3度分带。
2 北京54与西安80坐标系
先了解大地坐标的概念。
大地坐标,在地面上建立一系列相连接的三角形,量取一段精确的距离作为起算边,在这个边的两端点,采用天文观测的方法确定其点位(经度、纬度和方位角),用精密测角仪器测定各三角形的角值,根据起算边的边长和点位,就可以推算出其他各点的坐标。这样推算出的坐标,称为大地坐标。
我国1954年在北京设立了大地坐标原点,由此计算出来的各大地控制点的坐标,称为1954年北京坐标系。为了适应大地测量的发展,我国于1978年采用国际大地测量协会推荐的IAG-75地球椭球体建立了我国新的大地坐标系,并在1986年宣布在陕西省泾阳县设立了新的大地坐标原点,由此计算出来的各大地控制点坐标,称为1980年大地坐标系。
我们经常给影像投影时用到的北京54或者西安80坐标系是投影直角坐标系,如下表所示为北京54和西安80坐标系采用的主要参数,
坐标名称
投影类型
椭球体
基准面
北京54
Gauss Kruger(Transverse Mercator)
Krasovsky
北京54
西安80
Gauss Kruger(Transverse Mercator)
IAG75
西安80
表2 我国常用坐标系参数列表
从中可以看到我们通常称谓的北京54坐标系、西安80坐标系实际上指的是我国的两个大地基准面。
3 参数的获取
对于地理坐标,只需要确定两个参数,即椭球体和大地基准面。对于投影坐标,投影类型为Gauss Kruger(Transverse Mercator),除了确定椭球体和大地基准面外,还需要确定中央经线。
大地基准面的确定关键是确定7个参数(或者其中几个参数),北京54基准面可以用三个平移参数来确定,即“-12,-113,-41,0,0,0,0”,很多软件近似为Krasovsky(0,0,0,0,0,0,0)基准面;西安80的7参数比较特殊,各个区域不一样。一般有两个途径:一是直接从测绘部门获取;二是根据三个以上具有西安80坐标系与其他坐标系的同名点坐标值,利用软件来推算,有一些绿色软件具有这个功能,如Coord MG。
中央经线获取可有以下两种方法,第一种根据已知带号计算,6度带用6*N-3,3度带用3*N;
1 、 找到 ENVI 安 装 目 录 下 相 应 的 坐 标 系 存 储 文 档 , 如“C:\RSI\IDL63\products\envi43\map_proj\datum.txt” ,并打开。
2、将以下描述语句添加在文档最后一行: “Beijing-54, Krassovsky, -12, -113, -41” ,其中“Beijing-54”是新坐标的名称; “Krassovsky”是它所使用的椭球体名称; “-12, -113, -41”是新坐标系与WGS-84坐标系的坐标差。
3、将修改后的文档保存,关闭。
4、重新启动ENVI。新的坐标系添加成功。
二、自定义高斯-克吕格(Kauss Kruger)投影
具体方法和步骤如下:
1.选择 Map> Customize Map Projection,或在任何地图投影选择对话框中,
点击“New”按钮。
2、当出现 Customized Map Projection Definition 对话框时,假设为定义高斯投影的13带,13带的中央经度为75度,具体设置参数如下(上图所示):
Projection name :GK Zone 13(Beijing-54)
Projection Type:Transverse Mercator
Projection Datum:Beijing-54
False easting:500000
False northing:0
Latitude of projection origin: 0
Latitude of projection origin: 0
Longitude of central meridian: 75
Scale factor:1
3.选择 Projection > Add New Projection 将投影添加到 ENVI 所用的投影列表中。
4.存储新的或更改过的投影信息,选择 File > Save Projections。选择 File > Cancel 退出该功能。
(西安80)
ENVI中的坐标定义文件存放在HOME\ITT\IDL70\products\envi45\map_proj 文件夹下,三个文件记录了坐标信息:
ellipse.txt 椭球体参数文件
datum.txt 基准面参数文件
map_proj.txt 坐标系参数文件
在ENVI中自定义坐标系分三步:定义椭球体、基准面和定义坐标参数
第一步、添加椭球体
语法为 <椭球体名称>,<长半轴>,<短半轴>。这里将“Krasovsky,6378245.0,6356863.0”和“IAG-75,6378140.0,6356755.3”加入ellipse.txt末端。
注:ellipse.txt文件中已经有了克拉索夫斯基椭球,由于翻译原因,这里的英文名称是Krassovsky,为了让其他软件平台识别,这里新建一个Krasovsky椭球体。
第二步、添加基准面 语法为<基准面名称>,<椭球体名称>,<平移三参数>。这里将“Beijing-54, Krasovsky, -12, -113, -41”和“Xi'an-80,IAG-75,0,0,0”加入ellipse.txt末端。
注:有的时候为了与其他软件平台兼容,基准面的名称直接写成所用的椭球体名称。
第三步、定义坐标
在ENVI任何用到投影坐标的功能模块中都可以新建坐标系(在任何地图投影选择对话框中,点击“New”按钮。),这里我们选择Map->Customize Map Projection,如图1所示,将相应的参数添加,这里添加的参数如图1所示。
注:投影类型选择Transverse Mercator,Scale factor填写0.9996,与Gauss-Kruger等同。False easting中如果把带号,即39500000,得到的坐标就带有带号。
图1自定义坐标系
选择Projection->Add New Projection,
将投影添加到 ENVI 所用的投影列表中。选择 File > Save Projections,存储新的或更改过的投影信息。这样一个新的投影坐标就新建完成。
打开map_proj.txt,可以看到新建的坐标信息已经自动加入