OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

#1 2010-08-29 17:23:43

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Определение скоростей дорог по трекам

Zkir wrote:

Да вообще ни разу не проблема. Берётся выборка треков и считается средняя скорость.

Может давай наконец это сделаем? Напишем бота, который рассчитает по имеющимся трекам среднюю скорость для дорог (и запишет ее в скажем avgspeed:calculated).  А то мы пока обсуждаем две ситуации - идеальную,  когда всем ребрам присвоено м.о. скорости потока, и реальную, когда бойцы уже понаставили 5 км/ч, причем от балды (а остальным ребрам приваивается скорость исходя из тега hw=*)

Сделал в первом приближении, пока только на поиграться. smile
Фильтры ещё настроены от фонаря. Треки берутся из осм.

http://code.google.com/p/osm-speed/

Запускать: speed.pl <wayid>

>>  Downloading way 31380892
>>  7 segments
>>  bbox: 30.1580075,59.7989945943181,30.1691993,59.8016048056819
>>  Downloading trackpoints
>>  GPX page 0: 2919 points


Average forward speed:  85.738568
Average backward speed: 69.008075
Average total:          84.767161

712 track segments used

Offline

#2 2010-08-29 17:38:46

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

Сделал в первом приближении, пока только на поиграться.
Фильтры ещё настроены от фонаря. Треки берутся из осм.

Супер, посмотрю.


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#3 2010-08-29 17:56:33

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

Лёш, почему у меня ppm не видит Math::Geometry::Planar? В чем хитрость?


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#4 2010-08-29 17:59:46

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Он кривой, поэтому его надо ставить руками.
Взять отсюда:
http://search.cpan.org/CPAN/authors/id/ … .05.tar.gz
http://search.cpan.org/CPAN/authors/id/ … .17.tar.gz
Распаковать, запустить по-очереди Makefile.pl, nmake, nmake install.

Offline

#5 2010-08-29 18:09:20

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

А куда распаковать, или куда угодно?


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#6 2010-08-29 18:10:08

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Куда угодно

Offline

#7 2010-08-29 18:42:34

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

Этот ваш перл - мировое зло:

NMAKE : fatal error U1073: don't know how to make 'C:\Program'
Stop.

Last edited by Zkir (2010-08-29 18:43:01)


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#8 2010-08-29 18:54:07

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

Лёша, запусти speed.pl 27474958
Посмотрим эту самую развязку.


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#9 2010-08-29 18:56:07

Ilis
Member
From: Екатеринбург
Registered: 2009-05-24
Posts: 5,970

Re: Определение скоростей дорог по трекам

Zkir wrote:

Этот ваш перл - мировое зло:

NMAKE : fatal error U1073: don't know how to make 'C:\Program'
Stop.

Значит не куда угодно распаковывать надо было smile А куда-нибудь без пробелов в путях...

Offline

#10 2010-08-29 19:22:56

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,949

Re: Определение скоростей дорог по трекам

А под Windows x64 nmake не работает. :\

Offline

#11 2010-08-29 19:24:22

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

>>  Downloading way 27474958
>>  12 segments
>>  bbox: 30.1530358,59.7992803817579,30.158446,59.8027235182421
>>  Downloading trackpoints
>>  GPX page 0: 5000 points
>>  GPX page 1: 3322 points


Average forward speed:  44.102280
Average backward speed: 47.588891
Average total:          45.784321

Offline

#12 2010-08-29 19:33:29

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,597

Re: Определение скоростей дорог по трекам

liosha wrote:
>>  Downloading way 27474958
>>  12 segments
>>  bbox: 30.1530358,59.7992803817579,30.158446,59.8027235182421
>>  Downloading trackpoints
>>  GPX page 0: 5000 points
>>  GPX page 1: 3322 points


Average forward speed:  44.102280
Average backward speed: 47.588891
Average total:          45.784321

Интересно, а откуда взялся "backward speed" ? Этот съезд всю жизнь (ему 2 года недавно исполнилось) был односторонним, треки в JOSM вроде только в одном направлении...

Offline

#13 2010-08-29 19:38:01

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

А как в Josm посмотреть направление треков?

Last edited by Zkir (2010-08-29 19:40:37)


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#14 2010-08-29 19:38:14

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Я ж говорю: фильтры ещё не настроены  smile
Скорее всего подцепились треки от основного шоссе, из-за этого скорость завышена.
А backward speed из-за закрученности дороги, сейчас направление нормально определяется только для относительно прямых дорог.

Offline

#15 2010-08-29 19:53:40

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

Вот абсолютно прямой односторонний вей: 53762581 - считается в обоих направлениях.

Вей  34254310 выдает деление на ноль.

>>  Downloading way 34254310
>>  3 segments
>>  bbox: 38.1267569,56.2677333524262,38.1350766,56.2691092475738
>>  Downloading trackpoints
>>  GPX page 0: 357 points

Illegal division by zero at d:\...\speed.pl line 84.

Но идея мне нравится. дайте мне следующую версию на-поиграться smile


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#16 2010-08-29 19:58:39

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,597

Re: Определение скоростей дорог по трекам

Zkir wrote:

А как в Josm посмотреть направление треков?

В настройках отображения GPX-треков можно включить показ стрелочек.

Offline

#17 2010-08-29 23:29:46

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,092

Re: Определение скоростей дорог по трекам

Покурил скрипт smile

1. Поскольку однозначного мапматчинга треков веям не делается, и сегмент трека считается относящимся к вею, если он лежит к нему достаточно близко, то для двухвейных дорог треки в оба направления будут получать оба вея. Если вей односторонний (oneway=yes), то наверно стоит выдавать об этом  предупреждение.

2. По поводу направления и близости - наверно нужно анализировать сегменты вея отдельно, по одному ?


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#18 2010-08-30 05:01:37

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Близость считается для всех сегментов, а направление только относительно первой точки.

А вообще да, использовать для подсчёта сегменты трека - идея не самая лучшая (зато самая простая)  smile
По хорошему нужно выделять проходящие по вею цепочки, и подсчитывать уже их.

Offline

#19 2010-08-30 05:32:06

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Hind wrote:

А под Windows x64 nmake не работает. :\

http://www.microsoft.com/downloads/deta … laylang=en
Вроде есть и для x64

Offline

#20 2010-08-31 08:04:23

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Offline

#21 2010-08-31 08:21:37

dimuzz
Member
From: Екатеринбург
Registered: 2009-09-10
Posts: 1,843

Re: Определение скоростей дорог по трекам

В статье тоже больше вопросов, чем ответов.
А Speedcollector совсем игрушка - пользователи руками должны вносить скорость в базу smile

Offline

#22 2010-08-31 08:27:08

dimuzz
Member
From: Екатеринбург
Registered: 2009-09-10
Posts: 1,843

Re: Определение скоростей дорог по трекам

Супер! Если еще и привязка по направлению будет к каждому сегменту вея, можно будет уже не только играться.
Второе пожелание - возможность брать данные не только из осм, но и из локальных треков (одного, нескольких или каталога).

Offline

#23 2010-08-31 09:04:30

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Захостил на гугле: http://code.google.com/p/osm-speed/

Offline

#24 2010-09-08 09:35:52

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Добавил поддержку локальных треков. Соответственно ключи:
--gpx <filemask> - маска файла
--noosm - не подгружать треки из осма

Offline

#25 2010-09-08 12:36:49

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Определение скоростей дорог по трекам

Переделал способ привязки треков к дорогам - теперь проверяются и положение, и направление.
Заодно сделал предупреждение об односторонности дороги.

В принципе, скорости вроде получаются вполне реальные, так что можно использовать  smile

Offline

Board footer

Powered by FluxBB