把一個 GPX 檔案拆成兩條軌跡
有時候一個 GPX 檔案裡裝著的,其實是該當成兩趟外出來看的記錄。上午走完一段路忘了停 App,中間隔了頓飯和幾件事,下午另一趟外出就這麼接著記進了同一個檔案;一趟好幾天的健行沒有一天存一段,而是從頭到尾存成了一個長檔案;或者單純想把一條往返路線看成去、回兩段,而不是一條自己繞回來的線。拆分 GPX 檔案,說穿了就是在點的序列裡挑一處切開,把後面那一段另存成一個新檔案。以下說說具體怎麼做,以及拆分這件事能改變什麼、改變不了什麼。
先講結論
GPX 裡的一條軌跡,是 trk 元素裡一串帶時間戳記、按順序排好的點。把一條拆成兩條,就是挑中間的某一個點,讓第一個檔案的軌跡在這個點結束,再新建第二個檔案,軌跡從這個點往後的所有點開始。座標和時間戳記本身都不變,變的只是它們分在幾個檔案裡。檔案不長的話,用文字編輯器手動拆就夠了;點很多的長檔案,交給專門的工具會更省事。
一個檔案為什麼會需要拆成兩個
最常見的原因是忘了停止記錄。上午一段散步走完了,App 還在繼續跑,中間穿過一頓午飯和幾件雜事,一路跑到下午另一趟完全不相干的外出——兩趟本來毫不相干的活動,中間隔著一大段空白,卻被存進了同一條軌跡裡。
走好幾天的健行則是反過來的情況:不是每天晚上停一次、隔天早上再開始,而是一路記成一個連續的長檔案,走的時候倒也沒什麼問題,但事後如果哪個服務或自己整理記錄時期待一天一個檔案,就會不太好處理。也有人單純就是想把一條往返路線拆成去程和回程兩段來看,而不是一條自己折返的線。
這些情況都不是檔案「出錯」了,只是一次記錄涵蓋的範圍——不管是距離還是時間——事後當成一個整體來用,已經不太合適了。
具體怎麼拆
用專門的 GPS 資料工具
GPX Studio 這類瀏覽器工具,可以把檔案讀進來,在地圖上顯示軌跡,讓你挑一個點把它切開,直接匯出成兩個檔案,不用碰底層的 XML。GPSBabel 是個專門為轉換和處理 GPS 資料設計的免費指令列工具,指定某個點或某個時間點來拆分檔案,一個指令就能搞定。QGIS 也能做同樣的事,作為正經的 GIS 操作,如果拆分是要反覆做的事而不是偶爾一次,用它會更順手。
檔案小的話手動來
GPX 就是純文字,短一點的檔案用文字編輯器就能手動拆。找到要切開的那個軌跡點,把這個點往後的所有內容從第一個檔案裡刪掉,貼進第二個檔案。第二個檔案需要自己重新準備一份和第一個檔案一樣的開頭結構——XML 宣告、gpx 標籤和它的屬性,再加一個新的 trk 和 trkseg 來裝剩下的點。兩個檔案都得有完整、對得上的開始和結束標籤;要是不按點的邊界切,而是直接把 XML 從中間劈成兩半,兩個檔案就都打不開了。
切在哪裡比較合適
最好的切點是一次真正的停留,而不是按點數機械地對半分。如果檔案本身的時間戳記裡已經有個空檔——兩次活動之間的休息,或者原本記錄被中斷留下的分段——那通常就是最自然的切點,因為這樣兩個檔案都不會在尾端拖著一段本來不屬於自己的停留時間。當然也可以在移動過程中間硬切,只是這樣兩段各自都會缺一部分本來要合在一起看才有意義的距離和時間。
拆分能解決什麼,解決不了什麼
拆分解決的是「一個檔案裡裝了兩趟外出」這件事:上傳到服務上以後,看到的會是兩份各自獨立的距離、時間和海拔曲線,而不是一個把不相干的雜事和健行混在一起、或者把往返兩段混成一個數字的合計。
它不會回頭修好每一段裡面本來就有的問題。海拔資料的雜訊、樹林底下飄忽的線、站著不動時 GPS 跳一下——這些點本來是什麼樣,拆完還是什麼樣,只是分到了兩個檔案裡而已。拆分改變的是資料分在幾個檔案裡,不是資料本身的品質。
在副本上操作,原始檔案留著
拆分的時候用檔案的副本,別直接改手上唯一的那一份。標籤閉合的位置搞錯了、第二個檔案的開頭結構沒抄全,這類失誤誰都可能碰上,有沒動過的原始檔案在,重新來一遍就好。
TrailCam 能做什麼
TrailCam 每次開始和停止,都會把這段記錄當成歷史裡獨立的一條存下來,而不是讓不同的外出接續記進同一個還在跑的檔案裡,所以事後要拆分檔案的場景,大多數情況下根本不會出現。它可以把單條軌跡或整段歷史一起匯出,格式是 GPX 1.1 檔案或 CSV 彙總。匯出屬於可選的 TrailCam Pro,App 本身免費下載。
常見問題
- 拆分 GPX 檔案會不會弄丟資料?
- 不會,只要每個點最後都落在某一個檔案裡就行。拆分只是決定一個點歸哪個檔案,座標、海拔和時間戳記本身都不受影響。
- 不裝任何軟體也能拆 GPX 檔案嗎?
- 檔案不長的話可以。它本質就是純文字的 XML,系統內建的文字編輯器就夠用。要是檔案很長、有好幾千個點,用 GPX Studio 這類專門處理 GPS 資料的瀏覽器工具,會比手動拆靠譜得多。
- 拆出來的兩個檔案需要各自取名字嗎?
- 值得給每個檔案裡的 name 都填一個名字,檔名也取得清楚一點,免得上傳到服務上以後,兩條記錄頂著原檔案同一個名字並排出現。不管取什麼名字,都不影響裡面的座標。
記錄你自己的軌跡
TrailCam 是一款 iPhone 上的 GPS 軌跡記錄 App,會把沿途拍下的影片、照片與語音釘在你拍它的那個位置,並支援匯出成 GPX 1.1 或 CSV。免費下載。