shoorick: (Рыжий)
После покупки минувшей зимой китайфона с встроенным GPS-приёмником, количество сохранённых треков резко выросло: во-первых, телефон я беру с собой гораздо чаще, чем старый потрёпанный навигатор, во-вторых, все программы, которыми я пробовал пользоваться (Navitel Navigator, OsmAnd, OSMTracker) создают кучу файлов: по файлу на каждый запуск программы, в то же время при сливании трека любой длины с железного навигатора получается всего один файл. Если в прошлые годы набиралось около 40 файлов в год, то за 9 месяцев текущего года набралось уже почти 200 файлов.

OpenStreetMap позволяет передавать файлы не по одному, а пачкой — в виде зип-архива, однако перед тем, как отправить файлы на сервер, надо бы их слегка почистить — например, убрать скопления точек возле мест, где часто бываю. Делать такое с каждым файлом — неправильно, правильнее будет объединить файлы, а лишние точки удалять из уже объединённого.

Объединять можно разными путями. Для любителей консоли — gpsbabel, тот самый, который позволяет преобразовывать треки и сливать их с навигатора:
gpsbabel -i gpx -f one.gpx -f two.gpx -f n.gpx -o gpx -F sum.gpx
Понятно, что можно использовать его совместно с другими программами — например, слить воедино все GPX-файлы текущего каталога можно так:
perl -e '@f = <*gpx>; $cmd = "gpsbabel -i gpx -f " . join(" -f ", @f) . " -o gpx -F sum/2012.gpx"; print `$cmd`'
Можно попробовать поискать файлы и с обходом подкаталогов:
find . -type f -name '*gpx' | perl -nle 'push @f, $_; END{$cmd = "gpsbabel -i gpx -f \"" . join("\" -f \"", @f) . "\" -o gpx -F sum/2012-summer.gpx"; print `$cmd`}'
Если в именах файлов есть специальные символы (например, точка с запятой — такое попадается в треках OSMTracker), то имена таких файлов должны быть в кавычках, что и видно на примере.

Для любителей рисовать карты OpenStreetMap — JOSM: им можно открыть несколько треков и объединить (Merge) слои с этими треками.

JOSM можно использовать и для очистки треков от мусора: трек может быть преобразовать в слой данных, после чего становится доступным его редактирование — краткую инструкцию по очистке треков можно найти на http://wiki.openstreetmap.org/wiki/RU:Editing_GPX_Tracks. Viking, хоть и позволяет удалять точки трека, делает сей процесс весьма неудобным: приходится либо удалять точки по одной, либо разбивать трек на мелкие кусочки и удалять те куски, что не нужны. Чистить треки другими программами я не пробовал — мне вполне хватило JOSM.

P. S. Слил треки, почистил — получил 376 тысяч точек общим весом в 33 мегабайта несжатого GPX-файла (меньше 3 МБ в виде зип-архива), залил на сервер — сервер уже больше часа пытается всё это обработать. На трек в 10 тысяч точек обычно хватало одной минуты.

Profile

shoorick: (Default)
shoorick

December 2016

S M T W T F S
    1 23
45678910
11121314151617
18 19 2021222324
25262728293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 13th, 2025 08:23 am
Powered by Dreamwidth Studios