poniedziałek, grudnia 29, 2008

UMP online

UMP darmowa mapa PolskiNa stronie projektu UMP-pcPL pojawiła się internetowa mapa Polski. Uzupełniająca Mapa Polski (prawie całej Polski), bo tak rozwija się skrót, to darmowa mapa tworzona przez posiadaczy odbiorników GPS. Do tej pory robiona była z myślą o urządzeniach firmy Garmin - żeby zobaczyć gotowy produkt potrzebny był GPS lub chociaż odpowiednie oprogramowanie, do tego należało ściągnąć kilkadziesiąt MB plików na dysk. Od teraz, dzięki interfejsowi na stronie WWW, do oglądania mapy wystarczy jedynie przeglądarka internetowa.

Do wyświetlania wykorzystano bibliotekę OpenLayers, natomiast za wygląd mapy odpowiada Mapnik. Oba narzędzia używane są również w OpenStreetMap (mapa całego świata tworzona przez użytkowników), stąd wizualne podobieństwo jednego i drugiego projektu. UMP jest jednak bardziej szczegółowa i aktualna niż OSM (o czym się można samemu przekonać - wystarczy porównać warstwę UMP@Mapnik z OpenStreetMap na stronie UMP).

Nie najgorzej wypada też porównanie z "profesjonalnymi" mapami jak Google Maps. Co prawda UMP posiada nadal trochę białych plam, ale z każdym dniem jest ich jednak coraz mniej, a na pozostałych obszarach nie tylko nie ustępuje, lecz wręcz przewyższa GM pod względem szczegółowości. (W UMP znajdują się np. leśne szlaki czy atrakcje turystyczne w postaci bunkrów itp. czyli obiekty, których na próżno szukać w innych mapach.)
Kolejną zaletą UMP jest szybkość aktualizacji - zdarza się, że wszelkie zmiany (objazdy, nowe drogi) trafiają na mapę jeszcze tego samego dnia. W przypadku mapy na stronie twórcy zapowiadają odświeżanie raz na tydzień.

Wraz z mapą udostępniono prosty formularz, służący do zgłaszania wszelkich błędów oraz dodawania nowych punktów (POI). Im więcej nadesłanych poprawek, tym lepsza w rezultacie UMP.

sobota, grudnia 27, 2008

Zabawy z Geoportalem cd.

W dzisiejszej notce o tym, jak przy pomocy darmowego programu GDAL stworzyć duuużą (rzędu 10 000 x 10 000 px lub więcej) mapę ze zdjęć lotniczych z serwera WMS Geoportalu.

Na początku należy pobrać (najlepiej razem z pakietem FWTools) i zainstalować GDAL.
(Tutaj małe ostrzeżenie: program nie posiada żadnego GUI, wszystko odbywa się w konsoli/linii poleceń.)
Po instalacji trzeba ustawić zmienne środowiskowe poleceniem setfw.bat, dla pewności można jeszcze wpisać gdalinfo --formats i sprawdzić czy na liście obsługiwanych formatów znajduje się WMS.

Teraz można przystąpić do tworzenia XML z parametrami geoportalowego WMSa: szablon takiego pliku znajduje się na stronie GDAL, pola oznaczone jako optional można pominąć, wartości pól w większości uzupełnia się na podstawie informacji z GetCapabilities Geoportalu. (Kilka wyjaśnień dot. XML na dole; tutaj gotowe pliki: geop2180.xml, geop4326.xml)

Po stworzeniu pliku pozostaje jedynie wpisanie odpowiedniej komendy i... chwila cierpliwości (lub dwie - zależy od szybkości łącza i rozmiaru tworzonej mapy :).
  • Ogólnie:
    gdal_translate -of [format pliku] -projwin [bounding box danego obszaru] -outsize [rozmiar x i y pliku wyj.] [plik.xml] [plik.wynikowy]
  • przykład dla układu 1992 (EPSG:2180), plik jpeg 10000x10000px, obszar Warszawy:
    gdal_translate -of JPEG -projwin 630000 500000 650000 480000 -outsize 10000 10000 tmp\geop2180.xml tmp\wwa4.jpg
  • współrzędne geograficzne (EPSG:4326), 1000x1000px, Warszawa:
    gdal_translate -of JPEG -projwin 20.909 52.451 21.194 52.166 -outsize 1000 1000 tmp\geop4326.xml tmp\wwa.jpg
BBox (projwin) wpisywać należy albo w stopniach (długość, szerokość geograf.), albo we współrzędnych metrowych (X i Y), w zależności od układu zdefiniowanego w pliku XML (Geoportal udostępnia dwa: EPSG:4326 i 2180 czyli PUWG1992). Rozmiar pliku wyjściowego można podać w pikselach albo procentach (np. -outsize 10% 10%), ważne aby proporcje między bokami projwin i outsize były takie same. (100% oznacza stworzenie obrazu w pełnej rozdzielczości np. dla 0,25m/px i obszaru 1x1km powstanie obraz 4000x4000px, przy 10% będzie to 400px.)
Ścieżki do pliku xml i wynikowego można podać też w postaci bezwzględnej np. "C:\Program Files\FWTools\bin\gdal_geop.xml"


W podobny sposób można tworzyć mapy z danych znajdujących się nie tylko na WMSach, ale także na serwerach World Wind czy TMS (czyli np. usługa ARS w Geoportalu).

[EDIT: Więcej o pobieraniu map z ARS w tym poście]

Na koniec kilka wyjaśnień związanych z plikiem XML:
  • DataWindow
    UpperLeftX/Y, LowerRightX/Y można rozumieć jako BBox zestawu danych na serwerze Geoportal (~obszar Polski) i nie należy go mylić z BBox tworzonej mapy czyli projwin; w przypadku EPSG:4326 można to całkowicie pominąć, bo GDAL domyślnie przyjmie -180, 90, 180 i -90 stopni, natomiast dla układu 1992 konieczne jest już wpisanie odpowiednich współrzędnych metrowych (na podstawie GetCapabilities, jednak dobrze jest podać wartości zaokrąglone np. do dziesiątek tysięcy)
  • SizeX i SizeY jest to rozmiar obrazu (jako całości, z której wycinana będzie potem mapa) w pikselach, trzeba go ustalić na podstawie przewidywanej rozdzielczości zdjęć na serwerze oraz wpisanych wcześniej wartości UpperLeft i LowerRight - zakładając np. 0,25m/px oraz X od -180 do 180 stopni (co odpowiada 40 000 000m na równiku) dostaje się SizeX równy 160 000 000 [px], natomiast dla układu 1992, tej samej rozdzielczości i różnicy między right i left X wynoszącej 1 000 000m SizeX wyniesie 4 000 000 (analogicznie dla Y)
  • Cache domyślnie jest wyłączony, jednak warto dodać to pole, aby za każdym razem nie ściągać danych od nowa
  • BlockSizeX/Y rozmiar pojedynczego obrazka (tile), z których sklejana będzie potem gotowa mapa - im większy, tym logo dodawane przez Geoportal będzie relatywnie mniejsze, z drugiej strony (przy mapach niewiele większych od pojedynczej cegiełki) wiąże się to ze ściąganiem wiekszej ilości niepotrzebnych danych
  • BandsCount liczba kanałów w obrazie - dla JPG wartość ta to 3 (składowe RGB), PNG - 4 (RGB + kanał alpha)

piątek, grudnia 12, 2008

Landsat Archive

8 grudnia amerykańska agencja United States Geological Survey (USGS) udostępniła bezpłatnie archiwum zdjęć z programu Landsat. Zdjęcia obejmują okres ponad 30 lat i pochodzą z satelitów Landsat 1-7 (bez Landsata 6, który spadł do morza zaraz po starcie).
Dostęp do danych jest możliwy poprzez strony GloVis i EarthExplorer.

(via Slashgeo via VerySpatial)