-
网络地图影像下载与拼接研究
-
以天地图为例<
/p>
路立伟
1
李
斌
2
(
p>
1
河北省地质测绘院,廊坊
065000
,2
中国科学院对地观测与数字地球科学中心,北京
100094
)
摘
要
本文以网络地图天地图为例,分析其金字塔影像的组织规则和
网络发布方式,在
Visual
C++6.0
平台上设计开发了其金字塔影像下载软件,其主要功能包括根据图片坐标与经纬度的换算实
现按经纬度确定所要下载的区域范围,使用线程技术实现选定范围内某个缩放级别相关影像下载。
p>
对下载下来的地图瓦片影像,借助开源的
GDAL
< br>库编程实现了高清影像的无缝拼接,并通过
mapeasy
实现了脱机条件下的地图无缝漫游。最后对下载和拼接程序的优化加速提出了解决建议。
关键词
天地图;金字塔影像;
下载与拼接;
GDAL
;
mapeas
y
;
Study of downloading and merging images
of map on
Internet
-taking
Tianditu for example
Lu
Liwei
1
,
Li
Bin
2
(
1 Hebei
Institute of geological surveying and mapping,
Langfang 065000, 2 Center for earth
observation and digital earth Chinese
academy of sciences, Beijing
100094
)
Abstract
:
This
paper analyzed the structure and release method
via Internet of pyramid images provided by
Tianditu, developed a software on
Visual C++6.0 platform to download pyramid images,
the main functions
include
determining
the
downloading
area
according
to
the
conversion
between
picture
coordinates
and
longitude
and
latitude,
and
downloading
certain
bounding
and
level
images
by
thread
technique;
then
realized high
resolution images merging without gap or overlap
by open source library GDAL, and roaming
on
offline
condition
by
mapeasy,
finally
some
suggestions
on
accelerating
the
speed
of
downloading
and
merging were put forward.
Key
words
:
Tianditu, pyramid
images, downloading and merging, GDAL,mapeasy
1
研究背景
如今建设地理信息服务的大
潮正在涌起,各种网络地图服务如雨后春笋般出现。天地
图作为国家测绘地理信息局的官
方监制门户网站,其国内的地图影像数据更新较其他国内
门户网站更快,现势性更好,其
免费提供的地理信息资源对地质测绘工作者的生产活动,
诸如野外测绘、地图修测、路线
选定等提供相当大的便利。
目前网络上的地图资源十分丰富,
但大部分生产单位的地质和测绘工作者对于网络地
图影像图的组织及发布方式不了解,从
而不能充分的利用这些优秀的地图资源。
大多数工作者对于网
络地图的使用依旧停留在简单的拷屏裁接上,这样制作的影像图
不能很好的实现无缝拼接
,而且耗时耗力。例如有的测绘工作者在
AutoCAD
绘图软
件中
,
按照截图区域绘制好图廓和公里格网
,
再逐张将截图插入到正确的位置
[1]
,
拼接成完整的图
像。
Google
提供了
GetScreen
软件进行拼接,但其拼接原理是基于拷屏的,需要保持屏幕实
时显示影像。虽
然也有一些其他比较成熟的影像下载软件,但是需要购买,给大家的使用
带来了不便。<
/p>
本文设计开发了下载和拼接天地图影像数据的相关程序软件,采
用先下载瓦片影像,
然后对其进行物理拼接的方式,可以转入后台进行拼接处理,克服了
上述局限性。并通过
实验数据进行了检验分析,此软件足以满足生产、科研工作者的用图
要求。
2
研究数据
天地图拥有多种地图形式可
供选择,包括矢量图、影像图、地形图、三维图。由于影
像图信息丰富,形象直观,故本
文以影像图的下载作为研究对象。
天地图根据用户需要将地图不同比例尺进行分割、存储与显示
,
形成比例尺由小到大、
数据量由小到大的金字塔形结构
,
以便于用户对栅格图像能够按照相应的算法进行管理、读
取、显示,等等
[2]
。天地图金字塔影像四叉树
结构如下图所示:
图
1
影像四叉树结构
天地图定义了图片坐标系,坐标系的原点在西经
180
度,北纬
90
度,即是原来墨卡托
投影坐标系的左上角,坐标系横轴往东为正,纵轴往南为正。天地图满足横纵比例
< br>x:y=2:1
。
其中每幅图
对应一个图片坐标(行列号与缩放级别)
,这个坐标可以通过网络下载中的
缓存信息中查看。例如第一张图片的服务器地址为:
/
DataServer?T =
sbsm
1518&X=0&Y
=0&L=1
。相关参数的意义如下:
sbsm1518
表示服务器名;
p>
X
、
Y
、
L
分别为图片的
X<
/p>
、
Y
坐标和对应的缩放级别。
3
研究方法与结果
3.1
网络地图影像的下载
为获取某经纬度图片的网页地址(
URL
)<
/p>
,就需要把经纬度转化为
X
、
Y
坐标
[3]
,每一
p>
层图片的数量是与比例尺相关的,每一层瓦片的数量为
2
(
2n-1
)
;
按此对应关系可以根据某组
经纬度坐标所包含的地理范围反算出相对应的
图片坐标范围。
由于天地图主要服务目标是国内,在此只考虑
中国全境所在半球的经纬度坐标转换为
图片坐标的转换公式:
pic_x=floor
(
m_lon
*
(
pow
(
2,i_zoom
)
)
/360
)
;//
东经
p>
pic_y=floor
(
m_lat*<
/p>
(
pow
(
2,
i_zoom-1
)
)
/180
)
;//
北纬
p>
以北京天安门附近的经纬度范围(
39°54′N
< br>-
39°55′N
,
116°2
3′E
--
116°24′E
)为例,
可以
计算出其第
17
层影像图片坐标范
围为,
X
:
107909-10791
5
,
Y
:
18
234-18240
。
在下载程序中
使用
CHttpFile
向
HTTP<
/p>
服务器中请求和读取影像。因为下载是一个耗
时过程,通常采用启
动线程下载以防止程序
“
假死
”
。
关键代码如下:
for
(
X=
pic_x_1;X<= pic_x_2;X++
)
//
p>
图片行号
for
(
Y=
pic_y_1;Y<= pic_y_2;Y++
)
//
p>
图片列号
{
CString strFile=
sbsm1518&X=<
/p>
服务器地址
CInternetSession sess;
CHttpFile* pHttpFile;
pHttpFile=
(
CHttpFile*
)
L
(
strFile
)
< br>;//
向图片服务器请求读取文
件
}
由于数据不可能存放于一个
服务器上,故有多台服务器提供服务,因此某些地区的影
像服务器并不一致。天地图前<
/p>
12
个级别的影像均可在同一服务器下下载,但同一地区
13
级别以后的影像可能存在多种影像服务器。下载流程图与软件界面见
图
2
。
图层选择
缩放级别选择
下载路径选择
输入经纬度范围
计算图片范围(行列号)
启动线程下载数据
图
2
下载流程图与软件界面
下载的瓦片影
像保存格式为:
X
行号
Y
列号
L
层数。如天安门所在的瓦片为:
X107912Y18238L17
,如此的命名方式是为方便后面的影像拼
接工作。
3.2
网络地图影像的拼接
影像拼接技术的
使用,极大方便了各种用户的需要。如果需要高精度的影像还需进行