【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

地图加加的使用经验、技巧以及问题处置等,和其它喜欢地图加加的朋友一起说说地图加加的酸甜苦辣咸。

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby crazyq » 2014-08-22 4:10

Zax wrote:
crazyq wrote:请问Google Maps (SPHERE RADIUS 6378) 和 WGS84两个datum实际上是不是一样的?


虽然我们对GM软件的了解不多,但是这两个基准应该是不同的:

Google/Bing/Open Street等地图使用的投影基准虽然也基于WGS84的,但采用的椭球参数(半径)并不一致。这种投影被称为Web墨卡托投影,是将标准墨卡托的“椭球”视为半径恒定的“正球”,得到的投影。该投影对应EPSG编号为3857(以前也又被称为900913)。在GM中,选择投影为:Mercator,基准为: Google Map,才能准确描述这种投影转换,您也可以在GM中直接输入EPSG编号3857来输入。

GM中:
WGS84 基准采用的椭球(地球)为:长轴:6378137.000,短轴:6356752.314,扁率:298.2572236
Google Map 基准采用的椭球(地球)为:长轴 = 短轴 = 6378137.000,为一个正球

GM中如果选:Mercator + WGS84基准,对应的应该是标准Mercator投影,而不是Web墨卡托哦。
选Lat/Lng + WGS84 对应标准经纬度投影。

不过,在校准时,如果您已经定死了4角坐标,图片区域又比较小,则WGS84和Google Map基准的差别可能肉眼无法分辨,区域越大,或者说校准点间的距离越大,差别越明细。您可以试试将一张区域较大的地球只按4个角进行校准,通过设置透明度,就可以比较他们在“被理解为”不同基准或投影下,对应的坐标差异了。



谢谢详细解释!明白了。
User avatar
crazyq
★★
 
Posts: 5
Joined: 2014-07-21 9:08

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby crazyq » 2014-08-22 4:12

另外想请教一下,天地图经纬度投影版,用的datum是WGS84还是google map?坐标系统是火星坐标吗?天地图的墨卡托投影版是正常地球坐标。
User avatar
crazyq
★★
 
Posts: 5
Joined: 2014-07-21 9:08

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby Zax » 2014-08-23 1:41

crazyq wrote:另外想请教一下,天地图经纬度投影版,用的datum是WGS84还是google map?坐标系统是火星坐标吗?天地图的墨卡托投影版是正常地球坐标。


天地图经纬度投影使用的投影应该为:Geographic(Latitude/Longitude)投影 + WGS84 基准 (ESPG编号为:4326)。如果您有一张图片是从经纬度投影的天地图截图获得,则在GM中校准导入时,就应该选这个投影,才能保证校准点之间的内部区域被正确拉伸。

不过,测试发现,GM的在线地图源(采用%x, %y, %z配置的Google系)无法直接使用上面的投影和基准来显示,这应该是因为:虽然投影和基准正确,但是GM在线地图还需要从x,y,z到经纬度的换算才能下载图片,而天地图的经纬度投影版实际已经采用与标准Google地图不一致的“x,y,z到经纬度”的转换算法,如果按照标准算法,天地图经纬度版整个显示都会到北半球。所以也就无法正确显示了。这个应该可以通过自定义基准,或者选择别的某个基准来解决,不过由于我们目前对GM也不太熟悉,这个只能留待大家自行探索了。

2014-9-3 更正:
上面的描述有误,最新的天地图经纬度版已经使用我国最新的坐标系,即中国2000坐标系统,ESPG编号4490,投影算法仍然是经纬度直投。这样的投影目前无法在GM中通过瓦片方式加载,即%x,%y,%z或者WMTS,但是可以用WMS方式正确加载。
Zax Zeng
Duwei Technology
User avatar
Zax
★★★★★
 
Posts: 1172
Joined: 2011-07-27 0:54

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby crazyq » 2014-08-23 2:44

Zax wrote:
crazyq wrote:另外想请教一下,天地图经纬度投影版,用的datum是WGS84还是google map?坐标系统是火星坐标吗?天地图的墨卡托投影版是正常地球坐标。


天地图经纬度投影使用的投影应该为:Geographic(Latitude/Longitude)投影 + WGS84 基准 (ESPG编号为:4326)。如果您有一张图片是从经纬度投影的天地图截图获得,则在GM中校准导入时,就应该选这个投影,才能保证校准点之间的内部区域被正确拉伸。

不过,测试发现,GM的在线地图源(采用%x, %y, %z配置的Google系)无法直接使用上面的投影和基准来显示,这应该是因为:虽然投影和基准正确,但是GM在线地图还需要从x,y,z到经纬度的换算才能下载图片,而天地图的经纬度投影版实际已经采用与标准Google地图不一致的“x,y,z到经纬度”的转换算法,如果按照标准算法,天地图经纬度版整个显示都会到北半球。所以也就无法正确显示了。这个应该可以通过自定义基准,或者选择别的某个基准来解决,不过由于我们目前对GM也不太熟悉,这个只能留待大家自行探索了。


谢谢详细解释!我也研究了下,觉得是不是可以这样理解:
天地图经纬度投影的投影方式是经纬度投影,使用的参考椭球体可能是WGS84(也有可能是其他,如果datum是北京54或者西安80,那么参考椭球体是不是就应该是Krassovsky椭球体或者IAG 75椭球体),但是坐标值虽然不是火星坐标,但是使用的datum不是WGS84,而是北京54或者西安80,而北京54和西安80到WGS84的转换系数我国一直没有公开,所以没有很好的方法进行转换。
投影方式,参考椭球体,datum,这几个东西关系一直不太搞的明白,网上搜到的文章也解释的不太清楚。希望大师能解释一下。
User avatar
crazyq
★★
 
Posts: 5
Joined: 2014-07-21 9:08

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby Zax » 2014-08-23 3:50

crazyq wrote:谢谢详细解释!我也研究了下,觉得是不是可以这样理解:
天地图经纬度投影的投影方式是经纬度投影,使用的参考椭球体可能是WGS84(也有可能是其他,如果datum是北京54或者西安80,那么参考椭球体是不是就应该是Krassovsky椭球体或者IAG 75椭球体),但是坐标值虽然不是火星坐标,但是使用的datum不是WGS84,而是北京54或者西安80,而北京54和西安80到WGS84的转换系数我国一直没有公开,所以没有很好的方法进行转换。
投影方式,参考椭球体,datum,这几个东西关系一直不太搞的明白,网上搜到的文章也解释的不太清楚。希望大师能解释一下。


说实话,我们也是刚刚才开始接触基准等概念,还没有深入研究过具体的计算逻辑,对这方面的知识也是一知半解。(地图加加目前支持的投影切换还只是停留几个固定投影下坐标差异,目前还不支持任意投影和基准的自由转换)

根据我们目前浅薄的认识,大致理解为:投影就是计算公式,基准则是公式使用的参数(或者说投影前对坐标的预处理),而椭球则是基准参数的一部分,基准的参数除了包含椭球信息,还包含对坐标的平移、放缩、旋转等,当然:椭球信息和平移放缩等参数不是独立的,椭球半径和投影中心不同,则基准对应的放缩和平移就会不同。虽然不知道上面的理解是否准确,不过大体过程应该差不多。

关于天地图经纬度投影版,其无法在GM中作为在线地图显示的一个主要原因,并不是基准的问题,而是GM对在线地图支持的问题:

虽然GM有强大的转换能力,但是目前支持的在线地图源能力有限,只支持使用标准x,y,z的在线地图或者WMS(使用bbox)的地图。对于使用x,y,z的地图,您可以理解为GM首先按照x,y,z下载每张瓦片图片,然后根据某种规则计算x,y,z对应图片(瓦片)的4角坐标,最后根据地图设置的原生投影和基准(WGS84或者Xian 1980)对图片(瓦片)内部进行校准,注意,上面提到的某种规则是固定的,对xyz地图,目前GM只支持2套规则,分别对应Web墨卡托和Flat投影,就是在创建地图源时选择原生投影时对应的2个投影选项)。

而问题关键就出在天地图经纬度版即使用了Google标准的x,y,z来划分瓦片,但是x,y,z计算每个瓦片图片的4角坐标的逻辑又和Google标准x,y,z不同。而目前GM创建的在线地图源支持的x,y,z的计算规则只有2种,都和天地图的不同,也就无法正确显示了。

个人觉得,一旦地图源创建,再修改地图基准也可能无法解决这个问题,因为此时基准是改变每个瓦片内部的校准,对xyz瓦片对应的4角位置没有影响。这个估计只有等GM推出更高级的地图源定义方式才能解决:例如采用类似MOBAC的Beanshell,或者地图加加的LUA脚本,由用户定义x,y,z到瓦片的4角坐标的计算,才能实现经纬度版天地图在GM中正确显示。
Zax Zeng
Duwei Technology
User avatar
Zax
★★★★★
 
Posts: 1172
Joined: 2011-07-27 0:54

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby crazyq » 2014-08-23 4:52

Zax wrote:
crazyq wrote:谢谢详细解释!我也研究了下,觉得是不是可以这样理解:
天地图经纬度投影的投影方式是经纬度投影,使用的参考椭球体可能是WGS84(也有可能是其他,如果datum是北京54或者西安80,那么参考椭球体是不是就应该是Krassovsky椭球体或者IAG 75椭球体),但是坐标值虽然不是火星坐标,但是使用的datum不是WGS84,而是北京54或者西安80,而北京54和西安80到WGS84的转换系数我国一直没有公开,所以没有很好的方法进行转换。
投影方式,参考椭球体,datum,这几个东西关系一直不太搞的明白,网上搜到的文章也解释的不太清楚。希望大师能解释一下。


说实话,我们也是刚刚才开始接触基准等概念,还没有深入研究过具体的计算逻辑,对这方面的知识也是一知半解。(地图加加目前支持的投影切换还只是停留几个固定投影下坐标差异,目前还不支持任意投影和基准的自由转换)

根据我们目前浅薄的认识,大致理解为:投影就是计算公式,基准则是公式使用的参数(或者说投影前对坐标的预处理),而椭球则是基准参数的一部分,基准的参数除了包含椭球信息,还包含对坐标的平移、放缩、旋转等,当然:椭球信息和平移放缩等参数不是独立的,椭球半径和投影中心不同,则基准对应的放缩和平移就会不同。虽然不知道上面的理解是否准确,不过大体过程应该差不多。

关于天地图经纬度投影版,其无法在GM中作为在线地图显示的一个主要原因,并不是基准的问题,而是GM对在线地图支持的问题:

虽然GM有强大的转换能力,但是目前支持的在线地图源能力有限,只支持使用标准x,y,z的在线地图或者WMS(使用bbox)的地图。对于使用x,y,z的地图,您可以理解为GM首先按照x,y,z下载每张瓦片图片,然后根据某种规则计算x,y,z对应图片(瓦片)的4角坐标,最后根据地图设置的原生投影和基准(WGS84或者Xian 1980)对图片(瓦片)内部进行校准,注意,上面提到的某种规则是固定的,对xyz地图,目前GM只支持2套规则,分别对应Web墨卡托和Flat投影,就是在创建地图源时选择原生投影时对应的2个投影选项)。

而问题关键就出在天地图经纬度版即使用了Google标准的x,y,z来划分瓦片,但是x,y,z计算每个瓦片图片的4角坐标的逻辑又和Google标准x,y,z不同。而目前GM创建的在线地图源支持的x,y,z的计算规则只有2种,都和天地图的不同,也就无法正确显示了。

个人觉得,一旦地图源创建,再修改地图基准也可能无法解决这个问题,因为此时基准是改变每个瓦片内部的校准,对xyz瓦片对应的4角位置没有影响。这个估计只有等GM推出更高级的地图源定义方式才能解决:例如采用类似MOBAC的Beanshell,或者地图加加的LUA脚本,由用户定义x,y,z到瓦片的4角坐标的计算,才能实现经纬度版天地图在GM中正确显示。


谢谢解释!我也再去研究研究。另外发现GM 15.2支持WMTS的在线图源,但是我加入天地图的WMTS图源后,不论是墨卡托投影还是经纬度投影,都不能正常打开,报错误什么无法确定image type。而天地图的wmts图源我在mobac里可以正常使用。
天地图wmts图源网址:http://www.tianditu.com/guide/index.html
从天地图wmts服务GetCapabilities请求返回的信息来看,墨卡托版使用的投影确实是web墨卡托,但是经纬度版使用的EPSG:4990,不知道是什么。
User avatar
crazyq
★★
 
Posts: 5
Joined: 2014-07-21 9:08

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby Zax » 2014-08-23 9:32

crazyq wrote:谢谢解释!我也再去研究研究。另外发现GM 15.2支持WMTS的在线图源,但是我加入天地图的WMTS图源后,不论是墨卡托投影还是经纬度投影,都不能正常打开,报错误什么无法确定image type。而天地图的wmts图源我在mobac里可以正常使用。
天地图wmts图源网址:http://www.tianditu.com/guide/index.html
从天地图wmts服务GetCapabilities请求返回的信息来看,墨卡托版使用的投影确实是web墨卡托,但是经纬度版使用的EPSG:4990,不知道是什么。


天地图的WMTS无法用一方面是因为图片格式的设置GM无法支持。XML中图片格式配置为<Format>Tiles</Format>,而不是像其它WMTS一样是一个图片的格式,如<Format>image/png</Format>,或者image/png8,image/png24等,所以无法下载。另外就是如果使用了不支持的ESPG,如4990,也会造成无法直接下载的,此时会提示手工输入投影和基准。

对于经纬度投影的天地图,确实如您所说,使用的是EPSG:4990,这个又称为“中国地理坐标系统2000”,或者“国家2000坐标系”,见:http://epsg.io/4490,基准和4326不一样,不是WGS84,而是GRS80,对应的椭球为:CGCS2000。不过这个ESPG编号在目前GM中不能直接以EPSG数字设置。
Zax Zeng
Duwei Technology
User avatar
Zax
★★★★★
 
Posts: 1172
Joined: 2011-07-27 0:54

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby jiulin » 2014-08-27 9:27

版主你好,你发的谷歌影像和文字层对应不起,应该有一个是没纠偏的,一个是纠偏了的。
User avatar
jiulin
★★
 
Posts: 17
Joined: 2014-04-11 5:58

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby Zax » 2014-08-27 13:08

jiulin wrote:版主你好,你发的谷歌影像和文字层对应不起,应该有一个是没纠偏的,一个是纠偏了的。


确认下您用的是http://mt0.google.cn,不是http://mt0.google.com.

.com连接的是海外的google,不稳定,需要VPN,但是是不偏移的。
.cn连接中国服务器,速度快,但是是偏移的。(不过单纯的卫星地图,有时会偏移,有时不偏移,暂时不清楚规则)

如果您同时需要卫星加文字,试试下面这个混合图源:
http://mt1.google.cn/vt/lyrs=s@999,h@90 ... src=app&x=%x&y=%y&z=%z&s=Galileo
刚刚测试了下,这个目前是偏移的!
Zax Zeng
Duwei Technology
User avatar
Zax
★★★★★
 
Posts: 1172
Joined: 2011-07-27 0:54

Re: 【教程】如何使用Global Mapper 转换纸质地图或图片为标准地图

Postby jiulin » 2014-09-01 1:24

版主你好,好像还是不能匹配,麻烦帮忙解决一下。谢谢。
User avatar
jiulin
★★
 
Posts: 17
Joined: 2014-04-11 5:58

PreviousNext

Return to 地图加加 - 官方论坛

cron