Запись GPS треков с телефона на android с последующ загрузкой в OSM

Привет всем!
Я новичок в OSM, начал рисовать места, которые знаю очень хорошо. Теперь хочу ездить и ходить по местам и писать дороги и границы объектов с помощью GPS, а потом сливать их в свой аккаунт, редактировать и вырисовывать на карте.
С помощью каких приложений на андроиде можно записывать и какие есть нюансы в такой работе?
Буду очень благодарен за подробное описание.

Да большинство умеет писать треки. Я вот пользовалася на обычном навигаторе программой, она же есть и для андройда (sas4android). Но имхо треки записанные пешком отстойны. Даже тупо обойдя прямоугольный дом получалось нечно не прямоугольник ни как не похожее. Я даже пробовал границы дома фиксировать переходя через дорогу на противоположную сторону, но тоже расшифровки такое потом плохо поддаётся. Хотя может быть сам навигатор плохой и в телефонах ГПС лучше.

Приложений под Android, умеющих писать треки, очень много, и на мой взгляд, более важное здесь не чем писать (скажем, у меня в телефоне установлено много приложений, умеющих писать треки), а важнее понимать, какие бывают форматы треков, чем они отличаются, чем их сконвертировать из одного в другой, и какой формат нужен для загрузки в то или иное приложение для последующего просмотра.
Все перечисленное приходит с опытом.

А приложения …
Ну, можно для начала взять My Tracks от самого великого и ужасного Google.
Свои собственные требования и предпочтения сформируются со временем, по накоплению опыта.

а мне больше нравится OSMTracker for Android™, в 3 раза меньше объем приложения, чем в My Tracks и заточен именно под OSM, есть даже возможность к треку ставить объекты (POI)

Спасибо! Вот мне и нужно записывать треки в формат необходимый именно для OSM, мне важно загружать их для зарисовывания местностей.

А еще обзаведись фотокамерой или мобильным приложением, которое вместе с фотографией умеет записывать не только координаты по GPS, но и направление (азимут), в котором смотрит объектив. Из фотоаппаратов такое умеет Nikon Coolpix AW100, из софта – пусть публика посоветует. Тогда можно будет весьма точно отмечать выдающиеся здания, трубы, вышки и т. п., снимая это с двух разных точек.

У меня только Nikon D1000 Kit - на нем такое возможно?

Про программы уже сказали. Про форматы - детали можно не знать, если что - gpsbabel, скорее всего, справится.
Главная проблема - дрянной прием у gps, встроенных в телефоны. Если телефон не установлен в держателе под стеклом в машине, а лежит в кармане - снижение точности и полное пропадание определения координат - гарантированы. В идеале, трек (который не только смартфоном записан) должен бы проходить через фильтр gpsbabel, убивающий в нем точки в высоким значением HDOP (OSMTracker пишет это в трек?) и режущий его на сегменты в случае, если между соседними точками интервал более 1 секунды. В таком случае трек будет более или менее адекватен, в противном случае он будет показывать “погоду в Африке”.
Только не надо спорить в духе “у меня смартфон в кармане пишет неплохо” - это полная заведомая чепуха.

Что касается записи координат прямо в EXIF - это можно сделать и потом, путем синхронизации фото и трека (со всеми записанными в него параметрами) по моменту съемки. Или можно купить отдельный даталоггер с gps (и нормальной антенной) и трехосевым (т.е. не зависящим от наклона устройства) компасом, устанавливаемый в “горячий башмак” на камере. Например, такой. D1000, на сколько я понимаю, не поддерживает подключение GPS и запись координат в самой камере, но это не отменяет возможности синхронизации трека и снимков в Geosetter или другой программе.

По поводу записи GPS координат в EXIF атрибуты фотоснимков:
на мой взгляд, если речь идет об использовании фотоснимков только для маппинга в OSM - этим можно вообще не париться ни на секунду.
Редактор JOSM (а какой еще использовать, я извиняюсь? Не Portlach, надеюсь?) отлично раскладывает снимки по карте, привязывая их к временнЫм отметкам в треке.
Иными словами - если параллельно пишется трек любым устройством - то можно щелкать направо и налево любым фотоаппаратом - снимки все равно можно будет привязать к местности, если у них есть дата.
Единственное - если снимаются незнакомые места - рекомендуется сразу выработать условную систему обозначений, в какую сторону от трека сделан снимок - влево или вправо - путем “заваливания” горизонта снимка соответственно. Об этом где-то была популярная статья.

А насчет убогости GPS в смартфонах - в принципе, все сказано правильно, если профессионально писать треки - лучше иметь дополнительно туристический Garmin.
Ну а для того, чтобы поставить точку, или записать небольшой трек неожиданно, без предварительной подготовки - можно и телефоном, конечно.

Для треков неплох OruxMaps, много полезных настроек, например - требуемая точность, Для фото смартфоном Геокам, здесь на форуме гдето подробно, есть тема про софт, ссылки не даю, т. к. пишу с телефона.

С помощью OSMTracker ни разу еще не получилось залить трек на сервер! Проиходится экспортировать и через Osmand скидывать. Ну и там часто возникают странности то с описанием то вообще с кодировкой… Но это я немного поскулил и хватит. Решаемы любые проблемы.
А топикстартеру можно посоветовать вики полистать.

а я перед скидыванием трек на комп скачиваю, всякие левые куски вырезаю где сигнал плохой был или на остановках дерганье трека…

Последнее время пишу треки только OSMAnd-ом, у него есть сервис для фоновой работы, возможность ставить точки в трек, смотреть OSMBugs, итд, итп.

Народ, а этот самый OruxMaps умеет при записи трека добавлять информацию об HDOP, кол-ве спутников и т.д.?
И что для этого надо настроить? А то я собираюсь прикупить новый девайс на андроиде. Взял пока “на пощупать” у соседа планшетик. Но планшетик без GPS. Поэтому и спрашиваю.
Мне на форуме 4pda.ru дали образец трека посмотреть. Так там только широта, долгота и время пишется :frowning:
Руководство читал.

[оффтоп]
Или лучше не выпендриваться и взять автонавигатор на WinCE, а к нему старый добрый ОзиЭксплорер? Да и дешевле выйдет.
[/оффтоп]

dimonster
Андроид воспринимает все указанные параметры, затем переводит в свои величины и переводит обратно. Типа универсальность. Настоящего HDOP в андроиде нет.

Что, даже если зарегистрировать NMEAListener и парсить GGA или GSA ?

NMEA в логи пишет, HDOP-по подобное что-то есть, отличить хреновый трек возможно. Где есть готовый парсер для NMEA ?

Я видел китайский навигатор на Андроиде, который почему-то не выдавал значения высоты (во всех программах на страничках информации о спутниках высота была равна нулю. Ну или какой-то константе, если включить коррекцию высоты по геоиду).
Поэтому и выясняю детали.

В виндовозных навигаторах всё понятно: с приёмника идёт поток NMEA-данных. А дальше уже дело прикладной программы его принять и расшифровать. И что из полученных данных писать или не писать в трек зависит от самой программы и её настроек.

Их множество. Вам для чего конкретно? Если выбросить ненадежные точки по HDOP, то gpsbabel, за одно еще в GPX из NMEA сконвертит. Только надо с консольным работать, а не с GUI.

Китайский навигатор может что угодно. Это не говорит ничего о системе вообще…
Под Андроидом, на сколько я представляю, есть два варианта получения положения: когда данные о координатах от приемника интерпретируются самой операционной системой, а сделанный ею вывод можно получить через API; второй вариант - когда через то же API приложение регистрируется как имеющее доступ к исходному потоку данных в NMEA и слушает уже его.
Если я не прав и кому-то известно, что система лазает в этот поток и модифицирует его, пусть меня поправят.