TrailCam

指南

怎么把 GPX 文件转换成 KML

GPX 和 KML 远看有点像——都是 XML,都描述地图上的坐标——但两者来自完全不同的背景,一个格式的文件不会自动变成另一个格式能读的样子。什么时候真的需要转换、怎么操作,转换过程中又会丢掉什么,下面逐一说明。

简单说

最快的办法是用 GPS Visualizer、gpx2kml 这类免费在线转换工具:上传 GPX,下载回来的就是 KML。如果不想把自己的路线传到别人的服务器上,GPSBabel 能在自己电脑上完成同样的转换,QGIS 也可以把 GPX 当成一个图层打开,再点几下菜单导出成 KML。

动手转换之前,先确认一下是不是真的需要。Google Earth Pro 可以直接打开 GPX 文件,完全不用转换。真正必须用 KML 的是 Google 我的地图——用来做可分享的自定义地图的网页工具——它接受 KML、KMZ、GeoJSON,或者带坐标的表格文件,但不接受 GPX。

为什么会有两种格式

GPX 是为 GPS 设备设计的

GPX(GPS Exchange Format)的设计目标,是让 GPS 接收器、手表、手机之间能把轨迹、路线、路径点传给任何其他设备或软件,走的是「最小公约数」路线:坐标、海拔、时间戳、名称,故意保持精简,完全不管这些数据在屏幕上要怎么呈现。

KML 是为 Google Earth 设计的

KML(Keyhole Markup Language)这个名字来自 Google 当年收购来打造 Earth 的那家公司,它不只描述地点在哪里,还描述要怎么呈现:图标样式、标记的颜色、镜头视角、分好层的文件夹结构。这也是为什么用到 Google Earth 或我的地图下游的工具,往往一开口就要 KML。

转换后什么会留下,什么会丢

GPX 的轨迹转成 KML 的 LineString,线条的形状基本能完整保留——走过的那条路,转换前后看起来应该是一样的。但转换之后有两件事值得核对一下:

  • 每个点的时间戳:普通的 KML LineString 没有存单点时间的字段,简单粗暴的转换会把带时间戳的轨迹压成一条没有时间信息的静态线。有些转换工具会改用 gx:Track 这个扩展,专门保留每个点的时间——如果回放速度对你重要,值得检查一下输出文件里有没有 gx:Track 这个标签。
  • 海拔:两种格式都支持每个点带一个数值海拔,大多数转换工具会把它带过去,但转换后随手挑几个点比对一下,比直接假设它没问题更稳妥。
  • 路径点和轨迹点转过去之后,分别变成 KML 里独立的标记和线条顶点,这跟 GPX 本身路径点、轨迹点的区分是同一回事,只是换了个形式。

这不代表转换不可靠,只是目标格式不需要的信息,转换工具没有义务硬塞进去。把原始的 GPX 当成"到底发生了什么"的记录留着,转换出来的 KML 当成为某个特定用途做的展示版本。

什么时候真的会用到

实际场景里,需要转换的理由基本都是 Google 我的地图:想把路线分享给不用 GPS App 的人,想把地图嵌进网站,或者想把几条路线加上自定义图钉和颜色,分层整理在一起。我的地图能顺利读进 KML,还提供了 GPX 本来就没打算支持的样式设置。

如果目的地不是 Google 系的工具,而是 Strava、Garmin Connect、Komoot、Gaia GPS、CalTopo 这类地图或记录平台,那就保持 GPX 格式就好。它们都能原生读取 GPX,转成 KML 再转回来只会多一道手续,还可能丢掉计算配速和移动时间所必需的时间戳。

TrailCam 导出的是什么

TrailCam 用 GPS 记录路线,单条路线或者整段历史都能导出成 GPX 1.1,也能导出 CSV 汇总。真要用到 KML 的场合,需要转换的就是这份 GPX 文件;同时它也是各家地图和记录平台都能直接读取、不用任何转换的格式,适合作为长期保存的那一份。App 免费下载。

常见问题

Google Earth 一定要用 KML 才能打开吗?
不一定。Google Earth Pro 可以直接打开 GPX 文件。只有用到明确要求 KML 的工具时才需要转换,最常见的就是 Google 我的地图。
GPX 转成 KML,时间戳会保留吗?
不一定都会。转成普通的 KML LineString,通常会丢掉每个点的时间戳。有些转换工具会用 gx:Track 这个扩展来保留它,如果回放的时间节奏对你重要,转换后检查一下输出文件比较保险。
KML 文件能再转回 GPX 吗?
可以,同样的工具一般都支持双向转换。反过来转的时候有类似的问题:标记样式这类 KML 特有的信息,GPX 里没有对应的字段,不会被带过去。

记录你自己的轨迹

TrailCam 是一款 iPhone 上的 GPS 轨迹记录 App,会把沿途拍的视频、照片和语音钉在你拍下它的那个位置,并支持导出成 GPX 1.1 或 CSV。免费下载。

在 App Store 下载