Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
|
pl:dydaktyka:sbd:2009:projekty:mpk-gis:raport_koncowy [2010/03/09 09:05] sbd09 |
pl:dydaktyka:sbd:2009:projekty:mpk-gis:raport_koncowy [2019/06/27 15:50] (aktualna) |
=== Dane dla Krakowa === | === Dane dla Krakowa === |
Aktualne informacje o naniesionych na mapę liniach krakowskiej komunikacji miejskiej można znaleźć na stronie: http://wiki.openstreetmap.org/wiki/WikiProject_Poland/Ma%C5%82opolska | Aktualne informacje o naniesionych na mapę liniach krakowskiej komunikacji miejskiej można znaleźć na stronie: http://wiki.openstreetmap.org/wiki/WikiProject_Poland/Ma%C5%82opolska |
| |
====-. Pozyskiwanie danych ==== | ====-. Pozyskiwanie danych ==== |
=== Automatyczne === | === Automatyczne === |
To, czego potrzebujemy, to wyeksportowany z OSM plik XML oraz baza danych z rozszerzeniem PostGIS. Skrypt pozwala na wyświetlenie informacji dotyczących połączeń i przystanków zawartych w pliku XML, stworzenie struktury bazy danych oraz import danych z pliku do bazy. Dodatkową funkcją jest "--update_distance" - wyszukuje ona najbardziej oddalone od siebie "części przystanków" (small_stop) i oblicza czas potrzebny na przemieszczenie się w ich obrębie (na podstawie dystansu między nimi i prędkości poruszania się).\\ | To, czego potrzebujemy, to wyeksportowany z OSM plik XML oraz baza danych z rozszerzeniem PostGIS. Skrypt pozwala na wyświetlenie informacji dotyczących połączeń i przystanków zawartych w pliku XML, stworzenie struktury bazy danych oraz import danych z pliku do bazy. Dodatkową funkcją jest "--update_distance" - wyszukuje ona najbardziej oddalone od siebie "części przystanków" (small_stop) i oblicza czas potrzebny na przemieszczenie się w ich obrębie (na podstawie dystansu między nimi i prędkości poruszania się).\\ |
Przykład wyświetlenia danych (fragment): | Przykład wyświetlenia danych (fragment): |
<code> | <code > |
Linie tarmwajowe | Linie tarmwajowe |
Linia: 4 | Linia: 4 |
====-. Napotkane problemy ==== | ====-. Napotkane problemy ==== |
| |
| Większość problemów, z jakimi zetknięto się podczas tworzenia projektu, dotyczyła wykorzystania danych dostępnych w OpenStreetMap. Mimo, że baza danych dotycząca krakowskiej komunikacji miejskiej jest dość obszerna, to jednak nie jest ona należycie przygotowana. Podstawowym problemem jest brak powiązania istniejących relacji autobusowych (i tramwajowych) z przystankami. Sam OSM daje taką możliwość, jednak jego krakowscy użytkownicy (poza nami samymi w celach testowych) nie korzystali z tej możliwości. Tym sposobem import istniejących linii oraz dróg stał się niemożliwy: nie można było określić przystanków początkowych i końcowych linii. W związku z tym pierwszym krokiem, jaki należałoby uczynić, jest uzupełnienie tychże danych. Sam parser jest do tego (częściowo) przygotowany.\\ |
| Kolejny, wspomniany wcześniej problem, to nieuwzględnienie przez twórców możliwości różnic w trasie przejazdu w poszczególnych kierunkach. Oznacz to, że należałoby albo wprowadzić dodatkowe taki, albo rozróżnić w nazwie (np. poprzez a/b) kierunek relacji.\\ |
| Można również odnieść wrażenie, że moduł eksportujący dane z OSM ma pewne niedociągnięcia - eksportując dane dotyczące jakiegoś obszaru może okazać się, że są one niekompletne. W relacjach znajdują się bowiem drogi (ways), ale brak jest informacji o ich przebiegu.\\ |
| Jeśli chodzi o problemy typowo techniczne, to pewne problemy pojawiły się podczas przetwarzania danych zakodowanych poprzez moduł pygresql w Pythonie, w związku z czym wykorzystano psycopg2, który radzi sobie z tym bez problemów (wysyła dane jako "escape strings", poprzedzone prefiksem E). |
====-. Wnioski ===== | ====-. Wnioski ===== |
| Zrealizowany projekt został zakończony połowicznym sukcesem. Cześć aplikacji oparta o prezencję danych udało się nam zrealizować w 100 %. Użytkownik uzyskał możliwość podglądu danych dotyczących funkcjonowania komunikacji miejskiej w Krakowie. Administrator ma możliwość prostego i intuicyjnego wprowadzania danych przez wizualny edytor. Niestety nie udało się nam do końca zrealizować importu i eksportu danych zawartych w [[www.openstreetmap.org]]. Napotkane problemy zostały szczegółowo opisane w punkcie 6 raportu końcowego. Podsumowując udało się stworzyć aplikację uniwersalną, która jest w stanie pracować w różnych miastach, a nie tylko w Krakowie. Użycie PostGIS pozwoliło w łatwy sposób konstruować zapytania geolokacyjne. Uważamy że należy dalej rozwijać tematyką związaną z komunikacją miejską, dlatego że pozwoli to użytkownikom w łatwy sposób uzyskać informacje o funkcjonowaniu transportu publicznego. |
| |
====-. Rozwój ==== | ====-. Rozwój ==== |
| Rozważając perspektywy rozwoju projektu można wyróżnić kilka |
| potencjalnych kierunków dalszych prac. Jedną z możliwość jest |
| skupienie się na lepszym przystosowaniu systemu do wykorzystania na |
| urządzeniach mobilnych. Zastosowana obecnie w systemie wersja API |
| Google Maps umożliwia bardzo łatwą lokalizację na mapie urządzeń, |
| które są świadome swojego położenia (iPhone, telefony z systemem |
| Google Android lub Windows Mobile/Phone). Zatem, kolejnym krokiem w |
| tym kierunku mogłoby być wyświetlanie kontekstowych informacji o |
| liniach i przystankach w zależności od położenia użytkownika, tak aby |
| włączając stronę projektu ma urządzeniu mobilnym można było od razu |
| zorientować się odnośnie znajdujących się w okolicy przystanków oraz |
| tras. |
| |
| Inna możliwością rozwoju systemu jest stworzenie na jego bazie |
| zupełnie innej warstwy informacyjnej. Warstwę tę może stanowić np |
| informacja o rozmieszczeniu bankomatów czy też innych, istotnych z |
| punktu widzenia określonej grupy docelowej przydatnych miejsc. Ta |
| droga rozwoju jest o tyle prostsza od pozostałych iż z punktu widzenia |
| administratora systemu wymaga właściwie zaznaczania na mapie |
| pojedynczych punktów a nie całych ścieżek. |
| |
| Odrębną warstwę informacyjną można również zbudować wykorzystując cały |
| dostępny potencjał systemu. Zamiast wyświetlania tras komunikacyjnych |
| mogłyby to być warte przejścia trasy widokowe, ścieżki kulturalne lub |
| spacerowe, co przy uwzględnieniu liczby turystów odwiedzających Kraków |
| i daniu im np. możliwości głosowania na najlepsze trasy mogłoby |
| rozwinąć się w ciekawy, niezależny projekt. |
| |
| Jeżeli chodzi o możliwości rozwoju systemu związane z trasami |
| komunikacyjnymi bardzo pożądaną funkcjonalnością była by możliwość |
| zaplanowania tras łączących dowolne punkty w mieście. Użytkownik |
| miałby wpływ na punkty pośrednie oraz możliwość wybrania najszybszej |
| lub najkrótszej opcji, których to inteligentne wyliczenie należałoby |
| do zadań systemu. |
| |
====-. Pliki źródłowe ==== | ====-. Pliki źródłowe ==== |
{{:pl:dydaktyka:sbd:2009:projekty:mpk-gis:bazy_danych.zip}} | {{:pl:dydaktyka:sbd:2009:projekty:mpk-gis:bazy_danych.zip}} |
| {{:pl:dydaktyka:sbd:2009:projekty:mpk-gis:import.tar.gz|}} |
| |
====-. Żrodło ==== | ====-. Żrodło ==== |